Learning how to code is a daunting experience for many who have never done it. Traditional academic approaches to coding like reading books and going through courses are commonly ineffective and dropped by people who fail to get any joy from the often seemingly pointless exercises that are suggested and done within these contexts. A more successful yet less straightforward approach is to tackle the problem from a practical perspective, doing free freelance work or facing a problem that might be interesting to the person who wants to learn. However this road is not for everyone as the initial efforts are usually complicated and even moderately complicated tasks might seem too difficult for someone who is just getting started in the field of programming. Today I want to talk about a new and very interesting alternative I have found and why I believe this can be a much better path for many of you who want to learn how to code (or who want to learn how to code better and faster!).
–
–
A week ago I learned about a new website that offers a very unique free service, called codefights. I learned about this website through an article in CNN (you can read it here) where they talked about how people are getting jobs using this platform. In essence what codefights does is to provide you with coding challenges that you can carry out to gain experience points, level up, gain access to new challenges and challenge other players to compete. The website provides you with several options for coding languages, so you can choose to work on the language you want to improve or simply a language you would want to learn. Codefights provides you with no formative content – no explanations about how to do things – so all you have is a problem statement and you then need to write code to solve it.
This is a very practical approach to programming where there is nothing but self-tutoring involved. You are not given a lecture on how to program and whatever you program does not go unrewarded. This means that common exercises like programming a function that adds two integers will not be a simple pointless exercise but you will be rewarded within the “code fighting” game. You also do not need to compete against others from the get-go, if you are learning how to program you can start in the arcade instead where you can actually go through coding exercises that reinforce specific areas in programming so that you can build your programming skills from the ground up. The exercises start with a very low difficult and quickly ramp up to exercises that can be both conceptually and programatically challenging.
–
–
If you already have some experience in programming this might also be a nice experience for you and a way to polish your programming skills. For example although I have been programming in a professional setting for almost 10 years now I have never been very good at bit operations and performing the codefights exercises on this allowed me to polish these skills and get a much better grasp of this topic. If you are a seasoned programmer you will probably find something in the arcade to help you polish your skills and – even better – you might find the programming challenges and competitions very entertaining. Codefights is also ideal if you already know a programming language but you want to learn another as it will flex your programming muscles doing all the basic stuff you should learn.
When competing there are several options you can choose from. Besides challenging other players or challenging your friends – if you join through the link above you’ll be my friend in codefights and we’ll be able to challenge each other – you can also challenge company bots that help you see how you perform vs bots that try to program the same tasks in an automated manner. If you can beat bots you also get significant experience and gain batches that can enhance your codefights profile.
–
–
Another interesting point is precisely what several press articles have now pointed out, codefights is a place where companies are looking for coding talent. If you are a good coder then companies will be able to see your codefights profile and really see that you can code. These days companies are becoming a bit desperate for talented coders – since universities cannot output them fast enough – and they are therefore searching for coders in traditionally non-academic places. A university degree is no longer required if you really show that you can code, what is starting to matter is not whether someone certifies what you can do but whether you can actually do it or not. Of course if you would like to learn more about programming in trading and how you too can code your own trading strategies please consider joining Asirikuy.com, a website filled with educational videos, trading systems, development and a sound, honest and transparent approach towards automated trading.strategies.