"If you’re thinking without writing, you only think you’re thinking."
6,105 karma · joined October 5, 2007
Formerly the founding CTO of Parse.ly. Coding in: Python, JavaScript, Zig. Pleased to be a Pythonista and UNIX lover.
Parse.ly was acquired by Automattic (creators of WordPress.com) in February 2021; more here: https://www.techmeme.com/210208/p12#a210208p12
My essays & technical blog: https://amontalenti.com
My AngelList profile: https://angel.co/p/amontalenti
My occasional tweets: https://twitter.com/amontalenti
"If you’re thinking without writing, you only think you’re thinking."
Best for slides that are just bullet points, full-slide images, and code. Especially code. Less good if you have a lot of images or need to do your own styles or layout.
- two belts and two Clojure logo belt buckles
- same code repeated on the steps (odd artistic choice if made by the artist)
- the seemingly out-of-place scarf, stylistically its color/pattern doesn't seem to fit
Either way, it seems like an homage to this Indiana Jones and the Temple of Doom poster:
https://www.slantmagazine.com/wp-content/uploads/2008/05/tem...
Then I found an HN comment I wrote a few years ago that confirmed this:
“[...] I remember that day pretty clearly because in the same lightning talk session, Solomon Hykes introduced the Python community to docker, while still working on dotCloud. This is what I think might have been the earliest public and recorded tech talk on the subject:”
YouTube link: https://youtu.be/1vui-LupKJI?t=1579
Note: starts at t=1579, which is 26:19.
Just being pedantic though. That’s about 13 years ago. The lightning talk is fun as a bit of computing history.
(Edit: as I was digging through the paper, they do cite this YouTube presentation, or a copy of it anyway, in the footnotes. And they refer to a 2013 release. Perhaps there was a multi-year delay between the paper being submitted to ACM with this title and it being published. Again, just being pedantic!)
When I was in high school, I played a lot of UO. It was actually the last computer/video game I ever played regularly, because I convinced myself as a teenager that I was addicted to it and needed to drop it "cold turkey" to focus on academics and extracurriculars.
(A sign of the times for the late-1990s nostalgics: I sold my UO account on eBay for a few thousand dollars and an MTG Mox Pearl. I owned a bunch of virtual real estate, e.g. a UO tower on an island only accessible via moongate. The high bidder "threw in" a Mox Pearl as a kind of informal escrow, to make sure I completed the account transfer after getting paid.)
Before I dropped UO from my life, I discovered UOX. I was learning C++ and UOX was a great way for me to practice my emerging C++ skills.
My clearest memory of feeling the power of programming was when I created a mod for my UOX server that allowed me to drop an unlimited number of interconnected and color-coded moongates all over my server, creating something akin to the feeling of the game "Portal," but long before Valve released "Portal."
It was after having a blast with UOX that I decided to dig into programming much more. Somehow, the UOX server mod made programming feel "real" for me in the way my prior forays into coding simply didn't.
That led to me learning Python -- as a way of toying around with the Slackware Linux server I had in my basement. I left C++ behind, but it was an important stepping stone for me. Now, decades later, learning Python was probably the single most important decision of my life in childhood. (See e.g. https://amontalenti.com/about)
UOX is such a cool project. UO was a really ahead-of-its time internet game, as well. Great memories. Thank you.
https://www.apple.com/ipad/compare/?modelList=ipad-air-11-m4...
The quick summary:
- iPad Air has 2 stereo speakers, rather than 4 speakers as Pro models
- Touch ID in top button rather than FaceID as Pro models
- iPad Air is slightly heavier (???) than either Pro model
- screen of iPad Air is a bit less bright
- no nano-texture display option on iPad Air
- no true Thunderbolt connectivity through USB-C port on iPad Air
- all devices can use same Apple Pencil Pro...
- ... but the iPad Air takes a special Magic Keyboard (supposedly due to form factor)
- camera array is slightly different on iPad Air (no ProRes video)
https://bits.ashleyblewer.com/halt-and-catch-fire-syllabus/
It allows people to form a "watch club" around the show, similar to a book club, and have plenty of extra reading materials to understand the different tech eras covered in the show.
I think this show -- combined with the documentary "General Magic" and the book "Fire in the Valley" -- is a great way to be immersed in the techno-optimism of the early tech industry around the time of the desktop PC revolution and early internet.
For me, that sort of techno-optimism has stuck with me even if modern tech has more dystopian elements with which one has to grapple. It is still an amazing industry, all things considered.
p.s. total aside that Apple TV sells a digital "box set" of this show for a pretty low price these days. I am usually not a fan of "buying" a show from a streaming service but might be worth it in this case since it's around $16 USD for every episode across its 4 seasons, Apple has a good track record honoring digital purchases, and watching the show is a commitment.
For me, Goyo was the plugin that always matched what I wanted vim to become when I was in "prose writing mode."
https://github.com/junegunn/goyo.vim
I combine with limelight.vim:
https://github.com/junegunn/limelight.vim
This partially simulates the experience/UX of the product iA Writer on macOS or iPad, which is my favorite prose editor, but is proprietary software and doesn't work on Linux.
As others mentioned, when in prose writing mode you can also flip on a handful of vim options, I save these as hotkeys in my vimrc. For example, spell checking and line wrapping.
In case you're curious:
-Donald Knuth
https://amontalenti.com/feed - rss+atom feed
https://amontalenti.com/archive - full archive of posts/essays
https://amontalenti.com/about - info about me
See GitHub PR here: https://github.com/hnpwd/hnpwd.github.io/pull/32
PX is a daily developer tool that helps backend engineers go from working code on a laptop to deployed code in a freshly-built cloud cluster -- all within seconds.
In December, I wrote up a launch blog post:
https://amontalenti.com/2025/12/11/px-launch-overview
We also launched the PX website, https://px.app/, and we wrote up a basic developer quick start guide @ https://px.app/docs/quick-start.html
Prior to PX, I was the founding CTO of Parse.ly, a real-time web analytics startup that grew to be installed on 12,000+ high-traffic sites and had terabytes of daily analytics data flowing through it. PX stems from my experience as a startup CTO who eventually ran large distributed systems on AWS and GCP.
PX is cloud independent, programming language agnostic, and open source friendly. PX is, in short, the backend development tool that I always wished my team could have. We're having a blast building it and we're excited to give back some power to backend developers so they can wield cloud hardware resources with open source tech, rather than locking in to proprietary cloud APIs.
The current version of the CLI is focused on one-off (or batch) workloads on GCP, but on the immediate roadmap: cron-style scheduled jobs; a v1 of our monitoring/debugging/admin dashboard (already looking good in internal builds!); and, formal support for the other 3 clouds (that is: AWS, DigitalOcean, Azure). We also have a lot more documentation to write and a lot more examples to post, but you have to start somewhere! The launch blog post covers some of the history and inspiration.
Simple and Universal: A History of Plain Text, and Why It Matters
https://amontalenti.com/2016/06/11/simple-and-universal-a-hi...
You might enjoy it!
The concept of time dilation explored in the article is fascinating. But I think it's possible the author has some wishful thinking about how experience and memory works. Or perhaps is using a plausible formulation as a reverse justification for his own life choices.
Here is how my childhood memories feel to me. Ages 0-14 are like an opaque tunnel, through which my brain and developing body was shot, like a cannonball, in an instant. I have some fragmentary memories of having gone through that tunnel, but they are mere fragment. My 14 year old self, somehow and miraculously, ended up on the other side of that tunnel healthy and of sound mind.
Age 14 is around where something resembling "the recorded video of my early memory" begins. I have clear memory of various episodes from ages 14-18, and this was also a period of intense individual development for me. This was where all my inclinations, passions, and life goals started to come into focus. That turned into full-blown adult individuation in college, where my goal was to pull away entirely from societal/parental expectations and live my own life. In other words: pretty much everything I associate with my adult character had its seed-like start in my age 14-18 period, exactly the period where I was pulling away from my developmental dependence on my parents.
My childhood before then is a blur. That might be a depressing thought for parents -- that this kind of blurred and fragmentary memory of childhood is possible, given that parents often describe this period as one where they are "making family memories" -- but I don't think I'm the only one. Importantly: this doesn’t make early parenting meaningless. Good parenting is ethically and developmentally important even when it doesn’t leave the child with later-retrievable episodic memories. But I don't think the point of parenting is to create said memories. It's to create a healthy child who can develop and individuate on their own in adulthood.
The article talks a lot about childlike wonder, and seeking that in adulthood. I'm all for that. But what's strange is that OP seems to believe the only place to find that childlike wonder is in parenting of your own children. I am sure parenting can be one such way to regain childlike wonder, but surely not the only one. People can reclaim their childlike wonder in sport, art, hobby, play, and travel, among other things. What's more, I know many parents who haven't the slightest bit of childlike wonder when they interact with their children. Or any other children in their family. So I'm not sure it comes as naturally to everyone as OP seems to think it does.
Two adult thinkers on how adult humans spend their time that have interesting thoughts on childlike play are John Cleese and Alan Watts. Cleese discusses it in the context of creativity in his wonderful lecture, summarized here:
https://www.themarginalian.org/2012/04/12/john-cleese-on-cre...
And Watts had this to say about it: "... if you don't have a room in your life for the playful, life's not worth living. 'All work and no play makes Jack a dull boy.' But if the only reason for which Jack plays is that he can work better afterwards, he's not really playing. He's just playing because it's good for him! Well, he's not playing at all! You have to be able to cultivate an attitude to life where you're not trying to get anything out of it. You pick up a pebble on the beach and look at it: beautiful! Don't try and get a sermon out of it."
First, I took photographs of all my physical books simply by photographing the bookshelves such that the book spines were visible.
Then passed the photographs with a prompt akin to, "These are photographs of bookshelves. Create a table of book title and book author based on the spines of the books in these photographed shelves." ChatGPT4’s vision model handled this no problem with pretty high accuracy.
I then vibe-coded a Python program with ChatGPT4 to use the Google Books API (an API key for that is free) to generate a table, and then a CSV, of: book title, book author, and isbn13. Google Books API lets you look up an ISBN based on other metadata like title and author easily.
Finally, I uploaded the enriched CSV into a free account of https://libib.com. This is a free SaaS that creates a digital bookshelf and it can import books en masse if you have their ISBNs. You can see the result of this here for my bookshelf:
https://www.libib.com/u/freenode-fr33n0d3
There are some nice titles in there for HN readers! My admin app for Libib (the one at https://libib.com) is more full-featured than the above public website showcases. It's basically software for running small lending libraries. But, in my case, the “lending library” is just my office’s physical bookshelf.
I also added a Libib collection there that is a sync of my Goodreads history, since I read way more Kindle books than physical books these days. That was a similarly vibe-coded project. But easier since Goodreads can export your book collection, including isbn13, to a file.
As for my actual physical bookshelf, it is more a collection of books I either prefer in print, or that are old, or out-of-print, or pre-digital & never-digitized.
I liked the Libib software so much I end up donating to it every year. I originally discovered it because it is used for Recurse Center’s lending library in the Recurse Center space in Brooklyn, NY (https://recurse.com).
Also, Libib has a Android, iPhoneOS, and iPadOS apps -- these are very basic but they do allow you to add new books simply by scanning their ISBN barcode, which is quite handy when I pick up new items.
I did enjoy reading the OP writeup, it’s a fun idea to vibe-code the actual digital bookshelf app, as well!
"In the 80s and 90s (and before), it was mainly academics working in the public interest, and hobbyist hackers. Think Tim Berners-Lee, Vint Cerf, IETF for web/internet standards, or Dave Winer with RSS. In the 00s onward, it was well-funded corporations and the engineers who worked for them. Think Google. So from the IETF, you have the email protocol standards, with the assumption everyone will run their own servers. But from Google, you get Gmail.
[The web] created a whole new mechanism for user comfort with proprietary fully-hosted software, e.g. Google Docs. This also sidelined many of the efforts to keep user-facing software open source. Such that even among the users who would be most receptive to a push for open protocols and open source software, you have strange compromises like GitHub: a platform that is built atop an open source piece of desktop software (git) and an open source storage format meant to be decentralized (git repo), but which is nonetheless 100% proprietary and centralized (e.g. GitHub.com repo hosting and GitHub Issues)." From: https://news.ycombinator.com/item?id=42760298
I still think there’d be some sort of mental hurdle for me to consider using it for a project of the kinds described on WeUseElixir (vs my go-to language of Python).
But simply toying around with a concrete example of a concrete “word count” program scaled up to multi-core and multi-node made me “get” Elixir a lot more.
Also, I highly recommend this podcast interview with the author of “Elixir in Action.” He does a really nice job describing what makes Erlang and Elixir unique vs other commonly used backend programming languages.
https://se-radio.net/2018/08/se-radio-336-sasa-juric-on-elix...
I am a hobbyist nature photographer and it helped me capture some incredible moments. Though I have a Canon R7, the Canon 5d3 is my favorite camera because I prefer the feel of DSLR optical viewfinders when viewing wildlife subjects, and I prefer certain Canon EF lenses.
More here:
https://amontalenti.com/photos
When I hang out with programmer friends and demo Magic Lantern to them, they are always blown away.
Just to provide another data point here... that C is a little easier to pick up, today, than it was in the 1990s or 2000s, when all you had was the K&R C book and a Linux shell. I regularly recommend CS50x to newcomers to programming via a guide I wrote up as a GitHub gist. I took the CS50x course myself in 2020 (just to refresh my own memory of C after years of not using it that much), and it is very high quality.
See this comment for more info:
Might be a tough sell for the volunteer open source community ("linux & friends") to work on such an alternative "locked down" computing experience. Free and open source software is usually more focused on unlocking use cases, not locking them up.
That all said, I basically consider macOS to be a locked down computing experience. So that's my solution for older people.
It's not a perfect solution but the Apple closed ecosystem is better designed for the limited use cases of the elderly. Rely on iCloud and built-in Apple approaches to data security as much as possible.
For example, an iMac and an iPhone can get all "adulting" use cases done, including typing/receiving emails, printing documents, online banking, government services, and so on. Apple Passwords plus Face ID helps to simplify password-based security. My biggest issue is getting TOTP-based two-factor adopted. Apple Passwords supports this but I usually have to do remote tech support to get it set up initially. It's also annoying that right now, the current generation of iMacs don't support FaceID, because that would simplify authentication across the two primary platforms (desktop/mobile).
I would never use this setup myself since I like to run F/OSS everywhere as much as possible. But I am realistic about tech expectations for the elderly who just want to live their life with minimal investment in learning about data/software security.
But you're right, along with other commenters, that it's dangerous for society to rely on a monopolist technocorporate overlord (or a pair of overlords forming a de facto duopoly) for the basic administrative tasks of adult living and lawful citizenship.