hey, i just met angularjs, and this is crazy, so here’s my javascript, let’s use it maybe

162
Hey, I just met AngularJS! Alessandro Nadalin, NAMSHI.com - Madrid, November 2014

Upload: alessandro-nadalin

Post on 10-Jul-2015

1.500 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Hey, I just metAngularJS!

Alessandro Nadalin, NAMSHI.com - Madrid, November 2014

Page 2: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

small, internal tools

Page 3: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

mobile

Page 4: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

checkout.namshi.com

Page 5: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Killer Features

Page 6: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Killer Features2-way data binding

Page 7: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Model changes the View

Page 8: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

View changes the Model

Page 9: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 10: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

http://jsfiddle.net/okL0e297/

Page 11: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

function Ctrl($scope) { $scope.title = 'Lorem Ipsum';}

Page 12: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<div ng-app="myModule"> <div ng-controller="Ctrl"> Title: <input ng-model="title"> <hr> Title again: <input ng-model="title"> </div></div>

Page 13: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<div ng-app="myModule"> <div ng-controller="Ctrl"> Title: <input ng-model="title"> <hr> Title again: <input ng-model="title"> </div></div>

Page 14: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<div ng-app="myModule"> <div ng-controller="Ctrl"> Title: <input ng-model="title"> <hr> Title again: <input ng-model="title"> </div></div>

Page 15: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

function Ctrl($scope) { $scope.title = 'Lorem Ipsum';}

Page 16: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<div ng-app="myModule"> <div ng-controller="Ctrl"> Title: <input ng-model="title"> <hr> Title again: <input ng-model="title"> </div></div>

Page 17: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

function Ctrl($scope) { $scope.title = 'Lorem Ipsum';}

Title: <input ng-model="title">

Page 18: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

function Ctrl($scope) { $scope.title = 'Lorem Ipsum';}

Title: <input ng-model="title">

Page 19: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 20: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

http://docs.angularjs.org/guide/databinding

Page 21: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Killer FeaturesDependency Injection

Page 22: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

function Ctrl($scope) { // WHAT THE HECK SHALL I DO HERE???}

Page 23: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

function Ctrl($scope, $location) { // WHAT THE HECK SHALL I DO HERE???}

Page 24: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

function Ctrl($scope, $location) { // WHAT THE HECK SHALL I DO HERE???}

Page 25: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

function Ctrl($scope, $location) { $scope.whereAmI = $location.host();}

Page 26: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 27: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 28: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

http://jsfiddle.net/9J7u5/2/

Page 29: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Killer FeaturesSupport

Page 30: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 31: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 32: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 33: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 34: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 35: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 36: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 37: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

https://github.com/angular/protractor

Page 38: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Killer FeaturesDirectives

Page 39: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<div ng-app="sf-con"> <div ng-controller="Ctrl"> <menu /> </div></div>

Page 40: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<div ng-app="sf-con"> <div ng-controller="Ctrl"> <menu /> </div></div>

Page 41: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<div ng-app="sf-con"> <div ng-controller="Ctrl"> <div menu></div> </div></div>

Page 42: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<div ng-app="sf-con"> <div ng-controller="Ctrl"> <div data-menu></div> </div></div>

Page 43: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

var links = { home: { link: 'http://example.com', title: 'Home' }, about: { link: 'http://example.com/about', title: 'About Us' }};

Page 44: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

var links = { home: { link: 'http://example.com', title: 'Home' }, about: { link: 'http://example.com/about', title: 'About Us' }};

Page 45: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<ul> <li ng-repeat="item in items"> <a href="{{ item.link }}"> {{ item.title }} </a> </li></ul>

Page 46: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<ul> <li ng-repeat="item in items"> <a href="{{ item.link }}"> {{ item.title }} </a> </li></ul>

Page 47: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<ul> <li ng-repeat="item in items"> <a href="{{ item.link }}"> {{ item.title }} </a> </li></ul>

Page 48: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<ul> <li ng-repeat="item in items"> <a href="{{ item.link }}"> {{ item.title }} </a> </li></ul>

Page 49: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<ul> <li ng-repeat="item in items"> <a href="{{ item.link }}"> {{ item.title }} </a> </li></ul>

Page 50: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

angular.module('sf-con', []) .directive('menu', function(){ return { restrict: 'AE', scope: {}, template: ‘path/to/tpl.html’, link: function (scope) { scope.items = links; } } });

Page 51: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

angular.module('sf-con', []) .directive('menu', function(){ return { restrict: 'AE', scope: {}, template: ‘path/to/tpl.html’, link: function (scope) { scope.items = links; } } });

Page 52: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<div ng-app="sf-con"> <div ng-controller="Ctrl"> <menu /> </div></div>

Page 53: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

angular.module('sf-con', []) .directive('menu', function(){ return { restrict: 'AE', scope: {}, template: ‘path/to/tpl.html’, link: function (scope) { scope.items = links; } } });

Page 54: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

angular.module('sf-con', []) .directive('menu', function(){ return { restrict: 'AE', scope: {}, template: ‘path/to/tpl.html’, link: function (scope) { scope.items = links; } } });

Page 55: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<div ng-app="sf-con"> <div ng-controller="Ctrl"> <div data-menu /> </div></div>

Page 56: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

angular.module('sf-con', []) .directive('menu', function(){ return { restrict: 'AE', scope: {}, template: ‘path/to/tpl.html’, link: function (scope) { scope.items = links; } } });

Page 57: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<div ng-app="sf-con"> <div ng-controller="Ctrl"> <menu /> </div></div>

Page 58: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

angular.module('sf-con', []) .directive('menu', function(){ return { restrict: 'AE', scope: {}, template: ‘path/to/tpl.html’, link: function (scope) { scope.items = links; } } });

Page 59: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

angular.module('sf-con', []) .directive('menu', function(){ return { restrict: 'AE', scope: {}, template: ‘path/to/tpl.html’, link: function (scope) { scope.items = links; } } });

Page 60: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<ul> <li ng-repeat="item in items"> <a href="{{ item.link }}"> {{ item.title }} </a> </li></ul>

Page 61: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<ul> <li ng-repeat="item in items"> <a href="{{ item.link }}"> {{ item.title }} </a> </li></ul>

Page 62: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

angular.module('confoo', []) .directive('menu', function(){ return { restrict: 'AE', scope: {}, template: ‘path/to/tpl.html’, link: function (scope) { scope.items = links; } } });

Page 63: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<body ng-app="sf-con"><sf-con-header><div><div ng-controller=”MainCtrl”><sf-con-sidebar>

</div><sf-con-footer>

</div>

Page 64: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<body ng-app="sf-con"><sf-con-header><div><div ng-controller=”MainCtrl”><sf-con-sidebar>

</div><sf-con-footer>

</div>

Page 65: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<body ng-app="sf-con"><sf-con-header><div><div ng-controller=”MainCtrl”><sf-con-sidebar>

</div><sf-con-footer>

</div>

Page 66: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<body ng-app="sf-con"><sf-con-header><div><div sf-con-main-content><sf-con-sidebar>

</div><sf-con-footer>

</div>

Page 67: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

http://jsfiddle.net/Lj6CH/6/

Page 68: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

“Controllers, Directives and Services” http://is.gd/QlGYID

Page 69: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

and much much more :)

Page 70: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Why do we like AngularJS?

Page 71: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Solid and clear foundation

Page 72: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Solid and clear foundation

$routeProvider.when(‘/about’, {templateUrl: '/views/about.html',controller: 'AboutController',

});

Page 73: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Solid and clear foundation

$http({ method: 'GET', url: '/milk.html }).success(function(...) {

alert(‘YEAH!’);}).error(function(...) {

alert(‘AWWW, SNAP!’);});

Page 74: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Works well with the JS ecosystem

Page 75: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Works well with the JS ecosystem

Page 76: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

.container(data-bindonce).row

#my-whateverp {{ myModel.text }}

Works well with the JS ecosystem

Page 77: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

.container(data-bindonce).row

#my-whateverinput(ng-model=”myModel”)

Works well with the JS ecosystem

Page 78: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Modern API-oriented architectures

Page 79: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

APIfy everything

Page 80: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Easier to scale

Page 81: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

No sessions on the servers

Page 82: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

maintain state on the client (LS)

Page 83: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 84: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

What will you hateabout AngularJS?

Page 85: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

ehm...

Page 86: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

https://www.destroyallsoftware.com/talks/wat

Page 87: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Watchers

Page 88: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

lotsa bindings, lotsa watchers

Page 89: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

lotsa watchers, lotsa computation

Page 90: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<ul> <li ng-repeat="item in items"> <a href="{{ item.link }}"> {{ item.title }} </a> </li></ul>

Page 91: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<ul> <li ng-repeat="item in items"> <a href="{{ item.link }}"> {{ item.title }} </a> </li></ul>

prepare for N...

Page 92: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<ul> <li ng-repeat="item in items"> <a href="{{ item.link }}"> {{ item.title }} </a> </li></ul>

N * 1

Page 93: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<ul> <li ng-repeat="item in items"> <a href="{{ item.link }}"> {{ item.title }} </a> </li></ul>

N * 2

Page 94: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 95: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<ul> <li ng-repeat="item in items">

<a href="{{ item.link }}">{{ item.title }}<menu

ng-if=”item.links”links=”item.links”

/></a>

</li></ul>

Page 96: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

<ul> <li ng-repeat="item in items">

<a href="{{ item.link }}">{{ item.title }}<menu

ng-if=”item.links”links=”item.links”

/></a>

</li></ul>

Page 97: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

use 1-way data binding if possible

Page 98: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

https://github.com/Pasvaz/bindonce

Page 99: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

try to stay under ~800 watchers

Page 100: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

UI screws for realat ~2000

;-)

Page 101: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Will probably be able toturn watchers off in

Angular 2.0

Page 102: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

ehm...

Page 103: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

but also…

Page 104: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 105: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

memory, rendering, ...

Page 106: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

they don’t just render anymore

Page 107: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

The browser is your platform

Page 108: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

and the VM on whichyour application runs

Page 109: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

is implemented in different ways, based on the browsers themselves

Page 110: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 111: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

What will you need to know about AngularJS?

Page 112: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

“Best way to serve AngularJSfrom a Symfony2 app?”

Page 113: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 114: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 115: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Angular 1.3

Page 116: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Terrific performanceimprovements (at a cost)

Page 117: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Homogeneous VS heterogeneous team

Page 118: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Learning curve might be harder thanwhat you think

Page 119: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

The asynchronous trap

Page 120: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Get someone to dive into DevTools

Page 121: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Get someone to dive into DevTools

https://www.igvita.com/slides/2012/devtools-tips-and-tricks/#1

Page 122: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Get someone to dive into DevTools

https://www.igvita.com/slides/2012/devtools-tips-and-tricks/#1

http://devtoolsecrets.com/

Page 123: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Get someone to dive into DevTools

https://www.igvita.com/slides/2012/devtools-tips-and-tricks/#1

http://devtoolsecrets.com/

http://devtoolstips.com/

Page 124: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Get someone to dive into DevTools

https://www.igvita.com/slides/2012/devtools-tips-and-tricks/#1

http://devtoolsecrets.com/

http://devtoolstips.com/

http://addyosmani.com/blog/tag/devtools/

Page 125: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 126: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

(almost) no question

Page 127: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Testing will always be hard

Page 128: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

AngularJS 2.0

Page 129: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Controllers, Directive Definition,$scope, angular.module, jqLite

Page 130: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

http://www.infoq.com/news/2014/10/angular-2-atscript

Page 131: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

AtScripthttps://docs.google.com/document/d/11YUzC-1d0V1-Q3V0fQ7KSit97HnZoKVygDxpWzEYW0U/edit#heading=h.c5wfaadh5aor

Page 132: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Angular design documentshttps://drive.google.com/drive/u/0/#folders/0BxgtL8yFJbacUnUxc3l5aTZrbVk

Page 133: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Shit’s gonna change

Page 134: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Is AngularJS the future?

Page 135: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Maybe.

Page 136: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Or, I mean...

Page 137: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

We will still need backends

Page 138: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Or use WordPress a lot

Page 139: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

but

Page 140: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Natural evolution, decoupled apps

Page 141: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Handy solution for some scenarios

Page 142: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

It is a future

Page 143: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Page 144: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Isomorphic apps, “same” code on theclient and the server

Page 145: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Feedback?

Page 146: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

AngularJS has served as a great introductionto scaling on the client.

A good team will find it easy after a couple weeks.

On a larger scale you might want tolook into something less full-stack.

Page 147: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

AngularJS has served as a great introductionto scaling on the client.

A good team will find it easy after a couple weeks.

On a larger scale you might want tolook into something less full-stack.

Page 148: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

AngularJS has served as a great introductionto scaling on the client.

A good team will find it easy after a couple weeks.

On a larger scale you might want tolook into something less full-stack.

Page 149: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Without paying too much attention,performances are very decent.

Very easy for a backend / HMVC guyto understand how it works.

Tooling is extremely powerful.

Page 150: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Without paying too much attention,performances are very decent.

Very easy for a backend / HMVC guyto understand how it works.

Tooling is extremely powerful.

Page 151: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Without paying too much attention,performances are very decent.

Very easy for a backend / HMVC guyto understand how it works.

Tooling is extremely powerful.

Page 152: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Write smaller apps without gettingtangled in a single codebase, reuse modules.

Decouple, decouple, decouple.

Decouple again.

Page 153: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Write smaller apps without gettingtangled in a single codebase, reuse modules.

Decouple, decouple, decouple.

Decouple again.

Page 154: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Write smaller apps without gettingtangled in a single codebase, reuse modules.

Decouple, decouple, decouple.

Decouple again.

Page 155: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

...yawn...

Page 156: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Alessandro Nadalin

Page 157: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Alessandro Nadalin

@_odino_

Page 158: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Alessandro Nadalin

@_odino_

Namshi

Page 159: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Alessandro Nadalin

@_odino_

Namshi

VP Technology

Page 160: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Alessandro Nadalin

@_odino_

Namshi

VP Technology

odino.org

Page 161: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

Thanks!Alessandro Nadalin

@_odino_

Namshi

VP Technology

odino.org

Page 162: Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe

we are hiring!tech.namshi.com/join-us

github.com/namshi

twitter.com/TechNamshi

tech.namshi.com