Tellico 2.0 is finally out there

I just released Tellico 2.0, which is the first version of Tellico for KDE4. It’s taken me a while!

As always, I get rather nervous when I finally get up my courage to make a release. Five times out of 10, I do something stupid and mess up some portion of it. Maybe the i18n configuration, or forgetting some debug code, or adding in a fix that doesn’t work. And then I’ll get one or two angry emails about it.

But on the whole, this is a rather rewarding exercise. Number one, my wonderful wife is downstairs making brownies for us to celebrate. Number two, the number of positive, complimentary emails that I receive far outweigh the negative ones. Number three, I love scratching that itch of programming something that helps me!

This is a .0 release, ported to a new platform. So I expect there to be some whopper bugs in there. I’ve started adding more unit tests, particularly for the data sources and the translators, and those have certainly caught more than a few mistakes on my part. But there are bound to be bugs, so backup your data file if you care about your data!

Moving the Tellico website, source code repository, mailing list, and bug database was no small task either. I have received a lot of help and support from folks on the extragear mailing list, the KDE sysadmins, and many others who take the time to send me suggestions, feedback, and bug reports. Thank you very much!

I don’t have a grand plan for further feature development, at the moment. My thoughts of migrating to a full SQL backend have been shelved. I’m toying with the idea of adding some sort of RDF integration, maybe using the Nepomuk framework. There are also a few additional formats and sources that I would like to add to Tellico. The sky’s the limit!

The Register writes on the Amazon API

Cade Metz, over at The Register, published an article on Monday about Amazon’s requirement for authenticating API requests. He had called me over the weekend to chat, and we exchanged a couple of emails.

I think he wrote a fairly straight-forward piece, though my wife thinks his quote of my blog post made me sound a bit cold-hearted. Sorry, folks. You’ll just have to use a different search source. Yeah, maybe I could have phrased that better. And I actually think I can backport the implementation fairly quickly to the KDE3 version of Tellico. Just as soon as I get Tellico 2.0 out…

Like any internet article, some of the comments are insightful and some are confused. One accuses me of being a freetard/leech, one confuses application keys with Amazon Associates IDs, and then one guy says:

“Tellico had the same key. It was hard-coded in the source.”

Rather shoddy coding practices on display there, me old mucker.

“Some other application could have used the same key, since it was pretty much public, though”

If you’re an administrator, then you’ll be wanting to keep close tabs the server load which you’re shouldering out of sheer generosity, so it’s of no surprise that they’ve clamped down on security if these open source idiots have been handing out their security keys willy-nilly.

I think this guy forgets what open-source means. Here’s a hint, it means the source is open. Before the authentication requirement, Tellico used an Access Key, purely for identifying the request as coming from Tellico. It wasn’t for security. Sure, you could argue that Tellico should have been requiring users to register for and obtain those keys on their own, from Day 1. In fact, I’ll tentatively agree with you. But by far, the number of desktop applications that utilized the Amazon API, used the Access Key as a way of identifying the generator (application) of the request rather than the source (user) of the request.

I can see this being the driving motive for private keys. Amazon are allowing these (non-profit generating) database queries out of good will, despite these apps clearly being in violation of the T&C (you’re not going to purchase a book or album from Amazon, which you’re software has just catalogued you as clearly already owning.)

I’ve been criticized at least once for including Tellico’s Amazon Associate’s ID as the default setting for HTML export and linking. And true, out of the box, all the Amazon links in Tellico use that ID as essentially, the referrer. But it’s also one of the easiest settings to change, and was included as a config option for the Amazon data source from the beginning. In fact, you could have multiple Amazon sources, each with a different Associates’ ID affiliated with it.

While the affiliate ID has not generated that much in referral fees, it shows that a significant number of people are browsing Amazon products that are linked from Tellico’s HTML export. But maybe the comment writer does have a point. Now, with the requirement that each user provide a secret key, the onus for ensuring that Amazon’s Terms & Conditions are met falls on the user rather than the developer.

If you’re a Mac user, check out Delicious Library. Also notice that it doesn’t give you the option of changing the exported affiliate code. And at first glance, their update to Delicious Library for Amazon’s API switch doesn’t appear to require a user-obtained key as Tellico does. Anyone want to argue that DL has, as its primary purpose, advertising and marketing the Amazon Site? I think that serves as pretty good corroborating evidence of the practices followed by Tellico…

But I do resent being called an open-source idiot! Just for the record…

Searching Amazon.com from Tellico 1.3.x

Amazon.com has changed their data API to require that all searches be signed with a secret key, unique to each user. The upcoming version of Tellico supports the new method. However, older versions (i.e. all versions of Tellico for KDE3) do not.

As a result, the Amazon searching no longer works for any version of Tellico released for KDE3. I don’t plan to try to backport that support, either.

Sorry, folks. You’ll just have to use a different search source.

By the way, Alexandria has hit the same issue. Books for Macos X hit it, too.

Tellico 2.0pre1 Released

OK, after long last, I’m reasonably sure that I have a version of Tellico that doesn’t have major issues. So with that, I’m making tellico-2.0pre1.tar.bz2 available.

This release has not been tested by many people yet. If you are not comfortable trying pre-release software, don’t. It may trash your home directory, kill all the whales, and take your dog hostage.

If you’d like to test it, please backup your data first!. The image handling and document loading were both significantly modified, and since they are the crucial components, you should have data backups.

I posted a longer list of new features and notes over on the project website.

Incidentally, I think I’ll start posting news bits over on tellico-project.org and keep blogging about Tellico here at periapsis.org. The news posts there will have comments enabled, too.

Tellico Website Update

I’ve moved the Tellico website, to its own domain at http://tellico-project.org, and also switched it to a different hosting company, which should save some money. Keeping every single previous release was starting to fill up my (admittedly small) quota.

I took a leap and decided to use Drupal as the CMS. I thought about WordPress, too, but I wanted to learn something new. I think I figured most of it out, but there are still a few tweaks to be made. I’m about 90% happy with the layout and design.

Most of the links from the periapsis.org domain have redirects setup for them and will continue to work.

Also, the mailing list has moved to the kde.org domain. At the moment, Gmane has updated its information. Nabble has not.

Tellico has moved into KDE's extragear office module

If you use Tellico‘s code from SVN, you’ll need to update your checkout. Tellico has moved into KDE’s extragear module at svn://anonsvn.kde.org/home/kde/trunk/extragear/office/tellico/. Read techbase for info on using KDE’s subversion.

Now that Tellico has moved into its new home, I hope to be able to get a beta release of Tellico 2 out in a month or so, the first version for KDE4. We’ll see how well that goes!

EDIT: fixed SVN location

Another mention for Tellico

Tellico gets a brief mention on a page listing free software:

This program is a bibliography/collection manager. You can use it to manage your bibliography for school. Using this program, you can easily archive all the bibliography information for all your books so that it is all at your fingertips…even after you return a book to the library. You can also use this software to manage your reading list. I have spent a long time trying to find a free program that would manage my reading list. After a lot of online searching, I gave up and decided that such a thing did not exist. However, while researching for this article, I found Tellico. This program is perfect for managing reading lists. In fact, you can even rate your favorite books using a star system! This program also has an information packet on what Tellico is and how to use it.

Although, I have to wonder. All the rest of the software on the page are Windows-based, or cross-platform. Anyone who tries to run Tellico on Windows right now will be rather disappointed…that doesn’t really get mentioned anywhere.

Tellico trunk development is now in KDE playground

I just copied Tellico trunk into trunk/playground/office/tellico on the
KDE SVN server. You can check out the sources from anonymous SVN by using:

svn co svn://anonsvn.kde.org/home/kde/trunk/playground/office/tellico

I’ll be working on checking out the build system, the i18n generation, etc. and then full-speed ahead with Tellico 2.0!

Tellico 1.3.5 Released

Tellico 1.3.5, a.k.a. “Valentine’s Reward” dedicated to my wife (!), is available. The md5 sum is ca5d9db11fa1dd33dfe317ffe095435c if you care. This is expected to be the last release of Tellico for the KDE3 desktop, unless some unforeseen bug shows up.

Changelog:

  • Updated entry updating to not combine multiple values.
  • Fixed CueCat decoder to work for UPC and ISBN values.
  • Updated Delicious Library 1 importer to handle movies and games.
  • Fixed query bug with z39.50 ISBN searches.
  • Fixed Ubuntu bug 317822, don’t mark collection modified when image is found in local data directory.
  • Added date, time, and username as available params to XSLT export.
  • Added patch from Jake Maciejewski to fix JavaScript sorting.
  • Fixed crash when exporting to small Alexandria collections.
  • Updated search dialog to open edit box for multiple ISBN search automatically.
  • Added various small performance tweaks.
  • Added option for using SAX loading instead of DOM loading. Still experimental, use --enable-sax.

That last bullet may be of interest to you if you have very large collections. The performance is drastically better for loading Tellico data files. The SAX loader will likely be the default for the next major release of Tellico.

This is the first time I built and ran the KDE3 version of Tellico on my
shiny new KDE 4.2. desktop, so I hope I got the package built correctly. Let
me know if something seems to be amiss.

Tellico Plans

Big plans for Tellico are coming up. I hope to get version 1.3.5 released this weekend, with a slew of mostly minor bug-fixes that have been made since 1.3.4 came out last September. That will probably be the last release in the 1.3 branch as well as the last release for the KDE3 platform.

I’m taking the opportunity now, with the jump to KDE4, to do something I’d considered for a while. I requested and received a KDE SVN account, and I plan to eventually move Tellico into the KDE Extragear module. There’s a whole process for moving into KDE SVN, so first Tellico will be in playground, then in kdereview, then, I hope, eventually in the office category for Extragear.

I won’t be importing all of Tellico’s history. It will just be a snapshot upload and moving on from there. The advantages that I hope for in moving onto the KDE server are:

  • Increased visibility in the KDE community
  • More translation help
  • Maybe even some coding help
  • And as someone on the mailing list reminded me, the chance to use KDE’s bugzilla.

Novell Forge has been very dependable in the last year or so after a bit of a rocky start. I really appreciate their generosity in offering project hosting. I’ve not yet decided what I’ll do with the mailing list.

I’d also like to say that I really appreciate the help of everyone who has contributed patches, bug reports, translations, artwork, donations, and even the occasional encouraging email. This is fun stuff! In particular, with the recent work to port to KDE4, Regis Boudin and Petri Damstén have been contributing a lot of code and expertise.

After 1.3.5 gets released, I’ll import a copy of Tellico’s trunk into KDE playground, and we’ll go from there. Happy collecting!