11 comments

  • killingtime74 4 hours ago ago

    For me it was going back to university/community college and learning in a structured way. In Australia you can do a masters by coursework that covers broadly the same things as an undergrad degree in less time.

    I was able to get a "real" software job on graduation.

    I liked knowing I wasn't wasting my time learning random things when I had no idea what to learn

    • chistev 4 hours ago ago

      The advantage of school is that it provides a structured curriculum, otherwise you'd be drowning in a sea of content with no guidance.

      But, don't you think there are resources that can help with that too.

      • killingtime74 2 hours ago ago

        Probably yes. For me I could just enroll a few weeks after deciding to do it and start learning (they are open for enrollment twice a year). Less need to evaluate/decide what path to take.

      • brudgers 3 hours ago ago

        An excuse to be a beginner is another advantage of school.

  • toomuchtodo 10 hours ago ago

    Find problems to solve with code, and write code to solve those problems. You’re building muscle strength in the ability to rapidly pattern match to potential reference code paths.

    https://projecteuler.net/

  • bhu1st 5 hours ago ago

    You need a fire on you a* to build a software yourself. Next time you have an urge to buy an app or a software, give a shot at vibe coding it with AI and piecing the software together yourself. You will learn a lot along the way.

    At some point, spend a good time learning the grammar and syntax of a programming language (can be any). This will make you navigate vibe coding with ease.

    • chistev 4 hours ago ago

      You won't learn by vibe coding. Maybe a bit if you're reading the code, but you aren't forcing yourself to think up the logic

  • __patchbit__ 5 hours ago ago

    Get paid to on delivery of finished product.

  • bgbntty2 8 hours ago ago

    I'm not a good programmer by any means, but here are some ideas that have helped me along my journey:

    * pick a language. It doesn't matter which one. A popular one will have more tools already built for it and a bigger community;

    * learn the basic grammar of the language - it's usually trivial, unless it's your first language;

    * understand what kind of algorithms and data structures exits and what problems they solve. You don't need to implement them yet, just know they exist;

    * find something interesting to work on, if you can. Are you interested in something specifically? Do you want to know how to make a game or how to automate some everyday tasks, for example?

    * find something your friends are contributing to or working on, and ask them questions;

    * search online whenever a though pops up in your head. Not only for references from a manual, but for best practices and even open-ended questions. If you're not sure if something is correct, search for articles or comments that say it's wrong or that it's dangerous or that it's the best. Don't rely on 1 source of information. If you're using AI, ask it to give you links so you can read what actual people wrote. Don't feel inferior for making 50 search queries in an hour and writing 10 lines of code;

    * take time to set up your environment. Look for ways to make it better, to automate a lot of what you do. It may be boring, but it will save you a lot of time down the road;

    * try different technologies, languages and tools. Some suck objectively, some will suck for you personally. Don't stick with the first thing;

    * look for similar threads elsewhere so you get more suggestions;

    * learn how to freely acquire books and papers that are behind a paywall;

    * take your time and enjoy the process.

  • n3t 4 hours ago ago

    What's your goal?

  • MilnerRoute 4 hours ago ago

    I always recommend Harvard's CS50 class. (It's online, and free - and it covers a lot of key concepts and exposes you to a lot of different languages.) Most of all, it'll give you some really good experience and the confidence that goes with it.

    At some point you should start uploading your code to GitHub, and maybe trying to contribute to other Open Source projects. (I assume your goal isn't just to learn programming, but to learn it well enough to get a job?) There used to be lots of good Meetups where you could meet other programmers and network and learn new things...