Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
September 12, 2021 12:14 am GMT

Similarities between programming & screenwriting

This article is most of all focused on the creative process and its interdisciplinary character.
Thus, Im not going to compare job offers, salaries, prospects and... plenty of other things.
Technical knowledge is not needed though.

Lets FADE IN!

Collaborative character



You can write a real-world application by yourself.
If you're a go-getter it may be even quite a serious password manager used by over 100,000 people.
Thats the story of Kyle Spearrin the creator of "Bitwarden".


The same stands for screenplays. You can write short films or even feature-length films on your own. In fact, it seems to be quite popular.
Moreover, there are people like Michael Hirst who wrote whole TV series on its own - I'm sure you've heard of the widely beloved Vikings.

Nonetheless, most applications and screenplays (especially TV series) are outcomes of close cooperation and thats why its so easy to list the exceptions.

The importance of structure and patterns



There is tons of great content about the application structure.
Flat structure, layered architecture, grouping by modules, grouping by context, hexagonal architecture
Architecture sounds serious but it mostly boils down to organizing folders and files.
Having known that you placed the files thoughtfully youre ready to write the code and most likely use some design patterns.
They are battle-tested and well-described ways to solve popular problems. You dont even have to recognize them, programmers tend to use them without being fully aware.
They are everywhere though.


Its also the case in screenwriting.
If youre going to use standard three-act structure you basically know where your turning points should be. You know that you have (at best) 10 minutes to grip the film audience.
In a feature-length film youre going to have a ~120 pages screenplay in which youll have ~40 scenes. You need character objectives for each of them and obstacles to make it dramatic.
However, you dont have to use that concrete structure and probably wont when dealing with parallel stories of multiple characters at once.
Full awareness about all of this while writing a screenplay is not essential yet knowing patterns definitely helps in recognizing potential weak points and choosing the right tool for the job.

Every part should be necessary



If youre a programmer and you worked with properly configured project (actually - a tool used within the project called linter) you may have seen similar message more than once:

'doSomethingStrange' is assigned a value but never used. eslint(no-unused-vars)

The linter helps you in identifying unused code so you can easily get rid of it.
We dont need code which doesnt serve any function in the current application and only generates additional noise which makes understanding the rest of code harder.
Notice: we dont need it so much that weve made tools to catch it.


If you're a screenwriter Im sure youre familiar with the term Chekhovs gun, but for the rest of readers:

If in the first act you have hung a pistol on the wall, then in the following one it should be fired. Otherwise dont put it there.

Lets move on.

Reading is more important than writing



Its often said that reading other people's code will make you a better programmer.
Thats so obvious for experienced ones that it may be even called a truism.
Thanks to that you may find more non-standard approaches to solve specific problems than you know from famous, SOLID books, that Im sure youve read (if youre a programmer, of course).
But doing self-reviews is not less important.
Its a good practice to read your code before you convey it to your coworkers. Youll probably find some room for improvement and do some rewrites.
Then this code is read by your teammates who check it and try to understand.
They may have some suggestions to make it even better or just accept it.
Ultimately, reading makes your application code better.


I dont like generalising - I know only a few professional screenwriters but they tend to be bookworms. They read a lot not only to get inspired yet to understand other people better and the context in which they live(d).
Writing a convincing story about, lets say, a German knight without knowing anything about the epoch would be hard or even impossible - you need to get familiar with it.
In that case you have to rely on books, because you are probably not going to meet a German knight in upcoming weeks.
Ultimately, screenwriting is just storytelling. Storytelling is based on sharing experiences (they don't have to be ours).

In screenwriting reading also leads to rewrites. Typically screenwriters do several rewrites (presumably more than 3) before the screenplay is ready for production stage (wherein its very likely to be partially rewritten), but it highly depends on the way the author works.

Testing



I didnt mention that before, but during the process of creating new functionality (adding new application code) its a good practice to test if that code actually works. To do so, programmers write so-called unit tests, which looks like this:

expect(addOneTo(4)).toBe(5);

This is a painfully simple test of one function called addOneTo being a tiny part of an application just to show the concept. If the function works correctly this test is going to pass.
Of course thats not everything.
The whole application is often tested manually by professionals who check all possible usage and seek for bugs.


Screenwriters perform manual tests to check if particular scenes work correctly.
They read dialogues out loud to catch any artificial parts that may be noticed by future audiences.
Sometimes its not enough and they test it with a bunch of friends, colleagues or other people who werent really involved during the writing phase.

Formatting



Finally! Last thing!
Formatting is crucial for reading and understanding the application code by people but its not really important for the computer which executes it.
Thats why it is always a programmer's job to take care of it.
Thankfully there are tools that automate this process (e.g. code is formatted after each CTRL + S by a tool called formatter), therefore programmers dont have to think about it.


Remember FADE IN from the beginning of the article?
Thats the first two words of a properly formatted screenplay.
Then there is action and dialogue (most likely) and we end everything up with FADE OUT.
There are dozens of rules on how to format a screenplay in a professional way and thats why screenwriters often use dedicated applications which perform it automatically.
There are also tools based on plain text formatting which is something that you probably would start with if you were a Markdown fanboy (see: Fountain).

And thats it for now. I hope you liked it!
If you found something unclear don't hesitate to leave a comment - I would love to discuss. Cheers!

:qw

FADE OUT

Footnotes:

Yes, Kyle is no longer alone, there is a team which is working on Bitwarden right now.
Even if there is only one screenwriter in the credits it doesn't have to be the only one person who was writing the screenplay. So-called Script doctors remain uncredited.
Great talk about application architecture: https://www.youtube.com/watch?v=oL6JBUk6tj0
Classic film with aforementioned structure: https://www.imdb.com/title/tt0108122/


Original Link: https://dev.to/kolodziejczakm/similarities-between-programming-screenwriting-k9l

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To