58
Why I Was Wrong About TypeScript TJ VanToll

Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

Why I Was Wrong About TypeScriptTJ VanToll

Page 2: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

TypeScript

Page 3: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

TypeScript

Page 4: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

TypeScript

Page 5: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

Why I Was Wrong About TypeScript

Page 6: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

Whether TypeScript is a good fit for your

next project

Page 7: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

Why I Was Wrong About TypeScript

Page 8: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

“A typed superset of JavaScript that

compiles to plain JavaScript”

Page 9: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

“A typed superset of JavaScript that

compiles to plain JavaScript”

Page 10: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 11: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

😍

Page 12: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

😠

Page 13: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 14: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 15: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

Compile to JavaScript tools

• There are a lot.• 345• Source: https://github.com/jashkenas/coffeescript/wiki/List-of-languages-that-compile-to-JS

• Ruby, Python, Erlang, Java, Scala, C#, F#, Lisp, Scheme, Haskell, Smalltalk, C, C++, Basic, Go, PHP, and way more.

Page 16: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

Fun names of compile-to-JS tools

• treehugger• jangaroo• Waterbear

Page 17: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

http://waterbearlang.com/

Page 18: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

Compile to JavaScript tools

• There are a lot.• 345• Source: https://github.com/jashkenas/coffeescript/wiki/List-of-languages-that-compile-to-JS

• Ruby, Python, Erlang, Java, Scala, C#, F#, Lisp, Scheme, Haskell, Smalltalk, C, C++, Basic, Go, PHP, and way more.

Page 19: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 20: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 21: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 22: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 23: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 24: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 25: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 26: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 27: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 28: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 29: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

Why I Was Wrong About TypeScript

Page 30: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 31: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 32: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 33: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 34: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 35: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

Page 36: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

“We risk a lot by building our core on top of TypeScript.”

Page 37: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

“I don’t hear anyone talking about TypeScript.”

Page 38: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

“I like to keep my JavaScript pure, as

God intended.”

Page 39: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 40: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 41: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 42: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

Why I Was Wrong About TypeScript

Page 43: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 44: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 45: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 46: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 47: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 48: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 49: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

Why?

Page 50: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

3 reasons

Page 51: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

1) Commitment to the ECMAScript standard

Page 52: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

“Some examples [of compile-to-JavaScript frameworks], like Dart, portend that JavaScript

has fundamental flaws and to support these scenarios requires a “clean break” from

JavaScript in both syntax and runtime. We disagree with this point of view. We believe that with committee participant focus, the

standards runtime can be expanded and the syntactic features necessary to support

JavaScript at scale can be built upon the existing JavaScript standard.”

Page 53: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that
Page 54: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

2) Types are opt-in

Page 55: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

3) Tooling

Page 56: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

So should you use TypeScript?• Are your apps big?• Do you work on a team?• Unfamiliar codebases?• Non JS developers that need to write JS code?

Page 57: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

http://developerday.nativescript.org/?discount=TJVANTOLL

Page 58: Why I Was Wrong About TypeScript - Certified FreshSo should you use TypeScript ? •Are your apps big? •Do you work on a team? •Unfamiliar codebases? •Non JS developers that

Thanks!@tjvantoll