SlideShare a Scribd company logo
1 of 17
TypeScript
For Enterprise Scale JavaScript Apps
Today’s Agenda
1. Intro With whom am I speaking?
2. JavaScript Wat?!!!
3. The Basics Types, Interfaces, Classes, and Modules
4. The Cool Stuff Functions and Lambdas, Complex Type Definitions, Generics, Mixins/Decorators
5. The Real World Library Definitions, Compiler Options, AMD
With whom am I speaking?
Intro
Jeremy Likness
• Wife, 2 children, vegan hiking 9-ball player
• Started programming in the Commodore 64 days (yes, we
had computers in the early 1980s)
• Brief foray into game development with Quake in mid
1990s
• Enterprise Developer for 20 years
• Web Developer since, well, the web (1990s)
• TypeScript Developer since beta in 2012 (six figures LOCs)
• 7-time Microsoft MVP
• Author of 4 technology books
• http://bit.ly/coderblog
iVision
iVision App Dev
http://bit.ly/ivisionappdev
Wat?!!!
JavaScript
Wat?!
JavaScript Isn’t Going Anywhere
1995
•Mocha
becomes
LiveScript
•Written in
10 Days
1996
•JavaScript
1997
•ECMAScript
1.0
•Standards!
1999
•ECMAScript
3.0
2005
•jQuery
•Normalize
the DOM
2009
•NodeJS
2012
•TypeScript
•Superset /
Normalize
JavaScript
2015
•ECMAScript
2015
• Popular Option
• Introduces Classes, Lexical Scope, Lambda, etc.
• Lacks:
• Interfaces
• Dynamic module affinity (SystemJS, RequireJS, etc.)
• External library definitions
• Generics
• TypeScript = Superscript and is “future-proof”
What About ECMAScript 6/2015 and Babel?
• Discovery: intent is more clear with types, interfaces, etc.
• Documentation: libraries make it easy to discover how to use APIs
• Development Time Security: “fat-finger” mistakes less likely, even
through complex iterations of calls and callbacks, won’t compile
• Scope Safety: Modules, Classes, and Lambdas manage concepts of
scope and “this” context
• Team Scale: components make it easier for multiple teams to work in
parallel
• 4x: Increased velocity for a team shifting from JavaScript to TypeScript
with a data-binding framework (Angular)
TypeScript in the Real World
• “I cannot say I have ever been a Microsoft fan but TypeScript has
‘softened’ me, it is easily one of the best web technologies to arrive in
the past 3 years.” - https://tedpatrick.com/2013/06/25/7-months-with-typescript/
• “Overall, TypeScript is wonderful to work with. It helps developers
catch errors quickly, adds types and type-checking, and documents your
progress so that if someone else wants to contribute, or you need to
return to your work months later, you can easily pick up where you left
off.” - http://www.livetiles.nyc/blog/typescript-a-digital-workplace-success-story/
• “… we use TypeScript not because we’re part of Microsoft, but because
we find tremendous value by improving our productivity and keeping
our quality high which together allow us to move much faster.” -
https://medium.com/@delveeng/why-we-love-typescript-bec2df88d6c2#.pzp9xp7an
What Are People Saying?
Types, Interfaces, Classes, and Modules
The Basics
• Types
• Interfaces
• Classes
• Modules
The Basics
• Functions and Lambdas
• Complex Type Definitions
• Generics
• Mixins and Decorators
The Cool Stuff
• Library Definitions
• Migrating JavaScript
• Compiler Options
• AMD
The Real World
https://github.com/jeremylikness
http://bit.ly/coderblog
jlikness@ivision.com
Questions?

More Related Content

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Recently uploaded (20)

ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Featured

Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Featured (20)

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 

TypeScript for Enterprise Scale JavaScript Apps

  • 2. Today’s Agenda 1. Intro With whom am I speaking? 2. JavaScript Wat?!!! 3. The Basics Types, Interfaces, Classes, and Modules 4. The Cool Stuff Functions and Lambdas, Complex Type Definitions, Generics, Mixins/Decorators 5. The Real World Library Definitions, Compiler Options, AMD
  • 3. With whom am I speaking? Intro
  • 4. Jeremy Likness • Wife, 2 children, vegan hiking 9-ball player • Started programming in the Commodore 64 days (yes, we had computers in the early 1980s) • Brief foray into game development with Quake in mid 1990s • Enterprise Developer for 20 years • Web Developer since, well, the web (1990s) • TypeScript Developer since beta in 2012 (six figures LOCs) • 7-time Microsoft MVP • Author of 4 technology books • http://bit.ly/coderblog
  • 9. JavaScript Isn’t Going Anywhere 1995 •Mocha becomes LiveScript •Written in 10 Days 1996 •JavaScript 1997 •ECMAScript 1.0 •Standards! 1999 •ECMAScript 3.0 2005 •jQuery •Normalize the DOM 2009 •NodeJS 2012 •TypeScript •Superset / Normalize JavaScript 2015 •ECMAScript 2015
  • 10. • Popular Option • Introduces Classes, Lexical Scope, Lambda, etc. • Lacks: • Interfaces • Dynamic module affinity (SystemJS, RequireJS, etc.) • External library definitions • Generics • TypeScript = Superscript and is “future-proof” What About ECMAScript 6/2015 and Babel?
  • 11. • Discovery: intent is more clear with types, interfaces, etc. • Documentation: libraries make it easy to discover how to use APIs • Development Time Security: “fat-finger” mistakes less likely, even through complex iterations of calls and callbacks, won’t compile • Scope Safety: Modules, Classes, and Lambdas manage concepts of scope and “this” context • Team Scale: components make it easier for multiple teams to work in parallel • 4x: Increased velocity for a team shifting from JavaScript to TypeScript with a data-binding framework (Angular) TypeScript in the Real World
  • 12. • “I cannot say I have ever been a Microsoft fan but TypeScript has ‘softened’ me, it is easily one of the best web technologies to arrive in the past 3 years.” - https://tedpatrick.com/2013/06/25/7-months-with-typescript/ • “Overall, TypeScript is wonderful to work with. It helps developers catch errors quickly, adds types and type-checking, and documents your progress so that if someone else wants to contribute, or you need to return to your work months later, you can easily pick up where you left off.” - http://www.livetiles.nyc/blog/typescript-a-digital-workplace-success-story/ • “… we use TypeScript not because we’re part of Microsoft, but because we find tremendous value by improving our productivity and keeping our quality high which together allow us to move much faster.” - https://medium.com/@delveeng/why-we-love-typescript-bec2df88d6c2#.pzp9xp7an What Are People Saying?
  • 13. Types, Interfaces, Classes, and Modules The Basics
  • 14. • Types • Interfaces • Classes • Modules The Basics
  • 15. • Functions and Lambdas • Complex Type Definitions • Generics • Mixins and Decorators The Cool Stuff
  • 16. • Library Definitions • Migrating JavaScript • Compiler Options • AMD The Real World