Upload
pierre-joye
View
1.270
Download
1
Embed Size (px)
DESCRIPTION
Citation preview
On Technologies and languages
Pierre Joye2012/09/17
Pierre Joye@[email protected]
PHP Core developerContributors to numerous OSS projects
Works with the ex-Dark ForcePortability fan
Topics•History•Status•Some useless stats•Tools, pointers and directions
Any PHP users around?Any Python users around?Any Ruby users around?Any Go users around?Any Scala users around?Any Red users around?
b: 1a: context [
b: 2 inc: func [i [integer!] return: [integer!]][
i + b ]
] a/inc 5 ;-- will return 7
“You are not a good developer if you
know only one language, even as
expert.”
Languages do not matter.
Any Linux users around?Any Windows users around?Any Mac users around?Any Solaris users around?Any Android users around?Any i* users around?
OSes do not matter.
Growing amount of clients
http://www.asymco.com/2012/06/19/the-evolution-of-the-computing-value-chain/
http://www.asymco.com/2012/06/19/the-evolution-of-the-computing-value-chain/
Mobile
http://w
ww
.asymco.com
/2012/06/19/the-evolution-of-the-com
puting-value-chain/
“No need for DOM abstraction libraries.”
“You don't have IE6 on mobile.”PhoneGap Day Quote
“Most mobile players are contributing to PhoneGap
except Apple. Something wrong with them?”
“Yep.”PhoneGap Day Quote
OSes do not matter anymore.
(take #2)
The Web is the (Open) Platform
HTML5
HTML5
(better)HTML + CSS3 + JS
==
•phonegap•Jquery •Dojo•Titanium•Sencha (touch, extjs, etc.)
Phonegap goals
. Make web 1st class app dev platform
. Cease to exist by becoming unnecessary shim
Server Anyone?
Platforms matter.
Cloud Computing!
(the new holly Grail)
Azure, AWS, Openstack, Linode,
SliceHost, AppEngine
More to come }:->
Aw Jeez, not this shit again! (take #2)
Moment of solitude
One goal, One Process, One team
DevOps
(or bringing Agility to all teams)
Virtualization for the masses
$> vagrant box add base http://files.vagrantup.com/deb64.box$> vagrant init$> vagrant up
$> vagrant basebox templatesThe following templates are available:vagrant basebox define '' 'archlinux-i686'vagrant basebox define '' 'CentOS-4.8-i386'vagrant basebox define '' 'CentOS-5.6-i386'vagrant basebox define '' 'CentOS-5.6-i386-netboot'
$> vagrant basebox define 'debian-60' 'Debian-6.0.1a-amd64'$> vagrant basebox build 'debian-60‚$> vagrant box add 'debian-60' debian-60.box$> vagrant init 'debian-60'
Fix the apps
App DBs
Opera Firefox Service ClientIE Service
Client
Services
SOAP Tpl BL
NoSql
Services
Node app
Node app SAPNginx
phpCouchbase
DBsServices
NoSql
Rails +ThinDNode
Consumers (apps, browsers, services)
JSON
Smaller, faster, flexible
More Controls. More Releases.
Adapt or die.
Decoupled
(content, storage, service, etc.)
Decoupled CMS
Demo
create.js
http://createjs.org/
Javascript
•Jasmine•Jasmine-node
•require.js•common.js
Questions?
Resources
References
http://www.asymco.com/2012/06/19/the-evolution-of-the-computing-value-chain/
Toolkits (mobile, desktop, JS, app)• http://phonegap.com/• http://jquery.org/• http://dojotoolkit.org/• http://www.appcelerator.com/• http://www.sencha.com/
Resources
Languages (mobile, desktop, JS, app)• http://www.php.net/• http://python.org/• http://www.ruby-lang.org/• http://www.red-lang.org/• http://golang.org/
Resources
Node.js/Javascript• DNode introduction,
http://substack.net/posts/85e1bd/DNode-Asynchronous-Remote-Method-Invocation-for-Node-js-and-the-Browser
• DNode for PHP, http://bergie.iki.fi/blog/dnode-make_php_and_node-js_talk_to_each_other/
• https://github.com/substack/dnode-ruby• https://github.com/substack/dnode-perl• https://github.com/jesusabdullah/dnode-python• https://github.com/aslakhellesoy/dnode-java• http://mustache.github.com/• http://backbonejs.org/
Resources
Node.js/Javascript• https://github.com/substack/node-browserify• http://www.commonjs.org/• http://xcambar.github.com/shepherd-js/• http://requirejs.org/• http://backbonejs.org/• http://mustache.github.com/• http://createjs.org/• https://github.com/wikidocs/wikidocs-examples• http://uxebu.com/blog/2012/09/17/bonsai-fresh-from-the-pixelplant/
https://www.pixelplant.com/
Resources
Server/Dev/Infrastructure• http://vagrantup.com/• https://github.com/jedi4ever/veewee• https://github.com/capistrano/capistrano• http://fabfile.org/ (fabric)• https://github.com/etsy/statsd• http://codeascraft.etsy.com/2011/02/15/measure-anything-measure-everything/
Resources
Server/Dev/Infrastructure/QA/Misc• http://lists.w3.org/Archives/Public/public-coremob/2012Sep/0021.html
(why html is slow for Facebook)• http://travis-ci.org/• http://vimeo.com/45633052 (Decoupled CMS talk, by @bergie)