I'm Dan, a freelance Software Engineer. I previously worked at Google, Sidewalk Labs, Mt. Sinai's Hammerlab and Google again. I'm full stack, but tend to be drawn towards work that involves frontend and data. Data Visualization and Programming Languages are particular interests.
I wrote a book! Effective TypeScript (O'Reilly 2024). You can read more about it at effectivetypescript.com, on Amazon and Goodreads, but here are a few choice quotes:
Effective TypeScript explores the most common questions we see when working with TypeScript and provides practical, results-oriented advice. Regardless of your level of TypeScript experience, you can learn something from this book.
This book is packed with practical recipes and must be kept on the desk of every TypeScript eveloper. Even if you think you know TypeScript already, get this book and you won't regret it.
Recent Blog Posts
To view the past, we must embrace the future.
A final Boggle post reflects on the challenges and rewards of working on hard problems.
Notes on using pybind11 to combine Python and C++ (for Boggle), and on prototyping in Python.
Boggle gets some press, I write a paper and find a few unexpected results.
At long last, we know which Boggle board is the very best.
See all blog posts, or content from my old blog.
Projects
I wrote a book!
Effective TypeScript is a practical, example-driven guide to having a more productive relationship with the type checker. Now in its second edition.
A blog and map tracking my progress towards joining the Catskills 3500 Club by summitting all the high peaks in New York's Catskills mountain range.
Mapping historical photos from the NYPL.
Read more in Gothamist, The Guardian and The New York Times.
Other Creations
Libraries/Developer Tools
- source-map-explorer, a tool for visualizing space usage through JavaScript source maps.
- localturk, an implementation of the Mechanical Turk API which runs on your own machine. Discussed in this blog post
- literate-ts: Type check code samples in books and blogs. Used to verify Effective TypeScript. Read more here.
- crosswalk: Library for adding TypeScript types to both your Express server's REST API and the client code that uses it.
- pg-to-ts: Generate TypeScript types for your Postgres schema. See TypeScript and SQL: Six Ways to Bridge the Divide.
- crudely-typed: Simple "everyday CRUD" Postgres queries with perfect TypeScript types.
Google Projects
- Sunrise/Sunset Onebox: [sunset nyc]
- Finance Onebox: [goog]
- Statistics Knowledge Panel: [population france]
- Fact Comparisons: [distance from the sun to mars]
- March Madness Onebox
- Google Correlate, blog post
- Google Flu Trends, international launch blog post
Papers
- A Computational Proof of the Highest-Scoring Boggle Board (2025)
- Nearest Neighbor Search in Google Correlate (2013)
- Google Correlate Whitepaper (2011)
Older/Defunct
- Repeatables iOS app
- dragtable, which lives on in a jQuery plugin.
- lonely hangouts (blog post)
- My REALbasic and REALbasic Monthly pages from 1999.
Contact
Email: danvdk [at] gmail
Twitter: @danvdk
github: danvk
StackOverflow: danvk
LinkedIn: 340204755



