The tl; dr version
- Theory of Artificial Intelligence
- C++ (No programmer should start without learning programming in C++)
- One Modern Programming language with a large support community (Maybe Python)
- Mathematics (statistics, matrices, probability and equations)
- Subject Area of Interest (this is completely your choice)
The longer version
- Understand and read the theory of AI before you venture.
- Analysis and Design of Algorithms (an important skill to make efficient algorithms – optional)
- Learn programming in C++ so that you understand the basics of structural program flow and object oriented programming. C++ is essentially used in the market even today because it is very fast and processor friendly. Speed is crucial in AI solutions and while not important to use it each time, programming in C++ is a skill.
- Learn one modern programming language, like Python, Ruby, Perl (not sure how modern Perl is?) because it is crucial to solve your AI problems without being frustrated with the syntax and verbose grammar of older languages (programs get bigger, trust me)
- Do not use built-in functions as far as possible unless you are planning to publish the code so that you can understand and work with the idea of how the function works.
- Mathematics is crucial for AI problems. One must know how to solve equations (not limited to single variable), know manipulations of matrices, integration, differentiation, probability, statistics. It all comes in need when you have to solve a certain problem. AI in simple words is finding mathematical relationships and equations (not always) for real-life problems and emulating them on a computer-based system.
- Find a subject area of interest. Understand the nuances and the logic behind ever step undertaken. If you have to make your system intelligent in a particular application, you should know the subtleties of the application yourself. Otherwise, there is a lot of error in your design logic and Algorithm.