SlideShare a Scribd company logo
Hey, I just met 
AngularJS! 
Alessandro Nadalin, NAMSHI.com - Madrid, November 2014
small, internal tools
mobile
checkout.namshi.com
Killer Features
Killer Features 
2-way data binding
Model changes the View
View changes the Model
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
http://jsfiddle.net/okL0e297/
function Ctrl($scope) { 
$scope.title = 'Lorem Ipsum'; 
}
<div ng-app="myModule"> 
<div ng-controller="Ctrl"> 
Title: <input ng-model="title"> 
<hr> 
Title again: <input ng-model="title"> 
</div> 
</div>
<div ng-app="myModule"> 
<div ng-controller="Ctrl"> 
Title: <input ng-model="title"> 
<hr> 
Title again: <input ng-model="title"> 
</div> 
</div>
<div ng-app="myModule"> 
<div ng-controller="Ctrl"> 
Title: <input ng-model="title"> 
<hr> 
Title again: <input ng-model="title"> 
</div> 
</div>
function Ctrl($scope) { 
$scope.title = 'Lorem Ipsum'; 
}
<div ng-app="myModule"> 
<div ng-controller="Ctrl"> 
Title: <input ng-model="title"> 
<hr> 
Title again: <input ng-model="title"> 
</div> 
</div>
function Ctrl($scope) { 
$scope.title = 'Lorem Ipsum'; 
} 
Title: <input ng-model="title">
function Ctrl($scope) { 
$scope.title = 'Lorem Ipsum'; 
} 
Title: <input ng-model="title">
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
Killer Features 
Dependency Injection
function Ctrl($scope) { 
// WHAT THE HECK SHALL I DO HERE??? 
}
function Ctrl($scope, $location) { 
// WHAT THE HECK SHALL I DO HERE??? 
}
function Ctrl($scope, $location) { 
// WHAT THE HECK SHALL I DO HERE??? 
}
function Ctrl($scope, $location) { 
$scope.whereAmI = $location.host(); 
}
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
http://jsfiddle.net/9J7u5/2/
Killer Features 
Support
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
https://github.com/angular/protractor
Killer Features 
Directives
<div ng-app="sf-con"> 
<div ng-controller="Ctrl"> 
<menu /> 
</div> 
</div>
<div ng-app="sf-con"> 
<div ng-controller="Ctrl"> 
<menu /> 
</div> 
</div>
<div ng-app="sf-con"> 
<div ng-controller="Ctrl"> 
<div menu></div> 
</div> 
</div>
<div ng-app="sf-con"> 
<div ng-controller="Ctrl"> 
<div data-menu></div> 
</div> 
</div>
var links = { 
home: { 
link: 'http://example.com', 
title: 'Home' 
}, 
about: { 
link: 'http://example.com/about', 
title: 'About Us' 
} 
};
var links = { 
home: { 
link: 'http://example.com', 
title: 'Home' 
}, 
about: { 
link: 'http://example.com/about', 
title: 'About Us' 
} 
};
<ul> 
<li ng-repeat="item in items"> 
<a href="{{ item.link }}"> 
{{ item.title }} 
</a> 
</li> 
</ul>
<ul> 
<li ng-repeat="item in items"> 
<a href="{{ item.link }}"> 
{{ item.title }} 
</a> 
</li> 
</ul>
<ul> 
<li ng-repeat="item in items"> 
<a href="{{ item.link }}"> 
{{ item.title }} 
</a> 
</li> 
</ul>
<ul> 
<li ng-repeat="item in items"> 
<a href="{{ item.link }}"> 
{{ item.title }} 
</a> 
</li> 
</ul>
<ul> 
<li ng-repeat="item in items"> 
<a href="{{ item.link }}"> 
{{ item.title }} 
</a> 
</li> 
</ul>
angular.module('sf-con', []) 
.directive('menu', function(){ 
return { 
restrict: 'AE', 
scope: {}, 
template: ‘path/to/tpl.html’, 
link: function (scope) { 
scope.items = links; 
} 
} 
});
angular.module('sf-con', []) 
.directive('menu', function(){ 
return { 
restrict: 'AE', 
scope: {}, 
template: ‘path/to/tpl.html’, 
link: function (scope) { 
scope.items = links; 
} 
} 
});
<div ng-app="sf-con"> 
<div ng-controller="Ctrl"> 
<menu /> 
</div> 
</div>
angular.module('sf-con', []) 
.directive('menu', function(){ 
return { 
restrict: 'AE', 
scope: {}, 
template: ‘path/to/tpl.html’, 
link: function (scope) { 
scope.items = links; 
} 
} 
});
angular.module('sf-con', []) 
.directive('menu', function(){ 
return { 
restrict: 'AE', 
scope: {}, 
template: ‘path/to/tpl.html’, 
link: function (scope) { 
scope.items = links; 
} 
} 
});
<div ng-app="sf-con"> 
<div ng-controller="Ctrl"> 
<div data-menu /> 
</div> 
</div>
angular.module('sf-con', []) 
.directive('menu', function(){ 
return { 
restrict: 'AE', 
scope: {}, 
template: ‘path/to/tpl.html’, 
link: function (scope) { 
scope.items = links; 
} 
} 
});
<div ng-app="sf-con"> 
<div ng-controller="Ctrl"> 
<menu /> 
</div> 
</div>
angular.module('sf-con', []) 
.directive('menu', function(){ 
return { 
restrict: 'AE', 
scope: {}, 
template: ‘path/to/tpl.html’, 
link: function (scope) { 
scope.items = links; 
} 
} 
});
angular.module('sf-con', []) 
.directive('menu', function(){ 
return { 
restrict: 'AE', 
scope: {}, 
template: ‘path/to/tpl.html’, 
link: function (scope) { 
scope.items = links; 
} 
} 
});
<ul> 
<li ng-repeat="item in items"> 
<a href="{{ item.link }}"> 
{{ item.title }} 
</a> 
</li> 
</ul>
<ul> 
<li ng-repeat="item in items"> 
<a href="{{ item.link }}"> 
{{ item.title }} 
</a> 
</li> 
</ul>
angular.module('confoo', []) 
.directive('menu', function(){ 
return { 
restrict: 'AE', 
scope: {}, 
template: ‘path/to/tpl.html’, 
link: function (scope) { 
scope.items = links; 
} 
} 
});
<body ng-app="sf-con"> 
<sf-con-header> 
<div> 
<div ng-controller=”MainCtrl”> 
<sf-con-sidebar> 
</div> 
<sf-con-footer> 
</div>
<body ng-app="sf-con"> 
<sf-con-header> 
<div> 
<div ng-controller=”MainCtrl”> 
<sf-con-sidebar> 
</div> 
<sf-con-footer> 
</div>
<body ng-app="sf-con"> 
<sf-con-header> 
<div> 
<div ng-controller=”MainCtrl”> 
<sf-con-sidebar> 
</div> 
<sf-con-footer> 
</div>
<body ng-app="sf-con"> 
<sf-con-header> 
<div> 
<div sf-con-main-content> 
<sf-con-sidebar> 
</div> 
<sf-con-footer> 
</div>
http://jsfiddle.net/Lj6CH/6/
“Controllers, Directives and Services” http://is.gd/QlGYID
and much much more :)
Why do we like 
AngularJS?
Solid and clear foundation
$routeProvider.when(‘/about’, { 
templateUrl: '/views/about.html', 
controller: 'AboutController', 
}); 
Solid and clear foundation
$http({ method: 'GET', url: '/milk.html }). 
success(function(...) { 
alert(‘YEAH!’); 
}). 
error(function(...) { 
alert(‘AWWW, SNAP!’); 
}); 
Solid and clear foundation
Works well with the JS ecosystem
Works well with the JS ecosystem
.container(data-bindonce) 
.row 
#my-whatever 
p {{ myModel.text }} 
Works well with the JS ecosystem
.container(data-bindonce) 
.row 
#my-whatever 
input(ng-model=”myModel”) 
Works well with the JS ecosystem
Modern API-oriented architectures
APIfy everything
Easier to scale
No sessions on the servers
maintain state on the client (LS)
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
What will you hate 
about AngularJS?
ehm...
https://www.destroyallsoftware.com/talks/wat
Watchers
lotsa bindings, lotsa watchers
lotsa watchers, lotsa computation
<ul> 
<li ng-repeat="item in items"> 
<a href="{{ item.link }}"> 
{{ item.title }} 
</a> 
</li> 
</ul>
<ul> 
<li ng-repeat="item in items"> 
<a href="{{ item.link }}"> 
{{ item.title }} 
</a> 
</li> 
</ul> 
prepare for N...
<ul> 
<li ng-repeat="item in items"> 
<a href="{{ item.link }}"> 
{{ item.title }} 
</a> 
</li> 
</ul> 
N * 1
<ul> 
<li ng-repeat="item in items"> 
<a href="{{ item.link }}"> 
{{ item.title }} 
</a> 
</li> 
</ul> 
N * 2
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>
<ul> 
<li ng-repeat="item in items"> 
<a href="{{ item.link }}"> 
{{ item.title }} 
<menu 
ng-if=”item.links” 
links=”item.links” 
/> 
</a> 
</li> 
</ul>
use 1-way data binding if possible
https://github.com/Pasvaz/bindonce
try to stay under ~800 watchers
UI screws for real 
at ~2000 
;-)
Will probably be able to 
turn watchers off in 
Angular 2.0
ehm...
but also…
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
memory, rendering, ...
they don’t just render anymore
The browser is your 
platform
and the VM on which 
your application runs
is implemented in 
different ways, based on 
the browsers themselves
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?
“Best way to serve AngularJS 
from a Symfony2 app?”
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Angular 1.3
Terrific performance 
improvements (at a cost)
Homogeneous VS heterogeneous team
Learning curve might be harder than 
what you think
The asynchronous trap
Get someone to dive into DevTools
Get someone to dive into DevTools 
https://www.igvita.com/slides/2012/devtools-tips-and-tricks/#1
Get someone to dive into DevTools 
https://www.igvita.com/slides/2012/devtools-tips-and-tricks/#1 
http://devtoolsecrets.com/
Get someone to dive into DevTools 
https://www.igvita.com/slides/2012/devtools-tips-and-tricks/#1 
http://devtoolsecrets.com/ 
http://devtoolstips.com/
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/
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
(almost) no question
Testing will always be hard
AngularJS 2.0
Controllers, Directive Definition, 
$scope, angular.module, jqLite
http://www.infoq.com/news/2014/10/angular-2-atscript
AtScript 
https://docs.google.com/document/d/11YUzC-1d0V1-Q3V0fQ7KSit97HnZoKVygDxpWzEYW0U/edit#heading=h.c5wfaadh5aor
Angular design documents 
https://drive.google.com/drive/u/0/#folders/0BxgtL8yFJbacUnUxc3l5aTZrbVk
Shit’s gonna change
Is AngularJS the future?
Maybe.
Or, I mean...
We will still need backends
Or use WordPress a lot
but
Natural evolution, decoupled apps
Handy solution for some scenarios
It is a future
Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe
Isomorphic apps, “same” code on the 
client and the server
Feedback?
AngularJS has served as a great introduction 
to scaling on the client. 
A good team will find it easy after a couple weeks. 
On a larger scale you might want to 
look into something less full-stack.
AngularJS has served as a great introduction 
to scaling on the client. 
A good team will find it easy after a couple weeks. 
On a larger scale you might want to 
look into something less full-stack.
AngularJS has served as a great introduction 
to scaling on the client. 
A good team will find it easy after a couple weeks. 
On a larger scale you might want to 
look into something less full-stack.
Without paying too much attention, 
performances are very decent. 
Very easy for a backend / HMVC guy 
to understand how it works. 
Tooling is extremely powerful.
Without paying too much attention, 
performances are very decent. 
Very easy for a backend / HMVC guy 
to understand how it works. 
Tooling is extremely powerful.
Without paying too much attention, 
performances are very decent. 
Very easy for a backend / HMVC guy 
to understand how it works. 
Tooling is extremely powerful.
Write smaller apps without getting 
tangled in a single codebase, reuse modules. 
Decouple, decouple, decouple. 
Decouple again.
Write smaller apps without getting 
tangled in a single codebase, reuse modules. 
Decouple, decouple, decouple. 
Decouple again.
Write smaller apps without getting 
tangled in a single codebase, reuse modules. 
Decouple, decouple, decouple. 
Decouple again.
...yawn...
Alessandro Nadalin
Alessandro Nadalin 
@_odino_
Alessandro Nadalin 
@_odino_ 
Namshi
Alessandro Nadalin 
@_odino_ 
Namshi 
VP Technology
Alessandro Nadalin 
@_odino_ 
Namshi 
VP Technology 
odino.org
Thanks! 
Alessandro Nadalin 
@_odino_ 
Namshi 
VP Technology 
odino.org
tech.namshi.com/join-us 
we are hiring! 
tech.namshi.com 
github.com/namshi 
twitter.com/TechNamshi

More Related Content

What's hot (20)

PPTX
jQuery for Sharepoint Dev
Zeddy Iskandar
 
PDF
Angular JS blog tutorial
Claude Tech
 
PDF
Boost your angular app with web workers
Enrique Oriol Bermúdez
 
PDF
How to build an AngularJS backend-ready app WITHOUT BACKEND
Enrique Oriol Bermúdez
 
PDF
Creating GUI container components in Angular and Web Components
Rachael L Moore
 
KEY
jQuery Performance Tips and Tricks (2011)
Addy Osmani
 
PDF
QA for PHP projects
Michelangelo van Dam
 
PPTX
AngularJS Directives
Eyal Vardi
 
PPT
Ionic tabs template explained
Ramesh BN
 
PDF
Rich Snippets in Magento product page
Hans Kuijpers
 
PDF
Rich Snippets in Magento product page - #MUG020
Hans Kuijpers
 
PDF
Is HTML5 Ready? (workshop)
Remy Sharp
 
PDF
jQuery & 10,000 Global Functions: Working with Legacy JavaScript
Guy Royse
 
PDF
Tips and tricks for building api heavy ruby on rails applications
Tim Cull
 
PPTX
JavaScript APIs you’ve never heard of (and some you have)
Nicholas Zakas
 
PDF
Intro to computer vision in .net
Stephen Lorello
 
PPTX
jQuery for web development
iFour Institute - Sustainable Learning
 
KEY
Writing your Third Plugin
Justin Ryan
 
PDF
The Art of AngularJS in 2015 - Angular Summit 2015
Matt Raible
 
KEY
Javascript done right - Open Web Camp III
Dirk Ginader
 
jQuery for Sharepoint Dev
Zeddy Iskandar
 
Angular JS blog tutorial
Claude Tech
 
Boost your angular app with web workers
Enrique Oriol Bermúdez
 
How to build an AngularJS backend-ready app WITHOUT BACKEND
Enrique Oriol Bermúdez
 
Creating GUI container components in Angular and Web Components
Rachael L Moore
 
jQuery Performance Tips and Tricks (2011)
Addy Osmani
 
QA for PHP projects
Michelangelo van Dam
 
AngularJS Directives
Eyal Vardi
 
Ionic tabs template explained
Ramesh BN
 
Rich Snippets in Magento product page
Hans Kuijpers
 
Rich Snippets in Magento product page - #MUG020
Hans Kuijpers
 
Is HTML5 Ready? (workshop)
Remy Sharp
 
jQuery & 10,000 Global Functions: Working with Legacy JavaScript
Guy Royse
 
Tips and tricks for building api heavy ruby on rails applications
Tim Cull
 
JavaScript APIs you’ve never heard of (and some you have)
Nicholas Zakas
 
Intro to computer vision in .net
Stephen Lorello
 
jQuery for web development
iFour Institute - Sustainable Learning
 
Writing your Third Plugin
Justin Ryan
 
The Art of AngularJS in 2015 - Angular Summit 2015
Matt Raible
 
Javascript done right - Open Web Camp III
Dirk Ginader
 

Similar to Hey, I just met AngularJS, and this is crazy, so here’s my JavaScript, let’s use it maybe (20)

PDF
Angular js is the future. maybe. @ ConFoo 2014 in Montreal (CA)
Alessandro Nadalin
 
PDF
Introduction of angular js
Tamer Solieman
 
PDF
Introduction to AngularJS
Jussi Pohjolainen
 
PPTX
Optimizing Angular Performance in Enterprise Single Page Apps
Morgan Stone
 
PPTX
01 startoff angularjs
Erhwen Kuo
 
PDF
Workshop 12: AngularJS Parte I
Visual Engineering
 
PDF
GDayX - Advanced Angular.JS
Nicolas Embleton
 
PDF
gDayX 2013 - Advanced AngularJS - Nicolas Embleton
George Nguyen
 
ODP
Angular js filters and directives
Darryl Sherman
 
PDF
AngularJS Basics
Ravi Mone
 
PDF
Nicolas Embleton, Advanced Angular JS
JavaScript Meetup HCMC
 
PDF
Angularjs
Ynon Perek
 
PPTX
Working with AngularJS
André Vala
 
PPTX
AngularJS
LearningTech
 
PDF
AngularJS Basic Training
Cornel Stefanache
 
DOCX
Angular js
prasaddammalapati
 
PDF
Everything You Need To Know About AngularJS
Sina Mirhejazi
 
PDF
Advanced Tips & Tricks for using Angular JS
Simon Guest
 
PDF
Angular.js Primer in Aalto University
SC5.io
 
PPTX
Angular
LearningTech
 
Angular js is the future. maybe. @ ConFoo 2014 in Montreal (CA)
Alessandro Nadalin
 
Introduction of angular js
Tamer Solieman
 
Introduction to AngularJS
Jussi Pohjolainen
 
Optimizing Angular Performance in Enterprise Single Page Apps
Morgan Stone
 
01 startoff angularjs
Erhwen Kuo
 
Workshop 12: AngularJS Parte I
Visual Engineering
 
GDayX - Advanced Angular.JS
Nicolas Embleton
 
gDayX 2013 - Advanced AngularJS - Nicolas Embleton
George Nguyen
 
Angular js filters and directives
Darryl Sherman
 
AngularJS Basics
Ravi Mone
 
Nicolas Embleton, Advanced Angular JS
JavaScript Meetup HCMC
 
Angularjs
Ynon Perek
 
Working with AngularJS
André Vala
 
AngularJS
LearningTech
 
AngularJS Basic Training
Cornel Stefanache
 
Angular js
prasaddammalapati
 
Everything You Need To Know About AngularJS
Sina Mirhejazi
 
Advanced Tips & Tricks for using Angular JS
Simon Guest
 
Angular.js Primer in Aalto University
SC5.io
 
Angular
LearningTech
 
Ad

More from Alessandro Nadalin (20)

PDF
Spa, isomorphic and back to the server our journey with js @ frontend con po...
Alessandro Nadalin
 
PDF
SPA, isomorphic and back to the server: our journey with JavaScript @ JsDay 2...
Alessandro Nadalin
 
PDF
Scaling at Namshi @ Seamless Ecommerce Dubai 2017
Alessandro Nadalin
 
PDF
Accelerated Mobile Pages @ Dubytes meetup Dec 2016 in Dubai
Alessandro Nadalin
 
PDF
A tech team of ~10 @ Rocket Tech Summit 2016 in Berlin
Alessandro Nadalin
 
PDF
React native in the wild @ Codemotion 2016 in Rome
Alessandro Nadalin
 
PDF
Dockerize it! @ Codemotion 2016 in Rome
Alessandro Nadalin
 
PDF
Deploying 3 times a day without a downtime @ Rocket Tech Summit in Berlin
Alessandro Nadalin
 
PDF
Don't screw it up: how to build durable web apis @ PHPDay 2014 in Verona (ITA)
Alessandro Nadalin
 
PDF
Namshi in 2014: let's rock!
Alessandro Nadalin
 
PDF
OrientDB, the fastest document-based graph database @ Confoo 2014 in Montreal...
Alessandro Nadalin
 
PDF
A Rocket Internet experience @ ForumPHP Paris 2013
Alessandro Nadalin
 
PDF
HTTP colon slash slash: end of the road? @ CakeFest 2013 in San Francisco
Alessandro Nadalin
 
PDF
Tips and Tricks for your Service Oriented Architecture @ CakeFest 2013 in San...
Alessandro Nadalin
 
PDF
The rocket internet experience @ PHP.TO.START 2013 in Turin
Alessandro Nadalin
 
PDF
GraphDB in PHP @ Codemotion 03/23/2012
Alessandro Nadalin
 
PDF
REST in peace @ IPC 2012 in Mainz
Alessandro Nadalin
 
PDF
HTTP colon slash slash: the end of the road?
Alessandro Nadalin
 
PDF
The state of your own hypertext preprocessor
Alessandro Nadalin
 
PDF
REST in peace @ Osidays 2011 India 11-21-2011
Alessandro Nadalin
 
Spa, isomorphic and back to the server our journey with js @ frontend con po...
Alessandro Nadalin
 
SPA, isomorphic and back to the server: our journey with JavaScript @ JsDay 2...
Alessandro Nadalin
 
Scaling at Namshi @ Seamless Ecommerce Dubai 2017
Alessandro Nadalin
 
Accelerated Mobile Pages @ Dubytes meetup Dec 2016 in Dubai
Alessandro Nadalin
 
A tech team of ~10 @ Rocket Tech Summit 2016 in Berlin
Alessandro Nadalin
 
React native in the wild @ Codemotion 2016 in Rome
Alessandro Nadalin
 
Dockerize it! @ Codemotion 2016 in Rome
Alessandro Nadalin
 
Deploying 3 times a day without a downtime @ Rocket Tech Summit in Berlin
Alessandro Nadalin
 
Don't screw it up: how to build durable web apis @ PHPDay 2014 in Verona (ITA)
Alessandro Nadalin
 
Namshi in 2014: let's rock!
Alessandro Nadalin
 
OrientDB, the fastest document-based graph database @ Confoo 2014 in Montreal...
Alessandro Nadalin
 
A Rocket Internet experience @ ForumPHP Paris 2013
Alessandro Nadalin
 
HTTP colon slash slash: end of the road? @ CakeFest 2013 in San Francisco
Alessandro Nadalin
 
Tips and Tricks for your Service Oriented Architecture @ CakeFest 2013 in San...
Alessandro Nadalin
 
The rocket internet experience @ PHP.TO.START 2013 in Turin
Alessandro Nadalin
 
GraphDB in PHP @ Codemotion 03/23/2012
Alessandro Nadalin
 
REST in peace @ IPC 2012 in Mainz
Alessandro Nadalin
 
HTTP colon slash slash: the end of the road?
Alessandro Nadalin
 
The state of your own hypertext preprocessor
Alessandro Nadalin
 
REST in peace @ Osidays 2011 India 11-21-2011
Alessandro Nadalin
 
Ad

Recently uploaded (20)

DOCX
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
July Patch Tuesday
Ivanti
 
PDF
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
PPTX
Designing Production-Ready AI Agents
Kunal Rai
 
PDF
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PDF
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
PDF
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
PDF
Staying Human in a Machine- Accelerated World
Catalin Jora
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
July Patch Tuesday
Ivanti
 
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
Designing Production-Ready AI Agents
Kunal Rai
 
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
Staying Human in a Machine- Accelerated World
Catalin Jora
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 

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