D

Dan Vanderkam

danvk.org · Personal blog · on HN since 2008

Dan Vanderkam, a software engineer, writes about projects such as the Dygraphs charting library, OCR, Boggle solving, and the OldNYC photo map.

What HN saysHN commenters link his Dygraphs interactive charts, his Ocropus OCR training posts, and his Nebulabrot post as an example suited to mapreduce.
27HN people shared it
16linked it in comments
19stories submitted
364story points
7 months agolast shared
2008people per year2026

Most-shared posts

  1. 1
    Dygraphs: Better Time Series Graphs
    6 people · 181 points · first shared 2009 · 36 comments on HN
  2. 2
    Training an Ocropus OCR model
    5 people · 4 points · first shared 2015 · discussion on HN
  3. 3
    Extracting text from an image using Ocropus
    3 people · 63 points · first shared 2015 · 10 comments on HN
  4. 4
    After 20 years, the globally optimal Boggle board
    2 people · 78 points · first shared 2025 · 23 comments on HN
  5. 5
    AI helps add 10k more photos to OldNYC
    2 people · 3 points · first shared 2026 · discussion on HN
  6. 6
    Nebulabrot
    2 people · first shared 2010
  7. 7
    Breaking 3×3 Boggle
    1 people · 7 points · first shared 2009 · discussion on HN
  8. 8
  9. 9
  10. 10
    Arbitrary Precision Hex Dec in 65 lines of JS
    1 people · 3 points · first shared 2012 · discussion on HN
  11. 11
  12. 12
  13. 13
    Visually reorder table columns
    1 people · 2 points · first shared 2008 · discussion on HN
  14. 14
    Sunrise/Sunset Onebox (a Google engineer's story)
    1 people · 2 points · first shared 2010 · discussion on HN
  15. 15
    Boggle Roundup: My Fifteen Minutes of Fame
    1 people · 2 points · first shared 2025 · discussion on HN

What HN people wrote when they linked it

dalerus · 2016-08-09
Wow, that's an amazing level of dedication to mapping this all out. Looking at the about page, it looks like an good exercise in machine learning. The developer talks about the process of generating the test data here: http://www.danvk.org/wp/2013-04-20/generating-training-data/
danvk · 2015-01-19
You'll enjoy my follow-up post then, which talks about training: http://www.danvk.org/2015/01/11/training-an-ocropus-ocr-model.html
moultano · 2011-01-14
Here's a great example of something that is most natural in mapreduce: http://www.danvk.org/wp/2007-04-06/nebulabrot/
gregable · 2010-10-29
This one is pretty fun: http://danvk.org/dygraphs/ - the best part IMO is that the charts are interactive.
riordan · 2015-06-25
Yep. Back when I was at NYPL Labs[0], we developed a bit of an obsession with OCR. It turns out that so much of it depends on the context of the documents, original scan quality (unpaper and deskewing be damned), typography, how much handwriting you're willing to suffer (can someone please pick up the work of applying Convnets to large handwriting corpora that aren't just MNIST?). A lot of this comes down to how much time you're willing to put into it to get it up and running and if you're willing to put in any effort to additionally train/refine a model. (ps all the elements I'm about to mention here have been mentioned throughout this thread. I'm just providing a bit more context and bringing what I know together). _________________ Gotta have something now: Tesseract Not saying it's "bad" but it ain't as great as you want. Bindings for every language, lots of configs, documented well enough that it's 80% of the suggestions here. For what it is, it's a damn miracle. Most languages and alphabets and lots of kinds of fonts likely start giving you results somewhere between 80% and the Uncanny Valley immediately. You also get a pretty good Layout Analysis engine [1] for if you're working with complete pages of text. The existing models it ships with are robust, but if you want to get better outputs, retraining it is a real pain (you have to segment on a character-by-character basis). You're better off trying to apply a general preprocessing to clean the image…
mapmeld · 2026-04-13
Sounds like a combination of 'can it be geocoded?' and 'is their location precise enough?' There is some progress on resolving human-written locations in cities ( https://www.danvk.org/2026/03/08/oldnyc-updates.html ) but I imagine once you lose reference points, '100 feet into Golden Gate Park...' would be interpretable but not possible to fix to one point.
amiga386 · 2025-05-25
That would only be if the dice order didn't matter. Multiply by 16! for the number of ways you can place your rolled dice in the grid. Then you find that 26^16 is less than 6^16*16! https://www.danvk.org/wp/2007-08-02/how-many-boggle-boards-are-there/
smcin · 2025-05-24
His blog post announcing it: https://www.danvk.org/2025/04/23/boggle-solved.html FT article: https://archive.ph/siaAO His blog: https://www.danvk.org/blog.html > Driven “by the thrill of discovery”, Vanderkam has searched for this board, essentially alone, since 2004. He would scrape together computing time on Google’s hardware for heavy Boggle computation, all along documenting his efforts on his blog. > “As far as I can tell, I’m the only person who is actually interested in this problem,” Vanderkam said.
roywiggins · 2020-06-26
Finally someone's instantiated something like Vernor Vinge's "evocation" idea, quoted here: https://www.danvk.org/wp/2014-02-10/vernor-vinge-on-video-calls/index.…
jiaweihli · 2015-12-16
Have you looked into ocropy[0]? Here's a nice intro[1] that later talks about how it achieves higher accuracy using an LSTM model[2]. [0] https://github.com/tmbdev/ocropy [1] http://www.danvk.org/2015/01/09/extracting-text-from-an-image-using-oc… [2] http://www.danvk.org/2015/01/11/training-an-ocropus-ocr-model.html
ggrot · 2010-07-23
If you like Buddhabrot, a friend of mine used MapReduce to create a high-res image of Buddhabrot's cousin: Nebulabrot. Kinda fun. How it was done: http://scienceblogs.com/goodmath/2008/01/databases_are_hammers_mapredu… Images: http://www.danvk.org/wp/2007-04-06/nebulabrot/
jluxenberg · 2009-12-22
No mention of dygraphs either, although it is only for time-series data. http://danvk.org/dygraphs/

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close