SlideShare a Scribd company logo
Consulting/Training
Enterprise TypeScript
Consulting/Training
consulting
Wintellect helps you build better software,
faster, tackling the tough projects and solving
the software and technology questions that
help you transform your business.
 Architecture, Analysis and Design
 Full lifecycle software development
 Debugging and Performance tuning
 Database design and development
training
Wintellect's courses are written and taught by
some of the biggest and most respected names
in the Microsoft programming industry.
 Learn from the best. Access the same
training Microsoft’s developers enjoy
 Real world knowledge and solutions on
both current and cutting edge
technologies
 Flexibility in training options – onsite,
virtual, on demand
Founded by top experts on Microsoft – Jeffrey Richter, Jeff Prosise, and John Robbins – we pull
out all the stops to help our customers achieve their goals through advanced software-based
consulting and training solutions.
who we are
About Wintellect
Consulting/Training
 Long, long ago
 Seriously, we’re talking decades
 In a galaxy far, far away …
 OK, so not that far away …
 Someone got the bright idea that they would write a
new language in just 10 days
 “I shall call it … Mocha! No, wait …
LiveScript … or, let’s make it even
more confusing … JAVASCRIPT!
Muwahahahahahahahah”
Once Upon a Time …
Consulting/Training
[] + [] = ?
[] – [] = ?
[] + {} = ?
[] – {} = ?
Array(5).join("Cool");
Array(5).join("Cool" + 1);
Array(5).join("Cool" – 1);
Here’s What We Were Left With …
Consulting/Training
 Lightweight Scripting Language
 Easy to Learn
 Runs in Every Browser
 Dynamic by Nature
 Object-based
 Built from day one to understand JSON
 Just making sure you were awake
The Pros of JavaScript
Consulting/Training
 Lightweight Scripting Language … asked to do
heavyweight work on the client
 Easy to Learn think you’ve learned it
 Runs differently in Every Browser
 Dynamic by Nature
 Object-based … prototypical, which is a con
when you are expecting object-oriented
 Let’s go back to pros … it thankfully doesn’t do
well with SOAP
The Cons of JavaScript
Consulting/Training
 Now we have to learn another language that behaves completely
differently. Hoisting just doesn’t make sense and is only useful for
JavaScript show-offs to stump their C#-loving enemies.
 Once you finally learn to use === instead of == some API returns “2”
instead of 2 and everything breaks
 It’s tough to trust an API that takes any number of parameters without
complaining
 It insists on a camel-case convention and then doesn’t complain when
you accidently use Pascal case
 Function scope. Really? If I have to write another self-invoking function …
 What is this?
 I now need a Mac and Windows with 12 Virtual Machines just to test
every combination of platform and browser we’re going to support
The Enterprise at War
Consulting/Training
 JavaScript is here to stay
 You can probably thank
smart phones
 HTML5 isn’t helping things
either
 Not even the servers are
safe with Node.js
 It’s OK, things are better …
It’s Time to Bury the Hatchet
Consulting/Training
 1995 – JavaScript ships
 1995 – 2005 – Weeping and Gnashing of Teeth (although AJAX was available in
1999, it wasn’t even called that until 2005)
 2006 – John releases jQuery and $ will never be the same
 2008 – Engine gets a V8 (Google)
 2009 – Jeremy releases CoffeeScript
 2009 – Ryan releases Node.js
 2010 – v1 of Knockout.js released
 2011 – ECMAScript 5.1 provides hope for standards
 2012 – TypeScript released (Microsoft)
 2012 – v1 of Angular.js is released (after 3 years of development)
 2013ish – asm.js (Mozilla)
Important Milestones
Consulting/Training
function (e) { return e.idx; }
e => e.idx;
for (var x = 0; x < 5; x++) { var y = x*2; }
for (var x = 0; x < 5; x++) { let y = x*2; }
const pi = "delicious.";
class MyClass {
constructor(a,b) {
public a = a;
private b = b;
}
get factor () { return private(this).b * a; }
}
// generators
// modules
// … and much, much more …
ES6 – Living in Harmony
Consulting/Training
 Types
 Enumerations
 Generics
 Interfaces and Interface Extension, Implementation
 Optional Properties
 Classes with Inheritance
 Static and instance types
 Private and Public Modifiers
 Accessors
 Modules
 External Modules (node.js, require.js)
 Ambient Declarations
Introducing TypeScript
“Say hello to my little friend.”
Consulting/Training
 Immediate reduction in defect rates
 Faster ramp-up for new developers
 Shorter time to learn new APIs
 Accelerated rate to get from “file -> new” to “story done”
 C# developers spend less time asking themselves, “What is this?”
 Code is easier to understand and maintain
 Saying “refactor” no longer results in weird stares and people
trying to usher you into a back room
 Bottom line: Estimated 2 – 4x improved productivity.
 Before: Eight 2-Week Sprints. After: Four 2-Week Sprints.
 Before: 100 points / sprint. After: 250 points / sprint.
Case Study
Consulting/Training
TypeScript in Action
https://github.com/JeremyLikness/LearnTypeScript
Types, Generics, Functions, Modules, and a lot of other stuff too!
Consulting/Training
Questions?
http://www.wintellectnow.com/Videos/Watch/enterprise-javascript-
best-practices
http://www.wintellectnow.com/Videos/Watch/typescript-essentially-
javascript-eventually
http://typescriptlang.org/

More Related Content

PPTX
My XML is Alive! An Intro to XAML
PPTX
The Windows Runtime and the Web
PPTX
Single Page Applications: Your Browser is the OS!
PPT
Getting started with angular js
PDF
Web Development with Delphi and React - ITDevCon 2016
PPTX
Angular JS, A dive to concepts
PPTX
Java script performance tips
PDF
The Magic Revealed: Four Real-World Examples of Using the Client Object Model...
My XML is Alive! An Intro to XAML
The Windows Runtime and the Web
Single Page Applications: Your Browser is the OS!
Getting started with angular js
Web Development with Delphi and React - ITDevCon 2016
Angular JS, A dive to concepts
Java script performance tips
The Magic Revealed: Four Real-World Examples of Using the Client Object Model...

What's hot (20)

PDF
Principles of MVC for PHP Developers
PPTX
ASP .NET MVC - best practices
PPTX
The Web on Windows
PPTX
Kickstart sencha extjs
PPT
Jasmine - A BDD test framework for JavaScript
PPT
Struts 2-overview2
PPT
MSDN - ASP.NET MVC
PPTX
Test driven development v1.0
PPTX
Tech io spa_angularjs_20130814_v0.9.5
PPTX
Knockout js
PPTX
Introduction to MVC Web Framework with CodeIgniter
PDF
learn mvc project in 7 day
PPT
OSGi and JavaScript - Simon Kaegi
PPTX
Getting Started with J2EE, A Roadmap
PPTX
MVC Puree - Approaches to MVC with Umbraco
ODP
A Good PHP Framework For Beginners Like Me!
PPT
Struts 2-overview2
PPTX
A Smooth Transition to HTML5 Using MVVM
PPTX
ASP .NET MVC
KEY
Introduction to ASP.NET MVC
Principles of MVC for PHP Developers
ASP .NET MVC - best practices
The Web on Windows
Kickstart sencha extjs
Jasmine - A BDD test framework for JavaScript
Struts 2-overview2
MSDN - ASP.NET MVC
Test driven development v1.0
Tech io spa_angularjs_20130814_v0.9.5
Knockout js
Introduction to MVC Web Framework with CodeIgniter
learn mvc project in 7 day
OSGi and JavaScript - Simon Kaegi
Getting Started with J2EE, A Roadmap
MVC Puree - Approaches to MVC with Umbraco
A Good PHP Framework For Beginners Like Me!
Struts 2-overview2
A Smooth Transition to HTML5 Using MVVM
ASP .NET MVC
Introduction to ASP.NET MVC
Ad

Viewers also liked (8)

PPTX
Windows 8.1 Sockets
PPTX
Angular from a Different Angle
PPTX
Advanced AngularJS Tips and Tricks
PPTX
Let's Build an Angular App!
PPTX
Angle Forward with TypeScript
PPTX
C# Async/Await Explained
PPTX
Back to the ng2 Future
PPTX
Cross-Platform Agile DevOps with Visual Studio Team Services
Windows 8.1 Sockets
Angular from a Different Angle
Advanced AngularJS Tips and Tricks
Let's Build an Angular App!
Angle Forward with TypeScript
C# Async/Await Explained
Back to the ng2 Future
Cross-Platform Agile DevOps with Visual Studio Team Services
Ad

Similar to Enterprise TypeScript (20)

PPTX
This isn't what you think it is
DOCX
MAHESH NALLABOTHULA_resume (1) (1)
PDF
Java Programming
PDF
JavaScript & Enterprise BED-Con 2014 Berlin German
PPT
Planning JavaScript and Ajax for larger teams
PPTX
Stream SQL eventflow visual programming for real programmers presentation
DOCX
Training report
DOC
JAVA Developer_Resume_Vaibhav Srivastav
PDF
Extending JS WU2016 Toronto
PDF
Maintainable Javascript carsonified
PDF
Designing A Project Using Java Programming
PPTX
Latest trends in information technology
PDF
Backend Development Bootcamp - Node [Online & Offline] In Bangla
PDF
Java Day Brochure
PDF
Ob Essay
PPTX
Node.js meetup 17.05.2017 ember.js - escape the javascript fatigue
PDF
Six reasons to learn JavaScript
PDF
Data-First Online Functional Programming with F# (Adam Granicz)
PPTX
Microsoft Tech Club Cairo University "MSTC'16 Builders and Developers " First...
This isn't what you think it is
MAHESH NALLABOTHULA_resume (1) (1)
Java Programming
JavaScript & Enterprise BED-Con 2014 Berlin German
Planning JavaScript and Ajax for larger teams
Stream SQL eventflow visual programming for real programmers presentation
Training report
JAVA Developer_Resume_Vaibhav Srivastav
Extending JS WU2016 Toronto
Maintainable Javascript carsonified
Designing A Project Using Java Programming
Latest trends in information technology
Backend Development Bootcamp - Node [Online & Offline] In Bangla
Java Day Brochure
Ob Essay
Node.js meetup 17.05.2017 ember.js - escape the javascript fatigue
Six reasons to learn JavaScript
Data-First Online Functional Programming with F# (Adam Granicz)
Microsoft Tech Club Cairo University "MSTC'16 Builders and Developers " First...

Recently uploaded (20)

PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
KodekX | Application Modernization Development
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
Cloud computing and distributed systems.
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Electronic commerce courselecture one. Pdf
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPT
Teaching material agriculture food technology
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
Diabetes mellitus diagnosis method based random forest with bat algorithm
NewMind AI Weekly Chronicles - August'25 Week I
KodekX | Application Modernization Development
The Rise and Fall of 3GPP – Time for a Sabbatical?
Cloud computing and distributed systems.
“AI and Expert System Decision Support & Business Intelligence Systems”
Understanding_Digital_Forensics_Presentation.pptx
Electronic commerce courselecture one. Pdf
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Teaching material agriculture food technology
Reach Out and Touch Someone: Haptics and Empathic Computing
Digital-Transformation-Roadmap-for-Companies.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Chapter 3 Spatial Domain Image Processing.pdf
NewMind AI Monthly Chronicles - July 2025
Machine learning based COVID-19 study performance prediction
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
The AUB Centre for AI in Media Proposal.docx
20250228 LYD VKU AI Blended-Learning.pptx

Enterprise TypeScript

  • 2. Consulting/Training consulting Wintellect helps you build better software, faster, tackling the tough projects and solving the software and technology questions that help you transform your business.  Architecture, Analysis and Design  Full lifecycle software development  Debugging and Performance tuning  Database design and development training Wintellect's courses are written and taught by some of the biggest and most respected names in the Microsoft programming industry.  Learn from the best. Access the same training Microsoft’s developers enjoy  Real world knowledge and solutions on both current and cutting edge technologies  Flexibility in training options – onsite, virtual, on demand Founded by top experts on Microsoft – Jeffrey Richter, Jeff Prosise, and John Robbins – we pull out all the stops to help our customers achieve their goals through advanced software-based consulting and training solutions. who we are About Wintellect
  • 3. Consulting/Training  Long, long ago  Seriously, we’re talking decades  In a galaxy far, far away …  OK, so not that far away …  Someone got the bright idea that they would write a new language in just 10 days  “I shall call it … Mocha! No, wait … LiveScript … or, let’s make it even more confusing … JAVASCRIPT! Muwahahahahahahahah” Once Upon a Time …
  • 4. Consulting/Training [] + [] = ? [] – [] = ? [] + {} = ? [] – {} = ? Array(5).join("Cool"); Array(5).join("Cool" + 1); Array(5).join("Cool" – 1); Here’s What We Were Left With …
  • 5. Consulting/Training  Lightweight Scripting Language  Easy to Learn  Runs in Every Browser  Dynamic by Nature  Object-based  Built from day one to understand JSON  Just making sure you were awake The Pros of JavaScript
  • 6. Consulting/Training  Lightweight Scripting Language … asked to do heavyweight work on the client  Easy to Learn think you’ve learned it  Runs differently in Every Browser  Dynamic by Nature  Object-based … prototypical, which is a con when you are expecting object-oriented  Let’s go back to pros … it thankfully doesn’t do well with SOAP The Cons of JavaScript
  • 7. Consulting/Training  Now we have to learn another language that behaves completely differently. Hoisting just doesn’t make sense and is only useful for JavaScript show-offs to stump their C#-loving enemies.  Once you finally learn to use === instead of == some API returns “2” instead of 2 and everything breaks  It’s tough to trust an API that takes any number of parameters without complaining  It insists on a camel-case convention and then doesn’t complain when you accidently use Pascal case  Function scope. Really? If I have to write another self-invoking function …  What is this?  I now need a Mac and Windows with 12 Virtual Machines just to test every combination of platform and browser we’re going to support The Enterprise at War
  • 8. Consulting/Training  JavaScript is here to stay  You can probably thank smart phones  HTML5 isn’t helping things either  Not even the servers are safe with Node.js  It’s OK, things are better … It’s Time to Bury the Hatchet
  • 9. Consulting/Training  1995 – JavaScript ships  1995 – 2005 – Weeping and Gnashing of Teeth (although AJAX was available in 1999, it wasn’t even called that until 2005)  2006 – John releases jQuery and $ will never be the same  2008 – Engine gets a V8 (Google)  2009 – Jeremy releases CoffeeScript  2009 – Ryan releases Node.js  2010 – v1 of Knockout.js released  2011 – ECMAScript 5.1 provides hope for standards  2012 – TypeScript released (Microsoft)  2012 – v1 of Angular.js is released (after 3 years of development)  2013ish – asm.js (Mozilla) Important Milestones
  • 10. Consulting/Training function (e) { return e.idx; } e => e.idx; for (var x = 0; x < 5; x++) { var y = x*2; } for (var x = 0; x < 5; x++) { let y = x*2; } const pi = "delicious."; class MyClass { constructor(a,b) { public a = a; private b = b; } get factor () { return private(this).b * a; } } // generators // modules // … and much, much more … ES6 – Living in Harmony
  • 11. Consulting/Training  Types  Enumerations  Generics  Interfaces and Interface Extension, Implementation  Optional Properties  Classes with Inheritance  Static and instance types  Private and Public Modifiers  Accessors  Modules  External Modules (node.js, require.js)  Ambient Declarations Introducing TypeScript “Say hello to my little friend.”
  • 12. Consulting/Training  Immediate reduction in defect rates  Faster ramp-up for new developers  Shorter time to learn new APIs  Accelerated rate to get from “file -> new” to “story done”  C# developers spend less time asking themselves, “What is this?”  Code is easier to understand and maintain  Saying “refactor” no longer results in weird stares and people trying to usher you into a back room  Bottom line: Estimated 2 – 4x improved productivity.  Before: Eight 2-Week Sprints. After: Four 2-Week Sprints.  Before: 100 points / sprint. After: 250 points / sprint. Case Study