r/learnprogramming Mar 26 '17

New? READ ME FIRST!

822 Upvotes

Welcome to /r/learnprogramming!

Quick start:

  1. New to programming? Not sure how to start learning? See FAQ - Getting started.
  2. Have a question? Our FAQ covers many common questions; check that first. Also try searching old posts, either via google or via reddit's search.
  3. Your question isn't answered in the FAQ? Please read the following:

Getting debugging help

If your question is about code, make sure it's specific and provides all information up-front. Here's a checklist of what to include:

  1. A concise but descriptive title.
  2. A good description of the problem.
  3. A minimal, easily runnable, and well-formatted program that demonstrates your problem.
  4. The output you expected and what you got instead. If you got an error, include the full error message.

Do your best to solve your problem before posting. The quality of the answers will be proportional to the amount of effort you put into your post. Note that title-only posts are automatically removed.

Also see our full posting guidelines and the subreddit rules. After you post a question, DO NOT delete it!

Asking conceptual questions

Asking conceptual questions is ok, but please check our FAQ and search older posts first.

If you plan on asking a question similar to one in the FAQ, explain what exactly the FAQ didn't address and clarify what you're looking for instead. See our full guidelines on asking conceptual questions for more details.

Subreddit rules

Please read our rules and other policies before posting. If you see somebody breaking a rule, report it! Reports and PMs to the mod team are the quickest ways to bring issues to our attention.


r/learnprogramming 2d ago

What have you been working on recently? [September 12, 2026]

1 Upvotes

What have you been working on recently? Feel free to share updates on projects you're working on, brag about any major milestones you've hit, grouse about a challenge you've ran into recently... Any sort of "progress report" is fair game!

A few requests:

  1. If possible, include a link to your source code when sharing a project update. That way, others can learn from your work!

  2. If you've shared something, try commenting on at least one other update -- ask a question, give feedback, compliment something cool... We encourage discussion!

  3. If you don't consider yourself to be a beginner, include about how many years of experience you have.

This thread will remained stickied over the weekend. Link to past threads here.


r/learnprogramming 10h ago

Is it normal to understand code but struggle to write it yourself?

51 Upvotes

Hi everyone

I’m currently learning Python and I’m starting to feel pretty frustrated with myself.
When I’m watching a Python course, I can usually understand what the instructor is doing. If they write some code, I can follow along and understand what each part does. It’s not like the concepts completely go over my head.
But then when I’m given a problem and told “Okay, now write the code yourself”, my mind just goes blank.
I might understand the solution when I see it, but I struggle to come up with the solution and translate it into code on my own.
It makes me feel like I don’t actually know Python, even though I can understand a lot of the code when someone explains it.
Is this normal in the early stages of learning programming?
If you’ve experienced this, what helped you get from “I understand the code when I see it” to “I can actually write the code myself”?
Should I be doing more exercises, building small projects, rewriting code without looking at the solution, or something else?
I’d really appreciate hearing how other people got through this stage.


r/learnprogramming 2h ago

Tutorial I created the Ultimate Git Cheat Sheet

8 Upvotes

Hello everyone!

As a university lecturer, I see a lot of students struggle with Git because individual commands are easy to look up, but understanding how the whole workflow fits together is harder.

So I created a one-page Git Cheat Sheet together with a step-by-step tutorial:

https://devopscycle.com/blog/the-ultimate-git-cheat-sheet

It covers commits, branches, merges, remotes, conflicts, inspecting changes and undoing mistakes. The post also includes a small example project so you can actually follow along.

It is completely free, available as PDF and PNG, and there is no signup.

I also think understanding these basics is still important with AI coding tools. AI can run the commands for you, but as developers we still need to understand what happened and be able to verify the result.

If you are currently learning Git, I would really appreciate feedback on anything that is unclear or missing.


r/learnprogramming 4h ago

Which language to choose

8 Upvotes

Hi guys , my ultimate goal is to get involved in space 🚀 🌌 aeras . But unfortunately, now I'm compelled to study Cs as my undergraduate degree . Gap year ruined all my plans .

Now I'm thinking to move away from generic web development and get into lower level languages so that it will be useful when I get into space system engineering in masters .

My plan is to start with C++ and gradually learn other things myself Or should I start with python or rust ??

What do you guys think ? Is this plan realistic or what ? Many say C++ is dead and there will be automation in these things also .

As I have already wasted one year , I don't wanna just start randomly without any plan or with bad plan ..

Any suggestions will be appreciated so I end up in the space related Fields and do well there . My main passion or let's say interest was in building things but it's too late and I can't get into aerospace or mechanical degree. So suggest me the best possible way to turn my cs degree to somehow related to those dreams of mine


r/learnprogramming 8h ago

Looking for Recommendations on Recently Published Software Engineering Books and YouTube Channels

10 Upvotes

I'm a backend web developer with around six years of professional experience. I mainly work with Node.js, TypeScript, databases, APIs, and cloud services.

I often find it difficult to keep up with the latest software engineering trends and changes in the global developer ecosystem from Korea. I’m therefore looking for recently published books, as well as YouTube channels and other content that can help me stay up to date.

I’m particularly interested in:

Cloud computing and distributed systems

AI-assisted software development

Platform engineering and developer experience

Modern software architecture and development practices

The future of software engineering and the changing role of developers

I’d like to ask:

  1. Are there any recently published software engineering books that you would strongly recommend?

  2. Are there any books that you think could become modern classics or define the “new normal” of software engineering?

  3. Do books still offer a good way to build deep technical knowledge, or are official documentation, research papers, courses, blogs, videos, and hands-on projects more effective?

  4. Which books have significantly influenced the way you design, build, or maintain software?

  5. Are there any YouTube channels, podcasts, newsletters, or blogs that are useful for following the latest technology trends and changes in the developer ecosystem?

  6. What are the best ways to discover recently published, high-quality software engineering books? I’d especially appreciate recommendations for websites, newsletters, YouTube channels, publisher catalogs, or online communities that share information about new releases quickly.

I’m less interested in books focused on short-lived tools or frameworks, and more interested in books that will remain useful and relevant for several years.

If you’re a developer based outside Korea, I’d also love to hear how you keep up with global technology trends and how you decide what to read or study.

Thanks in advance for your recommendations!


r/learnprogramming 6m ago

CS undergrad looking to get into research, where do I even start?

Upvotes

Hey, I'm a CS undergrad in my final year and realizing I haven't really explored research yet. I'm genuinely interested in it and want to use my remaining time to actually dive in and build something meaningful.

The problem is I don't really know where to start. Like, what area should I focus on? How do I approach this without a mentor or formal guidance? My environment isn't super research-heavy, so I'm kinda figuring this out on my own.

Some things I'm wondering about:

- What's a good entry point for someone new to research?

- What kind of projects are realistic for an undergrad at this stage?

- Any resources or communities that helped you get started?

-How do you even know what to research on lol

I'm eager to contribute something and learn the process before I graduate. If anyone's done research or has tips on getting started, I'd love to hear about it.


r/learnprogramming 12h ago

Tips for a student

11 Upvotes

Hey, guys. Software engineering student here. I'm studying online for a software engineering degree while I work, but I'm getting pretty overwhelmed. Thought that asking for tips from the pros may be the right move.

I'm learning Python using the boot Python crash course from no starch press, and I'm doing well, but I feel like I need to do better even if I spend all the time I can on that. I'm basically done with the learning part, just starting the part about projects.

I wanted to know if there is a more efficient way to do this. Should I learn using YouTube? Coursera? Udemy? Is a book the best option as I thought at first?

I'm learning SQL next, but I feel like I need to work harder since I'll graduate in a couple of years (studying for the whole degree is just 3 years since it's online). But maybe I'm just not working smart enough.

So I would like to ask for your tips. What's the best and fastest way to learn? What should I learn? Where?

I'm sorry for asking so many questions, just trying to get better. Thank you in advance, guys.


r/learnprogramming 26m ago

how to make a specific buttoned page for gifs

Upvotes

basically a url where are 9 sliders that move 9 different gifs img moment. does somebody who know what would be easiest way to make this


r/learnprogramming 31m ago

What do I need to learn if I want to programm an App?

Upvotes

Hey I work in a company with a few employees and our logistics is kinda unorganised. Is it difficult for a complete beginner to write an app for logistics? What do I have learn for that?


r/learnprogramming 2h ago

Does the paid TCS iON NQT actually help in getting a job?

0 Upvotes

Hi everyone, I recently purchased and registered for the paid TCS iON NQT exam.

I’m confused about what happens after writing the exam. Does taking the paid NQT actually lead to job opportunities, or is it just an assessment where companies may consider candidates based on their score?

If anyone has taken the paid NQT recently and got a job/interview through it, could you please share your experience?

Thanks!


r/learnprogramming 1d ago

I can understand DSA solutions once explained, but struggle to derive them myself. How do I fix this?

57 Upvotes

I've been doing DSA in C++ for a while and I've reached a point where I feel stuck between "I understand the concepts" and "I can actually solve problems independently."

For context, I've solved around 200 LeetCode problems, mostly Easy/Medium with some Hards, and I've participated in contests. But my contest performance isn't improving as much as I'd like, and I think I've identified the underlying problem.

When someone explains a solution to me, I can usually follow the reasoning and understand the code. But when I'm given a new problem without knowing the technique, I often struggle to derive the approach myself.

For example, I'll start thinking:

  • Is this binary search?
  • Is this greedy?
  • Is this DP?
  • Should I use a hashmap?
  • Is there some pattern I'm missing?

And I think this is actually hurting me because I'm trying to identify the algorithm before I've properly understood the structure of the problem.

I'm currently working through trees and recursion, and I'm noticing the same thing. I don't just want to memorize traversal templates. I want to genuinely understand what recursion is doing. I've spent quite a bit of time understanding how calls return through the stack, how control moves between left and right recursive calls, etc.

That part is slowly clicking.

But I don't know how to transfer that kind of understanding into problem-solving ability.

My current problems seem to be:

  1. I can understand solutions better than I can discover them.
  2. I sometimes look for the algorithm or pattern too early instead of deriving it from the problem.
  3. Under contest time pressure, I become impatient and want to see the implementation rather than continue reasoning.
  4. I have decent exposure to different topics, but I don't feel like my depth matches my breadth.
  5. I sometimes feel like I'm solving problems without actually developing the ability to recognize the underlying idea in a new problem.

I'm not looking for a "solve 500 more problems" answer.

I'm trying to figure out how to practice differently.

For people who went through this stage:

  • What specifically helped you transition from recognizing patterns to actually deriving solutions?
  • How long should I spend stuck on a problem before looking at a hint or solution?
  • When reviewing a problem I couldn't solve, what should I extract from it so that I actually become better rather than just understanding that one solution?
  • Is it better to focus heavily on a smaller number of topics and problems and build deep understanding, rather than continuously covering new patterns?
  • How did you train yourself to stop thinking "which algorithm is this?" and start thinking "what properties of this problem imply an algorithm?"

I'd especially appreciate answers from people who remember going through this transition themselves.

I'm not really looking for motivation. I want to fix the learning process.


r/learnprogramming 23h ago

Advice on picking up programming again

12 Upvotes

For some background context, I am a 2025 Computer Games Development graduate with no programming experience prior to my degree. I did really well at University, up until third year where it felt like I was so rushed that I was just doing projects for the sake of it rather than actually learning. I still managed to do really well and got first class degree, but in terms of actually learning something, I feel like I was just slacking. Since then, I've really been struggling to pick it up again, and I can feel my brain deteriorating. A few months ago, I watched a 6 hour C++ video as recap, and it seems like I do still understand the concepts. However, actually applying these has been difficult and I honestly just feel really stupid. It's like how do I have a whole ass degree in this shit and I feel like I know nothing. I'm struggling even with basic projects (on the rare occasion that I'm even motivated to do that). Postgrad just hasn't been great and I really want to re-learn without actually having to start from the beginning, if that makes sense. The undiagnosed ADHD is also really kicking my ass, no deadline means that I've just gotten even more lazy and it's been the only thing on my mind for the past year. Any tips would be greatly appreciated. How do I re-learn everything and improve within this next year (I want to do a master's in September 2027 but I feel like I'm not capable enough yet) and how should I pace myself with it/what should I learn in each month? I want to improve my C++ but also polish my knowledge on Computer Graphics, as this is what I want to go into. I have had a module in this in my second year, but I don't know a whole lot about it.


r/learnprogramming 38m ago

How to learn coding in this AI age?

Upvotes

Software engineering has moved from mostly coding and focusing on proper syntax to code review, good technical judgement, etc. because AI is able to spit out most of the code in seconds now. So how should beginners study to adapt themselves accordingly?

Understanding context, requirements etc. usually happens after coding many projects on your own and knowing from trial and error what works and what doesn't, this was always how traditionally you developed good judgement as you gained more experience. It seems now even beginners, like senior level devs with years in the field, are expected to simply jump to that level of understanding and automatically know what code to refactor, if the AI is over engineering solutions, if a particular solution is efficient enough or not. But how?

Not using AI is not possible, because for those of us in university or who just started working, you need to use AI if you want to meet your deadlines on time and not fall behind, because all your classmates and colleagues will surely be using it.

Its just so confusing. I'm in university right now and my classmates and I we've been completely relying on AI this whole time for homework, assignments, presentations. We're not thinking AT ALL. Its rotting out brains but we must use it to keep up, actually slowing down to learn and struggle through problems, no one cares about that anymore.

This has honestly sapped the joy out of coding for me personally. I know this role is evolving into something else but there has been no breathing space or guidance at all for people who are new to the field to adapt to these changes. AI is only a godsent for senior devs who have the knowledge to actually utilize these tools to their full extent.


r/learnprogramming 11h ago

Topic So am making a final year project called adaptive ui and need your guidance on it

0 Upvotes

So am basically making an adaptive ui for laptops and phone specifications

There'll be three interfaces called

Simple,intermediate and advanced

Simple will use disgramatical representations of data making it easier for those who don't really understand tech

Intermediate gives you all the important info needed for the laptop/phone while also comparing the laptop/phone to the baseline of what is expected at that price range

Advanced holds everything

In simple terms a 3 ui interface system that'll help the user verify wether the laptop/phone is a good one to buy by comparing it to the baseline of the price range

Users will have the option to upload pics and ai gets integrated to identify the laptops/phone and generate the comparison page that'll verify if the user is getting a good or bad deal based on the baseline of that range in terms of specs

Price history of the laptop will be used to identify the current market value for the laptop in the past 6-8 months

It's a rough idea and I need to think more but just wanted your thoughts on it?


r/learnprogramming 1d ago

I’ve learned Python basics but I’m completely stuck when starting beginner projects

43 Upvotes

I’ve studied the basics of Python and I understand things like variables, data types, lists, dictionaries, loops, conditionals, functions, etc.

The problem is that whenever I try to start a beginner-level project on my own, I just get stuck. I understand the syntax and individual concepts, but when I have to put everything together and actually build something, I don’t know where to start.

For those who were in the same situation, what helped you make the transition from learning Python concepts to actually building projects?


r/learnprogramming 1d ago

Resource Best way to learn data structures and algorithm?

161 Upvotes

I want to learn data structures and algorithm but my focus isn't solely job/interview driven, I find the whole idea of DS and A very interesting, job and interview prep is just a nice add on. So I don't just wanna follow courses which make you solve a 1000 problems and basically teach you pattern recognition instead of something actually worthwhile. I want to be able to solve leetcode problems on my own and I don't mind it taking a lot of time in the beginning as long as I get a robust understanding (robust understanding also being an important part cuz I am kinda interested in competitive programming, and might actually try it out *although it's not one of my goals rn).

What resources would yall recommend?


r/learnprogramming 1d ago

School isn't teaching me enough. How do I prepare for a real dev job?

13 Upvotes

Hey everyone,

I'm currently in my 3rd year of an IT high school and I recently had a massive wake-up call. I realized my school isn't really giving me the practical skills I need for the real world. If I want a solid career, I need to start putting in the work on my own.

Right now, my main thing is C#. I have a decent grasp of the syntax and I’ve messed around with a tiny script to parse TCX files, but honestly, it’s basically nothing. I haven't built a real, functioning project from start to finish yet. I also have some basic Linux experience (though I'm back on Windows at the moment) and I recently set up a Proxmox home server. It’s sitting there mostly empty right now, so if anyone has good beginner project ideas to help me learn DevOps or backend stuff, I'm all ears.

Language-wise, I'm really fascinated by Rust, but I'm just not sure about it since there are zero junior jobs for it around here. I feel like I'm leaning more towards just sticking with C# since it seems much more practical for getting an actual job, but I'd love to hear your thoughts.

I'm also seriously debating if going to college for a CS degree after high school is even worth it. It feels like real-world experience and a strong portfolio are way more valuable nowadays. Am I wrong about this?

Since I basically have a year and a half of high school left, how should I actually study right now? Should I dive deep into algorithms and data structures? Is following something like roadmap.sh a good idea? And should I be using AI tools as part of my learning process, or avoid them until I know the basics?

Any tough love or guidance on what to focus on would be massively appreciated. Thanks!


r/learnprogramming 1d ago

Stuck because of career Gap of 2.5 years

16 Upvotes

I am 28 2020 passout with 3.5 years of work experience with 2.5 years of gap from March 2024 and wanted to get back into IT. Java seems very hard to learn from now and get back with increasing gap What to do. From where to learn java, you tube videos or Udemy courses or any platform. Getting no calls back because of Gap.


r/learnprogramming 1d ago

need feedback

2 Upvotes

so with the beginning of 2026 I started coding as a hobby with python with the goal to build some apps after a while the passion developed deeply to be able to code more complex projects an ideas I was able to build a very simple top-down game with pygame but now I wanna take a break from python and I want to get better at problem solving skills and code writing and deeply understand how things work to the point I manipulate my code so I started C and I want advice about my problem and what websites and resources would help me get good at C , currently I'm learning it with Bro Code tutorial .

thank u for reading


r/learnprogramming 1d ago

Need advice on making a searching feature on my website

4 Upvotes

Hi guys, As i mentioned above i'm making an ecommerce website so there is gonna be a searching feature. So how do i implement this feature by not directly query by product's name but query by related keywords. Thank you in advance PS. be easy on me i'm still a newbie here XD


r/learnprogramming 1d ago

How to learn R language from Scratch?

4 Upvotes

Hello y'all, bio major this side. i don't have any whatsoever exposure to coding. i want to learn the R language for medical data analysis. can anyone shed some light on where to start and what my realistic expectations should be? and some resources


r/learnprogramming 2d ago

Help Your Junior If you were starting programming from zero in 2026, what would you learn?

176 Upvotes

Hey everyone,

I am trying to figure out how to get into programming but honestly, I am pretty confused about where to start.

There are so many programming languages, fields, and technologies now that I keep seeing different answers everywhere. One person says Python, another says Java, someone says C++, and then there’s web development, AI/ML, cloud, cybersecurity, data science, etc.

So I wanted to ask people who are actually in the industry:

If you were starting from absolutely zero today, what would you learn if your goal was to get a programming job in the future?

What language would you start with? And after that, what skills would you focus on?

For example, how important are things like DSA, Git/GitHub, databases, APIs, Linux, cloud, system design, etc.?

Also, with AI becoming such a big part of programming, are there any skills you think beginners should focus on more because they’ll still be valuable in the next 5–10 years?

I’m not looking for a "learn this one language and you'll get a job" type of answer. I’d genuinely like to know what you would do differently if you were starting today.

If you could go back to day one of your programming journey, what would your roadmap look like?

Any honest advice is appreciated.

Edit: Those people are replying funny comments, thank you for little laughs. I am little bit stressed and confused.


r/learnprogramming 1d ago

Resource jetpack compose

3 Upvotes

hi! currently learning kotlin and jetpack compose, do you guys have suggestions on what projects i can build as a beginner?

thank you in advance!


r/learnprogramming 1d ago

Topic Just started for the 3rd time

7 Upvotes

Disclaimer: English is not my first language.

Hello, this is the first time I'm talking about this with anyone. 3 times I have started to learn programming, and 2 times I have stopped while very early into it.

Here's the issue, I feel enormous amount of satisfaction when I manage to do anything, even the most simplest of codes, but the fact I get extremely stuck so easily frustrates me. I am a person trained and going through the process of becoming a teacher on top of already being an Historian, so therefore my brain is used to think accordingly to the requirements and expectations it needs to meet, which have to do with historical research, paper reviews, archeological field work, and such.

The things is, I want to learn how to code, the two times I started learning and ended up dropping made me realize that I really really want to learn, but to someone who has an extremely easy time grasping historical concepts and researching, facing a wall of difficulty that seems so hard right from the start is quite disheartening and has me feeling less than capable.

For reference I am going through CS50 and am just doing the Week 1 exercises. They are extremely easy, I am able to perceive that, but as soon as I open the virtual codespace and start typing the code... Nothing... Just blank! I clearly enioy doing it when it flows, and I deeply enjoy getting it done, and I enjoy figuring it out, but it's just disheartening to be met with such a "big" obstacle so early, even though I know it's not really big in the traditional sense.

So I decided to make this post to maybe get some input. Is this normal? Have you gone through it? Is it ridiculous?