Links for September 2023
Sun Oct 01 2023E.W.Ayers
Vitalik Buterin: What do I think about biometric proof of personhood
1. Zig and 'Data Oriented Design'
One of the greatest joys in life is learning about a new programming language. Some articles about Zig.
Buzz is a managed programming language whose compiler is written in Zig. Looks like a good reference.
I'm preparing a longer post on 'Data-Oriented design'. Here are some highlights from my reading for it:
2. My month in databases
MobX -- [todo] get an example of the auto-run function working, then do an example with react where you wrap the component in an obsever. Then look at 'atoms'. An atom is a thing that you can call 'I am now observing you' on.
EdgeDB: type-safe kindred spirits is about how awful the type-safety of SQL is. I particularly enjoyed the catalogue of stupid ways in which
NULL
values break everything.
3. Products
3.1. Zed
I've been using the Zed editor for a few months, I like
the speed, vscode becomes really laggy even on my new laptop: I've observed seconds of delay from pressing keys to text appearing in vscode.
clean ui
missing features keep me bouncing back to vscode:
no block comment toggle
no kakoune bindings
no debugger
it looks like they are trying to be an LLM company as well and adding chat windows to everything.
I don't think the UI will be clean for long: I can already see it getting cluttered as they add new features.
What's the endgame for Zed? VSCode reimplemented in Rust? No, they are pivoting to be much more LLMey. They just released a Bloop-like semantic search feature. So going more for the 'future of coding' angle.
3.2. Fantasy Retro Consoles
pico-8 is a fantasy retro console. I enjoyed this supercut of games for it.
Clockwork make adorable retro-futurist hacker hardware. Take my money. DevTerm (Review), GameShell, uConsole.
Omg there is a whole world of fantasy retro hardware:
3.3. My dream phone
I would love a fantasy-retro pixel-art phone. The main thing would be having a simplified screen to save battery and to simplify the graphics.
Of course, this will remain a dream because there is no way my banking, messaging, maps, travel apps will ever support this. These don't have open APIs so I can't write my own retro clients for them.
The Light Phone might be an option, but the design doesn't excite me, and it's supposed to be a supplement to your main 'cocaine phone'.
What draws me to these things? Part of it is nostalgia: I always desperately wanted a gameboy as a child. Another part is I feel modern apps and websites are worse than the retro equivalents I grew up with.
attention economy race-to-the-bottom: modern apps and web-browsing means
relentless popups: "sign up for our mailing list"; "are you enjoying the app?"; multi-page cookie notices; content fading away and "sign in to read more"
microtransactions: completely ruined games
multi-second-long spinners to show miniscule amounts of text.
apps using notifications as an advertising channel
digging through handburger menus
waiting for the website's trackers, hotjars and social features to load
100% CPU from reading a message in Slack
websites pretend to be minimalist, but are obese.
Google is getting worse: top links are all SEO'd contentless pseudo-articles.
post-bootstrap websites look so anodyne. I am so bored with these flat, rounded rectangle, margin-heavy designs.
Similarly, corporate artstyles make me feel dead inside.
Meanwhile, these ramshackle retro apps load instantaneously. They are thoughtfully designed, because they are constrained to getting all content and UI into a chunky pixel grid and have to carefully craft the UI. They are not interested in tracking you or making money so they just show the content.
I know that inescapable economics has driven us here. I yearn for the time when app designers and users were on the same team.
To be fair:
collaborative, multiplayer editing like Figma, Google Docs etc is great
unicode emojis are great
I haven't had a sound, network or graphics driver issue in years
I can just plug peripherals in to my devices and they will work
cloud storage, when done right, is great
3.4. New phone
I just got a Samsung Galaxy Flip 5. The hardware is incredible. It feels like I'm in the future.
Android is good, I don't miss iOS. The main problem is that the OS is having an identity crisis about whether it is Google or Samsung. This manifests as confusing behaviour:
There are two 'store' apps: Galaxy store and Play store. They seem to have some intersection in the apps available but idk.
Some of the apps even have the same name, there are two "Calendar" and two "Messages" apps.
Only the Samsung apps work on the cover screen, so I have to use the samsung calendar (which is awful compared to Google calendar).
My gym card only seems to be addable to Google Wallet, but for everything else I use Samsung wallet because it works when the phone is folded. so now I have two wallet apps.
'Bixby' and 'Google Assistant' are fighting for dominance in my phone. Google obvs is superior software, but I can't figure out how to get the google one to read out notifications.
Each of these duplicate apps wants to send you notifications, so you get 2× notifications for everything. I had to turn off the Google calendar notifs. But now whenever I open Google calendar I have to dismiss a modal asking to turn on notifications omg. Apps on android seem to be more naggy about asking for permissions.
The only good thing about the Samsung apps is they work better with the cover screen. Apart from that they are cringey me-too features that are worse than the Google and apple equivalents. I wish they had just stuck to the hardware, working with Google on the software.
All the builtin apps are notification trigger-happy, there are 3 different apps trying to notify me about the weather. Apps advertising their functionality through notifications. It's so grim grinding through notification settings to make it stop.