Is there a video presentation to go along with the slides that you know of?
cckolon 8 hours ago [-]
I love these! “Not Quite the Same” sounds a lot like “The Wrong Abstraction” from my list. It’s a really important point and I’m glad to see there are more articles about it!
drunkboxer 7 hours ago [-]
Yep, I have the wrong abstraction on my list as well. There's a couple on ratfactor that really hit the same point home.
I think the lwn article on "the midlayer mistake" is somewhat the same point but to a different extreme, and in some ways libraries not frameworks too.
olives 6 hours ago [-]
Microservices
grug wonder why big brain take hardest problem, factoring system correctly, and introduce network call too
seem very confusing to grug
^ This is the best and funniest paragraph of text that I’ve read this year
Cerium 6 hours ago [-]
I'm a fan of the t-rex:
> given choice between complexity or one on one against t-rex, grug take t-rex: at least grug see t-rex
That section reminds me of The Litany Against Fear.
kristianp 11 hours ago [-]
Pleasant to hear about the Object-Relational Impedance Mismatch [1], haven't heard about that concept for a long time - maybe a decade!. The reason I like Dapper [2] is that it makes you use your own sql.
> PostGIS is a great database and its foundational data type is geography.
Hate to "well ackchyually" the author here, but I'm gonna. The foundational data type in PostGIS is not geography, but geometry. geography is geodetic layer on top of geometry. I honestly don't use geography that much because it only supports a subset of the geometry functions.
cckolon 11 hours ago [-]
Thanks for the callout! I have much more experience with geography but you’re totally right. I’ll add a note
niko323 13 hours ago [-]
The Grug Brain article is fantastic, and even better if you run it through an LLM to convert from caveman. This thing is a gem.
dwedge 13 hours ago [-]
Yeah I really struggled to read the style of writing and gave up even though I know I probably totally agree with the message
orphereus 13 hours ago [-]
Thanks for a drop of humanity in this place. I feel saner
markus_zhang 13 hours ago [-]
DDIA is great. I read and re-read the small section about LSM merge tree in the first and second edition of the book and got interested in this stuff. It is always a pleasure to read about internals.
MarkusQ 12 hours ago [-]
I personally hate YAGNI, because it so often leads to balkanized APIs that only implement the "needed" features and omit things that a reasonable person would expect because they weren't needed initially. Far better to have a clear and explicable model that is fully and consistently implemented.
hasley 37 minutes ago [-]
That is something I observed too:
When you build a tool (physical or software) or an API (web or library) it should be easy to use. The easier it is to use the higher the probability that people will use it. So, if people build a kind of rudimentary thing and say that is all you need (which may be technically correct), then they do not optimize for likelihood of adoption/usage.
sebmellen 12 hours ago [-]
Yes I agree with this. It’s all a matter of taste and interpretation at the end of the day. YAGNI has been useful for me in stopping the development of truly complex featureful work that is not needed. But you can go overkill and strip away everything that makes your application nice to use, or that makes your domain representation syntactically complete. And that’s just stupid.
goodboyjojo 3 hours ago [-]
cool list. might check these books out later
viveknathani_ 6 hours ago [-]
great reading list, but also a great career arc OP! loved skimming through your site!
http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom... https://www.parsonsmatt.org/2017/10/11/type_safety_back_and_... https://lwn.net/Articles/336262/ https://tomasp.net/blog/2015/library-frameworks/ https://ratfactor.com/cards/not-quite-the-same https://matklad.github.io/2023/11/15/push-ifs-up-and-fors-do...
The last article links here, which I enjoyed:
https://venge.net/graydon/talks/VectorizedInterpretersTalk-2...
I think the lwn article on "the midlayer mistake" is somewhat the same point but to a different extreme, and in some ways libraries not frameworks too.
grug wonder why big brain take hardest problem, factoring system correctly, and introduce network call too
seem very confusing to grug
^ This is the best and funniest paragraph of text that I’ve read this year
> given choice between complexity or one on one against t-rex, grug take t-rex: at least grug see t-rex
That section reminds me of The Litany Against Fear.
Edit "lets" -> "makes".
[1] https://en.wikipedia.org/wiki/Object%E2%80%93relational_impe...
[2] https://github.com/DapperLib/Dapper
Hate to "well ackchyually" the author here, but I'm gonna. The foundational data type in PostGIS is not geography, but geometry. geography is geodetic layer on top of geometry. I honestly don't use geography that much because it only supports a subset of the geometry functions.
When you build a tool (physical or software) or an API (web or library) it should be easy to use. The easier it is to use the higher the probability that people will use it. So, if people build a kind of rudimentary thing and say that is all you need (which may be technically correct), then they do not optimize for likelihood of adoption/usage.