Archive for October, 2006

Traffic to this site

Here’s some pointless info, traffic to this web site this calendar year. Data is from Google Analytics.

Oh noes! Nobody from Alaska has visited!

Screenshot 62

And here are top search engine keywords. The “youtube down”
as a popular term is a weird one.

Terms                           Visits
youtube+down                    232
yagooglehoo                     163
youtube down                    127
firefox adblock flash           54
youtube+down?                   48
undefined symbol: gdimagegifanimaddptr
                                35
ubuntu+remote+x                 35
ubuntu remote x                 32
centos kickstart                31
centos vnc server               31
site:egopoly.com                31
clone fedora core selinux       26
fedora+core+4+kickstart         26
gdimagegifanimaddptr            26
collaborative+spreadsheet       24
firefox+adblock+flash           22
ubuntu remote x server          21
remote x ubuntu                 20
vnc centos                      20
centos vnc                      20
vnc server centos               20
sonybravia                      20
ruby cgi redirect               19
ssh+into+fedora+from+powerbook+public+key
                                18
tamper data                     18
youtube down?                   16
sony bravia setup               15
i+hate+java                     15
belkin ichat problems           15
egopoly                         14
centos kickstart server         13
belkin router ichat             13
remote+x+ubuntu                 13
firewire between two macs       12

Weird Mac OS X Font Corruption

Every now and then, if I have been logged into my machine (Mac Pro, OS X 10.4.8) for a few days, I get weird font corruption. It affects a single character, usually a “t” or a “\”

And it affects all my apps: emacs, terminal, etc that use that same font (in my case, Monaco 10pt.)

See the goofy back slashes:

Backslash Corruption

Then log out, and log back in again:

Screenshot 61

It’s creepy, and annoying, because it takes a while to figure out why things on the screen don’t quite look right.

Things that bother me about Ruby

I’m getting past that initial infatuation stage with Ruby. At first, you love a new language. It seems so perfect, flawless. The creators are geniuses! You want to use it for everything, especially that pet project you’ve been meaning to get to. It would be so easy with [insert new language name here], she is so fantastic!

As with any relationship, it’s important to communicate with your partner about flaws you see in each other.

OK, Ruby, you know I love you, but here are some things that really bother me:

1. The community web infrastructure stinks. A very large percentage of the time, when I need to go check online doc or whatever for Ruby, the ruby site is down. And, when it’s not down, it’s S-L-O-W.

2. Ruby is slow. Face it. It is. If you have anything computationally intensive to do, forget it. And don’t tell me to implement those things in C and make Ruby wrappers for them. If I wanted to go back to 1991 and write in C (those were good times, C, we’re still friends, right?), I would do that. There’s no justifiable reason by an interpreted languages should be so slow in straight line execution. I know, programmer time is much more valuable than CPU time, but when you eventually scale to needing several hundred machines or so, it’s not true anymore. Price out hardware, rack space, power and cooling for 200 servers and think about how much programmer time you could buy for that.

3. The online doc needs a lot of work. While there are some great tutorials (e.g. from why the lucky stiff), the online reference doc is weird (four-part scrolling frames? ew.) and incomplete. This one will take the most time to work itself out.

4. The cult of 37signals and rails. I like rails; it’s once of the nicest web app development frameworks I’ve seen. And I really like the software that 37signals has created. Those guys are smart programmers and designers, and I would hire them if given the chance. But there’s a certain arrogance/contrived wisdom building up there. At work, we’ve actually had people comment on our UI in some (generally clueless) way, and cite 37signals philosophy as backing them up. Now, I wouldn’t say that everything we do on our product is the greatest UI or idea. In fact, our development process and philosophy is very similar to that espoused by the “Getting Real”™ crowd. My annoyance stems from the fact that “you should be like 37signals” becomes a euphamism for “i don’t like your UI.”

I’m just old and cranky.

HDR imaging

My new favorite digital photo toy is HDR (High Dynamic Range) imaging. This is where you take three pictures, each at a different exposure, and then use special software to meld them together. It allows you to take a picture like this, where you would normally be able to see only the foreground with a bright, washed out sky behind, or a nice sky, with a dark uninteresting foreground.

These pictures are a huge fad right now on flickr (which is how I found out about the whole technique). Go on flickr and search for “hdr” and you’ll see a ton of stuff. Including nice flame wars about home some people are “abusing” the HDR techniques.

To create my images, I bought Photomatix Pro, which (at $99) is way cheaper than buying Photoshop. If you want me to HDR a picture for you, send me three jpgs, each with a different exposure, and I’ll merge them for you with the software. If I know you ;-)

HDR Depot St & Grace

Missing the point of “push” email.

Ian Bell writes on Web Worker Daily:

If not knowing I’ve got new mail immediately really makes no difference, I would submit that companies like Movamail and Phoneified, and the developers of some of the other Symbian-based email clients, are all working to produce perfectly capable email clients for mobile devices which fulfill the needs of 99% of the mobile-email-using public.

The problem here is that this completely misses the entire point of push email. Anybody who has had a blackberry for a while, and then switched to something else (say a Treo with IMAP/POP email) understands this.

The problem with push vs. pull email is that pull email requires synchronization of coverage and asking for your email. Or it requires that your phone be polling all the time to see if there is anything new. With pull email, I’m sitting in a restaurant or something and I want to see if I have mail. I pull out my Treo. In the best case scenario, there is good data coverage in the restaurant, and I wait while the mail downloads. In the worst case scenario, the coverage is bad, and I waaaaaiiiitttt for my mail to download, or maybe I just can’t get it. By contrast, if I had push email, all message that had come to me in the last 30 minutes or whatever are already on my phone because they came in immediately when I was both in coverage and doing something else (like driving to the restaurant). So with push, there’s no waiting, and the messages just show up when I am in coverage, without me having to do anything.

Sure you can set your Treo to poll for mail every 5 minutes. But, you’d better have an unlimited data plan and you’d better enjoy charging your battery a lot.

Flickr is So Great.

I can’t believe it’s a Yahoo! service. That’s not to say that Yahoo! stuff isn’t pretty good. But Yahoo! stuff tends to be slathered in flash ads and have a vaguely 1999 feel.

Flickr is so user-focused. All the time, I find myself thinking “it would be good if I could do X from this page,” and guess what? I can.

All for only $24/year. That’s the way web stuff should be priced. Whoever thought $10/month was a good price for an web app was on crack. $24 is a no-brainer. $2/month? Of course I’ll sign up!

I also love that they limit the account on bandwidth to upload, not total storage of photos. Brilliant! A great way to build-in loyalty!

FireFox 2.0 (Mac) is Crappy, Broken

It hangs (with spinning rainbow of death) all the time. Sometime it just crashes.

I’m switching back to 1.5 for a while. Luckily, it appears you can (at least FF 2.0 doesn’t mess up your settings/prefs in an incompatible way…)

I wonder if the Windows or Linux versions are just as bad.

Update: Derek points out that google toolbar is the culprit. I’ve disabled it, and I’m back to FF2. I’ll post later if it helps or not.

WinXP Home under Parallels VM on Mac Pro

Parallels, the popular virtual machine software that is available for Intel Macs, recently came out with a stable patch that works on 64-bit Intel Macs. I downloaded it, found it no longer panicked my Mac (quad-core 2.66 xeon, 3GB RAM), and decided to buy it.

I then installed Ubuntu on it. It works fine.

Then I downloaded the beta version of Windows Vista, just to see what it was like. It’s very shiny, a very hungry memory hog and kind of slow. I attributed a lot of the slowness to the fact that it was running in the VM. Vista boots in about 2-3 minutes, and everything is very sluggish to start up.

But then I got a copy of Windows XP Home, and installed that under Parallels*. Holy crap, the thing boots in 6.5 seconds. 6.5 SECONDS!!! FireFox running in XP in that VM starts INSTANTLY, like in zero seconds. If I run FireFox “natively” it takes 3-4 seconds to start. That blows!

This leads me to leap to several wildly unsubstantiated conclusions:

1. Vista is a huge, ugly (but shiny) pig, and I’m not going to buy it for playing computer games until the standard $1000 PC is a quad-core 4 Ghz 64 bit xeon with 8GB RAM. Probably around 2008?

2. An old, old OS like Win XP (from 2001, right?) runs pretty fast on the latest hardware, five years later.

3. Mac OS X Tiger is a lot more bloated and sluggish than it should be. How can a basic app like FF start so slowly?

*You might ask “Why would you want to run Windows XP on your Mac?” There is only one reason: so I can test running IE6 and IE7 against the web site at work. It doesn’t happen often, but occasionally I’ll make a change where it looks OK on FireFox, but bad on IE.

Quick Setup Guide for Mac OS X

This is how I like to set up Mac OS X. This article is a work in progress. I’ll post updates from time to time.

First, install OS X Tiger (10.4) and apply all patches.

Open system preferences, and make the following adjustments:

Preference Area Settings to change
Appearance Turn off text smoothing to the maximum possible degree (choose a
high number.)
Dock Make the Dock very
small. You really won’t be needing it much.
Turn of magnification.
Minimize using “Scale Effect”: this is much faster, or appears so.
I don’t like to automatically hide/show the dock, but some people
do.
Security Disable automatic login
Set a master password, just in case some moron turns on FileVault. DO NOT TURN ON FILE
VAULT!

Require password to wake from sleep (if you are paranoid like
me).
Spotlight Spotlight is a pig. It hogs HUGE system resources and it doesn’t
actually work. I recommend disabling it, which I detail later in
this article.
Energy Saver If you are setting up a desktop mac, you really don’t want it to go to sleep, ever. So it can download patches and do other stuff while you are away. And so you can connect to it remotely. So set computer sleep to “never,” and set display sleep to whatever you want, to avoid burning out your monitor and to save
electricity.
Keyboard and
Mouse
I crank Key
Repeat Rate and Delat all the way up to the max
(fast/short).
.Mac A .Mac
account it worth having if you have more than one mac AND you use
Address Book, Apple Mail, Calendar or Safari. For me, Address Book
is the thing: a .Mac account keeps it in sync and backed up no
matter what machine I am on, work or home.

Aside from that, .Mac kinda
sucks.

Network If you
have a generic home network, then you can just leave the network
settings alone. I’m picky, however, and I like to be able to
remotely access my machines. So I always manually assign
TCP/IP addresses.

If you have a notebook
Mac, the Location feature is awesome. You can save all your
settings related to networking in different locations (home,
work, starbucks, etc) and not have to reconfigure it every time
you move
around.

Sharing The
Sharing tab is really more like a service control tab. If you
want to share files on the network, etc. To enable SSH server (so
you can log in to your mac from another machine), enable “Remote
Login”. To enable remote graphical access (via VNC) enable “Apple
Remote Desktop” and then choose “Access Privileges” and enable VNC
viewers.

If you are on an untrusted
network, turn on the
firewall.

Accounts For the
cautious/paranoid (like me): go to “Login Options” and show
users as name and password; also enable fast user
switching.
Date &
Time
Use apple’s
time server to set date and time
automatically.
Software
Update
check for
updates daily; download important updates in the
background.

Open a finder window. Navigate to Applications (on the left nav bar.) Scroll to “Utilities.” Drag this icon to the navbar. Now you have a shortcut to Utilities.

Go to Utilities, drag the
Terminal icon to the dock. Now you can launch a terminal when you
need it.

Open a terminal. If you like tcsh, do chsh; if you
like bash, do chsh bash; etc.

Enable verbose
booting:

% sudo nvram
boot-args="-v"

Install extra stuff that is
not installed by default

X11: the X11 server is not installed by default, but it is on the OS X Tiger DVD. See additional packages and install it.

Xcode: you need this to compile any open source software. It’s gcc, cvs, etc. It’s on the Tiger DVD, but you should probably get the latest version from http://developer.apple.com/

Must-have freeware:

Quicksilver: http://quicksilver.blacktree.com/

Adium: the Apple iChat client (an AIM client without advertising!) is pretty nice, especially the way it integrates with Address Book. But it has some annoying characteristics, the biggest of which is that you can’t make the fonts smaller. So if you have a large buddy list, you can only see mayb 35 of them, depending on the side of your monitor. Adium is similar to iChat in that it is very restrained design-wise, but you can make small fonts in the buddy list. It also talks Yahoo, MSN, ICQ etc. Not that anybody uses those.

FireFox: http://www.getfirefox.com/
Right? right.

Chicken of the VNC. A VNC client. Google for it. It’s nice.

Emacs: Mac OS comes with emacs, but it’s strictly terminal-based. If you want emacs in it’s own window with full color and mouse support, either build it yourself (challenging) or get it from here: http://www.apple.com/downloads/macosx/unix_open_source/carbonemacspackage.html

The Gimp: (you need X11 installed to run this): http://www.gimp.org/

Flickr uploadr: assuming you have a Flickr account. Get it from http://www.flickr.com/

Yahoo! Widget Engine: Apple ripped off the idea of dashboard from Konfabulator, and ruined it completely. Get the original, now called Yahoo! Widget Engine. http://www.konfabulator.com/

Darwin Ports (now call MacPorts): this is an open source package management tool, that lets you get the latest version of the thousands of open source Unix applications. You could also use “fink” but I’ve always had trouble with fink getting out of sync, and I like the BSD-style simplicity if Darwin Ports. MacPorts page.

Email

Email clients are a very personal thing. If you love Thunderbird, by all means get it for OS X. If you are an Outlook user, or have no particular allegiance, I suggest you try the Apple mail client. It’s called “Mail.” (Why they decided to call their web browser “Safari” instead of “Web Browser” is a mystery to me. Apple is nothing if not inconsistent, but in an annoyingly hip sort of way.) It works really well with Address Book, pretty much seemlessly autocompleting contact names that are in there. It’s like Outlook, except the applications ARE separate: you don’t have to launch your mail client to look up somebody’s phone number.

If you don’t like fat mail clients, just use gmail or whatever. I like using gmail, but I use the Apple Mail client to pop messages off. That way I can speed through the morning mail queue, but all the messages are up their on gmail for me to search through. Yeah, spotlight is supposed to search mail, but a) it sucks, b) it doesn’t work, and c) it only searches stuff on one computer. I need my email on a server.

System Services

Spotlight first: it’s broken and piggy. Open a terminal, “sudo emacs /etc/hostconfig” and change the SPOTLIGHT setting to -NO-

Dashboard: it’s a pig, a ruined version of Konfabulator. Turn it off. In a terminal:

defaults write com.apple.dashboard mcx-disabled -boolean YES

killall Dock

Postfix: I like to enable a locate mail transfer agent. The one that ships on Mac OS X by default is Postfix, and not Sendmail. It’s a sign that Apple knows what they are doing. Edit /etc/hostconfig and set POSTFIX=-YES-. You can reboot, or you can do /System/Library/StartupItems/post

That’s it

That’s all I really think you need to do to get a Mac from opened box to tamely usable. It’s really not much, when you compare what most people do to get Windows the way they like it. Mostly this is because the stuff that is enabled by default on a Mac is fairly minimal. You actually have to turn extra stuff on.

Myths about starting companies

I like this post, and completely agree.