In terms of managing IMAP connections, async is definitely the way to go. For our product, lightermail.com, I ported Python's imaplib to run on Tornado's ioloop (adding a few features like IDLE support and command pipelining). Not only can you manage a lot of connections with little memory, but you can do some really cool things (like the pipelining of commands mentioned above) that are unavailable to regular synchro…
How to Build an Email Client
11–20 of 39 posts
Re: How to Build an Email Client
#12Re: How to Build an Email Client
#13Whatever you do when you build your client, do me one UI favor: Reverse the fields when composing. Body, then subject, then addressees, then the Send button. Think of all the headaches due to accidentally-sent mails the world over.
Re: How to Build an Email Client
#14Very recently I built a little desktop email client. It was...interesting. And hoary. And fraught. Very interesting though, I think everyone should have a crack at writing a basic SMTP library at some stage just so they appreciate the benevolence of anyone happy enough to sit and go through RFC guidelines. Node seems like a far better choice for the project than Rails, no hate for RoR from me but Node is pretty much…
Definitely agree with you that the benevolent few who produce FOSS deserve admiration especially when wrestling with the esoteric aspects of POP, IMAP and SMTP.
Re: How to Build an Email Client
#151. Observe the continually evolving web standards of CSS and HTML. 2. Ignore them completely and build it based on Microsoft Office XML. 3. ??? 4. ... probably not profit.
Re: How to Build an Email Client
#16Whatever you do when you build your client, do me one UI favor: Reverse the fields when composing. Body, then subject, then addressees, then the Send button. Think of all the headaches due to accidentally-sent mails the world over.
Also, worst thing you actually can do is to put the save/send/ok button on the bottom when all other UI elements are on the top of the UI (which is usually the case in mail clients).
Re: How to Build an Email Client
#17The biggest frustration I have with gmail is multiple account management. This chrome plugin isn't perfect, but works really well. https://chrome.google.com/webstore/detail/checker-plus-for-g...
Re: How to Build an Email Client
#18Whatever you do when you build your client, do me one UI favor: Reverse the fields when composing. Body, then subject, then addressees, then the Send button. Think of all the headaches due to accidentally-sent mails the world over.
No, please don't, here is one voice against "let's do it totally different for idiots". Next you want to have 3 confirmation dialogs "do you really want to send" followed by "did you prove-read your mail again?" followed by "you clicked YES too fast, go back to start and prove-read again". Also, worst thing you actually can do is to put the save/send/ok button on the bottom when all other UI elements are on the top o…
To answer the UI elements on the bottom, I'm not sure I actually press the Send button at all, instead opting for a keystroke depending on the client. The physical analogue I base my request off is the order I fill out a letter or card--I write my message, then I sign it, and then I seal and address the envelope.
Beside that, what's to keep a hypothetical upside-down mail client from putting all of its control elements on the bottom of its interface?
Re: How to Build an Email Client
#19Very recently I built a little desktop email client. It was...interesting. And hoary. And fraught. Very interesting though, I think everyone should have a crack at writing a basic SMTP library at some stage just so they appreciate the benevolence of anyone happy enough to sit and go through RFC guidelines. Node seems like a far better choice for the project than Rails, no hate for RoR from me but Node is pretty much…
Re: How to Build an Email Client
#20Very recently I built a little desktop email client. It was...interesting. And hoary. And fraught. Very interesting though, I think everyone should have a crack at writing a basic SMTP library at some stage just so they appreciate the benevolence of anyone happy enough to sit and go through RFC guidelines. Node seems like a far better choice for the project than Rails, no hate for RoR from me but Node is pretty much…
But... SMTP stands for SIMPLE Mail Transfer Protocol.