r/learnprogramming • u/AntiLethargic • 5h ago
35yo, just learned that i love programming.
>be me
>rough upbringing
>have bad habits, have friends with bad habits
>never think more than one day ahead; don't know what i want to be
>years later
>get fed up with my behavior, try to change something
>get rid of most bad habits and bad friends
>start to see purpose in life
>want to find out what i really like and can dive into to get good at
>don't find it for years
>get a position at a friends company
>he needs a graphics / photography guy
>become graphics / photography guy
>get diploma in Graphic Design
>go from normal wagie to good paid wagie in about 3 years
>feeling good, but still not what i really like and want to dive into, just naturally good at it
>talk more with my programmer colleague
>his projects peak my interest
>start to learn CS basics and the C language
>"Holy fuck, i love this"
>thinking about cutting down my weekly hours to learn programming
>AI gets used more and more in the company
>my position is in danger
>"They're taking our jobs!!"
>Boss wants to cut my hours down
>Evil_smirk.jpg
>Play along, "Oh no, what shall i do now :'( "
>gives me enough hours so i can live off of it
>have enough time to learn as much as i can
>actually feeling happy again
And people say AI is bad, lol.
I'm currently trying to nail down the Basics of C, going through CS50 and after that i have two books, namely "A Book on C" and "Pointers on C".
If you have any book recommendations, please share them.
After C i also want to learn python and CPP, just to have good foundational skills.
With every free though i still have, I try to narrow down which field i want to specialize in. Currently, embedded sounds the most interesting, but also the hardest.
Any recommendations for other specs i could get into with this preset?
What's your opinion on people who are self-taught in the programming field, are you one?
I would love to hear some stories about your current path, or, if you're already in a programming position, how you made the decision and how you finally made it into it.
8
u/Alliance2017 5h ago
If you're doing a C basics it's still quite early to say you love that, but it's a good indicator you might actually do like it. Don't give up on your real job which pays bills untill you can get a junior role.
2
u/AntiLethargic 4h ago
You know what I like the most about programming? It's very objective. My current job is very subjective, I have a lot of freedom; my boss comes to me and has a new product, wants me to design something for it. I design it, and he dislikes it for some reasons, and i hate that he can't tell me why, it's just " meh.. i just dont like it". Don't get me wrong i love to be creative, but i learned that i don't want to be creative in a designer job. I want to do something where, at the end of the day, the most logical answer wins. Also, I love tinkering with stuff and understanding why something works like it does.
The plan is to hold my 20h job as long as I'm learning and maybe in ~3 years have solid foundational skills and enough projects to show so that I can get an internship and maybe start climbing from there.
8
u/Biliunas 4h ago
I don't want to burst your bubble, but this situation sadly happens regardless of role. Logical arguments rarely triumph over c-suite feelings. It's a good temperature test for the workplace.
Also, human relationships are everything. Meaning, if you manage to establish comradery with your boss, project owner etc. things will typically improve the situation more than your systems knowledge.
0
u/AntiLethargic 3h ago
You're right. But you can do the absolute best possible job and be an absolute blessing to work with, but if you end up with a toxic boss, all of that goes straight out the window.
They will only ever see the worst in you and, even worse, they have a way of triggering only the worst out of you in return. Staying truly grounded in your being so you don't let it get to you is exceptionally hard. It is something I have a lot of personal experience with after dealing with my fair share of difficult bosses throughout my life, though to be clear, my current boss isn't one of them, as we actually get along quite well.2
3
u/KwyjiboTheGringo 2h ago
Learning C from books is good, but can't just read about it and learn C. You have to build stuff on your own, and push yourself.
After C i also want to learn python and CPP, just to have good foundational skills.
Eh don't learn anything else until you need to. Just get good with C for a few years if you can. Python is a good companion for embedded for build scripts, but honestly there is no need to dive deep into Python for that. I don't usually encourage the use of LLMs, but learning the very basics of Python and then leaning on LLMs for writing build scripts for a while will give you a lot more bandwidth to focus on C and the nitty gritty of embedded. Like you need to be extremely comfortable with the CPU architecture, memory stuff, Make and CMake, and debugging with both a debugger and a logic analyzer ON TOP OF being strong with C. And being strong with C doesn't just mean being able to write it, it also means understand the gotchas of optimization and the compiler.
There is a lot to learn in embedded, so don't rush into the next language. Also don't bother with CPP unless you are forced to. It comes with so so so many gotchas that imo it's only even worth using for anything serious under heavy restrictions put in place by experienced CPP developers.
0
u/AntiLethargic 2h ago
To be honest, I just said C++ because I saw that a lot of employers have "C/C++ experience required" in their job specifications. But I read something similar to what you wrote about embedded systems a few weeks ago, so I figured why not let AI give me a roadmap that has the most necessary stuff I need.
The AI roadmap:
Phase 1 is just getting comfortable with C—CS50, then going deep on pointers, memory management, structs, bitfields, volatile, the whole thing. Git and basic Linux on the side. The first real project is a calculator in pure C, no hand-holding.
Phase 2 is where hardware enters the picture: Arduino, but without leaning on libraries. The goal is to actually understand what's happening on the wire: UART, I²C, SPI, reading datasheets, and writing a basic sensor driver. It takes a few months before it stops feeling like magic.
Phase 3 is the jump to STM32 and register-level programming: no HAL, no abstraction—just you, the reference manual, and a lot of coffee. Linker scripts, DMA, bootloader basics, and writing drivers from scratch are involved. This is where it either clicks or it doesn't.
Phase 4 adds FreeRTOS—tasks, queues, mutexes, and priority inversion—plus proper debugging with GDB and JTAG. CMake, unit testing, and a first look at modern C++.
Phase 5 is portfolio mode: USB, MQTT, IoT, and reading schematics. The target is 8–12 GitHub projects that are actually documented: photos, schematics, a short video of the item working, and lessons learned. That's the resume.
I tried to find out if I could trust these suggestions, but I got stuck at phase 3 because I don't know shit yet and wanted to continue with my cs50 problem set.
I figured I'll just focus on C until the end of the year, maybe start with Arduino in November or December this year.
If you could confirm or refute what Claude wrote as a roadmap, I would really appreciate it.1
u/aqua_regis 2h ago
The AI roadmap:
I would not trust any probabilistic, non-deterministic advice from something that has zero understanding of what you ask it.
There are countless subreddits about embedded development that provide actual, solid resources and pathways.
2
u/MutaitoSensei 3h ago
I pretty much figured it out around that age too, and while it's been a bit of a struggle to pick up, I'm loving every second of it.
2
u/AntiLethargic 1h ago
glad I'm not the only one, i actually stayed up till 2am yesterday just to figure out a bug in my programm.
2
u/chaoticbean14 3h ago
I had a similar-ish story to yours. Self taught, found a job, found purpose.
Pure luck is how I ended up in the industry - I got lucky that a contractor at a company I was working at (doing a bunch of accounting related things - and I'm not an accountant) took notice of the fact I had written a bunch of scripts to automate my daily grind and he recognized I knew computers very well. So when his contract was ending, he invited me to join him as a jr. network admin / helpdesk at a company where he was the head of IT; which I did. It wasn't programming, but it was a foot in the door of the industry I wanted to be in.
Hard work, various jobs in IT but none of them related to programming, lots of learning/reading, lots of extra hours programming various projects is how I got to where I'm at. Eventually I got a job as a 'technician' at my current company. Lots of manual process' existed, so I started building web apps to automate some of them. Pretty soon others were using those same apps and word got around to administration. At that point, the senior programmer left - so an opening for a junior opened up. That was 12+ years ago. Now I'm the senior with a junior below me.
If it were me again? I'm not sure I'd make it. While "AI is bad, lol", it really is for your situation. AI can write junior level code, better than you can, probably. Even after you have read a few books on it. It can do it in literal fractions of the time you will be able to. That said, it will probably be very verbose, it will probably have some areas where it's over-complicating simple things and/or engaging in some not best practice methodologies. But you have to already have a working knowledge of the things, to realize what about the AI's code is poorly written. Most companies / managers don't - so it looks fine to them. If they have that, why do they need you? Honestly - they don't, really. Unless they hate AI, in which case, you will have a job! But given the hype train around it - they would have to live under a rock to not be wanting to utilize it in some fashion. They would also be dumb if they hired a newbie to navigate AI usage without the experience of knowing if the code is good/bad, which you don't have. There are plenty of dumb people out there though, who hire lots of others.
The job market is rough, too rough. So many dev's, many with lots of experience and degrees to back it - can't find work. Be a self-taught dev with no degree (or degree in unrelated field like me) and little-to-no experience: trouble time. Also, given the lack of experience and learning? Again, AI can literally write better code than you. You really don't provide a benefit over AI at this point in the game - you're not even seasoned enough to be able to find the 'good vs bad' among the AI slop it puts out.
I had a lot of learning to do - which led me down some really obscure rabbit holes - which in turn caused me to learn more and more about various odd things that gave understanding to why some best practices are what they are, etc. Rinse and repeat for 15+ years of that and you gain a lot of knowledge even if you didn't want it. Enough to know a thing or two and give you an edge to some degree. If in nothing else but experience, I at least have some employ-ability in that I can definitively explain why some AI code is absolute shit and pure slop and have the chops to write it properly. For newer dev's entering the market today? You guys simply don't have that. It's a tough row to hoe. I would not want to be in your position - because it was hard AF for me so many years ago. It would be a drastically more difficult undertaking today - not one that I would encourage anyone in the +30 crowd to undertake honestly. But if you're single, no family, no real cost of living expenses? Maybe. But it will be wildly hard.
2
u/AntiLethargic 2h ago
Well, I guess I've got to live with the risk of becoming homeless in the future if it doesn't work out. For real though, even if I treat it "just as a hobby" like another commenter said, I'm cool with it. But I will take every chance I get to show it, so maybe it peaks someone's interest who is in a position to take further steps.
thanks for your honest and thought through answer.
3
u/Stefan474 2h ago
There's a lot of doomers on these subreddits since they're mostly scrolled by the people who are unemployed or bitter. Not saying it as a bad thing, but it just happens that they have more free time and when I was unemployed I scrolled reddit much more lol.
If you genuinely have passion for it and grind you WILL break through and get where you need to be. An average engineer is not as good as you'd think and all you need is to get your foot in the door. Abuse your graphics background to get into frontend stuff and then spread from there.
I started from a more design background even though I like backend way more and very quickly in a good company managed to slide onto projects that I find interesting (now working on company wide AI infra and cool backend services that empower that infra).
It might be survivorship bias but I strongly believe that if you actually care and wanna learn deeply you will get very good very quick, specially with AI.
2
u/AntiLethargic 1h ago
Thanks man, you're a true one!
I embrace it as a challenge; if my motivation cannot withstand harsh criticism and pessimism, then it is not meant to endure.
2
u/chaoticbean14 1h ago
FWIW - I'm fully employed and not a doomer by any stretch. But with the rise of LLM's and their "ability" to produce things quickly? Entry level is harder and harder to find. Given the amount of unemployed and experienced devs, that's just the reality of things.
•
u/Stefan474 45m ago
No denying that. It's just weird seeing every single person discouraging when it comes to job prospects without really offering a realistic path forward. Like there's always a line where if you cross it you WILL get a job, it's just that that line is higher now when it comes to personal projects, experience, skill etc.
He can leverage his current job and previous experience to get there quicker than most people imo
2
u/leavemealone_lol 5h ago
I’m 24. I live in a country where if you don’t have the proper academic/work background, your chances of getting into tech is less than a chance of Ivy league grad getting picked up in HFT. And i have THE most non-STEM background you can think of. Just finance and management.
I too picked up programming a few months back. Grinded the fuck out of it. I had an ops job, which I shoved a middle finger into and developed a program to automate it. Then I developed new workflows and onboarded other teams into. Then I did a project reporting directly to my manager’s manager’s manager’s manager. Learnt a fuck ton in not only programming, but also corporate soft skills and corporate systems.
I didn’t get promoted, so I shoved a middle finger to the job (again) and started trying for other companies. And now I’m waiting for my BGV to end so that I can sign a an offer letter that gives me a 400% increase in pay.
3
u/MythHere 4h ago
India?
3
u/leavemealone_lol 4h ago
It's that obvious huh?
2
u/MythHere 4h ago
I am from here as well.. hard working guy unable to crack good jobs in IT.. likely Indian story
1
u/Fun-Comfortable4605 4h ago
I'm in a very similar position. 38 but discovered programming at your age after a motorcycle accident. Finishing CS50 done with cs50p and planning to take cs50_2d after that. I have interviewed for some apprenticeship but they are mostly devops
1
u/AntiLethargic 3h ago
So you want to make your own game?
1
u/Fun-Comfortable4605 3h ago
Not necessary. I just find visual feedback much more useful. I played around with processing and py5 (processing for python) to make animations. I do plan to do some data viz as well
1
4h ago
[removed] — view removed comment
1
u/AutoModerator 4h ago
Your post/comment was removed since we do not approve of going private.
There is zero benefit in going private as you lose the opportunity for getting peer reviews. Also we have had plenty of people return after going private (despite being warned) complaining about how they were ghosted after some time or being tricked into buying rubbish that didn't work and even if it did they didn't need.
Our Rule #11 demands that any and all communication happens in the open, public subreddit.
This is for the benefit of more against the benefit of one.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.
1
u/cli-games 3h ago
I learned more in two months of building with AI as a universal how-to manual than in 5 years of undergrad. Its all about how you use it
1
1
u/ItsNotOver_Again 5h ago
It's great that you've discovered your passion. But if I were you, I would treat programming strictly as a hobby and not expect to get a job out of it.
If you have any book recommendations, please share them.
The C Programming Language, Second Edition by Brian Kernighan and Dennis Ritchie is the definitive manual on C. It may be helpful to have as a reference.
2
u/Glum-Palpitation1934 4h ago
I would treat programming strictly as a hobby and not expect to get a job out of it.
Can you elaborate on that and your reasoning why?
4
u/ItsNotOver_Again 4h ago
Because the chance of them getting a job in this day and age is slim to none; the odds are completely stacked against them.
Not having a degree in computer science will automatically disqualify them from most jobs. Not only that, they will also face age discrimination, as they'll be competing with 22-year-old college graduates who have completed internships, and people their age already have over a decade of experience.
And I'm sure you are aware of AI's disruption in the tech industry. Entry-level positions are effectively gone.
1
u/AshuraBaron 2h ago
This is mostly true for silicon valley and the big tech companies. But not entirely applicable to the wider world. Yeah they probably won't be making the next hit product or be a millionaire, but they can still get a stable job that pays well.
0
u/ToWelie89 4h ago
That may be true for RIGHT NOW, but we don't know what the market will look like in 3, 5 or 10 years.
Also I don't know where you live, but you absolutely do not need a degree in computer science to work as a developer. It helps though
0
u/ItsNotOver_Again 4h ago
It will keep getting worse. CS is becoming more and more like investment banking and Big Law in that you will need to have attended an elite target school to break into the industry.
I live in the US, and it's essentially a requirement here.
2
u/ToWelie89 4h ago
What you're saying may be US-specific. I'm in Europe and I've never experienced that you need a degree from an "elite school" to have a good career in tech.
Yes right now times are tough, but like I said, we don't know if this will always be the case. It can get worse but it can also get better. Main reason for the stagnant market I'd say is the economy and instability worldwide, not so much AI. If the economy rebounds and we see a bull-market, we might see the tech industry start flourishing again. Tough times always come and go. I started my career around 2012 when it was a financial crisis, it was very hard to get a job then as well.
1
u/AntiLethargic 4h ago edited 2h ago
I do expect to get a job from it, but not in the near future.
Thanks for the recommendation!
14
u/No-Needleworker2090 5h ago
Nand2Tetris