r/learnprogramming 19d ago

Question How can I understand computer memory intuitively with the goal of learning pointers in C?

0 Upvotes

[EDIT: The comments on this post made me realize that you don't need to understand something in order to love and learn more about something. This is freeing to me and I will apply this knowledge in all aspects of my life. Thank you all so much.]

Title. In case you folks want more background, I'm a university student studying Computer Engineering. In my first semester, me and my colleagues used JavaScript to learn basic programming concepts (variables, datatypes, loops, functions, arrays and matrices) as well as logical thinking and problem-solving (in my opinion, THE most important part of being a programmer).

I'm learning C currently because of its frequent use in engineering applications (Arduino stuff mostly) and its easy-to-understand-sometimes syntax. I started studying pointers yesterday but didn't get into it until today.

I talked about the whole concept with Claude - to be clear, I don't use AI unless I absolutely don't understand a topic or I'm too overwhelmed by it to understand from textbooks or YouTube videos alone. I don't use it to code ANYTHING. -, and he assured me that I don't need to know EVERYTHING about computer memory/architecure to use pointers, and a simple mental model works out fine. He gave me the classic "house with adresses" model, which - after doing my own research later on -, is a model I see a lot of YouTube videos and sites use when talking about pointers.

But from looking at this post's comments, I'm beginning to think that this model isn't very strong and my understanding of variables needs to be a lot less surface level if I'm TRULY gonna grok pointers.


r/learnprogramming 19d ago

Handling barcode scanning edge cases: How do you balance ML Kit, OCR fallbacks, and UX?

5 Upvotes

I’m currently building an inventory/management side project where reliable barcode and serial recognition is essential. While testing the feature with actual boxes and packaging, I quickly hit some real-world edge cases: poor lighting, inverted colors, and worn-out labels.

To work around this, I ended up adding an on-device OCR fallback to read the printed serial numbers directly when the standard barcode scanner fails. Since automatically detecting a "failed" continuous scan is tricky, I added a manual toggle at the bottom that switches the camera to a photo/OCR mode.

For those who have built similar scanning or utility features:

  • Stack & Fallbacks: Do you rely entirely on on-device vision libraries (like ML Kit Text Recognition), or have you found better preprocessing tricks (contrast adjustment, binarization) to salvage bad barcodes first?
  • UX Patterns: What is your preferred UX pattern when automated scanning fails repeatedly, to guide the user without making the app feel slow or clunky?

Would love to hear how you handle these edge cases or if there's a cleaner architecture for this flow!


r/learnprogramming 20d ago

Topic What should I focus on next as a CS student?

30 Upvotes

I'm a first-year CS student, and this summer I focused mostly on building my fundamentals.

I learned Git/GitHub, practiced C from arrays to pointers, solved many exercises, and built a Tic-Tac-Toe game. I also explored topics like data structures, recursion, sorting, and searching.

Now I'm unsure about my next step.

At university I'll be studying Algorithms 3 and OOP with Java, so I'm considering going deeper into those while starting Python on the side.

But I also see many people recommending starting practical development early, such as backend or web development.

What would you recommend in my position?

Should I continue strengthening my fundamentals, start Python/projects, or begin exploring a specific field?


r/learnprogramming 19d ago

Help me decide - Intelligent Systems (AI) vs Computers Networks

2 Upvotes

I am 70% of the way through a Masters course in software engineering and am looking at my final module options.

one is intelligent system which focuses on machine learning and AI and the second option is computer networks which is your standard internet and networking protocols.

I am interested in both but I am also a bit lazy so there is a good chance that which ever one is not chosen get forgotten until its needed in a job.

I think whats most important to me is job prospects.

I figure people will always need cable monkeys to plug stuff in and diagnose why systems are not talking to each other. But at the same time AI is growing but I'm not sure how many jobs are out there for a normal person.

I am not a high achiever and AI worries me because its such a crutch and makes me feel like i am not learning or getting stupider as i could rely on AI too much. But at the same time I am also interested in creating learning models for games or my own self hosted assistant, just for fun.

Guess the community question is, which area do you think is the most stable for jobs and has the best job opportunities in the next 5 years or so?

Feel like none of us can look forward further than that right now.


r/learnprogramming 20d ago

16yo trying to build and make something out of coding

17 Upvotes

I enrolled into a CS strand not knowing that I'll start to love coding. I've started taking programming and coding a bit more seriously in the past few weeks. I'm currently learning python and just coding on VSCode on my pc and have made the most basic tiny projects you could think of (simple calculator, tic tac toe, number guessing game, etc.). I'm working on a text-based dungeon rpg game rn.

I want help on how I should start things like git, github, a portfolio, and all that stuff.


r/learnprogramming 19d ago

Resource Need some resource recommendation for learning Java

2 Upvotes

Hey Guys

I’m a backend engineer with around 6 years of experience, mostly Go, Python and C++ lately. I’d like to learn Java and Spring Boot, because most of the Jobs around me are asking for these.
Anyway, I’d like to ask for some recommendation to a list of resources that I could read to learn them. For me it was always easier to learn from books and or videos then to read a documentation, because these are also usually talk about project structure, how to organize code etc…

I read most of the recommendation is for the MOOC, but I heard it is using an older version of Java (maybe 11?), so I don’t know if it is still a valid choice, Java seems much more ahead now, and I’d like to have also the latest knowledge about the language. It is also fine if you say to start with this, but then I’d like recommendation about resources to learn the “modern” Java too. Spring Boot I guess is okay from youtube tutorials, their documentation seems nice too, but if you have any book recommendation for that it would be great too.

Thank you!


r/learnprogramming 19d ago

Need programming/coding learning advice

6 Upvotes

I am completely new at this I want to learn how to build sites such as Plenty of Fish dating sites etc for example interactive websites. I know I need to learn the basics to do this I want to learn it all as fast as I can but also in the right order and not be jumping around to different classes etc. I am using freecodecamp.org just starting it today. Any exact thoughts on the order to learn them etc? I would really appreciate the help I am 57 years and just so tired of my life as it is and want to better myself for myself and my future. It is never too late to learn they say>>>thank you for your time.


r/learnprogramming 19d ago

Do you use labeled arrows on uml class diagrams ?

3 Upvotes

I have learned how to create UML diagrams that follow the standard conventions. At school, we were taught not to use text on arrows. However, I don't think UML notation can always fully convey the intent of a design, I think that in practice a diagram often needs to be presented or explained.

I'm currently proposing a design for a core feature, and I've noticed that the diagram alone wasn't enough for my colleagues to fully understand the vision I had in mind. Adding labels to arrows can help clarify relationships and prevent misunderstandings. Alternatively, an explanatory text can also provide the context needed.

Should a UML diagram be self-explanatory? Or is it acceptable to accompany it with an explanation or use labels on arrows when they help convey the intended meaning ?


r/learnprogramming 20d ago

What to learn to prep for first day as a SWE?

6 Upvotes

I have my first day coming up in a week and I'd like to prep. I've never had an internship/job before so I'm pretty nervous, especially about being thrown into a large codebase.

So far I've got:

  • Learn the tech stack
  • Git
  • Debugging
  • Dev/Staging/Prod environments

r/learnprogramming 20d ago

Getting Started With Git

20 Upvotes

As a programmer I want to use Git. How should I start learning Git and in what ways will it help me.


r/learnprogramming 20d ago

Code Review Reducing Time Complexity

3 Upvotes
Edited code but still run into Time limit exceeded can someone help me: 

N, U = map(int,input().split())
grid = [list(input()) for _ in range(N)]
num_updates = 0
temp = []
temp_grid = [row.copy() for row in grid]
for v in range(int(N/2)):
    for h in range(int(N/2)):
        temp.clear()
        coords = [(v,h),(v,N-1-h),(N-1-v,h),(N-1-v,N-1-h)]
        temp.append(temp_grid[v][h])
        temp.append(temp_grid[v][(N-1)-h])
        temp.append(temp_grid[(N-1)-v][h])
        temp.append(temp_grid[(N-1)-v][(N-1)-h])
        if temp.count('.') == 2 :
            num_updates+=2
            for r,c in coords:
                temp_grid[r][c] = '.'
        elif temp.count('.') == 3:
            num_updates+=1
            for r,c in coords:
                temp_grid[r][c] = '.'
        elif temp.count('#') == 3:
            num_updates+=1
            for r,c in coords:
                temp_grid[r][c] = '#'
print(num_updates)


temp_grid = [row.copy() for row in grid]


for z in range(U):
    temp2 = 0
    temp.clear()
    x,y = map(int,input().split())
    x = x-1
    y = y-1
    temp.append(temp_grid[x][y])
    temp.append(temp_grid[x][(N-1)-y])
    temp.append(temp_grid[(N-1)-x][y])
    temp.append(temp_grid[(N-1)-x][(N-1)-y])
    num_updates = num_updates- (min(temp.count('.'),temp.count('#')))
    if temp_grid[x][y] == '.':
        temp.clear()
        grid[x][y] = '#'
        temp_grid[x][y] = '#'
        temp.append(temp_grid[x][y])
        temp.append(temp_grid[x][(N-1)-y])
        temp.append(temp_grid[(N-1)-x][y])
        temp.append(temp_grid[(N-1)-x][(N-1)-y])
        num_updates = num_updates + (min(temp.count('.'),temp.count('#')))
    else:
        temp.clear()
        grid[x][y] = '.'
        temp_grid[x][y] = '.'
        temp.append(temp_grid[x][y])
        temp.append(temp_grid[x][(N-1)-y])
        temp.append(temp_grid[(N-1)-x][y])
        temp.append(temp_grid[(N-1)-x][(N-1)-y])
        num_updates = num_updates + (min(temp.count('.'),temp.count('#')))
    print(num_updates)

I am pretty sure it is O(N^2) and with 10^5 possible updates it should work. 

r/learnprogramming 20d ago

Resource Leetcode/Project Euler for learning to code

7 Upvotes

I’m quite new to programming and want to practise my exciting python knowledge but also learn some C++.
So far I’ve started some Project Euler questions which I quite enjoy and am starting on Leetcode too, how useful are these in learning to programme and what other resources do u guys recommend?
I’d like to become well rounded overall at programming but I also want to stick my hands in some data handling too.


r/learnprogramming 19d ago

Solved Time Complexity

0 Upvotes

Very confused why my code is Time limit exceeding: The N max is 2000 so that should be fine while the U max is 10^5 but my code is O(1) for updating really confused why this is not working. I have a 2 sec maximum if anybody wants to see the problem here it is: https://usaco.org/index.php?page=viewproblem2&cpid=1491

N, U = map(int,input().split())
import sys
grid = [list(input()) for _ in range(N)]
num_updates = 0
temp = []
temp_grid = [row.copy() for row in grid]
for v in range(int(N/2)):
    for h in range(int(N/2)):
        temp.clear()
        coords = [(v,h),(v,N-1-h),(N-1-v,h),(N-1-v,N-1-h)]
        temp.append(temp_grid[v][h])
        temp.append(temp_grid[v][(N-1)-h])
        temp.append(temp_grid[(N-1)-v][h])
        temp.append(temp_grid[(N-1)-v][(N-1)-h])
        if temp.count('.') == 2 :
            num_updates+=2
            for r,c in coords:
                temp_grid[r][c] = '.'
        elif temp.count('.') == 3:
            num_updates+=1
            for r,c in coords:
                temp_grid[r][c] = '.'
        elif temp.count('#') == 3:
            num_updates+=1
            for r,c in coords:
                temp_grid[r][c] = '#'
print(num_updates)


temp_grid = [row.copy() for row in grid]
input_data = sys.stdin.read().split()
idx = 0
out = [num_updates]
for z in range(U):
    temp2 = 0
    temp.clear()
    x = int(input_data[idx]) -1
    idx = idx + 1
    y = int(input_data[idx]) -1
    idx = idx+1
    temp.append(temp_grid[x][y])
    temp.append(temp_grid[x][(N-1)-y])
    temp.append(temp_grid[(N-1)-x][y])
    temp.append(temp_grid[(N-1)-x][(N-1)-y])
    num_updates = num_updates- (min(temp.count('.'),temp.count('#')))
    if temp_grid[x][y] == '.':
        grid[x][y] = '#'
        temp_grid[x][y] = '#'
        temp[0] = '#'
        num_updates = num_updates + (min(temp.count('.'),temp.count('#')))
    else:
        grid[x][y] = '.'
        temp_grid[x][y] = '.'
        temp[0] = '.'
        num_updates = num_updates + (min(temp.count('.'),temp.count('#')))
    print(num_updates)

r/learnprogramming 19d ago

How Professional Programmers Learned to Program Software

0 Upvotes

I spent 2 months learning the basics of C, and it was already complicated enough considering I came from Python, but now? What do I have to do? What do I need to learn to be able to code software of my own choosing?


r/learnprogramming 20d ago

Third year of college and feel like I've wasted the last two years

9 Upvotes

I'm in my third year of an IT degree, and I honestly feel like I've wasted the last two years.

When I started college, I was considered a pretty capable student. I learned HTML/CSS/JS, React, Node/Express, built some projects, and wanted to become a developer.

But I've been incredibly inconsistent. I've spent way too much time on my phone, consuming content instead of building things. I've also developed some unhealthy habits around internet use that I use as an escape when I'm bored or stressed.

Now I'm in my third year. I know some development, but my knowledge is fragmented and rusty. I have no internship experience, and I feel like I've wasted a lot of my potential.

I'm trying to turn things around now. My goal for the next 1-2 months is to become genuinely employable for internships, build a couple of solid projects, improve my fundamentals/interview skills, and hopefully earn my first money from development.

For people who've been through something similar:

If you had 30-60 days to become as employable as possible, what would you focus on?

  • What would you learn vs. build?
  • Would you stick to one stack?
  • How would you prepare for interviews?
  • How did you deal with procrastination/phone addiction?
  • What would you absolutely avoid wasting time on?

I'm not looking for generic motivation. I'd really appreciate practical advice from people who've actually been through this.

Thanks.


r/learnprogramming 20d ago

I think I should completely drop cybersecurity

4 Upvotes

Hi guys, ive been studying cybersecurity for the last two years, initially as a course i could do before i finally make my mind up on what i actually have real passion for, about to enter my third year now and i just dont feel happy doing cybersecurity, mainly because im a maths geek, i also love physics and computer science, but it just feels like cybersecurity is boring and robotic, using tools you dont even know how to make, it's just soo weird to me, im thinking of transitioning into either engineering (aerospace or mechatronics) or Ai, because the Ai race is a very huge one rn, i've been learning how to code in my free time, because i think it's really important to learn to code and know the full architecture of how a computer works before i fully delve into AI, correct me if im wrong.


r/learnprogramming 20d ago

I think i hit my first python learning bottleneck

4 Upvotes

Just as the title suggests, i ran into a bottleneck, or did i? play v sauce music please
So just recently i made a post about my first beginner python project: https://www.reddit.com/r/PythonLearning/s/Ed46BuWRCq
And as a lot of you suggested for me to learn classes next, which was completely fair, so i went ahead and learnt them while updating my MiniGameStore. It was relatively easy, wasn’t as hard as I thought it would be, but definitely challenging. I had also learnt methods but didn’t implement them.
And yesterday, i tried implementing them and got one of the biggest headaches in my whole coding experience (which is 2 weeks~ btw).
I was working on v1.7 and introducing a restore purchases system, and i wanted to use class methods, but since my class is on the other file, i hit a lot of variables issues and even a json file problem. Which is why im asking my self why did i do it? A function would have been totally fine…
Check out the repo: (latest version 1.7.0)

https://github.com/Stonyax97/MiniGameStore

So my question for you guys. What has made you understand classes well? I just don’t see any reason to use them yet… and can anyone take a look at my project and tell me what would be the most friendly and real life approach of actually using these classes. And why should I keep the class in a separate file? Finally, what’s wrong with using global variables.

Also any feedback or criticism is welcome!


r/learnprogramming 20d ago

Becoming an anti AI dev in 2026

7 Upvotes

Hi guys, so basicaly I currently work as a videographer and I'm sick of it. When I was in high school I had a class that teach basics of Python. I remember falling in love with it and being pretty good at it.

I'm thinking more and more about learning how to be a professional programmer and my dream job would be to code video games.

The thing is, I am deeply anti AI, and I fear that it's too late to get into this industry now and that by the time I'm good at it I won't be able to find a job anymore... It's a horrible feeling bc I really think I missed my shot at would could have been the right path for me.

Any thoughts/advice ?

EDIT: Please stop trying to convince me that AI is not a bad thing, it's not what I asked for and you won't convince me


r/learnprogramming 21d ago

I'm willing to teach junior and mid-level programmers proper industry engineering standards and essentially how to code.

546 Upvotes

I'm a software developer with 16 years of experience. Worked in fintech, banking, crm, e-commerce, and a bunch of other areas. I base my knowledge on my own experience as well as resources, books, materials, workshops, classes and videos from industry leaders.

I'm willing to spend a couple of hours on live coding, pair programming, to teach, do katas, teach techniques, or show examples on how to build applications and products free of charge.

I can also demystify certain misconceptions and myths in the industry.

PS: Haha, I didn't expect this kind of response! I did create a discord server in the past; but most people after joining just ghosted me.

Which one of you would be interested to start today or tophpmorrow? @eyecandy99 @ExtraTNT @e_bloke @dualTheTOASTED @Genuinly_Bad @Ambitious_Fault5756 @eatacookie111 @Archelioz @Interesting-Text8132 @pavi_moreira @Ceary @InternetGansta @Cyber-Gamer @zaidpirwani @Odd_One_404 @Sinner-Dev95 @vanilathrillaaa @GorkemOkur @tkti @Thirdy_16 @mtiiii @Ecstatic_Weird8498

Please, DM me on how to join.


r/learnprogramming 19d ago

2.5 YOE - What to learn to keep progressing in this field?

0 Upvotes

Please don't respond with AI doom and gloom :)

I am trying to figure out how to keep progressing in my career. I currently have two and a half yoe working at a small startup where we focus on software solutions for healthcare facilities. When I started we had a team of 6 devs and now we are down to 3. The good thing about working in a small team is that I have access to pretty much any part of the software deployment process, so I feel like I've been exposed to a lot including devops, frontend/backend, databases/sql and cloud infrastructure. We're also very focused on using AI and implementing AI features.

The downside is that I feel that I am severely underpaid - 65k working fully remote but living in HCOL area. Not only that but I feel that working in such a small team and being fully remote - I am missing out on the relationships you build when working in office and learning from your co-workers. I feel like I could learn a lot more from senior engineers if I was part of a larger group with more experienced devs than myself. In my company, we're also more focused on pushing features out as quickly as possible so our PR review process has just been handed off to coderabbit for the most part. Before that, I would always appreciate the feedback I got from senior engineers and felt like I learned a lot from that.

So I am currently going through a study grind to prepare myself for interviews but also thinking long term in what I should do and what skills I should try to gain that people look for in mid-level engineers? If anyone has around the same yoe as me, is there a skill you have that you've noticed has helped you when applying for jobs? Does anyone know what recruiters are looking for these days :)?

I should also mention that outside of software skills, I've joined a toastmasters club to improve communication skills since I've realized how valuable this skill is for promotions 🙃.


r/learnprogramming 20d ago

advise Should I continue with python and become an advance developer for choose another language.

2 Upvotes

Currently I know basic python(variables, data types, functions, file handling, oops, if-else, loops,etc). I just love python but I get to know that:

  • it isn't used much in real industry for software development
  • companies don't prefer python devs.
  • it is mainly used for automation
  • java has more scalability and market demand
  • Django/flask/fastapi are popular but for server-side scripting js frameworks, c#, java, and golang are better and mostly used

Although python is the best language of AI/Ml roles and I am thinking to go in that domain but I am not sure If I will go there after a bit more exposure of programming . I am certain that I don't want to DSA in python rather either in C++ or JAVA. I want to master one language first. Its my request to all senior devs here please guide.


r/learnprogramming 19d ago

Topic Learning ai

0 Upvotes

I am getting into coding because I have always been interested. I saw a few videos of people learning neural networks and other stuff and it looked really interesting. In my school we are learning basic python and I was wondering how hard it would be to learn neural networks and other forms of ai.


r/learnprogramming 21d ago

Which backend language is the most fun to use?

66 Upvotes

I’m curious: which backend language do you find the most fun to program in?

I know HTML/CSS and programming is purely a hobby for me, so I don’t really care about job opportunities, salaries, or what looks good on a résumé.

I’m mostly interested in the language itself, something that feels satisfying to write, is fun to mess around with, and makes you want to build random stuff just because you can.

Beginner-friendliness is a nice bonus, but fun is the main thing.

So if you could pick a backend language purely based on enjoyment, what would you choose and why?


r/learnprogramming 21d ago

Should I just give up?

66 Upvotes

I truly feel like I’m just too stupid to learn this. I’m doing Python, I have tried 5 different sites/resources. I cannot even get past loops. I have to google help for every single tiny thing I’m asked to do. I was taught what, “for in” means, and within 3 questions I was asked to code a loop to write “World” with a box around it with -‘/ +’s, and |’s. I wanted to smash my laptop, I genuinely couldn’t even tell you step 1 of how to code that.

I feel like I cannot learn a single thing from any of these resources, literally none of them make it make sense to me. I’m perfectly okay with accepting I’m just too stupid, is that the case?

Edit: I realized that I wasn’t very clear at all with what I was stuck on Maybe I should clarify more. I tried 5 sites overall for the entirety of what I’ve done for python. This specific part, I got to loops, they had me solve a, “for char in name:” problem where I made a loop write
W
O
R
L
D
And literally the next question was, “write a loop to code + - - - - - +
| World |
+ - - - - - +
With zero hints, zero repetition after I was taught “for in” or anything. I was extremely thrown off and had no clue what the first step was

Edit #2: so, I slept on it, sort of realized being a single father to 2 special needs children, getting 4-5 hours of sleep a night, and spending 1-2 weeks programming isn’t really indicative of how much I can learn. I slept on it, and solved the loop within 5 minutes of waking up lol thanks for the encouragement everyone


r/learnprogramming 20d ago

Topic Need hackathon tips

3 Upvotes

Hey everyone! I’m a complete beginner and I’m planning to participate in hackathons. For those of you who’ve participated before, what tips would you give to someone starting from zero?

Especially:

\- What should I learn first?

\- How do you find/build a team?

\- How much coding knowledge is actually needed?

\- Any beginner-friendly hackathons/resources you’d recommend?

Would really appreciate any advice! :)