Archive for November, 2005

Periodic OS X maintenance

If, after many months of usage, your Mac starts feeling more and more sluggish, and the disk is continuously thrashing at the minimum hint of activity on your part, like mine did, you should remember to perform a little maintenance.

Start with performing the periodic maintenance tasks that were never executed because you keep it stopped or off at night, when cron should execute them:

sudo periodic daily
sudo periodic weekly
sudo periodic monthly

In my case, the weekly periodic script took almost one hour to complete. I guess it had never been executed in a little less than the two years I have been using this Powerbook.

Then, update the prebindings:

sudo update_prebinding -root / -force

Finally, fix the permissions using the Disk Utility (from Applications/Utility) program.

I did all of this today, after my Powerbook had become almost unusable. After having applied the latest security update, it even refused to come up again, showing the grey screen for an hour or so before I decided to power cycle it. Now it feels much snappier.

Irrational Technology Selections

Hacknot - A Dozen Ways To Sustain Irrational Technology Selections: “The majority of irrational technical selections I’ve seen have their origin in a senior techie’s fascination with a new technology. For an uncommon number of developers, the lure of an untried API or the novelty of a new development model is simply irresistible. Such folks seem to be focused on the journey rather than the destination - which is philosophically delightful but practically frustrating. The urge to play with a new toy seems to overwhelm the ability to rationally evaluate a technology on its merits, as if it’s ‘newness’ excused any faults and weaknesses it might have.”

Reading this makes me wonder: Am I looking at Ruby on Rails as an alternative to Java web frameworks simply for the sake of novelty? Am I being so focused on the journey to the point of abdicating my rational faculties?

I don’t think so. Not yet, at least. I haven’t yet decided to throw many years of Java expertise out of the window and jump onto the Rails bandwagon. Besides, I think it is advisable for any serious technology professional to learn a new language or technology every year, and I haven’t been doing that for a long time. Why not Ruby, then?

Xooglers

Xooglers is, as the tagline says: “A gathering spot for ex-Googlers to reminisce and comment on the latest developments in search”. Presently manned by Doug and Ron and filled with their recollections of their days at Google, it’s a great insight into the workings of a fledgling Internet startup before it came what we all know. Worth a subscription.

Google Firefox referral buttons for international publishers

Google has announced that Firefox referral buttons are finally available for international publishers, while before today only US based publishers could apply.

If someone clicks on one of those buttons and downloads Firefox for Windows for the first time, the publisher gets $1. A nice way to spread Firefox and get publishers a little revenue.

Another migration to Rails

headshot.jpgAfter Graham Glass, here comes another old Java hand diving into Ruby on Rails.

Elliotte Rusty Harold: “I tried writing some PHP pages, but that was more difficult than I expected so I thought I’d take a day and see if Ruby on Rails was all it was cracked up to be. I’d looked at it initially, but decided against it because IBiblio doesn’t yet support Ruby. But I’m prototyping this on my desktop Mac, and if Ruby makes my job a lot easier, I could find a different host.”

I will follow this development with lots of attention, but already the following snippet raised my alarm sensors:

It’s trying to set a cookie for no reason whatsoever, even for a page that doesn’t exist! What’s worse, it’s a session ID! This is completely contrary to the web architecture, and a very common mistake made by developers who are mired in 1980s style of applications and have never understood the Web, and probably never will. My PHP version and the existing site I’m replacing are completely cookie-free. This is not a good sign, and does not leave me with a warm-and-fuzzy feeling; but let’s deny the setting of the cookie, proceed onward, and see what happens.

Can this be true? I’d like to know. Looks like this will be soon, as while I was writing this the bell rang: It’s my new Ruby and Rails books! Looks like my productivity might drop just a little bit in the coming days ;).

No ApacheCon 2005 for me as well

HowardBlogPhoto.pngHoward Lewis Ship: “Hope I’m not disappointing too many people, but I will not be able to do the Tapestry Tutorials at ApacheCon on Dec 10th, as previously stated. They didn’t get enough tutorial sign ups by their Nov. 12th deadline (ApacheCon does terrible marketing), and since I really hadn’t wanted to do a tutorial in the first place, I offered to cancel rather than try and come up with a last-minute way to boost attendance.”

I’m in the same position as Howard. As of today, there’s only two people registered for my Cocoon tutorial (apologies to them), so I will probably ask the organizers to cancel it. And since they rejected the two other talks I submitted, I’d find it hard to justify spending a couple thousand dollars just to go to San Diego.

It’s a pity, but I will try to find comfort in exploiting the long weekend that starts on Dec. 8th (national holiday here) to begin the ski season. I hope that, if I cannot have tutorial attendees in San Diego, at least I can have snow on the Alps.

Graham’s Ruby on Rails Experience, Part 1

Headshot.jpgGraham Glass just started a series of articles about moving from PHP (not Java) to Ruby on Rails, something I am interested in following very closely.

Graham Glass: “This blog series will document my experience porting a non-trivial software application from PHP to Ruby on Rails.”

If you don’t know Graham, he’s the former CTO of WebMethods and founder of ObjectSpace and The Mind Electric. Looks like he knows his way around Java as well.

Evaluation: moving from Java to Ruby on Rails

rails_logo_remix.gifJust came upon (via David) this article: “Evaluation: moving from Java to Ruby on Rails for the CenterNet rewrite”. Very interesting read, carefully detailing all the pros (many) and cons (few) of moving a web application development project from Java to Ruby.

Now, if only the books on Ruby and Rails I ordered would finally arrive, I could seriously dedicate some of my copious free time to the rewrite of a certain project.

The Fog Creek reading list

Joel Spolsky: “The management training program we’re starting up here at Fog Creek will take about three years and will be relatively intensive. Among other things, there will be a required reading list consisting of about 75 books (we’re working on the theory here of one book every two weeks)”

Interesting book list. Personally I’ve read ten of them:

All of them are great books, so I think the same can probably be said of the others on the list.

Plus, I have The Search on order at Amazon, so I think I am well equipped to apply for the Fog Creek Software Management Training Program ;)

Don’t Confirm Me!

Elliotte Rusty Harold: “Confirmation is not an adequate substitute for Undo.”

Well said. I’ve seen my share of confirmation dialog abuses. I even remember one particular application that asked you to confirm before saving a new item, then popped out a gleeful message box telling that it had actually saved the item and forcing the user to click the “OK” button to dismiss it.

However, correctly implementing an “undo” feature is not always simple, so I can sympathize with programmers who resort to putting up a confirmation dialog instead. Sometimes you just don’t have enough time to implement everything in the best possible way. In this case, a confirmation dialog is better than nothing.

While we’re at it, I hate applications that ask whether to save modified files before closing. Just save the damn file and backup the old version!

No DVD drive for Intel iMacs?

Apple Matters | The Intel iMacs Won’t Have A Disk Drive: “When Apple finally releases the new, Intel iMac it won’t have a disk drive in it. No CD drive, no DVD drive and no HD/Blu-Ray drive. Those technologies will be obsolete. What it will have is the next generation of Bluetooth and wireless technology. It will have plenty of ports to dock an iPod, flash drive or other portable media drive. And it, along with the rest of Apple’s lineup, will get a redesign. “

I find it difficult to believe this, even though Jobs pulled out a similar stunt when he released the first iMacs with no floppy drive. We already have recordable and rewritable CDs then, and USB keys. How are we expected to rip music, watch movies and backup our data now?

There’s just one technology that could replace disk drives: Ubiquitous, always-on, very-high-bandwidth connectivity. And even then you’ll always want a drive to watch a rented movie in those few places where the net doesn’t reach you.

(Via Jon.)

Google Sitemaps Wordpress plugin

sitemaps-logo.gifI just installed this Wordpress plugin for the automatic generation of Google Sitemaps. Installation was a piece of cake and the plugin looks very flexible, even though it works just right in its default configuration. That’s good!

Of course, this post was written just to test whether the plugin would regenerate the sitemap and ping Google as well ;).

Apache Cocoon 2.1.8 released

cocoon.gifAlmost seven months after the release of version 2.1.7, we finally have a new version of Apache Cocoon. Don’t be fooled by the small increment in the version number. There are many new features and bug fixes in this release, compared to 2.1.7.

However, it’s maybe the first time that I’m not very excited by a new Cocoon release. I am growing old and jaded, probably. I still like, use, and recommend Cocoon, but the initial excitement has worn off. We’ll need some groundbreaking news to rekindle the fire, but I can’t see who is going to bring them.

Anyway, many thanks to all the people who contributed towards this release. They deserve only gratitude and free beer, so I should probably stop complaining like a grumpy old man.

More info can be found via Andrew, Carsten, and Matthew.

“Foundations of Ajax” review

1590595823.01._AA_SCMZZZZZZZ_.jpg
Foundations of Ajax, by Ryan Asleson, Nathaniel T. Schutta — Apress.

The Ajax phenomenon is quite new — even though the underlying technologies have been around for years — but in a few months it’s already become mainstream. It’s still in the early-adopters, pre-oreilly-book phase, but some books are already starting to appear. Kudos to Apress for being able to publish a quality product so early.

This is really a foundations book, as the title says. It does a good job of explaining the underpinnings of Ajax, even though the initial chapter on the history of the Internet could have been edited out without much harm. It explains very plainly and clearly the basic Ajax techniques and presents a good overview of some of the best tools available to the Ajaxan craftsman.

Being an introductory text, you can’t really blame the authors for not going too deep into the most complex technical and architectural issue. However, if you already tried doing some simple Ajax applications, there’s not much here that you haven’t probably already read somewhere else. To be honest, there’s a good number of hints, tips, and tricks and many pitfalls are dutifully pointed out, but you are left wondering whether there a more systematic approach wouldn’t have been better suited.

This is the main defect of the book, in my opinion. It feels rather disorganized at times. There just doesn’t seem to be a linear progression from the basic to the more complex issues. Some subjects are barely skimmed over whereas for others (the Venkman debuggers for instance) there’s even too much detail.

In particular, the final chapter on Ajax frameworks would have been great if it hadn’t dedicated just a few lines to each framework.

If it were not for this, I would have given “Foundations of Ajax” a five-star rating. As it stands, it’s only four.

What would you do with an extra $100 a day?

Russell Beattie.pngRussell is gaining more than $100 a day from ads only. Nice for you, Russ!

I don’t have more than a fraction of his traffic levels, but with the recent surge I experimented (I’ve been doing more than 2000 unique visitors per day in the last three days), I figured I could try to monetize some of this traffic.

So I adopted the same strategy as Russell: put a large, obnoxious ad unit right before the post on each single-post page, but only when people come here from another site (possibly 99% of hits to single posts are from search engines anyway).

This way, I hope not to annoy too much regular readers who come in through the home page. I would also like to suggest my (very few) regular readers to use my RSS feed instead. It’s full-text and without ads.

New OSZ feature: User tips

I just finished adding a new feature to The Open Source Zone, inspired by a similar feature on CodeZoo. Users can now add short “tips” to a project. The tip can also contain a snippet of source code. Hope you’ll appreciate it.

From the Atheistic East

I guess you won’t be able to watch any Discovery Institute produced DVDs on this player.

Religion Free DVD Player

(Via Gizmodo)

Google Analytics’ stealth reports

Jia Yun points out, in the comments to my post here, that you can click on the View Reports link on your Google Analytics page even if the status message still says “Your first reports will be ready within twelve hours.” and behold! The reports are already there! Has anybody else noticed this?

Update: Even though my reports are visible, it looks like Google stopped collecting any data after about 14PM PST yesterday (see graph below). This is about sixteen hours ago. I can understand a delay (the FAQ mentions a typical 6 hours delay), but sixteen hours?

Visits and Pageviews

Google Base is live

googleBase.gifI’m still waiting for Google Analytics to make my reports available, after almost 48 hours, but in the meantime we’ve got Google Base to play with.

Frankly, I still have no idea about how it could be useful to me. Not that I find it useless in general, but I don’t think I need it just now. If it’s good, people will soon find some clever and unanticipated ways to use it, so I guess we’ll see.

Dilbert on Evolution, Part 2

Scott Adams: “For the record, if you put a gun to my head and make me choose, I’ll pick Darwin’s version over Intelligent Design, although I am rooting for the alien seedling theory most of all. But I can’t base my opinion on credible evidence or on credible people. I just don’t have access to either. To me, the lack of credible PEOPLE is the most fascinating aspect of this debate.”

Oh my god, Scott! Of course if you insist on sticking your head up your ass, you won’t find any credible evolutionists. But the moment you stop, you might try reading some of Stephen Jay Gould’s or Richard Dawkins‘ books. I can assure you that they are very readable and understandable by most people. If you do, you might be surprised of how credible some evolutionists can be.

Otherwise, you can continue being a presumptuous ignorant, if you like.