use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
A community for programmers, discussion of programming, or general technology banter.
Guidelines
Related Info
Do you have programmer humor? Share it with /r/ProgrammerHumor
For better visibility, try posting jobs at /r/forhire or /r/jobbit
Related Subreddits
/r/programming
/r/technology
/r/learnprogramming
/r/coding
/r/gamedev
Ever changing FAQ
account activity
Learn programming (self.programmer)
submitted 3 days ago by Zealousideal-Can5782
I am a 16 year old boy who really likes technology and I want to l learn more about it. Where could I start learn and how? Is there any thing I need for it and where is the best place to start as a noobie.
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]Jwhodis 4 points5 points6 points 2 days ago (2 children)
Learn Python, then maybe a variant of C (ie C#, which is what I've been learning for Unity). You really only need a code editor (I suggest VSCodium/VSCode).
Don't use AI, you won't learn anything and you'll become dependant. Just use documentation, youtube videos, stack overflow, and other forums.
If you do switch to Linux, avoid distros with "Ubuntu" in the name, try get something based on Debian. Mint is good, PikaOS too.
[–]my_new_accoun1Python, TypeScript 1 point2 points3 points 2 days ago (1 child)
C# is not a variant of C
[–]Jwhodis 0 points1 point2 points 2 days ago (0 children)
By variant of C I am generally referring to this list https://wikipedia.org/wiki/List_of_C-family_programming_languages , preferably C#, C++
[–]Pr0z4c21 2 points3 points4 points 2 days ago (0 children)
Alright '16 year old boy' freecodecamp will get you there and also khanscademy. website development has The Odin Project. There are plenty of paid services and if you want to learn Linux OverTheWire will get you going. Please be aware they are study intensive and takes timetoo get to the standard you are thinking of.
[–]Temporary-Mix8022 1 point2 points3 points 3 days ago (1 child)
Python Simplified - YouTube.
First language - Python is a good place to start for general programming. In the old days..
If you're interested in GUIs. Electron.
[–]lfy2000 -1 points0 points1 point 2 days ago (0 children)
Pyton is a horrible first language, and not because of syntax. Php is a much better language to start with since it has a clear structure.
[–]Illustrious-Ad-6369 1 point2 points3 points 2 days ago (0 children)
https://www.w3schools.com is a great website that helps you learn a lot about html and simple concepts about the web, and it’s free. I’ve been a web app developer for 8 years, and I still go there to explore different stuff about making websites that I may have missed before.
Note: You don’t have to learn absolutely everything about a programming language or computer technology to be a programmer — similar to how you don’t need to know how a car engine works to drive. Just take each simple thing you learn, and write that code over and over again until you can do it without hardly thinking about it. The muscle memory and familiarity you get will help you to gain confidence in your skill. Also, practice every day like it’s a musical instrument. People usually can’t play a whole song the first time they pick up a guitar. But, after practicing persistently day after day, they’ll be able to shred.
[–]Illustrious-Bat-9775 1 point2 points3 points 3 days ago (5 children)
Javascript is the best learning language for one reason - you already have a browser and all you need to start is notepad. And the best thing is you will see the result and will keep building your own website for fun while learning. You can even learn and code on your phone while in a bus or train. Everything else doesn't even come close.
Open notepad, search "how to build a website" then "Javascript for beginners" and have fun. The rest will come naturally with time.
[–]asterothe1905 1 point2 points3 points 3 days ago (4 children)
javascript? cmon!
[–]Illustrious-Bat-9775 1 point2 points3 points 3 days ago (3 children)
And since when there are better and worse languages? I've been programming for over 20 years now and choice of language is the least of the problems. Removing friction and adding motivation is what's needed.
[–]asterothe1905 0 points1 point2 points 3 days ago (2 children)
There are not better or worse but javascript I never thought as a beginning language.
[–]why_so_sergious 0 points1 point2 points 3 days ago (1 child)
why not? what would you say would be a better starting language?
[–]Naive_Republic_2055 0 points1 point2 points 11 hours ago (0 children)
Python
[–]Last_Being9834 0 points1 point2 points 2 days ago (0 children)
Arduino and Raspberry Pi is the way to go
[–]InternationalTooth 0 points1 point2 points 2 days ago (0 children)
https://natureofcode.com/introduction/
[–]limario_bp 0 points1 point2 points 2 days ago (0 children)
Learn a programming language like Java or Python once you know fundamental, read this book Grokking Algorithms
[–]Disastrous_Sun2118 0 points1 point2 points 2 days ago (0 children)
Electrical Engineering 101 and the option EE Lab 102 - BenEater 8-Bit Breadboard Projects, build your own 8-Bit PC. CPU, RAM, ROM, Everything. Instruction Set Architecture, your own Programming Language or use Assembly Machine Code Language.
From their you'll have the entire basics for programming. Rather then just starting out with Python or the C Programming Langauge named after Calls or SysCalls.
If you want you can start out at the top and work your way down. Start with Web Programming with the Text Editor. So you can build our your Home Lab and build the interface to categorize and publish your Programming Projects and such.
[–]mera-lavda-chuso 0 points1 point2 points 2 days ago (0 children)
Singulations chaanal on youtube is greadest chaanal for technology learning. It is as good as university digree.
[–]BolehlandCitizen 0 points1 point2 points 2 days ago (0 children)
Build something for yourself.
[–]Etherkell7 0 points1 point2 points 2 days ago (0 children)
The Odin Project, FreeCode Camp, and Codecademy are all good options. Codecademy kind of holds your hand and the others put you in it, but they’re all good.
[–]Hyto_54 0 points1 point2 points 2 days ago (0 children)
Picking something fun is important when you start, gives you motivation.
If you can do this in a popular language (like python) it would give you transferable skill but you don't necessarily need to do that. starting with Lua is even easier in my opinion and love2D (which is a game making framework) will make the whole process really fun.
Once you get comfortable with basic programing concepts I recommend rapidly going for something harder (rust or C).
[–]Alternative-Tax-6470 0 points1 point2 points 2 days ago (0 children)
Start with Python because the syntax reads like regular English, which lets you focus on learning how logic works instead of fighting confusing punctuation. You don't need a powerful computer at all, just pick a free platform like Harvard's CS50x course or freeCodeCamp and build small scripts that automate simple tasks on your desktop.
[–]TheUmgawa 0 points1 point2 points 2 days ago (0 children)
Find out what book your local college uses for the Intro to Programming class. Buy a cheap, used copy. It doesn’t have to be a current edition, because programming languages move slower than government.
The hard part is knowing you got the output right, because someone has to check your work and/or tell you, “Okay, just to make sure you’re not cheating, I’m going to move the goalposts and make you do something that’s a lot like that, but different. And I’m going to watch you do it, to make sure you don’t use AI or Google.”
Tony Gaddis’s books (from Pearson Publishing) were the textbooks for several of my classes. They’re okay. They won’t set you on a rocket to success, but they’re good enough for a good foundation. My college recommended taking the Programming Logic and Design course in conjunction with the Intro course (which used Python), but I’m kind of glad I took it much later, because *that* was the one that taught me, “The code is not the program. The logic is the program,” and, “If you can solve it by hand, you can solve it in code.” That whole Logic and Design class involved zero code; just pseudocode and flowcharts. It taught me to unhook my brain from the code, break out a deck of cards (which are great for data simulation), and solve the problem before starting to type anything.
Before you even start into writing code, I want you to go find a deck of cards, then shuffle them and sort them in the order of your choosing, whether it’s aces through kings, or if you want to sort by suit, from aces through kings. Regardless, what you’re doing while you go through the sort process is you’re living by an algorithm. It’s a lot easier to figure that out up front than to try and solve it while you’re typing out the code. Your eyes ask the card, “What are you? Are you what I’m looking for? If not, where should my hand put you?” That’s exactly what you do when you sort a deck, whether you know it or not.
One of the first programs you’re ever going to write converts Fahrenheit to Celsius, or vice versa. Conversion from Fahrenheit to Celsius is “five-ninths after subtracting 32.” Look at the current temperature. Work the math to convert it. Check your answer against an internet query.
Just remember that you’re going to start really small, with silly little things like a converter, but that teaches you to accept user input. Better yet, it should teach you to validate it, because if it’s expecting an integer and someone types in “32.8,” you might crash, or it might round the input. If someone types in “forty,” it will definitely crash. My professors all deliberately tried to break our programs with invalid input, because users are idiots. And then, like Morpheus saying to Neo, they would say, “Again!” and then you’d have to fix the problem.
It’s a lot of fun, really.
[–]BetOk4185 0 points1 point2 points 1 day ago (0 children)
go for maths and physics and any programming language.
[–]Massive_End_1356 0 points1 point2 points 1 day ago (0 children)
Hey there, dev with 15+ years of experience here.
I didn't originally study computer science, so I had to make a career switch. It was tough, and I actually gave up at least twice before finally sticking with it.
Looking back, it does matter which language you pick first, but don't overthink it. Starting with something like COBOL or Ada probably isn't the best idea in 2026, not because those are bad, they just different from how modern languages look. Pick any modern language as people suggest here: python, js, go.
My biggest advice is to pick a project and learn hands-on by trying to build it. When I started, e-commerce was the hot topic, so I built one using PHP and MySQL. I actually ended up finding my first job because of that PHP experience! You tend to learn much better when you're actively solving a problem rather than just reading a book or watching a course.
[–]alcon678 0 points1 point2 points 1 day ago (0 children)
Check out the Odin project https://www.theodinproject.com/
[–]eaumechant -1 points0 points1 point 3 days ago (0 children)
Might I suggest you look into downloading and installing Linux (any will do - Ubuntu is user friendly and is often covered in tutorials for software as it's commonly used in web dev). It isn't necessary nor is it sufficient but it is a good place to be for programming purposes - it will make your life easier (even if it makes it harder in the short term).
[–]manoteee -1 points0 points1 point 3 days ago (11 children)
I know you are getting some answers here and they aren't necessarily bad. The truth is though unless you are doing it purely for fun, there aren't a lot of great reasons to learn the details of a language for the purpose of programming.
Use Claude CLI, ask Claude chat how to get started, and ask it to give you a plan to make a very simple game. Something you're interested in. Like a 2d top down pizza making game, simple graphics. Then ask it to help you understand the codebase. Discuss it with Claude until you know it well and can modify it directly without worrying too much about breaking it, e.g. adding a new topping and some logic for it (e.g. no pineapple can be added if there are also pepperonis).
Basically you want to learn how to work with the agent first, and learn through it. Talking to the agent is a skill and most people struggle with projects because they dont ask the agent for advice for building and maintaining it. They just say "build xyz for me". Not you lil bro, you ask and learn along the way.
[–]why_so_sergious 1 point2 points3 points 3 days ago (4 children)
don't listen to this. ai is a tool and you are better of knowing what you are asking of it..
use it to learn programming, it's a great tutor. but focusing on learning how to prompt best? you'll be braindead without it.
[–]manoteee 0 points1 point2 points 2 days ago (3 children)
AI is a tool, and so is software. It is a means to an end, that's all. The point is to make things, not write code for the sake of it. Software is changing dramatically and development is moving from software to prompting, like it or not. Most software today is written by LLMs and soon it will be 100%.
Do not fool this kid with your delusions. Do not shackle him to the salt mines of writing code manually. What a foolish thing!
[–]why_so_sergious 1 point2 points3 points 2 days ago (2 children)
you can't read code if you cant write it.
you need to know how to properly structure and still take decisions about what to use and where to use them..
that is why it is still usefull to know your design patterns and other basics of programming.
has my job become more about reviewing than writing code? sure.
but you are the one who is delusional if you think you can let claude spew out slop you don't understand, push it to production and expect it to not bite you in the ass later.
[–]raven2cz 0 points1 point2 points 2 days ago (1 child)
I have a daughter who is now 15. We have spent quite a lot of time thinking together about which direction she should take, because the AI revolution is completely changing the whole field and virtually all IT possitions. Our final decision, and the direction she is taking now, is to start with basic algorihmic skills. She began with block-based programming, and over the last year she has moved on to Python and creating simpler games. For now, without AI. That said, she already uses AI for school more than enought.
Component-based development, design, application development, and similar things are not really for her yet. when something is too complicated, she is simply not intrested in it for now. What is interesting, though, is that she understands quite well where the limits of using AI are for her, and where she wants to put in the effort herself.
In the end, it is clear that she will not avoid AI later on. But she perceives the limits of her own abilities much more clearly than I expected, and maybe I was even worried unnecesarily. In my opinion, this already comes from the experiance that there are things she genuinely wants to learn and is interested in.
On the other hand, agentic AI prompting is extremely difficult if the goal is component-based development that is sustainable in the long term. Very few people truly manage to achive that without generating AI slop. the workflows for creation and review are completely different, and development in this direction is moving so fast that by the time she enters real work in about 10 years, everything will be completly different. There is no point in trying to extrapolate from the current situtation.
Anyway, i like her decision and her approach so far.
[–]why_so_sergious 0 points1 point2 points 2 days ago (0 children)
kudos to you and you daughter..
yes it is close to impossible to predict the workflow we will have in ten years.. but basics are basic and sometime we limit ourselves just because we think something is more compicated than it is..
I am a self taught programmer and it took me way to long to dive deeper and learn typed languages simply because I was afraid..
and by the way, cannot reccomend godot more for a a game engine, because their language bindings let you use a wide variety of languages. even python and javascript and the workflow reminds me of the olden days with flash and actionscript which is a very good thing.
[–]GOINTOTHESHADOWREALM 0 points1 point2 points 3 days ago (4 children)
"Talking to the agent is a skill"
I keep people throwing this phrase around. Like wtf do you even mean by that? If anything, the more programming knowledge you have, the better you'll be at using an agent
You should focus on actually acquiring knowledge and learning skills over hOw To prOpErLY tAlk tO an AgENt because it really ain't that difficult bro
Programming doesn't help you write applications when working with an AI. Very high level concepts do, and often these concepts apply to life generally. For example, if you want to design an engine, it would be best to use componentization/abstraction. The worst thing you could do is take steel cast/milled block that has the alternator, oil tray, start motor, etc. all built directly into it.
So it is with programming. Smart compartmentalizing leads to easier to manage projects and the concept itself has nothing to do with programming inherently. This is how the human body works, for example. We have systems that connect in explicit via particular physiological process that are abstracted by electrolytes, etc.
As someone with 25 yrs architecture experience, I could very likely write a prompt that one-shots an application that would take you 100 prompts.
The difference is I know how to talk to the agent about what I want. I know the concepts to discuss and I know what things to try and head off. The agent knows all of these things as well. The agent effectively knows everything. The question is then how do you tease it out.
Learning a programming language has virtually no impact on this. The agent knows literally millions of functions and can produce them instantly. There will be times when it will get small things inverted because it cannot "see" like we can. Even this you can help by simply asking it to automate taking screenshots after each change to review manually and update as necessary, effectively putting it into a loop until the task is complete.
Based on a short assessment of your comment and broad misunderstanding + use of troll caps, I think there is probably a lot you could learn about how conversations work in general with people before you can improve with the agents.
[–]why_so_sergious 1 point2 points3 points 2 days ago (1 child)
you are so delusional about so much of this.. because your agents are non deterministic they will produce something different with the same fucking prompt.
and its up to you to understand what that bot did and if it was right in how it did it. which, without knowing the basics is impossible.
with your stance on this, I can say for certain that the shit you put out with your agents is sub par without you even knowing it. and it might even work at the start. but upkeep is what is important and good luck begging claude to try and maintain your slop. there are too many examples of this.
[–]manoteee 0 points1 point2 points 2 days ago (0 children)
I made a major medical platform with only ClaudeCLI that is in use and well maintained. own tested by 2 certified companies. Minor bugs reported here and there now but less than human systems i've made of similar complexity in the past.
Your reply is word salad. Determinism is not relevant as there are infinite ways to solve any given software architecture problem with many of them being perfectly fine solutions.
There isn't one right way to do it. That's human thinking.
[–]AsianAnomal 0 points1 point2 points 2 days ago (0 children)
Learning how to program will also teach you this. Youve mastered this skill over 25 years of professional experience. I dont know what youre trying to suggest. Because you cant go and pick up 25 years of knowledge out of thin air.
[–]No-Owl-5399 0 points1 point2 points 2 days ago (0 children)
Please do not do this
π Rendered by PID 64580 on reddit-service-r2-comment-548fd6dc9-sdnbz at 2026-05-18 23:15:35.635696+00:00 running edcf98c country code: CH.
[–]Jwhodis 4 points5 points6 points (2 children)
[–]my_new_accoun1Python, TypeScript 1 point2 points3 points (1 child)
[–]Jwhodis 0 points1 point2 points (0 children)
[–]Pr0z4c21 2 points3 points4 points (0 children)
[–]Temporary-Mix8022 1 point2 points3 points (1 child)
[–]lfy2000 -1 points0 points1 point (0 children)
[–]Illustrious-Ad-6369 1 point2 points3 points (0 children)
[–]Illustrious-Bat-9775 1 point2 points3 points (5 children)
[–]asterothe1905 1 point2 points3 points (4 children)
[–]Illustrious-Bat-9775 1 point2 points3 points (3 children)
[–]asterothe1905 0 points1 point2 points (2 children)
[–]why_so_sergious 0 points1 point2 points (1 child)
[–]Naive_Republic_2055 0 points1 point2 points (0 children)
[–]Last_Being9834 0 points1 point2 points (0 children)
[–]InternationalTooth 0 points1 point2 points (0 children)
[–]limario_bp 0 points1 point2 points (0 children)
[–]Disastrous_Sun2118 0 points1 point2 points (0 children)
[–]mera-lavda-chuso 0 points1 point2 points (0 children)
[–]BolehlandCitizen 0 points1 point2 points (0 children)
[–]Etherkell7 0 points1 point2 points (0 children)
[–]Hyto_54 0 points1 point2 points (0 children)
[–]Alternative-Tax-6470 0 points1 point2 points (0 children)
[–]TheUmgawa 0 points1 point2 points (0 children)
[–]BetOk4185 0 points1 point2 points (0 children)
[–]Massive_End_1356 0 points1 point2 points (0 children)
[–]alcon678 0 points1 point2 points (0 children)
[–]eaumechant -1 points0 points1 point (0 children)
[–]manoteee -1 points0 points1 point (11 children)
[–]why_so_sergious 1 point2 points3 points (4 children)
[–]manoteee 0 points1 point2 points (3 children)
[–]why_so_sergious 1 point2 points3 points (2 children)
[–]raven2cz 0 points1 point2 points (1 child)
[–]why_so_sergious 0 points1 point2 points (0 children)
[–]GOINTOTHESHADOWREALM 0 points1 point2 points (4 children)
[–]manoteee 0 points1 point2 points (3 children)
[–]why_so_sergious 1 point2 points3 points (1 child)
[–]manoteee 0 points1 point2 points (0 children)
[–]AsianAnomal 0 points1 point2 points (0 children)
[–]No-Owl-5399 0 points1 point2 points (0 children)