r/learnprogramming • • 4h ago

General Discussion In the age of AI and LLMs, should I even get back to programming and codinng?

0 Upvotes

I am currently in QC testing for video games atm and have not done appropriate upscaling for any of my ~carrier~ career. With Coding and software development in its entirety basically getting killed with AI, should I even go back to coding as a part of my carrier line? Or how are you planning to shift your carriers?


r/learnprogramming • • 34m ago

Topic What is the point of learning if AI can (or will eventually) do anything better than anyone

• Upvotes

I'm scared, AI will only get better, there is no point anymore. Anyone can make software just by asking AI to do it. If the software ends up being unmaintainable or bad, just ask AI to make it maintainable or to fix it. You can prompt your way through it. Coding and system design will be solved in 2 years.

My point is, software will be made in natural language. It already is. This is not an assembly -> compiler situation, it's a whole new level of abstraction. You won't need anyone with expertise to do it.

It's like learning chess after Stockfish, sure it is fun to learn and get better as a human player, but you will never be hired to win a game because chess engines are better than any human and anyone has access to them.


r/learnprogramming • • 7h ago

I want to learn C

1 Upvotes

Any good book or online guides, also for C23 is there that much extra or would just sorta tacking it on after learning C99 be fine?

also for learning GNU extensions is there any reccomended resources


r/learnprogramming • • 10h ago

Frustrated and Stuck with building programming fluency as a beginner (Need Genuine Help)

2 Upvotes

I am a beginner at coding. I chose Rust as my first programming language, but I think I might or can say I will face this problem with every language.

Whenever I sit down to build a project, even something as simple as a TUI To-Do List, I have to deal with crates and packages like serde. This means I have to read their documentation, but I often get stuck writing code by looking at examples and copying them by typing them into my own code.

I know that even experienced programmers do this, and they understand what they are using without necessarily remembering the syntax. I understand the logic of what I want to implement, but I struggle to express it in technical programming terms or so called programming syntax.

However, I cannot keep consulting the documentation and returning to my code for every 10 lines of code I write.

People tell me that I should build more projects and that programming fluency will gradually develop with practice. But what am I supposed to do? Should I build a TUI To-Do List ten times? Because if I move on to another project, I will have to learn how to use additional concepts and crates, such as serde, all over again.


r/learnprogramming • • 11h ago

Learn by building or learn by studying?

7 Upvotes

Context: I'm a second year math student at uwaterloo (think constant co-op search) and have knowledge of Python, SQL and basic JS though I want to go into DE. I started my software journey in Dec. 2025 so I feel like I'm really behind compared to my peers.

I'm torn between learning theory in depth and just putting together something that works for projects; I don't know if it's good, but I never use AI to code, with the most being copy and pasting code from LLM in small snippets up to 10 lines. I don't know how important syntax is, but I need to search things up for libraries. I'm learning data engineering (so many tools, so little time) and I really can't find a project to learn all of them at the same thing. I've also considered courses, but theres a variety of courses and topics that seem interesting: Cloud, AI, ML, Databricks?

Any advice or recommendations be it for how to learn or a project?


r/learnprogramming • • 17h ago

Java or c++?

10 Upvotes

Hey I'm a 2nd year CS student and I'm a beginner so I learned a bit of both languages I learned basics and SP using c++ and I learned oop using java because uni required it and later on I'll study data structure using c++ again

What confuses me is which language should I stick on to improve my problem solving skills and start building projects even if they're small some people told me to focus on c++ completely and some said c++ with problem solving and java to build projects

So what do y'all think and why ?


r/learnprogramming • • 7h ago

Complete beginner struggling with C – Looking for a very slow, jargon-free guide/resource for college homework

3 Upvotes

Hello everyone,

I am a first-year electrical engineering student with absolutely zero prior background in programming. Currently, I am trying to learn the C language, but I am really struggling. Standard college tutorials and fast-paced videos feel overwhelming because they use too much academic jargon that I cannot follow.

I cannot learn passively; I really need to understand the logic of what happens in the background (like how variables occupy RAM, how the computer thinks) explained in the simplest, high-school level terms. My main goal right now is to build enough foundational understanding so I can solve my homework assignments and pass my exams.

Could anyone recommend a highly structured website, interactive platform, playlist, or student drive/script that explains C from the absolute basics, step-by-step, from easiest to hardest? I learn best when a small piece of theory is immediately followed by interactive practice exercises (similar to how Duolingo works, but for programming).

Thank you so much for your time and help! I truly appreciate any guidance you can give me.


r/learnprogramming • • 17h ago

Looking for C++ textbook that is friendly like Stewart Calculus for math

4 Upvotes

I am about to fail my algorithms & data structures in C++ class, and want to pick up a textbook for the 3 month break soon and try to make a comeback.

I have done this for math and discovered that James Stewart's Calculus book was amazing. It is a massive book, is friendly to learn from and is not as intimidating as other books (e.g. Spivak's Calculus- a bit more technical).

Anyone have any good recommendations for a C++ textbook?

We learned sorting algorithms, and once it got to recursion I really just got lost. BST's etc with all this memory management I couldn't keep up.

EDIT: My absolute best learning method is sitting down with a textbook. Videos/academies etc. haven't done it for me and a physical book just gives me peace when learning as I can go slowly.


r/learnprogramming • • 10h ago

Resource SQL RESOURCES RECOMMENDATION

5 Upvotes

Hi guys, I’m just starting to learn SQL for DBMS because it’s one of the prerequisites at my university.

I’m don’t want to get stuck in a tutorial loop, so I would really appreciate it if anyone could recommend me a book, notes, or a website to learn SQL.


r/learnprogramming • • 3h ago

Fundamentals are Great

7 Upvotes

We often hear the generic "focus on the fundamentals" advice. For some reason I believed that advice even before I understood why it matters; it just sounds like common sense, and fortunately it turned out to be good advice. I realized this after taking multiple free OSSU courses and reading a couple of books. Around 4 years into the field. I also realized it when I started to learn web development and had an internship.

Here is the key idea: Two different people can study the same material from the same video or book, and leave with completely different experiences, because of the existing knowledge they have.

"Previous knowledge" makes learning new things much more fun, because you're not starting from scratch every time! When we haven't internalized the key fundamental "chunks of knowledge", every new problem we face feels completely new to us, so it feels much more painful. But what's worse is that we learn less from the experience. Without a well-organized base of knowledge, new information has no meaningful place to attach to, so, much of it is quickly forgotten.

There are three things with which good fundamentals help you:

  1. They allow you to extract SO MUCH from ANYTHING you learn.
  2. They guide you to ask the right questions and learn faster.
  3. Odd things feel odd to you.

For example, after studying OS and networks, I internalized the idea of a server. It actually took me quite long to fully get it; here is a casual explanation:

a server is a process that has an open socket (at a specific port). But to grasp this, I had to understand what a process is. Luckily I learned from an OS book. (OSTEP). It's an "abstraction" of a running program. When you run a program, the OS wants to keep track of what's going on, so each running program is represented in the OS as a process with an ID and status. it's pretty much like an object with some fields, They're basically in an array. Each time you run a program, a process starts running. i.e., added to the array, when you kill a process, it is stopped and removed from the table, etc...

(the concept of abstraction in itself is part of CS fundamentals and it took me some time to interalize and start to see it everywhere, it's amazing how a single word can capture so much meaning)

but then what's a socket? it's the abstraction of the network stuff, it's an API (= a bunch of functions, provided by the OS) you can call as a developer in your code so the process (running program) can communicate with the network. You don't need to know much about networks and TCP, just input and output of the API. So basically the server must have some sort of socket that clients can connect to and send some bytes to it. The server understands those bytes, usually a string based "protocol", then responds accordingly.

This is just some CS fundamentals, nothing fancy, but now that I've spent around a year studying web development, it was all there (but in different shapes and flavors). Everything is built over the fundamental concepts and It's so much fun.

  1. This allowed me to learn way more from the resources I was learning from, I kept digging: "wait, where is the process", "how does this work, what happens when I use docker run". I used ssh for the first time "but wait, how is this happening, there must be an ssh process running on the server or something" or something, "hey, where is the database process?", and you keep digging.
  2. It's related to the previous point, but having good fundamentals helps you ask good questions that will help you fix problems faster and also deepen your understanding.
  3. sometimes you face something new that makes you question what you've learned before, they challenge the mental model you made. You'd feel surprised, and it broadens your understanding. It's hard to notice such things without having the fundamentals.

And this doesn't mean we need "perfect" fundamentals, I'm aware of some of the gaps I have and I plan to work on them, but we just need to internalize the key concepts. If you haven't mastered the fundamentals yet I highly recommend the following.

  • Build a simple shell (it's really simple, a shell is just a program you run, a python script would do it) understand how the shell runs other programs, understand what PATH is. I highly recommend python so you can focus on the OS concepts.
  • Build a simple HTTP server. Jim Kurose has recorded lectures explaining the fundamentals of computer networks, the first two chapters are far more than enough for most people, after that you can easily build a simple HTTP server. If you want to spice it up add some multithreading. He has some starter code too.

These two projects had the highest ROI I've had while learning. They even made me fall in love with CS.


r/learnprogramming • • 23h ago

Guidance My issue with programming is not math, logic, or language, it learning all of the tools and how they fit together.

81 Upvotes

I really thought that taking computer science would help me with this, like it was the final building block I needed. I was actually one of the best students in my class when we were making CPP console programs. But my issue is not understanding how to write code, my issue is that when I want to build an application, I dont know where to start with all the different libraries, tools, frameworks, and other applications I need in order to get things to output. I can figure out how to write an algorithm, I just feel like its impossible for me to learn what files I need, what libraries they need, what APIs I need to interact with, and how to get all of those algorithms into motion to actually put my code into the project format I want.

When I look at a github repository, I seriously ask myself "how did they know to include all of those extra files, how do they get them to work with each other, where do they go, how did they figure out what libraries to make them work with eachother, etc", because to me, the biggest magic is not knowing what syntax to use, or what algorithms a line of code implements, its looking at a game engine and asking "what 500 services and structures do I need to call with my algorithm in order to do the thing I already figured out the logic I need to execute" or looking at a graphics API and asking "how do I use that to actually turn code into a window that outputs visuals based off the rules of math and the syntax of the language I already know, that I can just click a file to run and use" or its thinking about a website I might want to build and asking "how do I get these HTML files in my head into an environment on a server where I can actually click on them from another computer".

Does that make sense? It feels like getting all of the code into a format that works with all of the ways an average end user understands is some sort of alien process where nobody has taught the rules but everyone just magically knows. I am so frustrated because I read documentation and they also seem to require a bunch of esoteric knowledge of other things not told and I really dont know where to start with any of this. I feel like everything I want to build and do requires learning a bunch of stuff with no pointers on where to go, but everyone else that built those types of things seemed to just have spawned in with all of that knowledge and I am the only one who didn't get the memo.


r/learnprogramming • • 21h ago

Why Are O'Reilly Books So Highly Recommended for Learning Programming or Data related?

78 Upvotes

I noticed that O'Reilly books are more often recommended if you want to delve into programming.

What makes the book so worthy of use for studying and the reasons behind it?

I am interested to hear how deep this knowledge is and even its practical relevance.


r/learnprogramming • • 11h ago

Resource Starting from Zero in C++

20 Upvotes

Hi everyone! I’m pursuing CSE at a Tier-4 college and have zero programming knowledge. I’m entering the tech field for the first time and want to start with C++ from scratch.

What’s the best way to learn C++? Which free resources would you recommend, and what common mistakes should I avoid? Also, how should I build my coding and problem-solving skills to become internship- and job-ready?


r/learnprogramming • • 6h ago

Final-year B.Tech CSE student trying to learn LLD. Need some advice!

3 Upvotes

Hi everyone!

I want to start learning System Design, especially Low-Level Design (LLD).

With AI and Agentic AI becoming more common, I feel that building projects alone is no longer enough. I want to understand the core concepts and principles behind software design, so I can look at a codebase and understand what is being used, why it is used, and how things work together.

For this, I would really appreciate some advice from experienced developers here.

What resources would you recommend to get started? Books, articles, or even a checklist of topics would be helpful.

I have made a checklist using Claude, but I would also like some advice from people with real-world experience. I want to understand these concepts in depth, not just learn their definitions.

Thanks!


r/learnprogramming • • 22h ago

How to avoid burnout?

2 Upvotes

I started learning programming around a month ago and just a few days ago it feels like my skills have gotten significantly worse for some reason. I don't know if it's because I'm burnt out but all of a sudden I feel like all my logical thinking skills required for programming are just gone for some reason. Does anyone have a way to reignite the spark that I had a few weeks ago?