, 11 tweets, 2 min read Read on Twitter
1/ I recently read through the "I Don't Like Notebooks" slides. news.ycombinator.com/item?id=178567… My thoughts
2/ @joelgrus raises shortcomings of notebook-driven development, things like "Untitled24.ipynb", poor modularity, bad habits, etc.
3/ and yet, he completely misses the point of why notebooks have unlocked so much productivity in data science, ML. Notebooks are the only IDEs that support interactive visualization out of the box. I always code visualization pipelines in notebooks before transferring to libs
4/ In college I spent 3 weeks building a nice OOP abstraction for a raytracer and spent spent the whole time fighting compiler bugs. The night before the deadline I re-implemented everything in a single CPP file.
5/ Nowadays, all my personal projects start out as Jupyter notebooks. At work things are a bit trickier, but my ideal: 95% of my development time is spent in notebooks, and 5% spent copying shared code from notebooks to infrastructure.
6/ As a researcher who also builds research infra, I think that SWEs underestimate how disposable code is, and spend an inordinate amount of time designing over-generalized abstractions. A common mistake in AI field is to invest a quarter building infra for algos that don't work.
7/ Notebooks force you to "do things that don't scale" (algo dev+debug, science), and ignore the things that don't (file naming, directory organization, dependency management)
8/ Research engineering is tricky because one must figure out what to build before scaling it up. TL;DR - I REALLY LIKE NOTEBOOKS
9/ Yes, losing track of cell order to run code in is frustrating. But this "hackery" enables rapid prototyping that would not be possible otherwise! Like a super-powered terminal. And it takes all of 2 minutes to clean up a notebook so it can be run top-to-bottom, self-contained
10/ Last but not least, criticizing notebooks for "Untitled24.ipynb" is like criticizing a Word user for naming their manuscript "sdfsad_final_final.docx".
Totally inconsequential to the work that actually matters.
end/ Thank you for coming to my TED talk
Missing some Tweet in this thread?
You can try to force a refresh.

Like this thread? Get email updates or save it to PDF!

Subscribe to Eric Jang
Profile picture

Get real-time email alerts when new unrolls are available from this author!

This content may be removed anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Follow Us on Twitter!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just three indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3.00/month or $30.00/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!