April is tratidionally a rather busy month: Easter, public holidays, and — always — some deadline to meet at work. Moreover, my birthday is also in April which makes it even more busy! Let’s see what happened this year…h3. Using Ruby in a corporate environment
I’ve been using Ruby at work for a while now. I started off writing some automation script for my own needs, then someone noticed it and asked me if by chance I could develop some scripts for them, for automating part of their own job, and so on. My boss ultimately noticed it, and she liked the idea of me investing a small portion of my time to make other people save huge amount of their time, so now I am officially in charge of workflow improvements and automation (it’s even in my job description!).
This month a colleague of mine and I had to figure out a way to write some documents once in XML format and then produce different kind of outputs (other XML files, PDFs, etc.) using the DITA Open Toolkit. Originally we thought the toolkit would do most of the job, but we soon realized we needed to tweak and change a lot more than what we usually expected.
We ended up hacking together a system using:
- Microsoft Infopath as XML editor for the end users (the company buys it by default, so no worries there)
- A Ruby program to parse and manipulate the original XML and produce DITA-compatible XML files.
- Some Apache Ant tasks available in the open toolkit to produce an XSL-FO file
- Apache FOP to produce the PDF from the XSL-FO file…
The thing seems to work fine (after a lot of tweaking), and I really enjoyed creating the Ruby program to glue everything together. I even got a chance to introduce my colleagues to the wonderful world of Textile (they are so happy that they don’t want to use WYSIWYG editors anymore!).
Easter in London
As usual, Roxanne and I spent our Easter holidays in London, at her brother’s place. This year we actually had 9 days to go around
squandering money spending wisely in food, books, clothes and entertainment.
Most notably, I managed to drag Roxanne to Foyles and I got myself a copy of The Pragmatic Programmer, which I’m reading avidly. If it was up to me I was going to buy half of the computing section, but Roxanne kindly pointed out that I could get all of them from Amazon for half the price.
And she was right: for my birthday I preordered a copy of Programming Language Pragmatics, 3rd Ed., which should be shipped soon.
My spreadsheets for the wedding guests, wedding expenses (!) and …suit sizes are getting bigger and bigger. We managed to book a lot of flights to Ireland to my parents, us, relatives etc., but there are still quite a few things to do for the wedding. The most urgent thing to do right now is sending the invites: we had them printed with the words RSVP within May on them, so they have to be out in one or two weeks at most.
The other thing which must be sorted soon are the suits. According to English (and Irish) tradition, the groom, the bestman, the father of the groom, the father of the bride and the ushers have to wear the same type of suit, with minor differences (the color of the waistcoats?). In my case, this means getting 7 (SEVEN) morning suits off eBay, in the right sizes! Hopefully I’ll be able to get them by the end of next week (if my bestman manages to let me know his sizes).
XBox 360 Gaming
Now that our new XBox 360 finally came through, Roxanne and I have a lot of hours of hard core week end gaming ahead of us! This, added to the physiological increase of stress due to the wedding, may result in a temporary slowdown of my coding and writing activities.
Right now we’re playing Mirror’s Edge, Mass Effect, and Unreal Tournment III. The last one was a special surprise present from Roxanne (“…so we can kill each other!” — she’s really lovely at times!).
Other tech-related tidbits
- I can’t wait to go to the cinema to watch Star Trek XI
- I started using Shelfari
- I started using Star.io as my personal, bare-bones start page.
- I recently released Concatenative 0.2.0.
- I’m currently evaluating the possibility to create a Ruby-based Document Authoring Framework. Stay tuned.