Skip to content

Commit

Permalink
Tiny enhancements
Browse files Browse the repository at this point in the history
  • Loading branch information
nicolasmty committed Dec 7, 2014
1 parent 6e9679d commit f31c59d
Showing 1 changed file with 14 additions and 11 deletions.
25 changes: 14 additions & 11 deletions _posts/2014-12-10-what-we-have-learn-from-ember.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -34,38 +34,41 @@ The complexity you felt in your first days has been transformed into concepts yo
#### What does that mean for your team

**Good points**
- Current team members: It's easier for devs to produce homogeneous code
- New team members: If a dev understands Ember, he will understand your code
- Concerning your current team members, they will tend to produce more homogeneous code, and that's a great thing for productivity and comprehension
- That leads to the second good point. New team members understanding Ember will understand your code.

**Risks**
- What happens if you integrate an "Angular" dev ? It's very possible, since this framework is far more "hype" at the moment than Ember. Despite the fact that Ember and Angular are different in some ways, their concepts doesn't seem that far, and the new "dev on the block" should feel at home within days (1-2 weeks max.)
- You should consider understanding and using "the ember way" to do things, before trying to customize them => Think about tests, future upgrades, and glitches you should introduce in the app because "Hell yeah, i like to customize ALL THE THINGS"

### The world is made of components
Do you embrace DRY methodology ? Components are your new little friends ;)

Ember.js allows you to wrap all of your repeated pieces of code inside of components. Whether you have repetitive chunks of templates, or UI elements, or event entire parts of your app, you should consider using components.

And Ember 2.0 will put even more emphasis on components!
Don't fear using components in components, the more "organic" your design / approach is, the more modular your components set will be. Oh, and you're likely to drink less coffee (think about your health Dude ^^)

Ember 2.0 will put even more emphasis on components!


### NOT THAT COOL points
- Heavy and almost sinusoidal learning curve, but really worth to surf
- Before digging deeper in Ember, we have heard about its famous "learning curve". Some said it is like climbing a mountain, some compare it to a roller coaster. We tried and, we must admit, it's pretty heavy and almost sinusoidal, but really worth to surf. We've had bad days, and good days. We've had questions, we still have questions.
- Maybe the "convention over configuration" is not for everyone
- The way components communicate through actions is still very perfectible (notably the `sendAction()` method, which could be very confusing for beginners)


## Ember cli

### COOL points
+ EcmaScript6 transpiler. Really cool to write imports without requirejs headhaches.
+ Provides a full development environment with server, automatic incremental build with broccoli, live watch and reload, tests & jshint
+ Lots of cool generators following "blueprints" rules to keep up a good workflow
+ The most cool point about Ember-cli is its EcmaScript6 transpiler! It's really cool to write imports without requirejs headhaches, and to be able to use ES6 features, right now.
+ It provides a full development environment with server, automatic incremental build with broccoli, live watch and reload, tests & jshint.
+ Ember cli is bundled with lots of cool generators following "blueprints" rules that allow you to keep up a good workflow
( create the right files, at the right place, create the corresponding basic tests,
etc...) There is no way to make a mistake when using generators, a very goind point for scaling (product + team). Blueprints can be created, so every team can reproduce its own workflow
etc...) There is no way to make a mistake when using generators, which is a very gound point for scaling (product + team). Blueprints can be created, so every team can reproduce its own workflow
+ Ember-cli brings its own resolver that provides/allows a way better file architecture (PODs are also possible)
+ The current version (0.1.2) brought Content Security Policy, which is a cool addition if content security is important for your app, and the browsers you target are not yet compatible
+ Version 0.1.3 will let you create multiple sets of css files. To start with, we'll try ti use it to target specific needs (mobile, desktop, and why not old browsers). We can't wait for the upgrade (but after the beta has launched ^^)

+ Other cool things?

### NOT THAT COOL points
- Despites Broccoli has really cool sides, the Brocfile is a bit complicated, and
Expand All @@ -77,7 +80,7 @@ And Ember 2.0 will put even more emphasis on components!

### COOL points

- Fully focused on templating, with just a bit of logic (very easy for HTML guys to use and understand it). For more logic, use controllers
- Handlebars is fully focused on templating, with just a bit of logic (making it very easy for HTML guys to use and understand). For more logic, use controllers
- Latest version made a great step towards more performance (those ugly metamorphs Dudes have disappeared) and version 2.0 (HTMLBars) promise to manipulate DOM elements vs strings (as with handlebars)


Expand Down Expand Up @@ -123,7 +126,7 @@ Understand it will make your life easier (it can bring peace to the world too..)

## Conclusion ?
[Nico]
When we begun our POCS (angular.js VS ember.js), I was clearly an Angular guy... My personal tests, and let's admit it, all the hype around Angular were telling me to use and promote Angular.
When we begun our POCs (angular.js VS ember.js), I was clearly an Angular guy... My personal tests, and let's admit it, all the hype around Angular were telling me to use and promote Angular.

This was before making a more professional POC with Angular and testing Ember.js a bit deeper!

Expand Down

0 comments on commit f31c59d

Please sign in to comment.