.comment-link {margin-left:.6em;}

blimps are cool

Tuesday, November 8

Screenwriting as Screencoding: Part 1

[This is really written for me as it kind of summarises my thoughts recently due to my immersion in codingland and writingland... and I'm coming to some personal conclusions on things[

I've been meaning to write this for a while, as I've been doing a bit of tcsh scripting for work. Not because I have to code, I'm not a programmer, but because (a) scripting solutions makes my life easier and (b) for some reason I'm finding coding satisfying. Until this year, I really haven't coded since around 1994. There were a few Applescripts I bashed together in the past to make my life easier, one to build directory structures for my video projects, and the other to fix an early Protools 6 "feature" which disabled sleep on machines with ProTools installed.

The reason I'm enjoying coding is twofold.

The first is simply the whole 'codeland' bubble. Those who do any kind of creative act know about the semi-autistic state that you get sucked into. Your vision narrows, your focus increases inexorably, and you lose time. When you get pulled out of that bubble, you wander around in a daze as your brain starts multi-tasking again. Its a feeling that can only be described as awesome... and its an experience I also get even moreso* in Musicland, Writingland, and Directingland. (*Because I'm not a coder which leads me to get frustrated)

The second is that programming, at its heart, is language as function. Think about it. Most software applications you use in your life, from Final Cut Pro to Logic Pro to Final Draft to the humble calculator, are built using words. Yet, while there is only a limited set of words and highly strict grammar, the almost infinite combinations of these words is able to build entirely different sets of experiences for the end user. Gifted coders are able to build beautiful strings of words that make beautiful programs. They harnass the power of words to build beautiful structures. (I personally consider programming to be an artform). But we, the end user, never see the words themselves. Just the results.

I think words are powerful. They build and define our realities. Language is fundamental to consciousness, possibly even a prerequisite for consciousness. I'm attracted to the power of words, but I'm especially attracted to words which have a structural superpower. Law, for example, is a system which builds incredibly large social structures, yet is made entirely from words. Sometimes those words are badly written, and we get bad shoddy law. Sometimes those words are incredibly eloquent, and we elegant law.

Then there's screenwriting...

Screenwriting is a lot like code (and a lot like law). Its functional. The 'end-users' of screenwriting, ie the audience, never see the actual words on the page, however they see the form that those words have built: the story. And those forms, for better or worse, reflect the construction of the words. Just like in programming circles, in screenwriting only a small, albeit growing, group of people are ever able to appreciate the purity of the words themselves *apart* from the result.

Good coding isn't just about producing good results, its often about the form itself. e.g. in tcsh

if (!(condition == condition)) then
do this
endif


produces exactly the same result as:

if (condition != condition) dothis

(assuming, of course, you only have one 'dothis'. but this isn't meant to be a treatise on good coding practices)

Undoubtedly, the second example is far easier to follow (for those who code). Being 'easy to follow' is an important part of coding. If anyone, including yourself, has to pick up your code after a break... you need to know what is going on. I've picked up some of my recent (ie two months old) code and been totally lost! I'm 'evolving' good programming habits because of this. e.g. Avoiding unnecessary gotos, commenting everything, avoiding embedded loop after embedded loop, and choosing human readable variable names.

The need to pick up code this is exacerbated when you are dealing with thousands upon thousands of lines of code. Do you think any single one programmer groks the architecture of a modern OS completely? Possibly, but those people are genii... and its why software architecture (an outline for programming) is so important. Having a picture, from the top, of where you are going helps everyone tie together.

This is exactly like a screenplay. Badly written scripts produce badly written movies; beautifully written scripts produce beautifully written movies. Why? Because a well written script will guide the filmmakers (the director, producer, dop, production designer etc etc). If the script helps them grok what the hell is going on in the story, then they'll make better decisions.

Even for writers, this is important. Have you ever read an old script and been lost? Not known what your characters motivation are? What they're feeling?

(Warning: Simplistic examples to follow)

Why is:

She stares at him

better than

She looks at him

Because the word choice of 'stares' communicates more meaning and intent than 'looks'.

How about:

She walks away.

vs.

She skulks away.

vs.

Away she skulked.

Good screenwriting tells the reader what is going on, all the time. This doesn't mean you tell your reader literally what is going on, rather you use language which has shades of meaning and imparts emotion. I use to think I should try and tell my stories with impartial language descriptions tied together to impart meaning. It doesn't work. I try to be a 'literalist' in that I try to write with a sense to what can be represented audiovisually, but there's no reason that such language can't be coloured. She skulks away is just as visual as she walks away, yet you get a greater sense of, well, meaning from the first line. This is where I'm trying to lead my writing.

I've even begun thinking about building 'language lists' for characters. Groups of verbs that I can use to describe a character's action in order to build a sense of how a character holds themselves... e.g, I might use words with connotation of grace, like piourettes or twirl, or glide. and so on. Its not enough to merely describe a character as being graceful unless you reinforce that with every verb, every noun, every adjective. Character comes from what people do, not what we tell the audience these people are. How many movies have simply called the Villain 'bad' rather than show us the Villain being bad? Showing your reader how a character behaviours by using the appropriate words. Does your Villain flick his cigarette away? Throw it away? Discard it? Drop it and then grind it until its extinguished? All these are more or less the same action yet characterised in entirely different ways.

In short, every word matters. Never think otherwise. A forest is made from trees.

I guess you could make comparisons, saying each script its its own 'language' in programming speak. In programming worlds there are MASSIVE debates about the advantages and disadvantages of certain languages... because the way those languages are designed inevitably reflects the way a program behaves and how easy or difficult it is to produce adequate results. This discussions are interesting but a little esoteric for me.

Though, it makes me wonder if the standard screenwriting format is actually the best 'language' for a screenplay. Are there alternative ways we can structure and write our scripts which will better suits our needs? Or have we evolved the best container for our ideas? [Just playing with ideas there, not intending to start some discussion]

Anyway. Enough from me now. Buffy is calling... I'll write a part two at some stage where I'll try to make comparisons between the larger structural issues in good coding and the larger structural issues in good screenwriting.

Words are power.

[Even now, I'm thinking of how I can reconstruct this blog entry to be better written - so it achieves its purpose better using less words.]

5 Comments:

  • I appreciate your thoughtful comments regarding screenwriting, Stu! And couldn't agree more that every word counts in screenwriting.

    I love your illustration of verb usage. Not she walks, but she skulks, or she meanders, crawls, strides...each evoke an image. The Professor Keating character (played by Robin Williams) in DEAD POETS SOCIETY said it's not "very sad" it's morose. Use your words, and a Thesaurus as necessary.

    I also like the structure aspect of your argument. Though I understand little about coding, I do use what I think is a similar analogy when I teach screenwriting: that the script is the blueprint of the film, a screenwriter is the architect. We learn the precision terms and structure of our craft so that anyone involved in the film will be able to pick up the script and decipher the vision for the film within it.

    Keep writing & ruminating.

    Cheers,
    Dana

    By Blogger biscotti dana, at Tue Nov 08, 12:54:00 am AEDT  

  • Excellent post, Stu. Really thought provoking stuff.

    Coincidentally, I've been doing a little reading on generative linguistics this past week and am becoming obsessed, not only with linguistic structures and their effects, but of underlying base structures everywhere (namely in the education system for the time being, but that's another story for another, more anarchical day).

    I know that your argument pertains mostly to words, but it reminds me also of a great post that Zach Campbell made on his blog recently about the rhetoric of cinema. Just as you propose that every screenplay is its own language, Zach proposes that, in the finished film, there is a "confluence of variegated rhetorics," a whole slew of languages, systems, underlying structures, each with their own effects, meanings, and so on. Check it out.

    By Anonymous Anonymous, at Tue Nov 08, 01:14:00 am AEDT  

  • A great post indeed; had I not put a temporary moratirum on my own blog, I'd write a more detailed response (or corroboration, really) there. While I know next to nothing about code, the structure I saw emerging when I was teaching myself ActionScript (and, to a extent, HTML and CSS) was rather beautiful. I obsess over linguistics and syntax, and I love seeing the same principals I strive for (or at least recognize) in my prose (and screenwriting) emerge in less predictable but no less appropriate mediums.

    By Anonymous Anonymous, at Tue Nov 08, 05:56:00 am AEDT  

  • I love it when you get autistic Stu. Here's an obvious and opposing point of view, just for something different from me. :)

    Certain verbs are more specific than others (i.e. glare vs look) and I suppose you can create a tree structure of verbs having 'look' as their ultimate root. That's really valuable, especially when you're building your verb libraries for characters - I would generally grimace instead of smile.

    That presupposes a precision in definition that can exist in a programming environment but can't always exist in human environments wherein interpretation is an (increasingly) dynamic variable. This is -especially- so in law, which at times attempts to be absolute [and at other times even admits discretion (and I wouldn't equate something like 'reasonableness' with any range-related programming tool)] and which absoluteness, upon a level of analysis common in programming, sometimes fails.

    So learn the rules today, go out on a very messy blinder tonight, and get to work on your art under the haze of your hangover tomorrow. Rum and coke thanks. :)

    By Anonymous Anonymous, at Wed Nov 09, 03:10:00 pm AEDT  

  • Wow. Lots of great posts I need to reply too... but touching on Dave's comment:

    "That presupposes a precision in definition that can exist in a programming environment "

    Can but doesn't always. I code in tcsh which is an intrepreted scripting language which has slightly different implementations on different platforms, e.g. darwin vs fedora vs redhat vs whatever. I've had scripts *fail* because the exact interpretation between a certain command is different under darwin than under my redhat installation...

    Anyway, your general point is right and its something I intend to address in Part 2. Namely, that the 'higher order goal' of programming is reduction into repetable, known algorithims. Programmers, self included, spend a LONG time building up libraries of commonly used functions...

    Bah.

    By Blogger stu willis, at Wed Nov 09, 03:18:00 pm AEDT  

Post a Comment

<< Home