Loud ramblings of a Software Artisan

Saturday 27 January 2007

gthumb raw thumbnailing

Following the experiments with gthumb, now that libopenraw 0.0.2 has been released, I commited my patch to partially fix gthumb bug 145564

I'm wondering if it wouldn't be smarter to bring this feature down the stack to the Gnome thumbnailer.

Friday 26 January 2007

Thanks

I would like to thank the Maemo team for my enrollement in the N800 Developer Device Program. I'll try to do what I can to order it as it is currently not made easy. I still look forward to get a N800, and I'll be patient.

I also would like to thank Trolltech for sending me a free copy of the book C++ GUI Programming with Qt4 as promised when attending the presentation at aKademy last September.

Thursday 25 January 2007

libopenraw 0.0.2

I just released libopenraw 0.0.2:

tarball - GPG signature

The library has a new .so major number due to ABI breakage.

Changes:

  • removal of C++ API as they will likely to break. They'll be back once things are much more stable. If you really want to use them, link statically ;-)
  • Gnome support for previews/thumbnail extraction. This is a separate library.
  • Lot of bug fixes
  • Better error reporting

In the mean time, there is now an IRC channel: #libopenraw on irc.freenode.net

And the wiki is growing slowly.

Wednesday 24 January 2007

So long Zaurus, N800 vs Newton

Zaurus, one of the first Linux based PDA, the one where everything started is gonna disappear. Apparently Sharp announced that they'll discontinue the product. I think that one of the reason the Zaurus was not that successful is that it was not easy to buy: Japan, a selection of models in the US, and that's mostly all. And it was somewhat expensive.

Nokia 770 vs N800: I have had in hands for a few minutes on of my coworker's N800. All I can say is that the design is definitely an improvement over the Nokia 770. Two SD card slot, including one that is "inside" (next to the battery), that's is definitely good. To cut all the rumors, the screen is the same size on both. Sean Luke has written an easy about the N800 as seen from a Newton user and developer. Very interesting reading, and given the openness of the Maemo platform, it is doable by third parties. I'm still dreaming of a N800 with a "foldable" keyboard.

Update: according to this comment, the iPaq running Linux predated it.

Tuesday 23 January 2007

AbiWord 2.4.6 for Maemo 2.0

Thanks to tf, etrunko and uwog, there is now an AbiWord 2.4.6 package for Maemo 2.0 (the one that runs on the Nokia 770).

To get it set the following package source in the application manager:

  • Web address: http://www.abisource.com/downloads/apt/
  • Distribution: mistral
  • Components: user

Note: there are still bugs and I have barely anything to do with that version (due to lack of time to really get started on Maemo development).

Next step? Provide a build for the N800 (I don't know who in the team will have a device, but it won't be me). And build AbiWord 2.5.x

Adding features by removing code

Lately I have been removing code from AbiWord to make it cleaner. I have removed 3 different hash/map container classes, one set container class, with it associated RB Tree implementation, a pair container class. This for one feature: cleaner code. All of these have replaced by a standard container from libstdc++. I also templatized the string implementation class as it was already written in such a way that they were almost identical.

But why has this to be done? It is historical.

Originally, when the project started, back in 1997, it had to be build with compilers that were not up to the standard. So the project was started with its own implementation of standard containers, the same you find in the Standard C++ library. The use of templates was not allowed, nor namespaces. But today, this is no longer the case. We build with gcc everywhere, vendor compilers as an option, and it works well. In 2003, I did switch several of the major containers to use template instead of generic void* that go in the way when one decide to store integer in that. For 2.5.1 I decide it was time to remove the least used classed, even more, when in the case of map/hashtable, they were duplicating themselves. Yes, I removed 3 different instances of the same functionality! AbiWord should be less bloated.

More later...

Sunday 14 January 2007

Abi ports

So AbiWord 2.5.0 is out, heavy last minute hacking. Since the Linux version does not really need my help, being in good hands (don't worry I still have a couple of ideas under the hood), I spent some time setting the Mac build straight an square. The good news is that it finally compiles (maybe after 2.5.0 release, I don't remember if I had to commit more stuff), the bad is that it fails running, or at least running in something useful. I have to figure out what is going on.

One of the thing I had to spend some time is what I will call abiports: it is a ports system to provide the ever growing list of dependencies. As of today, AbiWord 2.5.0 depends on glib, wv, libgsf, libpng[1], popt[2] and enchant. The idea is to compile them with limited dependencies to embed them in the application bundle.

And for those who are wondering why I waste time on the Mac build instead of working on Free Software platforms, it is because somebody has to do it, for the sake of the project...

Notes

[1] yes this library is not part of MacOS X

[2] about to be ditched

Saturday 13 January 2007

Misc.

pcolijn: it is possible to get your LJ friends page as a RSS feed. But it is not easy. LJ does not work with HTTP authentication (or I missed something), but with Firefox, for example, if you log in, you can get it. Maybe that is the trick. Log in, get the cookie and use it to request the feed.

James: there is a KDE control panel option for that. It is buried in "Keyboard and Mouse" -> "Mouse" and in the "General" tab there is an option to configure that. Confusing, huh? Yeah it took me two or 3 guesses to find it this time, and I have already been there, done that. This settings influence Konqueror, digiKam, etc. And my opinion is that this setting should be double click by default.

Thursday 11 January 2007

CES season

It is "CES season", and it comes with a bunch of new devices.

First of all, the N800, successor of the Nokia 770, running Maemo 3.0 (code name bora) has be released. From the information gatherer, it bump from 64 to 128MB of RAM, get more chutzpah with a more powerful OMAP processor, get 2 MicroSD instead of a RS-MMC, and has an embedded orientable camera for video chat. Otherwise it share the same form factor, no keyboard. Maemo 3.0 does not run on the Nokia 770 but Ari Jaaski discuss about the options like what are the possibilities to provide a developer image for the 770 to test applications for the new Maemo.

Second, a Linux-based media player apparently sponsored by AOL (or one of it subsidiaries) that will sell music online. It does not play open format like Ogg-Vorbis, but MP3 and WMA (with Digital Restrictions Management). Since it runs Linux, it might be possible to provide other features through a custom firmware... SmartScreen, the "framework" used for the device firmware, seems to be more smartphone oriented. Unfortunately, it does not seem to be as open as Maemo. Interestingly its SDK appear to also be running on Linux although not everything... (the whitepaper from 2004 has old screenshots with Gnome 1.4)

This show how Linux on embedded device is really growing.

Oh, and one more thing. A lot of people have noticed iPhone announced by Apple at MacWorld. It does not run Linux (but MacOS X) and does not even seem to be open to third-party development. On the other hand, its user experience, still in a demo stage, sort of raise the bar[1] for future developments.

Update: it is actually SD card slots on the N800. That is very welcome.

Notes

[1] no pun, I swear!

Wednesday 3 January 2007

Customer dis-service

So my IBM/Lenovo/Thinkpad[1] battery is still not in after 3 weeks. Richard I think that the problem you are experiencing clearly show a leveling down of the quality that is also affecting the Thinkpad line, the one that still has IBM on the label and for which you call IBM.

Note that the supervisor at the PC hotline told me it was because of the huge Sony battery recal (hint, my battery is a Sanyo), etc. But yesterday I called in I got a representative that told me there was an attempt of delivery with the wrong address last week. Wrong address He took note of the address again and told me it was fixed with the courier and that I'll get it today Wednesday. But no. I checked with the tracking and it was still waiting for a new address. Bottom line I won't get it before tomorrow.

So not only IBM/Lenovo/Thinkpad are incompetent, even more they lie to you.

Notes

[1] who knows who does what today