Life Of Navin

Random Musings, Random Bullshit.


To Hack Or Not To Hack?

Another weekend, another hackathon attended. But again, as has become common with the last few ones I've been to, something felt wrong. It's difficult to say what exactly, but something definitely felt off. End of the day, I returned home halfway through the hackathon, following my gut (or rather my team's gut), as always.

For those who don't know, a hackathon is an event where teams of coders developers hackers* sit for periods ranging from 12-48 hours and work on coding something cool from scratch. Hackathons are awesome, because they present a good way to test how well you can apply what you know in a small timeframe. The word hack itself, which today unfortunately generates a negative connotation, actually implies "an appropriate application of ingenuity".

your typical hackathon... hoodies + laptop stickers included

I've been participating in different hackathons for about 4 years now, and have been lucky enough to have been part of some of the best hackathons in the country. Especially over the last 8-10 months, we (Myself, Baka, Bhatta and CEO ... You either know them or you don't :P) have been super active on the Bangalore hackathon scene, having won quite a few big shot hackathons as well. In fact, IIIT-Bangalore (my M.Tech college) students are extremely active on the scene, and you'd be hard pressed to find a hackathon with zero representation from there.

In theory, hackathons have an unlimited upside:
  • You get to meet tonnes of like-minded people (Even in Bangalore, this is hard!)
  • You have a hard timeline (As a fresh graduate, I still suck at  doing things without timelines)
  • You get to work with cool stuff that interests you (Enuf said)
  • You get ideas/yourself validated (Judges are usually the who's who of the tech world)
  • Free food!! (Having to pay for stuff still feels weird :P)
  • And if you're looking for it, hackathons are a great place to find a job as well! 
...or is it?

Then what's wrong? Why that bad taste in the mouth in recent times. Well, I think it comes down to the following:

I am NOT here to do YOUR job
Picture this scene. Rising startup which aims to disrupt industry X raises capital. Couple weeks later, they have a hackathon, where the problem statements are very specific niches of industry X. While the team spends time mentoring participants, the actual participants do everything from design to coding. At the end, startup announces winners, but stakes claim to all the IP created during the hackathon. Winners walk away with T-shirts and the equivalent of a week of pay. Others walk away having coded for free. This sounds funny, but I could think of at least 2 hackathons that had the exact same terms (down to the T-shirts). In fact at one hackathon, I was requested by a senior developer to not use a NoSQL database for my hack because that's not what they use!

Mentoring session in progress!
Hackathons, Hackathons, Everywhere! 
One of the early hackathons I attended was Yahoo! OpenHack. And I must say, I have fond memories of the event. The grand scale, the quality of the hacks, the exclusivity, the bean bags (every participant walked away with a bean bag), everything. Once the event got over, you waited an entire year for an event like that. Nowadays though, hackathons have gotten extremely commercialized. You have entire companies centered around running hackathons on behalf of other companies (and a league as well for some reason). It's not odd to have multiple hackathons every weekend, differentiated only by the toppings on the pizza they serve for dinner. This has taken away from the actual spirit of hackathons because it's no longer about getting something done. In fact I overheard someone say recently "We can code at the hackathon next weekend, we should network this weekend"... Sigh. Not only do we have more hackathons than can be handled, but the prize money at stake has also grown exponentially. And we know what happens when that happens...

You tell em, Greek dude!
Cheater, Cheater, Pumpkin Eater 
Maybe it's just me, but the beauty of a hackathon hack is that you start with a completely clean slate and code something fun over the course of the hackathon. That something may involve simply bringing together different APIs, or figuring out a nice way to visualise stuff, or something more in depth. Sadly, as time goes on, I seem to be going into a stark minority. It's not an odd sight for people to show up to hackathons with complete running applications, which are then simply demoed at the end of the hackathon. Heck, I've even seen the exact same application being demoed (and winning!) at multiple hackathons by the same team. I'll give you an example of a recent hackathon I went to **. The Runner up team had a nice web app, where they took in some inputs, performed some magic(tm), and came out with some output. The output seemed too good to be true, which usually implies it is. Turns out, their output page was completely hardcoded. It didn't depend at all on the input. They got past this limitation during the demo by providing the only valid input which would generate the output page they had written. Given the format of the demo (3 minutes for demo + 1 minute for questions), no one realised this. And these guys are still not the worst offenders. The team that won had actually submitted the exact same app, with the exact same name, to another offline hackathon a week before this hackathon, and won there as well. And these guys are still not in the all-time hackathon offenders hall of fame. I know a team who has demoed the same application with the same name and the same story (the pitch, if you will) at at least 5 hackathons, and won prizes in at least 4 of them. This is definitely not what I signed up for and goes completely against the hacker spirit.

Pizza + Redbull + Coffee + Pizza =/= 10x Developer 
The first time I went to a hackathon, I was amazed at the fact there was free pizza and redbull... and unlimited coffee! What more could a code monkey ask for? And then it happened again, and again, and again. Until at one point, you simply realise that this may not be a way to live, let alone a way to live healthy. As time goes on, I seem to understand more and more what people mean by the term: healthy lifestyle. Sure, it sounds like an old fart trying to tell young people that it's wrong to "live fast and die young" or to "get rich or die trying" or the quintessential "YOLO", but after a point you really need a break. Maybe this ties back into the point of commercialization of hackathons, but attending too many of these things at a stretch can take a serious toll on your body. For sure, I enjoy nightouts spent coding, leaving aside all your worries for for a while, just as much as the next guy (what do you mean by go to bed?), but I'd much rather learn to respect by body before it decides to show me why I should!

Typical scenes 18-20 hours into a hackathon

Hackathons in Bangalore have a stirring resemblance to the EDM festivals in Goa in the sense that what started out as a bunch of people simply geeking out has today become a massive industry, and brought along with it lots of unwanted elements. How do we keep these elements out? I'm honestly not sure. I'm not even sure if we should keep these elements out, as this is what defines hackathons now. Perhaps there will soon be a indie scene for hackers to meet up and hack at. Or perhaps the only option left now is to hack the hackathon itself. But until something overtly dramatic happens, I can confidently say, we live to hack another day... maybe just not at this hackathon! :)

* hackers = Again, simply someone who associates himself/herself with the hacker culture, which does not mean they can gain access to your Facebook account
** No names because many of the people involved happen to be friends on the hackathon circuit. Kept details scant to avoid identifying traits.

The Bucket List Again

A couple of years ago, I made a semester bucket list, which listed things I wanted to do in the six months that the semester was made up of. I managed to get through quite a few things, but probably could have done a little better. I'd all but forgotten about the post until it popped up in a random google search (oh, glory!), and I must admit, it was cool to see how the semester had gone down, so many years down the line. Since we're in the very early part of the new year, I think it's about time for a reboot of the post, almost half a decade on. The same rules as the last time*, and a similar mix of some very doable, some not so doable and some near impossible items in my list. And this time, the timeline is not a semester, but an entire year! So here goes.... my bucket list for 2016:

  1. Cxn tzvw nf nox ixzapec oztpn. Ixza zn yxzqn 20 tffwq.
  2. Kpe zn yxzqn 2 ozvwznofeq.
  3. Zvnuzyys cifw visgnfcizgos vfevxgnq
  4. Ueaxiqnzea zea prgyxrxen RY/ZEE vfevxgnq zea gyzs kpno bizrxkfiwq
  5. Yxzie z exk gifcizrrpec yzecuzcx bifr qviznvo
  6. Qnzin kfiwpec fun ztq
  7. Iue 15 Wrq kpnofun qnfggpec
  8. Kipnx zn yxzqn 15 tyfc gfqnq nopq sxzi
  9. Gixqxen zn z vfebxixevx
  10. Cf fe zn yxzqn 3 kpyaypbx nixwq
  11. Jpqpn zn yxzqn 3 bfixpce vfuenipxq
  12. Yxzie nf gyzs nox cupnzi
  13. Vfrgfqx zn yxzqn fex qfec
  14. Fgxe qfuivx zn yxzqn 2 gxiqfezy gifdxvnq.
  15. Vfeniptunx nf zn yxzqn 2 fgxe qfuivx gifdxvnq
  16. Yzuevo z gifauvn nf nox gutypv.
  17. Yxzie tzqpv vfejxiqznpfeq pe z bfixpce yzecuzcx
  18. Penifauvx Zivozez nf nox bzrpys
  19. Znnxea z vfqgyzs xjxen pe vfqnurx
  20. Cxn tzew tzyzevx nf 10Y
... and that's that. Wish me luck. I know I'll be needing lots of it for quite a few of these! :)

* items on the bucket list are all encrypted**. Decryption happens when the task has been completed successfully.

** encrypted with a slightly less laughable (albeit still ridiculously simple) encryption scheme than last time around! :P

Solivagant Fernweh

... and I'm off! :D

Network effects and social media

Wikipedia defines Network effect as:
[...] the effect that one user of a good or service has on the value of that product to other people. When a network effect is present, the value of a product or service is dependent on the number of others using it.
What this basically means is that a network becomes more valuable to each individual user when the overall number of users of the network increases.

Unfortunately, for social networks, there tends to be a disturbing trend of having signal to noise ratio diminish almost exponentially when the number of people using it increases. The fact that most networks these days follow the "acquire them first, charge them later" strategy of expansion, makes it almost impossible to stick with a social network past it's nascent growth stage.

I personally have seen this effect in action quite a few times over the last few years.

Twitter: I was one of the early Indian community users on twitter and have fond memories of the close-knit nature of the network. There used to be a time when Twitter was actually seen as a voice of change. Today, twitter is reduced to an unedited stream of constant, random banter. The fact that news channels make use of snippets from Twitter has led to an army of loud noises, most of whom use twitter to blow steam rather than have a discussion, which is what I always saw Twitter as. The amount of vitriol on Twitter is toxic. The irony is that the quality of stuff has degraded on Twitter even though the number of people I follow has not really risen by much. Voices of reason are now replaced with comments of fanaticism, life experiences are replaced with silly oneliners. Sigh.

Facebook: I never really have been a fan of Facebook, even having quit the site for some time, and never really having completely gotten back to it since then. I'm much more of a commenter on the site than a sharer (My last status update, if they're still called that, dates back to mid 2012), except for some college groups. Facebook has never really helped me "stay in touch" or "get in contact" with people. Maybe I'm using it wrong, but I honestly prefer just using mail or phone or in-person meetings. Facebook has always had a content problem, and it's personalisation seems targeted to depress people. As the quote goes:
The problem with Facebook is we compare everyone’s highlight reel to our behind-the-scenes
My mentor at Dreamworks had warned that Facebook goes through 2 major events. All your friends getting married (followed by their honeymoons), followed 2-3 years later by baby pics. I laughed at this back then, but my current Facebook feed is eerily flooded by the former.

HackerNews: OK, I admit, I'm a HN addict. I just can't get enough of the site. I use hckrnews as a proxy to ensure I get only the best content on the site, and I'm pretty blown away by the quality of stuff that makes it to the homepage. But if I ever visit the actual discussion on the actual HN site, there's so much elitism on there. The problem I see with HN is a trend that's disturbing amongst developers and the tech community at large: Pointing out fault in everything. Doesn't matter if it's a hobby project or something that someone spent the last 3 years of his/her life on. The moment it hits HN, there will be a upsurge of "That's stupid" or "That would never work" type of comments, usually addressing a completely different context than the original post. Just see the comments Dropbox got on it's launch. And then we wonder why the tech community doesn't have a more diverse community. Baah. I've been blessed to have some amazing people mentor me directly and indirectly over the years I've played with computer systems, and I can promise that this attitude problem with the tech community at large would lead to disaster if not fixed ASAP.
Everyone on HN... All the time
Quora: The biggest offender of the lot. Oh Quora, my Quora, why did you abandon me so? Quora's biggest USP was the quality of content on the site. And then one day, Quora decided to make questions free to ask. Boom. Headshot to Quora post quality. The day I knew Quora was, for all practical purposes, dead, was the day I was A2A "If Pakistan kidnaps Sachin Tendulkar, what will India Government's response be?". Personally for me, Quora has 2 problems: Firstly, Quora content has taken a turn from the factual to the experiential: "How did China become a dominant manufacturing hub?" is replaced with "How does it feel knowing your phone was made by child labourers in China?" and so on. Experiential content is very subjective. For eg. I love some of the answers given by the San Quentin inmates, as it helps me understand the mindset of people whom society considers dangerous, but honestly most content is a blatant mockery of the goal of the site. A2As of interview experiences, being smart, GATE preparations et al, are commonplace and extremely irritating. Which brings me to the second point: The Indian problem. Quora has steadily become a place where Indians (specifially, Indian Engineering/MBA students) ask and discuss Indian problems. Questions about JEE, CAT, Career Advice, Personal experiences, company comparisons etc have practically reduced Quora to a exam prep site. I blogged about this before, and unfortunately the problem has just gotten worse. And don't even get me started on the meme-ification of the site.

All in all, no social network seems to have any silver bullet solutions to this problem of the masses. This problem, for some reason, is very reminiscent of the tragedy of the commons. While HN lacks diversity due to overt  moderation, Twitter and Quora seem to suffer from too much banality due to the cost/punishment for banter being negligible. I don't know if it's too much to ask for, but my hunt for an online community which is self-moderating, intellectually interesting and diverse across multiple axes continues.