/>
ty porter
I'm a Ruby on Rails developer professionally interested in cycling, hiking, baseball, and video game development on the side. Most of my projects attempt to integrate one or more of these.
site
github
email
linkedin
rss
Categories
/> ty porter
/> home
/> by category
/> by tag
/> by date
Development
55
Career advice
15
Emulation
5
Blogging
3
Ruby
6
Rails
5
Testing
3
Job searching
2
Programming languages
1
Miscellaneous
5
Raspberry pi
2
Cycling
1
Bugs
3
Documentation
1
Books
1
Year end review
1
Puzzles
1
Markup
2
Security
3
3d printing
3
Performance
1
Mechanical engineering
1
Posts in Development
JSON as Configuration is Hell
- 08 August 2025
How to Test Your Emulator
- 04 February 2025
Advent of Code... in SQL
- 16 December 2024
Interesting Browser Engine Bugs, Part 3: <select> Tags Crash Chrome
- 16 August 2024
Interesting Browser Engine Bugs, Part 2: On Video Conferencing
- 10 August 2024
Interesting Browser Engine Bugs, Part 1: Test Timeouts
- 13 June 2024
Thoughts on "Developers Should Deploy Their Own Code"
- 04 October 2023
Ruby Off Rails
- 09 August 2023
Launching Dark (Postmortem)
- 21 June 2023
Piloting No Manual QA
- 12 May 2023
I'm Too Clever
- 21 March 2023
Custom RSpec Matchers Give Tests Superpowers
- 20 January 2023
Rails, Cron, and a Thundering Herd
- 07 January 2023
Failures of Common Sense
- 06 January 2023
Launching Dark
- 08 November 2022
Heroku Is Deprecating Its Free Tier
- 27 August 2022
A Surprising Catch
- 11 August 2022
Don't Let Your Systems Fail Deadly
- 24 July 2022
Security and Swiss Cheese
- 19 July 2022
Working on Projects That "Matter"
- 28 June 2022
Building a Microblog in Jekyll
- 20 June 2022
Emulating Raspberry Pi LED Matrices in Your Browser
- 13 June 2022
Don't Reinvent the Wheel
- 08 June 2022
Programmatically Modifying Ancient Fonts
- 26 April 2022
MLB Finally Deprecated Its XML API
- 11 April 2022
Building a Custom Markup Language for Raspberry Pi LED Matrices
- 09 April 2022
Into the Rabbit Hole of Slow Test Suites
- 14 March 2022
Implementing Session Expiration in Rails
- 13 February 2022
Turtle Graphics
- 09 January 2022
Troubleshooting a Rubocop Bug
- 04 December 2021
Building Raspberry Pi-Powered LED Sports Scoreboards (and Other Displays)
- 11 November 2021
I Now Hate Liquid
- 07 November 2021
A Weird Way to Find Work
- 27 October 2021
Celebrating Hacktoberfest
- 15 October 2021
All About Hyde -- Writing My Own Programming Language
- 09 October 2021
August Book Review
- 05 September 2021
Writing a Gameboy Game in 2021: Part 6 -- Postmortem
- 30 August 2021
Python Decorators Make Callbacks Simple
- 26 August 2021
Metaprogramming Smarter Hashes in Ruby
- 23 August 2021
Validating Error-Prone Data
- 22 August 2021
Fixture Factories in RSpec and FactoryBot
- 24 July 2021
On Blogging
- 29 June 2021
Kata, Kumite, and Code Golf for Algorithm Practice
- 15 June 2021
Combating Memory Bloat in Heroku and Sidekiq
- 30 May 2021
How to Deploy a Python Reddit Bot (and Other Scripts) to Heroku
- 18 May 2021
Writing a Gameboy Game in 2021: Part 5 -- Screen Transitions
- 17 May 2021
Emulating Raspberry Pi LED Panels
- 06 May 2021
Devise Flash Messages in JSON Responses
- 01 May 2021
I Want to Build the Boat
- 30 April 2021
Working Around Deprecated MLB APIs
- 17 April 2021
Writing a Gameboy Game in 2021: Part 4 -- Computer AI
- 11 April 2021
Writing a Gameboy Game in 2021: Part 3 -- Collision Detection
- 06 April 2021
Writing a Gameboy Game in 2021: Part 2 -- Physics
- 05 April 2021
Writing a Gameboy Game in 2021: Part 1 -- Graphics
- 04 April 2021
Writing a Gameboy Game in 2021: Part 0 -- Introduction
- 04 April 2021
Posts in Career advice
Is WGU the New Bootcamp?
- 06 February 2024
I'm Too Clever
- 21 March 2023
Working on Projects That "Matter"
- 28 June 2022
Do Bootcamps Still Make Sense in 2022?
- 13 January 2022
Making Molehills of Mountains
- 08 November 2021
Staff Engineer
- 01 November 2021
A Weird Way to Find Work
- 27 October 2021
Transitioning Out of My First Developer Job
- 10 September 2021
August Book Review
- 05 September 2021
Landing an Interview as a Junior Developer
- 03 September 2021
Job Searching Without Leetcode
- 17 August 2021
On Blogging
- 29 June 2021
Kata, Kumite, and Code Golf for Algorithm Practice
- 15 June 2021
On Keeping a Physical Engineering Notebook
- 27 May 2021
Coding My Way Into a Job with Major League Baseball
- 13 April 2021
Posts in Emulation
How to Test Your Emulator
- 04 February 2025
Emulating Raspberry Pi LED Matrices in Your Browser
- 13 June 2022
Turtle Graphics
- 09 January 2022
Building Raspberry Pi-Powered LED Sports Scoreboards (and Other Displays)
- 11 November 2021
Emulating Raspberry Pi LED Panels
- 06 May 2021
Posts in Blogging
Building a Microblog in Jekyll
- 20 June 2022
I Now Hate Liquid
- 07 November 2021
On Blogging
- 29 June 2021
Posts in Ruby
Ruby Off Rails
- 09 August 2023
Don't Let Your Systems Fail Deadly
- 24 July 2022
Security and Swiss Cheese
- 19 July 2022
Implementing Session Expiration in Rails
- 13 February 2022
Troubleshooting a Rubocop Bug
- 04 December 2021
Fixture Factories in RSpec and FactoryBot
- 24 July 2021
Posts in Rails
Ruby Off Rails
- 09 August 2023
Don't Let Your Systems Fail Deadly
- 24 July 2022
Security and Swiss Cheese
- 19 July 2022
Implementing Session Expiration in Rails
- 13 February 2022
Fixture Factories in RSpec and FactoryBot
- 24 July 2021
Posts in Testing
Custom RSpec Matchers Give Tests Superpowers
- 20 January 2023
Into the Rabbit Hole of Slow Test Suites
- 14 March 2022
Fixture Factories in RSpec and FactoryBot
- 24 July 2021
Posts in Job searching
Do Bootcamps Still Make Sense in 2022?
- 13 January 2022
Job Searching Without Leetcode
- 17 August 2021
Posts in Programming languages
All About Hyde -- Writing My Own Programming Language
- 09 October 2021
Posts in Miscellaneous
Consuming Content Sans Google
- 03 January 2022
Advent of Code 2021
- 28 December 2021
2021 in Review
- 27 December 2021
Making Molehills of Mountains
- 08 November 2021
DNA Isn't Code
- 02 November 2021
Posts in Raspberry pi
Programmatically Modifying Ancient Fonts
- 26 April 2022
Building Raspberry Pi-Powered LED Sports Scoreboards (and Other Displays)
- 11 November 2021
Posts in Cycling
An Analysis of Bicycle Crosschaining
- 16 November 2021
Posts in Bugs
Rails, Cron, and a Thundering Herd
- 07 January 2023
Into the Rabbit Hole of Slow Test Suites
- 14 March 2022
Troubleshooting a Rubocop Bug
- 04 December 2021
Posts in Documentation
Custom Printing Obscure Technical Manuals
- 06 December 2021
Posts in Books
Custom Printing Obscure Technical Manuals
- 06 December 2021
Posts in Year end review
2021 in Review
- 27 December 2021
Posts in Puzzles
Advent of Code 2021
- 28 December 2021
Posts in Markup
Don't Reinvent the Wheel
- 08 June 2022
Building a Custom Markup Language for Raspberry Pi LED Matrices
- 09 April 2022
Posts in Security
A Surprising Catch
- 11 August 2022
Don't Let Your Systems Fail Deadly
- 24 July 2022
Security and Swiss Cheese
- 19 July 2022
Posts in 3d printing
Building a 3D Printed ABENICS Mechanism
- 09 April 2023
Designing 3D Printable Fabric
- 18 December 2022
Patching Non-Adhesion in 3D Prints
- 30 September 2022
Posts in Performance
Rails, Cron, and a Thundering Herd
- 07 January 2023
Posts in Mechanical engineering
Building a 3D Printed ABENICS Mechanism
- 09 April 2023