Lorenzo Sicilia - @aboutlo
javascript

workflow
evolution
Hi, I’m Lorenzo Sicilia

Currently …
as co-founder
the graphic recording marketplace
- explainer videos, e-learning pills, micro-contents, presentations & more -
as dev
London
Milan
Javascript Worflow Evolution
Javascript Worflow Evolution
Javascript Worflow Evolution
Javascript Worflow Evolution
PREVIOUSLY
( < 2009 )
12
TOOLS
13
Mainly JS as Enhancement
14
Then
JSConf on November 8, 2009
by Ryan Dahl
In 2011, a JS package manager
15
EVOLUTION of the web
Javascript Worflow Evolution
17
package Managers
BowerNPM jspm
18
Modules / bundler

- commonjs, amd, es6 modules-
SystemJS
19
PIPELINE
- manage complexity-
Gulp BroccoliGrunt NPM
20
Scaffolding
- easy bootstrap-
Yeoman / Grunt Slush / Gulp
21
TRANSPILERS
ES5
ES7
TODAY
NEXT
22
SYNTAX Checkers
New
Old
23
Pre-processor (css)
postcss
24
TEsting
Services
Tools
Karma Selenium
Rainforest
jest
frameworks
jasmine
25
DEPLOY
• source mapping (css, js)
• local testing
DEVelopmeNt
Testing
STAGING / PRODUCTION
• source mapping (css, js)
• CI testing
• gzip
• uglify
• css minifier
• image compression
• asset revisioning
a js dirty secret
27
SINGLE PAGE APP
- as first citizen in JS Community -
28
SPA
- FACTS checking-
CONS
PROS
• More complexity (ie. memory leak, )
• Javascript MUST be enabled
• Linking becomes an issue
• Analytics aren't trivial
• SEO implications
• Once loaded faster
• Better UX
• Strict separation of concerns (API)
29
MULTIMPLE PAGE APP
- as so boring citizen in JS community-
30
CONS
PROS
• two languages ( client / server )
• two business logic
• Content is the king
• Simpler
• SEO friendly
• URL friendly
MPA
- FACTS checking-
The NEW KID on THE BLOCK
Isomorphic APP
Javascript code that run on
both client and server
Javascript Worflow Evolution
34
Isomorphic APP
CONS
PROS
• Performance (initial page-load speed)
• Maintainability (promote sharing code client / server )
• Progressive enhancements easier (JS not mandatory )
• SEO friendly
• Complex :)
• A lot of moving parts
35
Isomorphic ARCHITECTURE
36
A JS BUILD should Handles:
• runtime dependencies
• build dependencies
• bundle JS (uglify)
• bundle CSS (minification)
• modules loading
• testing
• multi env client deploy
• multi env server deploy ( isomorphic only )
• env settings
• image optimization
• prepare fonts / icons
SHOW ME THE CODE !!!
SPA ( voicemap player )
- grunt -
aka configuration
https://github.com/aboutlo/gulp-starter-kit
SPA
- GULP -
aka programmable pipeline / stream
https://github.com/aboutlo/reactic-hoover
SPA EXPERIMENT
- webpack + react + flux -
https://github.com/gpbl/isomorphic500
ISOMORPHIC APP
- webpack + react + flux -
TAKE AWAy
WHAT I’m using
+
autoprefixer
TAKE AWAy
WHAT I’m STUDING
+
postcss
TAKE AWAy
ARCHITECTURE
• Node as presentation server
• Invest on the build system
• Isomorphic via React.renderToString
Lorenzo Sicilia - @aboutlo
javascript

workflow
evolution

More Related Content

PPTX
Web Assembly Big Picture
KEY
Jmxtrans presentation
PPT
Web assembly overview by Mikhail Sorokovsky
PPTX
DotNet MVC and webpack + Babel + react
PPTX
Mean stack
PPTX
JS Fest 2018. Александр Скачков. WebAssembly vs JavaScript
PDF
WordPress development checklist
PDF
Camunda Docker
Web Assembly Big Picture
Jmxtrans presentation
Web assembly overview by Mikhail Sorokovsky
DotNet MVC and webpack + Babel + react
Mean stack
JS Fest 2018. Александр Скачков. WebAssembly vs JavaScript
WordPress development checklist
Camunda Docker

What's hot (20)

PDF
JavaScript Engine and WebAssembly
PPTX
002. Working with Webpack
PDF
Open source and cross platform .net
PPTX
Web assembly: a brief overview
PPTX
Building Custom Visual Studio Team Service Build Tasks With VSTS DevOps Task SDK
PDF
OpenNebulaConf2018 - OpenNebula in a Continuous Integration Environment - Geo...
PDF
Design a scalable site: Problem and solutions
PPTX
Building a Continuous Delivery Pipeline With Visual Studio
PDF
A Gentle Introduction to Functions-as-a-Service
PDF
MEAN Stack
PDF
Nuxeo WebEngine and GlassFish v3
PDF
Java FX Tools Aquarium Paris
PDF
eZ Publish Norwegian Public User Group
PPTX
#2 Hanoi Magento Meetup - Part 2: Knockout JS
PDF
Introduction to monix coeval
PDF
Web Assembly
PDF
WebAssembly with Rust
PPTX
Managing Node.js Instances with Oracle APEX
PPTX
What is Mean Stack Development ?
JavaScript Engine and WebAssembly
002. Working with Webpack
Open source and cross platform .net
Web assembly: a brief overview
Building Custom Visual Studio Team Service Build Tasks With VSTS DevOps Task SDK
OpenNebulaConf2018 - OpenNebula in a Continuous Integration Environment - Geo...
Design a scalable site: Problem and solutions
Building a Continuous Delivery Pipeline With Visual Studio
A Gentle Introduction to Functions-as-a-Service
MEAN Stack
Nuxeo WebEngine and GlassFish v3
Java FX Tools Aquarium Paris
eZ Publish Norwegian Public User Group
#2 Hanoi Magento Meetup - Part 2: Knockout JS
Introduction to monix coeval
Web Assembly
WebAssembly with Rust
Managing Node.js Instances with Oracle APEX
What is Mean Stack Development ?
Ad

Viewers also liked (20)

PDF
React Ecosystem
PDF
Let's discover React and Redux with TypeScript
PDF
React.js enlightenment
PPTX
React Redux
PDF
The Frontend Developer Landscape Explained and the Rise of Advanced Frontend ...
PDF
Workshop 22: React-Redux Middleware
PDF
Async Server Rendering in React+Redux at NYTimes (redux-taxi)
PDF
State Models for React with Redux
PDF
The evolution of redux action creators
PDF
Philip Shurpik "Architecting React Native app"
PPTX
Async Redux Actions With RxJS - React Rally 2016
PDF
A Simpler Web App Architecture (jDays 2016)
PDF
React redux workshop
PDF
The New JavaScript: ES6
PPTX
React + Redux Introduction
PDF
The Evolution of Airbnb's Frontend
PDF
React JS and why it's awesome
PDF
React + Redux for Web Developers
PDF
Your Future HTML: The Evolution of Site Design with Web Components
PDF
Professional Frontend Engineering
React Ecosystem
Let's discover React and Redux with TypeScript
React.js enlightenment
React Redux
The Frontend Developer Landscape Explained and the Rise of Advanced Frontend ...
Workshop 22: React-Redux Middleware
Async Server Rendering in React+Redux at NYTimes (redux-taxi)
State Models for React with Redux
The evolution of redux action creators
Philip Shurpik "Architecting React Native app"
Async Redux Actions With RxJS - React Rally 2016
A Simpler Web App Architecture (jDays 2016)
React redux workshop
The New JavaScript: ES6
React + Redux Introduction
The Evolution of Airbnb's Frontend
React JS and why it's awesome
React + Redux for Web Developers
Your Future HTML: The Evolution of Site Design with Web Components
Professional Frontend Engineering
Ad

Similar to Javascript Worflow Evolution (20)

PDF
(2018) Webpack Encore - Asset Management for the rest of us
PPTX
Architecture & Workflow of Modern Web Apps
PDF
CQ5 and Sling overview
PPTX
SnapyX
PPTX
SnapyX - ParisJS
PDF
JDD2015: Java Everywhere Again—with DukeScript - Jaroslav Tulach
PDF
Threads Needles Stacks Heaps - Java edition
PDF
DevOps Toolbox: Infrastructure as code
PDF
Golang @ Tokopedia
PDF
Sina App Engine - a distributed web solution on cloud
PPTX
Application lifecycle management in SharePoint
PDF
Angularjs practical project experiences with javascript development in a bank
PPTX
Lagom framework
PDF
Run Scala Faster with GraalVM on any Platform / GraalVMで、どこでもScalaを高速実行しよう by...
PDF
Алексей Швайка "Bundling: you are doing it wrong"
KEY
Google App Engine Java, Groovy and Gaelyk
PDF
Unlocking the power of the APEX Plugin Architecture
PDF
Grunt.js and Yeoman, Continous Integration
PPTX
StrongLoop DevOps Overview
PDF
DEVELOPING SHAREPOINT FRAMEWORK SOLUTIONS FOR THE ENTERPRISE
(2018) Webpack Encore - Asset Management for the rest of us
Architecture & Workflow of Modern Web Apps
CQ5 and Sling overview
SnapyX
SnapyX - ParisJS
JDD2015: Java Everywhere Again—with DukeScript - Jaroslav Tulach
Threads Needles Stacks Heaps - Java edition
DevOps Toolbox: Infrastructure as code
Golang @ Tokopedia
Sina App Engine - a distributed web solution on cloud
Application lifecycle management in SharePoint
Angularjs practical project experiences with javascript development in a bank
Lagom framework
Run Scala Faster with GraalVM on any Platform / GraalVMで、どこでもScalaを高速実行しよう by...
Алексей Швайка "Bundling: you are doing it wrong"
Google App Engine Java, Groovy and Gaelyk
Unlocking the power of the APEX Plugin Architecture
Grunt.js and Yeoman, Continous Integration
StrongLoop DevOps Overview
DEVELOPING SHAREPOINT FRAMEWORK SOLUTIONS FOR THE ENTERPRISE

Recently uploaded (20)

PPTX
Custom Battery Pack Design Considerations for Performance and Safety
PDF
IT-ITes Industry bjjbnkmkhkhknbmhkhmjhjkhj
PDF
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
PDF
Auditboard EB SOX Playbook 2023 edition.
PDF
Planning-an-Audit-A-How-To-Guide-Checklist-WP.pdf
PPT
Galois Field Theory of Risk: A Perspective, Protocol, and Mathematical Backgr...
PDF
SaaS reusability assessment using machine learning techniques
PDF
Produktkatalog für HOBO Datenlogger, Wetterstationen, Sensoren, Software und ...
PDF
Statistics on Ai - sourced from AIPRM.pdf
PDF
5-Ways-AI-is-Revolutionizing-Telecom-Quality-Engineering.pdf
PPTX
future_of_ai_comprehensive_20250822032121.pptx
DOCX
Basics of Cloud Computing - Cloud Ecosystem
PDF
Transform-Your-Factory-with-AI-Driven-Quality-Engineering.pdf
PDF
Advancing precision in air quality forecasting through machine learning integ...
PDF
LMS bot: enhanced learning management systems for improved student learning e...
PDF
4 layer Arch & Reference Arch of IoT.pdf
PDF
CXOs-Are-you-still-doing-manual-DevOps-in-the-age-of-AI.pdf
PDF
Convolutional neural network based encoder-decoder for efficient real-time ob...
PDF
Rapid Prototyping: A lecture on prototyping techniques for interface design
PDF
Improvisation in detection of pomegranate leaf disease using transfer learni...
Custom Battery Pack Design Considerations for Performance and Safety
IT-ITes Industry bjjbnkmkhkhknbmhkhmjhjkhj
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
Auditboard EB SOX Playbook 2023 edition.
Planning-an-Audit-A-How-To-Guide-Checklist-WP.pdf
Galois Field Theory of Risk: A Perspective, Protocol, and Mathematical Backgr...
SaaS reusability assessment using machine learning techniques
Produktkatalog für HOBO Datenlogger, Wetterstationen, Sensoren, Software und ...
Statistics on Ai - sourced from AIPRM.pdf
5-Ways-AI-is-Revolutionizing-Telecom-Quality-Engineering.pdf
future_of_ai_comprehensive_20250822032121.pptx
Basics of Cloud Computing - Cloud Ecosystem
Transform-Your-Factory-with-AI-Driven-Quality-Engineering.pdf
Advancing precision in air quality forecasting through machine learning integ...
LMS bot: enhanced learning management systems for improved student learning e...
4 layer Arch & Reference Arch of IoT.pdf
CXOs-Are-you-still-doing-manual-DevOps-in-the-age-of-AI.pdf
Convolutional neural network based encoder-decoder for efficient real-time ob...
Rapid Prototyping: A lecture on prototyping techniques for interface design
Improvisation in detection of pomegranate leaf disease using transfer learni...

Javascript Worflow Evolution