Q. CodeChef: When did you start coding and how did you learn?
Vivek Hamirwasia: I was introduced to programming in my 11th std as a part of the curriculum. I learned basic C++ syntax and semantics along with few simple algorithms like sorting, searching etc and basic data structures like stack and queues during this period.
Pulkit Goel: I qualified for the IOI training camp and got to know about competitive programming from there. I didn’t practice much until I started college. I learnt by practicing on various online judges.
Q. CodeChef: Could you name and share your first programming contest experience?
Vivek Hamirwasia: Interestingly, my first programming contest experience was when CodeChef visited IIIT Hyderabad in 2010 to hold an internal contest. I was at once drawn to the concept of solving problems under time pressure. I was delighted to be able to solve one out of the three problems in that contest, and that marked the start of my journey to become a serious competitive programmer.
Pulkit Goel: My first contest was INOI-2009. I didn’t know anything about algorithms at that time. The first question in the contest, was to count the minimum number of adjacent swaps to sort an array. I guessed that the minimum would occur if I sorted the array normally, using bubble sort, as taught in school. This contest didn’t have a portal, and all submissions were to be zipped and sent to the organizer. Finally when the list of qualifiers was released, I wasn’t on the list. But later I found out that this was because my code wasn’t compiling because of a spurious ‘]’ in it. It turned out that on removing that brace, my code compiled and worked fine. So then I was added to the list of qualifiers 🙂
Q. CodeChef: How often do you code on any given day & weekend?
Vivek Hamirwasia: On an average, I code around 2-3 hours on any given day. Since most of the online contests are scheduled on weekends, the average goes up to 7 hours on weekends.
Pulkit Goel: I don’t have a fixed amount of time that I spend on coding. I just do it when I feel like.
Q. CodeChef: What was the biggest hurdle on your road to where you are today?
Vivek Hamirwasia: The biggest hurdle was when my abilities had saturated to a certain point and I found it hard to improve further. I realized I could do easy-medium problems with ease but never the hard ones. I realized there had to be some sort of “activation energy” required for me to take the leap to the next level. Overcoming this phase required identification of my weak areas and spending hours to learn harder techniques. Turns out my greatest weakness was just the lack of patience.
Pulkit Goel: I guess awareness was the biggest hurdle. Maybe if I had known about competitive programming before, I could have been better at it.
Q. CodeChef: What do you think biggest mistake competitive programmers make?
Vivek Hamirwasia: This is related to the previous answer. The biggest mistake that I’ve observed many competitive programmers make is that they do not consciously try to improve after a certain level. They end up solving easy-medium problems very fast but have no idea on how to tackle the hard ones. As a result, their abilities reach a stand-still and they do not grow up the ladder. Many want immediate results and do not have the patience to spend some weeks grasping new ideas and implementing the same.
Pulkit Goel: I don’t think there’s a specific mistake. Everyone makes different kinds of mistakes. The point of practice is to reduce the rate at which these mistakes occur.
Q. CodeChef: What programming language do you use and why?
Vivek Hamirwasia: I use C++ because it encompasses the best of speed and easy of coding. The STL library is extremely useful for competitive programming. Moreover, I am quite comfortable with it since it was the first programming language I ever learned.
Pulkit Goel: C++. I’ve just gotten very used to it.
Q. CodeChef: What advice do you have for other competitive programmers?
Vivek Hamirwasia: There is no single advice that can apply to all competitive programmers. I think it is important for one to identify one’s own weak areas and improve upon them. I have found reading and understanding the editorials of problems followed by implementing them itself an effective tool to improving performance considerably.
Pulkit Goel: I guess you should do contests for fun and leave it as soon as you find that it’s a burden.
Q. CodeChef: What do you like the most about CodeChef? And what would you don’t like in it?
Vivek Hamirwasia: CodeChef has selflessly uplifted the competitive programming performance of the country by frequent contests and awareness campaigns. It has grown into a platform recognized by the greatest competitive programmers in the world. I cannot thank CodeChef enough for all the experience it has provided me with its numerous quality contests and events. It would be great if CodeChef could change the design and color of the Tshirts given for long and short contests. 😛
Pulkit Goel: It was the first online contest platform that I participated in. I like that I get 10 days to think about the problems, and I can think of them whenever I feel like. Most of the hard techniques that I’ve learnt, were in CodeChef long contests. There’s nothing specific that I don’t like. Maybe the t-shirt design has gotten really old and needs to be changed. 😛
Q. CodeChef: What factors do you believe help you win?
Vivek Hamirwasia: I believe my team name being believe_iiith would definitely help us win. 😀
Pulkit Goel: Practice and a bit of luck.
Q. CodeChef: What motivates you to compete?
Vivek Hamirwasia: I have been an obsessed competitive programmer for quite some time now. It is safe to say my motivation lies with seeing the green tick on getting a solution accepted. 😉
Pulkit Goel: The thrill of getting an accepted on hard problems.
Q. CodeChef: Where do you see yourself 5 years down the line?
Vivek Hamirwasia: As a child, I have always dreamed about contributing something significant to the world and I see myself making that very contribution 5 years down the line. I don’t have any idea what the contribution would be or how I would do it but if I had to take a guess, it would most likely be me starting up a company.
Pulkit Goel: I haven’t really thought about this, but I guess I would be working in some company, or if I’m lucky enough to get an idea, on a startup.
That, ladies & gentlemen is Team Believe to you. We thoroughly enjoyed their responses and hope you did too.
We will be back soon, so keep watching this space.