Wednesday, July 13, 2016

Oddities in HBO's Silicon Valley

I recently began watching HBO's Silicon Valley.  Once in awhile I see a technical and/or conceptual oddity that I can't help but ponder over and think "uhhh no".  These are the ones that I noticed and bothered me.

I'm not going over any specific misuse of technical terms or over exaggerated elements for Hollywood humor.

Needless to say there are ***SPOILERS*** below if you haven't watched the show.

Season 1 - Episode 1

Richard is an employee at Hooli, but is also in a startup incubator launching Pied Piper.  Later in the episode Hooli CEO Gavin Belson tries to purchase Pied Piper.

Shouldn't Hooli have an intellectual property claim on Pied Piper, given that Richard is still an employee at Hooli?

Now I can't speak for the IP rights contracts that every company in the world has, and there are obvious exceptions (some companies you can sign documents to indicate you have some outside business interests that are independent of your job), but this seemed odd to me.

(They eventually delve into this in Season 2.)

Season 1 - Episode 6

In this episode, elite programmer "The Carver" is hired to help get Pied Piper towards its deadline.  In a somewhat cliche plot, he messes up some code and the team has to spend a lot of time fixing his mistake.

I couldn't help but think, "You guys don't have a code revision repository of any sort?"  The kind of thing that could be backed out within a minute or two? Later in the episode, they are distinctly comparing lines of code on two screens, so it strongly suggests they don't have a code repo.

But this isn't what gets me.  Later on, they also ran and passed regression tests to know they fixed the bugs/mistakes.  Regression tests suggest that you have different versions of software.  After all, what's the point of regression tests if you're not trying to catch old bugs/mistakes?  So they have different versions of software, but no code repo to manage the different versions of code?

Season 2 - Episode 10

During the trial, Erlich mentions that Big Head's code for "Nip Alert" was so bad that it crashed Richard's laptop and Richard had to take it to the Apple store to fix and it was "in the shop" for three days.

Now "crash" is ambiguous, but I interpreted the dialogue context to mean this caused a hardware problem.  It wouldn't have to be "in the shop" for three days otherwise.  It would be very hard, if not impossible, for a web based application (let alone a normal installed application) to destroy a laptop's hardware.  I can see potential theoretical ways, but it's hard to imagine a general application doing this. [1]  Add in the fact that Big Head is generally regarded as incompetent, it's hard to believe he could have done anything that advanced.

If "crash" caused a software based problem, such as a process foolishly running amok and deleting valuable system software (again, shouldn't really be happening for a userspace non-privileged process and shouldn't be happening with such a dumb application), this one is perhaps a bit more believable.  But a simple software reinstall and update from backup is all you need.  No need to bring it into the shop.

Season 3 - Episode 6

In this episode Richard is shown to be a lover of tab indentation in code.  He meets a girl named Winnie who codes uses spaces instead of tabs.

In one scene Richard and Winnie are sitting on the couch both coding and Winnie is programming and constantly smashing the spacebar to indent her code.  It's loud and annoying and eventually Richard can't handle it.  Hilarity ensues.

The "tabs" vs "spaces" debate is endless, but what I found interesting was the fact that Winnie repeatedly hit the spacebar to indent her code.  Today, almost every editor will automatically convert a "tab" to the appropriate number of spaces.  So there is no need to ever hit the space bar over and over again.  Even those who prefer spaces to tabs don't actually hit the spacebar over and over again, they use the tab key.

[1] - While writing this I Googled "can you program software to damage hardware" and there are some write ups with theoretical ideas that seem to confirm my suspicions.

No comments:

Post a Comment