SlideShare a Scribd company logo
Overview of front-end
development today
Bojan Veljanovski (@bojanv91)
Chief Technology Officer @ HASELT
DIGIT Noe 2016
Agenda
• 1) What is front-end development?
• 2) Traditional to Modern SPA approaches
• 3) Choosing a side
• 4) Showcase: GitHub.com
• 5) Showcase: Azure Portal
• Summary
• Further Reading
Image source: https://www.frontendhandbook.com/
DIGIT Noe 2016 - Overview of front end development today
DIGIT Noe 2016 - Overview of front end development today
DIGIT Noe 2016 - Overview of front end development today
DIGIT Noe 2016 - Overview of front end development today
1) Front-end development?
• Code in
• HTML
• CSS
• JavaScript
• Run in
• Web browser
• Headless browser
• WebView
• Native runtime environment
1) Run in
• Web browser
• Chrome, IE, Firefox, Brave, Vivaldi running on an OS
• Headless browser
• Used for test automation, scraping
• Techs: PhantomJS and others
• WebView
• Embedded in a native app with some access to native
APIs
• Techs: Apache Cordova, Electron
• Native runtime environment
• Native app interpreted at runtime with a access to
native APIs
• UIs are composed of native controls
• Techs: NativeScript, ReactNative
1) What should you know?
• HTML
• CSS
• DOM (Document Object Model)
• JavaScript (e.g. ECMAScript6)
• Web APIs (HTML5 and Browser APIs)
• HTTP (Hypertext Transfer Protocol)
• WebSocket (for full-duplex communication)
• JSON (JavaScript Object Notation)
• Web Content Accessibility Guidelines (WCAG) &
Accessible Rich Internet Applications (ARIA)
2) Types of Browser apps
• Static
• presentation websites, news, blogs
• e.g. http://sp.finki.ukim.mk/digit/
• Interactive
• Line-of-Business apps, CRUD apps, CMS-based apps
• e.g. http://GitHub.com
• Highly-interactive (“Reactive”?)
• e.g. advanced monitoring apps, real-time always-
connected apps
• Azure Portal, GMail
UI stuff is
closer to server
UI stuff is
closer to client
2) Evolution of an approach
• Traditional
• The server does most of the presentation related stuff
• Modern SPAs (Single Page Applications)
• The client does most of the presentation related stuff
2) Traditional?
• Server-side rendered pages
• Every request results with a new page
• Feels static
2) Single Page Application?
• Native-like experience
• Rich and responsive browser application
• All HTML/CSS/JS are loaded onto one page, on first
visit
• No “page refresh” on navigation or action
• New data and content is pulled via AJAX and client-
side rendered
• Server becomes just a thin JSON data provider
• UI interactions are handled in the browser
2) Characteristics of SPAs
• Modular
• Component-oriented
• Event-driven
• Reactive
• Client-side rendering and navigation
• In-browser databases (for offline work)
3) …but careful, the roads to SPA
are bumpy
• Code duplication on client and server will occur
• Steep learning curve!!!
• Strong JavaScript skills are a MUST
• Security issues
• Compatibility issues - SPA stacks depend on far too
many 3-rd party libraries
• Technology overhead - brand new “silver-bullet”
library is released every day
Choosing a side
Closer to server vs. closer to client
5) Showcase: GitHub.com
1. When navigating to other views, does the
browser always make page refreshes?
2. When performing actions on current page, does
the browser always stay intact and does not make
page refreshes?
3. Is it a traditional web application?
4. Is it a fully modern SPA?
5. Is it modular? Are some modules fully SPA
themselves, and other plain old traditional web
pages?
6) Showcase: Azure Portal
• https://channel9.msdn.com/Blogs/Windows-
Azure/Azure-Preview-portal
Summary
• Slice your apps in several cohesive modules.
• Decide development approach per module, not per
application.
• There is no silver bullet.
• When to go with SPA approach?
• You are building highly interactive (reactive) web apps
• You are building real-time web apps
• You need offline support for your web apps
• You are building hybrid mobile apps
…and all boils down to:
Choose the simplest tool with which you can get the
job done,
and do the simplest thing that could possibly work,
but be super aware and well informed about what
else is possible.
Listen to feedback, improve and iterate continuously.
THANKS!
Further Reading
• Books
• http://singlepageappbook.com
• http://frontendhandbook.com
• Techs
• http://aurelia.io/
• https://cordova.apache.org
• http://electron.atom.io
• https://www.nativescript.org
• https://facebook.github.io/react-native

More Related Content

PDF
Modern front end development
Tomislav Mesić
 
PPTX
Front-end development introduction (HTML, CSS). Part 1
Oleksii Prohonnyi
 
PPTX
Top frontend web development tools
Benji Harrison
 
PPTX
Front-end technologies for Wonderful User Experience through Websites
Ready Bytes Software labs
 
PPTX
Front End Development | Introduction
JohnTaieb
 
PPTX
Modern Frontend Technology
Ship Hsu
 
PDF
What is front-end development ?
Mahmoud Shaker
 
PDF
Front end architecture
Remus Langu
 
Modern front end development
Tomislav Mesić
 
Front-end development introduction (HTML, CSS). Part 1
Oleksii Prohonnyi
 
Top frontend web development tools
Benji Harrison
 
Front-end technologies for Wonderful User Experience through Websites
Ready Bytes Software labs
 
Front End Development | Introduction
JohnTaieb
 
Modern Frontend Technology
Ship Hsu
 
What is front-end development ?
Mahmoud Shaker
 
Front end architecture
Remus Langu
 

What's hot (20)

PDF
Front end developer responsibilities what does a front-end developer do?
Katy Slemon
 
PDF
Front end development best practices
Karolina Coates
 
PPTX
Front-end development introduction (JavaScript). Part 2
Oleksii Prohonnyi
 
PPTX
Front end development session1
marwa Ayad Mohamed
 
PPTX
Difference between frontend and backend
Rahul Rana
 
PDF
Understand front end developer
Hsuan Fu Lien
 
PPTX
Front end web development
viveksewa
 
PDF
Web Design & Development Courses in Pune| 3DOT Technologies
abeda786
 
PPT
Flex vs HTML5
Ray Wong
 
PDF
Front end for back end developers
Wojciech Bednarski
 
PPTX
Angular JS - UI Development Online Training
Front End UI Online Training from India
 
PPTX
Web development using javaScript, React js, Node js, HTML, CSS and SQL
Jayant Surana
 
PPTX
Open Source examples from Adobe : Oscon kiosk
Dave McAllister
 
PPTX
Introduction to BOT Framework- Global Azure Bootcamp 2017
Jalpesh Vadgama
 
PPTX
Introduction to document db- Global Azure Bootcamp 2016
Jalpesh Vadgama
 
PPTX
3 dot technologies by deepak modi
Deepak Modi
 
PDF
3 dot technologies by deepak modi
Deepak Modi
 
PDF
WEB I - 01 - Introduction to Web Development
Randy Connolly
 
PPTX
Introduction to HTML5 and CSS3
Chandra S Oemarjadi
 
PDF
ve-cv-ver-3-2
Vik Ewoods
 
Front end developer responsibilities what does a front-end developer do?
Katy Slemon
 
Front end development best practices
Karolina Coates
 
Front-end development introduction (JavaScript). Part 2
Oleksii Prohonnyi
 
Front end development session1
marwa Ayad Mohamed
 
Difference between frontend and backend
Rahul Rana
 
Understand front end developer
Hsuan Fu Lien
 
Front end web development
viveksewa
 
Web Design & Development Courses in Pune| 3DOT Technologies
abeda786
 
Flex vs HTML5
Ray Wong
 
Front end for back end developers
Wojciech Bednarski
 
Angular JS - UI Development Online Training
Front End UI Online Training from India
 
Web development using javaScript, React js, Node js, HTML, CSS and SQL
Jayant Surana
 
Open Source examples from Adobe : Oscon kiosk
Dave McAllister
 
Introduction to BOT Framework- Global Azure Bootcamp 2017
Jalpesh Vadgama
 
Introduction to document db- Global Azure Bootcamp 2016
Jalpesh Vadgama
 
3 dot technologies by deepak modi
Deepak Modi
 
3 dot technologies by deepak modi
Deepak Modi
 
WEB I - 01 - Introduction to Web Development
Randy Connolly
 
Introduction to HTML5 and CSS3
Chandra S Oemarjadi
 
ve-cv-ver-3-2
Vik Ewoods
 
Ad

Viewers also liked (19)

PDF
Performance monitoring measurement angualrjs single page apps with phantomas
David Amend
 
PPTX
Front-end Development Training by Technnovation Labs
Prasad Shende
 
KEY
Front end engineering, YUI Gallery, and your future
Luke Smith
 
PPTX
Front-End Intelligence
Judy T Raj
 
KEY
Architecting single-page front-end apps
Zohar Arad
 
PDF
Front-end Modular & Autmomated Development
Joseph Chiang
 
PDF
How to Build Front-End Web Apps that Scale - FutureJS
Phil Leggetter
 
PDF
Optimising Your Front End Workflow With Symfony, Twig, Bower and Gulp
Matthew Davis
 
PDF
A modern front end development workflow for Magnolia at Atlassian
Magnolia
 
PDF
Front End Development Workflow Tools
Ahmed Elmehri
 
PPTX
Frontend technologies
Jose Ramon Roblero Ruiz
 
PDF
TechTalk #85 : Latest Frontend Technologies
bincangteknologi
 
PDF
Preparations For A Successful Interview
KMS Technology
 
PDF
Front End Development Transformation at Scale, Damon Deaner
Future Insights
 
PDF
Websocket
艾鍗科技
 
PPTX
Frontend Architecture and Data Visualization
Altocloud
 
KEY
The HTML5 WebSocket API
David Lindkvist
 
PPTX
HTML5 WebSocket Introduction
Marcelo Jabali
 
PDF
Front-end Project Development -- from install, development to production
Laura Lee
 
Performance monitoring measurement angualrjs single page apps with phantomas
David Amend
 
Front-end Development Training by Technnovation Labs
Prasad Shende
 
Front end engineering, YUI Gallery, and your future
Luke Smith
 
Front-End Intelligence
Judy T Raj
 
Architecting single-page front-end apps
Zohar Arad
 
Front-end Modular & Autmomated Development
Joseph Chiang
 
How to Build Front-End Web Apps that Scale - FutureJS
Phil Leggetter
 
Optimising Your Front End Workflow With Symfony, Twig, Bower and Gulp
Matthew Davis
 
A modern front end development workflow for Magnolia at Atlassian
Magnolia
 
Front End Development Workflow Tools
Ahmed Elmehri
 
Frontend technologies
Jose Ramon Roblero Ruiz
 
TechTalk #85 : Latest Frontend Technologies
bincangteknologi
 
Preparations For A Successful Interview
KMS Technology
 
Front End Development Transformation at Scale, Damon Deaner
Future Insights
 
Websocket
艾鍗科技
 
Frontend Architecture and Data Visualization
Altocloud
 
The HTML5 WebSocket API
David Lindkvist
 
HTML5 WebSocket Introduction
Marcelo Jabali
 
Front-end Project Development -- from install, development to production
Laura Lee
 
Ad

Similar to DIGIT Noe 2016 - Overview of front end development today (20)

PDF
Trends in front end engineering_handouts
AE - architects for business and ict
 
PDF
The Characteristics of a Successful SPA
Gil Fink
 
PPTX
Single Page Applications: Your Browser is the OS!
Jeremy Likness
 
PPTX
Eureko frameworks
Görkem Sazara
 
PPTX
Build Modern Web Apps Using ASP.NET Web API and AngularJS
Taiseer Joudeh
 
PPTX
Single page applications
Prafful Garg
 
PDF
Components of a Generic Web Application Architecture
MadonnaLamin1
 
PPTX
Single Page Application
Isuru Madusanka
 
PDF
Types of Web Applications: A Complete Guide for Businesses
ScalaCode
 
PPTX
Refactoring to a SPA
Marcello Teodori
 
PDF
Refactoring to a Single Page Application
Codemotion
 
PPTX
Single page application and Framework
Chandrasekar G
 
PPTX
Angular jS Introduction by Google
ASG
 
PDF
The Complete Beginner’s Guide to Web Application Development (1).pdf
ayushiqss
 
PPTX
Unit 1 Part A.pptx bca subject with the ppt
prajwalbkulal
 
PPTX
CC 2015 Single Page Applications for the ASPNET Developer
Allen Conway
 
PDF
Single Page Application (SPA): A Comprehensive Guide for Beginners
Inexture Solutions
 
PPTX
Architecting Single Page Applications
Guy Nesher
 
KEY
How to do Scalable UI-Heavy Development at a Breakneck Pace
SV Ruby on Rails Meetup
 
PDF
Cti av3
Jeffrey Hammond
 
Trends in front end engineering_handouts
AE - architects for business and ict
 
The Characteristics of a Successful SPA
Gil Fink
 
Single Page Applications: Your Browser is the OS!
Jeremy Likness
 
Eureko frameworks
Görkem Sazara
 
Build Modern Web Apps Using ASP.NET Web API and AngularJS
Taiseer Joudeh
 
Single page applications
Prafful Garg
 
Components of a Generic Web Application Architecture
MadonnaLamin1
 
Single Page Application
Isuru Madusanka
 
Types of Web Applications: A Complete Guide for Businesses
ScalaCode
 
Refactoring to a SPA
Marcello Teodori
 
Refactoring to a Single Page Application
Codemotion
 
Single page application and Framework
Chandrasekar G
 
Angular jS Introduction by Google
ASG
 
The Complete Beginner’s Guide to Web Application Development (1).pdf
ayushiqss
 
Unit 1 Part A.pptx bca subject with the ppt
prajwalbkulal
 
CC 2015 Single Page Applications for the ASPNET Developer
Allen Conway
 
Single Page Application (SPA): A Comprehensive Guide for Beginners
Inexture Solutions
 
Architecting Single Page Applications
Guy Nesher
 
How to do Scalable UI-Heavy Development at a Breakneck Pace
SV Ruby on Rails Meetup
 

More from Bojan Veljanovski (7)

PDF
CodeCamp 2018 - Architecting Systems with CQRS - Four Years Experience Report...
Bojan Veljanovski
 
PPTX
NoSQL document oriented data access for .net systems with postgresql and marten
Bojan Veljanovski
 
PPTX
Bojan Veljanovski - Modular Software Architecture and Design (Code Camp 2016)
Bojan Veljanovski
 
PPTX
Vertical Slices in .NET - Bojan Veljanovski, March 2016, MK.NET UG
Bojan Veljanovski
 
PPTX
Quick look at Web Components and Project Polymer - MKNET UG
Bojan Veljanovski
 
PPTX
Real-world software design practices when developing ASP.NET web systems by B...
Bojan Veljanovski
 
PPTX
AngularJS + NancyFx + MongoDB = The best trio for ultimate SPA by Bojan Velja...
Bojan Veljanovski
 
CodeCamp 2018 - Architecting Systems with CQRS - Four Years Experience Report...
Bojan Veljanovski
 
NoSQL document oriented data access for .net systems with postgresql and marten
Bojan Veljanovski
 
Bojan Veljanovski - Modular Software Architecture and Design (Code Camp 2016)
Bojan Veljanovski
 
Vertical Slices in .NET - Bojan Veljanovski, March 2016, MK.NET UG
Bojan Veljanovski
 
Quick look at Web Components and Project Polymer - MKNET UG
Bojan Veljanovski
 
Real-world software design practices when developing ASP.NET web systems by B...
Bojan Veljanovski
 
AngularJS + NancyFx + MongoDB = The best trio for ultimate SPA by Bojan Velja...
Bojan Veljanovski
 

Recently uploaded (20)

PDF
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
PDF
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
PPTX
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
PDF
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
PDF
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
PPTX
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
PDF
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
PPTX
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
AgileNetwork
 
PDF
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
The Future of Artificial Intelligence (AI)
Mukul
 
PDF
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
PDF
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
PPTX
Simple and concise overview about Quantum computing..pptx
mughal641
 
PDF
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
PDF
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
AgileNetwork
 
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
The Future of Artificial Intelligence (AI)
Mukul
 
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
Simple and concise overview about Quantum computing..pptx
mughal641
 
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 

DIGIT Noe 2016 - Overview of front end development today

  • 1. Overview of front-end development today Bojan Veljanovski (@bojanv91) Chief Technology Officer @ HASELT DIGIT Noe 2016
  • 2. Agenda • 1) What is front-end development? • 2) Traditional to Modern SPA approaches • 3) Choosing a side • 4) Showcase: GitHub.com • 5) Showcase: Azure Portal • Summary • Further Reading
  • 8. 1) Front-end development? • Code in • HTML • CSS • JavaScript • Run in • Web browser • Headless browser • WebView • Native runtime environment
  • 9. 1) Run in • Web browser • Chrome, IE, Firefox, Brave, Vivaldi running on an OS • Headless browser • Used for test automation, scraping • Techs: PhantomJS and others • WebView • Embedded in a native app with some access to native APIs • Techs: Apache Cordova, Electron • Native runtime environment • Native app interpreted at runtime with a access to native APIs • UIs are composed of native controls • Techs: NativeScript, ReactNative
  • 10. 1) What should you know? • HTML • CSS • DOM (Document Object Model) • JavaScript (e.g. ECMAScript6) • Web APIs (HTML5 and Browser APIs) • HTTP (Hypertext Transfer Protocol) • WebSocket (for full-duplex communication) • JSON (JavaScript Object Notation) • Web Content Accessibility Guidelines (WCAG) & Accessible Rich Internet Applications (ARIA)
  • 11. 2) Types of Browser apps • Static • presentation websites, news, blogs • e.g. http://sp.finki.ukim.mk/digit/ • Interactive • Line-of-Business apps, CRUD apps, CMS-based apps • e.g. http://GitHub.com • Highly-interactive (“Reactive”?) • e.g. advanced monitoring apps, real-time always- connected apps • Azure Portal, GMail UI stuff is closer to server UI stuff is closer to client
  • 12. 2) Evolution of an approach • Traditional • The server does most of the presentation related stuff • Modern SPAs (Single Page Applications) • The client does most of the presentation related stuff
  • 13. 2) Traditional? • Server-side rendered pages • Every request results with a new page • Feels static
  • 14. 2) Single Page Application? • Native-like experience • Rich and responsive browser application • All HTML/CSS/JS are loaded onto one page, on first visit • No “page refresh” on navigation or action • New data and content is pulled via AJAX and client- side rendered • Server becomes just a thin JSON data provider • UI interactions are handled in the browser
  • 15. 2) Characteristics of SPAs • Modular • Component-oriented • Event-driven • Reactive • Client-side rendering and navigation • In-browser databases (for offline work)
  • 16. 3) …but careful, the roads to SPA are bumpy • Code duplication on client and server will occur • Steep learning curve!!! • Strong JavaScript skills are a MUST • Security issues • Compatibility issues - SPA stacks depend on far too many 3-rd party libraries • Technology overhead - brand new “silver-bullet” library is released every day
  • 17. Choosing a side Closer to server vs. closer to client
  • 18. 5) Showcase: GitHub.com 1. When navigating to other views, does the browser always make page refreshes? 2. When performing actions on current page, does the browser always stay intact and does not make page refreshes? 3. Is it a traditional web application? 4. Is it a fully modern SPA? 5. Is it modular? Are some modules fully SPA themselves, and other plain old traditional web pages?
  • 19. 6) Showcase: Azure Portal • https://channel9.msdn.com/Blogs/Windows- Azure/Azure-Preview-portal
  • 20. Summary • Slice your apps in several cohesive modules. • Decide development approach per module, not per application. • There is no silver bullet. • When to go with SPA approach? • You are building highly interactive (reactive) web apps • You are building real-time web apps • You need offline support for your web apps • You are building hybrid mobile apps
  • 21. …and all boils down to: Choose the simplest tool with which you can get the job done, and do the simplest thing that could possibly work, but be super aware and well informed about what else is possible. Listen to feedback, improve and iterate continuously.
  • 23. Further Reading • Books • http://singlepageappbook.com • http://frontendhandbook.com • Techs • http://aurelia.io/ • https://cordova.apache.org • http://electron.atom.io • https://www.nativescript.org • https://facebook.github.io/react-native