An Enterprise according to Javascript
11/2014 - Buenos Aires, Argentina
Pablo González - @pdg_tw
My early days with javascript
- AS400 vs WebApp
- MS Internet Explorer 6
- XML DOM
- Databinding
- XMLHttpRequest
- "The framework" getById()
- Modal windows
<html>
<head>
<title>XML Data Island Example</title>
</head>
<body>
<XML ID="ACCOUNT">
<?xml version="1.0"?>
<BankAccount>
<Number>1234</Number>
<Name>Darshan Singh</Name>
<Type>Checking</Type>
<OpenDate>11/04/1974</OpenDate>
<Balance>25382.20</Balance>
</BankAccount>
</XML>
<table border="1" datasrc="#ACCOUNT">
<th>
<td>Account Number </td>
<td>Name </td>
<td>Type of Account </td>
<td>Balance </td>
</th>
<tr>
<td><div datafld="Number"></div></td>
<td><div datafld="Name"></div></td>
<td><div datafld="Type"></div></td>
<td><div datafld="Balance"></div></td>
</tr>
</table>
</body>
</html>
and afterwards
- Jquery
- Motools
- Prototype
+
- JSON
- CSS
I did hardly anything, but the world ...
On world wide web
a bit of everything
HTML DOM + JAVASCRIPT + CSS3
_____________________________________
HTML5
the screen
- 800 X 600 (4:3)
- 1024 X 768-- (4:3)
- early mobile design
- liquid design (% + absolute)
- mobile devices
- responsive design
- responsive + inifite scroll
Intranets
- maybe you need IE 8 Compatibility
- my custom JQuery UI
- Or something worse (like GWT)
- fucking widgets for portals
- Security issues
¿How to upgrade it?
And the World Goes On
for cheap and easy beauty
- Modernizr.js
- Polyfills
- Bootstrap
- SASS
- LESS
- HTML5 support on designer tools
JQueryUIJQueryMobile
for developers health
- knockout.js
- backbone.js
- underscore.js
- ember.js
- angular.js
JQueryJQuery.BBQ
And Goes On
- node.js
- npm
- jade
- ejs
- express.js
- sails.js
- grunt.js
- gulp.js
- bower.js
- nvm
- socket.io
- sockjs
- mongoDB
- couchDB
- meteor.js
- silk.js
- yeoman
- JWT
I went on too
First HTML5, I started with the website of my own business:
Second Social Media APIs and Oauth
Third knockout.js
I went on, again
Fourth a game for babies:
Fifth angular.js, node.js, socket.io
Sixth return of JQuery
JS gave me the experience that my son was my tester
The enterprise
- Startups were early adopters of new JS philosophy.
- The MEAN stack was an useful replace for LAMP Stack, specially with the intrusion of LEAN methodology.
- The intranets were freeze in the time (including browser support)
- The renewed websites only were successful with external design agencies.
INNOVATION & TECHNOLOGY
LATEST IT DEPLOYMENT
JAVASCRIPT
LATAM biggest Healthcare Insurance.
+4.600.000 Beneficiaries.
16.000 Staff.
20.000 Healthcare providers.
+ 16.000 Pharmacies
+ 700 Offices.
+2.000.000 Transactions per day.
170.000 Digital prescriptions.
About PAMI
¿How to Start?
People
- Are there a team?
- Expirience?
- Studies?
- Skills?
- From which technology comes?
business requirements
Applicability
- Website?
- Intranet?
- core business?
- side business?
- mobile devices
¿How to Start?
technology requirements
apps with short life
- short TTM
- campaigns
- POCs
high performance apps
- we love node.js
- mongoDB (WARN!)
- Other NOSQL
- event processing
scalable apps
- campaigns
- high availability
¿How not to Start?
Core Business Apps
Frequently Accessed Apps
Real Time Apps
Making friendly JS
GWT or something else
deal with dynamic typing
build better development tools
IDEs
You always can use notepad or vi
nodeinspector && node --debug --debug-bkp
Chrome Developer Tools
TESTS
- Test is good for functionality but it is also for dynamic typing
- Developers make mistakes
- typos, assignment, undefined are issues
Talking with Gavin
About developers skills and types on ceylon
performance approach
better with the tool certified by the company
¿You get better performance with lowest cost?
performance include: tx/min, concurrency, availability, disk, memory, cpu, energy.
make something quick, easy and cheap
- And Improve it.
- And Improve your team.
- And Improve your experiencie.
- Make something maintainable.
- Learn how to automate
do not make promises you can not keep
Do what you can now, leave what you wish for later
Promises on JS are excellent but hard to learn for non JS developers
Skills & Tips
life is a callback (don' t hit it)
please know prototyping
javascript is about functions and objects
node.js is not magic! use google and read
order your files
proactivity
More and more JS
community is really the support, you aren't it
share, share, share, improve, improve, improve
try, if you do not like do not use
Conclusions
JS is the best thing for Enterprise and business
Say "the best" is not good, say "good" is best
The cost for development is low, the cost for maintenance is the issue
Always try something new, every time there are new things that can save your day
Conect with ITPAMI
Shares the most innovative IT initiatives that PAMI has developed recently, to be empowered by the community. it.pami.org.ar
JSCONF 26/11/2014 “An Enterprise according to Javascript"
By Pablo Daniel Gonzalez
JSCONF 26/11/2014 “An Enterprise according to Javascript"
We'll learn about how different our approach should be when developing enterprise applications using Javascript (browser and server) compared to smaller projects. Pablo will cover advantages and disadvantages, tips and unanswered questions he came up with when working on PAMI's platform. He'll also talk about the skillsets and tools that worked best for him to deal with this kind of development. This workshop would be ideal for architects, project leaders and developers willing to use JavaScript on their companies.
- 1,703