October 2022 Links
The benefits and limitations of Flexible Array Members
Good overview of this C99 feature.
Preserve last editing position in vim
- https://stackoverflow.com/questions/7894330/preserve-last-editing-position-in-vim
- https://github.com/vim/vim/blob/master/runtime/vimrc_example.vim
- https://github.com/vim/vim/blob/master/runtime/defaults.vim
Useful config option, and introduced me to some suggestions that Vim ships with.
WadC
Scripting language to make Doom levels. Like OpenSCAD but for Doom. Awesome.
Facts about State Machines
An insightful and interesting list of facts.
!!con
Fun conference with a bunch of ~10 minute talks and years of recordings. I found interesting:
- Learning to code with Doom - Phil Salvador
- Cursorless - Pokey Rule
- You Won’t Believe This One Weird CPU Instruction - Vaibhav Sagar
- Telling stories with traceroute - Karla Burnett
- Writing NES Games with Assembly - Christian Joudrey
- Corruption in the Data Center! TCP can fail to keep your data safe - Evan Jones
- See AppleSoft BASIC and 6502 assembly language written on an actual Apple IIc - Richard Harrington
- The Tales of the Cursed Operating Systems Textbook - Kiran Bhattaram
10 Practical Tips for Improving Your Text Layout
Potential Issues of Using a USB Powerbank as a UPS
I’m a USB power nerd so this was great. I should get a cheap scope.
Doxygen C/C++ Tutorial
The most important commands are:
@file [filename]
This should be in huge red captital letters in the actual documentation, not stuffed in a barely-accented callout box 60% of the way down the damn page.
How Wine works 101
Good overview of syscall translation.
epoll series by Graham King
I have never used epoll for more than network sockets, there were some neat finds in here.
Also shoutout to his funny/informative post Rust is also C.
Fingerprinting systems with TCP source-port selection
Saw this CVE get resolved and wrote our knowledgebase article about where we’re (not) fixing it. Interesting to see the full explanation in plain terms.
Using Netrw, vim’s builtin file explorer
I should remember this, no need for NERDtree.
Self-Hosting Guide
Ends up as a good collection of modern computing concepts and resources.
The Cult of dd
Interesting opinion about the dd
program being useless/obsolete for most people.
Feynman’s Breakthrough, Disregard Others!
Always nice to hear a Feynman anecdote.
How SNES emulators got a few pixels from complete perfection
- https://arstechnica.com/gaming/2021/06/how-snes-emulators-got-a-few-pixels-from-complete-perfection/
Every day without byuu/Near is our tragic loss. Fuck Kiwifarms.
Time is an illusion, Unix time doubly so…
Everything is a PDP-11. The rest of this blog looks good too.
VHS - Your CLI home video recorder
This is awesome!
When life gives you lemons, write better error messages
Wix sounds like a pretty good place to work.
Marek Majkowski’s I/O multiplexing series
- https://idea.popcount.org/2016-11-01-a-brief-history-of-select2/
- https://idea.popcount.org/2017-01-06-select-is-fundamentally-broken/
- https://idea.popcount.org/2017-02-20-epoll-is-fundamentally-broken-12/
- https://idea.popcount.org/2017-02-23-socket-api-thoughts/
- https://idea.popcount.org/2017-03-20-epoll-is-fundamentally-broken-22/
Marek works for Cloudflare and writes lots of good posts over on their blog too.
Funny to think that STREAMS might have won and networking would be very different!
Interesting that closing an SO_REUSEPORT
socket causes the accept backlog to be cleared too.
Further references:
- https://daniel.haxx.se/docs/poll-vs-select.html
- https://blog.cloudflare.com/the-sad-state-of-linux-socket-balancing/
How to communicate effectively as a developer
I love this. I find good writing is first-order positive in many ways too.
My Five Worst Bugs: Lessons Learned In System Design
Adam’s one of my favourite tech authors. I like the part about understanding a holistic environment.