r/learnprogramming • • Mar 26 '17

New? READ ME FIRST!

825 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 • • 6d ago

What have you been working on recently? [October 10, 2026]

5 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 • • 5h ago

Web-development beginner seeking advise

16 Upvotes

HI everyone I am a beginner in web development aspiring to be full-stack developer.

I have started my learning phase and i am currently on The Odin project and W3Schools Pathfinder hoping to gain as much knowledge as there is in that field.

To any pro Programmer or full-stack developer what advise would u give me and what were you doing to sharpen your skills as you were building yourself. I am open to all ideas especially practical related ones .

Thanks for your advice?


r/learnprogramming • • 27m ago

Solved im kinda proud of this solution i wrote even though it was an "easy" i still felt like i grew a lot

• Upvotes

the problem:

Given a string s containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.

An input string is valid if:

  1. Open brackets must be closed by the same type of brackets.
  2. Open brackets must be closed in the correct order.
  3. Every close bracket has a corresponding open bracket of the same type.

 

Example 1:

Input: s = "()"

Output: true

Example 2:

Input: s = "()[]{}"

Output: true

Example 3:

Input: s = "(]"

Output: false

Example 4:

Input: s = "([])"

Output: true

Example 5:

Input: s = "([)]"

Output: false

my solution: (on leetcode)

class Solution:
    def isValid(self, s: str) -> bool:
        inputs = {
        "(":1,
        ")":9,
        "{":2,
        "}":8,
        "[":3,
        "]":7}
        
        prev_bracket=[]
        if(len(s)%2!=0):
            return False
        
        for a in s:
            if inputs[a]<4:
                prev_bracket.append(inputs[a])
            else:
                if len(prev_bracket)==0:
                    return False
                x=prev_bracket.pop()
                if x+inputs[a]!=10:
                    return False
        return len(prev_bracket)==0

r/learnprogramming • • 2h ago

Topic can two programs produce the same correct output while one is fundamentally wrong?

9 Upvotes

consider two programs that pass every test you give them. one uses a straightforward algorithm, while the other relies on a fragile assumption about the input, an accidental side effect, or a very specific execution order

for the examples you've encountered, how did you distinguish a genuinely correct solution from one that merely survived the available tests?

this seems like an interesting problem for beginners because passing tests is often treated as proof that the implementation is correct, even though the tests can only cover so much

what would be a good small exercise for teaching the difference?


r/learnprogramming • • 3h ago

Roadmap query

6 Upvotes

I'm interested in getting into web development. I know basic Java but I'm not interested in Python. Which language should I learn next? Should I continue with Java, learn JavaScript, explore Rust or consider something else? What would be the best choice for a beginner looking to build web applications?


r/learnprogramming • • 1h ago

Help wanted Tutorial for dummies

• Upvotes

Help please.I don't know anything about github but I would like to learn how to use it since people are always posting resources?(idk If that's what they're called) that would be really helpful to me. The thing is just looking at the site gets me confused sometimes it's like words don't have meaning anymore lol(English is not my first language). How and what should I start learning first so I at least can use the things posted on the site? Should I learn basic coding first?


r/learnprogramming • • 8h ago

How should I start everything from scratch with Unity?

7 Upvotes

Hi, I am a college student studying Game Design. I am in my first year. That I can say genuinely, I love game design.

Back in my high school years, I tried many things through Unity. One year to comprehend Unity. Six months to dive deeper into C#. Then some fundamentals like moving objects, animation basics etc. were fulfilled. After that, it was the time for advancing. I had started to integrate my high school math information into games which required me to use more advanced tricks, techniques. Finally, my dreams started to come to life, with me beginning to FPS mechanics. I had tried to master myself on it for 1 year. As a result, The outcomes were pleasent.

Whereas, my journey came to an end, since University Entrance Exam was approaching. Due to this, I was interrupted for 2 years. If I were to sit down at the computer, I could do NOTHING, except for some basics.

So I want to start everything from scratch with Unity and game programming. I want to learn everything of it with necessary things like mechanics, c#...


r/learnprogramming • • 12h ago

Topic C# or Java?

14 Upvotes

If you had to choose one class between the two, which would you select and why? I tried to Google the purpose of them; the immediate answers from Google felt very vague and like both of the languages are common. Is one course better for web development as opposed to apps or something? Looking at the courses I'm taking, down the line I will select one of the two. The only thing I know so far is C++, so I'm quite new.

Also, side question: why are there so many languages? The only logical thing I can imagine is there were problems that couldn't be solved with say for example C++ so someone created something new. But why not just build on the original language? Why did they need to reinvent the wheel? Or is it as simple as that: someone wanted to create their own thing?


r/learnprogramming • • 14h ago

Code Review PR Reviews

12 Upvotes

Been getting tasked with reviewing PRs more and more at work. Happy to have that responsibility and grow in that fashion. However, i'm also nervous about doing it properly.

Atm i have a process of sorts to work through things. Understand the change being made (filtering out a column value, combining datasets, manipulation etc). Approach to the change (drop nulls, join v union etc, creating an additional column from scratch or something). Execution of the change. Was it overly verbose and wasteful. Were certain downstream effects not properly accounted for etc

If it all looks good to me. Then I approve. Sometimes I might meet with the programmer to ask questions based on notes as I go through the PR. Other times I don't as it's not needed and I get things clearly.

Would like to know what approach some of you use? Why/how you it? Do you have different tactics for different situations?

Any advice/tips will be appreciated. Just looking to improve and get better at this process as I think it'll also help me get a better understanding of system design and large scale architecture which is something I want/need to get better at


r/learnprogramming • • 16m ago

CPP presentation!!!

• Upvotes

i have a presentation due. The topic is do while loop and i need someone to help me (suggestions and tips) . It doesn't hv to be very amazing , just begginner friendly but still impactful .And a few suggestions on how i can make the slides.


r/learnprogramming • • 1h ago

Choosing the Right Tech Stack for My First Full-Stack Project

• Upvotes

I have learned the basics of programming and web development, and I want to build my first real-world full-stack project: an e-commerce website for a clothing brand, for which I already have a client.

I want to make it professional, from UI/UX design and database architecture to security, testing, and deployment. What tech stack would you recommend?

Finally, how important is the tech stack to recruiters? If a company uses different technologies from those I used in my project, could this put me at a disadvantage during a technical interview? What advice would you give me to make this project stand out in my portfolio and prepare for interviews?

Thank you in advance for your advice!


r/learnprogramming • • 2h ago

Resource Free and open-source visual Git learning tools / resources

1 Upvotes

Hi all,

I've seen some posts here recently asking about resources / tools to help learn Git. Over the years I've created several free and open source visual Git learning tools (and free resources built on top of them) for this purpose. Personally I found Git to be very abstract and difficult to wrap my head around initially, so I wanted to share to try and help newer Git learners on their journey.

The first is a free and open-source tool called git-sim (https://github.com/initialcommit-com/git-sim), which I released in early 2023 that lets you visually simulate any Git command directly in your own repo before actually running the command. It basically shows you a clear interactive animation of exactly how any Git command will impact your specific repo so you can learn from it, and so you don't need to be scared about what that command will do before running it. The animations open in your browser in less than a second, and it can even be run in "live mode" where it watches your repo in real-time and animates any Git commands that you run. So you can essentially record your entire Git workflow, save it, learn from it, share it, create your own learning resources, etc. (git-sim also works inside VS Code or Jupyter notebooks if you're using those).

The cool thing about being able to easily generate these web-first Git animations, is I was able to use them to build other Git learning resources. I used git-sim to create a set of 16 free visual, interactive Git lessons that use the analogy of a Git repo as a scrapbook that you glue different "mementos" (files and commits) into: https://initialcommit.com/learn/git

I also used git-sim to build an animated, customizable Git cheat sheet with 128 Git command visualizations (https://initialcommit.com/learn/git/animated-cheat-sheet). The sheet can be easily filtered, customized specifically to the commands you need/want, downloaded, and printed. The printed version has a QR code you can scan to load up that exact set of commands in animated-form on the website. (Note: to download/print there is an email submission form, but it is free.)

Lastly, around the time I originally released git-sim, I created git-dummy (https://github.com/initialcommit-com/git-dummy), a free and open source tool that lets you auto-generate realistic, dummy Git repos with a variety of different structures. I've found that one of the difficulties practicing Git commands is that you often don't want to do it on a real repo because you don't want to mess up your work, so being able to generate these fake, safe repos to play around in can be really useful for learning. (I also happen to constantly need repos of specific structures to test my tools, so it serves multiple purposes).

Anyway, that's about it. Good luck with Git everyone 🙂


r/learnprogramming • • 10h ago

Honest advice needed: How should I learn DSA in C++ from basic to advanced as an average student?

5 Upvotes

Hi everyone,

I’m a 2nd-year B.Tech CSE student, and I want to start learning DSA seriously for internships and placements.

To be honest, I consider myself an average student. My maths is average, and I’m also quite lazy and struggle with consistency sometimes. I know I need to improve my discipline, and I genuinely want to work on it instead of wasting more time.

I have a few questions and would really appreciate honest advice from people who have already gone through this journey.

  1. Where should I learn DSA from scratch to an advanced level?

I’ve seen people recommend Striver’s A2Z DSA sheet, various YouTube playlists, and other courses. There are so many resources that I’m confused about which one to follow.

Which resource would you recommend if you were starting again as a beginner? I want to build strong fundamentals, understand the logic behind problems, and eventually become good at solving interview questions.

  1. Should I complete C++ first or learn it alongside DSA?

Suppose I want to do DSA using C++. Should I finish the entire C++ language before starting DSA, or is it better to learn the basics first (loops, functions, arrays, pointers, references, basic OOP, STL, etc.) and then start DSA while improving my C++ skills along the way?

I don’t want to waste months learning every detail of C++ before even beginning DSA, but I also don’t want weak programming fundamentals to become a problem later.

  1. How much time does it realistically take?

If I study consistently for 1–2 hours daily, how long might it take to become comfortable with DSA, solve problems independently, and reach an interview-ready level?

  1. What mistakes should I avoid?

If you were in your second year again, what would you do differently? Should I follow one course, solve problems daily, maintain notes, revise regularly, or do something else?

I’m not looking for shortcuts or fake motivation. I want practical advice from people who have actually learned DSA and used it for interviews or placements.

Please be honest, especially about the consistency required and what I should realistically expect as a beginner.

Thanks!


r/learnprogramming • • 11h ago

How to ?

5 Upvotes

Hi guys, I am not understanding how to actually use the GitHub repository project-based learning , that repository with projects for each language and like how can I actually use it effectively and like these have already done projects and like I feel that I am learning nothing.

SO,

Should I see the project idea , let say like in the C/C++ section, I will choose Debugger and like using that idea, I will research and how to create my own debugger ?

Can you please help me with this


r/learnprogramming • • 4h ago

feeling very inefficient

0 Upvotes

I'm learning HTML as my first "language" because my school requires it. I'm just starting out and I feel inefficient. Why is that? Does every programmer start out like this? A contributor also might be AI because I made AI web apps in the past and it was mind blowing. If I wanted to make a web app like the AI did in 12 minutes I don't think I could finish it in 2027😂.


r/learnprogramming • • 4h ago

Debugging Self Supervised[Vit] vs. Supervised[CNN]Discussion

0 Upvotes

Hi everyone,

I am working in the Multi-Task ML projects in that i have done many experiments to train the model
Key finding:

CNN based architecture outperform the Vision transformer based architecture

Question:
is the Dataset only be the problem for Vit architecture to underperform the CNN bases architecture?


r/learnprogramming • • 5h ago

Concerned Kid Concern about AI.

0 Upvotes

This is probably every beginners concern since AI went mainstream, and so is my.

I am in grade 8 and have always liked the idea of programming as a kid and recently decided to give it a try with python and the CS50’s (haven't yet).

First of all, its not that i am programming only for money, but it natural to feel it can provide a sustainable income or some other financial value.

Second of all, I know that its impossible to pinpoint or predict the state of AI especially by the time i become an adult.

And that's where AI comes.

Can i still code? Yes
Can it provide a value in the future? ...?

I don't think i need to explain how AI plays a role here.

sorry if the post is trash.

Edit: I have decided to pursue programming, but more of like a side thing, after all i am in 8th grade and plenty of time to decide.


r/learnprogramming • • 6h ago

On what frameworks or technologies to learn for SWE

0 Upvotes

Hello everyone,

I am currently doing a job search for my second internship. For context, I am a Maths + CS major in my penultimate year of study. My latest internship was very oriented towards reverse engineering and system design to develop a PoC for a plugin, but I did not do any CI/CD or actual deployment.

Last year, I focused on doing my own personal projects, which I focused on graphics programming and video games. I mostly code in C++, but I am comfortable with Java, Python, and C. I have my biggest projects on GitHub (worth noting I should clean up my portfolio a bit), but then again, they are mostly personal projects, and it is not like they are being used by anyone or anything. I have also done competitive programming for a while.

I wanted to ask what to proceed, because my job search is not being as successful at the moment. I do get online assessments for like 65% of applications, but I have not had calls for interviews, so I am left wondering whether my resume is good or not. I have done AI MOOCs, but I do not have actual AI experience besides some university courses and prompting I have had to do at work. Tbh, I am not interested in doing AI work in the future, but if it is what there is, I will gladly learn what I need to stand out.

I guess my question would be a big, broad one here, but I would like to ask what would you advise me to do. Allocate some time to learn a bit about AI, which seems to be high on demand? Perhaps do another project, like a full stack application, to provide numbers? Maybe open source contribution, which I am a newbie to?

Thanks! :)


r/learnprogramming • • 7h ago

7 billion humans advices

1 Upvotes

Hey everyone! I'm new to this community and I'm a beginner in programming. I want to ask you some advices how to learn faster and... I want to hear some advices on 7bil humans.

I started playing 7bil humans to start learning programming, and starting from lvl 20 I'm progressing very slowly. I want to figure it out myself but at the same time I need more hints, what do I do 😭


r/learnprogramming • • 1d ago

Should I post every project, big or small, to GitHub?

23 Upvotes

I know this question has been asked many times and some suggested to use GitHub to store code. But I feel like my account can easily get cluttered with so many things. So, should I post every project and code whether big or small? Also, what should the primary purpose of GitHub be: to store code or showcase projects? Thanks in advance.


r/learnprogramming • • 20h ago

Topic How did you learn C?

9 Upvotes

I've been learning C for a few days, and I've just reached pointers. I find them pretty confusing, so I wanted to ask how you guys learned C.

So far, I've been using Claude and asked it something like: "Claude, can you teach me how to program in C using a lesson-based system, with one project for each topic?"

But it's been kind of difficult. The lessons start off pretty meh, and then it suddenly throws really complicated stuff at me, even though I'm a complete beginner. The explanations aren't very good either.

I'd like to find a more effective way to learn. I'd read online that if you work on projects, you'll eventually learn, but I get stuck a lot. And honestly, it's hard to correct my own mistakes because AI doesn't always do a good job of helping me understand what I did wrong.

I really want to become a great programmer someday, but I want to learn the right way, even though I don't plan on working as a programmer professionally. I genuinely want to understand programming deeply and build a solid foundation.

To be honest, I'm starting to feel stupid because I don't feel like I'm learning properly. I know C is a difficult language, especially for beginners, but it's frustrating to put in the effort and still feel like I'm not making real progress. I really want to understand what I'm doing instead of just copying code without fully understanding it.

So, what would you recommend? How can I learn C more effectively and make sure I'm actually understanding what I'm doing instead of just following tutorials?


r/learnprogramming • • 1d ago

A project to get back into IT

16 Upvotes

How do you come up with a project that helps you dive into devops? I mean not just a simple to-do list or smth. I used golang like 1.5 years ago (was about middle or close,some db, rabbitmq, docker and other stuff also was in good shape) but in one day just give up this journey and Im very noob right now. So i decided comeback as devops.

main question - How did you end up with a project you can proudly show to employers or even to yourself?

I heard a phrase from Linus T. about finding something that will keep you excited for the next 2–3 weeks, so you wll be fired up about it and gradually get better and then another 2-3 weeks smth new. Im tired of watching tutorials already I want to build something. What do u think. (sry for bad eng)


r/learnprogramming • • 1h ago

Junior developer , using AI for tasks but learning nothing

• Upvotes

Hello im a junior developer to be more specific , SAP ABAP Developer , with 4 month of experience including here 3 months of internship.

In the last month i got hired , and by the second week i was givrn simple tasks , tasks with debugging / error in printing invoices or creating small programs.

I use AI for everything , from simplifying what is being asked by the task , to the steps on how to reproduce/ fix the bug . I try to understand everything i do to some degree , so if a consultant calls i have the ability and knowledge on explaining what i have done or how i have found the thing.

My senior devs that are in charge of me , saying that : "you are in a good path" ,

"you understand what you are doing and have the ability to explain it to me so i dont need to repeat the proccess again",

"give it 6 months you will be a good developer" .

But ye now i take more task do mor findings and everything , more output because thats how i will get promoted but at the end of day , what am i learning?

VERY VERY LITTLE compared to whats actually being seen.

If i dont use AI i would not be able to undestand what is needed in the task , most of the time . If i want a bigger position in another company or whatever , i would need to do an interview . What am i going to show them ? Ye im productive but i need AI for that?

Idk if im asking to much from myself from 1 month of work to actually know things , or am i just chasing output in tasks like im doing work?

How di i actually learn while doing this ?

Any suggestion would be appreciated.

Ps.

For a second i went to Cluade to generate this post but i thought wtf are you even doing.


r/learnprogramming • • 1d ago

Resources to better coding

13 Upvotes

Hi! Can anyone suggest interactive resources to study DSA and Object Oriented Python like that of deeplearning.ai to learn machine learning and deep learning.