The Curious Engineer

All blogs / Essays / personal

Simon Safar

simonsafar.com

All recent entries from simonsafar.com

Essays / personalAI / MLSoftware / engineering practice

Posts
178 from 18 Jul 2019 to 4 Oct 2026
Posting
monthly (6 in the last year)
Kind
personal blog
Feed
https://simonsafar.com/index.xml

2026 5

  1. Your Phone Is Not Your Computer
  2. On the Unhideable Excel Upsell Button
  3. Making AI Part of Us
  4. Claude and Taxes
  5. Evolution vs. Alignment

2025 24

  1. So I Wrote A Book
  2. Double Pretend It's Real
  3. Living More Like Humans
  4. Logarithmic Hedonism
  5. How to Build the Evil Superintelligence out of the Book
  6. Spaces for Humans
  7. You Can Run a DNS Server
  8. Are LLMs Partial Lookup Tables?
  9. Freedom to Remove Features
  10. PATH should be a system call
  11. Error Handling and If Statements
  12. Just Throw It Into Postgres
  13. Writing Code is a Conversation
  14. Slurping Data Quickly into Postgres
  15. Why does JSON have commas?
  16. Freedom of Navigation
  17. Standing in Line Is a Coordination Problem
  18. Cloudless Lights
  19. On Finishing Blog Posts
  20. Writing HTML in Markdown but actually not
  21. Against Against Windows
  22. Why Passwords Still Even
  23. You can Actually Live in a Sci-fi Movie
  24. Shell Scripts, Emacs and Taxes

2024 37

  1. On C++ headers, part 2: including all the things
  2. Do you Ship your Entire Dev Environment
  3. On C++ headers, part 1: forward declarations
  4. Not Using Terminals Pt. 4: Quick Script Creation
  5. Life, Meaning and Time Discounting
  6. Emacs as tmux
  7. Brute Force Code Nav
  8. Bridges to Browser Islands
  9. Are Some Fields just Harder?
  10. Cars are Real Estate
  11. Letting Users Install Stuff
  12. The Unreasonable Effectiveness of Thinking in an Empty Room
  13. Recognizing the Possibility
  14. Commas are Bad
  15. Automation is Worth It
  16. Power Supplies are Underrated
  17. On Passwordless Sudo
  18. Making VMs from the Inside Out
  19. Adding a Key to Toggle Post Draft Status
  20. Imagining State in Programs
  21. Alternatives to Open Source
  22. Oddly simple GUI programs
  23. LLMs as Better Soulprints
  24. Actually Doing Things
  25. Willpower
  26. Not Using Terminals, Part 3: Scripting
  27. On Computer Speed and Culture
  28. Not Using Terminals, Part 2
  29. Visibility
  30. Installing Services in One Line
  31. Fixing Samba Again
  32. Python REPLs anywhere
  33. Logging Into Things
  34. Bookmarks
  35. On Not Using Terminals
  36. Voice recognition with Emacs
  37. Debian Packages for Everything!

2023 1

  1. Talking to your Android phone from anywhere

2022 41

  1. Fancifying the Command Line with JSON
  2. Day 100
  3. AS/400: terminals
  4. Should I support this company?
  5. Prototypes
  6. Persistence
  7. Recompiling Everything
  8. Is DST stupid?
  9. How to read IPv6 addresses
  10. Merging Lisp pathnames
  11. TCP ports should be files
  12. If Sockets had Paths
  13. Only IPv6
  14. The 2022 Redesign
  15. The Forgotten Niceness of Paper Maps
  16. Emacs Shell Scripts
  17. Dynamic Configs for the Hammer 88
  18. Snikket, XMPP and how ready we are
  19. How the Pinephone is Underpowered
  20. Dependencies: the Evil of Redoing Stuff, part 1
  21. Optimizability
  22. Fancier RSS Feeds!
  23. Labels vs. Trees
  24. Web Push
  25. AS/400: Libraries
  26. Enticing but Bad Solutions
  27. Mobile, Part 2
  28. Mobile
  29. On Making Art
  30. AS/400 Intro
  31. Idempotence
  32. The Simplicity of E-mail
  33. Lisp as a System Service
  34. Subscribing to RSS Feeds
  35. JavaStation and the Future
  36. Their Own Servers
  37. Self-Hosting, Security and the PC Era
  38. Using DNS for LAN IPs
  39. Miniflux: the experience
  40. The Desktop App Challenge
  41. Authentication vs. Sybil Attacks

2021 63

  1. Mounting is Outdated
  2. Programming Languages as Interfaces
  3. Life After Facebook: what is this "Fediverse" thing anyway?
  4. My Post-Writing Workflow
  5. RSS and Polling
  6. Facebook Still Exists
  7. Why the Old Internet is Not Coming Back
  8. Hosting your Social Media Accounts (or not)
  9. Halfway Through
  10. Why 5G is Faster
  11. Simplicity as a Feature
  12. Advent of Code 2021
  13. Possibility Bias: Why We Like APIs
  14. Users and Expectations
  15. DNS Updates
  16. On Amazon Prime
  17. Trivial Inconveniences are Underappreciated
  18. Roundtrips, pointers and IDs
  19. During a Network Outage
  20. More People, Worse Product?
  21. Syntax is Overrated
  22. Adding an RSS feed
  23. Novation Circuit: backing it up
  24. QEMU is awesome
  25. Out to Get You
  26. Sharing File on the Internet
  27. App vs. Service Installs
  28. Web Vitals and Over-Optimism
  29. Why are TUI apps better?
  30. Memory mapped FS
  31. TempleOS: 70% Lisp Machine
  32. Port numbers and SRV records
  33. UNIX and long-running processes
  34. Bureaucracy by Machines
  35. Code is just Partial Copies of Human Souls
  36. Elon's 5 step process for Engineering Stuff
  37. Emacs OS Mobile
  38. On Discord and Openness
  39. About Browser Tabs
  40. Ways Stuff can Work
  41. SSL and socat
  42. Windows Registry: a bad idea?
  43. UNIX the Language
  44. An Interactive Init System
  45. Kerberos with SSH, Part 2: debugging
  46. Fictional Characters are APIs
  47. Kerberos with SSH, Part 1
  48. Mobile IP
  49. Where GRUB finds things
  50. The Capitalism Delta
  51. Pipes over Remote File Systems
  52. Adding a sidebar
  53. Self Signed Certs
  54. The Unix Philosophy from another point of view
  55. Binary is Fun
  56. The evolution of OS installs
  57. Named Pipes
  58. Common Lisp for shell scripting
  59. Control
  60. Sockets: part 1
  61. We Are Doing Files Wrong
  62. WebDAV: the Awesome File Sharing Method No One Is Using
  63. HTML in HTML Extreme Edition

2020 6

  1. Windows on Linux
  2. Keto Coconut Brownie
  3. An exploration of SBCL internals
  4. IndieAuth: an intuitive explanation
  5. Recording video from a TV tuner card
  6. Koronavírus — A kalapács és a tánc, 2. rész

2019 1

  1. lava cake