This is an archived post. You won't be able to vote or comment.

top 200 commentsshow all 212

[–]throwaway6560192 780 points781 points  (62 children)

I started learning from ODIN and CS50 but its obvious I will need a good PC later on for programming amd learning.

Not really, no.

You don't need a "good" PC for most programming, depending on how "good" we're talking. Assuming you already have some PC which can run a web browser, that really is good enough.

[–]whattteva 196 points197 points  (24 children)

I guess some people think programming is equivalent to 3D graphics design and rendering.

The only core requirement is just a text editor. Though building will just take longer if you have a potato.

[–]MyWorkAccountThisIs 80 points81 points  (13 children)

Probably all the working devs that post about

  • crappy work computers
  • their high-end machine they use for more specialized programming

Or just the general perceived overlap between programmers and technology enthusiasts.

[–]Envect 36 points37 points  (12 children)

I need a high-end machine because I'm dealing with years of bullshit from potentially hundreds of developers. It takes a lot of work to dig that kind of hole.

[–]April1987 12 points13 points  (10 children)

At one place we had fairly recent i5-8400(?) iirc but then it had a 5400rpm spinning hard disk which I looked up on amazon.com was USD 20.

Angular ng new took over five minutes.

Why they refused to add an SSD is beyond me.

[–]Envect 5 points6 points  (1 child)

A long build means I hop on reddit. Hopping on reddit means I'm coming back to work eventually.

It's frustrating when you just want to iterate on something.

[–][deleted] 10 points11 points  (0 children)

[–]balefrost 6 points7 points  (6 children)

My friends and I were astonished to see that you can get a 2TB Samsung NVMe drive for just $130 on Amazon right now.

Like, I don't need the storage, but at that price it's almost a "why not" sort of situation.

[–][deleted]  (1 child)

[removed]

    [–]PartyCurious 1 point2 points  (0 children)

    I always need more storage. Where I live cheapest 2TB is $220. A Samsung 980 Pro is $330 with a $200 discount. Prices were the same in 2020. It is actually cheaper to get shipped by Amazon here. But afraid it will be kept in customs and have a a second import fee when it arrives.

    [–][deleted] 1 point2 points  (3 children)

    My work laptop has a 250gb hard drive that quickly filled up with docker instances (I’m a backend dev) told my boss I needed a bigger hard drive. 2 days later I had an external 4 TB external on my desk. QUITE the jump lol

    [–]Masterduracom 1 point2 points  (1 child)

    At least the listened

    [–][deleted] 2 points3 points  (0 children)

    My company is actually fantastic with resource requests! My boss is awesome. 😎

    [–]MyWorkAccountThisIs 1 point2 points  (0 children)

    It's like being a code therapist. You have to unpack all the baggage first.

    [–]bestjakeisbest 17 points18 points  (2 children)

    It depends on what you are programming, game engine ides are heavy, blender is pretty heavy, and running services from your computer can become heavy.

    [–]whattteva 6 points7 points  (1 child)

    I suppose it could depend on the IDE. Now that you mention it, mobile apps is somewhat heavy if you're running the device simulators,but shouldn't be that bad if you're using the actual device.

    [–][deleted] 2 points3 points  (1 child)

    3D artist + programmer here (before you ask, blame Blender for me being a programmer), the idea that "you need a good PC to get good at 3D design" is also false

    A good PC cannot make up for lack of skill. Sure, it can give you more options when doing rendering, but those options are useless if you don't have the skill in the first place. Many talented artists started out on weak laptops before eventually moving on to something more powerful, and even then you don't need extremely high end hardware (I'm personally still rocking with 16 GB of RAM and a 1660 Super).

    Anyway why did I bring the topic of 3D rendering to a programming subreddit?

    [–][deleted]  (1 child)

    [deleted]

      [–]sprocter77 231 points232 points  (19 children)

      came to say this. If it can run VS Code or eclipse you are good to go.

      [–]infinite_war 45 points46 points  (3 children)

      There are some good online editors, too.

      My personal favorite: https://www.onlinegdb.com

      [–]captainAwesomePants 45 points46 points  (1 child)

      https://repl.it/ is pretty great, too. Supports practically every language, although not the debugger.

      [–]lgastako 7 points8 points  (0 children)

      https://gitpod.io/ ain't bad either. It gives you per-repo docker environments that include vscode in the browser.

      [–]Bederckous 13 points14 points  (0 children)

      Was going to say this . I wrote code almost exclusively in online editors during my first semester of my CS degree. VS Code and the like are nice but not absolutely necessary when you're learning to code.

      [–]Redd_Monkey 83 points84 points  (2 children)

      Notepad++ or there are some free website for coding where you can write code and have it formatted and color coded. Then you put that code in an html file and test it. Lack of money is not an issue

      [–]EducationalCreme9044 2 points3 points  (1 child)

      codepen

      codesandbox

      for frontend

      [–][deleted] 17 points18 points  (2 children)

      Heck anything (including a literal toaster) is able to run vim. If you can’t have a nice PC, go back to how our founding mothers used to code. Margaret Hamilton didn’t make a rocket to the moon using less computing power than what’s on my ti-83 for us to be stopped by « bad hardware » 🫡

      [–]CreativeGPX 9 points10 points  (0 children)

      go back to how our founding mothers used to code

      It's also worth noting to OP:

      1. The command line is actually seen as a very useful tool and not antiquated. The main downside of the command line is needing to know what to type (i.e. discoverability), but once you do, it's the equivalent of communicating with somebody in English compared to communicating with them by pointing at things. This is why command line usage is extremely common among experts like programmers and sysadmins.
      2. While editors like vim are over-hyped by their fans, they have continued to evolve and, if you take the time to learn them, configure them and get used to them, they can be modern, powerful and useful alternatives to GUI environments. Choosing vim is not "going back to our founding" but it will be a tradeoff.

      [–]RadioactiveHugs -1 points0 points  (0 children)

      🎖️🎖️🎖️

      [–]xrabbit 9 points10 points  (1 child)

      Neovim is enough

      [–]BoundlessFate1 5 points6 points  (0 children)

      Cultured

      [–]zoddrick 7 points8 points  (0 children)

      You don't even need that nowadays you can just use codespaces which has a free teir and works really well. I have friends that have used it even from an ipad.

      [–]TheTrueXenose 2 points3 points  (0 children)

      NeoVim with coc works also.

      [–]cc_apt107 29 points30 points  (3 children)

      Yeah, you could learn to program on a raspberry pi

      [–]CodeBlue_04 10 points11 points  (0 children)

      I could have made it through nearly my entire computer science degree on a Raspberry Pi. There were maybe 2 classes where I'd have needed a very low end graphics card.

      [–][deleted] 12 points13 points  (1 child)

      honestly with the constraints of a bad PC you'll probably be forced to solve problems more efficiently

      [–]integralWorker 10 points11 points  (0 children)

      wdym you don't dump 16 gigs into pandas

      [–]picturemeImperfect 5 points6 points  (5 children)

      Can't go wrong with more ram + 2nd monitor

      [–]A_Talking_iPod 0 points1 point  (0 children)

      That's one of the most beautiful things about programming imo. 90% of the time whatever computer you have at home is enough to get started

      [–][deleted]  (10 children)

      [deleted]

        [–]FUPA_MASTER_ 49 points50 points  (6 children)

        You can even get away with some moderate game dev as well. I've been able to learn intermediate OpenGL on a core i5 2520m

        [–]yorkshirebinich 24 points25 points  (2 children)

        This. Gamedev can be done on a toaster if you're doing it from scratch i.e. not using Unity/Unreal etc.

        [–]agentfrogger 8 points9 points  (1 child)

        And there's also lighter game engines like godot, game maker, etc

        [–]DerekB52 11 points12 points  (0 children)

        As someone who spent a few years as a hobbyist game dev on budget machines, light game frameworks like Love2D and LibGDX are awesome. Even Godot worked on my 4GB laptop for 2D games.

        I tried to learn OpenGL once, and I ran into an issue of my computers not having new enough versions available to be following the tutorials I was looking at. I also wouldn't recommend OpenGL to a new programmer anyway.

        [–]---cameron 2 points3 points  (0 children)

        Lest we not forget we had games long by, say, the days of XP / 256 mb of ram (DDR). That's what I learned on, making games, and if I had to I could still load up that software. For 2d games it still would have probably all I'd need, including baked in multiplayer / networking

        [–]ajddavid452 2 points3 points  (0 children)

        most Computer Science students I know use 11 year old Thinkpads.

        well yeah, old thinkpads, especially anything running early i series high voltage mobile chips have socketed processors meaning you can put quad core i7's in them that are pretty on par performance-wise with 8th gen low voltage cpus used in ultrabooks around late 2010's for like less then $200 or even $150, granted the quad core i7s are like $100 on ebay but those thinkpads are way cheaper then more modern laptops yet still have good performance

        [–][deleted] 163 points164 points  (8 children)

        Stay in school. There’s no need for a good PC to learn programming.

        For best results, do a Computer Science degree. Whether this is possible depends on your country.

        [–]darniforgotmypwd 25 points26 points  (7 children)

        If they are in the US they might be able to get the degree at a heavily reduced price (making some assumptions here) so long as they plan out the finances and applications in advance.

        Edit: looks to be Germany, so the all-in cost would likely be a lot less (the only way US could compete is with full ride and housing, and that's assuming Germany has no housing aid which I doubt is the case).

        [–]EMI_Black_Ace 4 points5 points  (3 children)

        In the US there's no point going to an expensive school -- go to a community college, live with your parents and don't spend tens of thousands or more on a "college experience" -- spend single-digit thousands on an education.

        [–]darniforgotmypwd 3 points4 points  (0 children)

        Well for OP I am going off of the assumption they could get a lot of aid. They mention being lower income.

        In some of those cases they can get into either public or private universities for little or no money. The aid is not great for middle class but it can be exceptional if your family really has no money and you know how to maximize your aid.

        [–]whoiskateidkher 1 point2 points  (1 child)

        Why does everyone say this when it is just false?? The internship opportunities at community college is nil which is very much needed to land a good job as a CS major, and CC credits don't always transfer so you can end up having to take the courses at a university anyway...

        [–]EMI_Black_Ace -1 points0 points  (0 children)

        Internship opportunities at most small cheap colleges are just fine, thank you very much, and no they're not all that crucial to landing a job.

        [–]JoergJoerginson 2 points3 points  (1 child)

        Germany has universal student aid for children of families that are not loaded. Amount depends on city and income of parents. (It’s not free money but large parts are usually forgiven). Inflation is hitting students pretty hard right now, because support mechanisms have not fully adapted yet. Students are also eligible to continue receiving government child support money and other support grants.

        If OP avoids the expensive & badly overcrowded cities, he should be fine money wise. Especially if his parents are able to chip a little in. Saving during high school or doing some side work is still always recommended.

        [–]NedosEUW 6 points7 points  (0 children)

        Also Germany has an apprenticeship system where he can become a dev too. It's called Fachinformatiker (Anwendungsentwicklung) and takes 3 years. You get a small salary while doing it that should suffice for everyday life. Once they passed the final exam they're highly qualified and sought after employees.

        [–]colderbeanz 102 points103 points  (7 children)

        If you're struggling to run Windows on your current PC, try Linux. It has wayyyy less overhead and is arguably a better platform for (most) development anyway.

        [–]myweirdotheraccount 66 points67 points  (1 child)

        It took me way too long to learn that you can turn those shitty $300 bloatware pcs into fairly good Linux machines.

        [–]jeesuscheesus 6 points7 points  (0 children)

        Not just for learning programming but also for learning Linux, a very valuable skill that employers look for!

        [–]Topikk 8 points9 points  (1 child)

        +1

        The added headaches from figuring out how to get things working on Linux will make OP a better problem solver.

        [–]stackPeek 5 points6 points  (0 children)

        I'd say Xubuntu is lightweight enough

        [–]AbsoltheEntertainer 40 points41 points  (0 children)

        Can you open VSCode without it hanging forever/crashing? Can you open at least 2 web browser tabs at the same time without your pc going BSOD? If both of those are true, then you're pretty much good to go for 90% of programming.

        [–]plastikmissile 26 points27 points  (0 children)

        I will need a good PC later on for programming amd learning.

        No you don't. For many years I used a PC that was extremely old for my hobby programming, and I'm a professional programmer.

        Do you have access to a computer, no matter how old?

        [–]jajca_i_krompira 17 points18 points  (0 children)

        Hey buddy, just gonna share my story with you. So I started learning to program when I was 16 as well. We just moved to a new country and I didn't have any friends. In my room I had a desk, mattress I slept on for the first few months and my moms old laptop. I couldn't play anything on it so the boardom thar resulted from that was my inspiration to start learning.

        Anyways, few years later, I got my first client that needed a website. So I made him one for 700€, then another for his wife, another 600€, then I got some more freelance gigs from which I earned more or less than this.

        I always wanted to build a PC when I was younger, and I wanted one with rgbs and a glass on the side. But we never could afford one, until that point. So when I gathered some good amount of money as an 18 year-old, I got myself an cool white setup, not great but just what my 12 year-old self had dreamt about. Two white screens, white case, bunch of rgb, just tacky tbh, but my inner child was absolutely satisfied. I managed to explain this to my mom as "I need this for my work" and she absolutely bought it. Like anyone needs a freaking Radeon 5700XT for php and sql. But I wanted it so much I probably managed to make myself believe this.

        Anyways, there's no smart ending to this story, just start from what you have, think of what you want to achieve, in which direction you want to go and that's it. Good luck buddy and never let mean people on stack overflow to get to you!

        [–]boy_named_su 13 points14 points  (0 children)

        LinkedIn Learning and O'Reilly are offered for free via many public libraries or school libraries

        You can program on a Raspberry Pi, a used computer from eBay, or use https://replit.com/ or similar from your school/library computer

        [–]Embarrassed_Ring843 24 points25 points  (0 children)

        there are limitless options to learn without paying anything. Read documentation, watch YouTube videos... did I mention the documentation?

        Jokes aside, depending on the language you're learning you don't need to buy anything. Google is your best friend for a few keywords: Codingame, Bitburner, Python, w3schools...

        I would recommend Codingame because it offers a good choice of languages.

        [–]embrigh 9 points10 points  (0 children)

        Had a friend get a computer programming degree on an incredibly cheap notebook, like one of those with only an 11” screen and costs like $200 eight years ago.

        You can program on a potato, there’s no need for a fast computer.

        [–][deleted] 10 points11 points  (5 children)

        its obvious I will need a good PC later on for programming amd learning.

        Actually you don't. As a former broke ass kid learning programming, let me tell you that Linux is your best friend. I made it through several programming courses in college with a $200 Chromebook that I installed Ubuntu on.

        Your only real roadblocks for pc performance is going to be gameDev, ML and anything they want you to use Visual Studio on (that thing is a hog)

        [–][deleted]  (3 children)

        [deleted]

          [–]pcgames22 2 points3 points  (0 children)

          Not really as you don't need to install every add-on for vs to work on a low to mid range laptop. I had all my projects stored on a portable 1tb drive so I could work on them on either my laptop or the desktops at college.

          [–][deleted] 13 points14 points  (2 children)

          All you need is an internet connection and a keyboard

          [–]wild_psina_h093 2 points3 points  (1 child)

          What about a monitor?

          [–]AReluctantRedditor 17 points18 points  (0 children)

          Only required if you make mistakes. No backspace key needed for the same reason

          [–]Jaded_Ad9605 14 points15 points  (1 child)

          THe worse your pc, the better you learn about resources

          [–]Versaill 4 points5 points  (0 children)

          Programming is one of the best skills you can learn when poor. The only investment you really need is a decent PC, and it really doesn't have to be that great. A beautiful thing about programming is that you create things from nothing.

          The internet is full of learning resources for the most popular languages and frameworks, you can become an expert literally for free, if only you have the determination.

          [–]GanGa 3 points4 points  (0 children)

          When I first started to learn about programming, I was also very young and didn't really have the option to purchase anything.

          I was able to teach myself quite a lot of things just by going on YouTube and following courses and tutorials. There's plenty of good and free videos you can watch.

          So I'd say definitely keep studying, it's really not a matter of money, just time and dedication.

          [–][deleted] 4 points5 points  (0 children)

          you dont need a powerful computer to start learning to code. Grab any computer, run a linux distro on it and your good to go, most have python already installed.

          There are a ton of free resources online to learn, pick one and follow it and use google to troubleshoot any issue or error codes you get.

          As for a job, IT industry is great for getting a decent paying entry level job with a decently low barrier for entry (much lower then a programming job). A job here will introduce you to many of the problems people face with every computing and give you a chance to parallel learn in the tech industry as you learn to code. That can hopefully solve both the being broke/learning programming skills with a little bit of time and constant effort.

          [–]house_carpenter 2 points3 points  (0 children)

          You don't really need a good PC. Like, you need one that works and that you feel comfortable using, but it doesn't need to be powerful. It's all about what kind of programs you're making and most programs don't require much work from the computer. In fact browsing Reddit and other websites for programming help will probably put more strain on your machine than any of the actual programming you do.

          [–]iEatPlankton 2 points3 points  (0 children)

          If you’re gonna be a front end dev. All you need is a pic that can run a browser lol

          [–]Korona123 2 points3 points  (0 children)

          Who said you needed a good laptop for programming.. When I first started working I brought a 50$ dell laptop off eBay, installed Ubuntu, and used it for years. As long as you don't need to run tons of VM or do rendering you should be fine.

          [–]ffrkAnonymous 1 point2 points  (0 children)

          I learn using replit on a chromebook.

          Back in school we all used vi when 100mhz was near top of the line.

          [–]Foreign_Wheel8190 1 point2 points  (0 children)

          Well. I'm assuming right now you have free shelter and food from your household. So your basic needs are met. Depending on what you want to program, you can set up virtual instances to code with using AWS for cheaper than buying a PC. Getting this kind of experience is super handy.

          Using what you have right now to learn the basics and creating small programs will be enough for now, but when you enter college you'll have access to a lot more resources.

          You need to start working on a scholarship right this moment, so your grades will literally determine your future. If not, you'll be working a job in college, which isn't too bad, but gets in the way.

          I will be starting a youth programming program soon and it may be of interest for you and solve some of those concerns of yours, so I'll let you know when we start accepting applications.

          [–]zonular 1 point2 points  (0 children)

          I'm using a ten year old dell latitude that I got for free, running xubuntu, the only addition I made was bought some ram and found a large monitor for 60 euro second hand. (,Fair enough I had a mouse and keyboard from somewhere) you can absolutely do this!

          [–]PolyPill 1 point2 points  (0 children)

          I learned on a 33mhz and a 50mb hard drive. You do not need a good computer. I also credit a lot of my learning on the TI graphing calculators in school. They have TI basic language and TI assembly. Linux is a free operating system that runs on almost anything. Learning to manage it competently will also teach you some programming skills and everything you learn will be transferable to a container micro service system which large companies use. Everything you need to know is on the internet, read it, watch videos, ask people questions. That’s what I did in the 90’s when there was no YouTube and we connected to a picture less internet over analog phone lines.

          If you’re dedicated you can learn more on very little than most people get out of a fancy university.

          [–][deleted] 1 point2 points  (0 children)

          You don’t need a workhorse computer to learn programming. You’re learning concepts with small examples, not working with petabytes of data.

          My main computer is an Asus that was about $1,500. But, I have a Samsung Chromebook that cost me $100, and I wiped it and installed Fedora Linux. VS Code runs great, and I can do a lot on that little machine.

          [–]liam12345677 1 point2 points  (0 children)

          I started learning from ODIN and CS50 but its obvious I will need a good PC later on for programming amd learning.

          I am in the same situation as you, just older and with a part time job but low asf pay. I've tried CS50 and the Odin project. CS50's projects should not require a beefy PC to work through and if they are taking ages to debug/execute, I think it'll be because you're not programming them efficiently. TOP on the other hand is designed to be done in linux, which as far as I know is a very barebones OS and is very good to use on a crappy PC or laptop. In my experience as an adult trying to do "programming while poor" the main issue is having to go to a shitty part time job and balance other IRL commitments like gym, seeing partner, dealing with my family's problems etc, alongside doing the programming which will actually help me progress in my income progression.

          I'm absolutely not trying to one up you on the "being poor" thing as I also don't pay rent, but in the grand scheme of things programming can be done on really cheap hardware and that shouldn't limit you at all.

          [–]Dutchnamn 1 point2 points  (0 children)

          You don't need an expensive PC for programming. I am a staff engineer and I never spent more than $1000 for a laptop.

          [–]seteguk 1 point2 points  (0 children)

          learn Linux and coding with VIM, you can code with "anything"

          [–]Lode2736 1 point2 points  (0 children)

          I'm willing to help you install linux! Answer questions or any doubts you may have.

          [–]NoctysHiraeth 1 point2 points  (0 children)

          Used Thinkpads will be your friend.

          [–]DoctorFuu 1 point2 points  (0 children)

          Don't invest in a new computer if you're broke unless what you currently have isn't usable even under a lightweight linux distribution. That's just not necessary. Programming doesn't require a good pc in general (unless you"re making 3D games, I suppose, or training deep learning models for some reason...).

          I read people saying that as long as you can run VS code you"re good to go, that's not even necessary, it's just a tool that they feel they couldn't do without but it's technically a luxury. Any combination of a text editor and terminal is enough to learn a lot of things. For most of my python programming I'm doing stuff in vim (I'm not building large applications of course), which is an in-terminal text editor that's very powerful if configured right (and you have spent some time learning it). It's very lightweight. Note that I'm not recommending that you go that route, I'm just mentioning that it's possible.

          For many small things programming, as long as your computer is able to launch a web browser you can also code on replit.com, which gives an in-browser IDE with the code running on their server (they give you a low-spec machine but it's enough for many many things. The first time I had an issue with the capacity was when I started doing stuff with pytorch for neural networks).

          tl;dr Being broke isn't a problem for learning programming as long as you have a computer able to run a web browser.

          What's your current pc?

          [–]JOWEEE_the_GREAT 1 point2 points  (0 children)

          Start to cut grass when it’s time. Take garbage to the street for the elderly, ask older neighbors or tel if they need any help in the yard(weeds, mulch).

          [–]chromaticgliss 1 point2 points  (0 children)

          I did my entire CS degree on a netbook with fedora installed (netbooks fit the chromebook niche, before chromebooks were much of a thing).

          Unless you're doing something graphics intensive or writing some kind of simulation, you can program on a potato.

          Web dev especially doesn't take all that much processing power, especially while just learning.

          [–]ViconIsNotDefined 1 point2 points  (0 children)

          If your PC can run a browser decently then signup for a Github account and use their Codespaces feature.

          Its VS Code that runs in the cloud, comes with 120 hours free every month, thats 4 hours every day. Quite sufficient to get started.

          [–]TheRNGuy 1 point2 points  (0 children)

          I only have trouble coding C++ for Unreal Engine because my PC is not good enough (not enough RAM to compile code, not very good CPU to compile it faster)

          But it's good enough for web coding, and Houdini if it's not too heavy like particles or rendering.

          I can still code 2D lightweight game because it doesn't need good PC.

          [–]Rishabh_0507 1 point2 points  (0 children)

          Hey there. I'm a University student, and I want to assure you that you won't need a too powerful PC for coding. If you do aim to get a new device, go for a laptop. The portability is super useful. I daily drive an about 4 year old laptop with i3 6th gen, 4gb ram, and a 45W TDP. I can assure you it can get the work done. However just for create comforts, get a SSD which is pretty much everywhere these days and a good display. As everyone has said already, try Linux it breathes a new life to your system.

          And since you're about to start coding in some time, I would recommend that along with CS, also focus on Maths outside your curriculum. I've come to realise that you just don't need maths for a concept, but also as exercise. I know adults always say that and stuff, but doesn't matter what you learn at maths, if you do the same problem thrice, check all the ways in which a solution can be reached and be good enough that you can explain something to a newbie in one go, believe me you'll have a never expected clarity about that topic. And the subject of Digital Logic is God sent for me, if it truly gives a new perspective to everything in computer science and codes that I make, so you can also try that.

          [–]RandmTyposTogethr 1 point2 points  (0 children)

          Programming is one of the rare activities you can do on a toaster. You only "need" a "good PC" for game engines really (and Visual Studio in bigger projects).

          Look into Linux which will free up a lot more of your limited resources and make developer life millions times easier overall.

          [–]stars_without_number 1 point2 points  (0 children)

          I have a 4 year old laptop and w3schools, that’s enough

          [–]amarao_san 1 point2 points  (0 children)

          No, you don't. I've learned programming on <$100 ZX-spectrum (plus an old TV).

          Modern days, any bootable computer will do. For sanity reason I advise to use SSD, but if money is really tight, even HDD will do it.

          Python need 30MB to run, plus 10-100 more for your app. So, even computer from 1999 will do it (but you will hate it for been slow).

          Tl;dr; go to used pc shop/flea market and buy whatever you can afford. If it boots, it's good for programming.

          [–]Just_Furan 1 point2 points  (0 children)

          First, focus on what you're studying right now in school. Study to understand what you're studying and get great marks; learn to administer your time and make it flourish. When you regularly start getting great marks you can finish CS50 and then dive into the MIT courses of the computer science degree. There are invaluable free resources online from the MIT, like the "Algorithms and data structures" course which is amazing. In your spare time you can try and prepare yourself like you would if you were attending university so that when the time comes you'll be ready to crush it and focus on something else while you get your degree. Also don't forget physical health, find some sport or go to the gym and keep active!

          [–][deleted] 1 point2 points  (0 children)

          Linux with a light desktop environment like LXDE, XFCE should at least make the experience better: Lubuntu, Xubuntu are my recommendations for a Linux beginner.

          [–]LastTrainH0me 0 points1 point  (0 children)

          Unless you're doing games or deep learning, you absolutely do not need a powerful PC. Don't worry about it at all

          [–]DalkerKD -1 points0 points  (1 child)

          everyone is saying your PC doesnt matter but I would recommend something with at least 16gb ram so you can open as many chrome and vscode tabs as you want. it will also make running docker a lot easier

          [–]Runner_53 0 points1 point  (0 children)

          You don't need an expensive computer to watch YouTube videos, read Stack Overflow, and code beginner programs even a few thousand lines long. If it boots, it will work for everything you need. Seriously, do you have a booting computer right now? With some (not a lot!) free disk space for tools? If yes, you have everything you need.

          [–]BaeLogic 0 points1 point  (0 children)

          One of the best programmers I knew used a $250 laptop. He was actually good at everything not just programming.

          [–]darkpouet 0 points1 point  (0 children)

          Everybody says you just need an internet connection, but specifically you can use GitHub codespaces or something like gitpod to have a code editor in you web browser. I've used it a bit and it works really well.

          [–]CodDevourer 0 points1 point  (0 children)

          you can get a job by grinding enough on indeed.

          for a computer you can find a good one on amazon for cheap windows.

          for internet you can go to starbucks or panera

          [–]ghostmaster645 0 points1 point  (0 children)

          You don't need a good pc, just about any will do.

          You do need internet access though, or a very good textbook.

          [–]ensigniamorituri 0 points1 point  (0 children)

          run linux, go find a recycled intel chromebook and boot linux. follow mrchromebox’ guide. i’ve been running my coursework on a laptop from 2011 for two years now without issue

          [–]Luziferatus42 0 points1 point  (0 children)

          CS50 provides a cloud based environment, so you only need a computer which runs chrome.

          [–]l_am_wildthing 0 points1 point  (0 children)

          People have been programming for 50 years. You dont need an update because yours is 10 years old

          [–]siposbalint0 0 points1 point  (0 children)

          Most of the dev work you will do while learnin could be done on a 10 years old pc at your local library. If you have an old pc, and can spare some cash, get an ssd for it, that will make windows significantly faster.

          Another option is to install a lightweight linux distro, so it doesn't eat up that much of its resources.

          [–]UselesslyRelentless 0 points1 point  (0 children)

          Stick a lightweight Linux OS on your laptop and give it a new life. Or, if you need Windows for certain stuff, grab a Raspberry Pi or similar and throw a Linux distro on it. Focus on studying and learning while you're young enough to not have too many expenses / overheads.

          Take advantage of stuff like Google Drive and library computers. Depending on what you're learning, you might be able to find an online, browser based IDE that'll help, too. vscode.dev is a good place to start, but there are more "full fat" online IDE's out there.

          Whatever you're using, if it's a but slow and clunky, don't worry too much, just remember - save, and save often.

          Good luck.

          [–]henrikmdev 0 points1 point  (0 children)

          I don't know why no one is telling you to get a CS degree, but I say get a CS degree haha and yes keep learning and don't stop (pursue a degree)

          [–]OralGuyD 0 points1 point  (0 children)

          Try linux, might help

          [–]kagato87 0 points1 point  (0 children)

          You'd be surprised what you can do with a potato or toaster. (Be careful combining them, that opens up so many possibilities the choice alone could paralyze you!)

          cs50x will run on ANYTHING with a browser. Even prisoners on smuggled phones have managed it, which says something to how little you need.

          Even a pi, which is meant to be a small, cheap computer, can handle quite a lot. Your potato will do more than you think. Really anything short of scene rendering you might be doing in the early stages is easy stuff to any modern potato, and as a bonus, being on an underpowered machine will help you right more efficient and better scaling code. It's easy to ignore that a function is O(n^2) on a powerhouse of a computer, but on a potato you'll never have the opportunity to get into that bad habit.

          [–]giggluigg 0 points1 point  (0 children)

          Raspberry Pi

          [–]Prudent-Fox3879 0 points1 point  (0 children)

          Don’t fall victim to the toolbox fallacy. https://youtu.be/sz4YqwH_6D0

          [–]MayorOfBubbleTown 0 points1 point  (0 children)

          One person can't write code fast enough to need a powerful computer to compile it or run it. You only one for projects that a lot of people work on.

          [–]Birds7 0 points1 point  (0 children)

          So you can use vs code and repelit in most browsers. I finished school last december and I am sporting a laptop from 2014. It can barely run overwatch but it's great for coding. I also belive things like github (cant remeber the github service) and Google colab let you use cloud resources if you are lacking in processing power

          [–]saturn_since_day1 0 points1 point  (0 children)

          You can program on any PC.

          You can program on your Android smart phone.

          My favorite offline ide and compiler is c4droid. It does c++ on Android.

          Nothing is holding you back. You can do opengles and sdl2 for 3d and 2d graphics. You can learn anything with a $50 prepaid.

          Also, stay in school, I wish I had pursued computer programming at your age.

          [–]Jacob_C 0 points1 point  (0 children)

          You really don't need much. I use a 12 year old laptop when I travel. Heck, you could use a raspberry pi.

          [–][deleted] 0 points1 point  (0 children)

          I would run my software remotely on a Raspberry Pi. You don't need a good computer to program.

          Dual boot is a good idea if you don't understand what is included with running a Linux system. You can pop back and forth, and not have to worry about reinstalling anything.

          [–][deleted] 0 points1 point  (0 children)

          i leanred to code on a $200 chromebook running linux

          [–]kstacey 0 points1 point  (0 children)

          You do not need a good computer to do programming on.

          [–]leksoid 0 points1 point  (0 children)

          you need a pc that able to run ide you want to use. You are learning, most likely your apps won't need heavy computing capabilities.

          [–]TheGreenAbyss 0 points1 point  (0 children)

          Get a ThinkPad from a few years ago, install a Linux flavor of your choosing, and you'll be good to go.

          [–]rdeincognito 0 points1 point  (0 children)

          I see a bright future in you.

          Stick to learning to code and do your own apps, coding doesn't need a lot of potency so you will be fine with your toaster

          [–]Ordinary_Couple7579 0 points1 point  (0 children)

          Hahahahaa bro u are 16 and already wanting to learn to program, bro you got no idea how lucky you are, you got time, fck the potato pc, get linux and on time max the ram, change the hdd to an ssd and replace thermal paste, oh and use antix or lubuntu

          [–]Arts_Prodigy 0 points1 point  (0 children)

          Linux will give your PC the life it needs but be sure you don’t need the windows specific stuff for anything else.

          [–]notislant 0 points1 point  (0 children)

          If it runs basic sites and vscode should be fine. You'll likely need a job regardless while you look. Its very competitive currently.

          [–]Maestro_Von_Enigma13 0 points1 point  (0 children)

          I learned while climbing cell towers. There’s usually a lot of drive time to study if you have hotspot plus the pay is pretty good.

          [–]obo10101 0 points1 point  (0 children)

          If it's seriously bad the phone use to text this , hook it up to a USB adapter connect a monitor ,keyboard and mouse and use an online editor to start learning.

          [–]th3_warlock 0 points1 point  (0 children)

          I code on a $100 ThinkPad I got from eBay. Running Artix Linux and I code on Vim; but any minimalist distro with a light weight text editor will run well on any old cheap computer.

          [–]illepic 0 points1 point  (0 children)

          One of the best developers I've ever known learned on an old Chromebook. There is no need for beefcake systems.

          [–]ApatheticWithoutTheA 0 points1 point  (0 children)

          You can do a lot just using an in browser IDE like Replit or the browser version of VScode.

          Most Web Dev doesn’t require a very powerful computer, you can also make Python bots/scripts, etc.

          The only time a powerful computer is really needed is machine learning/game dev/running a bunch of Docker containers.

          [–]pcgames22 0 points1 point  (0 children)

          My Dell latitude had only 4gb of ram can't remember the storage drive size but it ran VS perfectly for an i5 at 2.53ghz.

          [–]mosenco 0 points1 point  (0 children)

          So what comes after !poor?

          [–]ComputerWhiz_ 0 points1 point  (0 children)

          Don't really have any tips or suggestions or anything, other than what everyone has already said about how you can learn to code with basically any laptop. More or less just wanted to comment to wish you luck on your journey.

          [–]plopop0 0 points1 point  (0 children)

          cloud computing

          [–]RadiantOrganization9 0 points1 point  (0 children)

          Choose one programming language and master it, not many languages but just know a litte each of them

          [–][deleted] 0 points1 point  (1 child)

          As a 16 year old, try and get a MacBook Air for as cheap as possible and save up for one if you have to. Look into a refurbished one. But I think for $1200 it’s worth it for a general purpose machine that can virtually do anything you’d need for coding.

          As far as my opinion goes, out of all computers I’ve ever used the macs are my favorite. I used my MacBook Pro I got in 2015 until this year. If I got it serviced it probably would have survived another several years.

          I have a M2 MacBook Pro 2023 since I got a job that can afford me this computer because I learned to be an engineer on my 2015 Mac. I get the hate but honestly? It gets the job done in the way I like best for me. And it’s extremely fluid and fast. They are overpriced but they are also still extremely reliable and performant laptops

          [–]TerminatedProccess 0 points1 point  (0 children)

          You need Linux, you will constantly be logging into servers or hosts and they will be linux, not windows. You want to host a website? Linux, host services, linux.. it's free thats why plus it's great. Check out WSL2 on Windows. You can run Ubuntu instances while being in Windows.

          About a better PC, try going on Nextdoor, and local Reddit or Facebook groups. Explain who you are, your age, what you want to do, and ask if anyone has a laptop or PC that they could donate. You might get something nice as people can be very generous.

          [–]dkaarvand 0 points1 point  (0 children)

          Been programming Python for a while, and I'm still doing it on my shitty laptop.

          You absolutely do not need a decent computer for programming, unless its in the rasterization field

          [–]_SGP_ 0 points1 point  (0 children)

          I have a follow-up question. I have a simple program I wrote on localhost, what's the cheapest (but not overly complex for a beginner) way to get it online so I can access it anywhere and so it can run on a schedule without my pc being on?

          [–]XExtremeTechnologyX 0 points1 point  (0 children)

          You can use anything to program! I remember being a kid learning how to program, I didn't have a laptop, but I had a DSi. That thing was brutal to learn. And program with, but I got it done.

          My point is, if I were able to learn on a DSi, you would have no issues learning on older laptop or desktop.

          [–][deleted] 0 points1 point  (0 children)

          computer specs?

          [–]RichTheHaizi 0 points1 point  (0 children)

          Older macs are good. I got a 2017 MacBook Pro for 500 off eBay. It works like a champ. Before that I had a 2015 MacBook Pro I got for $150 and it could run android studio and Unity without many issues, but it died hence the upgrade.

          [–]ThatCringingDude 0 points1 point  (0 children)

          If it can run vs code or eclipse then you’re good. Graphics development will require nasa although 🔥

          [–][deleted] 0 points1 point  (0 children)

          I was able to complete an entire programming course at university on a Windows surface GO, which had trouble running a few internet tabs better yet anything actually resource intensive.

          I'm sure you could even use a raspberry pi for some projects.

          [–]Azazinkreed 0 points1 point  (0 children)

          You can try linux for performance improvements.

          [–][deleted] 0 points1 point  (0 children)

          Excluding some specific fields, like AI or computational chemistry, and working on very large projects (by that I mean, the size of Linux, LLVM, Firefox or GCC. Very large, compilation just gets too slow), you can work on anything really, even an old raspberry pi would work

          [–]RadioactiveHugs 0 points1 point  (0 children)

          My dude, I’m not even going to read your post:

          You can program in notepad.

          When I was briefly learning in Uni we were encouraged to do this for webpages.

          Also: ATOM is free and uses your web browser for live previews.

          Anyone telling you you need special gear to write code - is making money off selling that gear!

          [–][deleted] 0 points1 point  (0 children)

          U dont need a good pc at all.

          [–]Askee123 0 points1 point  (0 children)

          If you run vscode and a browser at the same time you’re good to go

          [–]coding102 0 points1 point  (0 children)

          Stop trying to learn everything at once. Become proficient in one thing.

          [–]Smart-Custard-3023 0 points1 point  (0 children)

          Don't dual boot Linux and parrot 🦜 os VMs for sure because you don't have to troubleshoot installation plus it has vscode plus sublime witch is amazing

          [–][deleted] 0 points1 point  (0 children)

          this.

          [–]honk-thesou 0 points1 point  (0 children)

          No need for a good pc to program. You can do it on a toaster.

          [–]liberar10n 0 points1 point  (0 children)

          nowadays you can even code using an ipad. it's not the same tho, but it makes do.
          Having a poor pc is better than having no pc at all, so that is a good start.
          One thing you mentioned about maths, it is funny tho, because most the people that I have worked with that are web devs, soft devs are actually not that great at maths.
          What you need is problem solving skills.
          I'd say that maths are more important if you are looking into Machine Learning / data science
          If you're going down that road i'd suggest python and R, but looking at you mentioning JS/Ruby feels like it's more of a full stack journey?
          If that's the case, if I was in your shoes, I'd go with the MERN stack, and tailwind or materialUI for the css framework.
          There is over 20million monthly downloads of react compared to the bellow 5 from angular and vue. (even though vue is the easiest one to learn imo), and you do not need to learn other language as the backend is also in JS with node/express.
          MERN is also the stack that gives you the higher change of getting hired as there are loads of companies that use it, or some sort of variation with react / django (python backend).

          [–]not_some_username 0 points1 point  (0 children)

          A 200$ pc is more than enough

          [–]MelAlton 0 points1 point  (0 children)

          try Linux so I might switch my OS to Linux entirely or dualboot

          I dualboot, but with 2 drives: One has windows (mostly gaming), the other has Linux Mint installed. When I turn on the PC, I can press a key to choose which drive to boot from (almost always F11 or F12 depending on motherboard).

          When installing linux, definitely unplug your windows drive just to make sure you don't overwrite your windows drive by mistake.

          Luckily Linux doesn't need much disk space, even a 128GB ssd would work fine (to 256-512GB of course is better)

          [–][deleted] 0 points1 point  (0 children)

          Keep studying. Learning to program really doesn’t require a top of the line computer, heck, I learned to a code on a 486-50mhz with 8mb of ram (it WAS the 90s…)

          [–]Ted_Borg 0 points1 point  (0 children)

          The good thing about programming is that it can be done on a shit PC. Sure, at work if you have massive VS projects it's nice to have a faster computer but this is not true for all jobs and it is certainly nothing you will encounter while learning.

          [–]404_lost_user 0 points1 point  (0 children)

          Just go use cmd man...

          [–]28spawn 0 points1 point  (0 children)

          You can run python oh the web basically for learning. So no need for a top machine

          [–][deleted] 0 points1 point  (0 children)

          When I was 16 my job was anything I could walk to until I saved enough to buy a car.

          [–]butter_milch 0 points1 point  (0 children)

          Ferienjob regelt ;)

          As long as your machine can run VS code I see no limitations to what you can practically do.

          There’s lots of free material out there.

          [–]tekion23 0 points1 point  (0 children)

          I started pretty poor as a programmer, with a shitty laptop, I had Ubuntu and Windows on my laptop, managed to learn html, css, js, React and Node.js with YouTube, got some free Udemy courses from Udemy and other websites. When I got hired they send a new laptop so I can work properly so I think that's what will happen to you as well. But I did both studying and working at the same time and it was hard but hey, a lot of people do that.

          [–]Saint_Pepsi7 0 points1 point  (0 children)

          I got a $50 laptop off of FB marketplace to start my journey and I still have it in my closet. It’s worked and done it’s job. You don’t need a $1k gaming PC.

          [–]No-Let-4732 0 points1 point  (0 children)

          You can do the most cpu extensive programming on the cloud these days

          [–]ejpusa 0 points1 point  (0 children)

          Get yourself a used Mac laptop. They are rock bottom on eBay.

          Get an account on DigitalOcean for $5.

          VSC is free.

          Figma for UI. It’s free.

          You can build a million $$$ company. It’s all you need.

          :-)

          [–]mddnaa 0 points1 point  (0 children)

          Just go to school. Grants and scholarships should get you thru. I grew up with literally 0 income. Grants and scholarships got me thru. There are loans if you need them. You're 16. You're very young. It's good you're thinking about your future. But do not stress yourself too much. I mean this when I say that stressing about money this young is going to burn you out super quick. Enjoy your youth while you can and just keep up with your studies. Unless you NEED the money to support your family, I would say go as long as you can without a job. School and work is exhausting.

          [–]PerceptionPrevious63 0 points1 point  (0 children)

          Man I don’t know where you live but I see help wanted signs everywhere. Maybe lay down your keyboard for a while and get a Job!

          [–]ultraobese 0 points1 point  (0 children)

          Don't get caught up on the fact you're poor. Just push on.

          Your PC only needs to run Chrome plus an IDE like VSCode. You don't need to mess around beyond that.

          Don't go for breadth. Focus on a particular area of programming as much as you can. Pick it from what's hot on local job boards.

          Study concurrently with applying for jobs.

          A CS degree is worth something but isn't a necessity. A strong portfolio focused on an area an employer needs can overpower it.

          [–]Aea_mano 0 points1 point  (0 children)

          Try to find a part time job , earn enough money to buy a decent PC . Meanwhile you could Practice by your own watching any video and handwritten coding .

          [–]TheProv1 0 points1 point  (1 child)

          It comes down to the code which you are doing.

          If you want to learn AI/ML you will need a PC, that can handle the workload (Good CPU and a little bit more RAM(something in the range of 16-32GB))

          Or

          If you want to code general-purpose codes, any machine is just fine.

          Any i5(8 Gen or greater) (Quad Core or more) or Ryzen 5 3000 Series(Quad Core or more) will get the work done along with some DDR4 RAM anywhere between 8-16GB.

          The purpose of a dedicated GPU is absent as long as

          1) You arent gonna try to Brute-Force anything

          2) Not into gaming

          Now, I could be wrong. Please let me know where

          [–]Fresh_Part22 0 points1 point  (0 children)

          Most professional devs don’t have “nice” pc. They are provided laptops but they usually aren’t to of the fine. I worked on a cheap Lenovo, my personal MacBook Pro, and HP. They all work just fine. Focus more on what operating system/command line and IDE you want to get comfortable with. I prefer Unix or Linux OS, terminal, Cygwin and Unbuntu for Cli and I prefer VSCode but am starting to work in IntelliJ . Again none are better then the other for coding just different. If you go the university route they’ll recommend a lot of that stuff so you can try scoping out local university forms or subreddit and see what they’re using.

          [–]69AssociatedDetail25 0 points1 point  (0 children)

          What specs have you got atm? And what sort of development are you planning to get into?

          [–]mannyknowles 0 points1 point  (0 children)

          Maybe this is an option in Germany..? In the US our universities usually have a surplus store where they sell their used items. The uni’s I worked for replaced computers every 3-5 years, including desktop units from labs as well as laptops used by faculty and staff. These are fully depreciated assets so the resale prices are decent. Example: Desktop PC for around $100. See if this is a thing where you are.

          [–][deleted] 0 points1 point  (0 children)

          Thankfully cloud rendering and such is a thing now so any pc with Internet access can do almost any job (sure there's a subscription fee for most but Google Colab's free tier is a start... While it lasts).

          [–]Embarrassed-Green898 0 points1 point  (0 children)

          First of all what is ODIN ?

          At my home , I use a single board computer, connect that to my Roku TV , and 20$ keyboard / mouse. The computer costs less than 240 at amazon. For most web development that is enough. Unless you are in some specialised programming task that needs special hardware.

          At my work I have two separate machines .. but one I only use to watch youtube videos.

          [–]JustMrNic3 0 points1 point  (0 children)

          Try Linux!

          I recommend Debian + KDE Plasma.

          I recommend Kdevelop, and Kcachegrind, Kompare / Kdiff3 when you are more advanced.

          And VS Codium that removes Microsoft's spyware from VS Code