I started noticing that there were a lot of very large sqlite database files scattered around on my os x installation and testing doing a little sqlite vacuum on them and lo and behold they didn’t appear to be getting regularly vacuumed by the OS at all.. So I created this handy little script to VACUUM those files.

Should be safe to run on your home dir or root “/” folder, but running on your home directory should do wonders for you in terms of disk space and speedup of various applications. The name patterns of which files are sqlite databases is a constant on-going tweek so can’t say for sure this catches all of them. You’ll see a few “not a database or encrypted” errors coming from sqlite which so far seem be safe to ignore from what I can tell.

#!/bin/sh
find . -type f \( -name \*.db -o -name \*.sqlite -o -name \*.sqlite3 -o -name \*.syncdb \
-o -name \*.changedb -o -name \*.synciddb -o -name \*AvailableFeeds\* -o -name \*DefaultCounts\* -o -name \*Envelope\* \) -exec sqlite3 {} VACUUM \;

Besides maybe firebug/gmail notifier,  I’ve come to rely on having my foxylicious extension installed in firefox for almost as long as I’ve been using the browser.   Unlike the other del.icio.us extensions,  this one doesn’t install a bunch of graphical “clutter” all over the place to perform the menial task of managing bookmarks.  It lets firefox continue to handle bookmark management as per usual – with the added functionality of being able to add any given link/page to your del.icio.us account and have the plugin periodically sync your configured del.icio.us bookmarks folder with the handy http based del.icio.us api.

You can install it now for Firefox 3 only,  but please keep in mind that;

  • I don’t know what I’m doing.
  • It will probably break or screw something up in your browser.
  • I will probably not be hosting the extension install permanently from my site.

If that wasn’t enough to dissuade you then you can find the new 0.7.1 version below.

Install 0.7.1

Again,  this doesn’t support any firefox version less than 3.0 currently as that would require more work than I felt like investing initially.  If it seems worthy of continuing to live after my butchering of Dietrich’s code then I’ll try and make it backwards compatible and submit it to whoever it needs to get submitted to to have it hosted by Mozilla instead.

On a side note,  working with the XUL/javascript API has been pretty fun.   Seems very similar to what adobe is trying to do with flex,  minus the fancy/pretty vector graphics editor side of things.  (From what I remember of friends like http://ducktyper.com working with it at least.  On a more positive note,  it probably doesn’t have all of the blatant IO retardedness that he talks about when working with flex/air either..in fact I think he’s abandoned the platform entirely and is going for a native cocoa app instead.)

Update(8/19/08): There have been many reports of broken functionality and a new update has finally been published to help with some of these problems.

Install 0.7.2

Update (9/21/09): Updated version compatibility with latest FF, fixed add delicious bookmark dialog to correctly display page title / location.

Install 0.7.3

If you’ve been brave enough to install or upgrade your ubuntu installation to the latest hardy heron version you may find that the default font configuration is …unsound. Depending on what resources you have available to you there is a very quick and dirty fix for you.

Copy over all "*.ttf" fonts you want available to your installation in to your home "~/.fonts" directory and run "fc-cache -fv ~/.fonts" on them to get your font cache updated.

Note: It is not legal to just do a file search on your windows or os x computers for all .ttf files and copy them over to this same fonts directory – even if it technically does work. This should only be used for fonts that you have legally purchased from Adobe/Apple/Microsoft or have some other copyright legal way of using.

I’ve noticed a distinct lack of opinion coming from (what I personally view to be) some of our more prominent java developers in the industry on the closures debate.

By this I mean Gavin / Rod / Howard and Cedric.

I know there may be many valid reasons to not give opinions – such as not traditionally being language designers, or worries about relationships and arguments with the people involved…or just not wanting to add to the fray of opinions – but you guys are probably uniquely qualified to give them more than the majority of typical java users (myself included) and might be doing the language a disservice by not coming out and saying something.

Seems like the time is now to make a stand and say something if you are going to, but maybe it’s not necessary or there are other factors involved that I just don’t understand. .. ?

A new version of Tapestry has been released for general consumption. It is highly reccomended that anyone using the 4.1.x series of Tapestry try out the upgrade as it contains many bug fixes and minor improvements that you’ll likely benefit from. (more found in the release notes)

Download it here.

Tacos Updates

Although I’ve been very bad about keeping track of what is going on in Tacos it looks like Andreas Andreou and Igor Drobiazko have been doing a great job maintaining and greatly expanding the core “offering” that Tacos now contains. Some of the bigger items I’ve noticed:

  • Tacos 4.1 now has comet support / new binding prefixes / Dojo 1.0.2 / YUI 2.4.0 / Ext JS 2.0 / JQuery 1.2.1 supprt! Although I did notice Andy going through and refactoring Tapestry core for the 4.1.5 release to support different core javascript libraries I had no idea the support was this extensive. Nice work guys!
  • Tacos Seam for Tapestry 4.1.x / Tapestry 5 – As if all of this new library support wasn’t enough Igor Drobiazko in particular has been doing an outstanding job which has resulted in Seam support for Tapestry versions 4.1.x or Tapestry 5. See more on that here and here.
  • DateJs support in Tacos 5! I was very pleasantly surprised to find this little gem hidden away in the Tacos 5 area as well. There have been a number of announcements on this library on ajaxian.com and it looks like a really promising new way to handle javascript date parsing – similar to the way that google calendar can figure out dates from a single input field. (which I think took a lot of its currently functionality inspiration from some excellent suggestions made by Aza Raskin on this particular piece of functionality. )

All in all Tacos is starting to look more and more exciting these days. If I can find some free time (yeah right),  I may want to start looking in to it again.

My new friend Kirill has reminded me of another constant source of vomiting when he made some observations about my anti-Swing web development rant.

Specifically he mentions CSS as being somehow better at laying out html than umm…html?

A possible analogy for the web development would be doing everything in pure HTML (and its deficiencies with using tables for everything) instead of using much more flexible CSS layouts.

This post isn’t really about what he said as I think he seems like a pretty smart guy and can probably wipe the floor with me in many programming areas – but more about this weird trend in web development where people defend a lack of control over HTML by pointing to how people should be using better layout techniques – like CSS – instead.

Or the other myth that people like to spread about how using tables is evil. I know I’ve heard them say these things in forums / blog posts / issues reported by their users – the condescending jerks.

Why do you need control over the html? You have CSS – it’s the only way web development should be done. geez n00b

You know what? I call bullshit. I hate to break the news to you guys, but out of all the content you can possibly control in a browser the HTML part is probably the most important one. Yeah, the jig is up guys. You actually do need to be able to control some of that HTML when writing web applications if you want to actually use all that the web has to offer.

Oh I know….I’ve read the alistapart.com articles too. I know all about tableless layouts. I’ve spent hours / days / lost hair trying to make countless layout configurations work strictly that way. It’s ok, you’re not the only ones who believe(ed) it. That’s all fine and well, but until all browsers everywhere implement the very latest CSS standards correctly and fully – the rest of us here in the real world trying to write real applications have to deal with what we’ve been given.

Sometimes a table is kind of nice. Sometimes you can do all kinds of neat shit in tables that you probably don’t even know how to do in CSS even if it is possible. Have you seen these clowns at ebay and google? They’ve got those ugly ass tables littered all over their sites.

Haha – jokes on them. Oh wait – don’t they employ some of the best interface developers the industry has to offer? Damn….Well maybe that’s just old code that no one has bothered to clean up yet. I’m sure <your Swing-like steaming java turd web development API here> will fix all of that up as soon as they start using it.

So whatever, you can paint by numbers if you want to…Or you can use the most that your browser has to offer you. Your choice.

paint by numbers poodle