PLEASE use MIME Atttachments! (was: Re: [FIX] Comments for Set...)

Richard A. O'Keefe ok at cs.otago.ac.nz
Tue Apr 30 03:06:09 UTC 2002


Good point at the end,
skip the rest if you aren't interested in the argument.

goran.hultgren at bluefish.se wrote:
	> Looking at the code, I see that "mail to list" sends the message
	> to "squeak at cs.uiuc.edu".  I note that the originating address for
	
	Eh. Where did you look? I just looked in my 3.2g image and I ended up
	in:
	
	ChangeSet>>buildMessageForMailOutWithUser:
	
	...and as far back as 9/27/2001 (#4385) it seems to be correct. Mind
	though I might be looking in the wrong place. The address is in my
	image: squeak-dev at lists.squeakfoundation.org
	
	What update-level is your image?
	
Squeak 3.0.1 of 2001.02.04, update 3552.

	Sure could! In that case I guess that Squeak fired it away alright but
	you didn't get to see the bounce(?) 
	
It was simpler and far more embarassing than that.  See bottom.

	> Ear sick horse.  Mail sent from Netscape worked fine.
	
	What does "Ear sick horse" mean? I am not native english speaking so I
	didn't get that.
	
"Ear sick horse" = "Yes of course".

	>  - they are not necessary,
	>  - they are not supported by all mail user agents,
	>  - they are notorious for insecurity.
	
	Just curious, how is uuencoding better than attachments then? It's not
	supported in all email clients AFAIK.
	
The key point is that it doesn't _have_ to be.

	So you want us to change this?

Obviously not.  Why should I want to stop anybody doing anything that
works for them?  What I was hoping for was a more generous attitude.
For example, for someone who understands Celeste, it should be a simple
task to write a filter that decodes a uuencoded message and fires it out
again as a Celeste attachment.  Less than half the energy that has been
spent in stepping on me could have given us the best of both worlds.

	> I am of course perfectly willing to use whatever method *works*.
	
	Well, you could have fooled me.
	
But you say you read the bit where I said I had made repeated attempts
to try the official way, with no success.  How could such statements
possibly fool you into thinking I was not willing to use a working method?	
	

OK, HERE's THE GOOD POINT.

There are two ways of using mail services.
I suppose you might call them the "institutional user" and "home user" ways.

I've been using E-mail systems since 1979, always as an "institutional user".
In this setting, which is the original RFC 821 (SMPT) setting, when you
tell your mail user agent "send this message", it may send it immediately,
or it may put it in a "spooling" area and send it later, but not _much_
later, typically at most an hour or two.  As far as you are concerned,
the message is _sent_ immediately.  Maybe it's resting at a local
"post office" (the spooling area), but it's already on it's way right now.

In the "home user" setting, your mail is held on some other machine.
You have to explicitly "pull down" your mail (like a trip to the post
office to check a post box) and when you send mail, you are just adding
it to a "mail bag" which will NOT be delivered to the "post office" (this
time your ISP) until you send it.  So "send a message" in this environment
seems to mean "I have finished this letter, put it in the mail bag" and is
a very different operation from "send this mail BAG to the post office".

>From my point of view, what happened is that Celeste lied to me.
Remember, I have Celeste on a Sparc and a Mac, but neither of them is
my mail machine.  On the rare occasions when I send mail from either of
them using Netscape, it either didn't work (Sparc) or sent the message
_immediately_ (Mac).  So when I saw a great big button labelled
"send message", I not unreasonably expected it to SEND THE MESSAGE.
This was the lie.  That button does NOT mean "send the message", it
means "add the message to the .tosend category".  The message will _never_
be sent if you don't then go to another window (which, don't forget, is
_not_ the change sorter you started it, _nor_ the message editing window
you've just finished with, but a Celeste control panel you may never have
heard of before) and select ".tosend" (another thing you have never heard
of, is not explained anywhere, and which you have no reason to suspect
may be of interest) and then do the right thing, nothing will happen.

If you _do_ discover that '.tosend' exists, open it up, select the message
you just asked to be sent, and check the menu, you will find nothing there
about sending the message.  You will conclude, "Oh, this works like some
other mailers, it builds up a queue and then sends it later AUTOMATICALLY."
So you wait, and wait, and wait, and nothing happens.

The way I finally figured this out is that someone got me to check
whether mail sent to the STMP server using Telnet worked, and it did.
So I wondered "has Celeste got the right server address", poked around
a bit, tried 'Celeste smptServer' and found that it had never been
initialised.  So it was clear that Celeste had never tried to send the
mail.  (After my earlier unsuccessful attempts, I had deleted Celeste's
files, assuming there was nothing interesting them.  A mistake on my part.)
I then tried _everything_ in the control panel, and eventually discovered
'send queued mail' in the menu on '.tosend' (NOT on the things that
'.tosend' points to).

Apparently Celeste users are happy with the way it works.  I have not
the slightest wish that they should be made to do anything different.
However, in my environment, where the STMP server is on the same network
as the machine running Squeak, there is absolutely no advantage in
queueing the mail.  (Except of course that you have one more chance to
avoid sending a bad-mannered message.)  There is, in contrast, a big
advantage in sending mail right away.  That is that Macintoshes have been
known to crash.  (As noted before, while I was trying to find out what
was going on, Squeak (+ perhaps Acrobat Reader) crashed my Mac twice.)
The sooner a message is sent, the less chance a crash will get in the way.

It must be admitted that if you let the mouse hover over 'Send message'
for long enough, eventually you will get a help balloon that says
in small letters "add this to the queue of messages to be sent".  But when
you see "Send message", you don't suspect that you don't know what it means,
so you just click away and DON'T wait for a help balloon.

I propose the following change to Celeste.  For all I know, it may already
have been made in Squeak 3.2, but if not, I hope someone will do it.

A "Mister Postman" window has two big buttons at the top,
"send message" and "add attachment".  Change this to three:
"send message later", "send message now", and "add attachment".
"send message now" should open up an SMPT socket and send the
message right away.



More information about the Squeak-dev mailing list