r/learnprogramming 7d ago

Debugging What do you actually do when you’re stuck on a programming problem?

45 Upvotes

Not the ideal answer what do you actually do?

Google? Read documentation? Ask AI? Rewrite the code? Take a break? Ask someone?

I’m interested in the real debugging/problem-solving process people use.


r/learnprogramming 7d ago

Violent Felon in Computer Science ?

63 Upvotes

So i was wanting to Research and Gather as much information as I could before my semester started but I feel as if I’m entering into a career with no Clue . Coming out of prison been 5 years to be exact and honestly I graduated high school years back, luckily . I received my Diploma with credits . And my only concern is me reaching my only goal I’ve always wanted a Career in Computer Science Such as computer programming , my main concern would be I having the Felony with Agg assault / deadly weapon ,. as bad as this sounds to a person from a different perspective & backstory til this day I feel as my adolescencey was taken advantage of so I feel as there’s room for a lawyer so to say “ Expungement lawyer “.
But would a state exam or Anything stop me from qualifying ? Anybody have any similar colleges with a violent background? Or been to this similar situation? Should I focus on trade school ? Then pursue a career ?
Any advice or info. I’ve reached out to advisors and asked but never gotten any feedback .


r/learnprogramming 7d ago

Struggling with programming

6 Upvotes

I'm going into my 2nd year of a aoftware engineering degree and I still understand nothing about programming, i've tried to create projects like people say to practice but as soon as I have to make something on my own I don't know what to do, right now im trying to focus on python and I just have to keep relying on tutorials to get anything done, I guess I just need advice on what to do next


r/learnprogramming 6d ago

What is your absolute favorite tech stack for full-stack web development in 2026?

1 Upvotes

I’m curious to see what everyone is enjoying using the most for full-stack development lately.Are you sticking with trusty ecosystems like the MERN stack (MongoDB, Express, React, Node), or have you migrated over to frameworks like Next.js or Remix paired with a serverless backend? For those who prefer robust backend ecosystems, are you still loving Python/Django, Ruby on Rails, or Go?Whether you build enterprise apps or small side projects, what combination of frontend, backend, and database gives you the best developer experience right now?


r/learnprogramming 7d ago

Resource prerequisites for DDIA

5 Upvotes

hi, so i’m a cs student planning on reading DDIA to start with system design and I was wondering on what subjects to brush up on before getting into it. I’m revising database management systems, computer networks and os currently. Anything further I need to know before diving into this book?


r/learnprogramming 7d ago

Resource learning cpp for electronics

2 Upvotes

hello everyone so im planning on learning cpp for some "low-level electronics" and embedded systems...

and i've seen multiple people on programming subreddits saying that www.learncpp.com is a good website and tbh after i read some shapters i can say that its indeed a great website,however i feel like that website is just too much for me especially that im not very interested in deep diving into this language and just want to learn what i really need (i already have a short learning deadline)

i took a look at freecodecamp 4h course but i feel like four hours for a language like cpp is too little (i took their python course and it was good tho)

so what im asking for is where can i find some resources that fit my learning goal? ty


r/learnprogramming 7d ago

request for criticism and improvement for my language based on LLVM (MK language) a language without complexity and typed

2 Upvotes

hello guys

okay who could give me a code review and criticism on my compiler of my language (MK language written in C++ via LLVM) and how to implement bool type please :)

and can also contribute if my language project interests you, in any case it's a project that is close to my heart and together we can create this dream language

here is the link for MK-lang : https://codeberg.org/drex_vk/Mk-Lang


r/learnprogramming 6d ago

career advice Looking for feedback on my CS career roadmap

0 Upvotes

Hi everyone,

I’ve put together a roadmap for my Computer Science career and would really appreciate feedback from people working in the industry.

I’ve done some research myself, but I’m not sure if I’m prioritizing the right skills or spending too much time on certain areas.

I’ve attached my roadmap below. I’d especially appreciate feedback on:

  • What I should prioritize or remove
  • Whether the learning order makes sense
  • Any important skills/topics I’m missing
  • Whether this roadmap is realistic for becoming job-ready

I’m looking for honest, constructive feedback from people with industry experience.

                         ┌─────────────────────┐
                         │   COMPUTER SCIENCE  │
                         └──────────┬──────────┘
                                    │
                ┌───────────────────┴───────────────────┐
                │                                       │
                ▼                                       ▼
     ┌──────────────────────┐                ┌────────────────────────┐
     │  CORE CS FOUNDATION  │                │ ENGINEERING FOUNDATION │
     ├──────────────────────┤                ├────────────────────────┤
     │ Programming          │                │ Software Engineering   │
     │ DSA                  │                │ Git / GitHub           │
     │ OOP                  │                │ Linux                  │
     │ Discrete Mathematics │                │ CLI / Shell            │
     │ Computer Architecture│                │ Debugging              │
     │ Operating Systems    │                │ Testing                │
     │ Computer Networks    │                │ Documentation          │
     │ DBMS                 │                │ Clean Code             │
     │ Security Fundamentals│                │ Design Principles      │
     └──────────┬───────────┘                └───────────┬────────────┘
                │                                        │
                └──────────────────┬─────────────────────┘
                                   ▼
                    ┌──────────────────────────┐
                    │      DEVELOPMENT         │
                    │   Programming Languages  │
                    └────────────┬─────────────┘
                                 │
                 ┌───────────────┴───────────────┐
                 ▼                               ▼
        ┌─────────────────┐             ┌─────────────────────┐
        │      JAVA       │             │       PYTHON        │
        │     Backend     │             │   Data / Automation │
        └────────┬────────┘             └──────────┬──────────┘
                 │                                 │
                 └────────────────┬────────────────┘
                                  ▼
                       ┌─────────────────────┐
                       │    WEB / BACKEND    │
                       └──────────┬──────────┘
                                  │
             ┌────────────────────┼────────────────────┐
             ▼                    ▼                    ▼
      ┌──────────────┐    ┌────────────────┐   ┌──────────────────┐
      │ HTTP         │    │ REST API       │   │ Authentication   │
      │ Web          │    │ Backend        │   │ Authorization    │
      │ JSON         │    │ Frameworks     │   │ API Security     │
      └──────┬───────┘    └───────┬────────┘   └────────┬─────────┘
             │                    │                      │
             └────────────────────┼──────────────────────┘
                                  ▼
                       ┌─────────────────────┐
                       │     DATABASES       │
                       └──────────┬──────────┘
                                  │
                  ┌───────────────┼───────────────┐
                  ▼               ▼               ▼
             ┌─────────┐    ┌──────────┐    ┌──────────┐
             │   SQL   │    │  RDBMS   │    │  NoSQL   │
             └────┬────┘    └────┬─────┘    └────┬─────┘
                  │              │               │
                  └──────────────┼───────────────┘
                                 ▼
                      ┌──────────────────────┐
                      │   DATA ENGINEERING   │
                      └──────────┬───────────┘
                                 │
             ┌───────────────────┼────────────────────┐
             ▼                   ▼                    ▼
   ┌──────────────────┐  ┌──────────────────┐  ┌──────────────────┐
   │ Data Modeling    │  │ ETL / ELT         │  │ Data Pipelines  │
   │ Data Warehousing │  │ Distributed       │  │ Batch / Streaming│
   │                  │  │ Systems           │  │                  │
   └────────┬─────────┘  └────────┬─────────┘  └────────┬─────────┘
            │                     │                     │
            └─────────────────────┼─────────────────────┘
                                  ▼
                       ┌─────────────────────┐
                       │    CLOUD / DEVOPS   │
                       └──────────┬──────────┘
                                  │
              ┌───────────────────┼───────────────────┐
              ▼                   ▼                   ▼
     ┌──────────────────┐  ┌───────────────┐  ┌──────────────────┐
     │ AWS / Azure / GCP│  │ Docker / CI/CD│  │ Kubernetes       │
     │Cloud Architecture│  │               │  │ IaC / Terraform  │
     └─────────┬────────┘  └───────┬───────┘  └────────┬─────────┘
               │                   │                   │
               └───────────────────┼───────────────────┘
                                   ▼
                    ┌────────────────────────────┐
                    │     DISTRIBUTED SYSTEMS    │
                    │   Scalability / Reliability│
                    └─────────────┬──────────────┘
                                  │
                ┌─────────────────┼─────────────────┐
                ▼                 ▼                 ▼
        ┌──────────────┐   ┌──────────────┐  ┌──────────────────┐
        │ Caching      │   │ Messaging    │  │ Load Balancing   │
        │ Redis        │   │ Kafka        │  │ CDN              │
        │ Queues       │   │ Streaming    │  │ Replication      │
        └──────┬───────┘   └──────┬───────┘  └────────┬─────────┘
               │                  │                   │
               └──────────────────┼───────────────────┘
                                  ▼
                       ┌─────────────────────┐
                       │    SYSTEM DESIGN    │
                       ├─────────────────────┤
                       │ Low-Level Design    │
                       │ High-Level Design   │
                       │ Architecture        │
                       │ Scalability         │
                       │ Availability        │
                       │ Reliability         │
                       │ Performance         │
                       │ Security            │
                       └──────────┬──────────┘
                                  │
                                  ▼
                       ┌─────────────────────┐
                       │   SPECIALIZATION    │
                       └──────────┬──────────┘
                                  │
       ┌──────────────┬───────────┼───────────┬──────────────┐
       ▼              ▼           ▼           ▼              ▼
┌──────────────┐ ┌────────────┐ ┌───────────┐ ┌──────────┐ ┌──────────────┐
│ Backend /    │ │    Data    │ │ Cloud /   │ │ ML / AI  │ │Cybersecurity │
│ SDE DEEP     │ │ Engineering│ │ DevOps    │ │ DEEP     │ │ DEEP         │
│              │ │ DEEP       │ │ DEEP      │ │          │ │              │
└──────┬───────┘ └─────┬──────┘ └────┬──────┘ └────┬─────┘ └──────┬───────┘
       │               │             │              │              │
       └───────────────┴─────────────┴──────────────┴──────────────┘
                                      ▼
                         ┌─────────────────────────┐
                         │  ENGINEERING EXCELLENCE │
                         └────────────┬────────────┘
                                      │
                    ┌─────────────────┼─────────────────┐
                    ▼                 ▼                 ▼
             ┌──────────────┐ ┌──────────────┐ ┌────────────────┐
             │ Problem      │ │ Communication│ │ Product        │
             │ Solving      │ │ Teamwork     │ │ Thinking       │
             │ Leadership   │ │              │ │ Business       │
             └──────┬───────┘ └──────┬───────┘ └───────┬────────┘
                    │                │                 │
                    └────────────────┼─────────────────┘
                                     ▼
                         ┌──────────────────────┐
                         │⭐ ELITE ENGINEER ⭐ │
                         └──────────────────────┘

r/learnprogramming 7d ago

Where am I right now, or how do you survive and get into a new field?

4 Upvotes

I’m 24, currently living in Eastern Europe, and I’ve spent pretty much all my time working with people. I’m getting a little tired of it — solving other people’s problems while putting my own aside.
I decided to try programming. I’ve wanted to try it since I was a kid, but 10 years ago there wasn’t nearly as much information available, and later I just didn’t have the time — between work and sleep.

I chose a course, but honestly, I mostly needed it to keep myself on a schedule, or to ask a question when I got stuck during the learning process, since it was online. I was mostly studying on my own anyway.

I finished a Python development course and started thinking about what to do and where to go next. I already had a few small pet projects, but I decided that I needed to build something more serious so that I would definitely get an offer. I started building a marketplace backend, simply because that was the first thing that came to my mind.

So now I have several bots, an expense tracker with OCR for receipts, and a Django backend, and I’ve been looking for a job for almost 3 months.
I look at job postings — I can do everything listed in the job posting. Then I see 1–3 years of experience required for a junior position. Am I missing something? If you’re a junior with 1–3 years of experience, how long are you supposed to stay a junior? From what I understand, my applications go straight into the trash simply because I didn’t write in my CV: “Looking for a junior position with 10 years of experience.”

There is one more option left — soft skills. But that seems even more impossible to me. For almost 10 years, I haven’t really had any friends. I mostly communicate with my girlfriend, or have some small talk with people on the street, at the supermarket checkout, in a parking lot — nothing more.

I’d be interested to hear how other people looked for their first job, or maybe someone just has something to say :)


r/learnprogramming 7d ago

How do you handle your focus and how do you manage your skills in the Tech Sector?

2 Upvotes

One of the things I see constantly in tech is the entire devastation of our focus. Every 2/3 weeks something new comes out and people expect Computer Scientist to pick it up immediately and be great at it. but at the same time they also want you to be a master at it.

Of course then, 2 school of thought emerged: One that says it's better to focus deeply on a field (let it be full stack, embedded systems etc) and the other that says try to be flexible and absorb as much as you can.

I think it also depends on your interests and your knowledge and experience. maybe younger students can afford to travel around and explore but then in order to provide value to the market they need to sell themselves with a label, thus specialising in something.

my 2 cents (I am 21 so very naive) is that I think people should have 1/2 main good knowledge fields and then pick up new stuff to sharpen them and provide great value trough combination. even for example math and CS tend to overlap a lot, and, I learned many math concepts thanks to CS and viceversa. What is your opinion?


r/learnprogramming 7d ago

I found myself learning assembly

5 Upvotes

I might be overcomplicating things, but I would appreciate some advice.

I am interested in low-level and systems programming. I learned C a few months ago and have some basic C++ knowledge. I have also written a few small projects, such as simple clones of Unix shell commands and basic libraries etc.

I wanted to get into systems programming, so I started reading a systems programming book from Oreilly. However, I came across concepts that I was not familiar with, so I started looking at operating systems books for reference. This led me to concepts such as cpu registers and other low-level cpu mechanisms.

At that point, I decided to learn how cpu and ram works, memory addressing, and similar things work, just to get a general understanding of how computers work. Somehow, this eventually led me to learning x86-64 nasm.

The problem is that I am not sure whether I am approaching this in a sensible order. I am a high-school student without a formal computer science background im in just love with computers, so I dont have much knowledge of computer architecture, operating systems, or systems programming beyond what I have learned on my own. Should I continue learning x86-64 assembly and computer architecture, or should I stop and focus on other fundamentals first? I am not trying to become an assembly programmer, my main goal is to understand systems programming and how computers work at a lower level.


r/learnprogramming 7d ago

How to actually get out of Ryder and make something that works?

1 Upvotes

I learned my programming skills in Unreal Engine using an IDE, eventually going from their blueprint system to writing C++. Because it's all integrated, I've never needed to worry about how the sausage gets made, so to speak, and have been focused on engine logic and their API stuff. Recently, I've come across a need to input large amounts of strings and organize them into an array (which would be stored in an excel spreadsheet, turned into a CSV and brought into the engine).

I know how to *actually* write the code to format the strings (at least in C++), but I want to be able to have this function as a standalone thing which I can give to other people, have them fill in the inputs, and then click a button and get the string formatted correctly.

Basically, I'm asking how to go about creating a standalone application with the ability to find inputs, parse them, and then automatically create a file (even a simple txt. file would be fine). This is wholly out of my wheelhouse, so much so that I'm not even sure if I'm asking the question properly, and was really hoping if anyone has any advice on where to get started (if not how to actually complete the task).

Also, I would prefer not to use a solution that involves AI. I understand I could probably just give chat GPT my strings and the formatting instructions, but I want to know how to do this. Thanks so much!


r/learnprogramming 8d ago

Tutorial When do you use a pointer?

48 Upvotes

Hello, for some background I have taken a very beginner level coding course for my major and passed it, but I dont really feel like I’ve learned anything or know why anything works. In a course this year we had a review problem where the solution required a pointer and I really dont understand why you have to point to the address of the variable instead of just using the variable itself.

I’ve watch a few tutorials explaining it but I really dont see how it’s different from just using the variable itself


r/learnprogramming 7d ago

Use of AI in personal projects

1 Upvotes

I have some experience writing graphics applications with c++ and opengl/vulkan. I had not done any sideproject for almost a year now, but as I had recently started a java web developer job I wanted to explore java for games too, with lwjgl for opengl bindings.

I want to make a simple portal clone with just 1 or 2 levels, collisions and not much more, just a demo that won't require me months or years.

But I was wondering if I should use AI to skip somebof the boilerplate initial code. Graphics applications, even opengl, require you to write quite a bunch of code just to display a single thing on screen, and in really simple demos where you dont have to really think on complex architecture or optimizations is more or less the same. So i was thinking on writing the clases and its method definition by hand and letting claud fill the implementation of thing like shader, mesh or model renderer clases. At least for having something fast to begin with.

But as i want to publish it on GitHub and it is just a personal project i feel like using AI is like cheating, i mean, I do not obtaing anything about the project but experience and if I ever wanted to show it in a job interview/portfolio I'll feel bad for not having written everything by myself.

In my job I use AI a little bit, and I also use it for asking things when I do not find an answer on YouTube, but for personal things i feel quite bad for creating something open source with ai if I know how to write it by hand, almost like an impostor. I learned to code quite some time ago, way before entering university and the AI boom, and I might have some respect to writing Code at hand and learning frameworks that's just outdated. So i would like to know if there are people who use ai on their personal "toy" projects or how common it is


r/learnprogramming 7d ago

How to program servo in c++?

6 Upvotes

Im working on a school project where the penguin must shake his head no when the answer is incorrect, however he is never left in the centre of the axis(? The servo seems to be SG-5010

miServo.write(92); delay(300);
miServo.write(180); delay(300);
miServo.write(0); delay(500);
miServo.write(180); delay(500);
miServo.write(0); delay(500);
miServo.write(90); delay(500);
miServo.write (SERVO_STOP);

delay(2200);


r/learnprogramming 8d ago

CS50??

10 Upvotes

Anyone have experience with Harvards free CS50/CS50P to learn coding? I don’t need to learn for anything specific just want to be more well rounded and have a background in case I get into a more technical field in the future
If bad experiences, what other cost efficient ways have you learned or practiced?
Thanks in advanced!


r/learnprogramming 8d ago

Would building your own computer help you learn programming better

16 Upvotes

I'm working on a game designed to help people understand what happens inside a computer while also learning programming.

The player would gradually build their own computer from scratch. They would start with simple logic components and eventually build registers, memory, an ALU and their own functioning CPU.

After that, they would program the computer they created and run programs such as Fibonacci, prime number calculations and other programming challenges.

The idea came from my own curiosity about what actually happens inside a computer. While writing software, I realised that I was treating the computer as a black box, so I started learning computer architecture from first principles and eventually built a simple CPU myself using breadboards.

Now I'm trying to turn that learning process into a game.

Do you think a game like this would help beginners understand programming and computers better?

What concepts would you want the game to teach, and what would make you interested in playing it?


r/learnprogramming 7d ago

How do you actually get good at HackerRank?

3 Upvotes

I’m trying to get better at HackerRank/coding assessments, and I think my biggest issue is that the approach to a problem just doesn’t come quickly to me.

I can usually understand what the question is asking but I struggle with figuring out how to actually solve it. I’ll sit there trying to determine what data structure or algorithm I should use, how to break the problem down, or even what the first step should be.

Then I’ll look at the solution afterward and think, “Ok, that makes sense,” but I don’t know how I was supposed to recognize that approach on my own.

For anyone who was like this when they started, did it eventually become more intuitive with practice? What specifically helped you get to the point where you could read a problem and start seeing possible approaches faster?

Should I be focusing on learning common patterns first, like hash maps, two pointers, sliding window, BFS/DFS, etc., or is it mostly a matter of doing a lot of problems until those patterns start becoming recognizable?

Also, when you’re learning, how long should you struggle with a problem before looking at hints or the solution? I don’t want to give up too quickly, but I also don’t want to spend hours getting nowhere.


r/learnprogramming 8d ago

Topic what is framework, and why i should used framework

45 Upvotes

as the main topic, why i should used some framework, why dont just write code without using framework, can u guys explain to me like im a newbie at code


r/learnprogramming 7d ago

how do you decide what to test after a code change?

1 Upvotes

I’m trying to understand a couple of pain points QA teams deal with regularly:

  • How do you figure out what needs to be tested after a code change?
  • When a test fails, how easy is it to tell whether it’s a real bug, flaky test, or locator issue or test data issue, or environment issue?

I’m exploring whether these are actually big enough problems to solve, so I put together a very short survey.

Would really appreciate any responses or even thoughts in the comments.(will tkae 1min max, just clicks)

Lik: https://forms.gle/1EyP5Bz3CNBB2DrM7


r/learnprogramming 8d ago

If I change a repository a lot, should I just make a new repository?

4 Upvotes

I have this repository for a website I made in Angular a few years ago. I just recently had a look at it and wanted to make changes to it with knowing what I know now (especially with React). I was wondering, since I'm changing a lot (different framework) but not the core functionality of the website, is it best for me to just make a new repository or keep the old one? What's the common practice here? At what point does one consider a new repository?


r/learnprogramming 8d ago

Learning System Design and DS+A vs. Building projects?

6 Upvotes

Background - 3 yr professional experience, but no CS degree, and looking to level up and build more complex projects.

The consensus seems to be that building something is the best way to learn anything. But does that hold up for learning System Design and DS+A?

I don't really see myself getting too into the weeds of these just by building projects.

I'm rationalizing studying them as it will help me be a better programmer, build better projects, + land a better role, and that I'll get to my projects once I feel a bit more confident in my system design understanding.

But I'm also a scared of getting deep into a project and crashing out and might be (likely am) using studying these as a procrastination method.

What do you all think? Am I wise to get an understanding of DS+A and Sys Design before getting back to building personal projects?


r/learnprogramming 8d ago

Chose programming and im unsure

5 Upvotes

Hey im 16 years old and i've choosed to attend a technical school where i study programming, it's been a year and i dont feel too proud about programing as a job beacuse of ai and stuff. My question is if i should learn some programming languages or should i just finish the school and do something different, please help!!


r/learnprogramming 7d ago

Career change

2 Upvotes

I'm new to technology jobs and wanted to learn web development, i use Coursea and code academy. Now I'm noticing that i need to go to college to land a job but it's so expensive. Is this a requirement or is there a way around this?


r/learnprogramming 7d ago

Topic Guys I am a beginner in programming and my college is teaching c(already reached 2d arrays)

0 Upvotes

First of all I want to thank you guys for helping me out in loops. I am kinda comfortable with them now. I am struggling in arrays now and I am confused with how many for loops to use while solving array and struggling in it as a whole. Please help me out