Random Stuff by Simon

... because we can.

Welcome!

I'm a person. This is my site!

It's mostly about computers, but there is some other things here, too.

If you're really not into computers, you might still be interested in maps, how capitalism works or Amazon's monopolistic ways. There is also recipes for lava cake and coconut brownie.

Then, there is writings about how we are doing files wrong, several articles how network sockets could be so much better, and how TempleOS is great.

On the more practical side: some exotic ways to install OSes, how GRUB finds things, and how to reverse-engineer MIDI instruments with Wireshark.

We have an RSS feed that you can subscribe to, too! (... if you don't know what an RSS feed is... OK I still got to write that article!)

Also note that the below list of articles is admittedly fairly ugly; we're still working on that part.

Articles

Shell Scripts, Emacs and Taxes ( 2024/10/13 )
On C++ headers, part 2: including all the things ( 2024/10/06 )
Do you Ship your Entire Dev Environment ( 2024/09/29 )
On C++ headers, part 1: forward declarations ( 2024/09/22 )
Not Using Terminals Pt. 4: Quick Script Creation ( 2024/09/15 )
Life, Meaning and Time Discounting ( 2024/09/06 )
Emacs as tmux ( 2024/08/24 )
Brute Force Code Nav ( 2024/08/15 )
Bridges to Browser Islands ( 2024/08/03 )
Are Some Fields just Harder? ( 2024/07/28 )
Cars are Real Estate ( 2024/07/23 )
Letting Users Install Stuff ( 2024/07/20 )
The Unreasonable Effectiveness of Thinking in an Empty Room ( 2024/07/12 )
Recognizing the Possibility ( 2024/07/01 )
Commas are Bad ( 2024/06/29 )
Automation is Worth It ( 2024/06/20 )
Power Supplies are Underrated ( 2024/06/15 )
On Passwordless Sudo ( 2024/06/08 )
Making VMs from the Inside Out ( 2024/06/01 )
Adding a Key to Toggle Post Draft Status ( 2024/05/23 )
Imagining State in Programs ( 2024/05/18 )
Alternatives to Open Source ( 2024/05/11 )
Oddly simple GUI programs ( 2024/05/04 )
LLMs as Better Soulprints ( 2024/04/27 )
Actually Doing Things ( 2024/04/20 )
Willpower ( 2024/04/13 )
Not Using Terminals, Part 3: Scripting ( 2024/03/27 )
On Computer Speed and Culture ( 2024/03/22 )
Not Using Terminals, Part 2 ( 2024/03/15 )
Visibility ( 2024/03/05 )
Installing Services in One Line ( 2024/02/27 )
Fixing Samba Again ( 2024/02/19 )
Python REPLs anywhere ( 2024/02/15 )
Logging Into Things ( 2024/01/30 )
Bookmarks ( 2024/01/22 )
On Not Using Terminals ( 2024/01/17 )
Voice recognition with Emacs ( 2024/01/10 )
Debian Packages for Everything! ( 02/25/2023 )
Talking to your Android phone from anywhere ( 2022/07/17 )
Fancifying the Command Line with JSON ( 2022/04/17 )
Day 100 ( 2022/03/30 )
AS/400: terminals ( 2022/03/28 )
Should I support this company? ( 2022/03/25 )
Prototypes ( 2022/03/22 )
Persistence ( 2022/03/21 )
Recompiling Everything ( 2022/03/19 )
Is DST stupid? ( 2022/03/17 )
How to read IPv6 addresses ( 2022/03/13 )
Merging Lisp pathnames ( 2022/03/12 )
TCP ports should be files ( 2022/03/08 )
If Sockets had Paths ( 2022/03/08 )
Only IPv6 ( 2022/03/05 )
The 2022 Redesign ( 2022/03/03 )
The Forgotten Niceness of Paper Maps ( 2022/03/01 )
Emacs Shell Scripts ( 2022/02/27 )
Dynamic Configs for the Hammer 88 ( 2022/02/25 )
Snikket, XMPP and how ready we are ( 2022/02/22 )
How the Pinephone is Underpowered ( 2022/02/19 )
Dependencies: the Evil of Redoing Stuff, part 1 ( 2022/02/18 )
Optimizability ( 2022/02/16 )
Fancier RSS Feeds! ( 2022/02/13 )
Labels vs. Trees ( 2022/02/11 )
Web Push ( 2022/02/08 )
AS/400: Libraries ( 2022/02/05 )
Enticing but Bad Solutions ( 2022/02/02 )
Mobile, Part 2 ( 2022/01/31 )
Mobile ( 2022/01/30 )
On Making Art ( 2022/01/27 )
AS/400 Intro ( 2022/01/24 )
Idempotence ( 2022/01/22 )
The Simplicity of E-mail ( 2022/01/20 )
Lisp as a System Service ( 2022/01/17 )
Subscribing to RSS Feeds ( 2022/01/14 )
JavaStation and the Future ( 2022/01/13 )
Their Own Servers ( 2022/01/09 )
Self-Hosting, Security and the PC Era ( 2022/01/09 )
Using DNS for LAN IPs ( 2022/01/06 )
Miniflux: the experience ( 2022/01/04 )
The Desktop App Challenge ( 2022/01/02 )
Authentication vs. Sybil Attacks ( 2021/12/30 )
Mounting is Outdated ( 2021/12/28 )
Programming Languages as Interfaces ( 2021/12/26 )
Life After Facebook: what is this "Fediverse" thing anyway? ( 2021/12/24 )
My Post-Writing Workflow ( 2021/12/21 )
RSS and Polling ( 2021/12/20 )
Facebook Still Exists ( 2021/12/17 )
Why the Old Internet is Not Coming Back ( 2021/12/15 )
Hosting your Social Media Accounts (or not) ( 2021/12/13 )
Halfway Through ( 2021/12/05 )
Why 5G is Faster ( 2021/12/05 )
Simplicity as a Feature ( 2021/12/03 )
Advent of Code 2021 ( 2021/11/30 )
Possibility Bias: Why We Like APIs ( 2021/11/27 )
Users and Expectations ( 2021/11/24 )
DNS Updates ( 2021/11/20 )
On Amazon Prime ( 2021/11/14 )
Trivial Inconveniences are Underappreciated ( 2021/11/12 )
Roundtrips, pointers and IDs ( 2021/11/11 )
During a Network Outage ( 2021/11/08 )
More People, Worse Product? ( 2021/10/27 )
Syntax is Overrated ( 2021/10/25 )
Adding an RSS feed ( 2021/10/22 )
Novation Circuit: backing it up ( 2021/10/16 )
QEMU is awesome ( 2021/10/15 )
Out to Get You ( 2021/10/12 )
Sharing File on the Internet ( 2021/10/09 )
App vs. Service Installs ( 2021/09/28 )
Web Vitals and Over-Optimism ( 2021/09/08 )
Why are TUI apps better? ( 2021/09/05 )
Memory mapped FS ( 2021/09/01 )
TempleOS: 70% Lisp Machine ( 2021/08/29 )
Port numbers and SRV records ( 2021/08/26 )
UNIX and long-running processes ( 2021/08/23 )
Bureaucracy by Machines ( 2021/08/15 )
Code is just Partial Copies of Human Souls ( 2021/08/15 )
Elon's 5 step process for Engineering Stuff ( 2021/08/09 )
Emacs OS Mobile ( 2021/08/06 )
On Discord and Openness ( 2021/08/01 )
About Browser Tabs ( 2021/07/30 )
Ways Stuff can Work ( 2021/07/27 )
SSL and socat ( 2021/07/24 )
Windows Registry: a bad idea? ( 2021/07/20 )
UNIX the Language ( 2021/07/17 )
An Interactive Init System ( 2021/07/10 )
Kerberos with SSH, Part 2: debugging ( 2021/07/03 )
Fictional Characters are APIs ( 2021/07/02 )
Kerberos with SSH, Part 1 ( 2021/06/29 )
Mobile IP ( 2021/06/21 )
Where GRUB finds things ( 2021/06/12 )
The Capitalism Delta ( 2021/05/31 )
Pipes over Remote File Systems ( 2021/05/31 )
Adding a sidebar ( 2021/05/14 )
Self Signed Certs ( 2021/05/01 )
The Unix Philosophy from another point of view ( 2021/04/25 )
Binary is Fun ( 2021/04/21 )
The evolution of OS installs ( 2021/04/15 )
Named Pipes ( 2021/04/14 )
Common Lisp for shell scripting ( 2021/04/11 )
Control ( 2021/04/08 )
Sockets: part 1 ( 2021/04/04 )
We Are Doing Files Wrong ( 2021/01/29 )
WebDAV: the Awesome File Sharing Method No One Is Using ( 2021/01/29 )
HTML in HTML Extreme Edition ( 2020/11/21 )
Windows on Linux ( 2020/10/01 )
Keto Coconut Brownie ( 2020/08/15 )
An exploration of SBCL internals ( 2020/07/10 )
IndieAuth: an intuitive explanation ( 2020/06/21 )
Recording video from a TV tuner card ( 2020/06/06 )
Koronavírus — A kalapács és a tánc, 2. rész ( 2020/03/21 )

More articles

(... with possible overlap with the above, but fancier links!)
How to subscribe to RSS feeds in Miniflux, just with a few clicks. (#67)
JavaStation and how we were already running things in a browser as of 1996ish. (#66)
Self-hosting, security and how this compares to the PC Era. (#65)
On Moxie's opinion on how people never want to run their own servers. (#64)
How to give names to machines on your LAN without messing with local DNS and DHCP. (#63)
Miniflux and how RSS readers are a different experience from e.g. Facebook. (#62)
A challenge to use desktop apps for everything (#61)
How Google / FB logins or phone numbers are anti-sybil services which we could do better (#60)
The concept of mounting file systems and how it's not too user friendly (#59)
How programming languages are also about talking to libraries and why bindings are evil (#58)
A short and incomplete intro to the Fediverse (#57)
How I write and publish posts, mostly by hand (#56)
Why RSS is called that and why polling makes a bit more sense, given its history. (#55)
I did end up using Facebook a bit. First impressions. (#54)
Why the old internet, with all the personal websites, is not coming back. (#53)
Why federated social media accounts should be more portable. (#52)
Why 5G is faster (I don't think it's just the tech itself) (#51)
Already halfway through 100 blog posts! (with a pretty graph.) (#50)
Simplicity is a feature but adding code will not get you there. Also, airplanes. (#49)
Advent of Code keeps being cool in 2021, too! (#48)
Why having access to APIs feels cooler to programmers than it should (#47)
A random snippet about how we probably shouldn't think about users (#46)
Why is it so hard to change DNS records automatically? (#45)
On Amazon Prime and the exact ways it's evil. (#44)
VPNs and how you never end up doing things that are trivially inconvenient (#43)
How to make low-latency RPCs by passing in IDs instead of returning them. (#42)
Some thoughts during a network outage. (#41)
What if more people result in not just slower progress but in an irreparably worse product? (#40)
Syntax is overrated: just let computers have their trees! (#39)
Adding an RSS feed, with obnoxiously minimal added complexity (#38)
Backing up a MIDI instrument even if their web thing is broken... by looking at USB traffic! (#37)
QEMU is awesome (#36)
Big corporations are out to get you; they're also getting better at it. (#35)
Why is it so hard to share a few gigabytes over the internet? (#34)
Why is it so hard to install web services (vs. apps)? (#33)
Turns out I can make an entirely static site that is still slow. (#32)
Why TUI apps are popular and nice, despite their many disadvantages (#31)
Let's memory-map an entire file system. (#30)
TempleOS, and how it kinda comes close to Lisp Machines in terms of flexibility. (#29)
SRV records, and how, yet again, everything is worse than it could have been. (#28)
UNIX, long-running processes and message pumps. (#27)
Code is Literal Magic, as in: it's a collection of soulprints of programmers. (#26)
Elon on engineering: his 5-step process, with some quotes. (#25)
Emacs as a mobile OS (#24)
On Discord and Openness (#23)
Vertical tabs: they're nicer than the standard ones (#22)
Designing stuff that works: why simplicity is nice (#21)
SSL and socat: a slightly broken SSH clone (#20)
Was the Windows Registry a bad idea? (#19)
UNIX the Language. (#18)
How init systems should be simpler to use. (#17)
SSH with Kerberos, part 2 (the debugging part). (#16)
Harry Potter is an API. (#15)
How to set up SSH with Kerberos. (#14)
IP addresses, IP mobility and sockets. (#13)
GRUB and where it finds things. (#12)
Why forwarding pipes over file systems should be a thing. (#11)
Capitalism and how it's about niceness differentials, not making the world better. (#10)
Adding a sidebar statically that auto-updates... kinda. (#9)
Self-signed certs: three one-liners (#8)
On how the Unix Philosophy is not a reason but a consequence (#7)
Binary formats are not as evil as they sound like (#6)
Weird ways of installing an OS (including one where you don't even switch on the computer) (#5)
Named pipes on Windows: are they weirder than Unix domain sockets? (#4)
Writing "shell" scripts in Common Lisp might be a good idea (#3)
Free Software in practice: will you actually sit down and modify things? (#2)
What if files were like sockets: a speculative dystopia (#1)