Never stop learning and try to extend your knowledge

My dissertation was "Intelligent Timetable Scheduling System", It was a system which auto generate a high quality timetable based on given data and time. Given data here is: list of students, courses, rooms, labs lectures, time-slots etc.. plus their constraint, for example not all student take the same course or not all room has same capacity, some lecturers are not available in some days and more, this list can go almost endless.

So, I spent one year working on this system and only wrote 300 lines of code in prolog and lisp language however, I improved massively my skills in logic programming and more important skills in finding the best solution rather than any solution. hint, timetable solution is a NP-Complete problem.

My dissertation's product compare to some other students was not something visual like a website or application which you could interact with, even I've been told by some classmates that "Hey, where is your codes, I wrote over 20,000 lines of code". Well, my product apart from some codes was few mathematics formulas in optimisation which rarely makes sense to anyone. I never thought one day I may use what I learnt unless I do PhD in this field, but I was wrong.

When I started to work at Car loan 4 U, I never thought my skills in logic programming and algorithm will be useful as the role was "application developer", but I noticed I am using my skills where I learnt them in my dissertation, when I approached to design the database, everything seem easy as I did similar task in my dissertation.

The thing I learnt from this experience was to never stop learning and try to extend my knowledge outside a narrow skill.  


Popular posts from this blog

I solved GCHQ puzzle and this is how I did it

Why I don't have social media account?

The best way to predict the future is to create it