Building applications for the modern age
Here are my most recent posts about programming:
- 2025/09
My modest use of AI for programming
How I currently use AI in my workflow - 2025/04
Rails, Webpacker & React: A migration odyssey
Looking back at a painful refactor journey from Webpacker to Vite, Enzyme to React Testing Library, and React - 2025/02
Using Phoenix with React and Inertia
Getting the best of both worlds; Phoenix's productivity, and React's ecosystem - 2025/01
My experience with Phoenix LiveView
Some takeaways from my time with Phoenix LiveView - 2025/01
Separate Session Tokens in Phoenix
Update the generated phx.gen.auth code to use a separate session token table
And a few things I’ve learned along the way:
- Give demos, send GIFs, and record videos. Show your work early, and often.
- Give it 5 minutes. Don’t shoot down ideas immediately, let them simmer.
- Your throwaway prototype will almost always hit production. Plan accordingly.
- Ship and iterate, ship and iterate, ship and iterate.
- There are no stupid questions. There are stupid outcomes due to misunderstandings.
- Your user is probably tired, frustrated, and out of patience. Don't make their experience worse.
- The best technical solution isn’t always the right business solution.
Finally, I have some availability for new projects:
I enjoy building with React, TypeScript, Elixir, and Next.js among others. If you have something in mind, let's work together to create something awesome.