Syed Musa Ali

Financial Software Analyst. Student of Actuarial Science

Read this first

Game AI Part 2: Problem Spaces

This is the second part in an series of posts on Game AI. The first post can be found here

When building AI agents that solve complex problems or play games, it helps to consider the problem in this way:

  • Consider the starting conditions of the puzzle or game as an Initial State
  • Naturally, your goal is to get the game in a certain state (or any such state that satisfies certain conditions). We’ll call these Winning States
  • Now consider a wide open space, where every point represents a game state. (You can also see this as a maze of states). We’ll call this the Problem space
  • So now solving the problem equates getting from the initial state to a winning state. Sometimes this will require you to FIND the winning state, and sometimes you’d know the exact winning state, but you’d have to figure out the path from an initial state to the winning state. This process is called the Search


Continue reading →

CV: A Tutorial


The word “CV” is so deceptively simple: Just two simple letters (they even placed together on the keyboard) and yet it embodies the main hurdle between me and starting my job hunt. I am sure a lot of you feel the same way. So I finally figured a simple (ok maybe not that simple) way to get tackle this gate keeper head-on.

The Master List of Awesomeness

Most people simply list down everything they can think about themselves. The object of a CV isn’t to throw facts at the recruiter. The object is to wow them. The recruiter has no interest in your father’s name, your date of birth, your NIC or that one time you went fishing. None of these things contribute towards convincing the company that you are a valuable addition to their team.

So the first step in making a CV isn’t compiling a list of facts about you, it’s to make a list of things that make you awesome. We will call this list...

Continue reading →

How To Make An External Hard Disk From Your Old Laptop

My laptop was recently termed unfixable, so I bought a new Desktop. My old laptop is now labeled ‘trash’, so my first thought was ‘What can I scavenge from this?’ One interesting thing I decided to do was take out the old HDD and make a portable external HDD out of it. The following is a step by step guide on how I did it and how you can do it too.

Things you will need

  1. An old laptop that you are about to throw away
  2. A 2.5 inch External Enclosure for Portable Hard Disk

My old laptop is an HP Pavilion dv6-3162. The guide assumes you have a similar laptop but the general procedure is applicable to most laptops. If you want specific instructions on how to dismantle your laptop, I suggest The second item on the list is a casing that will hold your old hard disk and provide a USB interface to it. I bought a Samsung one for Rs.500 ($5). I assume they are readily...

Continue reading →

Mentor Program

A Little About Me

Hi! I am FASTian Syed Musa Ali (09-Batch). You may or not may not have heard of me (if you have, I am flattered!). I graduated as a Bronze Medalist. I am also studying Actuarial Science formally and have completed 3.5/10 requirements for my Associateship. I am currently working as a Team Lead in Centegy Technologies (not my job title, but it is my role). We’re working on Enterprise Solutions for Takaful Insurance companies in the Middle East. It’s a product (not just a project) so one of the most important things we do is to write code with the aim that it should last. Also, it’s not just another CRUD application, it involves complex calculation engines to deal with all the business logic used by these companies. Yes, we wrote these engines from the ground up, and I was, and still am, an instrumental part of that.

I love programming, I love learning and I love...

Continue reading →

Introduction to Game AI

Ever since I was a kid, I have loved working on video games. Now, a game has many many parts to it, like:

  • Story
  • Graphics
  • Music
  • Game Mechanics (including physics)
  • Game AI (both Friendly and Hostile)

I am going to take some time and introduce you to one of my favorite parts: Game AI.

A single intelligent piece of the game (such as an enemy unit), can be considered an “AI Agent”. There really is no on definition of AI Agents, but here’s one that I like:

An intelligent agent is an entity that observes the environment and acts accordingly.

So what an Agent does, can be broken down to three fundamental steps:

  • Observe Environment (Input)
  • Come up with a response (process)
  • Act upon it (output)

For example, an AI Tic-Tac-Toe player would observe the board, select a move, and then make its mark in the selected spot.

Now most of you might think that one only has to care about the...

Continue reading →

A Little Interview Advice

People have been asking me this question recently:

I can answer all the technical questions in an interview, but how do I market myself?

If you too have this question, then first of all, I’d like to commend you for realizing that marketing yourself is an important part of the interview. Secondly, I am clearly no expert on the topic, but I would like to share some of my the techniques that got me through my job hunting times

One thing you should realize is that interviews are not simply tests. They are not just about giving correct answers to the questions asked. What they are about is making an impression. This is because the truth of the matter is that, at the end of the day, we’re all humans. So simply put, interviewers hire candidates they like. Yes one way to make them like you is to give correct answers to their technical questions, but that is not the only way. Neither is that a...

Continue reading →

The Great Start Up Plan

Everyone dreams of starting their own company. Many many people try and a huge number of them fail pretty badly. Starting one’s own company is no child’s play. It has a ton of risks associated with it and it can be sometimes difficult to rise back up after a failure. So it is best to plan for it instead of just jumping right in. Sure, side businesses are small risks and these experiments can be done anytime, but when you truly want to create your own proper company, I suggest you follow this general plan:

Phase 1: Join a Big Company

This is important on many levels. Firstly, this is a sort of safety net. An insurance of sorts. Right after graduation, you have a certain boost due to your prestigious University and this lets you relatively easily gain employment at bigger companies. The next time you go job hunting, Your boost will depend on your past employers. Think about it, your next...

Continue reading →