Despite being on the Internet nearly all of my life, at least, for as long as I can remember, I never learned how to code. Sure, I can browse the Internet, watch videos, buy things online, but I don't really know how computers work inside. Maybe you remember that years ago, at least before the pandemic, people said that everyone should learn to code, that it was an important skill to have. You don't hear that much nowadays, but the idea remains. Coding is important. Being true to those words, I decided I want to learn how to code. I don't know how I should do it or what I should get to start coding. I could ask AI, but I'd like to also ask you, who are real people, as programs are made of code, as I understand, and programs are made to work for people and not the other way around, hopefully. Having said that, how do you start? What do you need? What are the most important programming languages out there? And any other things that everyone should know when they want to try their hand at something like this.
https://automatetheboringstuff.com/
>>109417796>Having said that, how do you start?Think about something you want to create or automate.Everything else goes from there I guess. I have no idea how to learn coding without having something in mind.Back in the day I learned that you could modify player coordinates in world of warcraft with CheatEngine (TM) and because the memory addresses always changed on restart you had to find the pointer to the coordinate address.Once you had that you could automate that stuff with a language called autoit. Now I had my own little hacking script with which i could pass any wall or go to the moon.This goes on with more gaming stuff in chink MMORPG's and shit.Until I entered an education where we read books and all that jazz, but before that it was always googling on the thing that I want to achieve.Now if you want to find something in a big pile of data, you can do that easy with python.If you want to build hardware, then esp32/arduino is your best guess.There are tons of ways and languages. Don't let them bitches tell you that language X (probably Rust) is the best one.If it's for you then just do it (tm). If it's for your career then start reading the books. Pick any of them. Personally I would prefer compiled languages (such as C or Go), but in the end it really doesn't matter
>>109417800Haha robots
install a linux distro (e.g. ubuntu)read K&R Cthe old unix books are concise, well written, interesting, and enlighteningpdf: https://ia801404.us.archive.org/2/items/cprogbooks/k%26r.pdf
>>109418014>the old unix books are concise, well written, interesting, and enlighteningAny suggestion for which Unix books to read, anone? Which authors made the best stuff?
>>109418130>Any suggestion for which Unix books to readhttps://archive.org/details/UnixProgrammingEnviornment/page/n15/mode/2uphttps://archive.org/details/DesignUNIXOperatingSystem/page/n13/mode/2upfirst one is good for understanding how to interact with the shellsecond one explains the design of unix and systems programmingthe books are somewhat dated, but most of the commands still work. the way to use these books is to have a terminal open and poke at it as you read.>Which authors made the best stuff?the ones who wrote unix
>>109417796>but I don't really know how computers work insideLearning to code won't teach you how computers work inside
Literally just tell AI to teach you how to codeUnlike everything else, AI is actually good at code.
>>109417796>find something you want to do>find out how to do itThis is the final redpill, this is the only way I can learn anything.
>>109417796>>109417800https://1337x.to/torrent/5790279/Automate-the-Boring-Stuff-with-Python-Programming/Video tutorial of the book.
>>109417796>Being true to those words, I decided I want to learn how to code. I don't know how I should do it or what I should get to start coding. I could ask AI, but I'd like to also ask you, who are real people, as programs are made of code, as I understand, and programs are made to work for people and not the other way around, hopefully.Even if you're going to be a vibecoder, you still need to understand the basics.
>>109417796Either start with C, or learn Python.Python is very beginner friendly.C is more difficult, but you'll learn more about how the underlying functions of your computer really work. There's an old saying that programmers who started with C turn out to be better coders in the long run.But really, either works. Python or C.But if you start with C, stay away from the K&R book. It's not beginner friendly. Anyone who recommends that either doesn't really know how to code in C and are just regurgitating info they read somewhere else, or C coders who are oblivious to how cryptic it is for beginners.
>>109418266Thanks anon, first book looks great.
>>109418405Python is in no way a beginner language, despite being advertised as such.C is far better in terms of putting one on the path to understanding what their computer is doing.C is also a far more simple language yet extremely capable.In addition, more language have used C as a template than any other, making picking up other languages based on it very easy.
>>109417796Just make somethingLike games, somethingBooks are a waste of time until you find your niche and field of expertise
>>109417796If coding is not your calling (you would know already), you will find little use of coding in daily life.It's mostly like going to an electronics shop and hacking stuff together. There's a million ways to build something wrong. Making things do the task and making things look good are two different things. There really isn't a standard way to do things either, people learn consistency from working in places that instruct employees to do things a certain way.The field is not an academic institution like in chemistry, biology, etc. It's more a market where everyone is shilling their tool that performs 5% better for some setting. The lingo evolves in a yearly basis so you have to spend a lot of time figuring exactly what the marketer intended to say with that.Tutorials will teach you extremely basic features, akin to learning basic arithmetic in math. You have to know exactly what problem you're trying to solve if you want to make actual use of the tools.Webdev is the most beginner friendly field because it's pretty much designing an information poster and automating pulling information. As other anons say, it's best that you know what kind of thing you want to create or automate for other applications.Play Baba is You to see if you tolerate the trial and error process of learning.
>>109418514Also don't start with C, C++ or Java. Start with C#, check out python, check out javascript. If you want to know more about how computers work under the hood move to C, but I think that's a niche for people who have nothing else in their lives than managing a computer.A selling point of languages is the library which is basically the toolset most programs work with, and the popularity since you can nab prebuilt stuff to hack together. How do people who work in this find what they need is beyond me, it's not like memorizing the whole catalog for every language is feasible.
start with harvard's CS50 course. it's free, very well-taught and will give you a strong foundation. one of the best out there imo https://cs50.harvard.edu/x/
>>109417796It literally does not matter which language you start with. Do not listen to these retards. The language does not matter, until it does. What I mean is, sometimes the domain calls for a certain language. For example, if you want to make android apps, you're going to be using Java or Kotlin (If somebody tells me C++ or React Native, I will choke them). Similarly, if you want to make iOS apps, you're going to be writing Swift. If you want to program microcontrollers, you should just learn C (Yes, on more powerful chips you can run python or wahtever, but you should use C). For webshit, you can use whatever the fuck you want. Pick a language that looks cool to you, learn the basics, try to build something. Shit, be a fucking badass and learn Common Lisp. I want to shill Ruby and Clojure, because they're my favorites, but use whatever you want, especially if this is just a hobby.
>>109418851>ClojureHave fun with your parentheses
>>109418479>Books are a waste of timei agree, my family in calcutta has always said this
>>109419014He said until you find your niche and area of expertise.
>>109418669Seconding this, Malan's based as fuck.
>>109418399Any reason to watch the videos instead of just reading?
>>109419454This but unironically, if you're forcing yourself to not use claude code you're not a serious programmer
>>109419492The videos are short and to the point, and is a lot easier if you're suffering from brainrot and lousy attention span.
>>109418462>Python is in no way a beginner language, despite being advertised as such.according to a programmer friend of mine in the field for 20 years and working really, really high up in the system, python is usually one of the preferred languages to start out with at university now for introduction to programming, and he recommended itof course he's a snob and think that anything else than c++ is just wasted time, but he tried to not say it out loud
>>109419508i'm not a serious programmer. i code for fun.
>>109419855>python is usually one of the preferred languages to start out with at university now for introduction to programmingtrue. some europoor countries even have it as part of their high school math curriculum.
>>109418669this is a great start, especially because it covers topics you wouldnt know to search for yourself, its a complete course
>>109417796i'd recommend starting with python. it's relatively easy to learn, pragmatic, and has first-class support for things like string manipulation, networking, http, json, etc built right into their standard library, broadly the same can't be said about c/c++. on that note; don't let yourself be memed into reading some antiquated manual or watching a cs course on youtube. you won't have the right context to benefit from it.personally i think gamified apps like sololearn are great in how they mix theory with practice. being quizzed on each part of the language will do you more good than trying to skim a manual while picking the right method to clob into your project. you'll just develop blind spots that way. i'm sure ai could aid in this as a learning tool.now that you have the basics down - get simple text editor. starting out with a fully fledged ide runs you the risk of getting bogged down in learning your tools rather than the language. in other terms we're optimizing failing to make your repetitions faster with less overhead.then i think it's time to decide on a project you want to do. have docs readily available for when you get stuck. that's pretty much it. good luck anon!
>>109418271True. I know exactly how computers work inside, but I'm the biggest nocoder who has ever existed
>>109417796>Learning How to CodeJust ask ChatGPTt. MS and BS in CS, big tech SWE
>>109417800CS50 could be good for you. It has the very basics. The most important part is that you need to grow the confidence to dive into shit you don't know, read the docs, manuals, tutorials, whatever, and then start building shit. After awhile something just clicks inside your head. I suggest that eventually you read this book: https://csapp.cs.cmu.edu/And go over a course using it. Also, here's an alternative to CS50, something that could be great for you even if you do it beforehand: https://htdp.org/2026-5-28//Book/index.htmlORhttps://dcic-world.org/2025-08-27/index.html
>>109419933Are you the Anon who wants to be a Lapras and give rides to people?
>>109417796>install linux>read bookand more shit...Prpgramming is OS agnostic, no one ever learned programming merely by reading a book and so on...Just make something that already exists. It's not like something you create today is going to be groundbreaking new tech. Just make a calendar, calculator, note taking or spaced repetition app. Focus on core functions and keep your interface CLI at first. Once you like how it works you can build on it, like add file handling or GUI and when you feel you completed a projecr reflect on it and start the next thing, making sure to keep in mind what you learned from the last one.
>>109419933Not OP but what you said about building the confidence to start building until something clicks.Do you recommend any simple open source repos in python that would be good practice for someone to test out code hacking on? Try to figure out the logic behind it and see how I can modify it?
>>109419833>suffering from brainrot and lousy attention spanLiterally me. Guess I'll give the videos a try too.
>>109418479while i do not agree with the sentiment that books are a waste of time, i will say that 'just make something' is the single best advice you will ever get. think of a project, something you really want to create that doesn't already exist, or exists in a way that you feel can be improved upon, now make it happen. as you add features, you'll learn. like for example, if it has features that require network access, you'll have to study and learn various networking libraries. if you want it to display images, you'll have to learn image libraries and find the one that best fits your project. just following steps and doing exercises like most books have you do is not going to really 'stick', but building a thing that you're passionate about eill make everything stick. before long you'll find yourself waking up in the middle of the night because a solution to a problem with your software just came to you in your sleep. save book exercises for the repetition and keeping yourself focused. they're for helping you understand what the code is actually doing, but the best way to write code is to write code.
The little schemer and probably the seasoned schemer although i haven't read the latter are pretty fun books and should be manageable for someone with no prior experience.The pictures are pretty cute as well.
>>109419988Jesus, no, I'm not. Didn't even know such creature was here.
>>109420026You need to have some experience doing the basics, so focus on learning Python (DCIC uses a Python-like syntax) before you continue. The trick is hitting just the right level of difficulty where you struggle a bit before finally arriving at the solution, or something that just works. This of course varies a lot in each of us.I think modifying projects with the features you want is a solid way of practicing stuff, but how will you know what's easy from what's truly hard that will be incessantly frustrating? This is where LLMs could help you.Point a LLM to a repo, preferably one that does something of interest to you, then ask:>Look I just finished learning the basics of Python. Go over this repo and create a feature_request.md with basic instructions of what needs to be done. You can use a template like this. You can ask the LLM to add tests (that will fail) and you have to get them to pass. Completing them would add that feature. You can add or remove these wheels. Just keep asking the model to make it easier or difficult for you.Also another thing you can do. Once you finish reading, say DCIC, or whatever book, ask a LLM to review your code and give you tips. How to simplify, how to secure, what are some best practices, books you can read. The sky is the limit, anon. Put this post on a LLM and ask for examples of what I said. I think the hardest part for you will be the self-assessment for when you should drop the LLM and do some stuff on your own, but that's months away. I'm in bed right now. Apologies for any mistake, but you got the gist of it.
>>109418266Is there actually a decent version of Unix we can run on virtual machine? I mean real Unix, not a Linux flavor.
>>109419508I get the feeling I'll be able to vibe code more efficiently if I learn how to code.
PM here. Worked with a lot of technical products over 20 years in this career. Never learned to code, never will.
my advice is dont bother. its not useful and youre not going to make money. if you want to chase some pretentious satisfaction then go for it.
>>109420105this guy is right btwevery second you spend asking stupid questions and pretending to be interested in it is time spent not doing it.only way you learn is by doing it a lot.threads and questions like this are a hallmark sign of capricious interest that will flame out in less than a week
>>109419855the problem is multifacetedthe language is huge and complexit uses advanced data structures that require a course to understandthere are multiple layers of bandaids and deprecated to fix bad language designbytes and strings are miserable to work withhow do you explain to a person starting out that dictionary keys need to be immutable so that they can be consistently hashed for looking up entries in a hash table?how do you explain how reference binding works, the garbage collection memory model, and the behavior of passing variables to functions without refering to pointers, and how is this better than usinng pointers?how do you explain the GIL and why the best the language can do is asynchronous programming without writing C code?how do you approach the 4+ pacakge management systems independent of your system's package management system and how to set up the environment, and how is this any more simple than setting up a PATH variable?i find the interactive nature of python (and any other language with a repl) also promotes shotgun debugging rather than reasoning about code.python has its advantages, but it's best used by someone that has already is experienced. virtually everyone that i know that started with python knows very little about how computers actually work, even simple concepts like how a cpu pretty much only works with two datatypes, those being integral and floating point numbers. save python for after learning C. it will make python make a whole lot more sense.
>>109417796Read this book and do the exercises.I learned C with this book, it's like a more modern "the C programming language" book with way better explanations and it's very beginner friendly. If you start with this one, by the end you're going to be a master of C and you will have a lot of computer science knowledge.I really don't know why this book is not more popular.
>>109417796>ThinkLarp>with HyprLarp>data stealing browser>postman>actual vscode, not code oss or vscodium>missing cjk fontsjust kill yourself faggot
>>109421380Why would you want to run real Unix?
Choose a language. Python is a popular first but it's missing quite a few fundamentals. That makes it easier to learn. Choose a cool project you want to do, something small. Get a Claude subscription and ask it questions like a teacher as you go along. Once python clicks, move on to Java. Once Java clicks, move on to C++
>>109425141รบHe wants to try something, maybe.
Just start with python if you actually want to be able to do useful stuff. C gives you much more control but it's much harder for little gain unless you have a specific need for it (performance, low level OS/firmware stuff, minimalist autism, etc.)When thinking about projects as many in here have suggested, instead of coming up with a specific project I'd recommend orienting your thinking around what tools you have in your toolbox that you can build software from:>access stuff on the web, e.g. getting the contents of a webpage programmatically or downloading a file>storing and retrieving data from local files or some sort of database that makes for efficient data retrieval for a specific use case/query pattern>running any arbitrary command, like on linux you can run a command to shut the computer down, a command for getting disk usage, processes running on the system, creating/modifying files and folders on the hard drive/SSD>importing other python libraries that can be used to do complex stuff like image manipulation, generating text to speech or vice versa>sending data to an AI model like ChatGPT via their API and doing something with the output>creating desktop or web UIs (web applications) that sits between the end user and all of these different data inputs/outputsAll of these things can be done with basically any mainstream programming language although some may require additional components set up. It can also be helpful for ideation to learn about how existing software works under the hood. It's hard to engineer a novel automobile innovation if the only thing you know about cars is they have 4 wheels and a steering wheel
Try Python or C
screw python or c, read sicp! you will be a wizard in no time
>>109428313You have to know Calculus and iirc Linear Algebra to complete SICP. Most anons are mathlets, so that won't work. HTDP is better.
>>109428419How can you code without knowing math?
>>109429064That's how I know you have never been in the industry. There are people that for years made a living just plumbing stuff, especially in the last 15 years.
>>109417796Just google tutorials for complete beginners to learn CThen a little bit of C++, which is easy to learn directly after learning CThen learn some pythonGiven that you've made it this far in life without knowing how to code, I find it unlikely you will need to master these languages, so don't stress over perfection. You'll probably learn more than enough from learning to read the code and writing some basic programsIf you like it a lot, you can go much deeper into learning programming, but eventually there comes a point where you need some passable mathematics skills to keep learning. You didn't mention your math skills so I'm not going to assume you're bad or good, but eventually there is a metaphorical wall in learning programming for the mathematically disinclined
>>109420026500 Lines Or Less (something llike that) is a book about neat small projects. Try to add features in them after transpiling them to Python.
>>109421881>Never learned to code, never will.You should.
>>109430938Yes.
>>109418405>>109418462Should I start with Lisp and then C?
>>109432263Functional programming (LISP) is more a hobby for CS nerds and EMACS users.Procedural programming (C) is the most common programming paradigm, and C is the common ancestor of most languages that are used in practice
>>109417800I second this. Also don't let LLMs write a single line of code for you because it leads to brainrot (proven at this point) and dependence on a 3rd party to be able to reason. Prompt it for info like what is X but never let it write you programs for you like half the Indian webshitting retards with sub 100 iq on here do.
>>109417796>Despite being on the Internet nearly all of my life, at least, for as long as I can remember, I never learned how to code.>Having said that, how do you start?Don't. Fuck coding and fuck computers in general. Go outside instead, take a walk, touch grass, feel the wind and the sun caressing your skin, whatever. Just fucking do anything else instead of rotting in front of the computer screen for 16 hours a day. Life is so much shorter than you realize.
Coding is cool
>>109417796>where do you start.The basics of course. Start with assembly. Then end with assembly. Assembly is all you need.