A couple of things before I begin. One, a reality check. Learning to code is not easy. Some people can pick it up fast. They are just naturals and knock it out of the park without even breaking a sweat. Those types end up YouTube giving lessons and asking you to smash their subscription button. For most of us mere mortals, it is going to a long and torturous slog, with tears and despair. Two, this is not me going to tell what is the best code language in the world. To put it simply, I don't know and don't care. All this is just my experience of how I came to choose the code language that I am learning. The rest, as they say, is up to you.
My first attempt at learning to code did not end well. At the time, I was working at a company that used C# for their development. I tried to learn that language. I was fortunate to be surrounded by a support group of outstanding developers who I got on with really well, and they did take time out of their busy work schedules to offer help. Even with their gracious help, it was just too hard for me. I made the number one mistake of jumping in the deep end. I became a disillusioned very quickly, and my impatience nature kicked into overdrive. My learning tallied off and ground to a halt. I am very prone to self defeatism when it comes to education. It is something that I am always having to battle. I admire people who seem to enjoy learning complicated things. I wish I could.
My situation has changed now, and I no longer have the luxury of work colleagues to show me their coding tricks. I asked on a forum about what language I should pick. I should not have done this. It resulted in people reeling off their favourite language and why it was so great. Don't get me wrong, suggestions can inform your final decision, in my experience, and I just drowned in the information. I decided that I should think about why I want to learn code; this I thought might help me chose.
The first question I asked myself was, "What Do I Want To Do?". My list was quite small. In no order of preference, what I want to do is.
I want to do is be able to create tools to make my testing more efficient.
I want to be able to write simple but effective assertions so I can automate essential tests.
I want to be able to understand a developers’ code so I can see what they are doing.
I keep this list handy as I need to keep reminding myself why I am going through this. Promises, you will have to keep looking at your list. I made a shortlist of languages; again, this from an internet search of what was the most popular language at the moment. I would suggest not to look at too many of these lists. I did and found myself getting lost again. Like asking people, you tend to get a lot of lists with languages at different levels of popularity. They did this poll on Tuesday, and C# is popular, tomorrow it will be Javascript. Type "Industry Popular Software Languages" into your favourite internet search engine, sort the results by date, and pick the list.
I then selected the top three/four. I then made another mistake. I went and looked at the pro and cons of each of my choices. Once again, I ended up drowning in information. I decided just to go and look at examples of code and see how they seemed to me. Github and Stackoverflow are great places to see people coding in different languages, though again, a word of warning you can quickly disappear down a rabbit warren so be diligent. I decided to choose my code language based on if I could understand the flow of the code the easiest.
My choice is Python. I am still getting the "Oh, you are learning to code..you should learn...." I am choosing to ignore this at the moment, politely, of course. I have picked my code bed, and I am going to lie in it.
Whatever code language you settle on good luck and stick with it. I know that you are thinking "That's easy for him to say", but I can assure you as you read this I am probably holding my head in my hands weeping at my overcomplicated answer to a code challenge, in no way resembles the elegant proper solution.
Comments
Post a Comment