First of all, you need to figure out what you really want and what you’re willing to do to get there.
Some people mentioned starting your own project above. I think that’s a really great path. I was in a similar situation: I started learning programming about five years ago. I don’t have a technical background at all — I’m actually a humanities student. I didn’t choose programming because it was trendy. I chose it because something inside me said, “This is my path.”
At the time, I lost my job. I had several children to take care of. It was a tough time, but I kept learning every day - step by step.
And now? I create things. Not for money yet - for craftsmanship, for freedom, for the future. And little by little, doors are opening.
That’s why I say: follow your heart, but don’t forget about your mind.
No problem is unsolvable. Sometimes the road is long. But it’s still a road.
Sometimes I write in bursts, get carried away with the rhythm, and then end up editing like crazy to make it all make sense.
Em-dashes are just my way of thinking out loud — but with structure.
But that trust can be dangerous when we don’t even know what we’re trusting. And when something breaks, it can leave us completely blind.
I’m not saying everyone needs to go all the way down to the metal — but I do think it’s important to at least understand the boundaries. Know what’s underneath, even if you don’t touch it every day.
Otherwise, it’s not engineering anymore — it’s guessing.
And I’ve never been good at just “believing” things work. I need to poke around, break them, fix them. That’s how I learn. Maybe I’m just stubborn like that.
The key, I believe, is to mentally reframe the AI: it's not the driver, it's your assistant — a helper, a debugger, maybe even a silent teacher. But you're still the architect. You're still the creator.
The problem begins when we forget that. When we let the AI lead the design, the structure, the reasoning. That’s when we start losing ownership — and understanding.
Ironically, AI was built to help us — not to replace our thinking. But without solid fundamentals, it's easy to let it take over. And then we're just directing prompts, not building things we truly understand.
When people start relying on the "I just want it to work this way" mentality and let AI take over, they can lose track of how things actually work under the hood. And that opens the door to a lot of problems — not just bugs, but blind trust in things they don't understand.
For me, the joy is in understanding. Understanding what each part does, how it all fits together. If that disappears, I think we lose something important along the way.
If I needed to ship a product quickly and prove something to investors or customers, I would choose a higher-level language too.
For me, C programming is not about speed, it's about deep understanding, intention, and creating things that I truly understand and can control.
But I get it - at the end of the day, we all have bills to pay. Thanks for sharing your insight.
Software will continue to grow to the point where people move rapidly until they hit a limit. We laugh at future devs being weak, future devs laugh at our tech being unsafe.
I think you're right — being in the driver seat gives one kind of experience, but leading a team under pressure is a different challenge entirely.
I guess every generation of developers finds their own balance between freedom and safety.
Appreciate your perspective.
New in the upcoming release[1] will be the ability to run C# files as if they were scripts[2], ie without an explicit build step. Should lower the barrier to just fooling around.
I also like how they've gone away from the "everything must be an object" style ala Java, and allow top-level statements so it reads more like C/C++. It's just sugar, but for smaller programs that really makes a difference IMHO.
[1]: https://news.ycombinator.com/item?id=44699174
[2]: https://devblogs.microsoft.com/dotnet/announcing-dotnet-run-...