Over the holidays I started 2 hacking projects. This is the first one.
Jouvence is a Python library for parsing and rendering Fountain documents. If you don’t know Fountain, it’s basically Markdown but for writing screenplays. It was created by John August, Nima Yousefi, Stu Maschwitz, and a few other contributors – check out the official website for more information.
The code is, as usual, on both BitBucket and GitHub. The package is on PyPi. The API documentation is hosted on ReadTheDocs.
Here’s how the “Big Fish” screenplay renders with the default HTML renderer:
Of course the whole point of Jouvence is that you write tools and renderers of your own. The Jouvence parser returns a structured document object model that makes it easy to analyze, manipulate, or render screenplays any way you want.
For me, this let me add Fountain support to Wikked, my flat-file wiki engine.
Happy new year and other such holiday things to the 3 people who read my blog!
I was in San-Francisco for new year’s eve and it was quite lovely.
Apart from the sake of posting something new, this post is also to show off how PieCrust’s admin panel can now upload page assets (in this case, that would be the picture above… check the URL, it’s hosted right here). This feature will be part of the impending 2.0 release, but you can get it by pulling the latest from BitBucket or GitHub as usual.
I’ve been critical of Bluetooth before. In my mind it’s nowhere near
ready to be the default way we listen to music… but when my dear Bowers
& Wilkins P5 headphones started exhibiting balance problems, the nice
people from the support department offered, among different options, to replace
them with a discounted Wireless P5 model.
I figured what the hell, let’s try this brave new world where everything has to
run on batteries and on different versions of different protocols.
Now you must realize that those are pretty much premium Bluetooth headphones.
I got them at a 50% discount, but they otherwise sell for around $400. Even
then, they’re much better that I expected. Barely heavier than the wired model,
and with excellent battery life. I noted a few glitches in audio playback but
I haven’t checked whether wireless was to blame, or whether it was the streaming
or player app being at fault.
The thing that I was mostly wondering about was how it handles multiple devices.
Our wireless speakers at home have a lot of trouble figuring out what phone
(between mine and my wife’s) to play from. My headphones would typically – on
a daily basis – switch between my phone (for music and podcasts) and my trusty,
original Nexus 7 tablet (which I use to run Plex and watch TV shows on the
go). I sure didn’t want to go through all the trouble we typically have to go
through with the speakers.
Well I can report that it works fine, but not in the way you would expect.
I have no idea how or why, but my headphones just won’t connect automatically to
any of those devices. I have to connect to them manually, which is frankly fine
by me since it takes slightly less time than untangling a cable and plugging it,
especially on Android where you can do a lot more system automation than on iOS
(on my Nexus 7 it basically takes me a swipe and a tap, whereas on iOS I don’t
think there’s a way around going in the Settings apps manually).
However, the simple fact that I have no idea if this is a feature or a bug
should tell you all you need to know about the state of Bluetooth.
I’ve seen quite a few Apple bloggers link to this piece from Adam Geitgey
about the new MacBook Pro, and how it’s supposedly “kind of great for
hackers”. All because you can plug a lot of different things thanks to USB-C
Well first, it’s great to see Apple users realize the benefits of standard ports
– and based on how Adam seems to easily use lots of peripherals without any
apparent problem, it’s good to know that some concerns about the compatibility
landmine of USB-C may be overblown. I thought it was a given, that standard
ports are better, and that yes, Apple ditching proprietary ports is an excellent
(although baffling in some ways) development. But MacBook Pros having USB ports
of any version is not a new thing. The only new thing is that they upgraded to
the latest version of the standard… should we celebrate them for that? Isn’t
that like saying “thank you” to cars stopping at red lights?
I feel like people are missing the point. Again.
The problem isn’t whether the new MacBook Pro is a good machine or not. It is
a good machine. It’s the best MacBook Air that Apple ever released. It’s
arguably an excellent MacBook, too. It’s just a shitty MacBook Pro because, in
many ways, it’s a downgrade from the previous iterations – something thatApple does quite often.
But of course, it seems to pay off. Like I said before, Apple is now
focused on mass consumer markets.
Someone (I don’t remember who) said that “Pro” now meant “Premium” in
Apple’s line-ups. You don’t necessarily get a more complicated machine anymore.
Instead, you get a fancier and pricier one. That’s arguably why they called the
big iPad an “iPad Pro”. Not “iPad XL”, or “12” iPad”, or “the new new bigger
iPad” or something.
“Pro” is now the opposite of “Mini” and “Air“ – not the opposite of
“consumer” or “simple”.
I’m back from some travels – plural, which is extremely rare for me.
New York City (first time visit) followed by the usual annual trip to Stockholm
for EA’s Frostbite DevDays conference, where various game devs from the company
converge from all around the world to chat and drink.
EA is a weird company in the sense that, for a video game company, people tend
to stay there for very long stretches of time. It’s very common to talk to
people who have been at EA for more than 10 years – at EA Vancouver, DICE,
Bioware, whatever. This makes it difficult to find new points of views on
technical problems… although, well, maybe it’s the same in many other big
companies like Activision or UbiSoft, I don’t know.
Either way, I was happy to meet several people who not only have shipped AAA
games at other companies, but also worked on those games’ cameras – which is my
current area of interest, being in charge of the Frostbite Camera System.
Finding people who work on (and care about!) cameras is a challenge to begin
with, seeing how little infrastructure and long term investments are generally done on that
crucial aspect of any game (more on that in a future post), so I’m pretty happy
with this year’s conference for that, at least.