
Every Line of Code is a Potential Bug
How to reduce the chances of a security flaw in your application with the principle of abstraction and the DRY principle (Do not repeat yourself).
Part of my blog series on Secure Code By Design .
Core Principles
When I wrote my book on cybersecurity fundamentals at an executive level, I didn’t want to write about the technology of the day. I wanted to write about principles that could be applied to any cybersecurity program or problem. I explained how these same security principles apply in the cloud, even though the specifics of how the principles get applied change with different types of technology. I want to do the same with these coding security principles. Though technologies change, the core principles are the same.
Some of the principles that form my thoughts on cybersecurity come from software engineering architecture. I’m not talking about programming language syntax, but concepts that apply regardless of which language you use. I’ve used a few, as noted on this outdated programming resume that doesn’t include later additions like Rust. It’s missing quite a few cybersecurity certifications, speaking and training engagements , and projects, some of which I cannot disclose. But it shows some of the projects and technologies I’ve used in the past. My most up to date bio is on LinkedIn and most of what I’m doing is on this blog.
Not only did I work for a lot of different companies of varying sizes on a lot of different projects, I’m an eternal student, learning new things every day. I’m constantly researching and trying to improve my code and security testing. With the advent of AI I’ve been researching now to use AI to write code which you can read about on my blog in the Good Vibes section. I’m also transitioning my batch job framework to an AI agent framework and using AI to write software to deploy the related secure agent infrastructure .
Having worked in a myriad of industries with different technologies, programming languages, and system architectures, I tend to think about concepts that apply universally when designing and developing systems. I also think about how cybersecurity principles can apply above and beyond a specific technology or application. You still need to get into the specifics of a particular technology when it comes to implementation, but the principles apply regardless.
I wrote this series initially before generative AI took over the software development landscape. I’m going to review the code as I move it over to my new blog to see what changed. I’m hoping most of it is still relevant because I tried to include timeless material, but I’m making a few updates. For the most part all these principles still apply, but they apply to the AI agents and chatbots writing the code rather than humans writing each individual line themselves.
Read the full post here:
Enjoyed reading this content? Let the author know!
Your likes, comments, shares, and saves help creators reach more builders.
Loading recommendations
Loading article