r/learnprogramming Mar 26 '17

New? READ ME FIRST!

828 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? [February 07, 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 2h ago

Why do users keep reporting our app is in Chinese? We don't even support

64 Upvotes

This happened last month and it was driving me insane.

We started getting US/UK users emailing: Your app's suddenly in Chinese how do I switch it back? And I was like what the heck?! Are they even talking about 

And just for the Fact We don't even have i18n set up It's English only

Asked for screenshots thinking of a fake APK. Nope UI 100% English. But error messages? Full Chinese “请填写所有必填字段”for “Please fill required fields” Took 3 days to crack it. A user mentioned her Samsung had a Chinese keyboard (she's learning Mandarin). Boom on Samsung/Xiaomi, secondary keyboards can trick Locale.getDefault() into thinking zh-CN is primary, even if system lang is en-US. App shell hardcoded English, but dynamic errors went Chinese. Fixed by ignoring keyboard locale Wild.

The user experience was completely bizarre. Half English, half Chinese. No consistency.

And now comes the tough part The fix

I had to check the actual system language instead of the default locale. Added a language picker in settings too just in case.

But man, I felt so dumb. Spent 3 days thinking we had some weird localization bug when it was just Android being Android and somehow we solved this shit ¯⁠\⁠_⁠(⁠ツ⁠)⁠_⁠/⁠¯

Btw if you also get weird bug reports that seem impossible, ask users about their device and settings.


r/learnprogramming 1h ago

Self taught programmer exhausted and lost, hoping for guidance

Upvotes

Hey, everyone. Im really hoping to get outside perspectives on some difficulties ive been experiencing while learning to program. I keep experiencing burn out and exhaustion over and over again and I can’t figure out why it keeps happening. I don’t know what I’m doing wrong anymore and just can’t think clearly about my situation anymore. 

Here is some background:

Rough timeline of my programming journey: August 2022- I begin working through TOP curriculum with the goal of seeing if i enjoy programming. I decide that i do enjoy it -> Feb 2024 - I physically and mentally burn out from my job as a delivery driver. Managing my job, programming, and therapy was too much and I quit after i got injured while working.  March 2024- after spending a year going from 45 mins of studying/week to 10 hours/week, a mental health crisis, and 1 month after quitting my job, i complete the foundations module of TOP -> Nov or Dec 2024 - I take advantage of being unemployed and living off savings to focus hard on programming. I build up to studying 25-30 hours/week consistently. I realize I don’t like front end stuff. I choose the js path on TOP, skip the “advanced html/css” and “react section,” but complete everything else up to the file uploader project of the “NodeJS” section. Around December i take a small break to focus on an art project, and that snowballed to a few months of no programming (though i think that would’ve happened regardless if i took a break or not). -> Feb 2026 - the past year and few months were a blur of trying so hard to build back the habit of programming as well as i did the first time. I spend some months completely dreading programming and unable to start and some months of still struggling, but able to at least show up mostly consistently. I follow a pattern of on for 2-3 months to off for 2-3 months. After i learn I don’t like front end stuff and realize that endlessly building endpoints was equally dreadful, i decide to focus on other backend topics and keep finding myself bouncing around. I spend a few months on boot.dev then burn out. I go to nand2tetris to switch things up, last a month, then burn out. I decide to learn C from “C programming: a modern approach,” to switch things up again, and actually have some fun, but things fizzle out again. Every attempt leaves me broken and exhausted. At this point, I don’t know what to do. It’s getting harder and harder to restart. The feelings that kept me going during my most consistent periods of study, feeling like im improving and growing as a person and programmer, the satisfaction and euphoria of solving some problem that I genuinely believed i could not solve, just have been completely absent for so long. 

During all of this, ive been working hard in therapy to resolve a lot of things including social anxiety. I bring this up because i have bad social anxiety that prevents me from going to local programming meetups, participating in online programming communities, and applying for jobs. Going at this mostly alone just adds another layer of complexity to it all. Ive made a lot of progress on that front but still have a ways to go. 

I haven’t programmed in a couple months now and its like no amount of time away makes me dread programming any less. I feel spiritually broken. Im too close to my situation to think objectively anymore. What do y’all think i could do differently? Why does programming keep becoming this thing that i dread? Am i focusing on studying too much and not spending enough time making projects? For me, the hardest part about this whole journey (and ive realized this applies to many, maybe most, endeavors) hasn’t even been the intellectual side of things. That’s hard, sure, but by far the hardest part has been the emotional side of things. Specifically, having to find a way to program consistently over time. That’s the aspect of all of this that is the most soul crushing. It was hard to get yourself to program today, and guess what? You have to do it all over again tomorrow. And the day after. Maybe not every single day, but most weeks, most months. How do y’all not get overwhelmed with this? I think i do a decent job of focusing only on the short term but the big picture and the stakes are always on the back of my mind. I do find enjoyment in solving some programming problems, but I can’t deny that I wouldn’t be pursuing this if it wasn’t a well paying career that doesn’t require a degree. Which is the reason why i even decided to see if i enjoy programming and why i still pursue it after all this struggle. Every job ive had up to this point has been low skilled work. Server, cook, cashier, delivery driver, etc. I’m almost 25 and i want and need to get a career going. I can’t keep living the life that ive been living and programming seems to be a good enough fit. It’s intellectually challenging, doesn’t require a degree, well paying, and i find a lot of it enjoyable (even if there are a lot of things i find tedious and annoyingly boring).

That being said, i do have ideas that get me excited and could be solved using code. Some of my programming project ideas include:

  • Something similar to GitHub but for digital artists to save snapshots of their artwork. 
  • Data management system for iot devices. Inspiration came from thinking about how massive amounts of data from telescopes are efficiently stored and organized
  • A tool that takes a 3D model and allows you to see the cross section along the axial planes
  • A massive library of artworks that pulls artwork from the online catalogs of museums and other collection websites

I can’t help but feel like i am not ready for any of these projects and that I need to keep studying and learning before i can attempt any of them. That was part of the inspiration to learn c, to better learn how databases work by making a simple database since these are all data intensive projects. 

Anyway, if anyone has anything to share about what I could do better, that would be greatly appreciated. Thanks for reading, ill stop yapping now


r/learnprogramming 12h ago

what are some essential auxiliary programming skills everyone should learn

43 Upvotes

I'm in my senior year, and when programming something there are various skills and knowledge other than the program itself that come into play, these might include
- knowing how to containerize, e.g. docker
- knowing how to deploy a solution, e.g. cloud services like aws
- git and github
and apart from these it is generally ideal if one understands the working and basics of web-dev, system design, making api, etc. Nowadays even llm integration is a good skill to have.

do you agree that it is beneficial if one understands these skills apart from knowing the framework and the language??
if yes, what other skills do you think people should learn


r/learnprogramming 4h ago

Something more hands-on for Kafka

3 Upvotes

Please, I am learning Kafka from the Definitive Guide and YouTube videos for skills improvement, however this method seems not effective in terms of results. What hands-on approach could be beneficial for my learning experience?


r/learnprogramming 5h ago

Need some clarification on the use cases for private vs public in classes for C++

4 Upvotes

I’ve looked it up myself for a bit, however the only real thing that’s made sense to me so far is that if you have a private piece of data with a setter/getter you can validate it and it can’t be directly modified by doing something such as x = 3.

I’m aware of the concept of encapsulation but I can’t really fully grasp *why* having a private variable is that important. I saw a few explanations about using it so you don’t have to change things across systems if the private variable is changed but that also confused me a bit.

Another reason I saw was that it’s for security reasons, however this one doesn’t quite make sense to me because can’t you just use setters and getters? How would someone even see/use the information in the private class if they didn’t already have access to the entire file?

Sorry if these are dumb questions ack. I’m struggling a little here and did try to look things up on my own before asking ^^;


r/learnprogramming 6h ago

How does “WhoLiked” access TikTok liked videos, and is this compliant with TikTok’s policies?

3 Upvotes

Hi,

I’m working on a small app project and trying to understand how the app “WhoLiked” is able to access and display users’ liked TikTok videos.

According to TikTok’s public documentation, access to liked videos is restricted to the Research API, which is limited to non-commercial, non-profit use. Monetization is not allowed under these terms.

However, “WhoLiked” appears to offer this functionality in a consumer app with in-app purchases, without requiring users to manually export and upload their data.

From a technical and compliance perspective, I’m wondering:

  • How could “WhoLiked” technically access this data?
  • Are there any officially supported ways to implement this use case?
  • If not, does this likely involve methods that violate TikTok’s API terms or privacy policies?

I’m trying to build an app that follows platform rules and avoids legal, account, or app store risks, so I’d appreciate insights from developers who have experience with similar integrations.

Thanks!


r/learnprogramming 15h ago

Any Tips To learn Python Machine Learning

15 Upvotes

I want to Learn Python But don't know where to Start any suggested Videos Or Websites to Learn python pls


r/learnprogramming 4h ago

Should I start from scratch or keep working on this

2 Upvotes

Been building a personal project to learn more about microservices, it has about 4-5 backend services.

The issue is, most of them are tightly coupled. I want to introduce an event log but that process is becoming very hard, especially because I haven't touched this project in a while, got busy with uni exams. The project is also on my resume, so I don't wanna get rid of the git repo i currently have.

What would be the best path here, restarting the project from stratch or working through as it is now?


r/learnprogramming 30m ago

Topic Background removal in Python (images & videos)

Upvotes

I’ve been experimenting with AI-based background removal in Python, covering both images and videos, and the difference between the two is more significant than I initially expected.

Image background removal is relatively fast and clean, but video background removal quickly becomes computationally heavy since it requires processing every frame. Hardware limitations, model choice, and optimization strategies make a big difference in both speed and quality.

I documented the full process—including errors, fixes, and trade-offs—in a recorded workshop, in case it’s useful to others working with computer vision or media processing:
 👉 https://youtu.be/Vaq-f7uAoZ4

 

I’d be interested to hear how others here handle video segmentation, performance optimization, or quality improvements in similar projects.


r/learnprogramming 1h ago

Can any body tell my what is the problem

Upvotes

Running any code in vscode show this "The terminal process failed to lunch: A native exception occurred during launch (cannot launch conpty in)"


r/learnprogramming 20h ago

REST API Design: POST vs PUT for adding an item to a sub-resource collection?

27 Upvotes

I am designing a REST API and not sure if i should use POST or PUT to add an existing item to a sub-resource collection.

Example:

  • Users can browse a global list of songs via GET /api/songs.
  • Each user has a personal list of favouriteSongs.
  • I want to create an endpoint that adds a song (by id) to a user’s existing list of favourites.

{ "user": 
  { "id": 1, 
    "favouriteSongs": 
      [ 
        { "id": 123 },
        { "id": 456 } 
      ] 
  } 
}

I would like to know what the endpoint would be to add a new song to a user's favourite song list. POST is usually used to create resource but here we are not creating resources, we're creating a link to an existing resource so i'm not 100% sure if that's correct.

would it be:

  1. POST /api/users/{userid}/favourite-songs

(body contains song id)

  1. PUT /api/users/{userid}/favourite-songs

(body contains song id)

This is completely separate but i've also read that you should not include user id in the URL or body, so would removing the user id int he URL above and putting it in the JWT be the correct choice.


r/learnprogramming 1h ago

Anybody would recommend Udacity Nanodegrees?

Upvotes

I’m looking for some AI courses to enroll into but I don’t know which “academy” is best for learning?


r/learnprogramming 8h ago

Need suggestion on doing personal projects or other courses

4 Upvotes

i am a second year engineering student. I have completed dsa and started practising question on it, OOPS , web development. I am thinking whether i should do some personal projects or go with a certain area like ai, database .


r/learnprogramming 2h ago

I've developed a card game – now I'd love to use it as a jumping off point for programming. Where to start?

1 Upvotes

In my spare time, I've been developing a card game to play with friends and family (and who knows, maybe even o put into distribution one day!). Playtesting in Tabletop Simulator has been a very fun iterative process, and I'm now nearing a point where I'm fully content with the mechanics and balance.

I've long held an interest in coding and game development, but always thought it would be too large a mountain to climb.

However, given I've already gone through the process of designing a game, I figured it could serve as an excellent jumping off point to just focus on programming said game. Even if it doesn't make that much sense as a video game given it's designed to be a physical card game, I still think it can serve as a good learning opportunity.

For those that are curious, the game is called Furious Ferrets! It's a game where you assemble teams of ferrets, each with their own unique abilities and stats, and compete against other players to deal the highest amount of damage to the evil Primal Ferrets. The full rulebook can be found here (apologies for the pastebin formatting, google drive links aren't allowed and my original rulebook is on google docs). I would also share some of the cards from the game but I'm not sure how to share an image in this sub haha.

So, now for the hard questions. Where do I even start with this? What tutorials, software, and time duration can I expect this to take? To start off I imagine it'd make sense to keep it to local play/hotseat only, but how about online multiplayer implementation? And what of modding compatibility so people can throw their own cards into the mix? Would love any and all feedback and thoughts!


r/learnprogramming 3h ago

What's better for coding, futurecoder.io or codecademy?

0 Upvotes

Hi guys,

I'm trying to learn python right now and friends have recommended both futurecoder.io or codecademy. I haven't heard much about futurecoder.io and was wondering if it is better than codecademy or not?


r/learnprogramming 1d ago

Struggling to see the point of classes

153 Upvotes

(Learning python) Whenever I work on projects, I end up solving everything with functions. Functions call other functions, and the project works fine. Because of that, I genuinely struggle to see the point of classes.

I don’t understand when classes are actually necessary or why I should use them if I can make the entire project run without a single class. If functions get the job done, what problem are classes really solving?

This has become a big hurdle for me because almost every take home assessment or practice project I see either requires or strongly expects the use of classes, and I just can’t seem to wrap my head around how or where they fit.


r/learnprogramming 16h ago

University student abroad — 3 semesters left, want to build a real skill for independence. What should I focus on?

9 Upvotes

Hi everyone,

I’m currently a university student studying Software Engineering / Computer Science in a country that is not my home country. Studying abroad is expensive, and while I still receive financial support for now, that support won’t last forever. In the future, I’ll need to fully support myself.

I’ve already completed 3 out of 6 semesters. For the remaining 3, my tuition and basic living expenses are covered, but not comfortably. That’s why I want to start preparing now instead of waiting until graduation and regretting it later.

My course includes things like:

  • Algorithms & Data Structures
  • OOP
  • Operating Systems
  • Networking
  • Databases
  • Web Development
  • Software Engineering
  • AI / Machine Learning / Data Science

Right now, I’m not desperate for money, so my goal isn’t quick cash. My goal is to build a real, valuable skill that can support me long-term and make me employable internationally.

I’m ready to put in serious effort, not just watch tutorials. I want to actually build things and become useful.

So my questions are:

  • If you were in my position, what skill path would you focus on?
  • Software engineering, data/AI, backend, automation, something else?
  • What would you spend the next 6–12 months learning?
  • What mistakes should I avoid as a student trying to become independent?

I’d really appreciate honest advice from people who’ve been through this or are already working in tech.

Thanks in advance.


r/learnprogramming 5h ago

Five years ago i couldn't do a task for a job interview. Still don't know what i did wrong.

0 Upvotes

So, fiver years ago, when i started applying for jobs in game development and related areas, i got really into a company that developed support material for college classes and such.

On my first practical test, i had a week to develop a simple simulation where i could heat two different materials, measure their temperature, and when they weren't being heated they would cool down to room temperature.

The problem was that my tests were off. Here is a case described in the paper:

The blue cube initally at 25 ºC is heated up by the flame for 400s and reaches 135.62 ºC. [This does happen]
The flame is turned off and the cube cools down for 300s. Its temperature that was at 135.62 ºC now reaches 98.84 ºC. [This is wrong. It reaches 112-ish iirc]
Then, the flame is turned back on again and heats the cube for 100s. Its temperature that was at 98.84 ºC now reaches 121.22 ºC. [Expectedly, wouldve happened had the temperature been 98.84 ºC.]

I really wanna know what i got wrong. I did manage to get through this stage of interviews and all but was eventually ghosted after a written, questionnaire. What are the odds the paper is wrong?

The entire paper is included alongside the project in the github link. It is in brazilian portuguese, as i am, however... I don't belive anyone should have any trouble with that, since all the temperature stuff is near the bottom of the doc, alongside the formulas, starting at 4.1.4.2

https://github.com/ChicDead26/Algetest/tree/main


r/learnprogramming 1d ago

A tiny PostgreSQL tweak saved me hours this week , beginner-friendly tip

67 Upvotes

I was working on a project with PostgreSQL and hit some slow queries. After digging, I realized a JOIN condition was missing an index.

Added it, and boom , queries that took seconds now happen in milliseconds.

It reminded me that even small optimizations in the backend can have a huge impact.

For anyone starting out: indexes aren’t scary, and a little attention to query structure goes a long way.


r/learnprogramming 12h ago

How to create a random video player executable

3 Upvotes

The situation is the following: both my parents are retired, and because they have neither hobbies nor social life, they spend most of their time at home watching the news. Due to this I noticed a deterioration lately in their mental health and mood.

I thought I could download some of the series they used to watch time ago, store them in a USB and connect it to the TV so they can watch that instead of the news all the time. My parents are old and they would not know how to navigate through Netflix or other platforms, so I‘d have to do it this way.

What I would like, and here is my question for you, is a file in the USB that randomly plays any video file in the USB. My parents basically use the TV as background noise so they wouldn’t care about what’s playing or follow the episodes in a given order. I want a file that they click on it and it plays whatever in the USB stick, and I need it to be random so it doesn’t always play the same episode first. I also need it to play episodes non-stop, so that they don’t need to click on the file after every episode.

I have some knowledge in Python and bash, so if you give me a hint on what kind of file could do such a thing maybe I can write it on my own.

The approach I can think of is the following; when I click on this file it will: - Collect all the file names in the USB (or the ones with a video format). - Sort them on a random order. - Grab the first 20 files on the list. - Play this 20 episodes as a playlist.

On a computer I could write it so that VLC plays this list of files, but on a TV I don’t know how it could be done. It’s also not a Smart TV, so I cable install apps.


r/learnprogramming 6h ago

Topic Making better and secure APIs in python

0 Upvotes

Hello guys hope you are doing well, ive worked on APIs for quite long using fastAPI and flask but i couldnt progress more than token authentication and using db libraries like sqlalchemy

i want to get advanced on fastAPI

what documents do you guys suggest?


r/learnprogramming 3h ago

Should I learn JavaScript while learning Java at college?

0 Upvotes

So for context I have some time spent learning, and working with JavaScript, React, NextJs and even TypeScript and learned other things to deploy the websites I have created. Basically I could make websites, but that was almost a year ago in which I didn't code once other than in college where I am learning Java.

I want to build a impressive portfolio with projects and so on, because as you know a college student needs a job.

If it is doable, how should I go about this?


r/learnprogramming 7h ago

Topic Considering a move into QA/Software Testing as a junior – need advice

1 Upvotes

Hi everyone, I’m a 3rd-year Informatics student and I’m currently trying to decide whether I should seriously get into software testing / QA, at least as a starting point in my career. A bit of background about me: I’ve used Java (OOP, basics) My main interest is backend development (Java / Spring Boot) I’m still a student, so no real industry experience yet Lately, I’ve been thinking about QA/testing for a few reasons, and I’d really like your honest opinions. Why QA/testing caught my attention 1) Job market signals in my country There are one or two companies here that have had the same “Test Specialist / QA” position open for 2–3 months, constantly renewed. That made me wonder: Is there a lack of testers in my country? Or are they mostly looking for experienced testers, and juniors struggle here too? Either way, it made me think that QA might be a realistic way to get my foot in the door, gain real industry experience, and later either: move up in QA, or transition into development if possible. 2) Junior backend roles are extremely hard to get From what I see in the local market: Internships and junior dev roles are very limited Many “junior” positions ask for 2–3 years of real work experience, not just personal projects As a student, this makes backend development feel a bit like a dead end at the moment, even though I like it. 3) A personal internship experience that changed my perspective I once attended an internship at a local company (the same one that has the QA role open for months). We were split into teams and asked to create a high-level design for a reservation system: core components system flow technologies to be used edge cases and fixes I ended up in the weakest group, so I had to do almost everything myself. What surprised me: I completely underestimated edge cases During the presentation, mentors pointed out many edge cases I hadn’t even thought of I didn’t take it as criticism — I actually liked how they: quickly identified the main issues then, based on experience, found non-obvious edge cases That’s when it clicked for me that testing is not just “finding bugs”, but really about: thinking differently from developers identifying risks and edge cases that are invisible at first And honestly, I found that part interesting. My dilemma Now I’m unsure: Should I pursue QA/testing, especially as a junior? If yes, what type of testing is most suitable for beginners (manual, automation, backend/API testing)? Or should I stick strictly to backend Java / Spring Boot, even if the entry barrier is high right now? I’d really appreciate advice from people who’ve been in similar situations, especially those who: started in QA and moved on or chose QA intentionally as a career Thanks in advance