<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>H3RALD - Tag 'personal_log' (RSS Feed)</title>
    <language>en-us</language>
    <lastBuildDate>Sun, 28 Jun 2009 18:24:00 -0600</lastBuildDate>
    <ttl>40</ttl>
    <link>http://www.h3rald.com</link>
    <description/>
    <item>
      <title>Personal Log - June 2009</title>
      <description>&lt;p&gt;Welcome to yet another of my extremely boring, excessively fragmented &lt;a href="/tags/personal_log"&gt;personal log&lt;/a&gt; posts. I&amp;#8217;m seriously thinking of dropping the whole series in favor of more frequent (and shorter) blog posts, starting from next year. This means you&amp;#8217;ll probably have to read &lt;em&gt;another six&lt;/em&gt; of these priceless gems, until december 2009.&lt;br /&gt;
As usual, feel free to skim through as each of the following &lt;em&gt;sections&lt;/em&gt; is almost completely unrelated to the others.&lt;/p&gt;
&lt;h3&gt;H3RALD Web Site v8.0&lt;/h3&gt;
&lt;p&gt;It&amp;#8217;s the time of the year, again. It doesn&amp;#8217;t happen &lt;em&gt;every&lt;/em&gt; year but it&amp;#8217;s definitely a trend (hence the high version number): I&amp;#8217;m going to redesign &amp;amp; redevelop my web site.&lt;/p&gt;
&lt;p&gt;This time is not the usual &amp;#8220;Let&amp;#8217;s pick another language and another framework and start from scratch&amp;#8221;, but a rather more radical shift, and yet at the same time less painful. The idea is to transform H3RALD.com into a 100% static web site, without losing anything in functionality (gaining, if anything!).&lt;/p&gt;
&lt;p&gt;&lt;a href="/http://tom.preston-werner.com/"&gt;Tom Preston-Werner&lt;/a&gt; is definitely &lt;em&gt;not&lt;/em&gt; the first person to &lt;a href="http://tom.preston-werner.com/2008/11/17/blogging-like-a-hacker.html"&gt;blog like a hacker&lt;/a&gt;, and his very own &lt;a href="http://www.jekyllrb.com/"&gt;Jekyll&lt;/a&gt; is definitely not the first static web site generator our there, nevertheless, he inspired me to embrace what seems to be one of the latest trend in developer&amp;#8217;s blogs.&lt;/p&gt;
&lt;p&gt;The idea is simple: turn all the blog posts and pages into static content, and rely on third party web services for things like comments, search etc. For a rather extreme by very interesting example, see &lt;a href="http://tagaholic.me/"&gt;Tagaholic&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The advantages of this approach are many:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Free yourself from a database.&lt;/li&gt;
	&lt;li&gt;Free yourself from a resource-hungry, server-side app (&lt;a href="http://wiki.github.com/fdv/typo/"&gt;Typo&lt;/a&gt;, in this case).&lt;/li&gt;
	&lt;li&gt;Increase speed and reliability, without using caching or similar artifacts.&lt;/li&gt;
	&lt;li&gt;Keep everything under version control.&lt;/li&gt;
	&lt;li&gt;Don&amp;#8217;t worry about breaking things when upgrading (even if the static content generator changes, it shouldn&amp;#8217;t really break things).&lt;/li&gt;
	&lt;li&gt;Unleash the power of client-side scripting (namely, JQuery).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For now, I&amp;#8217;m just brainstorming a little bit on &lt;a href="http://github.com/h3rald/h3rald-website/issues"&gt;GitHub&lt;/a&gt;, feel free to participate. The first step is obviously choosing a static content generator, and atm Jekyll seems to be slightly ahead of Webby. Opinions?&lt;/p&gt;
&lt;h3&gt;Glyph&lt;/h3&gt;
&lt;p&gt;Did you ever want to write a short manual or a book, or even a long article? If so, chances are you gave LaTeX a shot and either fully embraced its philosophy or totally refused it. Sadly, I belong to the second category: I believe sequential documents like manuals or books should be easier to create simply by using &lt;span class="caps"&gt;HTML&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;Whever I have a chance to actually start working on it, Glyph will become a &lt;em&gt;document authoring framework&lt;/em&gt;, i.e. a way to create visually appealing documents in a simple way. All the ingredients are there, it&amp;#8217;s only necessary to glue them together in a pretty form:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Textile (and &lt;a href="http://redcloth.org/"&gt;RedCloth&lt;/a&gt;) to produce clean &lt;span class="caps"&gt;HTML&lt;/span&gt; code from a human-readable markup&lt;/li&gt;
	&lt;li&gt;CSS3 to specify page rules&lt;/li&gt;
	&lt;li&gt;A few rake scripts to produce a standalone &lt;span class="caps"&gt;HTML&lt;/span&gt; file, &lt;span class="caps"&gt;TOC&lt;/span&gt;, Index etc.&lt;/li&gt;
	&lt;li&gt;An internal &lt;span class="caps"&gt;DSL&lt;/span&gt; for the document structure and metadata&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://www.liquidmarkup.org/"&gt;Liquid&lt;/a&gt; for control flow, snippets and filters&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://www.princexml.com/"&gt;PrinceXML&lt;/a&gt; to generate a &lt;span class="caps"&gt;PDF&lt;/span&gt; from &lt;span class="caps"&gt;HTML&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This project is still in planning stage, feel free to have a look at the &lt;a href="http://github.com/h3rald/glyph/issues"&gt;issues/features page&lt;/a&gt; on GitHub. Feedback is appreciated, as usual.&lt;/p&gt;
&lt;h3&gt;Vim files &amp;amp; &lt;em&gt;the Stash&lt;/em&gt;&lt;/h3&gt;
&lt;p&gt;If you read the previous two sections of this post, you may have noticed that I&amp;#8217;m growing more and more fond of git (and GitHub). Besides the repositories I already mentioned earlier on, I also created a personal &lt;a href="http://github.com/h3rald/stash"&gt;stash&lt;/a&gt;, which I&amp;#8217;m using mainly to store some of my Linux dotfiles, article drafts and &amp;#8230;Vim customizations.&lt;/p&gt;
&lt;p&gt;If you&amp;#8217;re looking for a color scheme for Vim, check out my very own &lt;a href="/herald-vim-color-scheme"&gt;herald.vim&lt;/a&gt;, and tell me what you think.&lt;/p&gt;
&lt;h3&gt;Getting ready for the Big Step&lt;/h3&gt;
&lt;p&gt;This will probably be my last post as a free man, as I&amp;#8217;m getting married (civilly) on July 2nd and (religiously) on July 11th. &lt;br /&gt;
Luckily the photographer agreed to give us a CD with all the pictures taken on the big day, with no copyright restrictions attached to it (believe it or not, some photographers don&amp;#8217;t allow you to republish &lt;em&gt;your own&lt;/em&gt; photos unless you ask them first), so I&amp;#8217;ll probably write a long post with pictures when we come back from our (half) honeymoon.&lt;/p&gt;
&lt;p&gt;Everything is pretty much organized. We had troubles with the waistcoats we got from eBay: they were cut almost randomly to &lt;em&gt;resamble&lt;/em&gt; waistcoats, but they weren&amp;#8217;t so we had to re-order another lot of 7 sets (waistcoat, cravat &lt;em&gt;and&lt;/em&gt; shirt this time) from another seller, this time UK-based. I seriously hope to get them in time.&lt;/p&gt;
&lt;p&gt;On the 24th we&amp;#8217;re having a party at our house. If you were invited, feel free to drop by, otherwise be prepared to be thrown out of the window (4th floor) by one of our ushers (Roxanne&amp;#8217;s &lt;em&gt;big&lt;/em&gt; brother). It&amp;#8217;s probalby going to be about 30-40 people in the end, mainly because most of my office can&amp;#8217;t come due to holidays they booked in advance.&lt;/p&gt;
&lt;p&gt;What&amp;#8217;s left to do now? Well:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Send the bomboniere over to Ireland&lt;/li&gt;
	&lt;li&gt;Make sure my dad actually ships the 96 specially-bottled bottles of our own wine to uncle John, in Ireland.&lt;/li&gt;
	&lt;li&gt;Make sure uncle John doesn&amp;#8217;t drink all the 96 bottles of wine before the wedding reception.&lt;/li&gt;
	&lt;li&gt;Make sure my best man understood that the speech he has do make &lt;em&gt;must&lt;/em&gt; be in English, at least 3 minutes long and not too offensive to the groom.&lt;/li&gt;
	&lt;li&gt;Pay a huge, colossal heap of money for the whole thing. It&amp;#8217;s going to cost us (and my dad) quite a bit, in the end. But it&amp;#8217;s a once-in-a-lifetime experience, after all (getting totally trashed in a fancy hotel with all your family, including 2nd and 3rd grade cousins).&lt;/li&gt;
&lt;/ul&gt;</description>
      <pubDate>Sun, 28 Jun 2009 18:24:00 -0600</pubDate>
      <guid>http://www.h3rald.com/articles/log-jun-2009/</guid>
      <link>http://www.h3rald.com/articles/log-jun-2009/</link>
      <author>h3rald@h3rald.com</author>
      <comments>http://www.h3rald.com/articles/log-jun-2009/#comments</comments>
      <category>personal_log</category>
      <category>vim</category>
      <category>ruby</category>
      <category>wedding</category>
    </item>
    <item>
      <title>Personal Log - May 2009</title>
      <description>&lt;p&gt;Yet another extremely busy month, as you can see from the total absence of blog posts and lack of tweets even. Things are getting pretty hectic at work now I guess: less people, more work, more responsibility, same money. They call it &lt;cite&gt;contingency&lt;/cite&gt;; it&amp;#8217;s the latest trend in the Western World, didn&amp;#8217;t you know? I&amp;#8217;m really not impressed. I can&amp;#8217;t complain though I guess: I still enjoy my job very much and I know it could be much worse, so it&amp;#8217;s just a matter of enduring until autumn &amp;#8212; or so they say.&lt;/p&gt;
&lt;h3&gt;Star Trek Premiere&lt;/h3&gt;
&lt;p&gt;The month started with an event I&amp;#8217;d been looking for for months: the &lt;em&gt;premiere&lt;/em&gt; of Star Trek XI, aka &amp;#8220;Star Trek&amp;#8221;. It&amp;#8217;s not that J.J. Abrahms couldn&amp;#8217;t come up with a more original name (&lt;em&gt;Star Trek: Academy&lt;/em&gt; used to be the working title, at one point), he simply wanted to tell the world that this movie was a new beginning, an elaborate way to start from scratch, to reboot what was more than once dubbed &lt;em&gt;a dying franchise&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;The movie was enjoyable &amp;#8211; daring and a bit flamboyant &amp;#8211; but still enjoyable nonetheless. I consider myself a Star Trek fan, and although it was &lt;em&gt;not&lt;/em&gt; the usual Star Trek movie, I somehow liked Abrahms&amp;#8217; bold revisitation of Roddenberry&amp;#8217;s universe. Take a bunch of unknowns (Chris Pine) or semi-unknowns (Zachary Quinto), then add some spicy British humor (Simon Pegg) and some old friend (Leonard Nimoy) and throw in an awful lot of &lt;span class="caps"&gt;XXI&lt;/span&gt; century special effects: what you get is not the usual, let&amp;#8217;s-all-rock-because-we&amp;#8217;re-hit traditional Star Trek, of course, it&amp;#8217;s an &lt;em&gt;alternate&lt;/em&gt; version of it.&lt;/p&gt;
&lt;p&gt;That&amp;#8217;s precisely what the movie is meant to be: what Star Trek would have look like if it had been created in the &lt;span class="caps"&gt;XXI&lt;/span&gt; century. The timeline feels disrupted since the very first minute (nevermind the end!), with a Jim Kirk stealing his stepfather&amp;#8217;s car. Chris Pine is an &lt;a href="http://memory-alpha.org/en/wiki/James_T._Kirk_(alternate_reality)"&gt;alternate&lt;/a&gt; Kirk, quite different from the original one, but not that bad. Zachary Quinto, on the other hand, is a true revelation: he definitely is the new Spock, and he couldn&amp;#8217;t have been cast better. So is Simon Pegg as Scotty, but unfortunately he&amp;#8217;s not involved enough.&lt;/p&gt;
&lt;p&gt;The baddies were a bit of a letdown. Nero is a bit too flat, and his ship is way too fancy, no matter where it comes from. Clearly some Hollywood junkie wanted a big, invulnerable dark ship to bring havoc in the galaxy, but that is &lt;span class="caps"&gt;NOT&lt;/span&gt; a Romulan ship, period.&lt;/p&gt;
&lt;p&gt;At any rate, I enjoyed the movie and I&amp;#8217;m looking forward to the second one, which I hope it will be followed by many others.&lt;/p&gt;
&lt;p&gt;Unfortunately in Italy Star Trek is not worshiped in Italy as in it is the US, which is very unfortunate&amp;#8230; Roxanne and I decided to play along and go to the cinema half-dressed-up, but our friends Elora and Michelle came with a full-blown Uhura uniform! The whole cinema kept staring at us. It was a bit freaky, but fun (check out the pics on Facebook &amp;#8212; if you can, that is, I won&amp;#8217;t post them here!).&lt;/p&gt;
&lt;h3&gt;Wedding Planning&lt;/h3&gt;
&lt;p&gt;Just over a month to my wedding. Scared? You bet. Stressed out? Indeed. Roxanne and I managed to get most of the things organized in the end, luckily. In particular, this month:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;We went to the British Consulate in Milan, and applied to get Roxanne&amp;#8217;s legal documents.&lt;/li&gt;
	&lt;li&gt;I bought and had the 7 vest sets delivered to Roxanne&amp;#8217;s brother&amp;#8217;s (Caspar) place, in London.&lt;/li&gt;
	&lt;li&gt;I ended up buying 8 (buy three, get one free) morning suits from &lt;a href="http://www.marksandspencer.com/gp/product/B000N65ELG?extid=pg_msf&amp;amp;247SEM"&gt;Marks and Spencer&lt;/a&gt;, and had them delivered to Caspar&amp;#8217;s place. He&amp;#8217;ll be sending all the stuff over soon, hopefully.&lt;/li&gt;
	&lt;li&gt;Roxanne got the dresses for the maids of honor, and apparently we have to collect them on monday.&lt;/li&gt;
	&lt;li&gt;We sent all the invites we needed to send, but we&amp;#8217;re still waiting for confirmations. It looks like it won&amp;#8217;t be a big wedding, probably around to 60-70 people mark.&lt;/li&gt;
	&lt;li&gt;We ordered the &lt;a href="http://weddings.about.com/cs/glossary/g/Bomboniere.htm"&gt;bomboniere&lt;/a&gt;, they should come through soon.&lt;/li&gt;
	&lt;li&gt;Uncle John told us he had the music for the church and the reception sorted out.&lt;/li&gt;
	&lt;li&gt;We got the rings!&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We &lt;em&gt;still&lt;/em&gt; have to organize a few things, namely:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Write and print the prayer books&lt;/li&gt;
	&lt;li&gt;Book the flight for one of my ushers&lt;/li&gt;
	&lt;li&gt;Get some fancy gifts for the bestman and the rest of the people involved in the ceremony&lt;/li&gt;
	&lt;li&gt;Get married civilly here in Genoa&lt;/li&gt;
	&lt;li&gt;Organize a party at our place for the people who can&amp;#8217;t come to the wedding&lt;/li&gt;
	&lt;li&gt;Do something else I can&amp;#8217;t remember right now&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Yes, we are still busy as hell. I&amp;#8217;m looking forward to it all, but I&amp;#8217;ll definitely be much more relaxed when it&amp;#8217;s all over!&lt;/p&gt;
&lt;h3&gt;Home Internet: Epilogue?&lt;/h3&gt;
&lt;p&gt;I got broadband at home, finally, after five months. Let&amp;#8217;s do a quick recap:&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;Last December I signed up to Libero Infostrada, and told them I wanted to disconnect from Telecom&lt;/li&gt;
	&lt;li&gt;In January I actually got disconnected from Telecom, got a new phone line contract, but the Internet was never activated.&lt;/li&gt;
	&lt;li&gt;I kept calling clueless operators on both ends pointlessly for 2-3 months.&lt;/li&gt;
	&lt;li&gt;I got pissed off with Libero, so in April I signed up to Tele2, telling them to disconnect me from Libero. They told me it would take at least 4 weeks.&lt;/li&gt;
	&lt;li&gt;Meanwhile, I signed up to 3g, and got an Internet &lt;span class="caps"&gt;USB&lt;/span&gt; key. At least I can go online, even if with a crappy &lt;span class="caps"&gt;UMTS&lt;/span&gt; connection.&lt;/li&gt;
	&lt;li&gt;After a month, Telecom rings me asking if I want to come back to them, promising I&amp;#8217;ll have the Internet back on &lt;em&gt;soon enough&lt;/em&gt;. Out of desperation, I accept and tell them to disconnect me from Tele2.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Just when I was about to write a long post cursing Telecom and their perverted schemes to force their customers to stay with them, I receive a call from Libero and they tell me that the Internet is now activated! Unbelievable. Now all I have to do is send letters to all the other ISPs (they don&amp;#8217;t do these things on the phone &amp;#8212; clueless operators, remember?) telling them I don&amp;#8217;t want anything to do with them anymore.&lt;/p&gt;
&lt;p&gt;This is how broadband Internet works in Italy. Jealous?&lt;/p&gt;
&lt;h3&gt;Nimrod&lt;/h3&gt;
&lt;p&gt;Last month I decided I would stop programming until after the wedding and so I did (at least at home). Nevertheless, I still keep strive to keep up-to-date with everything concerning technology and in particular programming.&lt;/p&gt;
&lt;p&gt;Out of all the tech news I came across throughout this month, the &lt;a href="http://force7.de/nimrod/"&gt;Nimrod&lt;/a&gt; programming language definitely struck me the most. A German guy came up with a new language &amp;#8212; that&amp;#8217;s not a big news, new programming languages are born every week, if not every day.&lt;/p&gt;
&lt;p&gt;I believe Nimrod is different though. Basically, here&amp;#8217;s why:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;It&amp;#8217;s a mixture of Lisp, Python and C. It looks a bit like Python and it behaves like it (indentation matters), it allows the creation of macros, like in Lisp, and &amp;#8211; this is what &lt;em&gt;really&lt;/em&gt; matters to me &amp;#8211; it compiles to plain C (which can then be compiled using &lt;span class="caps"&gt;GCC&lt;/span&gt; or whatever).&lt;/li&gt;
	&lt;li&gt;It is open source and can be used to produce commercially distributed executables.&lt;/li&gt;
	&lt;li&gt;The &lt;a href="http://force7.de/nimrod/manual.html"&gt;manual&lt;/a&gt; is simple to read (but with a few rough edges), and the language looks simple to learn.&lt;/li&gt;
	&lt;li&gt;The language is not yet complete, but it&amp;#8217;s getting close to a 1.0 release. It works as advertised, nonetheless.&lt;/li&gt;
	&lt;li&gt;It offers a comprehensive standard library, and a &lt;em&gt;huge&lt;/em&gt; amount of libraries and wrappers from everything from Windows &lt;span class="caps"&gt;API&lt;/span&gt; to &lt;span class="caps"&gt;GTK&lt;/span&gt; and Cairo.&lt;/li&gt;
	&lt;li&gt;It is cross platform, the Windows version even comes with a one-click installer.&lt;/li&gt;
	&lt;li&gt;It has garbage collection &lt;em&gt;and&lt;/em&gt; it supports manual memory management, if you need it.&lt;/li&gt;
	&lt;li&gt;It&amp;#8217;s statically typed, with type inference&lt;/li&gt;
	&lt;li&gt;It can generate standalone executables, with very little overhead (90KB for an hello world program).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A language like this has been my secret dream for a long time. I thought no one would ever come up like this. I am really looking forward to give it a proper try someday. What&amp;#8217;s wrong with it? For now, a few bits are missing (like native serialization), other than that someone pointed out the weird, rather extreme case insensitiveness of the language. Basically, case &lt;em&gt;and underscores&lt;/em&gt; are ignored to &lt;cite&gt;allow programmers to use their own programming conventions&lt;/cite&gt;. &lt;br /&gt;
Personally I don&amp;#8217;t think this is that bad. After all, if you name your variables &amp;#8220;a_thing&amp;#8221; and &amp;#8220;aThing&amp;#8221; and you want them to mean different things, that&amp;#8217;s bad programming style anyway. Nevertheless, as far as I know it&amp;#8217;s the only language I know which offers such an extreme degree of flexibility in this sense.&lt;/p&gt;
&lt;h3&gt;Learning new things&lt;/h3&gt;
&lt;p&gt;This month I also found myself to be extremely eager to learn about new things. I&amp;#8217;m still faithful to Ruby and all that, but I&amp;#8217;m opening up to new possibility, for different things:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;I decided to start listening to slightly more technical podcasts, which are _not_related to tech news. In this way, I don&amp;#8217;t have the pressure of having to listen to them on a regular basis. Other than &lt;a href="http://twit.tv/FLOSS"&gt;&lt;span class="caps"&gt;FLOSS&lt;/span&gt; Weekly&lt;/a&gt;, which is probably the best show about Open Source Software out there, I&amp;#8217;m going to try out &lt;a href="http://www.se-radio.net/"&gt;Software Engineering Radio&lt;/a&gt; and &lt;a href="http://thecommandline.net/"&gt;The Command Line&lt;/a&gt;, both slightly more technical.&lt;/li&gt;
	&lt;li&gt;Because I decided to put my personal programming projects on hold, I&amp;#8217;m having all sort of new ideas about even &lt;em&gt;more&lt;/em&gt; projects I could start as soon as I can. No anticipations until after my wedding, of course.&lt;/li&gt;
	&lt;li&gt;I&amp;#8217;m using Vim all the time now, both at work and at home. I feel confident with it, but I feel I still have a lot to learn, especially when it comes to marks, registers, etc. And I&amp;#8217;m not yet ready to write an article about it &amp;#8212; not the kind of article I&amp;#8217;d like to write, anyway.&lt;/li&gt;
	&lt;li&gt;I&amp;#8217;d like to learn more about Javascript and JQuery. I played around with it and &lt;em&gt;loved it&lt;/em&gt;, but I really never used it for anything serious yet. This, however, may change in the future.&lt;/li&gt;
&lt;/ul&gt;</description>
      <pubDate>Sat, 30 May 2009 22:35:00 -0600</pubDate>
      <guid>http://www.h3rald.com/articles/log-may-2009/</guid>
      <link>http://www.h3rald.com/articles/log-may-2009/</link>
      <author>h3rald@h3rald.com</author>
      <comments>http://www.h3rald.com/articles/log-may-2009/#comments</comments>
      <category>personal_log</category>
      <category>programming</category>
      <category>wedding</category>
    </item>
    <item>
      <title>Personal Log - April 2009</title>
      <description>&lt;p&gt;April is tratidionally a rather busy month: Easter, public holidays, and &amp;mdash; always &amp;mdash; some deadline to meet at work. Moreover, my birthday is also in April which makes it even more busy! Let&amp;#8217;s see what happened this year&amp;#8230;h3. Using Ruby in a corporate environment&lt;/p&gt;
&lt;p&gt;I&amp;#8217;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 &lt;em&gt;their&lt;/em&gt; time, so now I am &lt;em&gt;officially&lt;/em&gt; in charge of workflow improvements and automation (it&amp;#8217;s even in my job description!).&lt;/p&gt;
&lt;p&gt;This month a colleague of mine and I had to figure out a way to write some documents &lt;strong&gt;once&lt;/strong&gt; in &lt;span class="caps"&gt;XML&lt;/span&gt; format and then produce different kind of outputs (other &lt;span class="caps"&gt;XML&lt;/span&gt; files, PDFs, etc.) using the &lt;a href="http://dita-ot.sourceforge.net/"&gt;&lt;span class="caps"&gt;DITA&lt;/span&gt; Open Toolkit&lt;/a&gt;. 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.&lt;/p&gt;
&lt;p&gt;We ended up hacking together a &lt;em&gt;system&lt;/em&gt; using:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://office.microsoft.com/en-us/infopath/default.aspx"&gt;Microsoft Infopath&lt;/a&gt; as &lt;span class="caps"&gt;XML&lt;/span&gt; editor for the end users (the company buys it by default, so no worries there)&lt;/li&gt;
	&lt;li&gt;A Ruby program to parse and manipulate the original &lt;span class="caps"&gt;XML&lt;/span&gt; and produce &lt;span class="caps"&gt;DITA&lt;/span&gt;-compatible &lt;span class="caps"&gt;XML&lt;/span&gt; files.&lt;/li&gt;
	&lt;li&gt;Some &lt;a href="http://ant.apache.org/"&gt;Apache Ant&lt;/a&gt; tasks available in the open toolkit to produce an &lt;span class="caps"&gt;XSL&lt;/span&gt;-FO file&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://xmlgraphics.apache.org/fop/"&gt;Apache &lt;span class="caps"&gt;FOP&lt;/span&gt;&lt;/a&gt; to produce the &lt;span class="caps"&gt;PDF&lt;/span&gt; from the &lt;span class="caps"&gt;XSL&lt;/span&gt;-FO file&amp;#8230;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The thing seems to work fine (after a lot of tweaking), and I really enjoyed creating the Ruby program to &lt;em&gt;glue&lt;/em&gt; everything together. I even got a chance to introduce my colleagues to the wonderful world of &lt;a href="http://hobix.com/textile/"&gt;Textile&lt;/a&gt; (they are so happy that they don&amp;#8217;t want to use &lt;span class="caps"&gt;WYSIWYG&lt;/span&gt; editors anymore!).&lt;/p&gt;
&lt;h3&gt;Easter in London&lt;/h3&gt;
&lt;p&gt;As usual, Roxanne and I spent our Easter holidays in London, at her brother&amp;#8217;s place. This year we actually had 9 days to go around &lt;del&gt;squandering money&lt;/del&gt;  spending &lt;em&gt;wisely&lt;/em&gt; in food, books, clothes and entertainment.&lt;/p&gt;
&lt;p&gt;Most notably, I managed to drag Roxanne to &lt;a href="http://www.foyles.co.uk/"&gt;Foyles&lt;/a&gt; and I got myself a copy of &lt;a href="http://www.pragprog.com/the-pragmatic-programmer"&gt;The Pragmatic Programmer&lt;/a&gt;, which I&amp;#8217;m reading avidly. If it was up to me I was going to buy half of the computing section, but Roxanne &lt;em&gt;kindly pointed out&lt;/em&gt; that I could get all of them from Amazon for half the price. &lt;br /&gt;
And she was right: for my birthday I preordered a copy of &lt;a href="http://www.amazon.com/Programming-Language-Pragmatics-Third-Michael/dp/0123745144"&gt;Programming Language Pragmatics, 3rd Ed.&lt;/a&gt;, which should be shipped soon.&lt;/p&gt;
&lt;h3&gt;Wedding planning&lt;/h3&gt;
&lt;p&gt;My spreadsheets for the wedding guests, wedding expenses (!) and &amp;#8230;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 &lt;em&gt;&lt;span class="caps"&gt;RSVP&lt;/span&gt; within May&lt;/em&gt; on them, so they &lt;em&gt;have&lt;/em&gt; to be out in one or two weeks at most.&lt;/p&gt;
&lt;p&gt;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 (&lt;span class="caps"&gt;SEVEN&lt;/span&gt;) &lt;em&gt;morning suits&lt;/em&gt; off eBay, in the right sizes! Hopefully I&amp;#8217;ll be able to get them by the end of next week (if my bestman manages to let me know his sizes).&lt;/p&gt;
&lt;h3&gt;XBox 360 Gaming&lt;/h3&gt;
&lt;p&gt;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.&lt;br /&gt;
Right now we&amp;#8217;re playing &lt;a href="http://xbox360.ign.com/objects/949/949455.html"&gt;Mirror&amp;#8217;s Edge&lt;/a&gt;, &lt;a href="http://xbox360.ign.com/objects/718/718963.html"&gt;Mass Effect&lt;/a&gt;, and &lt;a href="http://xbox360.ign.com/objects/746/746631.html"&gt;Unreal Tournment &lt;span class="caps"&gt;III&lt;/span&gt;&lt;/a&gt;. The last one was a special surprise present from Roxanne (&lt;em&gt;&amp;#8220;&amp;#8230;so we can kill each other!&amp;#8221;&lt;/em&gt; &amp;mdash; she&amp;#8217;s really lovely at times!).&lt;/p&gt;
&lt;h3&gt;Other tech-related tidbits&lt;/h3&gt;
&lt;ul&gt;
	&lt;li&gt;I can&amp;#8217;t wait to go to the cinema to watch &lt;a href="http://www.imdb.com/title/tt0796366/"&gt;Star Trek XI&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;I started using &lt;a href="http://www.shelfari.com/"&gt;Shelfari&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;I started using &lt;a href="http://start.io"&gt;Star.io&lt;/a&gt; as my personal, bare-bones start page.&lt;/li&gt;
	&lt;li&gt;I recently &lt;a href="http://www.h3rald.com/articles/concatenative-020"&gt;released Concatenative 0.2.0&lt;/a&gt;.&lt;/li&gt;
	&lt;li&gt;I&amp;#8217;m currently evaluating the possibility to create a Ruby-based &lt;em&gt;Document Authoring Framework&lt;/em&gt;. Stay tuned.&lt;/li&gt;
&lt;/ul&gt;</description>
      <pubDate>Mon, 27 Apr 2009 22:11:00 -0600</pubDate>
      <guid>http://www.h3rald.com/articles/log-apr-2009/</guid>
      <link>http://www.h3rald.com/articles/log-apr-2009/</link>
      <author>h3rald@h3rald.com</author>
      <comments>http://www.h3rald.com/articles/log-apr-2009/#comments</comments>
      <category>personal_log</category>
      <category>ruby</category>
      <category>books</category>
      <category>wedding</category>
    </item>
    <item>
      <title>Personal Log - March 2009</title>
      <description>&lt;p&gt;Another month &lt;em&gt;without&lt;/em&gt; the Internet at home. This is getting really annoying, and I decided to change provider, &lt;strong&gt;again&lt;/strong&gt;, hoping that I&amp;#8217;ll eventually get my broadband back, someday. Luckily I can still go online at work, but of course it&amp;#8217;s not the same thing: my time on Twitter and Facebook is now basically limited to weekends only, when Roxanne and I go down to Tuscany to stay with her parents.&lt;/p&gt;
&lt;h3&gt;Concatenative programming&lt;/h3&gt;
&lt;p&gt;For some weird reason I became fond of the &lt;a href="http://en.wikipedia.org/wiki/Concatenative_programming_language"&gt;Concatenative programming paradigm&lt;/a&gt;. I started reading about &lt;a href="http://www.latrobe.edu.au/philosophy/phimvt/joy/j00rat.html"&gt;Joy&lt;/a&gt; and then started to work on a Ruby &lt;span class="caps"&gt;DSL&lt;/span&gt; able to do the similar things: &lt;a href="/concatenative/"&gt;Concatenative&lt;/a&gt;. Another pet project &amp;mdash; as if I didn&amp;#8217;t have enough things to do already!&lt;/p&gt;
&lt;p&gt;Some people seemed pleased about it, especially on &lt;a href="http://www.reddit.com/r/ruby/comments/887kn/concatenative_programming_in_ruby"&gt;Reddit&lt;/a&gt; and &lt;a href="http://dzone.com/links/concatenative_programming_in_ruby.html"&gt;dzone&lt;/a&gt;. The downside of it is that it&amp;#8217;s still fairly slow if compared to Ruby code (which is not exactly fast, either!), so if I had some spare time I should really try to implement it as a C extension, maybe.&lt;/p&gt;
&lt;h3&gt;Learning new programming languages?&lt;/h3&gt;
&lt;p&gt;Incidentally, I&amp;#8217;m still fighting with myself on whether to learn another programming language or not. At this point, learning &lt;a href="http://www.factorcode.org"&gt;Factor&lt;/a&gt; could turn out to be more natural than months ago. However, I would only learn new programming languages as a hobby, as I don&amp;#8217;t need to do so for profit: luckily I&amp;#8217;m still a happy technical writer and I enjoy my job.&lt;/p&gt;
&lt;p&gt;I admit, I&amp;#8217;m still looking for &lt;em&gt;the&lt;/em&gt; perfect programming language which is fun to learn (not easy: fun), elegant, minimalist, fast, general purpose and cross platform (meaning Linux, Windows, and Windows Mobile as well). Of course there is no such thing out there and there will never be, so I&amp;#8217;m still evaluating the current alternatives. Possible candidates are Haskell, Factor, some dialect of Lisp or C. &lt;br /&gt;
Why C? Well, because I didn&amp;#8217;t do much with it since my first year at uni, and it could still be useful to write Ruby extensions or implement something at a lower level. After so much time getting spoiled by high level languages, I kinda miss the low level stuff. Ahhh where are all the pointers gone?!&lt;/p&gt;
&lt;p&gt;On the other hand, I&amp;#8217;m getting married soon, and I should use these months to help my wife-to-be a bit more with wedding planning (see next section). After all, I can always learn a new programming language &lt;em&gt;after&lt;/em&gt; getting married, right? &amp;#8230;&lt;em&gt;right?!&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;Wedding planning&lt;/h3&gt;
&lt;p&gt;Roxanne and I are slowly getting more and more things done for the wedding. Every attempt I made to introduce her to &lt;a href="http://en.wikipedia.org/wiki/Getting_things_done"&gt;&lt;span class="caps"&gt;GTD&lt;/span&gt;&lt;/a&gt; failed miserably so far, or better, it worked too well: she is now getting used to make lists and deciding on our &lt;em&gt;next actions&lt;/em&gt; for the weekend. &lt;br /&gt;
This weekend we booked our flights to Ireland, looked at cottages and hotels for the three days after the wedding (not the honeymoon yet, we&amp;#8217;ll have a late honeymoon in autumn), chose the waistcoats for me, my bestman and the ushers, and &amp;#8230;booked the wedding car!&lt;br /&gt;
Now, this turned out to be good fun! Take a look at &lt;a href="http://www.alleventslimos.com/Wedding/rolls_silver_cloud.html"&gt;Ruby&lt;/a&gt; (yes, yes, I know&amp;#8230; ), a Silver Cloud II 1961 Rolls Royce which will be ours for (less than) one day!&lt;/p&gt;
&lt;h3&gt;Other tech-related tidbits&lt;/h3&gt;
&lt;ul&gt;
	&lt;li&gt;I successfully migrated to Ubuntu 9.0.4 Jaunty. Everything works, except the flash plugin for Firefox.&lt;/li&gt;
	&lt;li&gt;I&amp;#8217;m now using TweetDeck as my main Twitter client on both Windows and Linux.&lt;/li&gt;
	&lt;li&gt;I&amp;#8217;m thinking of buying (after the wedding) an Eee PC (no Macs: Ubuntu is sleek and powerful enough &amp;emdash;and free, too).&lt;/li&gt;
	&lt;li&gt;We finally got an XBox 360 from eBay, this time it came through the post.&lt;/li&gt;
	&lt;li&gt;Roxanne is thinking of buying a big &lt;span class="caps"&gt;LCD&lt;/span&gt; TV to go with it &amp;emdash; I&amp;#8217;m politely (and sadly) postponing till after the wedding.&lt;/li&gt;
	&lt;li&gt;After listening a &lt;span class="caps"&gt;FLOSS&lt;/span&gt; Weekly episode featuring it, I think I&amp;#8217;ll get myself an &lt;a href="http://arduino.cc/"&gt;Arduino Board&lt;/a&gt; for my birthday.&lt;/li&gt;
&lt;/ul&gt;</description>
      <pubDate>Sun, 29 Mar 2009 22:04:00 -0600</pubDate>
      <guid>http://www.h3rald.com/articles/log-mar-2009/</guid>
      <link>http://www.h3rald.com/articles/log-mar-2009/</link>
      <author>h3rald@h3rald.com</author>
      <comments>http://www.h3rald.com/articles/log-mar-2009/#comments</comments>
      <category>personal_log</category>
      <category>wedding</category>
      <category>ruby</category>
    </item>
    <item>
      <title>Personal Log - February 2009</title>
      <description>&lt;p&gt;This has been a rather busy month, hence the lack of general Internet activity. I really wanted to post some more articles to my site, but for one reason or another I had to procrastinate more and more, and here we are at the end of the month again.&lt;/p&gt;
&lt;h3&gt;Recession time!&lt;/h3&gt;
&lt;p&gt;I&amp;#8217;ve always considered the current economic downturn as something happening &lt;em&gt;somewhere else&lt;/em&gt;: &lt;span class="caps"&gt;USA&lt;/span&gt;, England, Ireland&amp;#8230; but not in Italy, really: our country never boomed, we don&amp;#8217;t go mental with loans and mortgages (or at least we didn&amp;#8217;t use to), so there&amp;#8217;s no real reason for a full-on recession period.&lt;/p&gt;
&lt;p&gt;It turns out I was wrong. Other than the fact that our industries are more or less non-existant or already in debt, I didn&amp;#8217;t consider that:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Italians tend to panic a lot.&lt;/li&gt;
	&lt;li&gt;We have an awful lot of foreign business going on, a lot of multi-national companies opened up through the years lured by cheap workers and acceptable craftmanship.&lt;/li&gt;
	&lt;li&gt;Our government already &lt;del&gt;wastes&lt;/del&gt; invests a lot of money regularly, every year, to fuel a colossal, &lt;a href="http://dictionary.reference.com/browse/nepotistic"&gt;nepotistic&lt;/a&gt;, pointless bureaucratic machine they insist on calling &amp;#8220;State&amp;#8221;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Result: the recession is starting to hit properly over here too. People are saving money, they don&amp;#8217;t go out buying pointless crap, they are scared to ask for a raise at work&amp;#8230; the usual. I work for a foreign company which has been, as were most, forced to save some money to compensate some not-so-good First Quarter&amp;#8217;s revenues. This means less unnecessary expenses, less training, less travelling and less outsourcing, which didn&amp;#8217;t help improving the daily work experiece. Personally, I&amp;#8217;m not that affected by all this, nevertheless it made me bless the day my fianc&#233;e persuaded me to stop uni after my Bachelor&amp;#8217;s Degree to get a very rewarding, not-so-stressful job.&lt;/p&gt;
&lt;h3&gt;No &amp;#8217;Net @ Home&lt;/h3&gt;
&lt;p&gt;The most annoying thing of the month was (and still is) the lack of Internet access at our house. Let&amp;#8217;s do a quick recap:&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;After spending one year with Telecom Italia, Roxanne and I decided to change provider to save a bit of money and get more speed.&lt;/li&gt;
	&lt;li&gt;On &lt;em&gt;December 24th&lt;/em&gt; we requested a contract with &lt;a href="http://www.wind.it"&gt;Wind&lt;/a&gt;, after they assured that we&amp;#8217;d have the Internet back on in &lt;em&gt;just a few days, tops&lt;/em&gt;.&lt;/li&gt;
	&lt;li&gt;On &lt;em&gt;January 5th&lt;/em&gt; Telecom disconnected us.&lt;/li&gt;
	&lt;li&gt;On &lt;em&gt;January 12th&lt;/em&gt; Wind sent me a mail telling me that there was going to be a &lt;em&gt;15-day delay&lt;/em&gt; in the activation &amp;mdash; well, at least they told us so! We waited.&lt;/li&gt;
	&lt;li&gt;On &lt;em&gt;February 2nd&lt;/em&gt; I call Wind Customer Care hassling them to get a move on &amp;mdash; just some minor delays, &lt;em&gt;it will only take a few days, tops&lt;/em&gt;. We waited.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Our new Internet line has been &lt;em&gt;in the process of being activated&lt;/em&gt; ever since January 5th. Why? Because being a customer sucks, in Italy, and you can&amp;#8217;t do much about it.&lt;br /&gt;
Let me quote one of the 13 phone calls I made:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&amp;#8230; 5 minutes on hold, stupid music in the background &amp;#8230;&lt;/li&gt;
	&lt;li&gt;[Operator]: Good Evening Sir, I&amp;#8217;m &lt;random name&gt;, how can I help you?&lt;/li&gt;
	&lt;li&gt;[Me]: Hello, I&amp;#8217;m enquiring about the status of my Internet connection: I&amp;#8217;ve been disconnected since the 5th of January&amp;#8230;&lt;/li&gt;
	&lt;li&gt;[Operator]: Phone Number please?&lt;/li&gt;
	&lt;li&gt;[Me]: *** ******&lt;/li&gt;
	&lt;li&gt;&amp;#8230; 2 minutes on old &amp;#8230;&lt;/li&gt;
	&lt;li&gt;[Operator]: Name plase?&lt;/li&gt;
	&lt;li&gt;[Me]: Fabio Cevasco&lt;/li&gt;
	&lt;li&gt;[Operator]: Let me check&amp;#8230;&lt;/li&gt;
	&lt;li&gt;&amp;#8230; 6 minutes on hold, stupid music in the background &amp;#8230;&lt;/li&gt;
	&lt;li&gt;[Me]: Any luck?&lt;/li&gt;
	&lt;li&gt;[Operator]: One moment please&amp;#8230;&lt;/li&gt;
	&lt;li&gt;&amp;#8230; 2 minutes on hold, stupid music in the background &amp;#8230;&lt;/li&gt;
	&lt;li&gt;[Operator]: Sir, it says here that you are &lt;em&gt;in the process of being activated&lt;/em&gt;&lt;/li&gt;
	&lt;li&gt;[Me]: (you stupid idiot, I can check that on the Net in less than a minute) Yes, I know what, but why, exactly? It has been over a month&amp;#8230;&lt;/li&gt;
	&lt;li&gt;[Operator]: Let me check&amp;#8230;&lt;/li&gt;
	&lt;li&gt;&amp;#8230; 3 minutes on hold, stupid music in the background &amp;#8230;&lt;/li&gt;
	&lt;li&gt;[Operator]: There are some technical difficulties.&lt;/li&gt;
	&lt;li&gt;[Me]: What kind of technical difficulties?&lt;/li&gt;
	&lt;li&gt;[Operator]: I&amp;#8230; I don&amp;#8217;t think you can understand Sir, it&amp;#8217;s technical&amp;#8230;&lt;/li&gt;
	&lt;li&gt;[Me]: (!!!) I have a degree in IT Engineering, so yes, I think I can understand enough.&lt;/li&gt;
	&lt;li&gt;[Operator]: &amp;#8230;well, there&amp;#8217;s nothing I can do&amp;#8230; it says we&amp;#8217;re in the process of connecting you, it should be just&amp;#8230;&lt;/li&gt;
	&lt;li&gt;[Me]: &amp;#8230;a matter of a couple of days, yes, I know: it has been over a month though!&lt;/li&gt;
	&lt;li&gt;[Operator]: Sir, really, I can&amp;#8217;t really do much about it, you&amp;#8217;ll just have to wait&lt;/li&gt;
	&lt;li&gt;[Me]: Can you let me speak with the Technical Department?&lt;/li&gt;
	&lt;li&gt;[Operator]: No, sir, I can&amp;#8217;t: you see, your &lt;span class="caps"&gt;ADSL&lt;/span&gt; line is not yet activated, they can&amp;#8217;t do anything about it.&lt;/li&gt;
	&lt;li&gt;[Me]: Excuse me, but I&amp;#8217;d like to know what the problem is, and how long it will take to activate the line.&lt;/li&gt;
	&lt;li&gt;[Operator]: Sorry sir, we don&amp;#8217;t have this information, and we can&amp;#8217;t commit to a specific date.&lt;/li&gt;
	&lt;li&gt;[Me]: (!!!) May I speak to someone who knows this? May I speak to your superior?&lt;/li&gt;
	&lt;li&gt;[Operator] No, you can&amp;#8217;t speak to my superior. You&amp;#8217;ll just have to wait, I&amp;#8217;m sorry.&lt;/li&gt;
	&lt;li&gt;[Me]: Well, it has been over a month, and I don&amp;#8217;t know if you realize that you were supposed to connect me in just a few days and&amp;#8230;&lt;/li&gt;
	&lt;li&gt;[Operator]: Thank you for calling sir, have a good day.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That barely conveys the frustration I felt and I&amp;#8217;m still feeling now. I can&amp;#8217;t even sue them: I could get 100 Euro at most after spending at least a couple of thousands in lawyer. So much for the land of sunshine huh?&lt;/p&gt;
&lt;h3&gt;Programming in Ruby, again&lt;/h3&gt;
&lt;p&gt;Some of you may be pleased to know I&amp;#8217;m back coding in Ruby after slacking for months. It&amp;#8217;s just the time of the year, I guess. &lt;br /&gt;
I&amp;#8217;m also evangelizing the language quite a bit at work: after I wrote a few scripts on demand, I slowly lured one of my colleagues to Vim, the Texile markup and then finally the Ruby language. He&amp;#8217;s going through the &lt;a href="http://www.h3rald.com/articles/hlrb-review"&gt;Humble Little Ruby Book&lt;/a&gt; and he&amp;#8217;s loving it, so far. He&amp;#8217;ll hopefully be fully assimilated in a few weeks at most, and after that there will be no going back!&lt;/p&gt;
&lt;p&gt;This inspired me to start a full rewrite of &lt;a href="http://www.h3rald.com/tags/redbook/"&gt;RedBook&lt;/a&gt;, my little Ruby daily logger. It will feature a SQLite backend and Merb&amp;#8217;s Datamapper to take care of the dirty work.&lt;br /&gt;
Unfortunately, even if the new sources are already available on &lt;a href="http://github.com/h3rald/redbook/tree/master"&gt;GitHub&lt;/a&gt;, it will take me approximately a few more weeks to complete all the plugins and more to finish the RDoc documentation and &amp;mdash; hopefully &amp;mdash; a fully-fledged user manual. It&amp;#8217;s &lt;strong&gt;the&lt;/strong&gt; pet project, after all&amp;#8230;&lt;/p&gt;
&lt;p&gt;On the other hand, it will take me considerably less time (a few days?) to release the next version of my &lt;a href="http://www.h3rald.com/tags/rawline"&gt;RawLine&lt;/a&gt; library, featuring:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Ruby 1.9 support&lt;/li&gt;
	&lt;li&gt;A handy little function for filename completion&lt;/li&gt;
	&lt;li&gt;Readline emulation, i.e. just &lt;code&gt;include Rawline&lt;/code&gt; and use it as if it was &lt;span class="caps"&gt;GNU&lt;/span&gt; Readline&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Of course this doesn&amp;#8217;t mean RawLine is a complete, 100% Ruby port of the &lt;span class="caps"&gt;GNU&lt;/span&gt; Readline library, but it is definitely more Ruby-ish, more cross platform (try using Readline with Ruby on Windows&amp;#8230;), and usable enough for most of the normal things, like:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;tab completion&lt;/li&gt;
	&lt;li&gt;line editing (but no vi or emacs mode yet, sorry)&lt;/li&gt;
	&lt;li&gt;history&lt;/li&gt;
	&lt;li&gt;quick and easy key bindings&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Once this comes out, I&amp;#8217;ll be implementing features on-demand, as &lt;span class="caps"&gt;GNU&lt;/span&gt; Readline is huge and offers way too many things anyone would ever need. Patches and contributions are of course more than welcome, though.&lt;/p&gt;
&lt;p&gt;For all my open source Ruby projects, after &lt;a href="http://www.h3rald.com/articles/where-does-your-ruby-code-live"&gt;pondering the alternatives&lt;/a&gt;, I decided to go with the following setup:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;My own site for the home pages of the projects&lt;/li&gt;
	&lt;li&gt;RubyForge for gem support and for RDoc documentation&lt;/li&gt;
	&lt;li&gt;GitHub as source code repository&lt;/li&gt;
	&lt;li&gt;LightHouse for issue tracking&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I hope it works out&amp;#8230;&lt;/p&gt;</description>
      <pubDate>Fri, 27 Feb 2009 05:09:00 -0700</pubDate>
      <guid>http://www.h3rald.com/articles/log-feb-2009/</guid>
      <link>http://www.h3rald.com/articles/log-feb-2009/</link>
      <author>h3rald@h3rald.com</author>
      <comments>http://www.h3rald.com/articles/log-feb-2009/#comments</comments>
      <category>personal_log</category>
      <category>ruby</category>
    </item>
    <item>
      <title>Personal Log - January 2009</title>
      <description>&lt;p&gt;Those who read my blog regularly may have noticed how I normally refrain from posting articles concerning my own life. I used to have a more blog-like web site, but things changed: &lt;em&gt;"Who would want to read about my life, anyway?"&lt;/em&gt; &amp;mdash; That's what I always thought. Hence, I focused on writing general-interest, computer-related articles about programming in Ruby, about some IT book which came out, or about the latest chapter in the Browser Wars. You'll find all this in the &lt;a href="/archives/"&gt;archives&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;On the other hand, I thought it may be useful for my own sake to keep a more personal log of what happens in my life, so here it is, the first of hopefully many &lt;em&gt;personal log&lt;/em&gt; post, covering January 2009. ### Being social&lt;/p&gt;

&lt;p&gt;Call it a New Year Resolution or simply an unexpected change, I joined &lt;a href="http://www.facebook.com"&gt;Facebook&lt;/a&gt; on December 31st 2008, after years of adamant opposition against the popular social network. 
What I didn't realized is the amount of people who use it regularly. This may sound naive to the Americans reading this blog, but as an Italian, I was really shocked to discover that about 80% of the people I know here in Italy, here in &lt;em&gt;Genoa&lt;/em&gt; use it. &lt;/p&gt;

&lt;p&gt;When I started using Twitter, I really couldn't find many people I knew in "real life": &lt;a href="http://www.andreagandino.com"&gt;Andrea Gandino&lt;/a&gt; was the only one I vaguely remembered from uni, but none of the people I knew from elementary school was there, of course! 
Why's that? For one because Twitter has always been more geared towards geeks, and also because Twitter is &lt;em&gt;not available in Italian&lt;/em&gt;.
Believe it or not, this makes the difference. Immediately after I joined Facebook &lt;em&gt;my dad&lt;/em&gt; joined it too, and found people he knew &lt;em&gt;from school&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Enough with the sensationalism now, Facebook is old news and the more I write about it the more I sound out-of-the-loop. Anyhow, I quickly discovered how annoying Facebook apps can be and I immediately learn how useful the Ignore button is. Are there people actually using those apps on a daily basis? I can't believe it.
Facebook is good for contacting people, that's about it. That's all I can say after 1 month of moderate usage. &lt;/p&gt;

&lt;p&gt;The other funny aspect of this is the way people react to my status updates and everything I allegedly put on there. Let's clarify this. I do NOT provide &lt;em&gt;any&lt;/em&gt; content just for Facebook:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I update my status every time I post on twitter&lt;/li&gt;
&lt;li&gt;I post a link every time I save a bookmark on delicious&lt;/li&gt;
&lt;li&gt;I post lengthy notes every time I post to my blog&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That's the truth. I consider it normal, but I find it amusing when some colleague of mine comments to my status asking &lt;em&gt;But... What is Data Mapper?&lt;/em&gt;. No one on Twitter would do that. Simply because the wide majority of people who follow me on Twitter are Rubyists.&lt;/p&gt;

&lt;p&gt;What about &lt;a href="http://www.twitter.com"&gt;Twitter&lt;/a&gt; then? I'm using it more than before (that's part of the same New Year Resolution) &lt;em&gt;and&lt;/em&gt; I am actually following some complete strangers! It's nice, in a way. I never did it before because I couldn't keep up with the tweets coming up, but now I can. Here's how:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Following &lt;a href="http://dblume.livejournal.com/112262.html"&gt;these&lt;/a&gt; instructions I quickly crafted a special feed which now sits permanently in my Google Reader and updates me with all the tweets from everyone I'm following.&lt;/li&gt;
&lt;li&gt;I started using &lt;a href="http://www.tweetreplies.com/"&gt;Tweet Replies&lt;/a&gt; so that every &lt;a href="http://www.twitter.com/h3rald"&gt;@h3rald&lt;/a&gt; reply goes straight to my mail. It works perfectly.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Wedding Planning&lt;/h3&gt;

&lt;p&gt;Let's move on to something much more important and life-changing. &lt;strong&gt;I am getting married&lt;/strong&gt; this July, in Ireland, after 5 (five!) years of engagement with my beloved Roxanne. We've also been living together for over a year, and it has been awesome (so far), so we both decided it's the right time to tie the knot and get on with it!&lt;/p&gt;

&lt;p&gt;The wedding is just six months away and we'd better get something done, and quick. We already booked the church and the reception, so far, so the main things are sorted. We also attended our pre-nuptial course with our local priest, another 8 couples plus three quite obnoxious "expert" couples for 7 (seven!) weeks, every friday night (those people are nuts). If we survived this, we can survive everything, I tell you. &lt;/p&gt;

&lt;p&gt;Because we're getting married in Ireland, we have to take care of some extra things like taking my relatives abroad (it's definitely easier than bringing 70 &lt;em&gt;O'Mahoneys, Quinns, etc. etc.&lt;/em&gt; here, that's for sure), organizing car rentals, et al. But it will be great, it will be fun, and I can't wait! &lt;/p&gt;

&lt;h3&gt;Writing and Programming&lt;/h3&gt;

&lt;p&gt;On the programming side, I was actually thinking about learning &lt;a href="http://www.haskell.org"&gt;Haskell&lt;/a&gt;, once and for all. I have a deep admiration and respect for the language and what it can do, but I've always been somewhat overwhelmed by its functional purity, monads, and similar. After reading &lt;a href="http://learnyouahaskell.com/chapters"&gt;Learn You a Haskell&lt;/a&gt; (an excellent read), I moved on to &lt;a href="http://book.realworldhaskell.org/read/"&gt;Real World Haskell&lt;/a&gt;, and I was understanding &lt;em&gt;everything&lt;/em&gt;, amazingly. &lt;/p&gt;

&lt;p&gt;Then I decided to take a break and try coding a little bit in Ruby (I had to prepare a small script for work), and that was enough to motivate me to start working on &lt;a href="http://www.h3rald.com/tags/redbook"&gt;RedBook&lt;/a&gt; again. I was determined to polish it up and put a shiny 1.0 badge on it, but I decided to stop and re-think the whole thing. I originally thought of it as a &lt;em&gt;simple&lt;/em&gt; daily logging program to record timestamped entries to a YAML file, but then added more and more features until I finally realized that &lt;em&gt;perhaps&lt;/em&gt;I could have used SQLite as its backend. It turns out I was right: when I started coding RedBook about a year ago, I didn't know much about Ruby, andI didn't want to use a relational database because it seemed too unnecessary cumbersome for a beginner. It turns out I was totally wrong and &lt;a href="http://datamapper.org/"&gt;DataMapper&lt;/a&gt; proved to be an excellent, simple and powerful choice. &lt;/p&gt;

&lt;p&gt;RedBook might be ready in a few months, when also &lt;em&gt;all its documentation&lt;/em&gt; is ready, too. As a technical writer, I really cannot afford to release any amateur pet project to the while without documentation, it would be a bad example, wouldn't it? 
To make the whole thing more fun, I'll try (&lt;em&gt;try&lt;/em&gt; I said, I may change my mind) to write the RedBook Manual using &lt;a href="http://www.latex-project.org/"&gt;LaTeX&lt;/a&gt;. It shouldn't be too complicated as I'll need only 10% of its features, and hopefully the result will be pleasant enough to read. &lt;/p&gt;

&lt;p&gt;That's it for this month, I think. For those who think this is just a long note on my Facebook profile, check out &lt;a href="http://www.h3rald.com/articles/log-jan-2009"&gt;the real deal&lt;/a&gt; on my &lt;a href="http://www.h3rald.com"&gt;web site&lt;/a&gt; (did I say Facebook is &lt;em&gt;totally useless&lt;/em&gt; for web promotion?).&lt;/p&gt;</description>
      <pubDate>Sun, 25 Jan 2009 03:51:00 -0700</pubDate>
      <guid>http://www.h3rald.com/articles/log-jan-2009/</guid>
      <link>http://www.h3rald.com/articles/log-jan-2009/</link>
      <author>h3rald@h3rald.com</author>
      <comments>http://www.h3rald.com/articles/log-jan-2009/#comments</comments>
      <category>personal_log</category>
      <category>wedding</category>
    </item>
  </channel>
</rss>
