Author Topic: Why is Aquamail so fast?  (Read 6273 times)

junnan

  • Newbie
  • *
  • Posts: 16
Why is Aquamail so fast?
« on: October 23, 2017, 07:27:00 pm »
Before Aquamail, I've tried at least ten email clients but none of them is as fast as Aquamail regarding the speed of navigation, loading/rendering emails, etc. Gmail, myMail, and the new edison mail are relatively fast. Bluemail is just so slow, it takes at least 0.5s to open every email. To be honest, I was blown away when I first tried this app. After a few hours of tinkering to make sure it has all the features I want, I immediately bought the pro version.

So I'm wondering why Aquamail is so fricking fast? The developer of this app is that good? Or is the structure if this app fundamentally different than other similar apps?

Btw, I'm using Google Pixel in Oreo 8.0.

Kostya Vasilyev

  • Hero Member
  • *****
  • Posts: 12740
Re: Why is Aquamail so fast?
« Reply #1 on: October 24, 2017, 08:58:20 pm »
Aqua Mail is not cloud based, connects directly to your mail servers and only stores data on the device.

So it's unlike MyMail, Type Mail, Blue Mail, Outlook, Newton - and is like Thunderbird, Outlook, K9 Mail, Gmail, Samsung Email, LG Email and so on.

And it's not perfect - and that includes performance too (typically when it's configured to load / store too many messages on the device, or to check mail too much / often).

Other than that - don't really know how to answer that (but thank you thank you thank you).
Creating debug logs for diagnostics: https://www.aqua-mail.com/troubleshooting/

The official FAQ: https://www.aqua-mail.com/faq/

Лог-файлы для диагностики: https://www.aqua-mail.com/ru/troubleshooting/

Вопросы и ответы: https://www.aqua-mail.com/ru/faq/

junnan

  • Newbie
  • *
  • Posts: 16
Re: Why is Aquamail so fast?
« Reply #2 on: October 24, 2017, 09:57:09 pm »
Aqua Mail is not cloud based, connects directly to your mail servers and only stores data on the device.

So it's unlike MyMail, Type Mail, Blue Mail, Outlook, Newton - and is like Thunderbird, Outlook, K9 Mail, Gmail, Samsung Email, LG Email and so on.

And it's not perfect - and that includes performance too (typically when it's configured to load / store too many messages on the device, or to check mail too much / often).

Other than that - don't really know how to answer that (but thank you thank you thank you).


Thanks for your explanation. The most noticeable difference between aquamail and other apps regarding speed is when you open a message. Gmail is fast among other Android email clients, but it is still not as snappy as aquamail even when they both store messages on the device. It just opens instantly with no lag at all even for non plain text messages. Have you optimized the app for this in particular?

The strange thing is that I never heard other reviewers or users talking about the speed of this app compared to others. Didn't they notice this? For me it's like day and night. I'm still excited that I found this app 2 days ago. Oh, one suggestion here is that you might consider a one week trial for new users, say after one week you either buy pro version or see a huge amount of ads. It gives users some time to tinker with it and appreciate it instead of being turned away by the ads immediately.

Thank you for your great work in making this excellent app.

Kostya Vasilyev

  • Hero Member
  • *****
  • Posts: 12740
Re: Why is Aquamail so fast?
« Reply #3 on: October 27, 2017, 08:23:31 pm »
Ah this I can actually comment on.

All modern Android email apps use what's essentially a web browser to display message content, with UI elements overlaid on top.

For this to work, the content of HTML messages has to be pre-processed - things like removing scripts, blocking external links (if needed), detect block quotes.

Gmail (parts of its code are available) uses a third party HTML parser / sanitizer which builds a complete in-memory representation of the original HTML and then transforms that.

When I started working on this technology piece (a few years ago), I looked at it and it seemed a bit slow - I thought that it was the reason why in Gmail you see a "spinning wheel" when opening a message, after the overall layout is all there but before the actual text shows.

I didn't want to have that, and was concerned about memory usage too - so wrote my own HTML / CSS parsers for the task, the code tries to avoid doing what it doesn't have to, doesn't copy the data quite so much, uses object pools to reduce memory allocation pressure and so on.

Re: users commenting on this

Mostly, users post or send emails when something's wrong :)

A recent example - OnePlus comes out with a *beta* of 8.0, Aqua's "pro version unlocker app" broken, completely unexpected - 1-star reviews on Play here they come, "that'll teach them" :)

Creating debug logs for diagnostics: https://www.aqua-mail.com/troubleshooting/

The official FAQ: https://www.aqua-mail.com/faq/

Лог-файлы для диагностики: https://www.aqua-mail.com/ru/troubleshooting/

Вопросы и ответы: https://www.aqua-mail.com/ru/faq/

junnan

  • Newbie
  • *
  • Posts: 16
Re: Why is Aquamail so fast?
« Reply #4 on: October 27, 2017, 09:37:18 pm »
It sounds like the parser you wrote is why it's so fast. You are the best!

Kostya Vasilyev

  • Hero Member
  • *****
  • Posts: 12740
Re: Why is Aquamail so fast?
« Reply #5 on: October 29, 2017, 07:51:56 pm »
Just - something written for a special / narrow purpose can often be optimized better than general purpose code.

On the flip side you have increased maintenance costs, but then again someone else's library may have bugs too and they may not be interested in fixing them...

The often quoted "two hard things in Computer Science" should have another item: "tradeoffs" (intentional or not).

Creating debug logs for diagnostics: https://www.aqua-mail.com/troubleshooting/

The official FAQ: https://www.aqua-mail.com/faq/

Лог-файлы для диагностики: https://www.aqua-mail.com/ru/troubleshooting/

Вопросы и ответы: https://www.aqua-mail.com/ru/faq/