FastMail housekeeping - removing little used features and simplifying others

Post categories

Profile picture for Rob Mueller

Founder & CTO

In maintaining a large system like FastMail, we often find ourselves coming across code or configurations that’s can be harder to modify and update than we expect because of the way they interact with some particular feature or features. Normally this just means finding a different way of doing it. However in some cases, the feature itself is used by such a small number of people and the original reason it was useful is no longer so important that we’ve decided to retire a few rarely used features or update them to work differently than they have traditionally.

Below we describe the features we’re removing or changing, the rationale, and an alternative if available.

We plan to roll out what changes we can on beta over the next month, and fully roll them out everywhere on April 30.

Update: These changes are taking longer than expected to complete, so only some have been done so far. Details inline below.

Removing WAP

We’ve had a WAP server at http://wap.fastmail.fm for many years. WAP was a vastly reduced markup and display system designed for accessing internet content on early feature phones that didn’t have the power or bandwidth to render full HTML pages.

With the rise of smartphones and full HTML browsers, the use of WAP has dwindled to only a couple of users. Because of that, and because in most cases Opera Mini (which can access the HTML classic UI) will run on the phones people are using WAP on, we’ve decided to completely shutdown WAP.

Update: May 8, the WAP server has now been removed.

Removing Email reflector

The email reflector was an interesting attempt to provide an alternative to email forwarding. Basically the idea arose because some work places didn’t like employees logging into webmail accounts at work. So what you could do was “reflect” your FastMail email to your work address, and when you replied to the email from your work account, it would reflect back via FastMail and all the email addresses and headers would be rewritten to make it look like it came from your FastMail account!

In theory this was a really neat idea, however in practice it never quite worked as reliably as we liked. It was always marked as “in early stages of development” and was prone to “leaking” strange email addresses or creating extremely bizarre results if reflected and non-reflected email addresses somehow ended up being used together (e.g. someone accidentally added a “reflected” address into their work address book and used that with a non-reflector email address). Internally the code and configuration to make it all work is complex and messy.

Additionally these days, many people with work places with restrictive web policies have a personal smartphone they can easily configure to access any email account they want. They seems a much more natural solution to the problem.

On April 30, we’ll remove all reflector rules for any people who still have them still setup. We recommend you manually remove them before then so you’re more in control.

Removing SMS Sending via the web interface or SMTP

It’s currently possible to send SMS messages directly from the FastMail compose screen. You have to buy some SMS credits first, but after that, you just include a number@sms email address in your to/cc/bcc addresses and it’ll convert the first 160 chars into an SMS to that number. This also works via SMTP, you send to number@sms.messagingengine.com. You also have to set an originator
phone number for the personality you are using to send from. In theory, this is the phone number the SMS will appear to come from.

When this was first implemented almost 10 years ago, it was a really useful feature. Most people had feature phones that were slow to type SMS’s on. Using this feature, you could quickly type a message in the web interface/email client, and to the recipient it would appear to have come from your phone, so if they replied to it, the reply would go to your phone.

Since then though, the usefulness of this has dropped significantly. Most people have smartphones where it’s now much easier to tap out a quick message. Also, mobile operators became much more strict about setting arbitrary originator numbers and now most block such messages. In it’s current state, most messages sent from FastMail now appear to come from a fixed number, not the originator number people have set the personality to, so if someone replies to the SMS, the reply disappears rather than going to the original sender.

On top of this, this feature has been an ongoing source of fraud issues for us. We still regularly see accounts signed up with stolen credit cards for the sole purpose of sending SMS spam, even with our heavy rate limiting.

Because of these flaws, we’re going to remove the ability to send arbitrary messages to SMS numbers altogether. Note that this will NOT affect SMS forwarding rules or SMS two factor authentication. Both of those are definitely being kept and will continue to work.

Update: May 8, the SMS sending via web interface/SMTP has been removed

One of the features Pop Links have is the ability to set scheduled retrievals (every 1, 2, 3 or 12 hours, daily, or weekly). The minimum you can set is based on your current service level. In addition in the classic interface, you can perform additional manual retrievals from the action menu on demand. The fact the current interface doesn’t have this feature is regularly cited by a number of users as a reason not to switch interfaces.

The original reason for the different retrieval schedule limits was because we feared retrieval might be a resource intensive process with many users. What we’ve found is that almost all Pop Links are set to retrieve on the shortest interval possible for that service level and that they consume relatively negligible resources.

So what we’re going to do is remove the ability to schedule different retrieval periods, and instead just have a simple “manual” or “auto” mode switch. Respectively these will:

  • “manual” mode
    • No automatic checks
    • Classic UI: Can select from the action menu to manually
      retrieve
    • Current UI: (Update: This bit added based on user feedback,
      matches what the auto mode also does. If you don’t want this, you
      can still manually disable a pop link to stop this happening) If
      you click on a folder to go to that folder or ‘refresh’ the current
      folder, then any pop links that file into that folder get checked at
      that moment
      . Can go to the Advanced -> Pop Links screen to
      manually retrieve.
  • “auto” mode
    • Automatically checks every 1 hour
    • While logged into and active on either web interface, checks
      every 5 minutes (active is defined as performing actions which cause
      your browser to communicate with our server)
    • Classic UI: Can select from the action menu to manually
      retrieve.
    • Current UI: If you click on a folder to go to that folder or
      ‘refresh’ the current folder, then any pop links that file into that
      folder get checked at that moment. Can also go to the Advanced ->
      Pop Links screen to manually retrieve.

We believe this fits much better with what people actually want. Namely that emails are regularly retrieved from a remote service, that retrieves occur more frequently while you’re actually logged in and using the web interface, and that there’s an explicit way to perform a retrieve if you absolutely want to do one then and there.

Update: June 2, the “click on a folder to activate pop links filing into that folder” has been rolled out, the remaining changes will be rolled out soon.

Update: June 5, the remaining features have been rolled out and the Pop Links screen updated to allow “manual” or “auto” mode selection, as well as allowing an explicit “fetch” of a pop link along with the previous “test” of a pop link

Simplifying Personalities

SMTP FROM Envelope

Personalities have a option “SMTP FROM Envelope”. The fact that option says “Advanced: SMTP MAIL FROM envelope address to use. Leave blank unless told to” gives you some idea that this is a very rarely used option. Basically the point of it was to avoid SPF failures when sending email made to look like it came from an external service.

Realistically the amount of email blocked due to SPF failures is extremely low these days. SPF never really fixed any particular email problems (and added some really nasty ones like breaking forwarding without using a horrible hack) and ended up just becoming another scoring marker of little value in the overall judgement of an email’s spamminess.

The correct solution to this issue is to use the actual external server for that domain to send as that domain. In that case, the From address (in the header) and the SMTP MAIL FROM address (in the SMTP protocol) are the same, and so only the Email address field of personalities is required and is what will also be used for the SMTP MAIL FROM envelope.

Update: June 5, the SMTP FROM Envelope feature has been removed from the Personalities screen and disabled on sending

Signatures

Currently there’s a separate signatures screen for setting your signatures. You then select which signature to associate with with each personality.

Most people don’t work this way and find this extra level of indirection annoying or confusing. So we’re going to remove the signatures screen and just allow setting/editing of signatures on the personalities screen.

The one thing this will affect is the classic compose interface. In the advanced section you can choose which signature you want to use separate to the current personality. This option will be removed. If you want to use separate custom signatures, we recommend putting them in the Notepad and using the “Insert note” feature before sending.

Update: May 22, 2015! After a long delay, this has finally been completed. Any orphaned signatures have been added as a note page in the users Notes screen.

Conclusion

Well that took longer than I expected. In some ways it’s sad to see some of these go (I wrote most of the code behind them!), but realistically the things being removed are little used and the proposed changes are small but neaten up some strange legacy edges and result in a better overall product for the majority of users.

Profile picture for Rob Mueller

Founder & CTO