And the Most Realistic Developer in Fiction is…
Computer programmers, IT specialists, and hackers are often depicted in popular works of fiction, from books, movies, to TV shows. On the 2017 Developer Survey, we asked respondents about depictions of what it’s really like to be a programmer. This was one of my favorite questions on the survey this year, and analyzing these results has been quite the glimpse into the opinions of our community.
Text Mining the Survey Responses
There were 10,983 respondents who answered this question on the survey about fictional characters, and respondents answered one of four possible versions of this question:
- most realistic,
- least realistic,
- most inspiring, or
- most annoying.
This question was open-ended, with a free text field that respondents could type anything into. Let’s use some text mining to explore the individual words our survey respondents used to answer this question.
Many of our users responded with Elliot Alderson from Mr. Robot as a realistic depiction of a programmer, with other strong showings from the characters of Office Space (such as rap aficionado Michael Bolton) and Silicon Valley. I’ll admit I was a little surprised to see The Matrix with so many answers on this question, as I can’t say that I personally have ever fought off evil agents in bullet time.
After we explored the words our survey respondents used to describe fictional programmers and hackers, we categorized individual words into larger groups for specific characters, using word correlations and word networks like those shown above. After this categorization, we can see what proportion of our respondents gave various answers for this question.
Notice that our survey respondents identified many of the same fictional characters for all of these categories, just with different proportions. The protagonist in Mr. Robot is a common choice in all categories but is the most common choice, by a wide margin, for most realistic and inspiring. The characters from Silicon Valley are often identified as realistic and sometimes chosen as annoying but were not a significant choice as unrealistic. Stanley Jobson from Swordfish is identified as both annoying and unrealistic. Sheldon Cooper from The Big Bang Theory is a common choice for annoying and is sometimes chosen for realistic, but is not a significant choice for unrealistic.
Comparing Character Choices
Given how many respondents on our survey chose the most common answers across all versions, let’s look at differences between the four versions. Which characters were respondents more likely to choose for one version of the question compared to others? Let’s start by comparing only most and least realistic.
Television characters from shows like CSI, NCIS, Arrow, and Criminal Minds make up many in the least realistic group. The characters from Hackers were also voted unrealistic, which is heartening, because how many us have rollerbladed with a gang of our coworkers? Survey respondents were likely to identify the developers in Office Space, Dilbert, and Cameron Howe from Halt and Catch Fire as most realistic. And Maurice Moss! Who among us hasn’t experienced something like this in our work?
We can similarly compare each of the four versions to the overall choices made by respondents on this question and find which fictional characters were more likely to be chosen for each version.
I have now added watching the short film Kung Fury to my plans for the weekend; its character Hackerman was identified as one of the least realistic relative to the choices made in the other group. I love seeing Neal Stephenson’s wonderful novel Snow Crash show up in the analysis here, as one of the most inspiring portrayals of hackers in fiction.
I’m interested in women in tech, so let’s take a quick glance at words chosen at higher rates by men and women (including those who identified as transgender men and women) in the survey, for all the question options as a whole.
Women and men both gave the common answers at high rates, but this plot shows characters that women or men identified more often relative to the other group. Women were much more likely to identify fictional characters who are women, like Penelope Garcia in Criminal Minds and Lisbeth Salander in The Girl with the Dragon Tattoo. (Remember that this is not necessarily in a positive context!) Men were much more likely to identify fictional characters who are men, such as Mark Zuckerberg (fictional?), a James Bond villain, and Tony Stark. We all love Iron Man, of course, but this is a nice reminder that representation matters; it is helpful to see lots of different kinds of people working as developers, both in fiction and real life.
We can say that the television show Mr. Robot is having a moment, for the developer community at least. The main character was one of the top choices in all versions of this question, and thus is perhaps the most/least realistic/annoying/inspiring portrayal of what it’s like to be a computer programmer today.
More seriously, when we look beyond the fact that respondents gave common answers to all the versions of this question at high rates, we see interesting differences between the four versions. Tony Stark was chosen at a high rate for inspiring, and Sheldon from The Big Bang Theory was often considered annoying. Characters from Office Space and Silicon Valley were often chosen for most realistic, and portrayals of computer programmers from works like Hackers, CSI, Swordfish, and NCIS were voted unrealistic.
Working on the analysis for the 2017 Stack Overflow Survey has been interesting and rewarding, and the results give us insight into how developers learn, work, and share. Check out the full report on our results to learn more about the developer community, from technologies to geography to salaries.
Well I don’t see what Sheldon Cooper is doing here, a physicist is no developer to me. It doesn’t make any sense.
They did some programming in TTBT
The Tight Butt Theory?
This seems, at least, a familar scenario. https://www.youtube.com/watch?v=k0xgjUhEG3U
We physicists do our share of programming. 😉
That’s what you think. In anycase, it’s better than the programming mathematicians do 🙂
Only issue is that he wasn’t a programmer, he was a hacker. But yes.
Neo? Yes he was!
Lol no Elliot from Mr Robot.
A hacker is, by definition, a programmer. Script kiddies screwing things up for shits and giggles and who probably never wrote a single line of code in their life(to take an extreme example) are only “hackers” in the sense that Hollywood/pop-culture would like the term to be used.
Perhaps this is simply semantics but I highly disagree. Software Engineers (most common ‘programmer’ in todays world) and hackers are not the same thing. I’m an engineer, but I don’t know the first thing about hacking. I don’t know how to do it, or even how to learn it. I know it’s malware being written in code, but that seems to be the only similar thing about engineers and hackers. We write code. They (hackers) write malicious code to inject themselves into a server or database. From that point on, there’s no code being written. An Engineer (me) writes code for a web app or mobile app following guidelines we learned in college. Apples/Oranges man.
Well, there was a documentary titled ‘Hackers: Wizards of the Electronic Age’ in 1985. And it showed a lot of interviews with many popular programmers like Richard Stallman and steve Wozniak. Yes, they used ‘hacker’ term for this legendary documentary.
I’m going to show my age here (I vaguely remember Wargames being released), but back in those days, hackers were people (usually programmers) that wrote code and/or soldered electronics together to make it do “stuff”.
What we think of as hackers today were called crackers back then, and they had been around a long time as it wasn’t just computers (Look up phreaking (I think))…
Ah, I see the “problem”. :p You follow the black-hat definition of the word (a security hacker, or cracker, basically). That isn’t the only one – and some (myself included) would argue that it is the wrong one, created by a media that misunderstood things a bit. And then it entered the common vernacular as a term for someone who breaks into systems/does illegal things with a computer. Which, I’ll agree, some hackers do – “black hats”. A hacker is really just someone who is *really* enthusiastic about computers and coding and skilled in their usage. There’s a reason “hacker culture” isn’t really considered a bad thing. Another definition for it is “someone who enjoys the intellectual challenge of (creatively) overcoming the limitations of software systems to achieve novel and clever outcomes”. Which is why you have the “white hat”/”black hat” divide. A white hat would be a hacker who uses their “powers” for good aka. within the law either working in security or simply writing really good code for whatever they are doing. Whereas a black hat hacker is one who uses it for malicious or criminal means. (“Criminal” here includes idealists who really are trying to make things better, but still break the law – and other peoples systems – doing it).
Allow me to disagree. Hackers write quite a lot of code. And are ex (or even current), very experienced programmers, some with degrees.
Even in the show he’s not a ‘programmer’ but a network engineer. That’s a better term to describe a hacker, rather than programmer. Can they write code? Yes. But it’s like comparing a guitar’s language to a drum’s language. They’re both using the music language (sorry, lack of better words here, not sure what else to call those little symbols people use to read music) but two completely different instruments. Using this example, I don’t think the term ‘programmer’ would be the same as ‘musician’ (from my example). We’re both ‘coders’ though, which I believe would be a more accurate term for what hackers/engineers are.
I’ve always considered “programmer” to be defined as “anyone who writes code (and more or less knows what they’re doing)” – possibly for a living. But I guess I see how that might be a bit too much of a generalisation. Especially with how “Programmer” and “Engineer” can be separate job titles, but the Engineer might still be doing programming/coding. I think my problem is one of language actually. Norwegian (my native tongue) doesn’t really have a separate term for “coder” – at least not that I can think of. So we just use “programmerer”* – which translates directly as “programmer” – for either.
*The word flows – for lack of a better term – and is pronounced somewhat differently from the English version.
The definition of hacker I prefer is from the book “Hackers: Heroes of the Computer Revolution” by Steven Levy who follow the Hacker Ethic.
I was one of the ones who picked Neo from the Matrix. I picked him specifically for the Thomas Anderson role at the very beginning of the first movie before things go crazy.
Sure, I can see it! Fair enough.
TIL: hacking the society is more realistic than a group of devs in a startup.
I love NCIS, but their depiction of programmers is hideous. Banging on keyboards, never touching the mouse, lots of windows popping up, and lots of noises. And then there’s the fact that Gibbs can stop emergency computer problems by unplugging one desktop or shooting up a wall of monitors. Hilarious!
you left out the most offensive, egregious example from NCIS: https://www.youtube.com/watch?v=u8qgehH3kEQ
Seems to me that a proper quadrant chart would be a better representation for the comparison of responses per whether the respondant identified as a ‘man’ or a ‘woman’. I.e.: quad. I could be for women chosen by women; quad. III for men chosen by men. Using the same format as the Most–Least Realistic chart, although fundamentally similar, seems superficially inappropriate.
What was the minimum number of votes a character needed to be included in this analysis? How long is the list of characters that didn’t make the cut?
(I’ve been on Stack Overflow for eight years, and this is the first I’ve heard of a developer survey. And why do we need Disqus accounts to reply here? Why can’t we use our StackExchange accounts?)
This was a free-text field where respondents could type in anything they want, so the answer to your question isn’t quite cut and dried. The way the filtering and processing worked ended up that about 1% of respondents (so ~100) needed to mention a character for it to be considered in later stages of the analysis. All words typed by everybody were included in the earliest stages.
I wish there was a Jupyter notebook with this data, or at least just the data available. I could learn a lot!
We will make all the survey data (minus personally identifiable information) publicly available soon! We might not make this *specific* analysis public, but we try to do so whenever we can, like with the weekend/weekday post: https://stackoverflow.blog/2017/02/07/what-programming-languages-weekends/
If you are interested in just the kind of text mining I used here, you can check out the book Dave and I are publishing with O’Reilly: http://tidytextmining.com/
Maurice Moss is inspiring? That’s interesting.
no love for Samuel L. Jackson in Jurassic Park, whatsoever?!
Most annoying thing about your graphs: equally spaced gridlines on a logarithmic scale.
Those who put in the Matrix probably are referencing Neo near the beginning, where he’s actually doing development work, and not later on after he meets with Trinity.
I am so happy that I’m not the only person who wrote Finch in for “inspiring”, haha. *fist bump* to the rest of you in that crowd.
I’m also kind of bummed that Continuum wasn’t a more popular series, because Alec Sadler (young and old) was kinda awesome.
yay for Person of Interest
I only started watching Continuum after the survey or he would totally have made it on my list!
I love Continuum and Alec Sadler is an awesome character, but I don’t know where I would have put him here. He’s definitely not the most realistic, and I wouldn’t really consider him the most inspiring either. However, he’s not the least realistic, and I don’t think the most annoying. Good character, just doesn’t hit any of these markers, IMO.
To me he kind of fits in on “inspiring” in that Larry Page / Sergey Brin / etc. start-small-and-end-up-at-the-top, programmer-turned-CEO, business-y sort of way. I actually like that a lot, but yeah I also couldn’t see him picking up a good chunk of “inspiring” on the survey.
Why Hackerman didn’t make the top choice for most realistic I’ll never know.
I personally ride a MicroBee to the laser-dinosaur era every day. It was extremely disheartening to see Hackerman not be most realistic…
I have no idea. I often include him on my technical posts about Facebook: http://worldbuilding.stackexchange.com/questions/31388/how-would-facebook-sysadmins-prevent-the-summoning-of-cthulhu/31440#31440
I have never seen a more realistic portrayal of time hacking anywhere else. I know that when I’m hacking time, if my IDE doesn’t have an animation of a dude on a skateboard I very quickly lose my concentration. You should have *seen* the medieval mess I got myself into when I was just planning an easy frolic of an afternoon with the wright brothers trying out their new invention! DINOSAURS EVERYWHERE!
How was the first graphic of the text analysis made?
You can check out info on that with other example text here: http://tidytextmining.com/ngrams.html
I’m really sad for Lisbeth Salandar not be in any of this list.
Ok, she is most of a hacker than programmer. And the movie barely show this side of her, different from the books. But she still if far more realistic than anything in Matrix.
Even the IT departure in the book serie “In Death” are more realistic even thou it’s a little futuristic plot.
The character of Lisbeth Salander is terabytes away from being realistic, I would say! Even when appreciating the pace and dramatic tension of the series, I must add.
> Who among us hasn’t experienced something like this in our work?
I’m sure plenty of people will just carry on ignoring the fire in production because it’s somebody else’s problem.
In my head I heard the dialog from the scene with Maurice Moss
There are an extremely small number of movies or shows where computing in general is depicted realistically. Forget about hacking and programming, those activities are always unrealistic. I assume it is due to the fact that the viewers are probably not interested in the hours of debugging or hours of code examination and brute-forcing to create a hack. The writers could work around this, but they always just make the hackers out to be some kind of super-programmer that can break into anything, anywhere at the drop of a hat.
Did you see Limitless, the series? “since you’re not interested in hours of writing, I’m showing cat/dog/… pictures instead”.
No, never seen Limitless. Do you think it contains realistic hacking?
it portrays hacking realistically — which means that it does not show the actual hacking but rather says openly “this here takes hours of hard work, so we’re not actually showing it”.
yes: by not actually showing it (and by explicitly using a hacker with massively boosted cognitive abilities — who still needs hours upon hours to hack something).
Now I’m just wondering if I’m the only one who answered with Milo Hoffman…
I’m definitely with you on that one. Milo was exactly like I was at that age ….
Interestingly the role that “time” plays has been ignored by this analysis. If you ask only older dev’s – they will say that Hackers was actually quite realistic back then. The younger crowd today can be forgiven for thinking that it’s unrealistic – but that was literally how things were back then…. Back when computers ran on steam and Angelina was still pretty 🙂
Really nice, but where is Aram mojtaby from The Blacklist?
One hell of a hacker
What, no Gus Gorman (Richard Pryor) in Superman III?
Jurassic Park was an excellent film. Its message was clear: have good tests and deployment strategies, or a big scary thing will eat you.
and the Book is even stronger: if your IT folks hate you, you’re done for. And nature will always find a way.
Just got a list of movies/seasons I need to watch. Thanks.
You can partly replace “identify fictional character” with “name good future co-worker”. That’s why reaching equal representation needs active work which is needed less over time.
I’m surprised that the scene where the girl goes “It’s a Unix system… I know this!” wasn’t the reference in question – kudos I guess for going with the everything is a file mantra?. I’d happily set up Dennis’ password lockout message in any system I could!
A classic Jurassic Park scene! Surprisingly, the file system she’s using in the scene is in fact real! Check out FSN by SGI. https://en.wikipedia.org/wiki/Fsn_(file_manager)
Am I the only one who still remembers Stargate? 🙁
I immediately thought of Randy from Cryptonomicon by Neal Stephenson.
Last time I watched the show, Sheldon Cooper was a theoretical physicist, that’s not even close to a programmer.
Yes but he does do and talk about some programming on the show.
To be precise, Sheldon Cooper is not even close to a software developer. To do “programming” you just need to be able to write code confidently in *some language*. Many scientists write code, not only computer scientists.
The problem is that some people use the words “programmer” and “software developer” as if they meant the same thing, while in reality they have much different implications.
BTW there is an episode where Sheldon develops an “algorithm for making friends”, which makes him a little bit closer to be a computer scientist. 😀
Hackers 2 (aka Takedown) should have gotten a mention. The approach to actual hacking was much more realistic than Hackers – for example, acknowledging that most of his hacks were only possible because no one was using encryption yet, and when he did encounter some encryption, he needed to tap into distributed computing power to crack it. But more notably, it excelled in its portrayal of social engineering. Hacking into a system becomes trivial when someone tells you their password.
There was a Hackers 2??!!! How did I not know this!!!
It’s a spiritual successor. Not sure why it has that title; it has none of the same characters or actors. It tells the real-life story of Kevin Mitnick.
Most depressing. I read the entire article and never saw mention of Sneakers.
Great movie, but a bit more obscure I think.
My favourite is the intersection of unrealistic but inspiring: Sure we know ‘Hackers’ were flying around imaginary skyscrapers of computer chips, but hell if it watching it repeatedly & enthusing over it with my friends isn’t one of my happiest memories, and a big contributor to me studying computing and becoming a developer.
Likewise Hackerman: Although I of course love Elliott from Mr Robot and Cameron from Halt and Catch Fire, it’s a shot from hackerman/kung fury which I have on my desk and always makes me smile – especially when a production bug is wreaking havoc and everyone is stressed out.
Thus I’m glad we’ve got some great realistic portrayals (Elliott and Cameron) but that we can also appreciate the value and humour of a good fantasy, too 🙂
What method did you use to group some records into Movie/any characters? The graph is nice but was your rule manually crafted or something more sophisticated?
Yes! I am invincible!
I think people mention Matrix for the parts where Neo was being trained in the ship at first. They had programs that could be installed into the brain etc. it’s surely more realistic than two people typing on the same keyboard…