The Curious Engineer

All blogs / Lisp / Clojure / Scheme

Veit's Blog

blog.veitheller.de

The personal blog of Veit Heller

Lisp / Clojure / SchemeOther languagesCompilersEssays / personal

Posts
241 from 11 Jan 2017 to 31 Oct 2026
Posting
weekly (48 in the last year)
Kind
personal blog
Feed
https://blog.veitheller.de/feed.rss

2026 39

  1. cyberwitchery
  2. Ever Failed
  3. Metacarp Makes Some Noise
  4. Bitter Lessons and Premature Optimizations
  5. Simple Sudoku Solvers SIII, EII: Assembly
  6. Dual-Use Tools and Epistemic Horror
  7. Once the Cheat Code Is There
  8. Simple Sudoku Solvers SIII, EI: Agda
  9. Carp in Glamorous Toolkit
  10. A First Futamura Projection
  11. A tale of two talks
  12. Metacarp
  13. I Wrote a Package Manager Ten Years Ago
  14. Tracing np.add, all the way down
  15. Can one hear the gauge of a string?
  16. The Creation of Abulafia
  17. A fully legible mind
  18. Simple Sudoku Solvers SII, EVI: SQL
  19. A More Immediate Intuitive Appeal
  20. Mid-Training and the Middle-End
  21. Simple Sudoku Solvers SII, EV: Racket/miniKanren
  22. Metrics, Life, and Money
  23. Simple Sudoku Solvers SII, EIV: Smalltalk
  24. Thinking about Legacies
  25. Triptych
  26. Generative art over the years
  27. Simple Sudoku Solvers SII, EIII: Forth
  28. Some notes on on-call
  29. cfg: a simple configuration language
  30. Lisa: Vibecoding a JIT-compiled language with cj
  31. Simple Sudoku Solvers SII, EII: Carp
  32. Impatient
  33. Renormalization, Lite: a powerful toy model
  34. Practicing My Security Skill
  35. A quick apology to Dyalog APL
  36. On Replaceability: Craft, Taste, and AI
  37. Simple Sudoku Solvers SII, EI: Dyalog APL
  38. My Revenue in 2025
  39. Scope and Experience

2025 33

  1. Two Hundred
  2. Building a PostgreSQL extension for fun and absolutely no profit
  3. Seasonal Sudoku
  4. Some thoughts on performance reviews
  5. Scheme Macros X: Meta macros
  6. Some notes on architecture diagrams
  7. Building a small language with cj
  8. Swimming
  9. Six Simple Sudoku Solvers VI: Elixir
  10. cj: Making a minimal, complete JIT
  11. Feedback Sans Sandwiches
  12. Six Simple Sudoku Solvers V: Rust
  13. Six Simple Sudoku Solvers IV: Haskell
  14. Some notes on 1:1s
  15. Git, self-hosted
  16. Some notes about post-mortems
  17. Coffee chats
  18. Six Simple Sudoku Solvers III: Prolog
  19. Secure-by-default over Manuals
  20. Six Simple Sudoku Solvers II: Common Lisp
  21. Scheme Macros IX: Algebraic Data Types
  22. Threat Modeling For the Rest of Us
  23. Six Simple Sudoku Solvers I: Python (Reference)
  24. What “good” looks like in a data room
  25. Simple SSDLCs
  26. PSA: Plausible Analytics, maybe tip jar options?
  27. Building a simple reranker
  28. Some notes about SBOMs
  29. gtstartup: Spinning up development GT images quickly
  30. News from The Ministry of Bad Ideas, or: Delayed F-Strings
  31. Waves, inspired by Hokusai sketches
  32. LlmL
  33. On starting hard things

2023 5

  1. gt4atproto at ESUG 2023
  2. Unstar everything, unfollow everyone (sorry)
  3. How I write and publish blog posts from Glamorous Toolkit II
  4. How I write and publish blog posts from Glamorous Toolkit I
  5. Implementing an IDE in GT

2022 5

  1. Dear M
  2. Variable Arity through Macros
  3. Helping Ukrainians, from Berlin
  4. Feenk
  5. Building Setf

2021 18

  1. CXXVI
  2. You Cant Always Be Productive
  3. Back
  4. Thoughts on Identity
  5. Bathtime
  6. Like That?
  7. A New Pouch
  8. Blockchain: The Post I Didnt Want to Write
  9. A New Life
  10. Adopt A Character
  11. Maps Are Everything
  12. The Worst Professional Advice You Will Ever Get
  13. Carp and derive II: This Time Its Personal
  14. Apart
  15. Carp Patterns IV: Modules
  16. Waiting in Berlo
  17. Lets Build a Quasiquoter
  18. Hiring

2020 13

  1. Contextual Leadership
  2. Three
  3. A New Home
  4. Carp Patterns III: Macros
  5. Working on my Nutrition
  6. Carp Patterns II: Testing
  7. Carp Patterns I: Documentation
  8. Lets Build Lenses in Carp, Part II: Prisms
  9. Lets Build Lenses in Carp
  10. Deletion Day
  11. A Note on Lockdown
  12. Saying Goodbye
  13. On Footnotes

2019 12

  1. Giving to Charities
  2. Compiling at Compile Time
  3. Spirited Away
  4. Implementing the Builder Pattern in Carp
  5. Yet Another Birthday
  6. Carp and derive
  7. SIGBOVIK 2019
  8. EnthusiastiCon 2019
  9. Scheme Macros VIII: Green Threads
  10. A Bad Idea
  11. Mom
  12. Datengarten

2018 40

  1. The Practicalities of Attending the Recurse Center
  2. Speeding up an Interpreter
  3. Scheme Macros VII: Design by Contract
  4. A Big Family
  5. Mul Dim
  6. Scheme Macros VI: Keyword Arguments
  7. Scheme Macros V: Conditionals
  8. Reading Review: System Dynamics
  9. PSA VII
  10. Its Nice Here
  11. Talking Carp
  12. Lets Write Base64 in Carp
  13. One Foot in Management
  14. One Hundred
  15. A Quarter of a Century
  16. The City Without Names
  17. Job Hunting
  18. Atoms, And Why Theyre Useful
  19. Lets Write A Hashmap in Carp
  20. Scheme Macros IV: Deconstructing Classes
  21. Nothing Changed
  22. Brainfuck and Actors
  23. An Update
  24. String Patterns in Carp
  25. FlixBus, Or: Dont You Tell Me I Cant, Part II
  26. Enthusiasticon
  27. Coverage-centric Testing
  28. Why I Suck At Art
  29. Overengineering, Underengineering
  30. Borrow Checking, The Carp Way
  31. Anecdata
  32. A Cool C Trick
  33. More Turtle and Koala Stories
  34. A Ring of Eucalyptus
  35. Adding format strings to Carp
  36. One Year
  37. Carp and C (as of 2017)
  38. Taking Notes
  39. LastPass, Or: Dont You Tell Me I Cant
  40. Reading, The First Year

2017 73

  1. Not Like Home
  2. zepto, A Eulogy
  3. Postmortem: Corrupting RSS And Twitter
  4. Introducing anima
  5. The Carp Compiler (as of 2017)
  6. Fell und Panzer
  7. PSA VI
  8. RC Popup, Reprise
  9. First Snow
  10. Koala and Turtle
  11. RC Popup, Drawings
  12. RC Popup, Intermission
  13. RC Popup, Project I: A Ring II
  14. RC Popup, Project I: A Ring
  15. Carp
  16. Flowers
  17. Radio Is Dead, Long Live Radio
  18. Sign Extending Numbers
  19. Less Alone
  20. PSA V
  21. Congratulations! You’re Being Audited
  22. Scheme Macros III: Defining let
  23. Back In Berlin
  24. Discovering ptrace Is Discovering Pain
  25. Woodford Reserve
  26. Return Statement
  27. Fixed Point Division
  28. Scheme Macros II: Generics
  29. Fixed Point Arithmetic
  30. Binary Coded Decimal
  31. Dear Anna
  32. Dear Will
  33. Sunday
  34. Jeptha Creed, or: How I Learned to Love Vodka
  35. Scheme Macros I: Modules
  36. PSA IV
  37. Editing Revisited
  38. References & Values
  39. Holistic Wellness
  40. Impostor
  41. us, sorted
  42. Builtin Goodies III
  43. Regular Expressions Made Simple
  44. Pattern Matching, A Thing Of The Past
  45. PSA III
  46. Braindead Chat
  47. Builtin Goodies II
  48. Abstractions
  49. A Better Calculator
  50. Awkwardness
  51. New Tools
  52. The First Day
  53. Williamsburg
  54. Braindead Editing
  55. Tash
  56. What, How, Why
  57. Ah, Records!
  58. %C3%8CF%C3%89
  59. Bourbon Country
  60. I Can't Paint
  61. On API Updates
  62. Builtin Goodies I
  63. PSA II
  64. On Barewords
  65. Valentine My Funny
  66. PSA I
  67. Reclaiming My Writing
  68. The End of an Era
  69. A Summer Of Growth
  70. Braindead Data Transformations
  71. The Last Straw
  72. Going Static
  73. Dead and Reborn

Undated 3

  1. Open Invitation
  2. Imprint
  3. GDPR Notice