SlideShare a Scribd company logo
Jayway Web Tech Radar 2015
Gustaf Nilsson Kotte (@gustaf_nk)
Jayway Web Tech Radar 2015
Rate of change: High
Inspiration:
ThoughtWorks Tech Radar
● Adopt
● Trial
● Assess
● Hold
https://www.thoughtworks.com/radar
Adopt
ECMAScript 6 (new)
Trial
● Static Site Generators (new)
● React (Assess)
● Webpack (new)
Assess
● Universal (Isomorphic) Web Applications (new)
● Unidirectional data flow on the client (new)
● Client-side Reactive Programming (new)
● HTML Microservices (new)
● Parse (Backend-as-a-Service) (new)
● Meteor (Assess)
● Ember (Assess)
● Angular (Trial) *
* It’s complicated
Adopt
ECMAScript 6
Babel (transpiler)
Arrows
Template Strings
Let and Const
Enhanced object literals
Default + rest + spread
Destructing
Classes
Modules
Promises
https://github.com/lukehoban/es6features
Trial
Static Site Generators
● For content that doesn’t update very frequently
● Build and deploy an entire new site each time
● Can rely on CDNs
React
● Facebook
● Virtual DOM
● JSX
● Favors small modules
https://facebook.github.io/react/
WebPack
● node modules in the browser
● Multiple output bundles (more powerful that Browserify)
● Lots of plugins
● Optimize build (deduping, etc)
● Quite steep learning curve
https://webpack.github.io/
Assess
(Techniques, Reduce layers, and Frameworks)
Assess
Techniques
Universal (Isomorphic) Web Applications
● “Same code on client and server”
● Easy concept, hard in practice
○ Routing
○ Sync HTTP requests on server, async on the client
○ Send state twice: HTML and serialized store
● Rendr (Backbone)
● (Ember)
● (Angular 2)
http://nerds.airbnb.com/isomorphic-javascript-future-web-apps/
Unidirectional data flow on the client
● Flux
● Redux
● ...
● Elm (language)
http://staltz.com/unidirectional-user-interface-architectures.html
Jayway Web Tech Radar 2015
Client-side Reactive Programming
● RxJS
● Bacon
● …
● Having good FP skills is a requirement
● Angular 2 will use RxJS → adoption
http://reactivex.io
https://baconjs.github.io
Assess
Reduce layers
Background
Need
Deliver increments of end-to-end solutions faster.
How to do this with both backend (API) and frontend?
Idea
Sometimes you don’t need to develop an API or a SPA!
Microservices with HTML interface
● “Back to basics”
● Reduces complexity, if feasible
● Independent
○ ...or backed by REST API (Gateway web server)
Parse (Backend-as-a-Service)
● JavaScript (including node.js), iOS, Android, etc etc
○ Backbone
○ Recently launched React support
● Native notifications
● Authentication out-of-the-box
● Pay for requests/sec and unique users to notify
https://parse.com
Meteor
● “Full-stack”
● mini-Mongo on the client
● Reactive (server-push via websockets)
○ Templates are reactive too
● Folder structure dictates where JavaScript is run
● Insecure by default (insecure package)
● User account module: sign-up, reset password, Twitter, Facebook, Google
https://www.meteor.com
Reduce layers
Dashed lines are for elements not developed.
E.g. when using Parse, the API is a service you configure
Assess
Client-side frameworks
Ember
● Assess (2013) → Assess (2015)
● Quite heavy framework
● Universal JS support very soon™
● Supply of devs with Ember relatively low (compared to Angular)
● ...still nice ideas in the framework
● Very good with backward compatible releases (compared to Angular)
○ 6 weeks iterations
http://emberjs.com
Angular / Angular 2
● ...it’s complicated
● Very high adoption of Angular ←→ Very high supply of Angular devs
● Angular 2 not compatible with Angular 1
● TypeScript!
● One-way data binding
● Performance
● Server-side rendering
● Better programming concepts (service, et al)
● Angular 2 will probably dominate, when released
https://angularjs.org
https://angular.io
Analysis
Overview
● ECMAScript 6 Adopt (new)
● Static Site Generators Trial (new)
● React Trial (Assess)
● Webpack Trial (new)
● Universal (Isomorphic) Web Applications Assess (new)
● Unidirectional data flow on the client Assess (new)
● Client-side Reactive Programming Assess (new)
● HTML Microservices Assess (new)
● Parse (Backend-as-a-Service) Assess (new)
● Meteor Assess (Assess)
● Ember Assess (Assess)
● Angular Assess (Trial) *
* It’s complicated
Advices to manage the high rate of change
Do your own Tech Radar
http://nealford.com/memeagora/2013/05/28/build_your_own_technology_radar.html
https://github.com/bdargan/techradar
Diversity and prediction
http://www.amazon.com/The-Difference-Diversity-Creates-Societies/dp/0691138540
Innovation tokens
● Idea: you have 2-3 “innovation tokens” to spend on “new tech”
● Over time, you might earn another token
● Because: New tech → risk
● What’s the competence in the company?
http://mcfunley.com/choose-boring-technology
Innovation tokens
http://mcfunley.com/choose-boring-technology
Thank you for listening!
@gustaf_nk

More Related Content

PDF
Simpler Web Architectures Now! (At The Frontend 2016)
PDF
A Simpler Web App Architecture (jDays 2016)
PPTX
Building solutions with the SharePoint Framework - deep-dive
PPTX
Building solutions with the SharePoint Framework - introduction
PDF
JAMstack
PDF
JAMstack WTJ
PDF
Server rendering-talk
PPTX
JAMStack
Simpler Web Architectures Now! (At The Frontend 2016)
A Simpler Web App Architecture (jDays 2016)
Building solutions with the SharePoint Framework - deep-dive
Building solutions with the SharePoint Framework - introduction
JAMstack
JAMstack WTJ
Server rendering-talk
JAMStack

What's hot (20)

PPTX
How to automate your BizTalk Installations and Deployments with Chef
PPTX
Progressive web applications
PPTX
Setting up development environment for building SharePoint Framework solution...
PPTX
Pros and Cons of developing a Thick Clientside App
PPTX
001. Introduction about React
PDF
Stripe con 2021 UI stack
PPTX
Mvc razor and working with data
PPTX
Asp.net visual studio 2013
PPTX
Web forms Overview Presentation
PPTX
Rapid Application Development with MEAN Stack
PDF
ITT Flisol 2013
PPTX
Professional JavaScript Error-Logging
PPTX
Introduction presentation
PPT
Full stack JavaScript - the folly of choice
PDF
Handling scale on AWS
PDF
WordPress: React Way
PPTX
Power Training DevDays 2009
PPT
Ajax Using JSP with prototype.js
PDF
Client vs Server Templating: Speed up initial load for SPA with Angular as an...
PPTX
A Gentle Introduction to Blazor
How to automate your BizTalk Installations and Deployments with Chef
Progressive web applications
Setting up development environment for building SharePoint Framework solution...
Pros and Cons of developing a Thick Clientside App
001. Introduction about React
Stripe con 2021 UI stack
Mvc razor and working with data
Asp.net visual studio 2013
Web forms Overview Presentation
Rapid Application Development with MEAN Stack
ITT Flisol 2013
Professional JavaScript Error-Logging
Introduction presentation
Full stack JavaScript - the folly of choice
Handling scale on AWS
WordPress: React Way
Power Training DevDays 2009
Ajax Using JSP with prototype.js
Client vs Server Templating: Speed up initial load for SPA with Angular as an...
A Gentle Introduction to Blazor
Ad

Similar to Jayway Web Tech Radar 2015 (20)

PPTX
Java script framework-roller-coaster
PPTX
Top Frontend Frameworks to Know for Modern Web Development.pptx
PDF
Introduction to javascript technologies
PDF
three_software_development_trends_to_follow_in_2016
PDF
React.js alternatives modern web frameworks and lightweight java script libr...
PDF
fooConf - JavaScript frameworks of tomorrow
PPT
State of modern web technologies: an introduction
PDF
Which technology has a better future_ AngularJS or ReactJS_.pdf
PDF
JavaScript frameworks of tomorrow
PPTX
Isomorphic JavaScript – future of the web
PPTX
JavaScript - Kristiansand PHP
PPTX
AI introduction to modern web technologies.pptx
PDF
Top 11 Front-End Web Development Tools To Consider in 2020
PDF
Building Enterprise Grade Front-End Applications with JavaScript Frameworks
PPTX
JS digest. Mid-Summer 2017
PPTX
Frontend War: Angular vs React vs Vue
PPTX
What is a good technology stack today?
PDF
DownTheRabbitHole.js – How to Stay Sane in an Insane Ecosystem
PDF
Die Qual der Wahl bei den Single Page Application Frameworks
PPTX
JS digest, March 2017
Java script framework-roller-coaster
Top Frontend Frameworks to Know for Modern Web Development.pptx
Introduction to javascript technologies
three_software_development_trends_to_follow_in_2016
React.js alternatives modern web frameworks and lightweight java script libr...
fooConf - JavaScript frameworks of tomorrow
State of modern web technologies: an introduction
Which technology has a better future_ AngularJS or ReactJS_.pdf
JavaScript frameworks of tomorrow
Isomorphic JavaScript – future of the web
JavaScript - Kristiansand PHP
AI introduction to modern web technologies.pptx
Top 11 Front-End Web Development Tools To Consider in 2020
Building Enterprise Grade Front-End Applications with JavaScript Frameworks
JS digest. Mid-Summer 2017
Frontend War: Angular vs React vs Vue
What is a good technology stack today?
DownTheRabbitHole.js – How to Stay Sane in an Insane Ecosystem
Die Qual der Wahl bei den Single Page Application Frameworks
JS digest, March 2017
Ad

More from Gustaf Nilsson Kotte (11)

PDF
Microservice Websites – Øredev 2017
PDF
Microservice Websites – Micro CPH
PDF
Microservice Websites (microXchg 2017)
PDF
HTML Hypermedia APIs and Adaptive Web Design - jDays 2013
PDF
Design Hypermedia APIs
PDF
HTML Hypermedia APIs and Adaptive Web Design - RuPy
PDF
HTML Hypermedia APIs and Adaptive Web Design - reject.js
PDF
HTML Hypermedia APIs and Adaptive Web Design - Nordic APIs
PDF
Surviving the Zombie Apocalypse of Connected devices - Jfokus 2013
PDF
Surviving the Zombie Apocalpyse of Connected Devices
PPTX
Windows 8 for Web Developers
Microservice Websites – Øredev 2017
Microservice Websites – Micro CPH
Microservice Websites (microXchg 2017)
HTML Hypermedia APIs and Adaptive Web Design - jDays 2013
Design Hypermedia APIs
HTML Hypermedia APIs and Adaptive Web Design - RuPy
HTML Hypermedia APIs and Adaptive Web Design - reject.js
HTML Hypermedia APIs and Adaptive Web Design - Nordic APIs
Surviving the Zombie Apocalypse of Connected devices - Jfokus 2013
Surviving the Zombie Apocalpyse of Connected Devices
Windows 8 for Web Developers

Recently uploaded (20)

PDF
Electronic commerce courselecture one. Pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Encapsulation theory and applications.pdf
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
Electronic commerce courselecture one. Pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Building Integrated photovoltaic BIPV_UPV.pdf
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Encapsulation theory and applications.pdf
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Diabetes mellitus diagnosis method based random forest with bat algorithm
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Spectral efficient network and resource selection model in 5G networks
Unlocking AI with Model Context Protocol (MCP)
MYSQL Presentation for SQL database connectivity
Mobile App Security Testing_ A Comprehensive Guide.pdf
Big Data Technologies - Introduction.pptx
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Advanced methodologies resolving dimensionality complications for autism neur...

Jayway Web Tech Radar 2015

  • 1. Jayway Web Tech Radar 2015 Gustaf Nilsson Kotte (@gustaf_nk)
  • 4. Inspiration: ThoughtWorks Tech Radar ● Adopt ● Trial ● Assess ● Hold https://www.thoughtworks.com/radar
  • 6. Trial ● Static Site Generators (new) ● React (Assess) ● Webpack (new)
  • 7. Assess ● Universal (Isomorphic) Web Applications (new) ● Unidirectional data flow on the client (new) ● Client-side Reactive Programming (new) ● HTML Microservices (new) ● Parse (Backend-as-a-Service) (new) ● Meteor (Assess) ● Ember (Assess) ● Angular (Trial) * * It’s complicated
  • 9. ECMAScript 6 Babel (transpiler) Arrows Template Strings Let and Const Enhanced object literals Default + rest + spread Destructing Classes Modules Promises https://github.com/lukehoban/es6features
  • 10. Trial
  • 11. Static Site Generators ● For content that doesn’t update very frequently ● Build and deploy an entire new site each time ● Can rely on CDNs
  • 12. React ● Facebook ● Virtual DOM ● JSX ● Favors small modules https://facebook.github.io/react/
  • 13. WebPack ● node modules in the browser ● Multiple output bundles (more powerful that Browserify) ● Lots of plugins ● Optimize build (deduping, etc) ● Quite steep learning curve https://webpack.github.io/
  • 16. Universal (Isomorphic) Web Applications ● “Same code on client and server” ● Easy concept, hard in practice ○ Routing ○ Sync HTTP requests on server, async on the client ○ Send state twice: HTML and serialized store ● Rendr (Backbone) ● (Ember) ● (Angular 2) http://nerds.airbnb.com/isomorphic-javascript-future-web-apps/
  • 17. Unidirectional data flow on the client ● Flux ● Redux ● ... ● Elm (language) http://staltz.com/unidirectional-user-interface-architectures.html
  • 19. Client-side Reactive Programming ● RxJS ● Bacon ● … ● Having good FP skills is a requirement ● Angular 2 will use RxJS → adoption http://reactivex.io https://baconjs.github.io
  • 21. Background Need Deliver increments of end-to-end solutions faster. How to do this with both backend (API) and frontend? Idea Sometimes you don’t need to develop an API or a SPA!
  • 22. Microservices with HTML interface ● “Back to basics” ● Reduces complexity, if feasible ● Independent ○ ...or backed by REST API (Gateway web server)
  • 23. Parse (Backend-as-a-Service) ● JavaScript (including node.js), iOS, Android, etc etc ○ Backbone ○ Recently launched React support ● Native notifications ● Authentication out-of-the-box ● Pay for requests/sec and unique users to notify https://parse.com
  • 24. Meteor ● “Full-stack” ● mini-Mongo on the client ● Reactive (server-push via websockets) ○ Templates are reactive too ● Folder structure dictates where JavaScript is run ● Insecure by default (insecure package) ● User account module: sign-up, reset password, Twitter, Facebook, Google https://www.meteor.com
  • 25. Reduce layers Dashed lines are for elements not developed. E.g. when using Parse, the API is a service you configure
  • 27. Ember ● Assess (2013) → Assess (2015) ● Quite heavy framework ● Universal JS support very soon™ ● Supply of devs with Ember relatively low (compared to Angular) ● ...still nice ideas in the framework ● Very good with backward compatible releases (compared to Angular) ○ 6 weeks iterations http://emberjs.com
  • 28. Angular / Angular 2 ● ...it’s complicated ● Very high adoption of Angular ←→ Very high supply of Angular devs ● Angular 2 not compatible with Angular 1 ● TypeScript! ● One-way data binding ● Performance ● Server-side rendering ● Better programming concepts (service, et al) ● Angular 2 will probably dominate, when released https://angularjs.org https://angular.io
  • 30. Overview ● ECMAScript 6 Adopt (new) ● Static Site Generators Trial (new) ● React Trial (Assess) ● Webpack Trial (new) ● Universal (Isomorphic) Web Applications Assess (new) ● Unidirectional data flow on the client Assess (new) ● Client-side Reactive Programming Assess (new) ● HTML Microservices Assess (new) ● Parse (Backend-as-a-Service) Assess (new) ● Meteor Assess (Assess) ● Ember Assess (Assess) ● Angular Assess (Trial) * * It’s complicated
  • 31. Advices to manage the high rate of change
  • 32. Do your own Tech Radar http://nealford.com/memeagora/2013/05/28/build_your_own_technology_radar.html https://github.com/bdargan/techradar
  • 34. Innovation tokens ● Idea: you have 2-3 “innovation tokens” to spend on “new tech” ● Over time, you might earn another token ● Because: New tech → risk ● What’s the competence in the company? http://mcfunley.com/choose-boring-technology
  • 36. Thank you for listening! @gustaf_nk