How would you start to learn coding today?

I'm a PM and Product Designer looking to transition into launching my own products. While I have basic programming knowledge, I'm trying to be strategic about what technical skills to develop given the current AI landscape.

I'd love to hear your thoughts on what technical skills would give me the best value-for-effort ratio as a solo founder in 2025. Should I focus on learning prompt engineering and AI integration, dive deeper into a specific programming stack, or perhaps take a different approach entirely?

Appreciate any insights from those who've been in similar positions!

23 points | by cbenjumea 162 days ago

20 comments

  • aristofun 162 days ago
    > launching my own products

    It may sound weird, but it's based on my 20y observations in the industry (including teaching noobs).

    Given the goal, you don't want to bee strategic about learning technical skills.

    It is a botomless pit - the more you dig for the sake of improving a skill - the more there is to dig. And the worse you feel about yourself, the more unrealistic your goal seems.

    The best thing I would do in your place is stay focused on the business goal - i would try a couple of courses, books that is think would get me to shipping some specific product in mind ASAP. You don't have (and even better not) to be a good coder to launch a product.

    You only need to be good enough to launch and get your first client. Then the users/market would hint you specific directions and highlight your gaps pretty well.

    If your product is complex - I would dumb it down to some school class grade prototype and attack it first.

    When you just want to play a cool song on a guitar — you learn the song. You don't spend years of your life becoming a decent guitarist, unless this (or procrastination) is you real goal.

    Specific piece of advice: Ruby on Rails is your friend.

    All batteries included, noobs friendly, time saving framework designed for one-man shows / quick prototyping. Yet mature enough to scale with you out of your prototyping phase.

    Countless of startups has been started (and most continued) as Ruby on Rails web app.

    • ricardonunez 162 days ago
      This is great advice. I also have 20+ years and recently started rewritten an old side project, the more I researched to make better choices, the more o dig myself and was feeling hopeless. Started keeping things simple and focus on shipping, finally started seeing progress.
  • codingdave 162 days ago
    There is an underlying question to answer for yourself - do you really want to learn to code, or do you want to learn to launch products on your own? As you said, AI is changing, as are the skills required to be a one-man software shop.

    I would not waste time with today's prompt engineering. The results are iffy, and the tech is evolving. I'd focus more on understanding how complex apps are structured. When AI hits its next big inflection point, it will be able to handle everything shy of the actual architecture of your app. I'd focus skills on being able to lead a team of coders, and then you can do so whether they are digital or human, expanding your capabilities in tandem with AIs improvements.

    I'd also focus on determining the right use cases for AI. Right now, people are throwing it at everything, including processes and problems that need deterministic answers. LLMs are non-deterministic, so some people are not using them correctly yet. They are trying to pound in nails with screwdrivers.

    All that to say that if I were you, I'd get good at understanding the current AI capabilities (and not limited to LLMs), applying it to the correct product and dev features, and being able to lead both AI and humans through the gaps, selecting the correct team member to solve the problems which cater to their strengths.

  • lvkh1 156 days ago
    I think that depends heavily on what your existing background is. If you are more product-minded then it may make sense to take a project-oriented approach and crank out prototypes for small functional units.

    I'm not sure its possible to predict the evolution of AI with respect to coding in a way that actually matters to career planning, but if you want to hedge your bets, I suggest learning high-level descriptions of e.g. algorithms and programming patterns & paradigms instead of focusing on specific implementations. You can always specialize a generalist, but going the other way is widely regarded as more difficult.

    If AI replaces 90% of coders, then we'll still need architects, mathematicians and planners (maybe) but if for some reason the market implodes (supply chain failures, regulation, etc.) general-purpose programming skills and a decent understanding of CS theory should be a good safety net.

  • debamitro 152 days ago
    I would strongly recommend using AI tools for building your product and not bothering about the underlying details at first. Once you have something working and you need to know how something works AI can explain it to you. The future is here, enjoy it
  • cbenjumea 160 days ago
    Thank you all for your incredibly thoughtful and comprehensive responses to my question about getting started with coding! I'm touched by how much time and effort you put into sharing your experiences and advice.

    Special thanks to those who shared their own learning journeys - it's reassuring to know that everyone starts somewhere and that persistence pays off. I hope to pay this forward someday when I'm in a position to help other beginners. Wishing you all the best, and thanks again for making this community such an inspiring place!

    Christian

  • overu589 162 days ago
    Start with something that already does mostly what you need and you can tweak or fix the way you like. (Really everything is content management, data capture, and workflow right?)

    As you grow in skill and familiarity you will add features and configure more pieces to work together.

    After all of this (in years) you will hate everything you’ve done and have had to do to get things working (and they have.) You will dream of a day when you can scrap it all for a new from scratch exhibition of all that you have learned.

    Someday you will.

    Until then, just hobble things together so they work in the environment you are most confident in, like everybody else.

  • tiznow 162 days ago
    The Paul Graham advice of "build things you and your friends would use" alongside Python -- which was my first language, getting back to coding for the first time since 9th grade -- is basically the carrot I've offered to a few people wanting to get into coding.

    I'm lucky in the sense that what got me back into coding was a very specific set of personal needs that drove me mad in the best way with passion. I'm not a technical wizard, but coding and growing over the last few years has to count for something.

  • Alex-Programs 162 days ago
    The way I first learnt.

    Scratch from a young age.

    codeclub.org Python. Pulling data from APIs and showing it. Using pyautogui to do silly automation. Reading about denial of service attacks from cloud flare blog posts, then googling "send UDP packet python", sticking it in a for loop and a while loop, and crashing the router. Circumventing the school firewall in increasingly elaborate ways.

    Subscribing to every computer related subreddit possible and learning through osmosis.

    Building things, breaking things, and learning as I go. It's been good fun.

  • 999900000999 162 days ago
    Realistically very few solo developers are able to make sellable products.

    Even fewer make a net profit. You're probably going to lose money here unless you want to work for a corp.

    I'd go with Python or JavaScript. It depends on your first project. Python is basically very good with data science and okay at everything else. JavaScript is almost the only way to build a website and okay with other things.

    Write something simple. Like a sales tax calculator with Python. Then slowly build yourself up to other more challengingly things.

  • ActorNightly 160 days ago
    If you want to actually learn how to code well (i.e not driven by a business need or a time table), here is how I would do it. All of these steps would be assisted by LLMS of course.

    1. Learn basic assembly. This is to basically get used to thinking in terms of computer memory, operations, and so on.

    2. Learn the Linux OS in depth. You should be comfortable in the terminal and with basic OS operations done in the terminal on. how to manage processes, how to search for files, move files, delete files, how to write to files, read from files, pass data to programs, analyze network traffic and open ports, see running services, how to use crontab, user management, and so on.

    3. Learn C code, and how it compiles to assembly. Along the lines, learn how the linker works, how elf format works, how dynamic loading works. A good exercize is to compile hello world without #including anything and compiling with -nostdlib and -nostartfiles option. Another good exersize is learning how to modify an elf file to make it use a different dynamic library. Using Ghidra to look at binaries is also useful as well.

    3. Learn networking in depth. Ideally, you should be comfortable writing a pure ethernet (i.e Layer 2/Link Layer) communication server, so 2 computers on the home network can talk directly without using IP protocol. However realistically, you should be comfortable at Transport layer, ie TCP/UDP and writing handlers to talk on sockets, and application layer stuff with writing http servers. Do this stuff in C.

    4. Learn supplementary low level stuff. Namely you want to explore threading, compiler optimizations (along with undefined behavior), analysis tools like valgrind, as well as some linux interface stuff, like for example how to change the process to run as root.

    Once you have this basics down, its very easy to really pick up anything. Python will feel enjoyable to code in, but fundamentally you understand how it works under the hood, so its very easy to get up and running with it.

  • yeellow 162 days ago
    Even though I code for a living and mostly enjoy the process, I’ve spent the last few nights with Cursor, migrating my old C# project to Python. I decided to do it without providing my old code to the tool and without coding at all. Surprisingly, it was amazing—just like having a super-efficient, eager programmer at your service. In just a few sessions, I managed not only to rebuild my old app but also to add many new features that would have taken me days to develop. (I decided to use PyQt6 for the GUI, despite having zero experience with it.)

    So, if you know how to run code and understand the absolute basics, just start with Cursor. The free version should be good for a start, and then it’s just $20 per month. You can learn in the meantime by asking questions, etc. However, I would focus on understanding high-level concepts because mundane coding seems to be a solved problem now.

    It’s a bit sad from a coding enthusiast’s perspective, but on the other hand, it makes you super productive when you have an idea for an app.

  • constantcrying 162 days ago
    There is exactly one way to learn programming, just like there is exactly one way to learn a language. You need to do it, you need to actually program things, you need to want to make something.

    Here are some things which you should not worry about:

    - Which language

    - Which editor

    - Which course

    - Which book

    - Which library

    - Which operating system

    LLMs are also very good at answering questions and explaining things. If you don't know something ask an LLM.

  • datavirtue 162 days ago
    C# using Visual Studio for APIs. Deploy to Azure. Simple, plenty of help from AI. Not sexy but you are trying to get things done. Stay away from MAUI...far away. Flutter is a big chew but the AI assistants can barf out working code easily to get you started.
  • beardyw 162 days ago
    > transition into launching my own products

    Programming is glorified building work. The building you create is the product. Work out what you want to create and then find what skills you need.

    Making something you believe in is by far the best way to learn, albeit sometimes quite painful.

  • runjake 160 days ago
    I can't fathom it, but if I had to start over today, I'd:

    - Pick something I want to build

    - Pick the tools -- whatever's at the top of the latest SlackOverflow survey, though I'm not sure SO matters anymore

    - Peruse the https://learnxinyminutes.com link for the chosen tools

    - Use an LLM with good prompting to assist me in making what I decided. I'd use chat and hand type the code from the LLM and try to understand what I'm typing and see how it all fits together

  • pizza 162 days ago
    Depends on where you're starting from

    1. Absolute zero?

    Find the top rated short book in the language you're interested in. If you don't know which language, since you eventually want to get into AI, Python probably would be best bang for buck. IMO the more pictures, the better. Also, be aware that sometimes setting up the environment for coding can be half the grunt work, and to avoid that, often something like using Google Colab works just fine. [0]

    2. If you have some coding knowledge and want to improve that first before thinking about AI? Here are some tricks I would try that I think are less common:

    a. Find a youtuber who meets these 3 criteria:

    - 1. is a great coder

    - 2. is a great communicator

    - 3. has posted videos of them solving the Advent of Code challenge series while they think out loud about their reasoning and solving.

    Simultaneously try to solve the AoC problems yourself, while also typing out their solution. Observing tacit knowledge is very effective for skill transfer.

    Pause the video whenever you think you know the way forward etc. so you get a chance to try yourself.

    b. Get very used at quickly digging through codebases. Best way to do that is to find a lot of codebases to click through.

    Github is pretty good for this and the code browsing feature actually lets you jump through code reasonably well enough to traverse codebases just by clicking on any symbol that looks interesting to jump to its usages or definition.

    Look for anything that sounds cool on Github (browse trending repos etc), and try to figure out how it works. This is a quicker way to introduce yourself to a variety of patterns without having to whip everything from scratch - you can learn those planning skills at a later time.

    3. For getting into AI, once you feel comfortable with coding generally, try the Deep Learning For Coders youtube lecture series from fast.ai

    [0] I just point this out to give you a heads-up that basically it's quite easy to run into situations where for some strange reason if you just keep installing stuff, things can get borked, and trying to solve that saps energy and educational momentum

    • aristofun 162 days ago
      > Find a youtuber who meets these 3 criteria: > - 1. is a great coder

      This never happens (i'm happy to be mistaken, please share example).

      Great coders are busy being coders. Youtubers are busy being youtubers, different game they playing.

      What you mean I suppose "is (was) real professional programmer", that and #2 is a good enough mix for most of the noobs to start.

      • hydrooze 162 days ago
        I think Net Ninja and Dave Gray are pretty good at coding and communicating.
        • aristofun 161 days ago
          It's really hard to say how great their coding is based on educational material only. But I'm sure they're at least great guys! )
    • cperry 161 days ago
      +1 Colab, and hit me up if you have any complaints!
  • Turboblack 160 days ago
    now every second person is a coder. when i studied at the polytechnic, programmers were the elite, now it's common. i wanted to be some kind of neurosurgeon in IT, but it turned out that i'm a plumber. i would have been better off doing something else, preferably something far removed from IT. it's not about money

    a person selling fruit on the street seems happier to me, a female veterinarian seems special to me because almost no one is a veterinarian, they are closer to ballerinas, astronauts.

    even a cook in a cafe seems happier to me because my job is no longer important, it has become ordinary, mundane, boring

  • rapfaria 162 days ago
    I'd ignore advice like "Ask ChatGPT to make you python course". Get a high-rated course on udemy for $10 where they are building projects/products, get Think Python, and build something on your own later. Bonus if you can get it deployed.
  • journal 162 days ago
    I'd start with ESP32 if I had nothing else to do. Get two of them working with each other and convince some neighbors to join a neighborhood mesh network.