How did I learn to program, looking back about nine years. My recommendations.

in #programming7 years ago

img

I have installed Visual Studio about nine years ago, I was ten at the time. I did it because I wanted to make games, I always loved computer games and I always had many ideas for games. I was mainly playing Runescape at the time, so I wanted to make something that was online.

After I installed Visual Studio, my beloved VS2010, I was obviously overwhelmed. I chose c# as my main language, because I really did not like the concept of Visual Basic at the time and I feel like c# is the better and more used language today. Luckily, I have found some c# game development tutorials and I managed to make a snake game, although I do not consider this my first game, because it was not my own game.

My own game was very simple, you had a spaceship, there was an enemy on the other side and you had to shoot him down. This was good, I have got the basics down. I do not remember how long exactly it took me to get to this point, but I think it was somewhere between six and nine months to get here.

The next big hurtle to overcome was my English, because the resources in Czech back then were way worse that it is today and it is not that good today either. I really enjoyed some TV shows which were airing back then so I started watching them in English and I was able to get my English to about the level it is today only thanks to the internet.

Simultaneously, I worked on a mobile game for windows phone 7, back then the platform looked promising, the game was situated in space, it was 2D and it let you sort of build your ship, however I never released the game, because it was too demanding and the single core CPUs just could not keep up.

Instead it turned into AI Infinite, essentially a 2D version of space engineers for PC, though I was working on it a long time before space engineers got released. It was a great challenge, because the game let you create multiple worlds and saves, the worlds were all randomly generated and virtually endless, the further you went the harder the game got, there were bosses, quests and much more. This project took me over two and half years to finish and get it released. I would guess that there may still be some bugs, but because XNA and C# were both discontinued I do not really have a good way of actually polishing the game today without rewriting the whole game and engine. This project, even thou it was very big and for a 14 year old, still very novice, developer certainly very overwhelming forced me to learn many thing from math to engine design and development and even some basics of AI development, although AI in AI Infinite was ironically very crude and I would even say poorly written, but it worked.

I took what I learned and moved onto Unity3D to learn about 3D, because at that time, early 2015, if I remember correctly, XNA was beyond dead and monogame was there, but it had some issues and content pipeline was not really finished. I still work with Unity3D today and I made couple semi-successful games which are available on App store.

I also recently got into blockchain development and made a simple ethereum dapp called Dogtags or Ethtags, which lets you attach a short text and name to your address.

Summary/TLDR

This is how I became a relatively good developer. It took a great amount of work and googling, however today I am fully able to pick up essentially any language and be able to work with it in a week, this obviously has exceptions. My advice to all new developer is to find a project that you will be passionate about and just work on it and love it. I can guarantee, that you will most certainly become relatively good developer in a relatively short amount of time, because you will really enjoy it. I can also recommend youtube tutorials, because they are free and if they are good you can learn a lot from them.