#software-architecture
13 posts
2026 - June
1 post2026 - April
1 post2017 - June
1 post2016 - October
2 posts2015 - December
1 post2015 - November
2 posts2012 - August
1 post2008 - April
2 posts2007 - December
1 post2007 - August
1 post2026 - June
1 postai-memory: Emergent Architecture and Malleable Software
In 24 days, contributors took ai-memory from a personal MVP to a cross-platform, multi-user system. The architecture emerged from use and was only consolidated afterward.
2026 - April
1 postIs RAG Dead? Long Context, Grep, and the End of the Mandatory Vector DB
Frontier models went from 200k to 1M tokens of context. Does it still make sense to wire up a whole vector DB stack to do RAG, when you can just grep and dump the entire document into the window?
2017 - June
1 postThe Economics of Software Development
For small teams, software economics starts with the smallest product that works, accounting for time while avoiding technical debt, premature microservices, and unnecessary performance optimizations.
2016 - October
2 postsSharing models between Rails Apps - Part 2
I evolve the central-support gem to distribute migrations, test two isolated Rails databases, and connect the secondary app to a read-only replica of Central in production.
Sharing models between Rails Apps - Part 1
I extracted stable Central model logic into Concerns in a testable RubyGem, moved the specs with almost no changes, and concluded it works well for secondary read-only apps.
2015 - December
1 postThe Obligatory "Why Elixir?" Personal Take
The author explains why he plans to combine Rails and Phoenix and argues for Elixir in concurrent, distributed systems. Immutability, schedulers, and supervisors make fault tolerance more approachable.
2015 - November
2 posts"Yocto Services"! And My First Month with Elixir!
After an intense month studying Elixir, the author suggests thinking of BEAM processes as “Yocto Services”: supervised GenServers that fail independently, exchange messages, and talk across nodes.
ExMessenger Exercise: Understanding Nodes in Elixir
I refactored a pre-1.0 terminal chat into an Umbrella app and explored Nodes, names, cookies, and remote GenServers. The result is closer to distributed peers than a traditional TCP client and server.
2012 - August
1 post[Off-Topic] The Myth of the "Legacy"
The author criticizes automatically rewriting legacy systems and tells how he fixed an ASP with DCOM in two weeks, preserving the code and winning the client a new project.
2008 - April
2 postsChatting with Chris Wanstrath (Err the Blog/Github)
Chris Wanstrath explains why he created GitHub to make open source contributions easier and reveals the platform’s architecture, with Git, SSH, memcached, background jobs, and a feed of nearly 1 million lines.
Off-Topic: Google App Engine and Cloud Computing
The author compares hosting, VPS, AWS, and Google App Engine, showing the appeal of elastic, on-demand resources. The tradeoff is adapting the application to its own paradigms and making future migration harder.
2007 - December
1 postChatting with Avi Bryant - Part 2
Avi Bryant defends Smalltalk’s pragmatic simplicity, estimates that Ruby could be up to 25 times faster, and explains how Seaside uses continuations and components.
2007 - August
1 postThe Sunk Cost Fallacy
A movie ticket illustrates the sunk cost fallacy: money already spent should not decide the next step, whether you are judging a movie, a software license, or an architecture.