Recently, I have been actively participating and competing in Facebook Hacker Cup 2011. Never did I realized, these little bits and pieces of what I am doing at Facebook Hacker Cup, did taught me more than I could even imagined. These things I learnt, isn’t something obvious in the naked eye, definitely.
Learning is a process. Process is a cycle. Cycle is a loop. Loop is infinity.
Hence, LEARNING is INFINITY
In Facebook Hacker Cup, I compete with people around the world solving algorithmic problems using programming to come up with an ideal solution. Through these, I learnt to compete in a more stressful environment instead of the usual comfort zone which is “stress free“. Everything is about speed, time, efficiency and optimizations.
I learnt to battle against time, against speed, and eventually solving the algorithm with the most optimized speed and efficiency. All this while as a developer, I realized I have always been the “norm”, and not the extraordinary. I have met the extraordinaries.
Norm, is just any average / above average NORMAL developer. Someone who can develop applications, but are just the normal type. They can develop, it’s not that they can’t, but it takes time.
Extraordinary, doesn’t mean ‘GOD-LIKE’. It just mean they are much faster in thinking and solving algorithmic problem sets with a brisk. Developing an application to them may just be like reading a book.
These guys challenged more than just speed, but efficiency and more importantly, the correct and ideal solution. Yeah of course, these guys out there aren’t the usual guys we see day in day out. These guys EAT, SLEEP, DRINK, BREATHE, SPEAK technology and algorithms. Definitely, they are more than just computer science students, there are those whom are from industries and so on.
“I have not failed. I’ve just found 10,000 ways that won’t work.” – Thomas Edison
Today, or at least till now, I feel so much achievement along the way. Working an Industry Project as my Major Project with Hitachi, I have achieved way more than I ever thought I could accomplish. First, I started learning Ruby, then I started building the entire framework from scratch, and today, I have completed a dynamic search to accept multiple queries and at the same time optimizing the speed and efficiency.
Non-developers ask, “What for (do we need that feature for)?“.
Developers reply, “Why not?“.
It’s always that difference that keeps the world go round and because of that difference sets you and me apart uniquely.
Yup, it may not be that “dynamic” as compared to Google, Bing, or any others you may have thought of. And yes, it’s not the world’s most advanced piece of technology created nor the most powerful search yet.
But, along the way, these bits and pieces I never imagined building, I never imagined achieving, I ACHIEVED it today.
YOU CAN DO IT TOO!
It’s a matter of time.
I believe every individual is unique in their own way and they need just someone or something to trigger that skill or talent. Some takes time to learn, while some could easily understand without much effort.
Indeed, Facebook did drive that challenging spirit in me. It drove the passion for algorithms and solving these algorithmic problems.
I will do my best to post the Facebook Hacker Cup 2011 problem statements up soon, and hopefully the solution as well.