Announcing the Facebook 2011 Hacker Cup
facebook.com
facebook.com
"Lol... what?" "May as well call this site HACKBOOK! IT'S ALL GARBAGE NOW!" "This is freaking scary coz pipol will be able to hack into any fb ccount they want to. This is crack..."
Let's not forget that we all live inside a cozy little bubble where some level of intelligence and familiarity with technology can be assumed.
"I see 'hack' everywhere: 'Hack,'" Stahl pointed out. "It has a negative connotation, doesn't it?"
"When we say hacker, there's this whole definition that engineers have for themselves, where it's very much a compliment when you call someone a hacker, where to hack something means to build something very quickly, right? In one night, you can sit down and you could churn out a lot of code, and at the end, you have a product," Zuckerberg explained.
I wish I could write code without consequences during maintenance stage :(
I don't feel strongly with the presence of the word hack in the same line with engineering. They just don't gel.
I rarely and hardly seen any engineers pulling one-nighter writing code with lack of automation tests. I see a lot of young hackers do that.
I would strongly suggest the downvoters go to InfoQ.com and search for Aditya's presentation regarding Facebook engineering to understand the issues arise for having a "hacker" culture.
And I'm telling you the fact that Facebook albums have had UI bugs; they frequently re-appear after what I felt is a re-deploy of their updates/newer versions of the website
Back button doesn't necessarily work sometime
One can see other people pictures but can't see their album (can't click the "photo" link but can click the photo in their profile page)
On iPhone, often one can't see "more..." pictures.
When I say those bugs in Facebook albums are exceptions, I truly mean it. Facebook can have buggy code yet they probably won't get penalized by their user. None of their user fled for other social networking sites.
1) ajax errors, packets get dropped, it is going to happen
2) single server instances that somehow didn't get updated. Again, if you think of the number of servers they are running, and the update process across multiple datacenters, I'm sure it is entirely possible that one or two servers take longer to update, or something gets missed and isn't recognized until a later update.
I don't think we can call the fb code 'buggy'. Their ability to scale and manage the volume of data along with how quickly they are constantly making major updates to their entire system is mind boggling. To me anyway, but I'm sure you are a much better programmer than I am.
Hackathons are great for prototyping ideas/products/proof of concepts. Engineering is essential for building large/stable/scalable systems. Clearly Facebook is good at both.
I like to think of myself as both a hacker and an engineer. Neither word describes what I do completely.
But the message from the parent here is that it's cool to build a product by pulling one-nighter. (And we all know that's the culture in Facebook).
The same theme again and again that sort of... screw our industry as a whole: romanticizing the notion of hacker.
On the other hand, I don't think FB Chat was written in one-night.
I mentioned this to a few friends who laughed at the idea of working at Facebook. Not so funny now, eh?
My friends and I were like, nah, another silly gaming company. Now their cap is almost equal to EA.
The beauty of the valley that every 5 years the landscape changes and roles reverse.
Be nice to other people, your fellow engineers, your employees if you are a manager, as they might be your boss in few years.
Something that I am learning myself, live and learn.
I wonder how fb engineers hired (c) 2005 are doing.
To expand on this, I don't think winning a multi-round programming competition (that is, successfully solving multiple algorithm-based problem statements under a time constraint with the highest accuracy and speed) is the best indicator of a good hire.
That seems to most closely approximate real-world programming problems.
Having a strong and well organized team is huge. You'll learn a lot about your teammates in the process, both behaviorally and technically. However, I've had to go solo the last two years and still enjoyed it immensely - it just changes how you prioritize some of the development.
"Yes a compile error! Now to take a shot. WTF? Where's my shot? I was promised liquor!"
"Hey don't distract me, I'm connected to the grid." "Sir the competition is over, please leave the facility." "I said I'm hooked in!"
"3rd place‽ It's because you never got into Finals Zack, isn't it?"
Similarities:
1. Annual algorithmic competitions.
2. Various online elimination rounds.
3. World finals at headquarters.
4. Prizes: 1st place = $5000 USD, 2nd place = 2000$ USD, 3rd place for $1000 USD and $100 for 4th through 25th place.