3 Tips For a Beginner Programmer Changing Languages

Bret Gibson
4 min readMar 19, 2020

I will preface this blog by saying that these tips will be coming from the perspective of someone who is still very much a beginner programmer. A person with years and years of experience in the field might disagree, but I feel like since these tips helped me as a newbie, they will be able to help others in my shoes.

When I decided I wanted to learn to program, I didn’t know what language to pick, so I just stuck with one of the languages I had already heard of, which was Java. After learning on my own for a while, I decided to take my learning more seriously and have entered a program that teaches Ruby. For me, the early growing pains were a bit tough, so I thought it would be helpful to share a few tips that might help others when switching to a new language.

  1. The ABCs

Now, this is likely an acronym that you have been told or read on your journey learning to code, but if you haven’t come across it before, “ABC” stands for “Always Be Coding”. I know it sounds very basic and maybe like a cop-out, but this may be one of the most important ideas about learning just about anything related to programming. When it comes down to it, there really is only so much reading and watching tutorials one can do before taking things into practice. Practice is where everything starts to come together. For me, in the very beginning, going from a lower level language like Java to a higher level language in Ruby, just the basic syntax was hard for me to transition to. Something as simple as not having to specify the data type of each variable when it is declared like:

int num = 3;
String hello = "Hello!";
float dollars = 5.00;

and instead simply like:

num = 3
hello = 'Hello!'
dollars = 5.00

actually felt unnatural, and I definitely caused a few issues with some Ruby programs by typing out variables in the way I was previously used to. Now, this is a very very basic example, but just know that if you are at least doing a little bit of coding each day, you will break out of the muscle memory you have in regards to the other language and will start making less mistakes.

2. Pseudocode!

It always helps to have a starting point — when tackling a problem in any coding language, it is a good idea to pseudocode out the steps you think will need to be taken in order to obtain your desired result. The good thing about pseudocoding is that it can be language-independent!

So, when picking up a new language, it helped me a lot to pseudocode out the problem at a high level to make sure that I, at the very least, had a basic outline of what needed to be done that could be understood by anyone.

This is extremely helpful when learning a new language because instead of looking at the task and immediately contemplating all the ways you could accomplish it in your new language, you now already have it broken down to smaller, more digestible chunks. As one part of a program tends to build on others, starting with the easier problems first might be better for you to be able to build up to the more challenging aspects of a new language for you.

3. Think about how you might solve a problem in the language you are already familiar with, then try to translate to the language you are learning

This tip slightly relates to the tip before about pseudocoding in regards to thinking through the problem beforehand. However, it is different in that here; I am talking about actually writing out the code in your old language first, and then converting it to the new language once you get things working.

Being able to look at code, pull out the meaning from each part, and translate it to the new language will significantly increase your knowledge of both languages and honestly will likely solidify general programming concepts as a whole.

For example, when we were learning how to set up classes in Ruby, and I saw the initialize instance method, I immediately went: “Hmmm, this looks a lot like the class constructors I’ve learned about in Java”. I went home that night and wrote out a basic java class and then translated it to how it would be done in Ruby. After I got both files working, I was able to really bring home the concept of how to construct — or should I now say — initialize objects in Ruby, and I also felt like I had a better grasp on object oriented programming as a whole.

And that’s all! Hopefully these three tips helped to give you some things to think about if you have been considering learning another language and have been scared to get started!

--

--