I’ve always had trouble getting into coding/programming because I’ve never truly dedicated myself to it. Mostly, this is because I kinda always lose momentum to learn it. I’m a heavy FOSS user; I love coreboot/Libreboot and am interested in getting into firmware development. I’ve already helped test hardware for Libreboot and enjoy learning about firmware.

I have just started to cut out gaming from my life to focus more on this. Maybe I should start with Python? At the same time, though, I feel like I should start with C, but don’t want to jump the gun too quick.

Feel free to share your stories!

  • @[email protected]
    link
    fedilink
    354 days ago

    As others have said, rather than learn a language, solve a problem. Find something that bothers you, and write some code to fix it. The specific language doesn’t matter.

    Its kinda similar to learning a spoken language, there is no point learning French if you cant use it in someway.

    • @[email protected]
      link
      fedilink
      4
      edit-2
      3 days ago

      Sound advice. During my first year of computer science, one of my professors told me that programming languages are just a tool to solve a problem. The logic to solve it is the key. Whether it’s Java, Python, Go, etc. If you don’t know how to tell the computer what to do, you can’t program anything in any language.

  • @[email protected]
    link
    fedilink
    264 days ago

    start with python to do what? learning a language is not the same a s learning programming. Heck most languages can be learned in an hour or two. Programming is another beast altogether.

    A person can learn to use a hammer in minutes, but it doesn’t make them a carpenter.

    Find a project you want to build, and start building it. solve problems, and learn along the way. Learning “python” on its own will not help you learn programming in any way. Programming stuff will.

    • @[email protected]
      link
      fedilink
      54 days ago

      I second this.

      I started learning Google app script for work and while its not exactly traditional programming like most folks would do, i can now look at javascript and have a basic understanding of whats going on.

      I learned a ot by doing. And with the help of ai, i was able to learn concepts, syntax, the best way to do this or that at least to a degree.

      Just trying to make something is the best way. Make a tool to make your life easier. Like if you have a repetitive task that you dont want to do each time, make a script that does it for you.

  • @[email protected]
    link
    fedilink
    104 days ago

    I started “programming” by writing triggers in the Warcraft 3 editor 😅.

    Later learned C++, then went to uni and learned more and the deeper theory.

    If you’re just a hobbyist, Python is a good choice. If you want to learn more deeply, I’d recommend Rust over something like C. Feel free to mention/message me if you have Rust questions.

  • CaptainBasculin
    link
    fedilink
    63 days ago

    I started it via Minecraft modding. My mouse at the time couldn’t handle clicking a lot well, the button got stuck a lot when I did that. I wrote a mod that would click and release when I held down the mouse, and it helped me a lot until I got another mouse.

  • @[email protected]
    link
    fedilink
    English
    104 days ago

    I was a self taught programmer who 10+ years later is now a senior software engineer. I can’t tell you what to do but I can tell you what worked for me.

    The reality is, I never sat down with the intent to “learn programming”. Instead, I had practical ideas for things I wanted to make the computer do, and then I learned whatever was necessary to accomplish my projects as I went. Whenever I got stuck or hit an error, I’d search my questions online.

    I never truly “finished” most of these early projects but they gave me a practical understanding of how things fit together. From there I just kept making stuff and taking on harder projects and then harder jobs and eventually other programmers started coming to me asking for help because they knew I had solved the thing they were working on before.

    I’m not sure if it’s advice, but I’d say stop worrying about learning and just do. If you like firmware, go buy some shitty unsupported peripheral from Goodwill and try to make it work on your modern system. Solve a problem you have in your everyday life. It doesn’t matter if you accomplish the goal, you’ll learn a lot by googling your way through it. Do that enough and you’ll wake up one day and be a competent programmer.

  • @[email protected]
    link
    fedilink
    64 days ago

    Got into making redstone logic in Minecraft, including joining a community of people building all kinds of crazy things like CPUs. This was early days too - I think the repeater was brand new

    Eventually wanted to make mods so started learning Java. Was bad at it. Then wanted to make games in unity. Was bad at it. Learned C++ at Uni. Dropped out and was bad at it.

    Kind of repeated this cycle for various languages and tools for years, never with enough motivation to learn properly. Eventually I hit a critical mass of skill and was able to actually make things in HTML/JS and over a couple years this snowballs until surprisingly quickly I find myself a senior developer teaching others!

  • @[email protected]
    link
    fedilink
    7
    edit-2
    4 days ago

    In grade 5-6 we had a course on typing, it was boring so instead I played NIBBLES.BAS and GORILLA.BAS started modifying the Basic code to give me more lives.

    Some time later I got hold of Visual Basic 3.0 and made some small programs, after that I was told that the cool kids were programming in C++ so i got hold of Borland C++ Builder 1.0 and played with it.

    The latest language I learned was Python, this was when Oracle brought Sun (2009) I was fond of Java but wanted a language that was not in the clutches of a corporation, and Python was already on the rise back in 2009.

    I think starting with Python is a good idea, when you get better at the language you can then add more languages like C/C++ or whatever you feel for, because when you know one programming language its easier to learn another one.

  • @[email protected]
    link
    fedilink
    84 days ago

    I’m genX, so I grew up with 80s microcomputers. Programming was pretty much the only thing you could do with them.

  • Angel Mountain
    link
    fedilink
    64 days ago

    I started with HTML and CSS because I liked to build my own useless small websites. Then I noticed it was nice to copy+paste some javascript scripts someone else wrote into them to get some “fun” interactive components. Then I slowly started to make little changes to those scripts and that way slowly learned more and more. It was not the quickest way to learn, but the most fun, because there was little setup necessary (I literally used windows notepad to save files as .html and opened them in my browser) and I could quickly see results.

    Since you’re interested in FOSS I assume you use an OS with a nice terminal. You could write some bash scripts to do simple tasks for you maybe? (Maybe write a script that removes old downloads from your downloads folder, or something that can delete all files that end in ‘.temp’ (IDK just stupid ideas that could be fun to try to start coding).

    Python is a nice option as well, it has a lot of useful options and documentation and gives you very readable code, making it easier to learn good practices!

    Just make sure you do something fun and you will learn what’s necessary along the way.

  • Jeena
    link
    fedilink
    English
    74 days ago

    Back in the day - it was around 2003 - I had a band and I wanted my band to have a website. That is when I installed Frontpage which let you design it with drag and drop. I had a menu which I wanted to show on each page, so I used serverside injection which Frontpage offered to do that. Later I found out that you tan even dynamically change the menu to highlight on which page you are if you do it with PHP and to a '[HTML_REMOVED]`. From there I added more dynamic things until I had some software on my hands.

    But this was not the first time I got into coding actually. First time was around 1992 when my dad bought me an Amiga 500 and it came with the AMIGABasic handbook. Back then while most of my friends only used it for games, I somehow got interested in trying to make the computer do what I want. So I wrote some small games, some animations, even a book lending management program. But after some years i stopped being interested in computers until ten years later.

  • Binette
    link
    fedilink
    64 days ago

    I learned Minecraft (and other video games) were made with coding, so I had to learn it to make my own.

    I was like 8-10 and found a tutorial on how to use eclipse. I thought I followed it to the letter, but it didn’t compile.

    At 12, my math teacher offered python courses, so I attended them and yeah.

  • @[email protected]
    link
    fedilink
    3
    edit-2
    3 days ago

    I had my start with Python, albeit as a kid and I didn’t actually understand too much about the principles at the time. Still, I think that was a good place to start learning about the concepts of instructions and variables.

    I learned more about the ideas underpinning it all later, and most of my understanding came when actually working in software development on a live and in-development codebase. I think that’s a good progression: start small, then learn some theory just so you’ve heard the terms once, then try to make sense of actual code using that.

    Edit: definitely work on some goal though. Don’t code in a vacuum, think of something small you want to achieve and learn to do that.

  • @[email protected]
    link
    fedilink
    3
    edit-2
    3 days ago

    I had a triple major of Psych/Soc/Phil with the intent of teaching. My focus in Philosophy was mostly logic and analytical reasoning. I ended up marrying my GF and had to quit college in my junior year and go to work where I ended up doing a lot of computer work on the IBM XT. One late night working on electronic bids for parts we sold I realized computers are not going anywhere and focusing on that would get me out of this sales job. I went to Control Data for a year which got me in the door of a company. Programming was nothing but logic which was my focus in college so it came pretty easy to me. That was 1989. I contracted to Ford for the next 30+ years doing everything from data analysis at the start to SQL and DB’s for a while, and then I ended up on teams delivering software to the plants. I always wanted a job that would allow me to see the world and for over 20 years I traveled on the corporate dime, including an around the world trip for work in Asia and Europe on the same trip. I traveled almost 300k miles on planes during that time and had a chance to see how people live and work all over the world.

    • wellDuuh
      link
      fedilink
      English
      1
      edit-2
      3 days ago

      Dude, this is exactly what billions of people wish for. You are living the dream, take in every second of it.

      • @[email protected]
        link
        fedilink
        23 days ago

        I worked with a lot of people making close to 6 figures who only had a 2 year associates degree in controls traveling right along side of me. They made more than me with less education but more technical skill. It’s also a job market that is growing like crazy; automation.

  • @[email protected]
    link
    fedilink
    English
    54 days ago

    When I was young, around 10, I was bored. We had one shitty desktop and no internet 99% of the time (we had dial up but only 1 landline, and my mom used the phone alot). We were also homeschooled, and the software teaching us was on that computer. I found the software documentation which was in HTML, and used that to make my own “website”.

    Even before then though I had a draw to tinkering with computers. After a bit I convinced my mom to get me intro to C++ by Bjarne Stroustrup, and messed with that for a good year or so. Then we upgraded to DSL when I was around 13 and I got into Roblox and learned Lua, then other languages.

  • ѕєχυαℓ ρσℓутσρє
    link
    fedilink
    5
    edit-2
    4 days ago

    Someone showed me MSWLogo in high school. I figured out that I can draw cool stuff, and do calculations in it. It inspired me to learn a real programming language. C was my first language. Then a learned C++, and Python. Then I lost interest in it for a few years, got a bachelor’s in math. I’m still in math, but I gradually regained some interest in programming. It started with the odd bash script I had to write from time to time. Then I had some larger problem to solve, and decided to learn Rust to do it. Turned out great, it’s on GitHub with ~100 stars. Currently I mostly code in Haskell and Lean, both for non-professional hobby work.

    TL;Dr: I found it fun.