Impressive, But Wrong: The Hidden Risk of LLM-Generated Documentation
Automated documentation from AI is a powerful new tool, but it’s far from perfect. Without careful review and context, it can lead to costly mistakes and lost trust. If you rely on AI-generated docs in your projects, this article offers insights to avoid common pitfalls.
If Non-Competes Are So Valuable, Then Maybe Companies Should Pay For Them
Non-compete agreements have long been a standard tool in tech — but they often restrict talent more than they protect real risks. What if companies had to pay employees for any restrictions they impose? This approach would encourage fairer, more thoughtful use of NCAs and promote a healthier, more competitive industry.
Who’s Teaching Whom? The Future of AI Code Training
AI is writing more of our code — but can it keep getting smarter if it's learning mostly from itself? In this post, I explore the hidden risks of AI-on-AI training, what we lose when code loses its "soul," and how engineers can stay in the loop.
Vibe Coding Is Not Software Engineering — And That Should Worry You
Vibe coding — AI-assisted software development driven by prompts instead of planning — is taking the tech world by storm. It’s fast, flashy, and appealing to executives and end-users alike. But it also revives every old critique about software developers being reckless and undisciplined. In this post, I explain why vibe coding isn’t engineering — and why that should worry anyone who cares about software quality, safety, security, and sustainability.
If You're Gonna Vibe Code, At Least Take Testing Seriously
So you’re vibe coding now — just prompting an LLM until things sorta work? Fair enough. But let’s talk about what actually keeps your software from breaking in production. Spoiler: it’s not your autogenerated unit tests. This post dives into why testing strategy matters more than ever, especially when code understanding is shallow.
YAGNI Might Be Costing You More in the Long Run
Many agile teams take the "You Aren't Gonna Need It" (YAGNI) principle too far, dismissing future-proofing and flexibility in favor of short-term simplicity. But while YAGNI might save time now, it can lead to costly technical debt and retrofitting when your system needs to evolve
Blaming "Low Performers" in Tech Layoffs
Tech layoffs are tough enough without companies adding insult to injury by framing them as a purge of 'low performers.' This harmful narrative unfairly stigmatizes employees, making their job search harder while protecting executives from accountability. Worse yet, companies that take this approach risk damaging their reputation and future hiring prospects.
Prompting is Coding By Another Name
AI is transforming coding by redefining what it means to code. Writing prompts for LLMs is more about structured shorthand than perfect sentences, resembling programming itself. Like higher-level languages, LLMs shift the focus from syntax to architecture and validation. The challenge is not just generating code, but ensuring it integrates into a well-designed, high-quality system.
Rethinking Tech Interviews: Why Teams Should Let Candidates Use Google and ChatGPT
Tech interviews are broken, and it's time for a change. Expecting candidates to solve complex coding problems from memory without access to modern tools like Google and ChatGPT doesn't reflect how engineers actually work. In the real world, problem-solving, critical thinking, and leveraging available resources are key to success. Read on to discover why allowing candidates to use these tools can lead to better hires and a more effective interview process.
Rethinking the Role of AI and Coding Assistants in Software Development
AI can be more than just a tool for efficiency—it’s a game-changer for creativity and innovation. Instead of fearing job loss or focusing on cost-cutting, developers and businesses can use AI to amplify their capabilities and tackle challenges in new ways.
DevOps: A Set of Practices, Not a Job Role
"DevOps" is often misunderstood as a job role. This misconception can lead to stress, burnout, and suboptimal outcomes for both individuals and businesses. By treating DevOps as a set of practices, organizations can foster better collaboration, reduce stress, and achieve more sustainable results.
Software Companies Will Be the Long-Term Winners of the AI Revolution
Who will win the AI revolution? History shows the real value lies not in hardware but in software innovation. Discover why user experience and product thinking will define the future—and which companies might lead the charge.
Cloud Native or Cloud Chaos?
Explore the intricate journey of building your own cloud with CNCF tools. Discover the balance between control and complexity, and decide if the cloud-native path is the right choice for your organization.
“Finally” Moving to the Cloud?
Cloud computing has been a game-changer for over a decade, offering cost savings, scalability, and freedom from hardware headaches. So why are some folks still surprised when a high-profile organization moves to the cloud?
Bad Actor Threat Modeling For AI Coding Assistants
How might bad actors exploit AI coding assistants to induce vulnerabilities in your organization's code?
Tests First, Tools Second
Discover why prioritizing test design over automation tools is the key to delivering high-quality software.
Tech Interview Questions That Are Actually Good
If the tech interview is failing us, what should we do instead?
Does AI Make Open Source Like Training Your Replacement?
Your code being freely available on the Internet is probably helping advance systems that may actively threaten your livelihood.
Fix the Agile Daily Standup
How can we continue to get most of the benefits from daily standup for a significantly lower cost in terms of engineering team productivity?