Select Page

Episode 24: Engineering a movie

by | May 1, 2022

This episode, I talk about using how I use my software engineering mojo to make a movie. Enjoy, listen to it here or wherever you get your podcasts, and here’s the script!

Hi, this is Joe Dzikiewicz, and welcome to the Storylanes Podcast, the podcast where I tell the story of how I’m making an independent feature film while I’m making it.  Yup, that’s right: I’m hard at work producing DOMICIDAL, an independent horror film.  It’s the story of a cantankerous feminist tech podcaster who is making a podcast about living in a smart-tech home.  But there’s a problem: the house is haunted.  Or so it seems, because all that smart home technology is controlled by a hacker.  It’s as if your worst enemy in the world controlled your Alexa.

If you’ve listened to many of these podcast episodes, you probably noticed that I believe there’s many ways to skin the filmmaking cat.  That’s certainly true when it comes to story structure.  But it’s also true when it comes time to make the film.

This is probably a good thing.  After all, we all have different talents.  So it’s a good thing that there are different ways to use those talents to make films.

I have a friend who is superb at getting people excited about his projects.  He’s not the least bit shy at asking people for help or money.  It’s not really a surprise that he’s been mayor of a small town – he’s great at pressing the flesh and pulling people together in pursuit of a common goal.

When it comes to making a movie, he’s great at recruiting people, talking them into working for him, raising money from potential investors, doing all those things.  Making a movie for him is very much a matter of finding the right people and getting them to work on his project.  Filmmaking as community activism.

Now admittedly, that’s something that anyone who makes a movie must do.  Well, anyone who isn’t going to go off into a room and make a movie all alone, which some people do.  But recruiting isn’t just something this guy does to make movies.  It’s how he makes movies, how he thinks about the challenge.

Me, I’m different.  I have a long career as a software engineer behind me.  So when I make a film, my engineer’s mind gets involved.

Now note, I’m not talking about writing programs to help make the movie, though we’ll get to that.  I’m talking about how I think of the problem.  I think of it as an engineering problem – how do I get all the right pieces and put them together to make a movie?

That certainly includes the movie itself.  And if you’ve listened to any of these episodes, you’ve probably noticed that.  When it came time to come up with a script for what I wanted to make, I determined the requirements, explored options for satisfying them, and then figured out a story that would meet those requirements.  And when I sat down to design the story, I thought in terms of what kind of structure would work best, what kind of reaction did I want from the audience, what story elements would help cause that reaction.  And, of course, what story could I come up with that I could make on a small budget.

But it goes beyond that.  As I was writing the script, I thought carefully about how I would shoot it.  And let me give you an example.

For most of the movie, Jax, the protagonist, is alone in the smart house.  Well, alone in the house, but not alone.  She interacts with other people, but it’s done with video teleconferencing.  Zoom-style chat boxes might appear on any video screen in the house.  And since it’s a high-tech smart house, there’s lots of video screens.

So what’s the advantage of that?

Well first off, when shooting Jax won’t actually be interacting with the other characters on Zoom.  No, the Jax actor will be acting against a blank video screen, one that will probably have a green screen displayed on it during shooting.

The other actors will be filmed separately.  And then we’ll put it all together in post to make it look like Jax is interacting with them.

What’s the benefit of that?  Well, here’s something you may not know, if you’ve never been on a movie set.  What takes the most time is not shooting the scene.  What takes time is setting up the shot.  You have to set a camera angle.  You have to arrange props and set pieces and the background to look good.  You have to get the lighting just right.  All that takes time – a lot more time than just running the scene.

So if you’re shooting a scene, and you have, say, five camera angles that you’re shooting from, it will greatly increase the amount of time it takes to shoot that scene.  Maybe as much as fivefold, though in practice it’s not quite so straight-forward.

But you know what doesn’t require a lot of different camera angles?  A Zoom conversation.  That’s only going to require a single setup, because we don’t expect to see a person from completely different angles if they’re on the screen.

Now there are a few times when we go to the other side of the Zoom conversation, see things from the perspective of the other character, shoot in their space.  But that’s rare.  So for the most part, the other side of those conversations can be shot with few setups.

Not only that, but given that those other characters will often be shot in the same location across multiple scenes, there will be limited changes to the setups.  For example, one of the characters that Jax talks to a lot is Tech Support Zoe.  She’s the tech support person helping out Jax, and she will almost always be in her cubicle.  Which means all of her scenes will largely use the same camera angle and the same basic lighting.  Maybe we’ll have Zoe change costume, maybe we’ll change things a little in the background or tweak the lighting.  But overall, it won’t change much.

The end result is that we can probably shoot all of Zoe’s scenes in an extremely short amount of time.  I don’t expect it will take us more than a day to shoot out all of Zoe.  Which is going to be a huge time savings.  And which opens the possibility of hiring a more expensive, and therefore a more famous, actor as Zoe.  Because actors get paid by the day.

There’s precedents for this.  Think of the movie GOOD WILL HUNTING.  When that movie was made, by far the most famous actor in it was Robin Williams, playing the psychiatrist.  The script was written so that he was in several short scene spread throughout the movie.  So it seemed like he was in the whole movie, but it didn’t take many shooting days of his expensive time to shoot him out.  And he had a big impact – Williams even won an Oscar for Best Supporting Actor for that film.

Now, there’s other issues here.  This means that Jax will not be acting directly against Zoe.  That will complicate shooting those scenes and mean I’m going to need someone on set to read Zoe’s part when we’re filming Jax.  And it can’t just be a non-actor – we want someone to give a good performance to give Jax something to act against.

And it means that we’ll have to limit improvisation.  And have to carefully track things for continuity, which means having a good script supervisor.  Because the two sides of the conversation will be filmed separately.

If I end up going with a cheaper actor for Zoe, I’ll probably have her on set during Jax’s scenes.  Otherwise, I’ll hire a good but unknown actor to stand in for Zoe in those scenes.  She’ll be cut out of the final, which isn’t ideal.  But we will make the movie, and it will be cheaper.

How about the Jax side of the conversations?  That’s where things will get more complicated, where we’ll need separate camera angles and such.

But it should be a lot easier to film when we’re dealing with only one actor on set, both to plan her actions and for lighting and costume.  So I’m hoping that will lead to quicker filming as well.

But notice how much this shows my engineer’s mindset.  I’m thinking about what pieces need to be shot and how to put them together.  And how to make it all as efficient as possible.  I’m turning my engineer’s brain to the problem of making this movie.

Before I go into another way that my programming ability is coming into play, let me make a short digression.  One of the things that surprised me about filmmaking was how much making a movie is like building a software product.  In both cases, you pull together an interdisciplinary team of experts working in their own spheres to come together to create something.  For a movie, that means a screenwriter and a cinematographer and a sound recordist and editors and art directors and actors and a whole lot of other people, all working under a director and producer.  But for a software product, it’s a product manager and engineers and testers and operations guys and UI designers and documentation writers all working under project and product managers and team leads.  They’re both team efforts, and both out to create something cool.

And even the financing aspects of movie-making are like working in tech.  I’ve done a lot of startups, and in both cases, you are starting up a company.  And there’s similar things you have to do: raise money, hire people, talk to lawyers.  And even the financing models are similar, paying people with a combination of money and a share in the proceeds.

So movie making is like building software.  But sometimes, movie making can include building software.  At least the way I do it.

If you listened to any of my first season episodes, episodes where I analyzed existing screenplays, you heard about the Storylanes program that I built to help analyze and outline screenplays.  That’s where I got the name of this podcast.

But there’s a lot of other tools you need to produce a screenplay.  In the early stages, you need to breakdown a screenplay, figure out what cast, crew, and other resources are needed for each scene.  And you need to create a shooting schedule, figure which scenes will be shot on which days.  That’s a key step on the road to making a budget.  Which, of course, is done on a computer.

There’s software programs available for all of this, ranging from expensive tools customized for filmmaking needs to spreadsheet programs like Excel that can be the basic building blocks for all kinds of work.

When it was time for me to do a breakdown of the DOMICIDAL script, I bought one of the most standard tools for this task, something called Movie Magic Scheduling.  And I started doing my breakdown.

But I hated Movie Magic.  It’s user interface felt awkward, something that you might expect from a program twenty years ago.  And I kept running into limitations with it, ways that it modeled a script that just didn’t match my way of thinking.  And once I got something put in place, I invariably found some tool I wanted to do something, a tool that just wasn’t part of the program.

For an example of how Movie Magic didn’t match my way of thinking, look at the question of what is a scene.  In a script, a scene is a continuous block of action that takes place at a given time in a given location.

But when it comes time to shoot that scene, it’s not so simple.  Maybe you want to shoot several script scenes together because they happen at the same time in the same location, but in the script they’re broken up with other scenes in between.  That could be a scene that we return to throughout the film.  Or it could be a scene where there’s a continuous conversation, but we cut away to see action going on at a different location.  In either case, want to film all the contiguous action at the same time even if it’s several different scenes in the script.

There’s one other type of complication that’s all throughout the Domicidal script.  Think of the situation I described earlier, where Zoe and Jax are in two different locations being shot separately with the plan being to put the footage together in editing.  In the script that’s one scene.  But when it comes time to shoot, you’re shooting it twice: once for Jax’s side of the conversation, once for Zoe’s.  So in this case, one script scene turns into two scenes that need to be shot.

In both these cases, a shooting scene isn’t the same as a script scene.  But in Movie Magic, you only have scenes.  There’s no distinction between the script scene and the shooting scene, you have to do awkward things with the tool to make it work.  Things that we in software development would cause kludges – awkward compromises, the software equivalent of tying it together with duct tape.  I didn’t like that, and I didn’t like Movie Magic.

So I built my own.  I designed and built a tool that lets me break down the script and create a shooting schedule.  And in my tool, there’s a distinction between a script scene and a shooting scene.  And a shooting scene can map to many script scenes, and a script scene may require multiple shooting scenes.

Unlike Movie Magic, my tool is also web-based.  I haven’t actually put it up on the web – I’m running it on a local web server and using a browser to access it.  But I could put it up on the web if I wanted.  If I want to make the tool available to other members of my crew – and I just might – I’ll put it up on the web somewhere and give them access.  You can’t do that with Movie Magic: it’s a desktop app.  The best you can do with it is send the files around.  But that means only one person can make changes at a time, and then you have to share the changed version.  Yuck!

But there’s one huge advantage to me in my approach.  And that is, I have complete control over it.  So if tomorrow I come up with a new thing that I want Lumiered to do, or a new piece of data I want to keep track of, I can add it to my program.

I’ve already done this a couple of times.  The shooting-scene concept is something I only came up with after doing a first breakdown and trying to turn it into a schedule.  So I added the concept of shooting scenes.

And I’ve done other things.  It turned out that for scheduling purposes, it made a lot of sense to estimate how long it would take to film a given shooting scene.  Then I could figure out which scenes to put together in a shooting day based on how long each one would take.  So I added a time estimate to the shooting scene and made it available in the scheduling part of my tool.

I have full control over the breakdown and schedule.  It can be whatever I want it to be, because I am not only entering the data into the tool, I’m modifying the tool as well.  Which makes my engineer’s heart feel all warm and fuzzy.

So that is how I am engineering the tool.  And it works quite well for me.

DOMCIDAL is therefore a movie that is being constructed by a software engineer.  And that applies to the story, to the way we’re shooting it, and even to the tools being used to organize it.  I’m taking my own skills and mindset into the problem of making this movie.  And that works for me.

So if you’re making a movie, give some thought to what special skills you possess.  Think about how you can apply them to filmmaking.  There’s lots of ways to skin this cat – I recommend you spend some time figuring out yours.

One more thing to talk about today.  I’m going to introduce a new segment each time, to discuss movies that I’m watching that influence my thinking about DOMCIDAL.  And today, the movie I’m going to focus on is THE HAUNTING, the 1963 film directed by Robert Wise with cinematography by Davis Boulton.

THE HAUNTING is a traditional haunted house story.  A psychic investigator brings together a group of people with psychic experience to investigate a haunted house.  Strange things happen, there’s scares, and there’s a climax that doesn’t end well for someone.

Now the house in THE HAUNTING is an old mansion full of antiques and strange artifacts.  So not at all modern like the house in DOMICIDAL.  So there’s clearly some major differences here.

But I love the look of THE HAUNTING.  Oh, not the baroque style of the house and its furnishings, though I do like those too.  No, what I really love is how the camera work makes the house look weird and distorted, how it gives the impression that the house is always watching.  It’s because I love that look so much that I called out the cinematographer above.

I’m definitely planning to borrow that look.  Which in this case means using wide-angle lenses – that’s a cinematic technique that makes everything look a little distorted.  And I’m also studying the way the shots are set up to make it feel like we’re the house watching these people.  It’s going to have a big influence on how DOMICIDAL looks.  So while the story of DOMICIDAL is significantly different than THE HAUNTING, and the house itself is much different, the cinematography is going to owe a lot to that earlier film.

Anyway, that’s it for this time.  Check us out at, where you’ll find the script of this episode, along with links to all the past episodes.

This is Joe Dzikiewicz for the Storylanes Podcast.  Talk at you later, and happy movie-making!

Apple Podcasts

The Storylanes Podcast tells the story of how Smart House Movie LLC is producing DOMICIDAL, a new feature film.  We talk about all the trials of producing an independent film, with episodes that talk about read-throughs and script feedback and directing and all the other filmmaking things.

But we also dive into movie scripts.  A lot of our episodes look at the great films and their scripts, giving a screenwriter’s view of the world.  Each screenplay episode does a deep-dive analysis of one movie or show, examining how the story is structured and how all the elements come together to create the story, complete with a chart showing all the story’s key beats.

So check out Storylanes.  You just might learn something about the craft of filmmaking!