Posts
-
Alpine.js as a Stimulus alternative:
how to avoid inline JS with Alpine CSP
2024-11-04
-
A Rubyist learns Haskell, part 3:
-
A Rubyist learns Haskell, part 2:
expressiveness and correctness
2024-06-17
-
Reflections on RailsConf 2024:
the Ruby community is for everyone
2024-05-16
-
Being laid off in 2023-2024 as an early-career developer:
when the tech industry wants to squeeze you out
2024-03-26
-
Two months of LinkedIn posts:
a job networking effort
2024-02-20
-
Job networking for developers:
notes from a job hunt
2024-01-17
-
Coming to grips with JS:
a Rubyist's deep dive
2023-12-29
-
A Rubyist learns Haskell, part 1:
not so different after all?
2023-11-21
-
Server-sent events for asynchronous API calls in a Roda app:
Wiki Stumble, part 3
2023-09-04
-
Roda + Turbo Streams = ❤️:
Wiki Stumble, part 2
2023-08-28
-
Building a text-based game in Ruby, part 1:
simultaneous, real-time input and output
2023-08-19
-
MacOS for PC users, part 2:
more tools for lost souls
2023-08-15
-
Solo RPGs as a creative practice:
overcoming my inhibition to storytelling
2023-07-30
-
My plain-text reading list:
now with statistics, and feature-complete!
2023-07-17
-
Building a text-based game:
exploring an old genre for new purposes
2023-06-20
-
Parsing text in Ruby, part 2:
parse and transform with regular expressions
2023-05-01
-
Parsing text in Ruby, part 1:
Parslet transforming my world
2023-03-15
-
Switching to Linux:
notes from a former Windows user
2023-02-16
-
OOP vs. services for organizing business logic:
is there a third way?
2022-12-06
-
The first six months:
lessons learned as a junior developer
2022-08-24
-
RVTWS:
a Ruby stack for modern web apps
2022-06-24
-
Dot syntax and deep_fetch for Ruby hashes:
benchmarks and usability considerations
2022-05-05
-
MacOS for PC users:
a guide for lost souls
2022-04-18
-
How to find your first Rails job:
notes from a job hunt
2022-01-30
-
Doctor Lookup:
lightning Rails app #4
2022-01-10
-
A "Pass the Story" collaborative writing game:
lightning Rails app #3
2021-12-30
-
A StumbleUpon-style Wikipedia explorer:
Wiki Stumble, part 1 / lightning Rails app #2
2021-12-16
-
An AI story writer:
lightning Rails app #1
2021-12-14
-
How to contribute to open source:
a guide for Rails beginners
2021-12-01
-
From teacher to developer:
coming home to my second career
2021-11-22
-
A November of WTFs:
the hard parts of learning Rails
2021-11-18
-
Ruby for the self-taught developer:
why it's a great fit
2021-10-26
-
My first Rails app, Plain Reading:
how I built it
2021-09-30
-
Nand to Tetris:
computer science and lessons in optimization
2021-08-19
-
Plain-text, flat-file knowledge base with syntax highlighting:
notes with tags and dates, effortlessly
2021-08-05
-
Build a blog with Bridgetown:
templates, components, and plugins all in Ruby
2021-07-07
-
My first Ruby app:
lessons learned
2021-05-19
-
The Keyboardio Atreus:
typing less painfully, part 2
2021-04-20
-
Learning Colemak:
typing less painfully, part 1
2021-03-29
-
Habits and time tracking with aims.md:
beyond a todo list
2021-02-28
-
Functional programming techniques in Ruby:
pipelines, callable objects, and other tools for cleaner code
2020-12-21
-
Ruby practice with Exercism:
what I learned
2020-11-03
-
AutoHotkey - Windows key, home row arrow keys, mouse shortcuts:
and other hacks for Windows productivity
2020-10-15
-
Set up Windows Terminal shortcuts:
and make Windows a bit more usable
2020-09-18
-
Track your reading with read.csv:
and become a deeper reader
2020-08-09
-
How I built this blog:
an exploration of minimalism and programming jokes
2020-07-23
-
Make a custom todo.txt for VS Code:
and become a productivity beast
2020-06-13