SlideShare a Scribd company logo
Upgrading JavaScript to ES6 and using
TypeScript as a shortcut
Chris Heilmann @codepo8, NDC, Oslo, June 2016
Of innovation and impatience
Chris Heilmann @codepo8, Future Decoded, London, Nov 2015
CHRIS HEILMANN
@CODEPO8
LET’S TALK
JAVASCRIPT…
• Old issues
• The learning process
• The tooling issue
• The library/framework issue
• ES6 and its promises
• ES6 and its realities
• Typescript
• The ChakraCore thing
OLD ISSUES OF JAVASCRIPT
JAVASCRIPT CLIENT-
SIDE HAS ISSUES…
• It is not fault-tolerant
• Many different parties mess with it
• You don’t know the environment it
runs in
• It has always been part of the
browser and dependent on its
release and upgrade cycle
JAVASCRIPT THE
LANGUAGE HAS
ISSUES
(OPPORTUNITIES)…
• typeof NaN === number
• No type safety
• No classes
• “it feels rushed”
ENGINE TROUBLE:
JAVASCRIPT IS
HUNGRY
HTTPS:// .WTF
THE JAVASCRIPT LEARNING PROCESS
THE JAVASCRIPT
LEARNING PROCESS
HAS ALWAYS BEEN
INTERESTING…
• Use view source to see what
others are doing…
• Copy and paste the bits that
look like they are responsible
for some things
• Change some numbers around
• Run into errors
• Blame Internet Explorer
THIS, OF COURSE,
WAS WRONG AND
WE GOT MORE
PROFESSIONAL…
• Search for a solution on
Stackoverflow
• Copy and paste the bits that
look like they are responsible
for some things
• Change some numbers around
• Run into errors
• Blame JavaScript for being
terrible and not a real language
• For good measure, blame
Internet Explorer.
SHORTCUTS…
WITH ES6 WE HAVE
A CLEAN NEW
SLATE…
(AND YOU CAN’T BLAME IE ANY MORE)
SEE THE BABEL.JS DOCS AND TRY IT IN THE BROWSER…
https://babeljs.io/docs/learn-es2015/
350 BULLET POINTS
https://ponyfoo.com/articles/es6
READ THE
EXCELLENT BOOK
EXPLORING ES6
FOR FREE
(OR BUY IT, AXEL DESERVES SUPPORT)
http://exploringjs.com/es6/
THE TOOLING ISSUE…
JAVASCRIPT TOOLING FEELS
RUDIMENTARY
AND IT DIFFERS FROM
BROWSER TO BROWSER…
THE LIBRARY/FRAMEWORK ISSUE…
JAVASCRIPT ABUSE IS
RAMPANT…
A simple way to detect how old
a part of our massive site is
checking which version of
jQuery was used in that part
of it. It’s like rings in a tree trunk.
https://www.flickr.com/photos/91183364@N08/13916636762
“
PAUL LEWIS
@AEROTWIST
Upgrading JavaScript to ES6 and using TypeScript as a shortcut
Upgrading JavaScript to ES6 and using TypeScript as a shortcut
Upgrading JavaScript to ES6 and using TypeScript as a shortcut
FRAMEWORKS
ARE GREAT…
• They are fun to use - achieve a
lot very quickly
• You build complex apps in a
matter of minutes
• They work around pesky
browser bugs
• They are good on your CV
…BUT THEY ALSO
COME WITH
DEVELOPER COST
• Learning new frameworks
• Re-learning new frameworks
• Debugging frameworks
• Setting up developer
environments
• Cutting down on possible hires/
adding to onboarding time
AND WE SHOULD
CONSIDER THE
EFFECTS WE HAVE
ON OUR END
USERS…
• Time to load / execute
• Bandwidth used
• CPU usage
• Frame rate (60 fps)
• Memory usage
• Battery hunger
WE’RE GOING
FULL SPEED ON
INNOVATION…
• Componentised Web
• Extensible Web Manifesto
• WebGL
• WebAssembly/ASM.js
• PostCSS
• Progressive Apps
• We work around browser issues
• We make web standards of
tomorrow work today.
• We build solutions to clean up
others and make them smaller
• And each of those comes with
a “don’t use in production”
label.
BUILDING LIBRARIES
AND FRAMEWORKS
THAT MAGICALLY
FIX THINGS HAS
BECOME
FASHIONABLE…
ES6 AND ITS PROMISES…
1997 2015
1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015
1997
ECMAScript1
1998
ECMAScript2
1999
ECMAScript3
2005 - 2007
ECMAScript4 - Abandoned
2009
ECMAScript5
2015
ECMAScript6
JAVASCRIPT EVOLVES…
1997 2015
1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015
1997
ECMAScript1
1998
ECMAScript2
1999
ECMAScript3
2005 - 2007
ECMAScript4 - Abandoned
2009
ECMAScript5
2015
ECMAScript6
…NOW WE HAVE ES6!
• 5+ years since ES5 ratification
• Significant changes in 15+ years
• Backwards compatible
• Ratified June 2015
http://www.ecma-international.org/publications/standards/Ecma-262.htm
• Arrow functions as a short-hand version of an
anonymous function.
• Block-level scope using let instead of var makes
variables scoped to a block (if, for, while, etc.)
• Classes to encapsulate and extend code.
• Constants using the const keyword.
• Default parameters for functions like foo(bar = 3, baz =
2)
• Destructuring to assign values from arrays or objects
into variables.
• Generators that create iterators using function* and
the yield keyword.
• Map, a Dictionary type object that can be used to store
key/value pairs. and Set as a collection object to store
a list of data values.
• Modules as a way of organizing and loading code.
• Promises for async operations avoiding callback hell
• Rest parameters instead of using arguments to access
functions arguments.
• Template Strings to build up string values including
multi-line strings.
ES6 COMES WITH SO
MUCH GOODNESS,
TECHNICALLY IT HAS
TO BE FATTENING…
Library Builders
map, set & weakmap
__proto__
Proxies
Symbols
Sub7classable built7ins
Scalable Apps
let, const & block7
scoped bindings
Classes
Promises
Iterators
Generators
Typed arrays
Modules
Syntactic Sugar
Arrow functions
Enhanced object literals
Template strings
Destructuring
Rest, Spread, Default
String, Math, Number,
Object, RegExp APIs
ALL OF THESE PARTS HAVE DIFFERENT AUDIENCES
SUPPORT IS ENCOURAGING (EDGE, FIREFOX, CHROME, SAFARI (ON 9))
http://kangax.github.io/compat-table/es6/
ES6 AND ITS REALITIES…
THE PROBLEM: FOR
NON-SUPPORTING
ENGINES, ES6
FEATURES ARE
SYNTAX ERRORS…
THE SOLUTION: TRANSPILING INTO ES5…
https://babeljs.io
• Converts ES6 to older versions on the server or the client
• In use by Facebook and many others
• Used in editors and tool chains
TRANSPILED CODE…
THE VICIOUS
INNOVATION CYCLE…
https://github.com/samccone/The-cost-of-transpiling-es2015-in-2016
PICK YOUR TRANSPIRATION TOOLCHAIN…
✘ Extra step between writing code
and running it in the browser.
✘ We don’t run or debug the code
we write.
✘ We hope the transpiler creates
efficient code
✘ We create a lot of code
✘ Browsers that support ES6 will
never get any.
THE PROBLEMS WITH
TRANSPILING:
TYPESCRIPT
TypeScript http://typescriptlang.org/
THE NEXT ES* NOW,
WITHOUT THE
TOOLCHAIN
OVERHEAD…
• Works in the browser, creates
JavaScript
• Class based, type safe
• Editor/tooling support
• Used to write large frameworks and
libraries (Dojo, Angular)
• Used heavily in Microsoft
THE CHAKRACORE THING
NEW BROWSER, NEW JS ENGINE
SPEED COMPARISONS…
SURPRISES HAPPEN…
CHAKRACORE VS CHAKRA
HTTPS:// .WTF
NODE USING CHAKRACORE
https://blogs.windows.com/msedgedev/2016/01/19/nodejs-chakracore-mainline/
NODE USING CHAKRACORE
https://blogs.windows.com/msedgedev/2016/01/19/nodejs-chakracore-mainline/
NODE USING CHAKRACORE
https://blogs.windows.com/msedgedev/2016/01/19/nodejs-chakracore-mainline/
https://github.com/Microsoft/ChakraCore
COME AND PLAY
🐝 JavaScript is now ES6
🐝 JavaScript moved beyond the
browser
🐝 We have a tooling problem - now
we have too many options
🐝 JavaScript needs to cater for a lot
of different developer needs
🐝 Help the language by picking
what makes you effective and
doesn’t hurt your users.
🐝 Help improve the tools that are
being built right now!
IN SUMMARY…
THANKS!
CHRIS HEILMANN
@CODEPO8
CHRISTIANHEILMANN.COM
Upgrading JavaScript to ES6 and using TypeScript as a shortcut

More Related Content

What's hot (20)

PDF
Firefox OS - HTML5 for a truly world-wide-web
Christian Heilmann
 
PDF
Let’s learn how to use JavaScript responsibly and stay up-to-date.
Christian Heilmann
 
PDF
Moore vs. May - everything is faster and better: we can fix that
Christian Heilmann
 
PDF
The State of the Web - Helsinki meetup
Christian Heilmann
 
PDF
Erase and Rewind - Open Web Camp 2015
Christian Heilmann
 
PDF
A New Hope – the web strikes back
Christian Heilmann
 
PDF
Old and new perils of open source - Great Wide Open keynote
Christian Heilmann
 
PDF
The ES6 Conundrum - All Things Open 2015
Christian Heilmann
 
PDF
Turning a community into evangelism helpers - Devrelconf 2016
Christian Heilmann
 
PDF
Turning huge ships - Open Source and Microsoft
Christian Heilmann
 
PPTX
Advancing JavaScript without breaking the web - MunichJS
Christian Heilmann
 
PDF
All the small things… - Awwwards 2016
Christian Heilmann
 
PDF
Innovating the other web - #wrocsharp keynote
Christian Heilmann
 
PDF
Progressive Web Apps – the return of the web?
Christian Heilmann
 
PDF
The image problem of the web and how to solve it…
Christian Heilmann
 
PDF
Leveling up your JavaScipt - DrupalJam 2017
Christian Heilmann
 
PDF
Mind the Gap - State of the Browser 2015
Christian Heilmann
 
PDF
Progressive Web Apps – the return of the web? Goto Berlin 2016
Christian Heilmann
 
PDF
The Progressive Web and its New Challenges - Confoo Montréal 2017
Christian Heilmann
 
Firefox OS - HTML5 for a truly world-wide-web
Christian Heilmann
 
Let’s learn how to use JavaScript responsibly and stay up-to-date.
Christian Heilmann
 
Moore vs. May - everything is faster and better: we can fix that
Christian Heilmann
 
The State of the Web - Helsinki meetup
Christian Heilmann
 
Erase and Rewind - Open Web Camp 2015
Christian Heilmann
 
A New Hope – the web strikes back
Christian Heilmann
 
Old and new perils of open source - Great Wide Open keynote
Christian Heilmann
 
The ES6 Conundrum - All Things Open 2015
Christian Heilmann
 
Turning a community into evangelism helpers - Devrelconf 2016
Christian Heilmann
 
Turning huge ships - Open Source and Microsoft
Christian Heilmann
 
Advancing JavaScript without breaking the web - MunichJS
Christian Heilmann
 
All the small things… - Awwwards 2016
Christian Heilmann
 
Innovating the other web - #wrocsharp keynote
Christian Heilmann
 
Progressive Web Apps – the return of the web?
Christian Heilmann
 
The image problem of the web and how to solve it…
Christian Heilmann
 
Leveling up your JavaScipt - DrupalJam 2017
Christian Heilmann
 
Mind the Gap - State of the Browser 2015
Christian Heilmann
 
Progressive Web Apps – the return of the web? Goto Berlin 2016
Christian Heilmann
 
The Progressive Web and its New Challenges - Confoo Montréal 2017
Christian Heilmann
 

Viewers also liked (20)

PDF
Typescript for the programmers who like javascript
Andrei Sebastian Cîmpean
 
PPTX
TypeScript DevSum 2013
Michael Herkommer
 
PDF
Typescript: enjoying large scale browser development
Joost de Vries
 
PPTX
TypeScript
Fabian Vilers
 
PPTX
Double page spread stages powerpoint
kittylantos
 
PDF
IJETAE_0113_25
Ammar Motorwala
 
PPTX
Building Apps with MySpace SDKs
MySpaceDevTeam
 
PDF
Science 150221121154-conversion-gate01
jenmic
 
PPT
DADS' POWER POINT PRESENTATION
George Roberson
 
PDF
Commercial Edge - 2016
Sebastian Denby
 
PPTX
02 ARIAS JHONATAN POWER POINT
JHONATANARIASRIOS
 
PPT
小靈魂與太陽
佳佳 莊
 
DOC
Janine hofmeyr cv_2016
Janine Hofmeyr
 
DOC
Curriculum+Vitae+Petra+Hasper+6-1
Petra Hasper
 
PPTX
Building Angular 2.0 applications with TypeScript
MSDEVMTL
 
PPTX
Typescript - a JS superset
Tyrone Allen
 
PDF
Getting Started with TypeScript
Gil Fink
 
PPTX
Typescript in 30mins
Udaya Kumar
 
PDF
Microsoft und die Open Source Community - Leaving the death star behind
Christian Heilmann
 
PPSX
Современные представления о медицинской реабилитации. Международная классифик...
allnurses
 
Typescript for the programmers who like javascript
Andrei Sebastian Cîmpean
 
TypeScript DevSum 2013
Michael Herkommer
 
Typescript: enjoying large scale browser development
Joost de Vries
 
TypeScript
Fabian Vilers
 
Double page spread stages powerpoint
kittylantos
 
IJETAE_0113_25
Ammar Motorwala
 
Building Apps with MySpace SDKs
MySpaceDevTeam
 
Science 150221121154-conversion-gate01
jenmic
 
DADS' POWER POINT PRESENTATION
George Roberson
 
Commercial Edge - 2016
Sebastian Denby
 
02 ARIAS JHONATAN POWER POINT
JHONATANARIASRIOS
 
小靈魂與太陽
佳佳 莊
 
Janine hofmeyr cv_2016
Janine Hofmeyr
 
Curriculum+Vitae+Petra+Hasper+6-1
Petra Hasper
 
Building Angular 2.0 applications with TypeScript
MSDEVMTL
 
Typescript - a JS superset
Tyrone Allen
 
Getting Started with TypeScript
Gil Fink
 
Typescript in 30mins
Udaya Kumar
 
Microsoft und die Open Source Community - Leaving the death star behind
Christian Heilmann
 
Современные представления о медицинской реабилитации. Международная классифик...
allnurses
 
Ad

Similar to Upgrading JavaScript to ES6 and using TypeScript as a shortcut (20)

PDF
ES2015 / ES6: Basics of modern Javascript
Wojciech Dzikowski
 
PPTX
Javantura v3 - ES6 – Future Is Now – Nenad Pečanac
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
 
PPTX
ES6 - JavaCro 2016
Nenad Pecanac
 
PDF
A call to JS Developers - Let’s stop trying to impress each other and start b...
Christian Heilmann
 
PDF
The Present and Future of JavaScript: ES2015 and Beyond
Nizar Khalife
 
PDF
ES6, A Look Into Your Future
jasonsich
 
PPTX
Using JavaScript ES2015 (ES6), ES2016, ES2017 in production
Anže Žnidaršič
 
PDF
ECMAScript: past, present and future
Kseniya Redunova
 
PDF
Progressive transpilation and the road to ES2015 in production
Jacques Favreau
 
PPTX
Intro to ES6 and why should you bother !
Gaurav Behere
 
PDF
2017-web-development-readthedocs-io-en-latest.pdf
SumanDhali4
 
PDF
Quo vadis, JavaScript? Devday.pl keynote
Christian Heilmann
 
PDF
Choosing Javascript Libraries to Adopt for Development
Edward Apostol
 
PDF
What's New in ES6 for Web Devs
Rami Sayar
 
PDF
Ecma6 in the wild
Codecamp Romania
 
PDF
The Future is Here: ECMAScript 6 in the Wild
Adrian-Tudor Panescu
 
PDF
Ecma6 in the wild
Codecamp Romania
 
PPTX
JS awesomeness or how will ES6 help me build better apps ?
Пламен Стоев
 
PDF
Shibuya.js Lightning Talks
jeresig
 
PDF
Responsive, adaptive and responsible - keynote at NebraskaJS
Christian Heilmann
 
ES2015 / ES6: Basics of modern Javascript
Wojciech Dzikowski
 
Javantura v3 - ES6 – Future Is Now – Nenad Pečanac
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
 
ES6 - JavaCro 2016
Nenad Pecanac
 
A call to JS Developers - Let’s stop trying to impress each other and start b...
Christian Heilmann
 
The Present and Future of JavaScript: ES2015 and Beyond
Nizar Khalife
 
ES6, A Look Into Your Future
jasonsich
 
Using JavaScript ES2015 (ES6), ES2016, ES2017 in production
Anže Žnidaršič
 
ECMAScript: past, present and future
Kseniya Redunova
 
Progressive transpilation and the road to ES2015 in production
Jacques Favreau
 
Intro to ES6 and why should you bother !
Gaurav Behere
 
2017-web-development-readthedocs-io-en-latest.pdf
SumanDhali4
 
Quo vadis, JavaScript? Devday.pl keynote
Christian Heilmann
 
Choosing Javascript Libraries to Adopt for Development
Edward Apostol
 
What's New in ES6 for Web Devs
Rami Sayar
 
Ecma6 in the wild
Codecamp Romania
 
The Future is Here: ECMAScript 6 in the Wild
Adrian-Tudor Panescu
 
Ecma6 in the wild
Codecamp Romania
 
JS awesomeness or how will ES6 help me build better apps ?
Пламен Стоев
 
Shibuya.js Lightning Talks
jeresig
 
Responsive, adaptive and responsible - keynote at NebraskaJS
Christian Heilmann
 
Ad

More from Christian Heilmann (20)

PPTX
Develop, Debug, Learn? - Dotjs2019
Christian Heilmann
 
PDF
Hinting at a better web
Christian Heilmann
 
PDF
Taking the "vile" out of privilege
Christian Heilmann
 
PDF
Seven ways to be a happier JavaScript developer - NDC Oslo
Christian Heilmann
 
PDF
Artificial intelligence for humans… #AIDC2018 keynote
Christian Heilmann
 
PDF
Killing the golden calf of coding - We are Developers keynote
Christian Heilmann
 
PDF
Progressive Web Apps - Techdays Finland
Christian Heilmann
 
PDF
Taking the "vile" out of privilege
Christian Heilmann
 
PDF
Five ways to be a happier JavaScript developer
Christian Heilmann
 
PDF
Taking the P out of PWA
Christian Heilmann
 
PDF
Sacrificing the golden calf of "coding"
Christian Heilmann
 
PDF
You learned JavaScript - now what?
Christian Heilmann
 
PDF
Sacrificing the golden calf of "coding"
Christian Heilmann
 
PDF
Progressive Web Apps - Covering the best of both worlds - DevReach
Christian Heilmann
 
PDF
Progressive Web Apps - Covering the best of both worlds
Christian Heilmann
 
PPTX
Non-trivial pursuits: Learning machines and forgetful humans
Christian Heilmann
 
PDF
Progressive Web Apps - Bringing the web front and center
Christian Heilmann
 
PDF
CSS vs. JavaScript - Trust vs. Control
Christian Heilmann
 
PDF
The Soul in The Machine - Developing for Humans (FrankenJS edition)
Christian Heilmann
 
PDF
Breaking out of the Tetris mind set #btconf
Christian Heilmann
 
Develop, Debug, Learn? - Dotjs2019
Christian Heilmann
 
Hinting at a better web
Christian Heilmann
 
Taking the "vile" out of privilege
Christian Heilmann
 
Seven ways to be a happier JavaScript developer - NDC Oslo
Christian Heilmann
 
Artificial intelligence for humans… #AIDC2018 keynote
Christian Heilmann
 
Killing the golden calf of coding - We are Developers keynote
Christian Heilmann
 
Progressive Web Apps - Techdays Finland
Christian Heilmann
 
Taking the "vile" out of privilege
Christian Heilmann
 
Five ways to be a happier JavaScript developer
Christian Heilmann
 
Taking the P out of PWA
Christian Heilmann
 
Sacrificing the golden calf of "coding"
Christian Heilmann
 
You learned JavaScript - now what?
Christian Heilmann
 
Sacrificing the golden calf of "coding"
Christian Heilmann
 
Progressive Web Apps - Covering the best of both worlds - DevReach
Christian Heilmann
 
Progressive Web Apps - Covering the best of both worlds
Christian Heilmann
 
Non-trivial pursuits: Learning machines and forgetful humans
Christian Heilmann
 
Progressive Web Apps - Bringing the web front and center
Christian Heilmann
 
CSS vs. JavaScript - Trust vs. Control
Christian Heilmann
 
The Soul in The Machine - Developing for Humans (FrankenJS edition)
Christian Heilmann
 
Breaking out of the Tetris mind set #btconf
Christian Heilmann
 

Recently uploaded (20)

PDF
20250703_A. Stotz All Weather Strategy - Performance review July
FINNOMENAMarketing
 
PPTX
World First Cardiovascular & Thoracic CT Scanner
arineta37
 
PDF
Raman Bhaumik - A Passion For Service
Raman Bhaumik
 
PPTX
Top RPA Tools to Watch in 2024: Transforming Automation
RUPAL AGARWAL
 
PDF
LDM Recording for Yogi Goddess Projects Summer 2025
LDMMia GrandMaster
 
PDF
Flexible Metal Hose & Custom Hose Assemblies
McGill Hose & Coupling Inc
 
PDF
kcb-group-plc-2024-integrated-report-and-financial-statements (3).pdf
DanielNdegwa10
 
PDF
Connecting Startups to Strategic Global VC Opportunities.pdf
Google
 
PPTX
Master and Business Administration II Next MBA
RobertoOrellana44
 
PDF
Top Farewell Gifts for Seniors Under.pdf
ThreadVibe Living
 
PDF
Thane Stenner - An Industry Expert
Thane Stenner
 
PPTX
Build Wealth & Protect Your Legacy with Indexed Universal Life Insurance
iulfinancial6
 
PDF
Keppel Investor Day 2025 Presentation Slides GCAT.pdf
KeppelCorporation
 
PPTX
DECODING AI AGENTS AND WORKFLOW AUTOMATION FOR MODERN RECRUITMENT
José Kadlec
 
PPTX
Technical Analysis of 1st Generation Biofuel Feedstocks - 25th June 2025
TOFPIK
 
PDF
Buy Boys Long Sleeve T-shirts at Port 213
Port 213
 
PPTX
Why-Your-BPO-Startup-Must-Track-Attrition-from-Day-One.pptx.pptx
Orage technologies
 
PDF
Dr. Enrique Segura Ense Group - A Philanthropist And Entrepreneur
Dr. Enrique Segura Ense Group
 
PDF
Native Sons Of The Golden West - Boasts A Legacy Of Impactful Leadership
Native Sons of the Golden West
 
PDF
Kirill Klip GEM Royalty TNR Gold Presentation
Kirill Klip
 
20250703_A. Stotz All Weather Strategy - Performance review July
FINNOMENAMarketing
 
World First Cardiovascular & Thoracic CT Scanner
arineta37
 
Raman Bhaumik - A Passion For Service
Raman Bhaumik
 
Top RPA Tools to Watch in 2024: Transforming Automation
RUPAL AGARWAL
 
LDM Recording for Yogi Goddess Projects Summer 2025
LDMMia GrandMaster
 
Flexible Metal Hose & Custom Hose Assemblies
McGill Hose & Coupling Inc
 
kcb-group-plc-2024-integrated-report-and-financial-statements (3).pdf
DanielNdegwa10
 
Connecting Startups to Strategic Global VC Opportunities.pdf
Google
 
Master and Business Administration II Next MBA
RobertoOrellana44
 
Top Farewell Gifts for Seniors Under.pdf
ThreadVibe Living
 
Thane Stenner - An Industry Expert
Thane Stenner
 
Build Wealth & Protect Your Legacy with Indexed Universal Life Insurance
iulfinancial6
 
Keppel Investor Day 2025 Presentation Slides GCAT.pdf
KeppelCorporation
 
DECODING AI AGENTS AND WORKFLOW AUTOMATION FOR MODERN RECRUITMENT
José Kadlec
 
Technical Analysis of 1st Generation Biofuel Feedstocks - 25th June 2025
TOFPIK
 
Buy Boys Long Sleeve T-shirts at Port 213
Port 213
 
Why-Your-BPO-Startup-Must-Track-Attrition-from-Day-One.pptx.pptx
Orage technologies
 
Dr. Enrique Segura Ense Group - A Philanthropist And Entrepreneur
Dr. Enrique Segura Ense Group
 
Native Sons Of The Golden West - Boasts A Legacy Of Impactful Leadership
Native Sons of the Golden West
 
Kirill Klip GEM Royalty TNR Gold Presentation
Kirill Klip
 

Upgrading JavaScript to ES6 and using TypeScript as a shortcut