The principle of least surprise

We recently got an email saying that builds of Firefox and Thunderbird v1.5 were available, so it was only natural to go and grab a copy. With one thing and another it hasn't been until tonight that I've had a chance to play with them properly. Here's my scenario: I use our Sun-On-Sun vpn (courtesy of Dan & co's ingenuity) to connect my laptop in to Sun. I then remote display everything that I need back to my workstation, which is not connected to Sun. (Yes, it's secure. I've set it up correctly :-D) So that way I can have my workstation connecting to the internet as my non-Sun persona, and my laptop being part of the reservation, as it were. Of course I have two profiles for Firefox and Thunderbird --- anything else would get way to messy. So when I booted my workstation (after installing build 27 and a nightly update), I started up Thunderbird v1.5 and then ssh'd across to the laptop and started up Thunderbird with my Sun profile. Blink! Up popped my non-Sun instance, which is, as you recall, running on my workstation. Sure, I've set my DISPLAY variable, but what's going on here? I tried again, to make sure I hadn't done something too stupid.... same thing. What about Firefox? Again, same deal. This is getting a bit much! Off to MozillaZine's Knowledge base where I quickly find this document which tells me that
You can launch multiple copies of Thunderbird if the environmental variable MOZ_NO_REMOTE=1 is set beforehand. This appears to be intended mainly for debugging, there is no indication it's meant for normal use. So use it at your own risk. Since Thunderbird's design assumes that only one instance of the program can access a profile you run the least risk if you use this feature to run multiple copies of Thunderbird accessing different profiles.
Wow, how amazing, I could have sworn that I was in fact trying to direct both firefox and thunderbird to use different profiles. What did they change between 1.0.6 and 1.5? I'll have to do some digging to find out. In the meantime, I mentioned The Principle of Least Surprise. Bill Sommerfeld mentioned it today in an architecture discussion and it kinda stuck in my head. What I expect firefox and thunderbird to do when I tell them "start up with this specific profile" is, funnily enough, to start themselves with that particular profile. And not to pop up whatever other instance I've got running instead. I think I'll have to log bugs against both of them or maybe against SeaMonkey: firstly that they're ignoring my command line argument to startup with a specific profile, and secondly that they're violating this principle. What fun that's going to be. Righto, back to the SAN coding ....
Comments:

Post a Comment:
Comments are closed for this entry.
About

I work at Oracle in the Solaris group. The opinions expressed here are entirely my own, and neither Oracle nor any other party necessarily agrees with them.

Search

Archives
« July 2015
SunMonTueWedThuFriSat
   
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
       
Today