SlideShare une entreprise Scribd logo
1  sur  53
Télécharger pour lire hors ligne
Pablo Godel @pgodel - tek.phparch.com
May 15th 2013 - Chicago, IL
https://joind.in/8177
Building Web Apps From a
New Angle with AngularJS
Wednesday, May 15, 13
Who Am I?
⁃ Born in Argentina, living in the US since 1999
⁃ PHP & Symfony developer
⁃ Founder of the original PHP mailing list in spanish
⁃ Master of the parrilla
⁃ Co-founder of ServerGrove
Wednesday, May 15, 13
Wednesday, May 15, 13
Wednesday, May 15, 13
⁃ Founded ServerGrove Networks in 2005
⁃ Provider of web hosting specialized in PHP,
Symfony, ZendFramework, MongoDB and others
⁃ Servers in USA and Europe!
ServerGrove!
Wednesday, May 15, 13
⁃ Very active open source supporter through code
contributions and usergroups/conference sponsoring
Community is our teacher
Wednesday, May 15, 13
In the beginning there was HTML...
Wednesday, May 15, 13
Wednesday, May 15, 13
Then it came JavaScript
Wednesday, May 15, 13
Then it came JavaScript
and it was not cool...
Wednesday, May 15, 13
It was Important Business!
Wednesday, May 15, 13
It was Serious Business!
Wednesday, May 15, 13
It was Serious Business!
Wednesday, May 15, 13
Very Important Uses
Wednesday, May 15, 13
Image Rollovers!
Wednesday, May 15, 13
http://joemaller.com/javascript/simpleroll/simpleroll_example.html
Image Rollovers!
Wednesday, May 15, 13
Wednesday, May 15, 13
And then came AJAX...
Wednesday, May 15, 13
AJAX saved the Internets!
Wednesday, May 15, 13
2004 - 2006
Wednesday, May 15, 13
Wednesday, May 15, 13
New Breed of JS Frameworks
Wednesday, May 15, 13
Wednesday, May 15, 13
An introduction to
•100% JavaScript Framework
•MVC
•Opinionated
•Modular & Extensible
•Services & Dependency Injection
•Simple yet powerful Templating
•Data-binding heaven
•Input validations
•Animations! (new)
•Testable
•Many more awesome stuff...
Wednesday, May 15, 13
•Single Page Apps
•Responsive & Dynamic
•Real-time & Interactive
•Rich UI
•User Friendly
•I18n and L10n
•Cross-platform
•Desktop/Mobile
What can we do?
An introduction to
Wednesday, May 15, 13
<!doctype html>
<html ng-app>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/
1.0.6/angular.min.js"></script>
</head>
<body>
<div>
<label>Name:</label>
<input type="text" ng-model="yourName" placeholder="Enter a
name here">
<hr>
<h1>Hello {{yourName}}!</h1>
</div>
</body>
</html>
Templates
Wednesday, May 15, 13
<!doctype html>
<html ng-app>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/
1.0.6/angular.min.js"></script>
</head>
<body>
<div>
<label>Name:</label>
<input type="text" ng-model="yourName" placeholder="Enter a
name here">
<hr>
<h1>Hello {{yourName}}!</h1>
</div>
</body>
</html>
Templates &
Directives
Wednesday, May 15, 13
•ng-app
•ng-controller
•ng-model
•ng-bind
•ng-repeat
•ng-show & ng-hide
•your custom directives
•any more more...
http://docs.angularjs.org/api/ng
Directives
Wednesday, May 15, 13
ng-app
<html>
...
<body>
...
<div ng-app>
...
</div>
Bootstraps the app and defines its root. One per HTML
document.
Directives
<html>
...
<body ng-app>
...
<html ng-app>
...
Wednesday, May 15, 13
ng-controller
<html ng-app>
<body>
<div ng-controller=”TestController”>
Hello {{name}}
</div>
<script>
function TestController($scope) {
$scope.name = ‘Pablo’;
}
</script>
</body>
</html>
Defines which controller (function) will be linked to the view.
Directives
Wednesday, May 15, 13
ng-model
<html ng-app>
<body>
<div>
<input type=”text” ng-model=”name” />
<input type=”textarea” ng-model=”notes” />
<input type=”checkbox” ng-model=”notify” />
</div>
</body>
</html>
Defines two-way data binding with input, select, textarea.
Directives
Wednesday, May 15, 13
ng-bind
<html ng-app>
<body>
<div>
<div ng-bind=”name”></div>
{{name}} <!- less verbose -->
</div>
</body>
</html>
Replaces the text content of the specified HTML element with
the value of a given expression, and updates the content
when the value of that expression changes.
Directives
Wednesday, May 15, 13
ng-repeat
<html ng-app>
<body>
<div>
<ul>
<li ng-repeat="item in items">
{{$index}}: {{item.name}}
</li>
</ul>
</div>
</body>
</html>
Instantiates a template once per item from a collection. Each
template instance gets its own scope, where the given loop
variable is set to the current collection item, and $index is set
to the item index or key.
Directives
Wednesday, May 15, 13
ng-show & ng-hide
<html ng-app>
<body>
<div>
Click me: <input type="checkbox" ng-model="checked"><br/>
<span ng-show="checked">Yes!</span>
<span ng-hide="checked">Hidden.</span>
</div>
</body>
</html>
Show or hide a portion of the DOM tree (HTML) conditionally.
Directives
Wednesday, May 15, 13
Custom Directives
<html ng-app>
<body>
<div>
Date format: <input ng-model="format"> <hr/>
Current time is: <span my-current-time="format"></span>
</div>
</body>
</html>
Create new directives to extend HTML. Encapsulate complex
output processing in simple calls.
Directives
Wednesday, May 15, 13
$scope
function GreetCtrl($scope) {
$scope.name = 'World';
}
 
function ListCtrl($scope) {
$scope.names = ['Igor', 'Misko', 'Vojta'];
$scope.pop = function() {
$scope.names.pop();
}
}
...
<button ng-click=”pop()”>Pop</button>
Scope holds data model per controller. It detects
changes so data can be updated in the view.
http://docs.angularjs.org/guide/scope
Model
Wednesday, May 15, 13
•A collection of configuration and run blocks which get
applied to the application during the bootstrap process.
•Third-party code can be packaged in Modules
•Modules can list other modules as their dependencies
•Modules are a way of managing $injector configuration
•An AngularJS App is a Module
http://docs.angularjs.org/guide/module
Modules
Wednesday, May 15, 13
http://docs.angularjs.org/guide/module
<html ng-app=”myApp”>
<body>
<div ng-controller=”AppCtrl”>
Hello {{name}}
</div>
</body>
</html>
var app = angular.module('myApp', []);
app.controller( 'AppCtrl', function($scope) {
$scope.name = 'Guest';
});
Modules
Wednesday, May 15, 13
Filters typically transform the data to a new data
type, formatting the data in the process. Filters can
also be chained, and can take optional arguments
{{ expression | filter }}
{{ expression | filter1 | filter2 }}
123 | number:2
myArray | orderBy:'timestamp':true
Filters
Wednesday, May 15, 13
angular.module('MyReverseModule', []).
filter('reverse', function() {
return function(input, uppercase) {
var out = "";
// ...
return out;
}
});
Reverse: {{greeting|reverse}}<br>
Reverse + uppercase: {{greeting|reverse:true}}
Creating Filters
Wednesday, May 15, 13
$routeProvider.
when("/not_authenticated",{controller:NotAuthenticatedCtrl,
templateUrl:"app/not-authenticated.html"}).
when("/databases", {controller:DatabasesCtrl,
templateUrl:"app/databases.html"}).
when("/databases/add", {controller:AddDatabaseCtrl,
templateUrl:"app/add-database.html"}).
otherwise({redirectTo: '/databases'});
Routing
•http://example.org/#/not_authenticated
•http://example.org/#/databases
•http://example.org/#/databases/add
Wednesday, May 15, 13
Services
Angular services are singletons that carry out specific tasks
common to web apps. Angular provides a set of services for
common operations.
•$location - parses the URL in the browser address. Changes
to $location are reflected into the browser address bar
•$http - facilitates communication with the remote HTTP
servers via the browser's XMLHttpRequest object or via JSONP
•$resource - lets you interact with RESTful server-side data
sources
http://docs.angularjs.org/guide/dev_guide.services
Wednesday, May 15, 13
+
Wednesday, May 15, 13
• REST API
• Silex + responsible-service-provider
• Symfony2 + RestBundle
• ZF2 + ZfrRest
• WebSockets
• React/Ratchet
• node.js
• AngularJS + Twig = Awesoness
• AngularJS + Assetic = Small footprint
+
Wednesday, May 15, 13
<div> {{name}} </div> <!-- rendered by twig -->
{% raw %}
<div> {{name}} </div> <!-- rendered by AngularJS -->
{% endraw %}
AngularJS + Twig - Avoid conflicts
+
// application module configuration
$interpolateProvider.startSymbol('[[').endSymbol(']]')
....
<div> [[name]] </div> <!-- rendered by AngularJS -->
Wednesday, May 15, 13
// _users.html.twig
<script type="text/ng-template" id="users.html">
...
</script>
// _groups.html.twig
<script type="text/ng-template" id="groups.html">
...
</script>
// index.html.twig
{% include '_users.html.twig' %}
{% include '_groups.html.twig' %}
AngularJS + Twig - Preload templates
+
Wednesday, May 15, 13
{% javascripts
"js/angular-modules/mod1.js"
"js/angular-modules/mod2.js"
"@AppBundle/Resources/public/js/controller/*.js"
output="compiled/js/app.js"
%}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
AngularJS + Assetic - Combine & minimize
+
Wednesday, May 15, 13
Show me the CODE!
+
Wednesday, May 15, 13
+
Podisum http://github.com/pgodel/podisum
gitDVR http://github.com/pgodel/gitdvr
Generates summaries of Logstash events
Silex app
Twig templates
REST API
Advanced UI with AngularJS
Replays git commits
Wednesday, May 15, 13
+
Podisum
Apache access_log Logstash
Redis
Podisum redis-client
MongoDB
Podisum Silex App
Web Client
Wednesday, May 15, 13
•http://ngmodules.org/
•http://angular-ui.github.io/
•https://github.com/angular/angularjs-batarang
•https://github.com/angular/angular-seed
•Test REST APIs with Postman Chrome
Extension
Extras
Wednesday, May 15, 13
Questions?
+
Wednesday, May 15, 13
Thank you!
Rate Me Please! https://joind.in/8177
Slides: http://slideshare.net/pgodel
Twitter: @pgodel
E-mail: pablo@servergrove.com
Wednesday, May 15, 13

Contenu connexe

Tendances

jQuery Conference San Diego 2014 - Web Performance
jQuery Conference San Diego 2014 - Web PerformancejQuery Conference San Diego 2014 - Web Performance
jQuery Conference San Diego 2014 - Web Performance
dmethvin
 
Single Page WebApp Architecture
Single Page WebApp ArchitectureSingle Page WebApp Architecture
Single Page WebApp Architecture
Morgan Cheng
 
Building a Single-Page App: Backbone, Node.js, and Beyond
Building a Single-Page App: Backbone, Node.js, and BeyondBuilding a Single-Page App: Backbone, Node.js, and Beyond
Building a Single-Page App: Backbone, Node.js, and Beyond
Spike Brehm
 

Tendances (20)

Getting Started with Angular - Stormpath Webinar, January 2017
Getting Started with Angular - Stormpath Webinar, January 2017Getting Started with Angular - Stormpath Webinar, January 2017
Getting Started with Angular - Stormpath Webinar, January 2017
 
Ten practical ways to improve front-end performance
Ten practical ways to improve front-end performanceTen practical ways to improve front-end performance
Ten practical ways to improve front-end performance
 
AngularJS best-practices
AngularJS best-practicesAngularJS best-practices
AngularJS best-practices
 
New Perspectives on Performance
New Perspectives on PerformanceNew Perspectives on Performance
New Perspectives on Performance
 
20160905 - BrisJS - nightwatch testing
20160905 - BrisJS - nightwatch testing20160905 - BrisJS - nightwatch testing
20160905 - BrisJS - nightwatch testing
 
jQuery Conference San Diego 2014 - Web Performance
jQuery Conference San Diego 2014 - Web PerformancejQuery Conference San Diego 2014 - Web Performance
jQuery Conference San Diego 2014 - Web Performance
 
Writing Software not Code with Cucumber
Writing Software not Code with CucumberWriting Software not Code with Cucumber
Writing Software not Code with Cucumber
 
Single Page WebApp Architecture
Single Page WebApp ArchitectureSingle Page WebApp Architecture
Single Page WebApp Architecture
 
Night Watch with QA
Night Watch with QANight Watch with QA
Night Watch with QA
 
The Point of Vue - Intro to Vue.js
The Point of Vue - Intro to Vue.jsThe Point of Vue - Intro to Vue.js
The Point of Vue - Intro to Vue.js
 
What is HTML 5?
What is HTML 5?What is HTML 5?
What is HTML 5?
 
GlobalLogic Test Automation Online TechTalk “Playwright — A New Hope”
GlobalLogic Test Automation Online TechTalk “Playwright — A New Hope”GlobalLogic Test Automation Online TechTalk “Playwright — A New Hope”
GlobalLogic Test Automation Online TechTalk “Playwright — A New Hope”
 
On Selecting JavaScript Frameworks (Women Who Code 10/15)
On Selecting JavaScript Frameworks (Women Who Code 10/15)On Selecting JavaScript Frameworks (Women Who Code 10/15)
On Selecting JavaScript Frameworks (Women Who Code 10/15)
 
Building a Single-Page App: Backbone, Node.js, and Beyond
Building a Single-Page App: Backbone, Node.js, and BeyondBuilding a Single-Page App: Backbone, Node.js, and Beyond
Building a Single-Page App: Backbone, Node.js, and Beyond
 
Front End Development for Back End Developers - vJUG24 2017
Front End Development for Back End Developers - vJUG24 2017Front End Development for Back End Developers - vJUG24 2017
Front End Development for Back End Developers - vJUG24 2017
 
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Rich Web Experie...
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Rich Web Experie...Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Rich Web Experie...
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Rich Web Experie...
 
AngularJS performance & production tips
AngularJS performance & production tipsAngularJS performance & production tips
AngularJS performance & production tips
 
Front Ends for Back End Developers - Spring I/O 2017
Front Ends for Back End Developers - Spring I/O 2017Front Ends for Back End Developers - Spring I/O 2017
Front Ends for Back End Developers - Spring I/O 2017
 
Grunt.js and Yeoman, Continous Integration
Grunt.js and Yeoman, Continous IntegrationGrunt.js and Yeoman, Continous Integration
Grunt.js and Yeoman, Continous Integration
 
Instant and offline apps with Service Worker
Instant and offline apps with Service WorkerInstant and offline apps with Service Worker
Instant and offline apps with Service Worker
 

En vedette

Putting the WOW into your School's WOM, ADVIS Presentation
Putting the WOW into your School's WOM, ADVIS PresentationPutting the WOW into your School's WOM, ADVIS Presentation
Putting the WOW into your School's WOM, ADVIS Presentation
Rick Newberry
 
Offshore wind 180811
Offshore wind  180811Offshore wind  180811
Offshore wind 180811
ghsdorpmans
 
Tools of the Trade
Tools of the TradeTools of the Trade
Tools of the Trade
jmori1
 
Ig1 assignment 2011_to_2012_updated_17.01.12
Ig1 assignment 2011_to_2012_updated_17.01.12Ig1 assignment 2011_to_2012_updated_17.01.12
Ig1 assignment 2011_to_2012_updated_17.01.12
FirstClassProductions
 
Working Progress Ancillary
Working Progress AncillaryWorking Progress Ancillary
Working Progress Ancillary
aq101824
 
하비인사업계획서0624홍보
하비인사업계획서0624홍보하비인사업계획서0624홍보
하비인사업계획서0624홍보
비인 하
 
Terugblik en resultatenoverzicht 2010
Terugblik en resultatenoverzicht 2010Terugblik en resultatenoverzicht 2010
Terugblik en resultatenoverzicht 2010
Mieke Sanden, van der
 

En vedette (20)

Basketball game
Basketball gameBasketball game
Basketball game
 
KVH DCNet 資料
KVH DCNet 資料KVH DCNet 資料
KVH DCNet 資料
 
AOL_Baku_address
AOL_Baku_addressAOL_Baku_address
AOL_Baku_address
 
Putting the WOW into your School's WOM, ADVIS Presentation
Putting the WOW into your School's WOM, ADVIS PresentationPutting the WOW into your School's WOM, ADVIS Presentation
Putting the WOW into your School's WOM, ADVIS Presentation
 
Quiet room
Quiet roomQuiet room
Quiet room
 
Getting started
Getting startedGetting started
Getting started
 
Materi 4 String dan Boolean Expression
Materi 4 String dan Boolean ExpressionMateri 4 String dan Boolean Expression
Materi 4 String dan Boolean Expression
 
Grammar book
Grammar bookGrammar book
Grammar book
 
Public libraries and their budgets in 2010
Public libraries and their budgets in 2010Public libraries and their budgets in 2010
Public libraries and their budgets in 2010
 
Offshore wind 180811
Offshore wind  180811Offshore wind  180811
Offshore wind 180811
 
Tools of the Trade
Tools of the TradeTools of the Trade
Tools of the Trade
 
Ig1 assignment 2011_to_2012_updated_17.01.12
Ig1 assignment 2011_to_2012_updated_17.01.12Ig1 assignment 2011_to_2012_updated_17.01.12
Ig1 assignment 2011_to_2012_updated_17.01.12
 
Инвесторы и налоговая политика Казахстана
Инвесторы и налоговая политика Казахстана Инвесторы и налоговая политика Казахстана
Инвесторы и налоговая политика Казахстана
 
BuddyPress: Social Networks for WordPress
BuddyPress: Social Networks for WordPressBuddyPress: Social Networks for WordPress
BuddyPress: Social Networks for WordPress
 
Security One Home Safety
Security One Home SafetySecurity One Home Safety
Security One Home Safety
 
Kodak EasyShare C143
Kodak EasyShare C143 Kodak EasyShare C143
Kodak EasyShare C143
 
Working Progress Ancillary
Working Progress AncillaryWorking Progress Ancillary
Working Progress Ancillary
 
하비인사업계획서0624홍보
하비인사업계획서0624홍보하비인사업계획서0624홍보
하비인사업계획서0624홍보
 
Terugblik en resultatenoverzicht 2010
Terugblik en resultatenoverzicht 2010Terugblik en resultatenoverzicht 2010
Terugblik en resultatenoverzicht 2010
 
Abc2011s lt0716
Abc2011s lt0716Abc2011s lt0716
Abc2011s lt0716
 

Similaire à Tek 2013 - Building Web Apps from a New Angle with AngularJS

Similaire à Tek 2013 - Building Web Apps from a New Angle with AngularJS (20)

Lone StarPHP 2013 - Building Web Apps from a New Angle
Lone StarPHP 2013 - Building Web Apps from a New AngleLone StarPHP 2013 - Building Web Apps from a New Angle
Lone StarPHP 2013 - Building Web Apps from a New Angle
 
JBUG 11 - Django-The Web Framework For Perfectionists With Deadlines
JBUG 11 - Django-The Web Framework For Perfectionists With DeadlinesJBUG 11 - Django-The Web Framework For Perfectionists With Deadlines
JBUG 11 - Django-The Web Framework For Perfectionists With Deadlines
 
Use Web Skills To Build Mobile Apps
Use Web Skills To Build Mobile AppsUse Web Skills To Build Mobile Apps
Use Web Skills To Build Mobile Apps
 
Max Voloshin - "Organization of frontend development for products with micros...
Max Voloshin - "Organization of frontend development for products with micros...Max Voloshin - "Organization of frontend development for products with micros...
Max Voloshin - "Organization of frontend development for products with micros...
 
Html javascript
Html javascriptHtml javascript
Html javascript
 
An Introduction to Web Components
An Introduction to Web ComponentsAn Introduction to Web Components
An Introduction to Web Components
 
Intro To Django
Intro To DjangoIntro To Django
Intro To Django
 
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...
 
Introduce Django
Introduce DjangoIntroduce Django
Introduce Django
 
State of modern web technologies: an introduction
State of modern web technologies: an introductionState of modern web technologies: an introduction
State of modern web technologies: an introduction
 
Workshop 12: AngularJS Parte I
Workshop 12: AngularJS Parte IWorkshop 12: AngularJS Parte I
Workshop 12: AngularJS Parte I
 
AngularJS for Web and Mobile
 AngularJS for Web and Mobile AngularJS for Web and Mobile
AngularJS for Web and Mobile
 
Developing web applications in 2010
Developing web applications in 2010Developing web applications in 2010
Developing web applications in 2010
 
Open Source Monitoring for Java with JMX and Graphite (GeeCON 2013)
Open Source Monitoring for Java with JMX and Graphite (GeeCON 2013)Open Source Monitoring for Java with JMX and Graphite (GeeCON 2013)
Open Source Monitoring for Java with JMX and Graphite (GeeCON 2013)
 
WordPress as a Platform - talk to Bristol Open Source Meetup, 2014-12-08
WordPress as a Platform - talk to Bristol Open Source Meetup, 2014-12-08WordPress as a Platform - talk to Bristol Open Source Meetup, 2014-12-08
WordPress as a Platform - talk to Bristol Open Source Meetup, 2014-12-08
 
The future of web development write once, run everywhere with angular js an...
The future of web development   write once, run everywhere with angular js an...The future of web development   write once, run everywhere with angular js an...
The future of web development write once, run everywhere with angular js an...
 
The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...
 
Intro to mobile web application development
Intro to mobile web application developmentIntro to mobile web application development
Intro to mobile web application development
 
Dive into AngularJS and directives
Dive into AngularJS and directivesDive into AngularJS and directives
Dive into AngularJS and directives
 
Developing a Web Application
Developing a Web ApplicationDeveloping a Web Application
Developing a Web Application
 

Plus de Pablo Godel

Creating Mobile Apps With PHP & Symfony2
Creating Mobile Apps With PHP & Symfony2Creating Mobile Apps With PHP & Symfony2
Creating Mobile Apps With PHP & Symfony2
Pablo Godel
 
PFCongres 2012 - Rock Solid Deployment of PHP Apps
PFCongres 2012 - Rock Solid Deployment of PHP AppsPFCongres 2012 - Rock Solid Deployment of PHP Apps
PFCongres 2012 - Rock Solid Deployment of PHP Apps
Pablo Godel
 

Plus de Pablo Godel (20)

SymfonyCon Cluj 2017 - Symfony at OpenSky
SymfonyCon Cluj 2017 - Symfony at OpenSkySymfonyCon Cluj 2017 - Symfony at OpenSky
SymfonyCon Cluj 2017 - Symfony at OpenSky
 
Symfony Live San Francisco 2017 - Symfony @ OpenSky
Symfony Live San Francisco 2017 - Symfony @ OpenSkySymfony Live San Francisco 2017 - Symfony @ OpenSky
Symfony Live San Francisco 2017 - Symfony @ OpenSky
 
DeSymfony 2017 - Symfony en OpenSky
DeSymfony 2017 - Symfony en OpenSkyDeSymfony 2017 - Symfony en OpenSky
DeSymfony 2017 - Symfony en OpenSky
 
Deploying Symfony | symfony.cat
Deploying Symfony | symfony.catDeploying Symfony | symfony.cat
Deploying Symfony | symfony.cat
 
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony AppsSymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
 
La Caja de Herramientas del Desarrollador Moderno PHPConferenceAR
La Caja de Herramientas del Desarrollador Moderno PHPConferenceARLa Caja de Herramientas del Desarrollador Moderno PHPConferenceAR
La Caja de Herramientas del Desarrollador Moderno PHPConferenceAR
 
Symfony Live NYC 2014 - Rock Solid Deployment of Symfony Apps
Symfony Live NYC 2014 -  Rock Solid Deployment of Symfony AppsSymfony Live NYC 2014 -  Rock Solid Deployment of Symfony Apps
Symfony Live NYC 2014 - Rock Solid Deployment of Symfony Apps
 
The Modern Developer Toolbox
The Modern Developer ToolboxThe Modern Developer Toolbox
The Modern Developer Toolbox
 
PHP Conference Argentina 2013 - Independizate de tu departamento IT - Habilid...
PHP Conference Argentina 2013 - Independizate de tu departamento IT - Habilid...PHP Conference Argentina 2013 - Independizate de tu departamento IT - Habilid...
PHP Conference Argentina 2013 - Independizate de tu departamento IT - Habilid...
 
PHP Conference Argentina 2013 - Deployment de aplicaciones PHP a prueba de balas
PHP Conference Argentina 2013 - Deployment de aplicaciones PHP a prueba de balasPHP Conference Argentina 2013 - Deployment de aplicaciones PHP a prueba de balas
PHP Conference Argentina 2013 - Deployment de aplicaciones PHP a prueba de balas
 
php[architect] Summit Series DevOps 2013 - Rock solid deployment of PHP apps
php[architect] Summit Series DevOps 2013 - Rock solid deployment of PHP appsphp[architect] Summit Series DevOps 2013 - Rock solid deployment of PHP apps
php[architect] Summit Series DevOps 2013 - Rock solid deployment of PHP apps
 
Lone Star PHP 2013 - Sysadmin Skills for PHP Developers
Lone Star PHP 2013 - Sysadmin Skills for PHP DevelopersLone Star PHP 2013 - Sysadmin Skills for PHP Developers
Lone Star PHP 2013 - Sysadmin Skills for PHP Developers
 
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...
 
Creating Mobile Apps With PHP & Symfony2
Creating Mobile Apps With PHP & Symfony2Creating Mobile Apps With PHP & Symfony2
Creating Mobile Apps With PHP & Symfony2
 
Tek13 - Creating Mobile Apps with PHP and Symfony
Tek13 - Creating Mobile Apps with PHP and SymfonyTek13 - Creating Mobile Apps with PHP and Symfony
Tek13 - Creating Mobile Apps with PHP and Symfony
 
Soflophp 2013 - SysAdmin skills for PHP developers
Soflophp 2013 - SysAdmin skills for PHP developersSoflophp 2013 - SysAdmin skills for PHP developers
Soflophp 2013 - SysAdmin skills for PHP developers
 
Symfony2 and MongoDB - MidwestPHP 2013
Symfony2 and MongoDB - MidwestPHP 2013   Symfony2 and MongoDB - MidwestPHP 2013
Symfony2 and MongoDB - MidwestPHP 2013
 
Rock Solid Deployment of Web Applications
Rock Solid Deployment of Web ApplicationsRock Solid Deployment of Web Applications
Rock Solid Deployment of Web Applications
 
Codeworks'12 Rock Solid Deployment of PHP Apps
Codeworks'12 Rock Solid Deployment of PHP AppsCodeworks'12 Rock Solid Deployment of PHP Apps
Codeworks'12 Rock Solid Deployment of PHP Apps
 
PFCongres 2012 - Rock Solid Deployment of PHP Apps
PFCongres 2012 - Rock Solid Deployment of PHP AppsPFCongres 2012 - Rock Solid Deployment of PHP Apps
PFCongres 2012 - Rock Solid Deployment of PHP Apps
 

Dernier

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

Tek 2013 - Building Web Apps from a New Angle with AngularJS