Older blog entries for cinamod (starting at number 129)

AbiWord now can use stdin and stdout for its supported document and image types. A side-effect of this change is quite a speedup for remote files, since AbiWord no longer needs to load the file more than once when importing. Plus, this change allows you to do batch conversions without hitting the disk. It should make WebApp people happy. Eg:

AbiWord-2.5 --to=html --to-name=fd://1 fd://0 < wv/examples/bold.doc

If you like to live dangerously and also have lots of Microsoft Works documents of bad teenage poetry lying around on floppy disks and you're just itching to read them, you should check out the bleeding edge versions of AbiWord and libwps.

This neat little library uses the same public interface as libwpd, the WordPerfect import library. This made it super-simple to integrate into AbiWord, as I could just instantiate a subclass of AbiWord's existing WordPerfect import filter. This is a testament to excellent design on the part of libwpd's authors and to the benefits of interface reuse in general.

Marc, Will, Fridrich, and Andrew, I and bad teenage poetry aficionados everywhere thank you :)

3 Dec 2006 (updated 3 Dec 2006 at 22:50 UTC) »
Work

As some of you know, I left Teragram about 2 months ago. It was a great job that I had for about 3.5 years. I really miss the guys there and the work. Trying to meet up with some of them for billiards has thus-far proven difficult :)

It was time to move on, though. No matter how much I loved my job, my prospects for career advancement (pay raises, promotions, etc.) were fairly limited by the relatively small size of the company (~20 people, ~6 engineers) and its flat hierarchy (it went from me->president).

So, now I'm at ZoomInfo and enjoying things so far. They're a NLP-based search engine company based in Waltham, a suburb of Boston. The transition was a little longer and rougher than I had hoped, but things are smoothing out nicely. I've done the majority of my work on Win32 using MFC (mostly for STL-like container classes and database connectivity, which beats the heck out of straight ODBC), instead of POSIX as I had in my previous jobs. The culture shock was pretty big :) At least I have Mingw/MSYS and Win32 ports of Emacs and GVim. People look at me funny around here. But not as funny as I look at them when they make outlandish claims like "most of our code is cross-platform already. Porting it to Linux should be easy!" [/famous-last-words]

I managed to finish my first project last week, and have it shipped off to a happy client. And I finally got rolling on my 2nd project, which had been stalled for a while due to scheduling conflicts with an Israeli teammate. I hope to really kick butt on this project - this next week is my chance to prove myself to my new boss. Wish me luck!

Oh, and if anyone in the greater Boston area wants to meet up for billiards, there's this sports bar/pool hall nearby called "The Wave" that has about 20 tables and is free from 5pm-7pm on Fridays. It has decent food and drinks and some other amenities. It's a great way to cap off the work-week. Email me for more information.

3 Dec 2006 (updated 3 Dec 2006 at 22:56 UTC) »
It compiles. Ship it!

I've been pretty busy hacking on AbiWord lately, in stark contrast to how I've spent the past few months.

I've managed to change the command-line printing over to use our GnomePrint-based driver instead of our own PostScript printer driver. The results are much nicer in quality than before, and the output will match whatever hitting the 'print' button does. We'll probably switch over to GtkPrint and Cairo by the next major AbiWord version (2.8).

I've managed to get AbiWord's export hooked up to stdout, and I'm working on getting import hooked up to stdin. This is a common request for people writing web-apps, such as CMSes, who like to convert DOCs and whatnot into HTML, but don't want to touch the HD. Since I deprecated most of wvWare's utilities in favor of using AbiWord, this should help achieve feature parity. I don't have the time to maintain software that competes with other software I maintain, especially since AbiWord supports so many more file types and does a much better job of preserving the semantic and visual representation of the documents...

Getting import from STDIN to work will probably be a substantial amount of work. Abi does a lot based on URIs, and assumes that it can open/close a URI multiple times when importing. Once to see if any of our importers recognize its contents, and another time to actually import the data. Needless to say, one can't open, close, re-open, and seek to the beginning of stdin that you've already consumed 4096 bytes from. It's an 8-year-old architecture that needs to be overhauled to accept a GsfInput. This wasn't a use-case 8 years ago, apparently. I need to push a bunch of changes upstream into libgsf and goffice, so that the Gnumeric folks can seamlessly take advantage of this too in their ssconvert program.

Abi's import/export from the command line also boasts some improvements, such as being able to override our mime-type guessing, and the ability to specify the output type as a mime-type (previously, one could only specify a file extension).

I've re-tooled the AbiWord GtkWidget that Uwog mentioned the other day. Now, most of the GObject properties are gone in favor of virtual methods. No functionality should be lost and the interface should be much cleaner. Also, I implemented a way to bridge from Abi's internal event architecture to GObject's signals with only a modicum of glue. Hopefully some of the OLPC guys, like Jirwin, can help out here, since my plate is full, and I'm either getting psyched up or burnt out by this ;-)

And I've managed to fix up Solaris build issues with Enchant using the native toolchain. Thanks goes out to Plaidrab for helping me.

As Marc mentioned yesterday, I got around to more-fully integrating AbiWord and all of its plugins with libgsf, which gives AbiWord a lot of potential when it comes to what formats are supported on the clipboard, support for virtual filesystems, Bonobo/OLE components, error handling, and the like. It's been a long time coming, and long overdue. All it took was a Saturday afternoon locked in a room with some good American college football games on the TV :)

I have a laundry list of further improvements that I'd like to see happen before Abi 2.6, but at least there shouldn't be any regressions.

I'd like to thank Jody, Morten, Jon Kare, Jean, Emmanuel, and the rest of the Gnumeric team for all of their hard work on goffice and libgsf. I tried to help out where I could, but these guys are the real workhorses, and credit where credit is due :)

Enjoy the new features.

20 Nov 2006 (updated 20 Nov 2006 at 19:39 UTC) »
Regrets

I've not been one to have regrets, but of late, I find myself looking back and wishing that I'd done things a little differently.

One of those things was my decision not to run for the GNOME Foundation's board this year. A few board members encouraged me, unsolicited, to run, even going to far as to say that they'd endorse me if I did choose to run.

Why didn't I run? I wasn't afraid that I'd be a bad director - in fact, I'm sure that I'd be a good one. I wasn't afraid that I wouldn't have the time or energy for such a commitment. I was afraid that I'd lose. That I'd come in last place like I did last year. That I wasn't popular enough. And that's an awful reason not to run.

Barring some surprise decision on the part of the Foundation, it's too late to toss my hat into the ring now, and I'm not asking them to make an exception for me. I'd just like to let them know that if they think I could be helpful to them in the coming year (as I like to think I have over the past few months), all they have to do is ask.

A: Not even close

Q: What are three words that you don't want to hear from your real estate agent?

So, it turns out that after all our not-so-patient waiting, agonizing and what we thought was a more-than-generous offer, we came up short. Real short.

This wasn't because our offer was bad in any absolute sense - it was approximately 97% of the asking price, which our fair market research showed was a bit better than the regional average. $350k is a lot of money. Nope, three pesky people had to bid above the asking price. One even waived the "I rescind this offer if I can't get a mortgage" clause from his/her bid, in what can only be seen as an act of desperation. This insanity, on a house that's been on the market 17 days (the regional average in this price range is 120+ days and growing), in a landsliding market. Yipes.

You live and you learn. Our agent now has a better idea of what Ruth and I are looking for, so hopefully we'll see fewer duds. I think that it'll be a few weeks before I'm ready to pony-up again, though. It's been a harrowing experience.

May you live in interesting times...

It was an interesting weekend. Sometimes, when you feel all depressed (I'd been suffering anxiety attacks these past 3 weeks since I switched jobs. Things are getting better.) and the weather's lousy, all you want to do is sit indoors and watch "Anchorman" and be boring. But then sometimes, a butterfly flaps its wings in China that causes a tornado in Cambridge.

That metaphorical butterfly came in the form of house-hunting with my girlfriend of 8 years, Ruth. We'd left on Sunday morning in order to convince ourselves not to buy a particular condo (we've been house-hunting for about 5 months). And we did - but not by the usual means. Instead, we saw another place in Teele Square that was absolutely amazing. And, gods willing, I think that we have a chance of our offer being accepted if something doesn't frak it up.

In the agonizing over how large a financial and personal commitment the house would be, we realized that we'd already been undertaking the same financial and personal commitments for at least the past 5 years since we moved to the Boston area. That we're deeply committed to one another. And that maybe our mothers were right all these years (mothers are allowed to be correct once per decade. If you're reading this mom, that was your turn).

More to follow.

As per Steven's request, Evince can now view Photoshop files.

Robsta,

I don't remember needing any convincing about SoC. IIRC, Uwog asked "should we do this" and we all said "yes".

120 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!