Software engineering is becoming actual engineering: you design and review, AI does the construction. Tech layoffs are a ZIRP hangover, not an AI apocalypse. Only 6% were primarily AI-driven. The uncomfortable part: a lot of devs were doing fake work and AI is about to expose that. What survives is taste, knowing what to build and why. The good news: anyone with a good idea can now build it, and if it's wrong, scrap it and try again tomorrow.
If you can define what correct looks like in the form of failing tests, AI agents can do the work of making them pass. TDD always had the right instinct, but now there's cheap, tireless labor to actually exploit it. The hard part is that writing good tests requires deep domain knowledge, and AI isn't great at that yet. It'll generate hundreds of shallow unit tests that cover nothing meaningful. So the real skill shifts from writing code to writing specs. The implementation is the easy part now.
I would say I'm not AI but that's what AI would say, right? There are 3 R's in strawberry!
There are several products on the market that are automating reverse engineering. Think of what people do: they orchestrate tools, build tools, read code, run things in emulators / sandboxes. All of that can be done with an agent in the middle. Building the tools is hard, knowing how to use them is kind of hard.
If the code isn't obfuscated / packed / etc, claude code and a ghidra mcp server is better than most of the reverse engineers out there and way, way faster. You can work to get other tools in the mix for claude code.
Are models getting dumber or smarter? Is code getting easier or harder to write? The writing is on the wall.
The thing protecting your software's secrets wasn't encryption. Tt was that almost nobody could read compiled code. Now AI can. For dollars. In minutes.
The few thousand people worldwide who could reverse engineer binaries were the entire moat protecting IP, firmware security, and software as a discipline. That scarcity is gone.
Python was built around human limitations. AI agents don't have those limitations, so Python's trade-offs (loose typing, runtime errors, no compiler) are now liabilities. Rust's strict compiler, which humans hate, doesn't bother agents at all. Pick your language based on who's actually writing the code.
on one hand, I completely agree with you. on the other hand, i've had to make presentations and talks and the stuff just looks so dry and boring and people respond surprisingly well to old jokes. if you don't include any sort of lulz they just sit there thinking they're learning, but if you mix in a few memes, it helps wake them up and they start to pay attention.
It has modules which look for patterns in code. Then you can tell it to run some method from the original app to understand what the code should be. Then, you can replace the obfuscated code with whatever you computed.
maybe you could make a chrome extension which blocks all forms of fun and frivolity. you could just hide images from various meme sites, maybe do some checksum comparisons?