I Don't Like Notebooks: https://docs.google.com/presentation/d/1n2RlMdmv1p25Xy5thJUhkKGvjtV-dkAIsUXP-AL4ffI/preview?slide=id.g362da58057_0_1
A good discussion of the limitations of Jupyter. It's a challenging design space: you want a helpful code sandbox without reinventing the IDE.
Related Posts
I'm a huge fan of Swift's 'Error Handling Rationale' design document: https://github.com/swiftlang/swift/blob/9315673c003875158852579bd1f33480cdec5461/docs/ErrorHandlingRationale.md#fundamentals
It carefully defines terminology and compares with other languages, so you can understand Swift's position and preference in the design space.
Assertions are a surprisingly nuanced design space. In a test, if I assert `x < y`, I really want to see the values of x and y when it fails.
Do you define an API for every possible predicate (Python's assertLess, expect.js) or try to support the native syntax (c.f. pytest)?
The word "agent" is so overloaded in the AI space.
Sometimes it means a sophisticated interaction system, but other times it just means API.
I think it's partly a sign of how new the space is. We don't have consensus on the best way to use these systems yet.