msl_congrats.jpg

Lots of terror

We have a lot of terror at work. Also, the same scriptwriters and actors...

Ironically, my iPhone has a tough time getting a GPS connection when I walk around Caltech. At one point, Runkeeper let me know I had just walked a 3-minute mile. My plotted route shows all sorts of fun zigs and zags.
runkeeper.png

From Planet KDE, I saw a new KDE application mentioned, called Conquiere.

Conquirere allows you to add bibliographic data such as journals, books, proceedings papers, articles and many more to Nepomuk. Combine this data with the documents on your harddisk or some online storage and helps you to organize your data to quickly find some parts of your research again.

It sounds pretty neat. I gave it a shot tonight, and had to work out some compilation issues. I had a version mismatch between soprano and qt4, then I needed a newer version of kbibtex. At that point, Nepomuk blew up, which slammed my computer and made it freeze for several minutes. But eventually, I was able to get Conquiere running.

For being new software, there's a lot of functionality and polish! Jörg Ehrichs has done a great job of organizing things. The icons are colorful, the search is full-featured. I really look forward to seeing how it continues to develop.

American Express just ran a promotion called The Gift Chain. I saw it referenced on several of the financial blogs that I read. Most of them noted that American Express was giving statement credits and gift cards if you made $25 purchases at several different online stores. But My Dollar Plan and Bargaineering noted that one could also enter the contest by mail, and one could enter up to 10 times.

So I wrote my name and address on 10 cards and mailed them near the first of the month, not really expecting to see anything back or thinking that I might miss the deadline, since I was mailing them late. But in the last couple of days, I've been receiving emails with my prizes, and here's my haul:

  • 1x A 1-year ShopRunner membership (I think just about everyone who entered got this one first. It doesn't seem all that valuable.)
  • 3x $2 statement credit
  • 1x $4.50 statement credit
  • 3x $5 statement credit
  • A $10 gift card, along with a $10 gift card to 3 friends on Facebook (I don't know how this works exactly, since it seemed to write on my friends wall when I picked them)
  • And finally, and most exciting for my wife, we got a $100 gift card to Pottery Barn

So just by mailing in 10 cards, we got $25.50 in statement credit and $110 in gift cards. Quite a deal! Thanks, American Express!

For all the bad raps that credit card get, I think it's worth noting when they really provide extra benefits. I've had two such incidents within the past year.

First, I bought my wife a charm last year, using our American Express. While my wife was on a bus, the charm got caught on a hook and the charm was pulled off. She couldn't find it. I called American Express, and their Purchase Protection coverage applied, since the loss was within 90 days of the purchase. I gave all the details over the phone, signed the paper that AmEx mailed to me, and within 2 weeks, I had a full reimbursement on the card for the purchase. No hassle.

Just last month, we had to have a service call on our refrigerator from Sears. We've had the the fridge about 16 months, and the Sears warranty is only good for a year. As it turns out, we had purchased the fridge using our Citi credit card, and their Extended Warranty coverage applied. I faxed in copies of our statement (from 16 months ago, good thing we keep copies) and a copy of the receipt (good thing we keep receipts), along with the Sears warranty statement and service receipt. Within 10 days, we received a check in the mail to cover the full amount of the service call. No hassle.

Thank you, American Express and Citi. I'll never forget to check the extra benefits provided by the credit cards we use.

One of the main goals of Tellico's development has been to be a simple application. I wanted to be able to keep track of my books without having to configure an SQL database, or create a schema, or worry about system daemons. To that end, while I thought about SQLite at the time (several years ago), I ended up writing Tellico to just store all its data in memory. The images are stored on disk, but all the field values for each entry are maintained in simple object containers (vectors and hashes...). The XML format is used only for serializing the data to save and reload.

In practice, I believe that has worked rather well. While I have received emails from folks who try to store 10,000 books in their database and find the performance lacking, by and large, I've seen many reviews note favorably that Tellico is simple and flexible to use and can be useful for the majority of people.

I do want to expand Tellico's capabilities, however. One large goal is to get away from treating each collection as a flat list of entries. I want to be able to have books and movies in the same database, for example, and I want to be able to track TV episodes and seasons equally well. I want to be able to add information about authors and actors.

To that end, I need to rewrite Tellico's backend. And in considering how I want to do that, I've come to a decision point about SQL vs. RDF.

Many highly-visible KDE applications use SQL, such as Amarok, Digikam, and Akonadi. I just read a blog post about using the same MySQL instance for all three of those applications.

On the other hand, the Nepomuk framework in KDE provides an interface to an RDF database. Bangarang and KMail 2 are both heavily using Nepomuk.

So I'm trying to work up a pro/con list.

Portability


I want to say that SQL wins. Embedding or linking against SQLite means a typical user would never need to worry about database permissions, daemon persistence, or username and port settings. At the same time, for power users, the added work to make MySql or PostgreSQL an option, would be reasonable. Akonadi and Digikam have taken this approach, and up until recent versions, so had Amarok.

Using Nepomuk, on the other hand, requires the full Soprano and Virtuoso tool chain. Most KDE desktops are running Virtusoso at this point, I guess, but I don't want to shut out the GNOME users out there. And on my underpowered development box with 1 GB of RAM, I can't even use Strigi and Nepomuk.

Development Maturity

Here again, I think SQL wins. SQL (and to some extent, SQLite) is used in so many places, I know a significant amount of work has gone into optimizing and improving its efficiency. In other words, if the database access is slow, it's very likely that the problem is due to my poor programming knowledge rather than a fundamental flaw. I don't have that reassurance with RDF/SPARQL and Nepomuk. i know Nepomuk is improving, but looking at the bug reports and development fits and starts in the KDE code, it still seems a bit rocky.

SPARQL also has some weird semantics, such as blank nodes, a need for custom Insert/Replace behavior, and a lack of aggregate functions. SPARQL is still rather immature, in that sense.

Interoperability

I feel like I should include this factor. RDF seems to be a bit of a buzzword with the semantic database push lately.A SQL schema would largely be opaque, while the RDF store, assuming the use of common ontologies, would allow for future interoperability with other databases. This is all rather fuzzy, though, and there's nothing that says I can't have some sort of RDF export or translation from the SQL.

If I did use Nepomuk and RDF, I might even have to try to write some sort of abstraction layer to use Tracker on GNOME.

Developer Interest

I'd call this a tie! I've messed around with some limited SQL and RDF/SPARQL both, and I'm interested in learning more about both.

Conclusion

These are mostly just unordered thoughts bouncing around in my head. I'll all but decide to take a shot at implementing a SQL backend, and then change my mind an hour later. Plus, who's to say I can even figure out how to do any of this! I only impersonate a programmer on TV! :)

The Mars Science Laboratory will launch late this year, sometime around the end of November, or early December. It's the largest rover that JPL has ever sent to Mars, and also the most expensive. Just about everyone I know at JPL has worked on some aspect of MSL at one point or another, myself included.

The sequence of events for Entry, Descent and Landing is incredibly complex, as you can see in the latest animation video that JPL put out.

The Atlantic's In Focus page has a photo collection from Endeavour's last flight, STS-134. The photos are amazing. I particularly love the ones of the Shuttle in space, with the long-exposure of the earth beneath.

I flew down to Florida to try to watch the launch of STS-134 in May. Alas, the initial launch date was scrubbed due to heater electrical problems. My wife and I spent all of 2 days in Florida, mostly driving and sitting out in Titusville. Love the adventure, hated to miss the launch.

XKCD makes a cogent point about the number of people who have walked on another world.

xkcd

Recent Comments

  • If you store any images in the data file, rather than having them saved in a directory (check your p...

  • I recently started using Tellico and I really like it. But I have a collection of more than 2,000 bo...

    Deacon Solomon
    New Tellico Version
  • Hi Robby, I just started using Tellico, and I really like it. One suggestion - it would be great if...

  • Not sure how to unzip the BZ2 file. What do you suggest? Thanks...

  • You shouldn't ever have to export/import when you upgrade to a new version of Tellico. Everything is...

Close