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!
.
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.
I wanted to have a cool geocities page, so I needed some HTML. Later I wanted to do downloads and forms… maybe a domain is in order. Learned some php and javascript. Discovered desktop languages, this C# stuff is pretty neat, I can do a lot with it. It’s versatile. Oops now I’m getting a paycheck for this silliness, and depending on it to eat.
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.
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.
Dude, this is exactly what billions of people wish for. You are living the dream, take in every second of it.
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.
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.
I mean im in tech and im on a dev team but I come from ops/admin and I while I get the idea of dev ops I still don’t like calling it development because I simply do not have the 10k hours of coding experience. I work with and modify files in various languages and more often than not simply configuration files that are just a format. I sorta have the same feelings as you but I know I won’t really get there unless im doing it the majority of the time over the course of a few years and I doubt that is going to happen.
From someone who worked as a dev/engineer for a long time dont downplay DevOps as “not really development” most of what standard development is today is wiring together different services and building a UI on it. DevOps is a critical part of the impillar that is software development. Just because you’re not writing the JS that renders the front end doesn’t mean you’re not developing for the product! Infrastructure is as important as UI!
yeah the problem comes with recruiters. Its like I can’t say I know python inside and out or am a python expert and a lot of times I get contacted for roles where at least they are aking for it. also I have utilized pipelines and troubleshooted but did not write them and such. Its like azure and aks. I have troubleshot like network issues but I can’t say im an azure admin the way I used to be a windows admin a decade or so 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.
I feel like you’re trying to fight an uphill battle. I find it’s always easiest to learn in a way that motivates or invigorates me.
For example, I wanted to play games with my friends so I got into hosting a Minecraft server. It was hell at first to learn all the individual pieces, but I was motivated and it led me down the path of learning networking, basic server client architecture, and performance monitoring. That kind of spiralled out into making my own plugin, too. Despite the fact that I never ran a server with more than 5 active players or finished my plugin, it sent me down a path learning tons of new stuff because it was fun for me.
I transitioned into webapp development later on by trying to make an idea I had come to life. This was well before I had even heard the word “startup” and I had no business sense, but I wanted to make something and was very motivated to hack my way through it. I didn’t finish that either, but I still use those skills I learned today.
I don’t I’m just a server setter…