Transcript
Page 1: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Nanoko, 2 years worth of feedbackNicolas Rempulski CTO - Ubidreams

Orange Labs - Issy les Moulineaux 6 / 11 / 2014

Page 2: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Once upon a time …

2

Page 3: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Nanoko Timeline

2012 2013 2014 2015

Ubidreams goes cross-platform

3

Page 4: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Multi canal nightmare

4

Page 5: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Develop once, deploy everywhere

5

Page 6: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Cross-platform strategy

Application core : Single Page Web App (HTML5 / Javascript / CSS3)

Packaging

Desktop : website

Mobile : mobile website / native application (Cordova a.k.a. Phonegap)

6

Page 7: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Nanoko Timeline

2012 2013 2014 2015

Nanoko active development

7

Page 8: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Development Runtime

Dependency management

Satellite technologies

Maven plugin : coffee-mill Javascript library : h-ubu

Assets optimisation

Code quality

Packaging

Project management

=>

Code reusability

Continuous integration

Dependency injectionPlatform

adaptationEnvironment adaptation

Library / Framework agnostic

8

Page 9: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Nanoko Timeline

2012 2013 2014 2015

Open source release OW2 project

9

Page 10: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Nanoko Timeline

2012 2013 2014 2015

1.2 release

10

Page 11: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Nanoko Timeline

2012 2013 2014 2015

OW2 con’2013 Innovation award

11

Page 12: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Nanoko Timeline

2012 2013 2014 2015

1.3 release

12

Page 13: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Feedback

13

Page 14: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Nanoko @ Ubidreams

2+ years of use by 6 devs on ~20 projects

Goals are met : code quality, project management, productivity, …

Improvements : as needed internally, push upstream to open-source project later

14

Page 15: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Going open-source

Identification : Positionning yourself in the Web Tech sphere is hard

Visibility : AngularJs, ReactJs, NodeJs, Grunt, Yeoman, Bower, …

Investment : Managing the product & the community is heavily time consuming

15

Page 16: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Dependency management

Web libraries fast release pace leads to « loose » version control (@Bower)

Libraries & framework didn't deploy on Nexus repositories (until WebJars)

Frameworks often offers « boilerplate » instead of autonomous releases

16

Page 17: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Dependency injection

H-ubu : Implementation of « OSGI-like » service injection specification

Collision with module pattern (requireJs, AMD / CommonJS modules, …)

Service pattern not widely used in Javascript territories

17

Page 18: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Build Process

DevOps for Web App by Javascript dev means Javascript tools (Grunt, npm, Yeoman, …)

Maven not well established in front-end world (low-hype)

Web build process today use extensive declaration (ant-like) instead of conventions

18

Page 19: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Sequel

Page 20: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Nanoko’s future

Nanoko is used in Wisdom-Framework web assets build process

Importing client-side and server-side component in the same project

Satellite technologies integration (focusing on code quality & reuse)

Showcases with leader frameworks (AngularJs / Reactjs)

Page 21: OW2con'14 - Nanoko, 2 years feedback, Ubidreams

Contacts : [email protected]

Infos : http://www.nanoko.org

http://www.ubidreams.com http://www.wisdom-framework.org

The End