<story><title>Porting 30K lines of code from Flow to TypeScript</title><url>https://davidgom.es/porting-30k-lines-of-code-from-flow-to-typescript/</url></story><parent_chain><item><author>sonnyblarney</author><text>&amp;quot;Even if I have been writing code with Java &amp;#x2F; C# for nearly a decade , nothing has come close to Typescript in terms of productivity,flexibility and confidence.&amp;quot;&lt;p&gt;Same here.&lt;p&gt;Isn&amp;#x27;t this truly amazing?&lt;p&gt;Take a jangly language like JS, and add some typing for the compiler, which forces you to write cleaner code in addition to all the compiler advantages ... combined with some really cool features and &lt;i&gt;bang&lt;/i&gt; a magical, pragmatic language.&lt;p&gt;Aside for some script things for which Python is still a blessing, I&amp;#x27;d chose TS for everything else, at least to start.&lt;p&gt;It just has the right mix of flexibility and expressivity etc..&lt;p&gt;Though TS is an MS project, I suggest it really is quite different, it&amp;#x27;s &amp;#x27;open from the start&amp;#x27; kind of thing, you can have a loot at TSC internals. The team seems to be fairly dynamic and responsive.&lt;p&gt;Typscript is my #1 favorite &amp;#x27;invention&amp;#x27; of the last few years, I think it will be around for a while, and I hope to see many more JS API&amp;#x27;s &amp;#x27;properly documented&amp;#x27; with the help of TS.</text></item><item><author>tinyvm</author><text>I recently did the exact same job as the author of this post.&lt;p&gt;Migrating 15K LoC from JS to TS.&lt;p&gt;The author of Vue.JS also migrated Vue completely to Typescript.&lt;p&gt;At first I had major apprehension because of how much Microsoft generally enforces things on developers.&lt;p&gt;It&amp;#x27;s well know that if you start using C# , your entire stack will generally be MS based...(SQL Server, Azure etc... )&lt;p&gt;But after I did the migration , I was blown away by how confident and how much flexibility I had when i was writing my code.&lt;p&gt;Even if I have been writing code with Java &amp;#x2F; C# for nearly a decade , nothing has come close to Typescript in terms of productivity,flexibility and confidence.&lt;p&gt;Having used Javascript since before Node.JS , I think the whole idea of having to &amp;quot;transpile&amp;quot; my code to something or to respect some &amp;quot;rules&amp;quot; define by a company with a reputation that wasn&amp;#x27;t really &amp;quot;all in open source&amp;quot;  .&lt;p&gt;But after using Typescript on multiples projects , you just can&amp;#x27;t go back , it&amp;#x27;s incredible how well it&amp;#x27;s scale without enforcing anything on the developers.&lt;p&gt;Hopefully , one day bootcamps will include Typescript in their trainings to demonstrate how typings can solve maintainability issues...</text></item></parent_chain><comment><author>johnfn</author><text>&amp;gt; Take a jangly language like JS, and add some typing for the compiler, which forces you to write cleaner code in addition to all the compiler advantages ... combined with some really cool features and bang a magical, pragmatic language.&lt;p&gt;Agreed. And when you compare how TS was designed to how other languages were designed, it makes a lot of sense why TS ended up being such a great language.&lt;p&gt;Unlike virtually every other language in existence, TS was not designed from the ground up. It was designed with a very specific goal in mind: to adhere to the standards that JS developers had already converged on. So when a JS developer said if (foo), TS was built to realize that was an implicit type check against null. When a JS developer said if (obj.type === “bar”), TS read that as a way to ensure obj was in fact a bar.&lt;p&gt;It’s unlikely that a language developer working from scratch would have come up with these odd idioms, let alone prioritized their inclusion into a new language. But in the case of TS, all these idioms came from millions of lines of working code.&lt;p&gt;I think that’s why TS feels so enjoyable and easy to work with nowadays, whereas even the best of other languages feel a little clunky at times. It was developed prioritizing making real actual code idioms people wanted to do work.</text></comment>
<story><title>Porting 30K lines of code from Flow to TypeScript</title><url>https://davidgom.es/porting-30k-lines-of-code-from-flow-to-typescript/</url></story><parent_chain><item><author>sonnyblarney</author><text>&amp;quot;Even if I have been writing code with Java &amp;#x2F; C# for nearly a decade , nothing has come close to Typescript in terms of productivity,flexibility and confidence.&amp;quot;&lt;p&gt;Same here.&lt;p&gt;Isn&amp;#x27;t this truly amazing?&lt;p&gt;Take a jangly language like JS, and add some typing for the compiler, which forces you to write cleaner code in addition to all the compiler advantages ... combined with some really cool features and &lt;i&gt;bang&lt;/i&gt; a magical, pragmatic language.&lt;p&gt;Aside for some script things for which Python is still a blessing, I&amp;#x27;d chose TS for everything else, at least to start.&lt;p&gt;It just has the right mix of flexibility and expressivity etc..&lt;p&gt;Though TS is an MS project, I suggest it really is quite different, it&amp;#x27;s &amp;#x27;open from the start&amp;#x27; kind of thing, you can have a loot at TSC internals. The team seems to be fairly dynamic and responsive.&lt;p&gt;Typscript is my #1 favorite &amp;#x27;invention&amp;#x27; of the last few years, I think it will be around for a while, and I hope to see many more JS API&amp;#x27;s &amp;#x27;properly documented&amp;#x27; with the help of TS.</text></item><item><author>tinyvm</author><text>I recently did the exact same job as the author of this post.&lt;p&gt;Migrating 15K LoC from JS to TS.&lt;p&gt;The author of Vue.JS also migrated Vue completely to Typescript.&lt;p&gt;At first I had major apprehension because of how much Microsoft generally enforces things on developers.&lt;p&gt;It&amp;#x27;s well know that if you start using C# , your entire stack will generally be MS based...(SQL Server, Azure etc... )&lt;p&gt;But after I did the migration , I was blown away by how confident and how much flexibility I had when i was writing my code.&lt;p&gt;Even if I have been writing code with Java &amp;#x2F; C# for nearly a decade , nothing has come close to Typescript in terms of productivity,flexibility and confidence.&lt;p&gt;Having used Javascript since before Node.JS , I think the whole idea of having to &amp;quot;transpile&amp;quot; my code to something or to respect some &amp;quot;rules&amp;quot; define by a company with a reputation that wasn&amp;#x27;t really &amp;quot;all in open source&amp;quot;  .&lt;p&gt;But after using Typescript on multiples projects , you just can&amp;#x27;t go back , it&amp;#x27;s incredible how well it&amp;#x27;s scale without enforcing anything on the developers.&lt;p&gt;Hopefully , one day bootcamps will include Typescript in their trainings to demonstrate how typings can solve maintainability issues...</text></item></parent_chain><comment><author>untog</author><text>The exception I&amp;#x27;d add is that JavaScript&amp;#x27;s standard library is still very weak. I find myself leaning on Lodash for functionality that would be built into any other language.&lt;p&gt;Part of me would love for TS to build one out and add shims as part of the transpilation process, but it would go miles out of the scope of what TS is trying to do. And I love that (compared to Babel) TS has no plugins and relatively few options.</text></comment>