Grow up bozo!

Everyday I meet programmers who have cleared tough programming rounds. We made them write tough algorithms – starting from inverting a binary tree to dynamic programming. Some of them were so ahead of their contemporary peers that they’d evaluated all of the existing frameworks.

However, to my utter surprise, when it comes to working, their everyday thought process seems to have diverged tangentially since the day we hired them.

We ask you data structures, that too in an interview to understand if you follow the best practices under pressure, so that if a day comes when we run into a production bug prioritised P1, and ETA in few more hours, we expect you to deliver it with as sincerely as you wrote that binary tree on the day of interview.

Screen Shot 2016-01-23 at 3.14.21 pm

(the image above is unrelated to the rant, but shows how deep recursion can go upto)


Reason behind this rant:

One day, at work, I came across a piece of code written by an abler colleague – it was a JSON parser, that constructs a tree view out a deeply nested JSON tree.

  1. When you see a nested structure like that, the immediate structure that’d come to mind will be either a graph or a tree, or at least a linked-list. You don’t recurse dammit.
  2. You intended to write a lot of if-else‘s – If those if-else blocks give you orgasms,  then make sure you narrate the experience in some documentation or even comments, so that a reader gets an idea how shitty your sexual ideas are
  3. No Unit testing
    • Why people have a feeling that they’re doing the universe a favour by writing proper descriptive unit tests?
    • Why your unit tests always look like cliched movie one liners
      • forEach(testCase in AllTestCases) {
          assert( testCase.mockedService( testCase.SampleInputJSONObject ), testCase.expectedOutPutObject ) );
    • Why your commit messages look like snarky remarks on movie trailers
      • "Fixed this because some shit was happening in XYZ module"
      • Really? That some shit was highly insightful, thank you.
    • Why I’m able you judge your upbringing from the manner you practice software engineering?
    • If you write that kind of commit messages, those kinds recursive code, clearly, I will judge you 100 times before writing a line of code


Honestly – your tiny shit ( or call it piece of code) is not worth of that debugging effort. But, regressions – they’re painful, and even more painful when you’ve written a useless unit test.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s