Software Engineering in the age of LLMs
The landscape of software engineering is undergoing a seismic shift. Rapid advancements in artificial intelligence are signaling what I believe to be the last call for traditional programmer jobs. This is likely the last chance to secure a “traditional programming job” and if you identify solely as a “programmer,” now is the time to act decisively. It might be necessary to contemplate a strategic pivot in your career to stay relevant in an increasingly AI-driven industry.…
Read more ⟶
Django InterfaceError: Connection already closed
Background Stack: gunicorn + Django + pyscopg2
Error InterfaceError: Connection already closed started appearing after performing new deploys of the application. These errors would appear from multiple gunicorn workers at the same time some 60 seconds after the workers would initialize.
Understanding the stacktrace The error indicates that when Django ORM attempted to perform an SQL query through an open Psycopg2 connection, the connection was already closed. Django tries to execute the query through the assumed open connection, but when it is closed, the error occurs.…
Read more ⟶
No-Build Django: Simplifying Web Development
In the ever-evolving landscape of web development, the concept of “no-build” has gained traction, challenging the complexity that has become commonplace in modern web frameworks. David Heinemeier Hansson (DHH) recently shared his thoughts on the benefits of a no-build approach in his article “You can’t get faster than no-build”. While his focus was primarily on Ruby on Rails, this philosophy has interesting implications for Django developers as well.
The No-Build Philosophy The core idea behind no-build is simple: eliminate the need for complex build processes, asset pipelines, and transpilation steps.…
Read more ⟶
Tools I enjoy
Tools amplify your talent. The better your tools, and the better you know how to use them, the more productive you can be.
From: The Pragmatic Programmer by Andy Hunt
Many years of professional software engineering have led to my opinionated list of tools and their configurations that are a daily driver to get things done.
My Toolset If I had to describe my toolset it would be:
keyboard-oriented (see this blog for the why) Vim-centric (i.…
Read more ⟶