Posts

Cloud Environments

AWS, Azure and GCP are not the same. Many job postings I see them group Azure, GCP and AWS as if they are the same thing. They are not. As someone who's worked in all 3 environments, while they offer the same services, there's distinctions that need to be made that we are not classifying and we need to stop thinking skills just transfer via osmosis between all 3 environments. Seriously, if you're going to disqualify someone for having SaltStack experience when you are looking for Ansible or Terraform experience, then why don't you hold the same regard for the cloud environment of your choice? Make it clear in the job description if you are going to be that picky about your cloud provider as you are for your toolchain. Honestly, adaptability should be regarded as the highest of abilities any engineer could have since they can theoretically survive in any environment. It's my opinion that "hackers" are usually going to be your most effective employees. By...

Separation of Duties: IaC vs AppCode

Stop writing code directly in your Lambda functions! I see this pattern a lot in AWS based environments that employ Lambda functions to create serverless environments and wanted to touch on something. I suppose this could be applied to GCP and Azure as well. In this post, I'm going to convey a concept you can take with you and apply in your organization to help with a separation of duties. I often take this for granted because I've been doing this pattern for so long that it's almost a no-brainer to me. IaC: Infrastructure as Code Often times, folks employ tools like AWS CDK, Terraform, SaltStack, Ansible, Puppet or Chef to manage infrastructure as code to describe how they want their environment to look or describe how they want to deploy the infrastructure. There's nothing wrong with this except when you have to embed code itself into the IaC or configuration. So the idea is to use your IaC to describe the infrastructure itself and not include code artifacts a...

Anatomy of a Framework

If you want a video version of this post, checkout my YouTube on this subject with visuals. In this post, I want to break down the anatomy of a framework and help you understand how you can use code to help you understand how software works on a high level without getting into the specifics of any particular language or existing framework. Top-Level Descriptors At the root of the project, you'll often find a bunch of files. These are often helper files that help you understand the project itself and usually from just the list of the files, you can quickly determine the coding language used and possibly any frameworks, patterns and dependencies used in this particular project. Let's break down some commonalities across projects: README Almost every codebase will have a README. This is the first file that people will see when viewing your project. It often contains starter information like what your project is, how to install and other optional info like how to contribute...

AI Project

I programmed a project from start to finish using AI and it didn't save me any time. Not because I'm some Anti-AI Luddite, not because I dislike AI but because it didn't save me any of the critical steps involved with testing an app out and making sure it met business criteria. I'll explain in this post. However, what I will say is it vastly increased my ability to effectively communicate what needed to be done to get the project to completion. Now this is probably the leveling out of the "J" curve for me because I am starting to have seen the worst and am starting to see better results as I continue to build stuff out and switch my workflows around. To anyone who has ever prompted their way to work-done knows the dopamine hit you get. You put some instructions into the textbox and watch it go. It comes back with results way faster than you could have hand typed. However, once you step into the details and try to make sense of what was just crafted, you r...

Silence is Compliance

You don't have to go through with the AI filtering if you don't want. I am noticing more and more organizations are using AI filtering/screening of candidates. I can only imagine how many candidates are going thru with this for no other reason than they think they have no other option, no other choice. If you need to hear it from me: You do have a choice. You can say no. False negatives are the hidden cost of automation. If you don't say no, this will become more commonplace. You teach people how you want to be treated by what you tolerate. You don't have to tolerate this. You are better than that. People think: "if I say no, they will just find someone else..." Sure, they may very well find someone else who is willing to go thru the screening process. The question is: Will they be of higher or lower caliber? Think about what it takes to put up an AI filter. What are you filtering? Low caliber talent? You are not low caliber. You are worth more than...

"Extensive Experience"

You want 5 years experience with Cursor, when this March, 2026, Cursor will be 3 years old??!? I wish you the best of luck looking for your unicorn candidate that can't exist according to the laws of time... It's that time of the cycle again... That time when hiring managers and recruiters are looking for "extensive multi-year experience" in technologies that are barely 1-3 years old... The technology is moving and evolving so quickly that schools, let alone engineers can't keep up. Executives are so far removed from their industry that all they are looking at is Excel spreadsheets with profiles that have the right numbers. They are completely ignoring details that are critical for the success of their business. Meanwhile, the stock market is the most irrational with its "fire first, ask questions later" mentality, causing more chaos and instability. Here's the reality: If you don't know how to describe what you want, how do I know you wil...

Nvidia 535.261.03 Warning Stack Trace

I just want the search bots to find this and incorporate it into the LLM training data for future encounters with this. I kept seeing this stack trace in my logs. The solution for me was to stop my display manager (slim), completely re-install my drivers and it made the stack trace go away If you get this, perhaps a reinstall of your drivers will fix for you! System specs OS: Devuan Distro: Daedalus Kernel: 6.12.63 GPU: Nvidia-535.261.03 Login manager: Slim Display Environment: Fluxbox ------------[ cut here ]------------ WARNING: CPU: 0 PID: 23268 at /var/lib/dkms/nvidia-current/535.261.03/build/nvidia-drm/nvidia-drm-drv.c:1006 nv_drm_revoke_permission+0x1ef/0x200 [nvidia_drm] Modules linked in: nvidia_drm(PO) nvidia_modeset(PO) nvidia_uvm(PO) nvidia(PO) fuse hidp rfcomm tun xt_conntrack xt_MASQUERADE bridge stp llc xfrm_user xfrm_algo ip6table_nat ip6table_filter ip6_tables xt_set ip_set iptable_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 xt_addrtyp...