SlideShare a Scribd company logo
1 of 71
Download to read offline
CARNET DE ROUTE DU
DÉVELOPPEUR
Partage d’expérience sur le dev en entreprise
AGENDA
• Présentation
• La société 4D
• Les plate-formes
• Arrivée dans l’entreprise
• Une JournéeTypique
• Développement
• Rester ouvert
• La carrière
PRÉSENTATION
•Alexandre Morgaut
Community Manager
Alexandre.Morgaut@4D.com
@amorgaut
•Olivier Randriamanana
Senior Developer
Olivier.Randriamanana@4D.com
LA SOCIÉTÉ 4D
ENTREPRISE INTERNATIONALE
D2D
D2D
outils réalisés
D2D
par des Développeurs
outils réalisés
D2D
pour des Développeurs
par des Développeurs
outils réalisés
ENTREPRISE INNOVANTE
INNOVATION CONTINUE
• 1984 - 1ère base sur Apple
• 1992 - client / serveur intégré
• 1995 - Cross- platform Mac / Windows
• 1997 - Serveur Web intégré
• 2003 - XML & Web Services natifs
VERS LES STANDARDS
• 2004 - ODBC intégré
• 2007 - Unicode, SQL, SVG, Zone Web intégrée
• 2010 - PHP, Synchronisation, Replication
• 2012 - Wakanda....
LE LAB
2008
Pivot de Langage
Modernisation 4D
2007
Pivot de R&D
Séparation Produit
2008
Pivot de Langage
Modernisation 4D
2007
Pivot de R&D
Séparation Produit Développement Wakanda
Fin 2010
Pivot Modèle d’Affaire
2008
Pivot de Langage
Modernisation 4D
2007
Pivot de R&D
Séparation Produit Développement Wakanda
Fin 2010
Pivot Modèle d’Affaire
2008
Pivot de Langage
Modernisation 4D
2007
Pivot de R&D
Séparation Produit Développement Wakanda
Open Source
Fin 2010
« à l’épreuve du feu »
Mars 2011
Pivot Renaming
Ecosystème 4D Outside 4D
Fin 2010
« à l’épreuve du feu »
Mars 2011
Pivot Renaming
Ecosystème 4D
Avril 2011
Pivot MVP
Outside 4D
Fin 2010
« à l’épreuve du feu »
Mars 2011
Pivot Renaming
Ecosystème 4D
Avril 2011
Pivot MVP
Mai 2011
Pivot Earlyvangelist
Outside 4D
LES PLATE-FORMES
4D et Wakanda
• Applications
• Standalone et/ou Client-Server
• Natives Mac OS & Windows
• Mises à jour du client automatiques
• Direct data binding
• Langage unique de la base de données à l’interface
utilisateur
➡ Le langage 4D
• Technologies Web
• HTTP Server
• SOAP
• SVG
• HTML templates
• Webkit
Wakanda
Wakanda Server
(aka WakandaDB)
Wakanda Application
Framework
(aka WAF)
Wakanda Studio
DataStore Model Editor
Code Editor
GUI Designer
Debugger
Users & Groups
Administration
REST/JSON
Extensions
Wakanda
Wakanda Server
(aka WakandaDB)
Your Client or Server Framework
Java, .NET, node.js PHP, Python, Ruby...
ExtJS, Sencha Touch, Kendo UI, Backbone.js...
Your Development Tools
Visual Studio, XCode, NetBeans, Eclipse,
Cloud9, Orion, Sencha Architect
REST/JSON
JSON-RPC
Webkit debugger protocol 1.0
Git, REST, JSON-RPC
JavaScriptCore
multi-threaded, preemptive, thread-safe, 64bits, strict mode
fast, well structured & documented, maintained by Apple
JavaScriptCore
multi-threaded, preemptive, thread-safe, 64bits, strict mode
fast, well structured & documented, maintained by Apple
Employee
company
firstName
lastName
dateOfBirth
...
company
Company City
zip
name
country
city
name
webSite
...
city
town
string
string
...
City
city.name
string
string
Date
...
Company
DESIGN YOUR MODEL
Employee
company
firstName
lastName
dateOfBirth
...
company
Company City
zip
name
country
city
name
webSite
...
city
town
string
string
...
City
city.name
ds.Employee.find("lastName = Doe").company.town
string
string
Date
...
Company
DESIGN YOUR MODEL
CommonJS Modules 1.1.1
- test, assert, worker, console
-partially: system
W3C / HTML5
- Storage,Worker, Blob,Timers, XMLHttpRequest, FileSystem
- Upcoming:Web Socket, File
Node.js compatibility
- Buffer, Process, Events, Net,TLS, OS
ARRIVÉE DANS L’ENTREPRISE
Editeur de logiciels
Programme
Q/A
Marketing
Architecte
Support
Commercial
Programme
Q/A
Marketing
Architecte
Support
Commercial
Programme
Q/A
Marketing
Architecte
Support
Commercial
UNE JOURNEETYPIQUE
OUTILS ET METHODES
OUTILS ET METHODES
★Maîtrise des outils
✴Build
✴Gestion de version
★Méthodes et process du métier
✴Bug fixing
✴Design & développement
★Qualité
OUTILS ET METHODES
★Maîtrise des outils
✴Build
✴Gestion de version
★Méthodes et process du métier
✴Bug fixing
✴Design & développement
★Qualité
OUTILS
OUTILS
★Découvrir de son périmètre fonctionnel
✴Builder le(s) produit(s)
✴Explorer l’architecture du code
✴Comprendre l’intégration des projets
OUTILS
METHODES : BUG FIXING
★Un art
★Un art codifié (process)
★Tester
★Tester
★Tester
METHODES : BUG FIXING
★Un art
★Un art codifié (process)
★Tester
★Tester
★Tester
METHODES : BUG FIXING
★Un art
★Un art codifié (process)
★Tester
★Tester
★Tester
METHODES : BUG FIXING
★Un art
★Un art codifié (process)
★Tester
★Tester
★Tester
METHODES : BUG FIXING
★Un art
★Un art codifié (process)
★Tester
★Tester
★Tester
METHODES : BUG FIXING
★Un art
★Un art codifié (process)
★Tester
★Tester
★Tester
THE ART OF BUG FIXING
THE ART OF BUG FIXING
★Correction chirurgicale
THE ART OF BUG FIXING
★Correction chirurgicale
★Correction radicale
THE ART OF BUG FIXING
★Correction chirurgicale
★Correction radicale
THE ART OF BUG FIXING
★Impact(s), compatibilité ?
★Correction chirurgicale
★Correction radicale
THE ART OF BUG FIXING
★Gestion de la compatibilité
DÉVELOPPEMENT
Programme
Q/A Marketing
DÉVELOPPEMENT
SPORT D’ÉQUIPE
DÉVELOPPEMENT
DÉVELOPPEMENT
SAVOIR FAIRE
★Faire simple (pas simpliste)
★Ne pas vouloir tout faire soi-même...
★Lire (le code des autres)
★Tester, tester, tester
DÉVELOPPEMENT
SAVOIR ÊTRE
★Ouvert, communicant
★Flexible
★Modeste
SAVOIR FAIRE
★Faire simple (pas simpliste)
★Ne pas vouloir tout faire soi-même...
★Lire (le code des autres)
★Tester, tester, tester
RESTER OUVERT
RESTER OUVERT
• Bonus Points
• Veille technologique:
mailing lists, twitter, github...
• Entretenir les fondamentaux
• Sortir, participer aux meetups des “user groups”
• Partager, faire des présentations

More Related Content

What's hot

What's hot (19)

J.L. Boucho, J.Corioland - Azure et les Microservices - Global Azure Bootcamp...
J.L. Boucho, J.Corioland - Azure et les Microservices - Global Azure Bootcamp...J.L. Boucho, J.Corioland - Azure et les Microservices - Global Azure Bootcamp...
J.L. Boucho, J.Corioland - Azure et les Microservices - Global Azure Bootcamp...
 
Introduction to Rust in Production - Servo Mozilla project (Slides)
Introduction to Rust in Production - Servo Mozilla project (Slides)Introduction to Rust in Production - Servo Mozilla project (Slides)
Introduction to Rust in Production - Servo Mozilla project (Slides)
 
Firebase par nicolas lehovetzki
Firebase par nicolas lehovetzkiFirebase par nicolas lehovetzki
Firebase par nicolas lehovetzki
 
Ionic, react native, native script
Ionic, react native, native scriptIonic, react native, native script
Ionic, react native, native script
 
Introduction to Rust in Production - Servo Mozilla project (Talk)
Introduction to Rust in Production - Servo Mozilla project (Talk)Introduction to Rust in Production - Servo Mozilla project (Talk)
Introduction to Rust in Production - Servo Mozilla project (Talk)
 
Développement : mettez le turbo ! - Liferay France Symposium 2017
Développement : mettez le turbo ! - Liferay France Symposium 2017Développement : mettez le turbo ! - Liferay France Symposium 2017
Développement : mettez le turbo ! - Liferay France Symposium 2017
 
Présentation Wakanda @ JSRomandie
Présentation Wakanda @ JSRomandiePrésentation Wakanda @ JSRomandie
Présentation Wakanda @ JSRomandie
 
Universitélang scala tools
Universitélang scala toolsUniversitélang scala tools
Universitélang scala tools
 
Decouverte wakanda-2012-01-24
Decouverte wakanda-2012-01-24Decouverte wakanda-2012-01-24
Decouverte wakanda-2012-01-24
 
Lightning talk: Les Load Balancers HTTP modernes
Lightning talk: Les Load Balancers HTTP modernesLightning talk: Les Load Balancers HTTP modernes
Lightning talk: Les Load Balancers HTTP modernes
 
Marius Zaharia - App Service plus fortement - Global Azure Bootcamp 2016 Paris
Marius Zaharia - App Service plus fortement - Global Azure Bootcamp 2016 ParisMarius Zaharia - App Service plus fortement - Global Azure Bootcamp 2016 Paris
Marius Zaharia - App Service plus fortement - Global Azure Bootcamp 2016 Paris
 
Quoi de neuf dans ASP.NET MVC 4
Quoi de neuf dans ASP.NET MVC 4Quoi de neuf dans ASP.NET MVC 4
Quoi de neuf dans ASP.NET MVC 4
 
Symfony et Sonata Project chez Canal+
Symfony et Sonata Project chez Canal+ Symfony et Sonata Project chez Canal+
Symfony et Sonata Project chez Canal+
 
Cnam cours azure intro et présentation generale
Cnam cours azure intro et présentation generaleCnam cours azure intro et présentation generale
Cnam cours azure intro et présentation generale
 
20140227 - injection de dépendances - mug lyon
20140227 - injection de dépendances - mug lyon20140227 - injection de dépendances - mug lyon
20140227 - injection de dépendances - mug lyon
 
Industrialisation PHP - Canal+
Industrialisation PHP - Canal+Industrialisation PHP - Canal+
Industrialisation PHP - Canal+
 
Meetup DevOps Aix-Marseille - théorie du chaos et architectures résilientes
Meetup DevOps Aix-Marseille - théorie du chaos et architectures résilientesMeetup DevOps Aix-Marseille - théorie du chaos et architectures résilientes
Meetup DevOps Aix-Marseille - théorie du chaos et architectures résilientes
 
Back day - REX vsct - Secrets de conception d’une application innovante au s...
Back day -  REX vsct - Secrets de conception d’une application innovante au s...Back day -  REX vsct - Secrets de conception d’une application innovante au s...
Back day - REX vsct - Secrets de conception d’une application innovante au s...
 
Swagger pour documenter votre REST API - présentation en français
Swagger pour documenter votre REST API - présentation en françaisSwagger pour documenter votre REST API - présentation en français
Swagger pour documenter votre REST API - présentation en français
 

Similar to Carnet de Route du Développeur - ENSIMAG 2012

Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
ENSIBS
 

Similar to Carnet de Route du Développeur - ENSIMAG 2012 (20)

Architecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et XamarinArchitecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et Xamarin
 
.Net pour le développeur Java - une source d'inspiration?
.Net pour le développeur Java - une source d'inspiration?.Net pour le développeur Java - une source d'inspiration?
.Net pour le développeur Java - une source d'inspiration?
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !
 
Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...
Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...
Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...
 
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?Drupagora 2013 : Drupal8 et Symfony2, quel impact ?
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?
 
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
 
Spécifications de webservices avec un seul outil
Spécifications de webservices avec un seul outilSpécifications de webservices avec un seul outil
Spécifications de webservices avec un seul outil
 
CV REBAI Hamida
CV REBAI HamidaCV REBAI Hamida
CV REBAI Hamida
 
Native script
Native scriptNative script
Native script
 
Une visite guidée d’Internet Explorer 9 et HTML5 pour les développeurs Web
Une visite guidée d’Internet Explorer 9 et HTML5 pour les développeurs WebUne visite guidée d’Internet Explorer 9 et HTML5 pour les développeurs Web
Une visite guidée d’Internet Explorer 9 et HTML5 pour les développeurs Web
 
10 tips pour améliorer les performances de vos applications Windows 8
10 tips pour améliorer les performances de vos applications Windows 810 tips pour améliorer les performances de vos applications Windows 8
10 tips pour améliorer les performances de vos applications Windows 8
 
meetup devops aix-marseille - décembre 2023
meetup devops aix-marseille - décembre 2023meetup devops aix-marseille - décembre 2023
meetup devops aix-marseille - décembre 2023
 
Réutilisation de code entre windows 8 et windows phone 8
Réutilisation de code entre windows 8 et windows phone 8Réutilisation de code entre windows 8 et windows phone 8
Réutilisation de code entre windows 8 et windows phone 8
 
4D Summit2013 refactoring
4D Summit2013 refactoring4D Summit2013 refactoring
4D Summit2013 refactoring
 
Dev opsday case study
Dev opsday   case studyDev opsday   case study
Dev opsday case study
 
JavaScript aussi sur le serveur et jusque dans le cloud?
JavaScript aussi sur le serveur et jusque dans le cloud?JavaScript aussi sur le serveur et jusque dans le cloud?
JavaScript aussi sur le serveur et jusque dans le cloud?
 
Visual Studio 2013 / SharePoint 2013 duo de choc de 2010 à 2013 en un clin d’œil
Visual Studio 2013 / SharePoint 2013 duo de choc de 2010 à 2013 en un clin d’œilVisual Studio 2013 / SharePoint 2013 duo de choc de 2010 à 2013 en un clin d’œil
Visual Studio 2013 / SharePoint 2013 duo de choc de 2010 à 2013 en un clin d’œil
 
Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)
 
Présentation welcom la webperf by object23
Présentation welcom la webperf by object23Présentation welcom la webperf by object23
Présentation welcom la webperf by object23
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPF
 

More from Alexandre Morgaut

HTML5 in automotive - web2day 2014
HTML5 in automotive  - web2day 2014HTML5 in automotive  - web2day 2014
HTML5 in automotive - web2day 2014
Alexandre Morgaut
 
JS in SMS - JS.everywhere(2013)
JS in SMS - JS.everywhere(2013)JS in SMS - JS.everywhere(2013)
JS in SMS - JS.everywhere(2013)
Alexandre Morgaut
 
Js in Automotive - JS.everywhere(2013)
Js in Automotive - JS.everywhere(2013)Js in Automotive - JS.everywhere(2013)
Js in Automotive - JS.everywhere(2013)
Alexandre Morgaut
 
Wakanda - apps.berlin.js - 2012-11-29
Wakanda - apps.berlin.js - 2012-11-29Wakanda - apps.berlin.js - 2012-11-29
Wakanda - apps.berlin.js - 2012-11-29
Alexandre Morgaut
 
End to-end W3C - JS.everywhere(2012) Europe
End to-end W3C - JS.everywhere(2012) EuropeEnd to-end W3C - JS.everywhere(2012) Europe
End to-end W3C - JS.everywhere(2012) Europe
Alexandre Morgaut
 
Wakanda and the top 5 security risks - JS.everyrwhere(2012) Europe
Wakanda and the top 5 security risks - JS.everyrwhere(2012) EuropeWakanda and the top 5 security risks - JS.everyrwhere(2012) Europe
Wakanda and the top 5 security risks - JS.everyrwhere(2012) Europe
Alexandre Morgaut
 
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012
Alexandre Morgaut
 
State of the art - server side JavaScript - web-5 2012
State of the art - server side JavaScript - web-5 2012State of the art - server side JavaScript - web-5 2012
State of the art - server side JavaScript - web-5 2012
Alexandre Morgaut
 
Etat de l'art Server-Side JavaScript - JS Geneve
Etat de l'art Server-Side JavaScript - JS GeneveEtat de l'art Server-Side JavaScript - JS Geneve
Etat de l'art Server-Side JavaScript - JS Geneve
Alexandre Morgaut
 

More from Alexandre Morgaut (20)

Lint, coverage, doc, autocompletion, transpilation, minification... powered b...
Lint, coverage, doc, autocompletion, transpilation, minification... powered b...Lint, coverage, doc, autocompletion, transpilation, minification... powered b...
Lint, coverage, doc, autocompletion, transpilation, minification... powered b...
 
Past, present, and future of web assembly - Devfest Nantes 2017
Past, present, and future of web assembly - Devfest Nantes 2017Past, present, and future of web assembly - Devfest Nantes 2017
Past, present, and future of web assembly - Devfest Nantes 2017
 
angular-wakanda ngParis meetup 15 at 42
angular-wakanda ngParis meetup 15 at 42angular-wakanda ngParis meetup 15 at 42
angular-wakanda ngParis meetup 15 at 42
 
Conquer Architectural Challenges with End-to-End JavaScript - enterJS 2014
Conquer Architectural Challenges with End-to-End JavaScript - enterJS 2014Conquer Architectural Challenges with End-to-End JavaScript - enterJS 2014
Conquer Architectural Challenges with End-to-End JavaScript - enterJS 2014
 
HTML5 in automotive - web2day 2014
HTML5 in automotive  - web2day 2014HTML5 in automotive  - web2day 2014
HTML5 in automotive - web2day 2014
 
JS in SMS - JS.everywhere(2013)
JS in SMS - JS.everywhere(2013)JS in SMS - JS.everywhere(2013)
JS in SMS - JS.everywhere(2013)
 
Js in Automotive - JS.everywhere(2013)
Js in Automotive - JS.everywhere(2013)Js in Automotive - JS.everywhere(2013)
Js in Automotive - JS.everywhere(2013)
 
End-to-end HTML5 APIs - The Geek Gathering 2013
End-to-end HTML5 APIs - The Geek Gathering 2013End-to-end HTML5 APIs - The Geek Gathering 2013
End-to-end HTML5 APIs - The Geek Gathering 2013
 
From Web App Model Design to Production with Wakanda
From Web App Model Design to Production with WakandaFrom Web App Model Design to Production with Wakanda
From Web App Model Design to Production with Wakanda
 
NoSQL and JavaScript: a love story
NoSQL and JavaScript: a love storyNoSQL and JavaScript: a love story
NoSQL and JavaScript: a love story
 
Wakanda - apps.berlin.js - 2012-11-29
Wakanda - apps.berlin.js - 2012-11-29Wakanda - apps.berlin.js - 2012-11-29
Wakanda - apps.berlin.js - 2012-11-29
 
End to-end W3C - JS.everywhere(2012) Europe
End to-end W3C - JS.everywhere(2012) EuropeEnd to-end W3C - JS.everywhere(2012) Europe
End to-end W3C - JS.everywhere(2012) Europe
 
Wakanda and the top 5 security risks - JS.everyrwhere(2012) Europe
Wakanda and the top 5 security risks - JS.everyrwhere(2012) EuropeWakanda and the top 5 security risks - JS.everyrwhere(2012) Europe
Wakanda and the top 5 security risks - JS.everyrwhere(2012) Europe
 
End-to-end W3C APIs - tpac 2012
End-to-end W3C APIs - tpac 2012End-to-end W3C APIs - tpac 2012
End-to-end W3C APIs - tpac 2012
 
End-to-end W3C APIs
End-to-end W3C APIsEnd-to-end W3C APIs
End-to-end W3C APIs
 
NoSQL and JavaScript: a Love Story
NoSQL and JavaScript: a Love StoryNoSQL and JavaScript: a Love Story
NoSQL and JavaScript: a Love Story
 
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012
 
Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012
Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012
Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012
 
State of the art - server side JavaScript - web-5 2012
State of the art - server side JavaScript - web-5 2012State of the art - server side JavaScript - web-5 2012
State of the art - server side JavaScript - web-5 2012
 
Etat de l'art Server-Side JavaScript - JS Geneve
Etat de l'art Server-Side JavaScript - JS GeneveEtat de l'art Server-Side JavaScript - JS Geneve
Etat de l'art Server-Side JavaScript - JS Geneve
 

Carnet de Route du Développeur - ENSIMAG 2012