I arrived a bit late to the Meetup last night due to the walk being quite a bit… longer than I expected. No matter — San Fran was lovely and temperate last night and I definitely got to know the downtown shopping district a bit better due to the walking “tour” I conducted.
I joined Matt, Mike, Sam and Barry at the Chaat Cafe, a nice, hip little Indian restaurant. We chatted for a good long while on topics ranging from bbPress to WordPress to blogging in general to the dismal state of the cellular telephone network in the U.S. The food was good and the conversation better.
Towards the end of the meal, Matt invited us all back to his apartment for a little party that he was putting together featuring mojitos and a screening of Trapped In The Closet: Chapters 1-12. I had my misgivings about the movie and so decided to stay only for the conversation and drinks, but then ended up throwing caution to the wind and sticking around for the whole thing (plus, my hotel was quite a distance away and I needed to mooch a ride off someone. *grin*). We waited around for a while in Matt’s apartment, awaiting the arrival of a few other SF residents (Tony, head guy from Sphere, for one) and chatted about Open Source development/project management, work histories and the current over-the-air television offerings in Australia (Sam’s an Aussie). Once the others arrived, we migrated across the hall to the “theater” that Matt’s building shares and proceeded to watch the movie.
I have to say that I was extremely glad I stuck around. I didn’t realize it when I gave my assent, but Trapped In The Closet is R. Kelly’s short film/”musical” opus and, while that fact alone might be enough to throw a lot of people off, I ended up enjoying it quite a bit. It is a piece of high (unintentional) camp — I thought that no one could be so guileless, so naieve as to how their work would be received, but once the movie finished, Matt threw the DVD over on to the commentary track which featured R. Kelly sitting in an overstuffed armchair ala MST3K, puffing on a cigar and narrating in a straight-ahead fashion. I simply cannot explain how hilarious it ended up being — and I do not think the 3 hour time difference or the glass of unfiltered Scotch had any appreciable effect upon my enjoyment of the film. We hooted and hollered at Kelly’s rhymes (“Beretta” and “dresser”, “Bridget” and “midget”) and just about laughed ourselves silly. It was definitely an experience to remember.
Once we were done, it was well past 1am PDT (4am my time!) and two of Matt’s friends offered to drive me back to my hotel. I’m afraid I don’t recall both of their names — one was Kevin — but if you all are reading this: many thanks for the lift!
All in all, it was a worthy and entertaining outing. My thanks go out to Matt for his hospitality and to Barry, Sam and Mike for their conversation. It’s always nice to run across those who end up being kindred spirits of a sort and it’s even nicer to put a face and a voice to names that one has only known via email and electronic communication in the past.
Thunderbird 2.0: An Upgrade Well Worth Your Time
The Mozilla Foundation released Thunderbird 2.0 yesterday and, based upon my first 24 hours with it, I’d give it an unconditional thumbs-up.
Overall, it’s a much nicer experience than the previous version (1.5). It is faster, the interface is cleaner, it handles IMAP mailboxes far faster than before and it has a few nice new touches like:
- Tags for categorizing your messages
- Viewed message history and corresponding buttons allowing you to move back and forth between your recently-viewed messages just like you move between browser pages.
…and a ton more that I’m sure I’m forgetting at this point.
Needless to say, if you’re not slaving away under the fierce whip of one of the various flavors of Outlook, you need to start using Thunderbird 2.0. Stat.
SuQLite
If you were paying close attention, you would have noticed that the “Elbee Elgee Development” section of my footer was messed up for the past few days, and with good reason. That little bit of content is generated by parsing the RSS feed for the timeline on my Elbee Elgee Trac installation. Sometime earlier this week, the SQLite database that provides the backend for that install freaked out and locked itself up good n’ tight which necessitated me spending several hours debugging and de-wedging the DB.
The problem can be summed up thusly: it seems that Trac sites running on FastCGI have a tendency to try to access the default SQLite database fairly quickly and, if the DB files happen to be stored on an incorrectly-tuned NFS share, a race condition can ensue and incorrect file locking can occur, leaving the DB in a locked state.
It was initially a very long and frustrating process, as I scoured teh Googols for information on how to unlock a SQLite database. I found that a second file was created in the db/ subdir of my Trac site – trac.db-journal, which apparently indicates that a transaction is in progress or was incorrectly aborted. Search result after search result implied that one could unlock the database by
- Killing all process accessing the file
- Moving the -journal file
- Moving the .db file itself
- Restarting Apache
- Rebooting the machine
Since I’m on a shared hosting account at Dreamhost, options 4 and 5 were obviously Right Out. No amount of lsof or fuser tweakage, combined with judicious use of `kill -9` managed to unwedge the DB, so #1 was a bust. Options 2 and 3 allowed me to use the sqlite command line tool to connect to the database and run SELECT statements, but any INSERTs were met with “Database locked”-style error messages and thus Trac stayed broken.
Then it hit me – since I could SELECT, I could (conceivably) dump the contents and then reimport them into another DB. I cd’d into my Trac site’s db/ folder and executed the following:
echo '.dump' | sqlite3 trac.db > trac.dump; cat trac.dump | sqlite3 trac2.db
Using the sqlite3 command line tool, I verified that everything was copacetic and breathed a sigh of relief. Stupid SQLite.
I guess this seals it: when I finally move from Trac 0.9.6 to 0.10.3, I’m going to move to a real RDBMS like MySQL so this sort of stupid file locking crap doesn’t happen again.
NOTE: Apologies for the 3rd Grade-level insult inherent in this post’s title (it’s pronounced “Suck-well Lite”). Pretty much sums up my feelings, though.
This’ll Help Convince The Feds To Adopt Linux
Via Slashdot, I saw a story about Richard Stallman convincing Cuba to adopt Linux. Linux companies and Linux advocates have been struggling against a reputation as mere software Communism – good thing Open Source Software’s strongest “advocate” (RMS) has gone and proved the case to be, well, true.
Gah.
“Props” In An Open Source Project! Fame And Fortune Are Mine! Except For The Fame Part. And, Most Likely, No Fortune.
All of you bloggers looking to upgrade to WordPress 2.1 when it comes out, you’ll have me to thank for a very minor, almost inconsequential spelling fix in the included documentation. And I’ve got the URL to prove it! *grin*
Firebug: A Web Development Must-Have
I’ve been messing about with Firebug, a web development extension for Firefox. The site itself does a much better job of explaining FB than I ever could, so I would direct you over there for definitive information.
At base, FB exposes everything about the webpages you view, from HTML to CSS to JavaScript to the download times for each portion of your page. It also allows you to change the CSS values for any given DOM element, meaning that you can preview HTML changes in real time. It’s really slick, I have to say. If you have any web design inklings, I’d pretty much say you have to check out Firebug.
Firefox 2: It’s The Little Things That Count
I’ve been using the Mac version of Firefox 2.0 on my Mac Pro at work for the last few days and I have to say that it’s a pretty nice package. It remembers your session if your browser happens to crash, meaning that you won’t lose all those hard-fought tabs if FF should crap out on you. It seems to be generally faster, which is nice.
But nicest of all is the integrated spell-checker. Now, forum posts, blog posts and yes, even work-related stuff benefits from an immediate “your spelling sucks”-type feedback mechanism.
Expect the quality of my posts to skyrocket, baby! I know y’all only come here for the spelling and grammar. Philistines.
What’s Japanese For “Doesn’t Translate Well Into English”?
It most likely starts with “Eego wa” and ends in, well, this:
See, the team behind the Firefox browser is trying to boost Japanese usage of the browser, so they held a little competition to make the mascot a bit more “Hello Kitty”-friendly. I sure hope it works well over in the Land of the Rising Sun, because, well, small flatulating omnivorous canids don’t really sell here in the U.S.
Heh.
A Virtual Cornucopia Of Cool Software
Google has been on a “pro-Doug” tear recently as far as I can see, releasing first Picasa, then Google Earth for Linux, along with the cool-in-concept Google Browser Sync plugin for Firefox. The Google Sync extension only ranks cool in concept because, well, in order for it to work to its capacity, you have to store all your bookmarks, history, cookies, tabs and, most importantly, passwords on Google’s servers. The data is encrypted prior to being sent to Google, but it’s only done with a PIN as the encryption salt, meaning that Google has access to both the algorithm used to encrypt the data and the encrypted data itself. The PINs, they can guess. The “Oh wow!” factor is probably mitigated by how much one trusts Google to not be evil with personal data.
The Picasa port was accomplished using Winelib, meaning that it’s not a true native port, but I’ll take what I can get in terms of being able to run the best image management software out there. The Google Earth port is apparently native code, as it’s based off of QT. Now, we just need a SketchUp port for Linux and a Picasa port for Macs and the awesomeness will be complete.
*grin*
I’m All For Nuking IE, But…
…Doesn’t Kill Bill’s Browser seem a bit, well, extreme, particularly the offering of a script that will actively annoy website visitors using IE? It seems pretty clear to me: coddle, sway, convince. Don’t annoy.