Hacker News new | ask | show | jobs
by dsr_ 1036 days ago
There is nothing in the average internal email that requires HTML, much less CSS.

There is nothing in the average external email that requires HTML or CSS.

There is no useful content in any email that requires JavaScript.

"looks unprofessional" is cultural, and of the same significance as green vs blue text bubbles in your SMS messaging system.

4 comments

This is an absurdly wrong, yet characteristically HN take.

Transactional mail typically requires some hyperlink for the average user.

No, it doesn't. Email is a great feedback medium.

"If you want to continue with the subscription, reply with the word YES on a line by itself. You can put comments on other lines and we will read them."

do-not-reply@marketing.com is one of the stupid innovations by people who can't automate their email. Transactional email gets handled by robots and fed into a ticketing system when it goes awry.

Treat your customers like customers, not consumers.

Now you need to deal with « yes », « Yes », « YES. », HTML wrapping, user signatures, dangling spaces, etc.

I’ve worked with a system that let users order domain names by email and it was a nightmare to maintain. Don’t EVER build a system that relies on reading and parsing emails sent by users, it WILL fail horribly.

> Now you need to deal with « yes », « Yes », « YES. », HTML wrapping, user signatures, dangling spaces, etc.

Oh no, you need to find a line of text in a string that contains the word 'YES'. How incredibly difficult. Are you even a programmer? This is entirely trivial.

My point is you have to trust a user to input some raw text somewhat reliably. Have you dealt with users at scale? Whenever you provide a raw field in a form, the values are pathetic, tons of users can’t input things correct

Maybe they’ll write « yeah » or « YE » or « oui », because that’s what users do

As previously written: Treat your customers like customers, not consumers.

Or worse then, like idiots that cannot understand a simple sentence and write back « YES »

If the user can't follow basic instructions then they'll have to try again.

Those users absolutely can write 'YES'. They're perfectly capable of doing so. They don't do so because they're lazy. We all know people that simply refuse to read any kind of instruction on a computer screen. They will skip past any and all prompts. Guess what? That's their problem, not yours.

Stop enabling laziness!

Transactional emails are things like reset password emails. You’re really going to build your reset password functionality by having people email their new password to you?
Why would transactional mail come from do-not-reply@marketing.com?

Transactional mail is not marketing mail.

It’s not a good look to declare things as stupid when you aren’t sure what the discussion is about.

You can certainly put urls into a text/plain email. It helps if your urls aren't terribly long and don't have characters that are questionable in urls.

w3c suggests surrounding them with angle brackets [1], but I can't find a source that makes more than a suggestion. By reports, some mail user agents, and some users will include the trailing > in the url they provide to their web user-agent, so that's something to consider and make sure the destination of the link can handle.

Putting links on a line by themselves works well too.

If you don't know what a user prefers, it makes sense to send a text/plain with links as I've described, as well as a text/html with links in tags, because tagged links may be friendlier to some users and some mail user-agents are tragically bad at their job.

[1] https://www.w3.org/Addressing/URL/5.1_Wrappers.html

Yes, you can put them in there, but then you're relying on the recipient's client to turn that plaintext url into a link the recipient can actually click on, as opposed to having to copy and paste the url into their browser address bar.

Right? Or do I have something wrong?

Yeah, but most email clients do linkify urls in text/plain emails. Heck, an awful lot of email clients linkify urls in text/html emails.
All the mail clients I use support this, including URLs that wrap onto new lines. Yet I still receive some emails with broken links if they wrap onto new lines. Somewhere along the way, these break before getting to my mail client. I never experience this with HTML email.

If you send long URLs – for instance password reset links with tokens in them – then you need to send them with an HTML part if you want them to be as reliable as possible. Leaving long URLs at the mercy of not just mail clients but the entire mail transmission apparatus, cannot be relied upon.

Why stop at just supporting the yhe average email though? Tables/embedded images/hyperlinks can be very useful for communication. I can send them without having to worry about platforms/software/SharePoint etc. It is by far the most reliable way of sending a simple, interoperable document we have. And you can easily refer back to it later. There is no good reason not to use html for communication between actual people.
Some people want marketing emails. Did you know some people sign up for them voluntarily? They're like newsletters of old, but electronic. And it arrives in your mailbox, ready to be rendered!

Furthermore, many emails are direct links to status pages of orders, account verifications, password resets, and so on, which are definitely most functional as a clickable URL.

Any formatting in email is html.

There is nothing that requires any text to have any formatting. But basic formatting can help readability. There is a reason to include bold or italics. Or headings. Or maybe even a simple diagram/image, or make links more approachable than the raw url.

Snail mail letters can include all of the above (except links), why not email?

Even when written memos were the norm in business, they still had company letter head.