Dan Vanderkam 🦋
@danvdk
Followers
3K
Following
1K
Media
94
Statuses
1K
Independent software developer, formerly @sidewalklabs and Google. Author of Effective TypeScript, now in its 2nd edition (May 2024): https://t.co/NV5HD4jX8C
Hudson Valley, NY
Joined February 2009
It's here! 🎉 The 2nd edition of Effective TypeScript is now available in all formats. The bird on the cover is the same, but the content is throughly revised and expanded to reflect how TS is used in 2024. Get your copy today! @OReillyMedia
https://t.co/BivGuCs0vp
8
25
183
Great article from @ollie about my long-running quest to find the highest-scoring Boggle board. I love the visuals!
ft.com
‘Remarkably old-school’ method establishes supremacy of 1,045-word grid
0
0
3
writing typescript for the first time in 6 years, and i think im enjoying it? new additions like type predicates inference make for a much nicer devex found a very cool article too documenting the development process of this feature from @danvdk
https://t.co/lxpIFSVb30
effectivetypescript.com
Over the past few months I became a TypeScript contributor and implemented a new feature, type predicate inference, that should be one of the headliners for TypeScript 5.5. This post tells the story...
1
1
8
Just published a big update to my "X-Ray Glasses for any types" VS Code extension: https://t.co/fPOq3Hm0YS It uses the built-in TypeScript server now, which makes it faster and more likely to work with your project. Give it a try! It found some anys in vscode and tsc itself!
0
0
23
Just started reading the 2nd edition of this book 🎉 I can’t recommend it enough! The first version made me an entire new dev.
It's here! 🎉 The 2nd edition of Effective TypeScript is now available in all formats. The bird on the cover is the same, but the content is throughly revised and expanded to reflect how TS is used in 2024. Get your copy today! @OReillyMedia
https://t.co/BivGuCs0vp
6
1
23
For a weekend project, I wrote a VS Code extension: X-Ray Vision for any types. The scary thing about "any" is that it can appear in surprising place and silently spread. No more! This was frustrating, rewarding, and hopefully useful. Give it a try! https://t.co/fPOq3Hm0YS
11
14
207
This is the single passage of Effective TypeScript that I've received the most feedback on. Do you have an intuition for why these relationships hold? The latest blog post walks through how they work, what they mean, and why they're interesting https://t.co/9XCPTVzk8h
2
2
11
I learned Zig for last year's Advent of Code. It's a nice language with some great ideas, and TypeScript could learn a few things from it. Read on!
effectivetypescript.com
What can Zig learn from TypeScript, and what can TypeScript learn from Zig?
1
2
24
My notes on the changes in TypeScript 5.5, a blockbuster release
effectivetypescript.com
We TypeScript developers are a lucky bunch. While some languages (Python, JavaScript) are released annually, every three years (C++) or even less, we get four new versions of TypeScript every year....
0
6
30
@recursecenter @AndaristRake or if you prefer videos, check out the great discussion that @JoshuaKGoldberg and I had with Dimitri from @MiTypeScript
0
0
2
I'm very excited that TS 5.5 has officially landed with Inferred Type Predicates, the feature I built at @recursecenter earlier this year. Read all about the journey at https://t.co/o0ArSZnqP8. Special thanks to @AndaristRake for fixing all my bugs :)
effectivetypescript.com
Over the past few months I became a TypeScript contributor and implemented a new feature, type predicate inference, that should be one of the headliners for TypeScript 5.5. This post tells the story...
TypeScript 5.5 is now available! 🎉✨ Now with ✅ Inferred Type Predicates ✅ RegEx syntax checks ✅ The JSDoc @import Tag ✅ ${configDir} for easier tsconfig inheritance ✅ --isolatedDeclarations ✅ Lots of new optimizations And more! Try it today! https://t.co/DH6Vm9Fm01
5
6
69
Effective TypeScript Item 36: Use a Distinct Type for Special Values. This is a sample from the newly-released second edition. It discusses a common mistake in TypeScript code: using "", 0, or -1 to represent special cases like missing data.
effectivetypescript.com
It's tempting to use "", 0 or -1 as special values: an empty string might represent text that hasn't loaded yet, or -1 could stand in for a missing number. In TypeScript, this is almost always a bad...
0
0
8
TypeScript 5.5's going to be a BANGER, and the headliner feature for a lot of us that I'm SO EXCITED about is because @danvdk wanted to be awesome. Congrats and thank you Dan for inferred type predicates! It was an honor just to cheer it on. 😄
If you want to learn the backstory of TypeScript 5.5's inferred type predicates, this is the video! I'm really happy with how it turned out. Kudos to Dimitri and @JoshuaKGoldberg for putting it together.
1
2
26
If you want to learn the backstory of TypeScript 5.5's inferred type predicates, this is the video! I'm really happy with how it turned out. Kudos to Dimitri and @JoshuaKGoldberg for putting it together.
🤩 a super long-requested @typescript feature is coming in a few days to v5.5: @danvdk's work on inferred type predicates! So, naturally, we did a deep dive on it with Dan, the PR author himself! video link below👇
2
5
29
This is the thing! We're launching! I'M CO-ORGANIZING A CONFERENCE THIS YEAR!!!! SO MUCH WORK has gone into it and I'm SO HYPED TO GET IT PUBLIC!! 🤩🥳🤩🥳🤩🥳
👋 Hello world! We’re so excited to finally be ready to meet you. Welcome to SquiggleConf: a Boston conference for excellent web dev tooling. 💙 🐟 October 3rd-4th in the Simons Theater at the New England Aquarium.
22
18
147
I'm always excited by a TypeScript release. This one is epic, and what's all the notable is how much community involvement there was in it. I loved seeing the shout outs to @TitianCernicova, @danvdk and others in the release post. Recognition is so important and so appreciated ❤️
Announcing TypeScript 5.5 Beta! 📣 Now with type predicate inference, more type narrowing, an @import tag for JSDoc, the --isolatedDeclarations flag, performance & reliability improvements, and much more! https://t.co/wvLzGx5dk2
0
6
18
Very excited to see inferred type predicates headline TS 5.5! I hope everyone enjoys the bird-themed release notes 🦜
Announcing TypeScript 5.5 Beta! 📣 Now with type predicate inference, more type narrowing, an @import tag for JSDoc, the --isolatedDeclarations flag, performance & reliability improvements, and much more! https://t.co/wvLzGx5dk2
0
3
32
One of my goals this year was to become a TypeScript contributor. Over the past three months, I did just that! This post tells the story of how Type Predicate Inference came about and what I learned along the way.
effectivetypescript.com
Over the past few months I became a TypeScript contributor and implemented a new feature, type predicate inference, that should be one of the headliners for TypeScript 5.5. This post tells the story...
3
8
58
Excited to see that the new Flow Node Charts have at least one high-profile user. And may have even indirectly led to some TypeScript speedups! Visualizing something has a way of nudging you to make it better. @DavidSherret
github.com
With this PR we optimize control flow graph construction to omit conditional constructs that have no control flow effects. Consider this example: function test(x: A | B | C) { let str = x instanc...
For my PR to infer type predicates, I needed to understand TypeScript's control flow graph. So I added a graph visualization to @DavidSherret's amazing TypeScript AST Viewer. It's live now and very fun to play with! Edges go backwards in execution order. https://t.co/zAMBas5FWH
1
0
17