The Curious Engineer

All blogs / Go

fREW Schmidt's Foolish Manifesto

blog.afoolishmanifesto.com

GoLinux / UnixRustPerl / RakuEssays / personal

Posts
540 from 17 Oct 2012 to 15 Apr 2026
Posting
now and then (2 in the last year)
Kind
personal blog
Feed
https://blog.afoolishmanifesto.com/index.xml

2026 2

  1. Mentorship via Frew
  2. AI in 2026 and Beyond

2025 1

  1. Notion Book Sorter

2023 7

  1. Woodworking Advent Calendar
  2. Debian and Ubuntu Automatic Updates
  3. Serving Static Files from Go
  4. Write a Love Letter
  5. Screen Scrape with Headless Chrome and Puppeteer
  6. 2023 January Goals Review
  7. 2023 Goals

2022 8

  1. You Fool!
  2. More Perl to Go Conversions
  3. Announcing dh
  4. Using Tailscale for Authentication
  5. Setting Up Vim with an LSP for Scala
  6. Go 1.18
  7. Reliably Cross Compiling Go using Zig
  8. Go Generics Example

2021 10

  1. Learning Rust with a Side Project
  2. Decisions and Habits
  3. Leatherman Draw
  4. Gumbo v2
  5. Stateless Notes
  6. Personal Monorepo
  7. Steambox 2021: even faster
  8. steambox 2021 Edition
  9. Dropbox Longpoll Bugs
  10. Embedding Lua in Go

2020 15

  1. Useful Vim Features
  2. Mixer Post Mortem
  3. Improve Git Diffs for Structured Data
  4. Go Subtest Tips
  5. Logorrhea
  6. Adding Autoreload to srv
  7. context Deadlines in Go
  8. I Avoid Named Pipes
  9. Testing Perl Clients and Go Servers
  10. Calculators, Binary Hybrids, and UNIX History
  11. My Editing Workflow
  12. Weird Hobby: Scraped Git Histories
  13. Five Hundredth!
  14. Zine: Software for Managing Notes
  15. Goals for 2020

2019 52

  1. Writing a Go Linter
  2. The Everyday Magic of Simplification
  3. Brute Force Image Recovery
  4. Go's reflect packages vs types package
  5. Go's Reflect Package is Mostly Read-Only
  6. Direct Observation with Go Tooling
  7. Performance; git, go, and otherwise
  8. Go Debris (2019)
  9. Ordering Green Coffee with Go and jq
  10. Distraction Free Slack
  11. Extensibility in Go
  12. Generics in Go, via Contracts
  13. The Tyranny of Easy Things
  14. Nesting Middleware in Go
  15. Unreliable Cronjobs
  16. Productive Weekend
  17. AwesomeWM Agenda
  18. Getting Carried Away
  19. Introducing Charitable: XMonad-like Tag Management for AwesomeWM
  20. Code Search for Go
  21. go/types package
  22. AwesomeWM II
  23. Stupid Default Alerts for cronjobs
  24. Deploying to AWS Lambda with ZR CI/CD
  25. Leatherman: Using `go generate`
  26. The Go Errors Proposal
  27. The Easiest Way to Use Go from Source
  28. A Custom Supervisor to Solve Weird Problems
  29. uBlock Origin for a More Civilized Web
  30. Prometheus cloudwatch-exporter Examples
  31. Lag from Timers in Go
  32. Prometheus Conveniences
  33. Learning Day: Recovery
  34. Optimizing my Workflow for Go
  35. Testing in Go
  36. Reading Code
  37. Sorting Books
  38. Automating Email
  39. How to Add a Subscription Service to Your Blog
  40. Making My Notes Easier to Reference
  41. Fixing Buggy Haskell Programs with Go
  42. Learning Day 2: DIY Games
  43. Busting the Cloudflare Cache
  44. graphviz describing multi-stage docker builds
  45. Amygdala
  46. Deploying to Kubernetes at ZipRecruiter
  47. Full Text Search for ebooks
  48. Learning Day 1: go
  49. Go Interfaces
  50. The Evolution of The Minotaur
  51. Self-Control on a Phone
  52. Updates to my Notes Linking Tools

2018 24

  1. Goals for 2019
  2. Self-Signed and Pinned Certificates in Go
  3. Validating Kubernetes Manifests
  4. go generate: barely a framework
  5. Go Doesn't Have Generics
  6. Go Concurrency Patterns
  7. Atomically Directory Population in Go
  8. GopherCon 2018
  9. Log Loss Detection
  10. Some Cool New Tools
  11. unproductive
  12. Announcing shellquote
  13. Detecting who used the EC2 metadata server with BCC
  14. Centralized known_hosts for ssh
  15. Buffered Channels in Golang
  16. C, Golang, Perl, and Unix
  17. Announcing mozcookiejar
  18. Reflections on Ng's Machine Learning
  19. Categorically Solving Cronspam
  20. Exponential Backoff in Service Startup
  21. Some Code I Deleted
  22. Full Disk, What's Next?
  23. gnuplot is Super Handy
  24. Benefits of using Golang for ad-hoc code: Leatherman

2017 41

  1. A Love Letter to Plain Text
  2. Editing Registers in Vim: RegEdit.vim
  3. Advanced Projectionist Templates
  4. Monitoring Service start/stop in Upstart
  5. Content Based Filetype Detection in Vim
  6. JSON on the Command Line
  7. Vim Debugging
  8. Investigation: Why is SQS so slow?
  9. Supervisors and Init Systems: Part 7
  10. Supervisors and Init Systems: Part 6
  11. Supervisors and Init Systems: Part 5
  12. Supervisors and Init Systems: Part 4
  13. Supervisors and Init Systems: Part 3
  14. Supervisors and Init Systems: Part 2
  15. Supervisors and Init Systems: Part 1
  16. Station
  17. The Read Write Splitter at ZipRecruiter
  18. Getting Things Done
  19. YAPC::NA 2017 Recap
  20. Scalablity, Reliability, and Performance at ZipRecruiter
  21. Ten Years Behind the Screen
  22. CSV Databases in Perl
  23. Using Amazon Athena from Perl
  24. Vim Slow Buffers
  25. Vim Advanced Sessions: Corrected
  26. Advanced Vim Sessions
  27. Vim File Lists
  28. Hello XMonad, Goodbye AwesomeWM
  29. lost.vim: for when you're lost in a file
  30. file-context: for when you are lost in a file
  31. Day-to-Day Tools
  32. Converting a Slow Shell Script to golang
  33. My Set of Vim Plugins
  34. Inspiration: DIY Operating System
  35. Adding Features to Git the Easy Way
  36. My Mobile (shell) Home
  37. MSSQL ODBC Client and Server on Ubuntu
  38. Miscellaneous Inspiration
  39. The Great S3 Outage of 2017
  40. The fREW Schmidt Interview Experience
  41. The Dreaded Missing WHERE Clause

2016 9

  1. DIY Coffee Roasting and Coffee Setup
  2. Gumbo v1
  3. Email Threading for Professionals
  4. The Ultimate Email Filtering
  5. Linux Clocks
  6. Announcing Digest::MurmurHash2::Neutral
  7. Defining Custom URI Schemata on Linux
  8. Perl, Linux Namespaces, and Pedestrian Problems
  9. Blood Pressure Research

2012 1

  1. AWS IAM at ZipRecruiter

Undated 370

  1. Diy seltzer club soda
  2. The pomodoro technique three years later
  3. Docker pstree from the inside
  4. Linux containers and docker pstree
  5. Open source infrastructure and dbix class diagnostics improvements
  6. Building secure useragents
  7. Hugo unix vim integration
  8. Development with docker
  9. Set based dbix class
  10. Investigation into why perl cant read from tmpdir
  11. Reap slow and bloated plack workers
  12. Aws retirement notification bot
  13. Vim goto file
  14. Staring into the void
  15. Vim session workflow
  16. Dbi caller info
  17. My custom keyboard
  18. Serverless
  19. Iterating over chunks of a diff in vim
  20. Oscon 2016
  21. Faster dbi profiling
  22. Setting up lets encrypt and piwik
  23. Rage inducing bugs
  24. Put mysql in timeout
  25. A new join prune in dbix class
  26. Python taking the good with the bad
  27. Humane interfaces
  28. Cloudfront migration update
  29. Dbi logging and profiling
  30. How to enable ptrace in docker 1.10
  31. When i planned on moving to australia
  32. Weirdest interview so far
  33. Migrating blog to cloudfront
  34. Ucspi
  35. Rust
  36. Announcing cgid
  37. Handy rust macros
  38. Checking sudoers with visudo in saltstack
  39. Pong
  40. Farewell cpan contest
  41. Pid namespaces in linux
  42. Dream on dreamer
  43. Blink1 sound via pulseaudio
  44. Fast cli tools and gmail
  45. The bad the good and the cloud
  46. Chains of gid
  47. Cpan patch workflow ii
  48. Perl and kickstarter
  49. Cpan patch workflow
  50. Index hints in mysql with dbix class
  51. Aws
  52. Sql server to pg
  53. Haxxed
  54. Dbix class candy resultset
  55. Mros and you
  56. Docker simplifications
  57. Faster dbic schemata
  58. Fear and loathing in sql 92
  59. Dbix class helper resultset errors
  60. Configuration station
  61. Offlineimap docker
  62. Docker first impressions
  63. Asyncronous musings
  64. More more more 2015
  65. Nsis sucks
  66. Replacing your cyanogenmod kernel for fun and profit
  67. Concurrency and async in perl
  68. Dbix class parameterized relationships
  69. A gentle tls intro for perlers
  70. A few of my favorite tools
  71. Use travis et al
  72. Youre awesome yapc
  73. Fsharp has handy gc
  74. Fsharp has weird oo
  75. Hugo
  76. Announcing helper resultset datemethods1
  77. Game review the swapper
  78. Use docker to test your code and a subtle announcement
  79. Blogs perl org hacked
  80. Hash your passwords finale
  81. Dbix introspector
  82. Leveling up
  83. Perl switches 101
  84. Event loops useful after all
  85. Install and configure the ms odbc driver on debian
  86. I made my own keyboard
  87. L2type nub
  88. Some kickstarters i have my eye on
  89. The pomodoro technique
  90. Announcing apache balancermanager
  91. Abstraction levels
  92. Go see my dbix class advent article
  93. Go see my advent article
  94. Ssh tips
  95. Announcing dbix class materializedpath
  96. Hash your passwords
  97. Zero dm rpg s
  98. Awesomewm
  99. Web machine web simple is awesome
  100. Announcing catalyst action frompsgi
  101. Dbix class deploymenthandler backup based workflow
  102. Dbix class deploymenthandler backups
  103. Introducing dbix class helper schema lintcontents
  104. Introducing dbix class helper resultset searchor
  105. Introducing dbix class helper resultset correlaterelationship
  106. Introducing javascript dependency manager
  107. Introducing dbix class unicornlogger
  108. Introducing catalyst actionrole detachondie
  109. Introducing catalyst controller accessors
  110. Using search cpan org and metacpan
  111. The rise and fall of event loops in one very small place of my code
  112. Perl event loop
  113. Using catalyst plugin authentication with an old setup
  114. Cloning objects in perl
  115. Shortcut constructor method conversion
  116. Creating a pseudo attribute with dbix class
  117. Smalltalk best practice patterns constructor parameter method
  118. Smalltalk best practice patterns constructor method
  119. Smalltalk best practice patterns chapter 3 behavior methods
  120. Smalltalk best practice patterns chapters 1 and 2
  121. Weekly status report 4
  122. Stop accidentally committing all with git
  123. Refactoring dispatch tables into objects
  124. New stuff in catalyst actionrole pseudocache 1 000001
  125. Weekly status report 3
  126. Using cygwin instead of msysgit
  127. Git aliases for your life
  128. Weekly status report 2
  129. You should be using git grep
  130. Powerful benchmarking with perl and ab
  131. New stuff in class c3 componentised 1 001000
  132. Weekly status report 1
  133. New stuff in log contextual 0 004000
  134. Dbix class extended relationships
  135. Event loops are better than while 1
  136. Getting more done
  137. My ideal workflow tool
  138. Distributed issue tracking
  139. Fud and loathing in javascript
  140. Nicer git remote urls
  141. Converting repos from subversion to git
  142. New stuff in dbix class deploymenthandler
  143. Chai tea mix
  144. Dbix class helper row relationshipdwim awesome
  145. New stuff in dbix class candy
  146. Git 1 7 5 1 from git on ubuntu
  147. Screen scrape for love with web scraper
  148. Catalyst git conversion
  149. My fork of extjs
  150. New stuff in dbix class helpers
  151. New stuff in data dumper concise devel dwarn
  152. Announcing config zomg
  153. Predefined schema additions for dbix class
  154. Why i won t use your programming langauge
  155. Announcing log sprintf and log structured
  156. Handy backup solution for linux
  157. Moo woohoo
  158. Sensible database testing using catalyst
  159. Announcing dbix class 0 08124
  160. Zsh for the win
  161. Try out color coded sql
  162. Announcing dbix class storage prettyprint
  163. Yapc na videos available
  164. Reactions to porting log contextual to perl 6
  165. Using plack for hardware emulation
  166. Announcing latest release of dbix class helpers 2 004000
  167. Git svn for the win
  168. New stuff in devel dwarn
  169. Announcing dbix class candy
  170. Being a speaker at yapc 2010
  171. Yapc talks i think are worth note
  172. Announcing dbix class deploymenthandler
  173. Dbix class has migrated to git
  174. Syncing with multiple git repos
  175. How cpan and open source works
  176. New dbix class journal
  177. State
  178. Odbc in ubuntu debian
  179. Commands
  180. Delegation via roles
  181. The rise and fall of mod perl
  182. Announcing log contextual
  183. New stuff in dbix class helpers 2 00200
  184. Do passwords right
  185. An exposition on specific time saving code
  186. Template tiny
  187. Solution on how to serialize dates nicely
  188. What is the right way to serialize x object generically
  189. So long ironman sortof
  190. Latest additions to dbic helpers
  191. Getting portable
  192. Goals update
  193. Goals for the new year
  194. Processing is sweet
  195. Webcritic revisited
  196. And a great cheer erupted from the land
  197. Jap 5 6 h
  198. Writing vs writing
  199. Missing in action
  200. Science aka benchmarking
  201. Perl postscript pdf printing and money
  202. My new hammers
  203. Crash your roommate s windows computer wooo
  204. Moose test refactoring
  205. Biking to work
  206. Exceptions with perl what a joy
  207. On moose and speed
  208. Turns out there really are computer gremlins redux
  209. Turns out there really are computer gremlins
  210. Why should i use an orm
  211. Brief addendum send email
  212. How to help without being a rockstar
  213. Recaptcha
  214. Concert of the month bat for lashes
  215. Finding a sweet domain with perl
  216. Metrics debug
  217. Perl 6 in perl 5 for the win
  218. The beauty of code reuse
  219. Cpan ratings day
  220. Dallas p6m august 2009
  221. On rewrites or why one should read as little code as possible
  222. Mediums and messages
  223. Initial catalyst impressions
  224. For arcanez
  225. Perlmonks getting hacked and my solution
  226. Openid with catalyst and more
  227. Concert of the month cky
  228. Rest rest rest rest rest
  229. Previous post updated
  230. Initial impressions of catalyst book
  231. The surprising answer to last posts question
  232. Switch to catalyst
  233. Module build eu mm
  234. Speed oo black magic and yagni rtfm
  235. July 2009 dfw p6m
  236. Null conclusion
  237. Should you have null s in your database
  238. Form validation sucks
  239. Model based security
  240. Don t be a jerk
  241. Chapter 7 open source
  242. Album of the week ladyhawke
  243. Pair programming with a customer extreme
  244. Finding the optimum meeting location
  245. Yapc day 2
  246. Yapc day 1
  247. Yapc na day 1 moose
  248. Dbix class vs class dbi vs rose db object vs fey orm
  249. Why you should validate in your controllers and not your models
  250. When should i validate in controllers and not in models
  251. Dallas p6m june
  252. Compare and contrast cgiapp and catalyst
  253. Contributing to open source
  254. Avatar
  255. Cpan mashup
  256. Vim feature of the day gv
  257. Worldofgoo
  258. Future post compare and contrast cgiapp and catalyst
  259. Windows agony con
  260. Web comic downloaders
  261. Script to rename mp3 s
  262. Dbic d
  263. Don t repeat yourself json
  264. Perl 5 to perl 6 rewrite
  265. Dallas p6m may 2009
  266. What i want from the perl 5 support policy
  267. Profilers or more specifically nytprof
  268. Concert of the month astronautalis
  269. Friday refactor
  270. Album of the week space revolver
  271. Making msdos a little bit nicer
  272. Perl6 excitement
  273. Testing with perl awesome
  274. Future perl
  275. Flight of the conchords live
  276. Glad to be part of the perl community
  277. Webcritic standalone version
  278. Moose makes perl oo sexy
  279. Testing way cool
  280. Perlcritic for web developers
  281. Hey guys you should blog too
  282. Perl tidy annoying facts
  283. Vim tip of the day
  284. Why cpan is awesome
  285. Album of the week anywhere i lay my head
  286. More tools monday
  287. Post conference friday toolchain
  288. Ext day 3
  289. Ext day 2 part 2
  290. Ext conference day 2
  291. Ext conference day 1
  292. Vim feature of the day
  293. Introducing sillystring fix the past
  294. Dbix class a love story
  295. Awol
  296. Album of the week furr
  297. Implementing map with perl 6 and perl 6
  298. Perl 6 explained
  299. Perl tutorial 2
  300. Album of the week brave
  301. Happy purim
  302. Git workflow for rakudo
  303. Ghetto your solution for workarounds
  304. Reduce what exactly did it do
  305. Mod perl for your health
  306. Album of the week tallahassee
  307. New tutorial
  308. Reverse polish notation calculator in perl6
  309. Why perl doesn t need ipl redux
  310. Making rakudo more interactive
  311. Are you experienced
  312. Perl 5 to perl 6 a reverse polish notation calculator
  313. Olotd
  314. Javascript scope
  315. Album of the week to watch the storms
  316. Higher order perl
  317. Least favorite features
  318. Paranoid deletion in dbix class
  319. Rakudo autobuilder
  320. The beginning of a roles based authorization system for perl
  321. Album of the week metropolis pt 2
  322. Community differences
  323. Splits panes and tiles
  324. Ext js conference
  325. Album of the week ultravisitor
  326. Album of the week good news for people who love bad news
  327. Album of the week
  328. Vim settings
  329. Javascript with prototype hexstring to boolean array
  330. Ruby1 8 vs perl6
  331. One liner of the day
  332. Join reduce
  333. You too can help implement the language of the future
  334. Definitions
  335. Can t sleep
  336. Why object oriented programming rocks today
  337. Perl6 vs ruby reduce
  338. Music
  339. Winter wonderland
  340. Why it s ok that perl doesn t really have irb ipl
  341. Cgi application dispatch optional paramters and optional runmodes
  342. How to use dbix class after it s installed and setup
  343. Using rails wisdom in perl
  344. Ruby style functional programming in perl
  345. Migrating from iis to apache
  346. Two months and 10 000 miles later
  347. On beam travel
  348. Ruby 1 9 is out
  349. Creation of small simple objects
  350. Transforming into a cat
  351. Controlling dor creating wind
  352. Walking through walls
  353. Seeing through walls
  354. Controlling the weather
  355. Reading minds
  356. Mind control
  357. Time travel forward
  358. Creation of warmies
  359. Going backwards in time
  360. Cotrolling fanblades
  361. Transform into a car
  362. Controlling water
  363. Telekinesis
  364. Creating dor controlling fire
  365. Levitation
  366. Seeing in the dark
  367. Your possible super powers
  368. El salvadorisimo
  369. Friday tips and tricks
  370. On the validity of taking nine credit hours in half a summer