What has your journey been like learning programming
Learning never stops, and everyone has a story to tell. I'd like to hear yours.
Just out of curiosity, how did you all start your programming journeys? What challenges have you faced on your journey? If you could go back, what would you have done differently?
For those starting out
How are you learning programming. How could it be made easier? What is it you wish you had and what challenges are you encountering on your journey?
Side note
How many years of experience do you have coding and what was your first programming language? What's your favorite language and why? Alright, that was a lot of questions, hopefully you guys have time to respond to them
Top comments (9)
I posted here the headlines of how I got into dev. My path is convoluted, but here it goes.
I got a computer at home around age 12 for getting all As (something I did not frequently do up to that point, and Dad probably didn't expect to have to pony up). It was an old 386 from Dad's business, and my first and only interested use for it was to play a Sierra game called Hero's Quest (later renamed Quest for Glory) that came on 4 floppies. At roughly zero computer knowledge, I had to call my friend who gave it to me to ask him how to start the game.
I started asking about this thing called DOS, and my Dad would refer me to an MS-DOS 5 manual and tell me to read it instead of asking him. It was like Greek to me, but after reading the same thing enough times (and not much else to do), I started to conceptualize files and directories. Batch files were my first scripting experience. I stayed up all weekend with my friend writing about 12 screens of a text adventure game as a batch file, required to be played thru on every boot before you could do anything. With some extra prompting in order to proceed into the evil realm of Windows 3.1. My friend's dad was not amused.
I spent the next little bit mostly gaming on computers when I could, but sometimes taking an old computer apart with my friend to figure out what the parts did and how to tweak DOS. I had 2 programming courses in high school. GW Basic and Pascal. Having already some experience with control structures, goto, and looping from the esoteric DOS batch stuff, those classes were pretty easy for me. But I didn't fall in love programming or anything. I still wanted to focus more on hardware and OS stuff.
After working age, I did fast food and manual labor mostly (small town, pre or just-emerging internet, so not a lot of tech opportunities). Found some brief computer tech work in between. Went to college for a couple of years and quit, but worked as a tech while there. Came back home and eventually I found a job as PC support which transitioned from part time to full time. Was also taught Windows sys admin stuff by my boss so I could back him up if he was busy. The company wanted an internal VB program rewritten as a web app, and I was not very busy so they tasked me with it. I was at that point just learning and very opinionated toward linux. So I wrote it in on LAMP stack, as PHP was quick to pick up.
My employer later went bankrupt, and I got laid off. Living on my own, I survived somehow on a little contract work and a lot of single-meal days (and hard core gaming). Got serious about going back to college and eventually became old enough to get financial aid without parents, who already wasted a lot of their own money on my a college education. Through a connection at the local computer store, I was offered a one-off contract programming job, which I did. Later, Dad hired me full time (maybe $7/hr?) to write an ordering program for him. Those were tough days of procedural programming, and it felt like my brain was fried every day. Finished that after a year or so (and is still in use today) and then went to work part time as a sys admin for same company that previously subcontracted me for that one-off programming job.
It was at this point that I picked up VB.NET because it was more familiar to their main software contractor, who developed their internal system in VB6. I wrote a bunch of small .NET web apps during this time as well as my sysadmin / networking duties. I worked 3 part-time jobs and went to college at night.
Eventually graduated and went to work in the corporate world. Did sysadmin and HPC admin of linux systems for about a year. Wanted to be a network engineer, and they let me experience it a little. Decided it wasn't for me, especially the travel. Had to do a bit of Bash scripting for the HPC stuff b/c there were hundreds of nodes. Did a little further PHP dev for some internal tools. Having experience and demonstrated inclination for programming, the company moved me into a stalled development project in .NET. After that point, my career shifted permanently to full-time dev work, and sysadmin only sometimes.
It started when I learned that it was possible to use a program to automate some really mundane repetitive task I was doing. I came across this scripting tool called AutoHotkey. I didn't really know about programming at the time but in the hope that I would never have to do that mundane task manually ever again, I force myself to learn how to script. It was a little tough because I had a full-time job at the time. After a day or two, I managed to successfully write a script with bits of help from the AutoHotkey's forum. It completely took over that specific task I was trying to accomplish, which led me asked myself "why stop there?" 😃
Great. I once saw autohotkey syntax and immediately 'ran away'. Not sure if I should call you Mac or Siri (lol), but thanks for sharing.
Do you still write AHK scripts or what has your path been like recently?
I went through a bootcamp and have been working as a developer ever since. I still write some AHK script but only for personal use on my Windows. I develope on macOS, which doesn't support AHK. 😞
Hello Allan,
just a few hours ago I have created an article on my site that shows my path on learning a programming language or how I master an existing language.
If you don't mind I will share it here:
goo.gl/mRMx1u
Davor
No problem Davor, I personally agree with you that pluralsight would be a top pick as a developer learning how to code, considering the points you already mentioned (such as the fact that you are being taught by professionals in the industry)
Once again thanks for sharing Davor, happy coding
I'd like to think my journey officially began in high school. I took a Comp Sci class, coded in Java, and realized how useful it was. I strayed away from it for a while (like 6 years) and my passion reemerged during my last year in the military. I got out and went back to school, and I'm about 2 years out from getting my Bachelor's. If I could go back I'd definitely continue coding while I was in the military - there were so many tasks I could've automated with some simple scripts (my job was mostly computer-based).
I've got about 3 years experience; first language was Java. Currently my favorite language is Python - I find it extremely useful for many situations and particularly easy to use...I use it sometimes to solve math equations, haha.
My dad was an IT guy, so we always had computers around (old defunct ones) so I was more of a hardware kid building and taking apart computers. Got to later in high school realized what I could actually do with software. Made some small bots to buy hyped clothing. Now i'm in college learning the brick and mortar basics of programming theory and such. The hardest part for me is being in college is unlearning the bad habits of coding that I made when I was younger (but isn't that everyone with bad habits). So far i've got about 3 years of being really into programming that's not an on and off again deal.
Edit:
Oh and I use Java and Python. I first started off with Python tutorials from reddit and codecademy
Awesome, thanks for sharing Kwesi. I get jealous of people who grew up taking apart computers as kids. Must have been awesome having an IT conscious dad