SlideShare a Scribd company logo
JS Digest
by Oleksii Boiko,
Software Developer
January 2018
www.eliftech.com
● Introduction to GraphQL
● Turning Design Mockups Into Code With Deep Learning
● HTML 5.2
● Why one should [not] use async / await
● Is jQuery still relevant?
● 3 reasons to choose Vue over React in 2018
● Microbundle
● Webpack 4.0.0-alpha
● Google shuts down Chrome ‘apps’ section
● State of JS 2017
Agenda
www.eliftech.com
Introduction to GraphQL
www.eliftech.com
Anatomy of GraphQL
In a nutshell, GraphQL is a syntax that describes how to ask for data, and is generally used to
load data from a server to a client. GraphQL has three main characteristics:
▪ It lets the client specify exactly what data it needs.
▪ It makes it easier to aggregate data from multiple sources.
▪ It uses a type system to describe data.
For more details click here
www.eliftech.com
Turning Design Mockups Into Code With Deep Learning
Currently, the largest barrier to automating front-end development is computing power. However,
we can use current deep learning algorithms, along with synthesized training data, to start
exploring artificial front-end automation right now.
www.eliftech.com
In the post, a neural network is teached how to code a basic a HTML and CSS website based
on a picture of a design mockup. Here's a quick overview of the process:
1) Give a design image to the trained neural network
2) The neural network converts the image into HTML
markup
3) Rendered output
For more details click here
www.eliftech.com
HTML 5.2
▪ Support module JavaScript
▪ <dialog> element
▪ Multiple <main> elements
▪ Styles in the <body>
▪ In HTML 5.2, the only valid children
of a <p> element should be phrasing
content. This means that the following
types of elements should no longer be
nested within a paragraph.
▪ More details here
www.eliftech.com
HTML 5.2: <dialog> element
www.eliftech.com
Why one should [not] use async / await
+ Laconic and clean code
+ Checking the conditions
and performing asynchronous actions
+ Intermediate values
+ Errors stack trace
+ Debugging
- Still promises
- Bigger bundle size
- ES8, Node.js 7+
More info here
www.eliftech.com
Error handling
Promises
VS
async/await
www.eliftech.com
Is jQuery still relevant?
YES!
Was jQuery still in 2017 (and in 2018) relevant and more importantly, is it worth a newcomer learning the
library today?
The short answer: yes.
More info here
www.eliftech.com
3 reasons to choose Vue over React in 2018
1) You can focus on the HTML and CSS first.
2) Enter the program-mentality when it’s necessary. Add functionality after the HTML and
CSS are done.
3) Increase Development Speed. You don’t need the terminal.
Full article here.
www.eliftech.com
The zero-configuration bundler for tiny
modules, powered by Rollup.
Features:
● Bundles your library using nothing
but a package.json
● Support for ESnext & async/await
(via Bublé & Nodent)
● Supports multiple entry modules
(cli.js + index.js, etc)
● Creates multiple output formats for
each entry (CJS, UMD & ESM)
● Built-in Uglify compression &
gzipped bundle size tracking
GitHub link
Microbundle
www.eliftech.com
Webpack 4.0.0-alpha
Big features:
● webpack now supports these module types:
○ javascript/auto: (The default one in webpack 3) Javascript module with all module systems enabled: CommonJS,
AMD, ESM
○ javascript/esm: EcmaScript modules, all other module system are not available
○ json: JSON data, JSON data is passed through unchanged and isn't parsed
○ webassembly/experimental: WebAssembly modules (currently experimental)
● javascript/esm handles ESM more strict compared to javascript/auto:
○ Imported names need to exist on imported module
○ Non-ESM can only imported via default import, everything else (including namespace import) emit errors
● In .mjs modules
○ javascript/esm is used
○ imports need to have an extension. No extensions are tried.
● sideEffects: false is now supported in package.json
● Instead of a JSONP function a JSONP array is used -> async support
○ WIP: There is no way to move runtime to another chunk yet
● webpackInclude and webpackExclude are supported by the magic comment for import(). They allow to filter files when
using a dynamic expression.
● Resolving can now be configured with module.rules[].resolve. It's merged with the global configuration.
● Sone Plugin options are now validated
○ WIP: Better output, no process exit, stack trace, more plugins
www.eliftech.com
Webpack 4.0.0-alpha
Big Features:
● Multiple performance improvements, especially for faster incremental rebuilds
● allow to import JSON via ESM syntax
● add unused exports elimination for JSON modules
● many config options which support placeholders now also support a function
● entry defaults to ./src
● output.path defaults to ./dist
● add output.globalObject config option to allow to choose the global object reference in runtime exitCode
● timestamps for files are read from watcher when calling Watching.invalidate
● Use production defaults when omiting the mode option
● add this.hot flag to loader context when HMR is enabled
● Add detailed progress reporting to SourceMapDevToolPlugin
● WebAssembly modules can now import other modules (JS and WASM)
● Exports from WebAssembly modules are validated by ESM import
● You'll get a warning/error when trying to import a non-existing export from WASM
● Stats can display modules nested in concatenated modules
● UglifyJs now caches and parallizes by default
GitHub issue link.
www.eliftech.com
Google Removes Chrome Apps Section From the
Chrome Browser Web Store
By early 2018, Chrome Apps already installed in Google's browser will no longer function.
Chrome OS users, however, will still be able to access them for the foreseeable future. And
folks just using Chrome to surf the web will still be able to download extensions and
themes.
Full article here.
www.eliftech.com
State of JS 2017
www.eliftech.com
State of JS 2017: Front-End
www.eliftech.com
State of JS 2017: Back-End
www.eliftech.com
State of JS 2017: Testing
www.eliftech.com
State of JS 2017: Mobile frameworks
Details here.
www.eliftech.com
Thank you for attention!
Find us at eliftech.com
Have a question? Contact us:
info@eliftech.com

More Related Content

PDF
AD111 -- Harnessing the Power of Server-Side JavaScript and Other Advanced XP...
ddrschiw
 
PDF
ASP.NET MVC 3
Buu Nguyen
 
PPT
MSDN - ASP.NET MVC
Maarten Balliauw
 
PPTX
React js Demo Explanation
Rama Krishna Vankam
 
PPTX
Asp.net MVC training session
Hrichi Mohamed
 
PDF
'Architecture of modern frontend apps' by YURIY DOBRYANSKYY at OdessaJS'2020
OdessaJS Conf
 
PPTX
React js for beginners
Alessandro Valenti
 
PPTX
Internal workshop react-js-mruiz
Miguel Ruiz Rodriguez
 
AD111 -- Harnessing the Power of Server-Side JavaScript and Other Advanced XP...
ddrschiw
 
ASP.NET MVC 3
Buu Nguyen
 
MSDN - ASP.NET MVC
Maarten Balliauw
 
React js Demo Explanation
Rama Krishna Vankam
 
Asp.net MVC training session
Hrichi Mohamed
 
'Architecture of modern frontend apps' by YURIY DOBRYANSKYY at OdessaJS'2020
OdessaJS Conf
 
React js for beginners
Alessandro Valenti
 
Internal workshop react-js-mruiz
Miguel Ruiz Rodriguez
 

What's hot (20)

PPT
ColdFusion framework comparison
VIkas Patel
 
PPTX
Jsp
JayaKamal
 
PPTX
React JS: A Secret Preview
valuebound
 
PDF
JSFest 2019: Technology agnostic microservices at SPA frontend
Vlad Fedosov
 
PDF
The complete-beginners-guide-to-react dyrr
AfreenK
 
PPTX
JS Fest 2019/Autumn. Влад Федосов. Technology agnostic microservices at SPA f...
JSFestUA
 
PPTX
MVC - Introduction
Sudhakar Sharma
 
PPTX
Introduction to react_js
MicroPyramid .
 
PPT
ASP .net MVC
Divya Sharma
 
PPTX
React and Flux life cycle with JSX, React Router and Jest Unit Testing
Eswara Kumar Palakollu
 
PPT
JAVA SCRIPT
Go4Guru
 
PDF
Angular - Chapter 1 - Introduction
WebStackAcademy
 
PPTX
learn what React JS is & why we should use React JS .
paradisetechsoftsolutions
 
PPTX
Reactjs workshop
Ahmed rebai
 
PPTX
React workshop
Imran Sayed
 
PDF
Feature Development with jQuery
Michael Edwards
 
PPT
Ajax & ASP.NET 2
Talal Alsubaie
 
PPTX
ASP .NET MVC
eldorina
 
PPTX
Introduction to react js
Aeshan Wijetunge
 
PPTX
React js
Nikhil Karkra
 
ColdFusion framework comparison
VIkas Patel
 
React JS: A Secret Preview
valuebound
 
JSFest 2019: Technology agnostic microservices at SPA frontend
Vlad Fedosov
 
The complete-beginners-guide-to-react dyrr
AfreenK
 
JS Fest 2019/Autumn. Влад Федосов. Technology agnostic microservices at SPA f...
JSFestUA
 
MVC - Introduction
Sudhakar Sharma
 
Introduction to react_js
MicroPyramid .
 
ASP .net MVC
Divya Sharma
 
React and Flux life cycle with JSX, React Router and Jest Unit Testing
Eswara Kumar Palakollu
 
JAVA SCRIPT
Go4Guru
 
Angular - Chapter 1 - Introduction
WebStackAcademy
 
learn what React JS is & why we should use React JS .
paradisetechsoftsolutions
 
Reactjs workshop
Ahmed rebai
 
React workshop
Imran Sayed
 
Feature Development with jQuery
Michael Edwards
 
Ajax & ASP.NET 2
Talal Alsubaie
 
ASP .NET MVC
eldorina
 
Introduction to react js
Aeshan Wijetunge
 
React js
Nikhil Karkra
 
Ad

Similar to JS digest. January 2018 (20)

PDF
JS digest. May 2017
ElifTech
 
PPTX
JS digest. July 2017
ElifTech
 
PPTX
JS digest. October 2017
ElifTech
 
PPTX
JS digest. November 2017
ElifTech
 
PPTX
JS digest. Mid-Summer 2017
ElifTech
 
PDF
DownTheRabbitHole.js – How to Stay Sane in an Insane Ecosystem
FITC
 
PPTX
JS digest. April 2018
ElifTech
 
ODP
Javascript Update May 2013
RameshNair6
 
PDF
JavaScript: Past, Present, Future
Jungryul Choi
 
PPTX
JS digest, March 2017
ElifTech
 
PDF
HTML, CSS & Javascript Architecture (extended version) - Jan Kraus
Women in Technology Poland
 
PDF
Full Stack Developer Course | Infinite Graphix Technologies
Infinite Graphix Technologies
 
PDF
DownTheRabbitHole.js – How to Stay Sane in an Insane Ecosystem
FITC
 
PDF
More efficient, usable web
Chris Mills
 
PPTX
Web components and Package managers
btopro
 
PDF
Next.js with drupal, the good parts
Taller Negócio Digitais
 
PDF
Why and How You Should Move from PHP to Node.js
Brainhub
 
PPTX
JS digest. Decemebr 2017
ElifTech
 
PPTX
Progressive Web Apps and React
Mike Melusky
 
PPTX
SenchaCon 2016: The Modern Toolchain - Ross Gerbasi
Sencha
 
JS digest. May 2017
ElifTech
 
JS digest. July 2017
ElifTech
 
JS digest. October 2017
ElifTech
 
JS digest. November 2017
ElifTech
 
JS digest. Mid-Summer 2017
ElifTech
 
DownTheRabbitHole.js – How to Stay Sane in an Insane Ecosystem
FITC
 
JS digest. April 2018
ElifTech
 
Javascript Update May 2013
RameshNair6
 
JavaScript: Past, Present, Future
Jungryul Choi
 
JS digest, March 2017
ElifTech
 
HTML, CSS & Javascript Architecture (extended version) - Jan Kraus
Women in Technology Poland
 
Full Stack Developer Course | Infinite Graphix Technologies
Infinite Graphix Technologies
 
DownTheRabbitHole.js – How to Stay Sane in an Insane Ecosystem
FITC
 
More efficient, usable web
Chris Mills
 
Web components and Package managers
btopro
 
Next.js with drupal, the good parts
Taller Negócio Digitais
 
Why and How You Should Move from PHP to Node.js
Brainhub
 
JS digest. Decemebr 2017
ElifTech
 
Progressive Web Apps and React
Mike Melusky
 
SenchaCon 2016: The Modern Toolchain - Ross Gerbasi
Sencha
 
Ad

More from ElifTech (20)

PPTX
Go Concurrency Patterns
ElifTech
 
PPTX
Go Concurrency Basics
ElifTech
 
PPTX
Domain Logic Patterns
ElifTech
 
PPTX
Dive into .Net Core framework
ElifTech
 
PPTX
VR digest. August 2018
ElifTech
 
PPTX
JS digest. July 2018
ElifTech
 
PPTX
VR digest. July 2018
ElifTech
 
PPTX
IoT digest. July 2018
ElifTech
 
PPTX
VR digest. June 2018
ElifTech
 
PPTX
IoT digest. June 2018
ElifTech
 
PPTX
IoT digest. May 2018
ElifTech
 
PPTX
Object Detection with Tensorflow
ElifTech
 
PPTX
VR digest. May 2018
ElifTech
 
PPTX
Polymer: brief introduction
ElifTech
 
PPTX
VR digest. April, 2018
ElifTech
 
PPTX
IoT digest. April 2018
ElifTech
 
PPTX
IoT digest. March 2018
ElifTech
 
PPTX
VR digest. March, 2018
ElifTech
 
PPTX
VR digest. February, 2018
ElifTech
 
PPTX
IoT digest. February 2018
ElifTech
 
Go Concurrency Patterns
ElifTech
 
Go Concurrency Basics
ElifTech
 
Domain Logic Patterns
ElifTech
 
Dive into .Net Core framework
ElifTech
 
VR digest. August 2018
ElifTech
 
JS digest. July 2018
ElifTech
 
VR digest. July 2018
ElifTech
 
IoT digest. July 2018
ElifTech
 
VR digest. June 2018
ElifTech
 
IoT digest. June 2018
ElifTech
 
IoT digest. May 2018
ElifTech
 
Object Detection with Tensorflow
ElifTech
 
VR digest. May 2018
ElifTech
 
Polymer: brief introduction
ElifTech
 
VR digest. April, 2018
ElifTech
 
IoT digest. April 2018
ElifTech
 
IoT digest. March 2018
ElifTech
 
VR digest. March, 2018
ElifTech
 
VR digest. February, 2018
ElifTech
 
IoT digest. February 2018
ElifTech
 

Recently uploaded (20)

PDF
Exploring AI Agents in Process Industries
amoreira6
 
PDF
vAdobe Premiere Pro 2025 (v25.2.3.004) Crack Pre-Activated Latest
imang66g
 
PPTX
The-Dawn-of-AI-Reshaping-Our-World.pptxx
parthbhanushali307
 
PPTX
GALILEO CRS SYSTEM | GALILEO TRAVEL SOFTWARE
philipnathen82
 
PPTX
Presentation about Database and Database Administrator
abhishekchauhan86963
 
PPTX
slidesgo-unlocking-the-code-the-dynamic-dance-of-variables-and-constants-2024...
kr2589474
 
PDF
New Download FL Studio Crack Full Version [Latest 2025]
imang66g
 
PDF
49784907924775488180_LRN2959_Data_Pump_23ai.pdf
Abilash868456
 
PDF
lesson-2-rules-of-netiquette.pdf.bshhsjdj
jasmenrojas249
 
PPT
Activate_Methodology_Summary presentatio
annapureddyn
 
PDF
Appium Automation Testing Tutorial PDF: Learn Mobile Testing in 7 Days
jamescantor38
 
PPTX
ConcordeApp: Engineering Global Impact & Unlocking Billions in Event ROI with AI
chastechaste14
 
PPTX
Can You Build Dashboards Using Open Source Visualization Tool.pptx
Varsha Nayak
 
PPTX
Odoo Integration Services by Candidroot Solutions
CandidRoot Solutions Private Limited
 
PDF
Balancing Resource Capacity and Workloads with OnePlan – Avoid Overloading Te...
OnePlan Solutions
 
PDF
advancepresentationskillshdhdhhdhdhdhhfhf
jasmenrojas249
 
PPTX
Maximizing Revenue with Marketo Measure: A Deep Dive into Multi-Touch Attribu...
bbedford2
 
PPTX
Presentation about variables and constant.pptx
safalsingh810
 
PDF
Adobe Illustrator Crack Full Download (Latest Version 2025) Pre-Activated
imang66g
 
PDF
Applitools Platform Pulse: What's New and What's Coming - July 2025
Applitools
 
Exploring AI Agents in Process Industries
amoreira6
 
vAdobe Premiere Pro 2025 (v25.2.3.004) Crack Pre-Activated Latest
imang66g
 
The-Dawn-of-AI-Reshaping-Our-World.pptxx
parthbhanushali307
 
GALILEO CRS SYSTEM | GALILEO TRAVEL SOFTWARE
philipnathen82
 
Presentation about Database and Database Administrator
abhishekchauhan86963
 
slidesgo-unlocking-the-code-the-dynamic-dance-of-variables-and-constants-2024...
kr2589474
 
New Download FL Studio Crack Full Version [Latest 2025]
imang66g
 
49784907924775488180_LRN2959_Data_Pump_23ai.pdf
Abilash868456
 
lesson-2-rules-of-netiquette.pdf.bshhsjdj
jasmenrojas249
 
Activate_Methodology_Summary presentatio
annapureddyn
 
Appium Automation Testing Tutorial PDF: Learn Mobile Testing in 7 Days
jamescantor38
 
ConcordeApp: Engineering Global Impact & Unlocking Billions in Event ROI with AI
chastechaste14
 
Can You Build Dashboards Using Open Source Visualization Tool.pptx
Varsha Nayak
 
Odoo Integration Services by Candidroot Solutions
CandidRoot Solutions Private Limited
 
Balancing Resource Capacity and Workloads with OnePlan – Avoid Overloading Te...
OnePlan Solutions
 
advancepresentationskillshdhdhhdhdhdhhfhf
jasmenrojas249
 
Maximizing Revenue with Marketo Measure: A Deep Dive into Multi-Touch Attribu...
bbedford2
 
Presentation about variables and constant.pptx
safalsingh810
 
Adobe Illustrator Crack Full Download (Latest Version 2025) Pre-Activated
imang66g
 
Applitools Platform Pulse: What's New and What's Coming - July 2025
Applitools
 

JS digest. January 2018

  • 1. JS Digest by Oleksii Boiko, Software Developer January 2018
  • 2. www.eliftech.com ● Introduction to GraphQL ● Turning Design Mockups Into Code With Deep Learning ● HTML 5.2 ● Why one should [not] use async / await ● Is jQuery still relevant? ● 3 reasons to choose Vue over React in 2018 ● Microbundle ● Webpack 4.0.0-alpha ● Google shuts down Chrome ‘apps’ section ● State of JS 2017 Agenda
  • 4. www.eliftech.com Anatomy of GraphQL In a nutshell, GraphQL is a syntax that describes how to ask for data, and is generally used to load data from a server to a client. GraphQL has three main characteristics: ▪ It lets the client specify exactly what data it needs. ▪ It makes it easier to aggregate data from multiple sources. ▪ It uses a type system to describe data. For more details click here
  • 5. www.eliftech.com Turning Design Mockups Into Code With Deep Learning Currently, the largest barrier to automating front-end development is computing power. However, we can use current deep learning algorithms, along with synthesized training data, to start exploring artificial front-end automation right now.
  • 6. www.eliftech.com In the post, a neural network is teached how to code a basic a HTML and CSS website based on a picture of a design mockup. Here's a quick overview of the process: 1) Give a design image to the trained neural network 2) The neural network converts the image into HTML markup 3) Rendered output For more details click here
  • 7. www.eliftech.com HTML 5.2 ▪ Support module JavaScript ▪ <dialog> element ▪ Multiple <main> elements ▪ Styles in the <body> ▪ In HTML 5.2, the only valid children of a <p> element should be phrasing content. This means that the following types of elements should no longer be nested within a paragraph. ▪ More details here
  • 9. www.eliftech.com Why one should [not] use async / await + Laconic and clean code + Checking the conditions and performing asynchronous actions + Intermediate values + Errors stack trace + Debugging - Still promises - Bigger bundle size - ES8, Node.js 7+ More info here
  • 11. www.eliftech.com Is jQuery still relevant? YES! Was jQuery still in 2017 (and in 2018) relevant and more importantly, is it worth a newcomer learning the library today? The short answer: yes. More info here
  • 12. www.eliftech.com 3 reasons to choose Vue over React in 2018 1) You can focus on the HTML and CSS first. 2) Enter the program-mentality when it’s necessary. Add functionality after the HTML and CSS are done. 3) Increase Development Speed. You don’t need the terminal. Full article here.
  • 13. www.eliftech.com The zero-configuration bundler for tiny modules, powered by Rollup. Features: ● Bundles your library using nothing but a package.json ● Support for ESnext & async/await (via Bublé & Nodent) ● Supports multiple entry modules (cli.js + index.js, etc) ● Creates multiple output formats for each entry (CJS, UMD & ESM) ● Built-in Uglify compression & gzipped bundle size tracking GitHub link Microbundle
  • 14. www.eliftech.com Webpack 4.0.0-alpha Big features: ● webpack now supports these module types: ○ javascript/auto: (The default one in webpack 3) Javascript module with all module systems enabled: CommonJS, AMD, ESM ○ javascript/esm: EcmaScript modules, all other module system are not available ○ json: JSON data, JSON data is passed through unchanged and isn't parsed ○ webassembly/experimental: WebAssembly modules (currently experimental) ● javascript/esm handles ESM more strict compared to javascript/auto: ○ Imported names need to exist on imported module ○ Non-ESM can only imported via default import, everything else (including namespace import) emit errors ● In .mjs modules ○ javascript/esm is used ○ imports need to have an extension. No extensions are tried. ● sideEffects: false is now supported in package.json ● Instead of a JSONP function a JSONP array is used -> async support ○ WIP: There is no way to move runtime to another chunk yet ● webpackInclude and webpackExclude are supported by the magic comment for import(). They allow to filter files when using a dynamic expression. ● Resolving can now be configured with module.rules[].resolve. It's merged with the global configuration. ● Sone Plugin options are now validated ○ WIP: Better output, no process exit, stack trace, more plugins
  • 15. www.eliftech.com Webpack 4.0.0-alpha Big Features: ● Multiple performance improvements, especially for faster incremental rebuilds ● allow to import JSON via ESM syntax ● add unused exports elimination for JSON modules ● many config options which support placeholders now also support a function ● entry defaults to ./src ● output.path defaults to ./dist ● add output.globalObject config option to allow to choose the global object reference in runtime exitCode ● timestamps for files are read from watcher when calling Watching.invalidate ● Use production defaults when omiting the mode option ● add this.hot flag to loader context when HMR is enabled ● Add detailed progress reporting to SourceMapDevToolPlugin ● WebAssembly modules can now import other modules (JS and WASM) ● Exports from WebAssembly modules are validated by ESM import ● You'll get a warning/error when trying to import a non-existing export from WASM ● Stats can display modules nested in concatenated modules ● UglifyJs now caches and parallizes by default GitHub issue link.
  • 16. www.eliftech.com Google Removes Chrome Apps Section From the Chrome Browser Web Store By early 2018, Chrome Apps already installed in Google's browser will no longer function. Chrome OS users, however, will still be able to access them for the foreseeable future. And folks just using Chrome to surf the web will still be able to download extensions and themes. Full article here.
  • 18. www.eliftech.com State of JS 2017: Front-End
  • 21. www.eliftech.com State of JS 2017: Mobile frameworks Details here.
  • 22. www.eliftech.com Thank you for attention! Find us at eliftech.com Have a question? Contact us: [email protected]