Blog

  • What Code Doesn’t Do in Real Life (That It Does in the Movies)

    What Code Doesn’t Do in Real Life (That It Does in the Movies)

    Almost everything you believe about movie code is backwards. The scene programmers have mocked since 1993, the 3D file browser in Jurassic Park, was real shipping software: a Silicon Graphics utility called fsn that ran on IRIX. The scene nobody brings up, Trinity’s break-in in The Matrix Reloaded, runs Nmap version 2.54BETA25 against a genuine SSHv1 CRC32 vulnerability from 2001, and the tool’s own maintainers confirm it on their site. Meanwhile the code filling screens in films that take themselves seriously is often lifted from somewhere absurd. Elysium reboots a space station with text from an Intel CPU manual. The Terminator, sent back from 2029, sees the world through 6502 assembly apparently pulled off an Apple II, a machine from 1977. We know this because a project started in January 2014 has spent years identifying the actual source of code shown on screen, frame by frame.

    So the honest version of this article is not a list of things Hollywood gets wrong. It is a shorter, stranger list of what is actually on those monitors, and why the famous examples are almost all filed under the wrong heading.

    The scene everyone calls fake was real software

    Lex sits down at a workstation, says “It’s a UNIX system! I know this!”, and navigates a green 3D grid to lock the doors. It became shorthand for Hollywood inventing nonsense computers.

    Diagram of the fsn interface showing directory pedestals of varying heights with file blocks on top, connected by wires, with labels explaining that pedestal height is total directory size and block colour is file age.
    How to read the Jurassic Park screen. Pedestal height is directory size, blocks on top are files, wires are the hierarchy.

    It was not invented. The program is fsn, pronounced “fusion”, a file system navigator that Silicon Graphics shipped for IRIX. Wikipedia’s entry on its open source clone puts the relationship plainly: “The 1993 film Jurassic Park has a scene that prominently features SGI’s fsn, the original version of the utility that fsv clones.”

    The visuals were not decoration either. Every element encoded something. Directories became pedestals, and pedestal height was proportional to the total size of files inside. Files sat on top as blocks, where block height meant file size and colour meant age. The wires running between pedestals were the directory hierarchy. A person who understood the mapping could read disk usage across a filesystem at a glance, which is more than can be said for most file managers shipping today.

    The part worth sitting with is what happened next. Audiences decided real software was a Hollywood prop. As the same reference notes, after the film came out some viewers took the visualization as an example of media misrepresentation of computers, calling the game-like display an unrealistic mockup, unaware the program legitimately existed.

    Thirty years of programmers rolling their eyes at the one scene in the film that was documentary footage. There is now a subreddit named after the line, r/itsaunixsystem, largely dedicated to mocking bad screen tech, which is roughly the beat we cover under developer culture. The joke outlived the accuracy it was mocking.

    So what is actually on those screens?

    Someone has been checking. In January 2014 John Graham-Cumming started Source Code in TV and Films, a submission-driven project where readers send in frames and the provenance of the code gets identified. It is the only reason any of the following is knowable rather than guessable.

    The findings are funnier than any invented punchline. A CPU reference document stands in for orbital infrastructure control. A machine intelligence sent from 2029 thinks in the instruction set of a 1977 home computer.

    Production What the code actually is What it is pretending to be
    Elysium Intel Architecture Software Developer’s Manual Space station reboot sequence
    The Terminator 6502 assembly, apparently from an Apple II A machine intelligence’s field of vision
    Stargate JavaScript from a Canadian bank’s website Alien systems
    Doctor Who A Wikipedia page about light waves Working code
    The Girl With the Dragon Tattoo SQL that appears legitimate SQL for researching murders
    The Social Network Possibly written for the film Itself
    Identifications from the Source Code in TV and Films project. It is submission-driven, so this is a sample, not a census.

    This is not laziness so much as it is set dressing. A prop department needs a screenful of plausible text in a hurry, and any dense monospace block reads as “computer” from three metres away. Nobody in the theatre is pausing to parse it. The people who eventually do are on the internet, with a frame grab and too much time.

    The bottom two rows are the ones worth noticing. Some productions did the work, and nobody gives them credit for it, because a correct SQL query looks exactly as boring on screen as an incorrect one.

    Did any movie ever get a hack right?

    One, mostly, and it is not the one you would guess.

    In The Matrix Reloaded, Trinity needs to take down a city power grid. The Nmap project’s own catalogue of its film appearances describes what happens next: “Trinity does it properly in The Matrix Reloaded. Needing to hack the city power grid, she whips out Nmap version 2.54BETA25, uses it to find a vulnerable SSH server, and then proceeds to exploit it using the SSH1 CRC32 exploit from 2001.”

    Every piece of that checks out. The version number was real and current for the period. The scan output is shaped like real scan output. The SSHv1 CRC32 vulnerability was a genuine, widely exploited flaw. The target runs SSH on port 22 and the film shows it.

    Two honest caveats, because the scene gets over-praised. The tool Trinity runs, sshnuke, does not exist and never did; the vulnerability is real but the binary is a prop. And the Nmap maintainers themselves grade on a curve. Their verdict is comparative, not glowing: “At least it is a lot more realistic than silly 3D animation approach used in many previous movies.”

    Film What it gets right What it does not
    The Matrix Reloaded Real version, real SSHv1 CRC32 vulnerability, correct port sshnuke is not a real tool
    The Bourne Ultimatum Uses Nmap and its real GUI, Zenmap Compresses the work
    Live Free or Die Hard Scans hosts that genuinely exist and permit scanning Little else
    Elysium Recognisable tool “Nmap version 13” does not exist
    Snowden Correct tooling, plausible custom NSE script 38 minutes for the whole engagement
    Graded against the Nmap project’s own catalogue of its film appearances.

    Nmap turns up elsewhere with varying dignity. In The Bourne Ultimatum, the CIA uses Nmap and its GUI Zenmap to break into a newspaper’s mail server. In Live Free or Die Hard, the scan targets are insecure.org, scanme.nmap.org and sectools.org, hosts that genuinely exist, one of which the Nmap project maintains specifically so people have something legal to scan. Elysium gets sloppier, running “Nmap version 13” against Matt Damon’s augmented brain, a release number that does not exist. And Snowden keeps the tooling correct while compressing the clock, with a custom NSE script finishing a penetration test in 38 minutes.

    What does real hacking look like when someone bothers?

    Mr. Robot is the answer practitioners give without being asked. In a thread on r/ProgrammerHumor simply titled “Movies”, the top reply is “Not a movie but Mr Robot is quite realistic.” Nobody in the thread argues.

    The show earned that by hiring for it. When it premiered in 2015, its technical advisor was Michael Bazzell, a former cyber crime detective with roughly 15 years in the field including about a decade on the FBI’s cyber crime task force, and the security firm Trail of Bits contributed guidance on specific attack sequences. Hackaday’s teardown of the first season notes the effect on screen: “We see every command the characters type, from netstat to CAN bus dumps.” Elliot runs Kali Linux and spins up a Windows virtual machine when he needs a tool that only exists there.

    But the tooling is the shallow part of the realism. The deeper choice is what the show says an attack actually is. Per the same teardown, social engineering runs through the whole series, from the old dropped-USB-stick-in-the-parking-lot trick to a character methodically dismantling an employee’s self confidence to get to their boss. The computer is often the last step, not the story.

    The genre convention What Mr. Robot does instead
    A 3D flythrough standing in for a tool Shows the actual command, from netstat to CAN bus dumps
    Typing defeats a firewall Social engineering, phishing, a USB stick in a car park
    Invented operating systems Kali Linux, and a Windows VM when a tool only exists there
    The command line hidden as boring The command line as the point
    Accuracy here came from a retained technical advisor and a security research firm, not a single consulting pass.

    The show also knows exactly what it is pushing against. Characters sit and watch the “flu shot” scene from Hackers and make fun of it. There are no virtual reality flybys. As Hackaday put it, in this show the command line is not hidden, it is celebrated.

    The Independence Day problem

    In 1996, Jeff Goldblum uploads a virus from an Apple PowerBook 5300 to an alien mothership and saves the planet. It is the single most mocked technology scene in film, and the mockery is aimed at the wrong target.

    People say the problem is the virus. It is not. Writing hostile code is the easy half. The problem is the interface: to deliver anything, two systems have to agree on a physical connection, a signalling protocol, an instruction encoding and an execution model. The objection that gets repeated is that an alien craft hundreds of kilometres across, built by a civilisation thousands of years ahead of us, would need to be compatible with the operating system on a mid-nineties consumer laptop. And it was a consumer laptop. Catalogues of on-screen hardware identify it as an Apple PowerBook 5300.

    Diagram listing six layers two computer systems must agree on before code can run: physical link, signalling, encoding, instruction set, privilege, and finally the virus itself, with the first five marked unsolved and the virus marked as the easy one.
    Everything that has to be true before a payload can execute. The hostile code is the last and easiest layer.

    The film did eventually answer this, just not in the film. A deleted scene restored for the 20th anniversary release has David realise the aliens’ programming language resembles the signal he had already decoded earlier in the story, which at least establishes prior access and a decipherment step. It was cut. So the version almost everyone has seen contains no explanation, and the objection stands against the movie as released.

    There is also a serious defence of the scene, argued at length by Sam Hughes at qntm.org, resting on the crashed craft the humans had held and studied for decades. That is the fair way to leave it: two defensible readings, neither one settled, which is more interesting than the usual dunk.

    Why Hollywood keeps doing it anyway

    The case against realism is stronger than programmers like to admit, and the sharpest version of it came from a programmer. From r/ProgrammerHumor, on why an accurate hacking scene would fail: “Can you imagine how boring that would be? It would be like a science fiction movie with realistic space battles. Picture it: two space ships are 100 million miles away from each other. Their computers calculate a trajectory and fire.”

    That is correct and it is the whole problem. A real intrusion is mostly waiting. Reconnaissance that takes days. A scan that returns a wall of text. Long silences where nothing renders. The interesting work happens in someone’s head and produces no visual output whatsoever. Film is a visual medium with a runtime, and “man reads output, thinks, types four characters” is not a sequence you can cut to music.

    So the progress bar exists for the audience, not the character. It converts invisible cognition into something with a shape and a deadline. Once you see the 3D flythrough as a narrative device rather than a technical claim, most of the genre stops being offensive and starts being a convention, like characters never saying goodbye before hanging up the phone.

    The convention What it is standing in for
    A progress bar Invisible work, given a shape and a deadline
    A 3D flythrough Reading text output, which does not read on camera
    ACCESS DENIED in red A failure the audience needs to understand in one frame
    Frantic typing Thinking, which produces no picture at all
    Read as narrative devices rather than technical claims, most of the genre stops being wrong and starts being convention.

    Mr. Robot proves the convention is optional, not mandatory. It found a way to make the command line watchable. But it needed a retained advisor, a security firm and a director who cared, and most productions have a prop budget and a Tuesday.

    The detail programmers actually notice

    Ask what gives a fake screen away and you will get answers about firewalls and impossible speeds. In practice the tell is smaller and stupider: unearned precision.

    Side by side comparison. Left, a movie progress readout showing 84.638446408 percent. Right, what real systems report: 84 percent, an ETA, an approximate timing line, and no output at all.
    The giveaway is not impossible speed. It is a number no real system could produce.

    The best example I have seen comes from an r/programming thread posted in 2013, 1,165 points and 174 comments, in which a developer found his own published code in a Hollywood film. Amid the discussion, one reader noticed a progress readout in the frame and posted the whole critique in nine words:

    “Percentage complete: 84.638446408%”

    “that’s one precise measurement..”

    Nine decimal places on a progress bar. No real system reports that, because no real system knows that. It is the same instinct that produces the giant red ACCESS DENIED box, a habit worth watching for across film and television: a machine performing certainty for an audience, when actual machines mostly report ranges, estimates and nothing at all.

    That thread has a second half worth knowing about. The community’s first reaction to a film using a developer’s code was not flattery but paperwork. The top comment is “You should file a dmca takedown notice.” Another commenter set out the actual position: copyright is implicit and automatic, so absent specific permission for that specific redistribution, the production is infringing.

    The developer himself was relaxed, and his reason was specific: he had released the code publicly in 2007 as a free contribution to the infosec community and had never bothered with a licence. Someone else pointed out who really absorbs the consequences of escalation, and it is not the studio. A visual effects artist and a clearance person take the blame, while the production pays a small sum to swap the insert shot.

    Which is a fittingly unglamorous ending. The code on screen came from a real person, was used without asking, and the machinery for fixing that would mostly hurt the two people furthest from the decision.

    What to look for next time

    Four things, in rough order of how reliably they give the game away.

    The tell What you see What it should look like
    Precision nobody could have Percentages past one decimal, exact time-to-completion, a confidence score on a face match A whole number, a rough ETA, or nothing
    Output with no input Text streaming while nobody types, or continuing after the actor stops Request, then response. Then a pause.
    Graphics doing the work of text Rotating wireframes, city flythroughs, pulsing node maps Monospace text on a black background
    Sudden compatibility Two systems that have never met agreeing instantly on a protocol Weeks of work, or a prior sample to study
    Ranked roughly by how reliably each one gives the game away.

    And one counter-instruction. When a film shows a plain terminal, sensible commands and a person waiting, resist the urge to call it lazy. That is what the work looks like. Somebody did the research.

    FAQ

    Was the Jurassic Park computer real?

    Yes. It is fsn, a 3D file system navigator that Silicon Graphics shipped for its IRIX operating system. It was real software running on real hardware, not a prop built for the film.

    Which movie has the most accurate hacking scene?

    For a single scene, The Matrix Reloaded, which uses a correctly versioned Nmap and a real SSHv1 CRC32 vulnerability. For sustained accuracy across a whole production, Mr. Robot, which employed a former FBI cyber crime investigator as technical advisor.

    Is the code shown in movies real code?

    Often it is real code doing something completely unrelated. Documented examples include a CPU manual standing in for space station controls in Elysium, 6502 assembly in the Terminator’s vision, and a Canadian bank’s JavaScript appearing in Stargate.

    Could you really upload a virus to an alien spaceship?

    The virus is not the hard part. Agreeing on a physical connection, a protocol and an instruction set with a system you have never encountered is. A deleted scene from Independence Day addressed this by having the aliens’ language resemble a signal the character had already decoded, but it was cut from the release.

    Why do movies use progress bars for hacking?

    Because the real activity has no visual output. A progress bar turns invisible thinking into something with a shape and a deadline that an audience can follow. It is a storytelling device, not a technical claim.

    Sources