Does the language you begin with really matter?
When I was a kid I found computers to be fascinating. I would come home from school every day and hop onto the computer when my older sister was not using it. My favorite thing to do as a kid was to hack games. My friends back in middle school called me the hacker, they saw me manipulate my rank in call of duty modern warfare 2 to 10th prestige the second week the game was out. I enjoyed creating bots for Runescape that would automatically do menial and monotonous tasks for me so I could go to school and have my character leveling up while I’m learning about the crusades. Little did I know that all of this experience building small programs to cheat in games would lead me to be a Software Engineer at IBM. And little did I know that writing a small bot to kill chickens in Runescape with Java would provide me a base to become the product owner for one of IBM’s many internal applications which just happens to be written in Java.
But was it really just this one language that (has so far) led me to be successful?
Let’s look at what other languages I have developed in (in the order I learned them)
Visual Basic:
I learned Visual Basic as a sophomore in highschool. It was a class with 5 people in total and I absolutely loved it. Apart from the class projects my first self-directed “project” was a calculator interface, much like the one you can use right now on Windows
Javascript/HTML/CSS:
I picked these up easily Freshman year. I built a click through game with my partner. It was abysmal, but I received an A in the class. 4 years later I’m writing production websites for IBM internal use to track employee statistics. I was given an award from my Vice President for innovation for this website.
Python:
A few years ago I dabbled with python and google maps api. As an intern at IBM I was assigned to learn how to create a mobile app to aggregate employee data. I needed a quick way to gather results from Google Maps, so I wrote a python script to gather location data for the geographic latitude and longitude for all of IBM’s major cities we are in. With this data I was able to generate a map with points on it showing the number of employees located in each city. (Don’t worry we are not tracking where a employee currently is, rather their primary work location)
PHP: I found this language to be a bit dull. Even though Facebook runs using PHP I didn’t like the way variables were set and some of the syntax threw me off. Luckily I had only one semester of PHP where I created a website with my partner of a mock class registration system for Marist students.
Java: One of my favorite languages. I learned this in college and have since used it to teach students how to mod Minecraft. My current job role revolves around a lot of Java code, which I am really enjoying.
Swift: What a fantastic language. Unwrapping objects used to be a hatred of mine, but I appreciate that functionality so much now. I used swift to create a iOS app for iPhones managed by IBM.
Do I have a preference for which language I use? Yes, but I would say that the first language you learn has little to no significance on where you go from there. Once I had the core concepts down, I felt like any language was just different syntax and methods. Once I understood visual basic it was easy to transfer that knowledge into other languages.
From creating hacks for multiplayer games as a kid to programming at IBM. Don’t let picking the language be a stopping point. Pick one and you will learn to adapt to any language in any environment.
But really, pick Java ;)