We know AI programming can be bewildering and a bit tricky for those who have never tried it. A lot of coders hesitate to dive into the subject, which is a pity, because AI is probably one of the most exciting aspects of Computer Science. So to help you get started, we've decided to give voice to great AI programmers from the CodinGame community, and let them explain how they consider bot programming and what makes them enthusiastic about it. This blog post series will be called "AI Masters". Today, we're starting with Darren Kent, AKA Scarak.
"I think the greatest part of programming is the challenge in looking at a puzzle and finding a way to solve it. It is immensely gratifying when your code comes together and completes the task it was meant to". Darren graduated from a Bachelor in Computer Science at Dixie State University, Utah, in 2014. He has been programming for about 6 years now, but becoming a developer was not in his career path at first. The real trigger was when he took his first extra programming class at college, that lead him to discover that he loved to program. So he decided to switch to a CS degree.
Darren discovered CodinGame when he was still fairly new to programming: "CodingGame definitely gave me a fun way to become a better programmer. It made it pretty easy to jump in and get going too. The IDE was simple and easy to use and the ability to choose what language I used was awesome! I quickly became more familiar with my programming languages and then I found myself trying to reinforce the algorithms that I had learned in my classes. I am a hands on learner so being able to take those algorithms and apply them to an actual use was not only fun, but it allowed me to see how they work even more clearly."
Learning by himself, experimenting, being thrilled by results, and persevering. Passion for coding was there to stay. Darren was in the second year of his CS degree when he turned to AI. "I had just finished my AI class and I was in love with the thought that I could make a bot learn, explore, and do simple tasks." What he learned from school was never enough so he had to turn to the Internet for new ideas on AI concepts... until he tried his first AI game on CodinGame.
"The first thing I saw was the Tron Light Cycle Battles. I was excited to put my programming skills to the challenge and create a bot to combat other bots. Plus it was Tron, who doesn't love Tron Light Cycles?" he jokes. Even though it was his first time coding on a competitive level, he started to be obsessive with the competition, finding himself checking his scores hourly and constantly trying to improve his code.
The hardest part in AI is probably doing the first step in uncharted territory. Darren's advice to beginners would be: "Just jump in and try it. There is nothing to lose, so there is nothing to fear. I would start with the most basic of AI you can come up with. Even if it is just moving the bot around the game board, that is great. From there, just add a bit more and more based on the challenge. At first don't worry about your score, just do your best. If you have extra time do some research and find some algorithms you want to try and improve your bot with. In between AI competitions I highly recommend doing the single player puzzles. They will help you hone your skills and give you a fun environment to do it in."