Thursday, February 20, 2014

How to start programming?


A bit about myself:

      I did my schooling in Madurai, India. I love mathematics. In my early school days, I started solving sudoku. I also liked playing Tetris, Bomber man, Super Mario and what not. I like to compete. What’s the fun in playing Fruit Ninja without having friends to brag about our high scores?


Why I started programming?

      I felt goosebumps when a computer bot with artificial intelligence played wiser in a video game. I saw a program which could solve any Sudoku puzzle within a fraction of a second. I saw a program which could chat to me like a human. I saw a robot which could solve any rubik’s cube.  I realized that I could solve such problems by mathematics and little programming. And that’s how I started.


How can you start programming?


      Step 1: Learn a programming language. There are lots of books to learn programming. If you can’t afford a book you can use some Library. If you hate books, you can learn online through w3schools.com. The syntax and the procedures will trouble you initially. But it’s worth it.


      Step 2: Start solving some real time problems. There are many websites where you can start solving real time problems. You can start with SPOJ, ProjectEuler and MyCodeSchool.


      Step 3: After solving few basic problems you should start learning Data Structures and Algorithms which could help you solve challenging and interesting real time problems. As MyCodeSchool provides nice video tutorials, I recommend you to learn and practice there.


      Step 4: Get like-minded friends and participate in programming camps and competitions. Compete in Topcoder where all the programmers in the world take part regularly. Participate in IOI if you are in school and participate in ICPC if you are in college. Win a GOLD for our country.
Data Structures and Algorithms are very important. In addition if you want to learn Game Programming, learn openGL and keep in touch with Vector Algebra and Trigonometry. If you want to create programs which can think like humans you should learn Artificial Intelligence and Machine Learning.


In case if you love mathematics and computers, it’s neither late nor early to learn programming. Start now!.
                                                            - Prakash D(Game Developer @ Smackall Games)