Merry Christmas Sale! 🎄 Ends in 6 days.
Friends, what an incredible year it has been. If I know us well, we're always moving forward. We're following our curiosity. And most importantly, we're growing.
Never forget one of the most important success techniques there is: reflection. So, take a moment to look back on how far you've come this year. Go on and collect the lessons, get inspired, and prepare for a prosperous 2025.
Before December 29th, you can get 50% off of Testing Mastery using the discount code XMAS-50 and 10% off the entire suite of courses in the academy using the discount code TSE-XMAS.
Thank you, and may 2025 grant you the growth, love & power to create what matters most in your world
Enjoy your holidays. See you next year.
And always, To Mastery!
What's Unscalable about JavaScript? | TypeScript OOP
Microsoft called TypeScript JavaScript that scales... what's so unscalable about JavaScript?
With respect to software development, there are two ways to think about scalability.
- Performance scalability
- Productivity scalability
TypeScript is meant to address 2. Productivity scalability.
Like most dynamically-typed languages, the lack of types in JavaScript can drastically improve initial productivity levels on certain projects, but there are factors that exist in other projects (team size, code size, intended code lifespan, domain complexity), in which the lack of types can be detrimental to code quality and understandability.
It's been agreed upon that:
- It's better enable the compiler to catch silly bugs, typos, and other errors at compile time, rather than in production at runtime.
- Tests are the best documentation possible for your code. Types are no substitute for writing tests, but they can do a good job at reducing the surface area of bugs.
- Tests also enable faster and safer refactoring. Similarly, if no tests exist, types can (at the very least) catch syntatic inaccuracies.
We've talked about it previously, but TypeScript addresses #3 of the Hard Software Problems: The Compled Domain Problem.
See also: "When to Use TypeScript", a Detailed Guide through Common Scenarios.
Stay in touch!
Join 20000+ value-creating Software Essentialists getting actionable advice on how to master what matters each week. 🖖
View more in TypeScript