We have arrived at the phase of ADD where the most important human skill comes into play. You have written a specification. You have generated code using appropriate context and patterns. Now you must determine whether that code is actually correct. This is not a formality. AI-generated code can be syntactically correct, pass basic tests,…
Category: Uncategorized
The Quiet Builders: A History of Introverts in Engineering and What AI Means for the Future
Throughout human history, there has always been a place where the quiet ones could excel. A domain where deep thinking mattered more than small talk, where careful analysis outweighed charisma, and where the quality of your work spoke louder than the volume of your voice. That place has been engineering. From the mathematicians of ancient…
What Makes Ruby Different: Unique Structures vs Python, Java, JavaScript
In my previous post on Ruby’s building blocks, I covered when to use Struct, Data, Class, and Module. But I glossed over something important: many of these constructs don’t exist in other languages – or exist in such diminished forms that they barely count. Ruby isn’t just another object-oriented language with different syntax. It has…
A CTO Would Be Bored by Tuesday
Founder: “I need a CTO.” Me: “For what?” Founder: “Technical leadership.” Me: “What technical decisions are you making?” Founder: “Which tools to use. How to connect them. What to build vs buy.” Me: “You need a technical advisor. Maybe 5 hours a month.” Founder: “Not a full-time hire?” Me: “You’re pre-product-market-fit with 2 clients. A…
The AI-Native Rails App: What a 2025 Architecture Looks Like
Introduction For the first time in decades of building products, I’m seeing a shift that feels bigger than mobile or cloud.AI-native architecture isn’t “AI added into the app” it’s the app shaped around AI from day one. In this new world: And honestly? Rails has never felt more relevant than in 2025. In this post,…
Why “Lines of Code” Is the Wrong Way to Measure AI Productivity in Software Development
Last week, I had a conversation with another CTO that got me thinking about how we measure productivity in the age of AI-assisted software development. Here’s how it went: CTO: Right now, about 70% of our software output is generated by AI.Me: Interesting. How are you measuring that?CTO: By looking at the proportion of code…
May 1st, Workers’ Day: Reflecting on the Future of Developers in the Age of AI
Every May 1st, we celebrate Workers’ Day a moment to recognize the hard work, progress, and dignity of people across every profession. Traditionally, it’s a day to honor laborers, craftsmen, and knowledge workers alike. Today, in 2025, it’s worth asking: What does Workers’ Day mean for developers, engineers, and tech builders when AI is rewriting…
Extending Javascript objects with a help of AngularJS extend method
Multiple ways of extending javascript objects /** * One-way reference from subclass to superclass (instance) * Most of the time this is what you want. It should be done * before adding other methods to Subclass. */ ChildClass.prototype = new SuperClass(); /** * Two-way reference * Superclass will also get any Subclass methods added later….
Be that likable person
Become genuinely interested in other people. Smile. Remember that a person’s name is to that person the sweetest and most important sound in any language. Be a good listener. Encourage others to talk about themselves. Talk in terms of the other person’s interests. Make the other person feel important and do it sincerely. Smile, smile,…
AngularJS directive multiple element
How to get AngularJS directive multiple element You probably know there exists opening ng-repeat-start and finishing directive ng-repeat-end like: <ul> <li ng-repeat-start=”user in users”> {{user.firstName}} </li> <li ng-repeat-end> {{user.firstName}} </li> </ul> You would think it is a specially made directive that works that way but actually it is not. It is part of any directive so you…