January 02, 2012

Presenting Trelby (and it's history)

Today we announce Trelby. This post documents how it came about, from my perspective.

The Backstory

Around mid-2011, when I decided to make a film, I went around searching for a simple, free, multiplatform screenwriting software. Note the three adjectives.

As an Ubuntu user, I needed something multiplatform. I did not want to switch my OS just to write a screenplay.

I needed a program that would be fast and easy to use. Hey, I like bells and whistles as much as the next person, but a screenwriter also needs to get out of your way and let you write.

And I'm an free software enthusiast. I like the freedom of being able to tinker with my software, of not having to wait for the BIGCORP, INC overlords to deign my feature request worthy of attention.

The Past

So, I went around on a google hunt. And the software that came the closest? Celtx.

Celtx is pretty good. It is multiplatform. It's free, and it has a lot of bells and whistles.

It's good enough that I wrote my first film with it.

But celtx was never simple. It had quirks. It did not look right. It provided limited configurablily of the interface. It called itself open source, but the build-sauce was difficult, and you needed to jump through hoops to work on it. It was tied to the company's services. PDF functionality wasn't built into the software! It was on a remote server, so you had to have an internet connection to generate a PDF.. I never understood that! And I could not disable the distracting bottom bar, that always showed the latest news update and things.

And it grew slooowww. Longer screenplays would start crawling. The editor would update in jerks, like you were magically typing words, and not letters. Granted I use a netbook, but a screenwriter is just a text editor! It should not require a supercomputer to run properly.

Being a little disappointed with this option, I searched for others.

There were none. Final Draft seemed to be the "standard" but  it cost  a lot. (And I mean a LOT).

The search did lead me to many tiny little gems. The most memorable one was called Pago. A vim script, that modified vim into a screenwriter. I now had fast and multiplatform. But not simple. Pago only had the (limited) intelligence to format the text to screenplay style, but that was it. However, it had one thing over Celtx - simple offline PDF generation. And I had settled on Pago for my then screenwriting needs.

So I forked a project on Github, and created a Pago repository. And while I was on github.. why not search for "screenwriting". With the thousands of project on there, perhaps there would be some other Pago like tiny solutions.

And so I discovered Blyte. "Chanced" might be a better word. Talk about hitting gold.

Years ago Osku Salerma had entered the fray of  screenwriting software, creating a very well written piece of free, simple, multiplatform software. But it's revenue stream did not justify the time spent on it, and it was killed. Thankfully, it was made open. Osku created the github repository, and pushed the code in. This code has since been in hibernation.

Blyte had not show up on my extensive google searches. I suspect it hadn't in Kent Tessman's searches either, who grew tired of the incumbent playing field as well, and set out to create Fade In Pro, which is multiplatform and simple, but not free!

The Present

In October, I started working on Blyte. It was written in python! I installed the wxpython libraries, and ran the program, wondering how a five year old codebase would've aged.


It worked! the colors looked odd, the interface seemed a little clunky, and the ancient widget library did not look great on Ubuntu.

But it ran without issues. And it was good. It had full PDF support (including font embedding). It was lightning fast. It was configurable. It had a tiny little fancy features too.

And the big three-adjective hole in free software was filled. I got in touch with Osku, who had not looked at Blyte in years, but enthusiastically agreed to take up maintaining Blyte's modern fork: Trelby. (it took a while to settle on a name!)

The Future

Trelby is polished Blyte, with many (many!) additional features, a clean uncluttered interface, ported to the current generation libraries.

In my initial discussions with Osku, here's what he wrote about Blyte's dormancy:

The main problem, I suppose, is that the intersection of "people who care about screenwriting programs" and "people who can code" is quite small, so the potential pool of developers is tiny.

I can attest to that statement. With all my frantic searching for a good alternative I ran across very few developers. By and large, screenwriters are Joe Consumers.

But to the people in that tiny intersection: Find a feature lacking in Trelby? Why not join the Trelby team, and help improve it?