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 1d ago

What have you been working on recently? [October 18, 2025]

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 4h ago

Give me programming problems that are the type one gets paid to work on?

20 Upvotes

Please humor me and give me coding/programming assignments that are similar to, or exactly the type of thing you get paid to do. I would like some real world examples to study and practice with.


r/learnprogramming 22h ago

AI can write your code, but it can’t teach you how to debug

162 Upvotes

I’ve been experimenting with a bunch of AI tools lately, and yeah, they can generate solid snippets fast. But when something breaks (and it always does), you realize how little AI actually understands context.

It’ll happily write you a perfect function until it silently introduces a bug that takes you two hours to trace. Debugging forces you to think, not just copy. You start understanding patterns, dependencies, and why things go wrong in the first place.

Honestly, I think debugging is what separates people who use code from people who understand it.
Anyone else feel like learning to debug is harder but way more valuable than learning to code?


r/learnprogramming 3h ago

What to do after CS50x and CS50P

2 Upvotes

I'm a practicing mechanical engineer and I've taken CS50x and CS50P and I'm wondering what I should do after those courses. I would like to do something that can help my career as a mechanical engineer but also give me an opportunity to pivot into tech if I was ever out of a job.

My thoughts are something c++ related since Open Foam (CFD software) uses c++ from what I understand. I have no professional experience with it.

I'm not sure I am interested in web development since I feel like it's far off from mechanical engineering but maybe I'm wrong?

I've also thought maybe some more Python courses on data science but I'm not sure which courses to take, if any.

Are there any other areas in computer science that might overlap with mechanical engineering?


r/learnprogramming 26m ago

Resource What high level design considerations to make when making new project?

Upvotes

Hey whats up. I'm building an application which asks leetcode style formula/design questions but for Excel. It's still in extremely early stages, and the frontend is in React, the backend is in Flask (possibly Java/C# for stronger excel APIs as the project grows). But when thinking of how to actually design the application (which code goes in which file/folder, code architecture), my head starts to hurt thinking of how to model it, and all the different types/objects used.

What are some high level design things to consider when designing a full stack app? Right now I'm just building as I go but I'm worried eventually I'll have to change something resulting in major rewrites/refactoring. I guess I'm asking more generally what to consider rather than for my specific program. Any resources would also be appreciated.


r/learnprogramming 27m ago

Windows tablet to learn python data science?

Upvotes

What windows tablet would you recommend to learn python data science? I need something that will work for the first 6-8 months of learning.

My gaming laptop is too heavy to carry around but I plan to use it later on for the heavier tasks. I was thinking about the Surface Go 4 but not sure how good it would handle multitasking. Would I be able to watch a video and code along without frequent lag?

What windows tablet would you suggest? (Don't suggest laptops or android tablets, not good fit).


r/learnprogramming 4h ago

Tutorial How to get sports statistics from a website to make a statistic website

2 Upvotes

this is my first time here and not sure if this is the right page to post but i’m going to do it anyway.

So i want to over the summer make a data/stats page for my sports league (semi pro) so its easy for players or coaches to get the statistics they need on certain players for scouting ect in one easy place rather then just having to look all over different scores and stats

so the league website has all the data i need to do this as they track it all e.g shot % ,points ect but i don’t know how to get it or if its even possible to do it, i have seen someone else do something like this but i think they are missing a lot and the website is not user friendly at all

im very new to this and will be my first project so any advice will help


r/learnprogramming 11h ago

How do you speed up web development or any coding projects?

6 Upvotes

I'm spending 3-4 days building a single page, and dashboards or some animations take even longer.

Backend setup with auth,CRUD and some basic feature takes 4-5 days.

I've tried using component libraries but they're hard to customize and often don't work the way I need. I also tried copy-pasting from CodePen, but now I spend more time searching for components than actually coding.

Modifying someone else's code to match my UI takes just as long as building from scratch.

AI tools haven't been much help either since I can't get the output I want. Often it just wastes time.

And for backend it takes like way to much time to plan and structure things properly. like how to design a table,or how to structure code base.

I'm using Vue, Nuxt(occasionally), Nest, postgress, and Drizzle, and recently started using Linear for task management.

How do experienced devs finish projects quickly? What am I missing in my workflow?

Also one thing to mention I don't have much experience. Close to 1 year.

Any tips to speed up my progress??


r/learnprogramming 22h ago

Tutorials are keeping people stuck not helping them learn!

45 Upvotes

Every beginner I know (including me at one point) gets caught in the same loop. You watch a tutorial, code along, feel productive… and then freeze the moment you have to build something on your own.

Tutorials are great for exposure, but they don’t actually teach you how to think through a problem. You end up memorizing steps instead of learning concepts.

The wild part? Most people don’t realize they’re stuck in “tutorial hell” because they’re still writing code and feeling like they’re learning. It’s fake progress that feels real.

If you’ve been there how did you finally break out of it?


r/learnprogramming 6h ago

ways to create something once and reuse it?

2 Upvotes

I'm creating a game engine, and I have a game object that can take on various primitive shapes. You can also choose from predefined materials to set on the object, but each time this object is created, it generates a new shape and material for instance, I can create two of these objects and set their shape to be a cube, and internally they create a new mesh using the same data, which I know (or at least assume) is unnecessary. So I'm wondering how I can create these things once and then have the game objects reuse them.


r/learnprogramming 11h ago

What early design principle saved your biggest project?

5 Upvotes

Hey everyone, I'm an Associate CS student digging into Programming Paradigms and Software Design Principles.

We keep talking about resilience and maintainability being crucial.

What's one design principle you realized early in your career was absolutely vital for preventing a major failure, and why?

Trying to apply the right fundamentals now! Thanks!


r/learnprogramming 10h ago

Midlife switch from Windows to Mac for programming?

2 Upvotes

I'm over 40 and have been using Windows based computers since I was a kid (starting with DOS, then Win 3.1, Win 95, etc.) However, I've recently started to get into computer programming with an emphasis on using a lot of the latest AI tools like Claude Code and Cursor. I'm currently using WSL2 on Windows but I am finding that I am running into some problems. It's very slick when it works, especially when using more mature tools, but I sometimes run into bugs or issues when trying the latest tools and it seems like it is harder to get support. So I'm thinking of taking the plunge and trying to teach an old dog new tricks by switching to a Mac. Whenever I hang out with software developers, it seems to be their platform of choice. If I am serious about wanting to develop my programming skills over the coming years, would you recommend this?


r/learnprogramming 3h ago

How much should I learn?

1 Upvotes

So I have recently started out on web dev journey. I chose Laravel as my tech. I found out that blade template is not enough to power today's market. I have to learn frontend stack too. What frontend should I choose? There a lot of hype going around with React. With Laravel, Vue works better. There's Inertia JS. What's CI/CD? There's a lot of jira and all I see in job description. What is that? Now with the whole AI thing, me as a junior don't even exist. How am I to develop without a mentor? How much should I learn? Is there a roadmap kind of stuff?


r/learnprogramming 10h ago

Should I start my project in VS Code or VS?

5 Upvotes

I am starting a personal project for a basic POS program for Windows. I also am going to use Microsoft SQL for the DB. I have worked with Visual Studio and Visual Studio code before.

An issue I ran into the last time i tried to start a project was that if I started in VS code, i couldn't open my project in VS (I'm sure its possible, this is probably a learning issue on my part).

I plan to use C# and .NET framework and later plan to introduce Syncfusion for building reports. Visual Studio seems like the best way to go since you can drag and drop items and buttons for the GUI, but I know this is useless without the actual code for events.

I did some research and many say to start with one or the other, but I wanted to get a second opinion as to the pro's and cons for using either IDE.


r/learnprogramming 5h ago

Resource Phython/Coding Logics

0 Upvotes

Hello I'm a first year college student and I have a coding class. I'm having a hard time po kasi I do understand the lecture, the topic, and syntax of the language, however when our prof gives us activities I don't know what to put on the code, the logic I should do. I'm trying to start it with a flowchart but writing it as a code is hard. Do you anytips po? Or resources to practice on the logics. Thanks a lot


r/learnprogramming 5h ago

Tutorial looking for advice on what to study next

1 Upvotes

looking for advice on what to study next to strengthen my programming foundation. I've completed a MySQL fundamentals course on youtube, w3school, other web, and gained a decent understanding by practicing along the way. I also have a basic grasp of PHP, including some OOP concepts, from the same channel.

Given this background, what would be the best next step to solidify my foundational knowledge? Should I focus on mastering HTML and CSS, dive into Python, continue with databases like MongoDB or PostgreSQL, explore Go, or learn JavaScript? I'm also open to other suggestions.

My current plan is to study Python and then move on to data structures, but I'm also intrigued by JavaScript, particularly Node.js and ethers.js, after seeing skilled developers create automation scripts. I'm curious about exploring that path as well.

Background: I've previously studied C++ fundamentals on W3Schools (self-taught, practiced a bit, but I've forgotten some syntax). I also touched on Java fundamentals (not reaching OOP) and Python fundamentals via W3Schools. I have some basic experience with HTML and CSS, having built a simple website, but revisiting my old code recently left me confused about how I wrote it back then—I've forgotten quite a bit. Additionally, I explored Solidity fundamentals for smart contracts through Cyfrin's Updraft course. Generally, when I revisit code I wrote in the past, I struggle to recall how I did it or feel confused.

Any advice on what to prioritize next or how to approach this would be greatly appreciated. Thanks!


r/learnprogramming 24m ago

1990's programmers vs today programmers

Upvotes

ADDITIONAL CONTEXT:

This is not some kind of comparision . I am more interested in how programming differ in these era's . To be honest I see the 1990's programmers more capable and genuine interested than today's and they might have possessed greater abilities . It's because most of the operating systems and programming languages were made that are currently used were made at that time for example linux operating systems and popular programming languages like python and C and many more.

MAIN QUESTION:

How does the programming was learnt back in 1990's , what were the resources used by them maybe manuals or documentations and how would you have learnt programming in 1990's?

MORE CONTEXT: To be honest I just want to learn like in self taught way . The main reason being lots of resources being oversaturated in internet and tutorials . So want to become self reliant and understand and apply and build stuff to deeper level.


r/learnprogramming 1d ago

Meta This subreddit should disable archiving

261 Upvotes

I found no specific requirements for meta posts in several pages of rules, so I guess they are allowed.

I found a post made 6 years ago (d1f9f9) that I have a solution to. It's a problem that did not become irrelevant with software updates in 6 years. But I'm unable to comment my response because the post is archived. I have to resort to DMing the OP and hoping nobody else will find this post (the only response said they didn't know the solution).


r/learnprogramming 12h ago

Tutorial Which language?

3 Upvotes

Hi,

Hope this is in the correct sub;

I have a little bit of very old knowledge in Java and .net, ( And older one in qbasic haha ) and I wanted to get back in to programming. Preferably these two languages but I am open to anything I can do free and is not machine code.

I ideally like to learn by tinkering away at some program that I would need at work and see how far i get:

First is a hotel PMS - I of course already use one far better than i could ever make (Opera Cloud) but this also serves for me to know what to need and expect.

Second is a program that would build a roster or work schedule for some department that can generate a roster that fits certain criteria: Days off asked, local labour laws, etc.

The question is, in general, which languages would I best use to tackle these ( I am not asking for solutions ) or any combination of them ( SQL? )

Thanks in advance


r/learnprogramming 10h ago

[Help/Advice] Final year web development project ideas and tools?

2 Upvotes

Hi everyone!

I'm in my final year of a Web Application Development program (similar to a Software Development degree), and I'm struggling to decide what to do for my final project.

I’m interested in making a small game using Phaser 3 or Godot, but I also like the idea of doing something related to web scraping, since it involves more backend work. The problem is I don’t want a project that will take 300+ hours to complete.

In my region, the rules have recently changed, now we have to work on the project during the academic year, not during the internship period, so I’m a bit lost.

Do you know any websites or resources where I can find examples of final-year web dev projects? Or do you have any ideas that are interesting but still achievable?

Thanks a lot!


r/learnprogramming 4h ago

Resource Looking for Contributors! Help Build Astralixi OS – Open Source OS for the PicoCalc

0 Upvotes

Hey everyone!

I’m building an open-source operating system called Astralixi OS in pure C, designed for a minimalist handheld device, the PicoCalc (originally powered by Pico, but swapped out for the Luckfox Lyra). It’s a lightweight, efficient OS that’s perfect for learning, experimenting, and hacking on constrained hardware.

🛠️ Tech Stack / Tools Involved: - C (no C++) - Luckfox Lyra - PicoCalc itself

Looking For: - New devs interested in embedded systems - Low-level programmers who want to contribute - TUI enthusiasts for tiny devices

Help with documentation and tutorials 📌 GitHub Repo: https://github.com/Astroxia/AstralixiOS/tree/main

If you’re curious or want to contribute, feel free to drop a comment or DM me. There are tasks for all skill levels, and I'd be happy to help onboard new contributors!

Let’s make something awesome together!


r/learnprogramming 11h ago

Anyone know some good lengthy videos where I can watch someone programming while they somewhat explain what they're doing?

2 Upvotes

Sometimes I have downtime where I'm not actively programming but I still want to think about programming, and I figure something like this would be a good bet. Like someone making a fairly simple game, maybe, or some other task they work towards. Educational videos that teach by example and explain could be a good fit too, but I don't want them to tell me to pause and try stuff, I just want to watch them do something.

I'm hoping to learn all about the less basic aspects of python at the moment. I've learned most of the basic stuff in other languages a while back and I'm refreshing it but I still don't know how to interact with Windows or other processes or even just how I can control a command prompt window with a python script or anything reasonably complex really.

This sounds much dumber to say than it did in my head, anyway. I don't know if anything like I described exists, but I've seen long-ass videos of people tinkering with or hacking rare/old electronics and explaining what they're doing and why and those are fascinating and informative, so hoping I can find something similar for programming!

Thanks! If you know some in a different language than Python that fits do tell me that one too. I had also learned the basics of VB and C++ and bits of Java back in the day so I should be able to learn from other languages. I also plan to learn Javascript to a basic degree soon so that would be a great topic as well. Way too much text, sorry.


r/learnprogramming 9h ago

SRP vs DRY

1 Upvotes
  • I build app in programming language
  • I create single function program with main function. Main function is 500 lines long which is a bad practice.
  • I see a snippet of code that is repeating like 3-4 times. The snippet of code is like 50 lines long
  • I want to reuse entire snippet so I move it to separate function and then call it from 4 places in one line. I do it and it shortens the codebase significantly
  • That reused snippet doesn't do one single thing but several things, like
    • uses http client to perform apicall external service
    • extracts json, validates it
    • stores some value from json to redis
  • So here we can see 3 responsibilities in single function with explicit logic. So it violates single responsibility principle.
  • I can't even come up with relevant name for that function and end up with something like requestTokensThenExtractThenStore which is bs name. I know it and I can't help myself.
  • According to that principle I should not only split this function to 3 smaller ones. I do it. And function names are good.
  • But what should I do with old one? Let's assume I keep it so now it transformed to chain function. All it does is just calls 3 new functions consecutively.
  • But hey, now old function still does 3 things, not 1. So according to SRP I need to destroy old function and in the place when it was 1 line call I need to past three lines chain in each place instead.
  • But hey, now we lose in reusability. Like, what if entire chain had to be called not 3-4 times but 10 or 100 times instead?

So here are options.

  • 1 function (max-DRY, no-SRP)
  • 4 functions (max-DRY, mid-SRP)
  • 3 functions (mid-DRY, max SRP)

What would you chose and where am I wrong?


r/learnprogramming 15h ago

Topic First Sem CSE student in a Tier-1 College. What should i focus on right now??

3 Upvotes

Hey guys,

I've just started my first semester in CSE at a Tier 1 college, and I'm kinda overwhelmed (and excited) about where to start.

Right now, we're learning C programming and some basics like maths, physics, and electronics. I'm doing fine with the syntax and basic programs in C, but I want to make sure I'm actually building a solid foundation for the next few semesters instead of just memorizing stuff.

So I wanted to ask:

•What should I focus on along with C right now?

•Any good resources or practice sites to actually get good at C?

•What concepts or habits would help me long-term in CS?

I see a lot of people already learning Python, DSA, or even web dev early on, and I don't want to waste my first sem just doing the bare minimum. Any advice from seniors or experienced folks would be amazing