Hacker Newsnew | comments | ask | jobs | submitlogin
Tell HN: I just open-sourced the e-mail client I spent 2 years of my life on (github.com)
467 points by waseemsadiq 922 days ago | comments


e1ven 922 days ago | link

It looks like this was forked from (or to) an iPad version? It's probably a lot easier to sell there, granted.

It looks like a nice client- What are it's distinguishing features? What needs help? What are your intentions now- To throw it out there, or keep building it?

Are there binaries?

How are you handling the Messages in-memory? I'm looking for a mail client that can handle my multi-hundred-thousand email inbox, but everyone except Mulberry tends to have a problem ;)

Looks really sharp. Kinda reminds me of FF with the tabs at the top.

-----

waseemsadiq 922 days ago | link

Actually those are completely seperate products. One written in .net/c#, the other in objective c / pure c. Some of the concepts have been "forked" tho.

Actually with the ipad app we are not even trying to create an email client (doesn't look like it currently) but more of a email communication tool. Sounds vague but in the coming weeks things will clear up.

-----

stfu 922 days ago | link

Did you give the "new" Opera a try in regards to your large email "collection"? I had similar issues in the past, but the new version is surprisingly good in handling large repositories. Just as an idea ;)

-----

e1ven 922 days ago | link

True! I did use that for 2-3 months over the summer (version 11? 11.5?) , and it worked reasonably well. I eventually moved away, because it had a bunch of locking pauses.. I'm not sure what caused them. My guess is that when checking for mail in account A, account B,C,D would lock up?

I'll give it another shot.

-----

feydr 922 days ago | link

mutt

-----

taken11 922 days ago | link

... is really slow for opening large mailboxes, are you using some trick to make it faster? mutt alone just scans all mails before displaying anything. thats not a good idea for 100k+ emails

-----

jamespo 922 days ago | link

there's the mutt header_cache directive which can help

although if you have 100k+ emails in a folder, particularly a non-archive folder I'd suggest you're doing it wrong

-----

pyre 922 days ago | link

header_cache only works with Maildir and IMAP. If he's using Maildir for a mailbox w/ 100k+ emails, then he may start running into filesystem limitations.

-----

a3_nm 922 days ago | link

notmuch

However, you must be willing to integrate it with other tools (a frontend, something like fetchmail, and something like procmail, etc.).

-----

feydr 922 days ago | link

my particular recipe involves fetchmail, procmail, msmtp, vim, aspell, ical, etc..

but yes, if you are stuffing +100k emails into one folder -- that is completely insane -- that's why you use procmail to sort your email into different folders as it arrives; I subscribe to a LOT of email lists and ctrl-D delivers a lot of magic when I don't want to or have the time to sort through a bunch of crap but

-----

ars 922 days ago | link

pine

-----

yread 921 days ago | link

try emclient

-----

passionfruit 922 days ago | link

The Bat!

-----

biot 922 days ago | link

From the blog:

  > For the last one week, a considerable number of people who
  > have downloaded the Inbox2 app have had issues.
  >
  > The main reason for this was that our infrastructure was not
  > scaling fast enough at the rate the app was being downloaded. 
Why does an email client depend on your infrastructure?

-----

waseemsadiq 922 days ago | link

Actually the client doesn't but we also have another version which runs in the cloud. Old versions of the ipad app were hooked up to that, newer versions are completely stand alone so that has also changed in the mean while... hey what can I say, we move fast :-)

-----

biot 922 days ago | link

What was the benefit of such an arrangement? My email server is already "in the cloud" so to speak. As it's a downloaded app, what value was added from a man in the middle, as it were?

-----

waseemsadiq 922 days ago | link

Well the cloud is always on and online. Additionally we want to work with metadata which we want to store in the cloud and is not supported by for ex. the IMAP protocol. I can't go into to much details regarding our product roadmap but having a cloud backend really helps.

Another concrete case is new email notifications. When our ipad is not the active app we simply are not able to inform you when new mail arrives (due to apple background app restrictions). With a client/cloud hybrid we can do the heavy lifting on the client and use the cloud for example to send notifications when new mail arrives.

-----

biot 922 days ago | link

The cloud is always on and online? I don't mean to be argumentative, but your cloud apparently couldn't handle the load. Downloading an email client shouldn't require a "hit by a bus" analysis of the app's creators.

An app can store metadata locally; no need to have that on your servers. No doubt you can do some interesting things by having a server-side infrastructure, but I'm concerned about the security implications. If your server gets hacked, an attacker would have access to all of my email. Not to mention that you would have access to all of my email and why should I trust you?

-----

brown9-2 922 days ago | link

Pure speculation but it kind of sounds like they want to be able to mine some of that data.

-----

illumen 922 days ago | link

It also gives them an extra way to lock users in.

-----

waseems 920 days ago | link

Well thats why we are a 'start'-up, we have the start part down just need to get at he up part :-0

-----

sliverstorm 922 days ago | link

Stop offering the cloud version while you work on the client version. Re-offer the cloud version later once you've got your feet under you.

-----

mrschwabe 922 days ago | link

Impressive looking product. Your efforts shine through. Great work man.

Now I will ask the inevitable question: why did you open source it?

-----

waseemsadiq 922 days ago | link

Well we could build 'a' business out of it, but we realized it wouldn't be a scalable business. For a couple of reasons:

* We tried to do to much (classic mistake -> email + social + contacts...)

* There are way too many ways that people use e-mail (folders, labels, rules, sorting, etc, etc)

* Because there are too many ways you can not create a commercially viable alternative that fits a large nr. of users

Truth be told, we didn't even want to create an e-mail client but rather wanted to fix e-mail workflow. We never ended up being able to do that due to forementioned reasons. We intend to rectify that in a couple of our other products.

We still see a need (and people actually ask for it) for a unified e-mail/social inbox. So we thought to have the open-source community have a go at it.

-----

eykanal 922 days ago | link

Excellent answer, and I love your thought process. Why have all your work go to waste not publishing it? This way, you don't have to worry about the inevitable "Why doesn't it do <random fringe feature>? I NEED that in my workflow!", you still get good recognition in the field, and all us users benefit from another good email client.

-----

erikb 922 days ago | link

I would still try to put any kind of businessmodel onto it and look if any money comes out. Now you are here on the mainpage and thus much more famous. Having your source code in the open doesn't mean you don't see a paycheck for your work! (especially when most of your page views will come from HNers, who value great coding work and thus are more willing to pay for it, even if they don't have to. Think about this one article about Textmate2 some days ago.)

-----

qrush 922 days ago | link

What license is this under? :(

-----

waseemsadiq 922 days ago | link

It's under the "I don't give a shit as long as some dude in china doesn't slap another name on it and sell it licence". I am not sure what the official name for that is tho :-)

-----

frew 922 days ago | link

This is a good intention, but unfortunately the way copyright law works, having the license be ill-defined means that nobody can really use it and be assured that they're above-board, particularly in something like an Apache or GNU open source project, or in a company environment.

Unfortunately, there's not really a good, widely used license that does what you want, mostly because you run into problems pretty quickly based on derivative works with what you want. Let's say somebody merges your email client with a browser - can they call that by a different name? Can they sell that?

Anyhow, I'd suggest looking at looking at the Apache or BSD licenses (if you want the broadest use) or the GPL (if you want to ensure that modifications to the code must be distributed with any binaries made from the code). Licenses are a bit of a pain, but you can just pick one of the common ones and it'll really help adoption.

-----

waseemsadiq 922 days ago | link

Thanks thats helpfull, I'll add a licence tonight (probably BSD)

-----

joelthelion 922 days ago | link

Note that BSD does allow "some dude in china [to] slap another name on it and sell it".

-----

elehack 922 days ago | link

Yes, but they have to give credit back. Better than nothing - people can follow the trail.

-----

cbr 922 days ago | link

I don't believe this is true. Looking at http://en.wikipedia.org/wiki/BSD_licenses indicates nothing about an attribution requirement.

-----

Zev 922 days ago | link

  * Redistributions of source code must retain the above copyright
    notice, this list of conditions and the following disclaimer.

  * Redistributions in binary form must reproduce the above copyright
    notice, this list of conditions and the following disclaimer in the
    documentation and/or other materials provided with the distribution.

-----

bryanlarsen 922 days ago | link

They just have to bury the license in the documentation somewhere. Who reads documentation?

-----

mrschwabe 922 days ago | link

Yeah but at least if he goes BSD then he too can use this code in a commercial product.

-----

a3_nm 922 days ago | link

Huh?! If he's the copyright holder, he can license the code under whatever license he chooses and use his code in a commercial product if he wishes.

-----

mrschwabe 921 days ago | link

Ok I think I read you, but lets say his new commercial product was proprietary; the product costs $100. If the license for his original Inbox2 product was GPL, he would be required to distribute the source code on his new product right? So my point is, if its a BSD license he can integrate that code into the $100 product and not have to share the source code. I'm no software license expert so if I'm mistaken please correct me here.

-----

a3_nm 921 days ago | link

IANAL either, but I still think he'd be free to use his original code in a commercial product. By releasing under GPL, you give others a limited license to redistribute and modify the software subject to some conditions, but you keep all your rights, and you are free to distribute proprietary versions of the code.

See https://www.gnu.org/licenses/gpl-faq.html#ReleaseUnderGPLAnd...

-----

mrschwabe 921 days ago | link

Ooooooohhhh neat, OK that makes GPL a whole lot more attractive then. Assumption destroyed; paradigm expanded. Thank-you.

-----

raphman 921 days ago | link

correct.

-----

mst 922 days ago | link

You might also find the Artistic License interesting -

http://www.perlfoundation.org/artistic_license_2_0

It's an interesting balance between freedom and giving back - may be more suited to what you want or may not.

-----

fuzzythinker 922 days ago | link

I think MIT and BSD licenses fall into that category in that the copyright must be left unaltered. But that still won't stop someone from doing what you say ;)

-----

powertower 922 days ago | link

When a "dude in china slaps another name on it and sells it" you'll still not be able to do anything about it regardless of the license you choose.

Just say its "public domain" or MIT or Apache in a file called license.txt in the project and forget about it.

-----

kinofcain 922 days ago | link

I believe you're looking for the WTFPL:

http://sam.zoy.org/wtfpl/

-----

afsgdhfj 922 days ago | link

Looks like public-domain now, since no license mentioned: http://en.wikipedia.org/wiki/Public_domain

-----

warp 922 days ago | link

When you write code, you automatically have copyright on it (in most countries). Failing to include a copyright notice or including a license text does not make your work fall into the public domain.

As far as I can tell this code is not currently open source. The only permissions given are: "now fork it, fix it and send pull requests". Which omits some important permissions, without which this cannot be called open source.

-----

sadfasdfads 922 days ago | link

The author publicly announced it was open source via HN.

"Open-source software is software whose source code is published and made available to the public, enabling anyone to copy, modify and redistribute the source code without paying royalties or fees.[19]" http://en.wikipedia.org/wiki/Open_source

"Works are in the public domain if the intellectual property rights have expired,[1] if the intellectual property rights are forfeited,[2] or if they are not covered by intellectual property rights at all." http://en.wikipedia.org/wiki/Public_domain

He put it on GitHub, and he announced it was Open Source on HN.

"There's no license in this case and you cannot claim any intellectual property of the code. It would be the same if you uploaded the content on your own site without providing any license. According to the terms:

We claim no intellectual property rights over the material you provide to the Service. Your profile and materials uploaded remain yours. However, by setting your pages to be viewed publicly, you agree to allow others to view your Content. By setting your repositories to be viewed publicly, you agree to allow others to view and fork your repositories." http://stackoverflow.com/questions/4007674/whats-the-default...

So, I was wrong. He has copyright.

-----

mbreese 922 days ago | link

"Open source" isn't a legal term...

-----

JoachimSchipper 922 days ago | link

Under the Berne convention, "all rights reserved" if no license is mentioned. Pretty much every country has signed the Berne convention.

-----

m_eiman 922 days ago | link

No license mentioned doesn't mean public domain.

-----

stephenatwork 922 days ago | link

No, that's not how it works. At least in the US, an author has an implicit copyright over his or her work even if he or she does not post a copyright notice. The author would have to explicitly forfeit his or her rights to the work in order for it to be in the public domain.

-----

pbhjpbhj 922 days ago | link

This was actually the case in most of the world when the USA was still using a register. It's relatively recently that the USA has signed up to what the rest of the world has been doing for a while ... just for a change.

Of course there are some places that haven't signed the Berne Convention and don't have a copyright treaty through TRIPS or something similar.

-----

tobiasu 922 days ago | link

No license/no copyright declaration means no rights in all countries that have signed the Berne Convention (http://en.wikipedia.org/wiki/Berne_convention). This includes the USA since 1989.

-----

boredguy8 922 days ago | link

Did you read the page you linked?

"Copyright under the Berne Convention must be automatic" and "Under the Convention, copyrights for creative works are automatically in force upon their creation without being asserted or declared."

-----

kbutler 922 days ago | link

I'm pretty sure the grandparent meant "no copyright notice = no rights granted" rather than "no notice = no rights reserved". Maybe I'm just reading it too charitably.

-----

tobiasu 922 days ago | link

Yes I did. My reply was to someone who assumed "no license" would grant him "all rights" (public domain) when in fact it does not give him any rights. For the copyright owner, the reverse is obviously true.

You and the other downv^Wredditors read it without considering the context.

-----

simonbrown 922 days ago | link

I'm no lawyer, but I'm pretty sure public domain is not the default.

-----

loumf 922 days ago | link

Also not a lawyer, but pretty sure that no license is the same as "All rights reserved" (meaning, the most restrictive possible). Claiming "All rights reserved" doesn't give you more rights, but does establish that you communicated it and that anyone violating it had a better chance of knowing that.

(I think -- not a lawyer)

His statement to fork, fix, and ask for pulls perhaps gives some rights, but not usage or deployment ones.

In other word, if the author intends something else, they should say so.

EDIT: just noticed ThirdParty folder -- that changes the default to whatever is compatible with the licenses asserted in these libraries. I didn't check them.

-----

terinjokes 922 days ago | link

I did some checking:

- Facebook Toolkit is Microsoft Permissive License (Ms-PL) 1.1

- FluidKit says it's the "New BSD License" but gives the old 4-clause license.

- Google/GData is Apache 2.0

- Json.NET is MIT license

- Lucene.NET Apache 2.0

- MEF is the original Microsoft Public License (Ms-PL)

- LumiSoft.Net seems to be a custom license. I'm not sure what it is

- I'm not familar enough with Mono to know what license this code is under, likely LGPL or MIT

- PyBinding: MIT

- SharpZipLib is GPL with a linking exception

- Sqlite is Public Domain

- tweetsharp: MIT

- log4net: Apache 2.0

With HttpServer, Shell32, Unrar and mshtml unknown.

[Edit: formatting]

-----

sadfasdfads 922 days ago | link

Hmm- I think that is a grey area. Note what is said here about default license/rights on GitHub as of 10-7-2011:

"Copyright and Content Ownership

We claim no intellectual property rights over the material you provide to the Service. Your profile and materials uploaded remain yours. However, by setting your pages to be viewed publicly, you agree to allow others to view your Content. By setting your repositories to be viewed publicly, you agree to allow others to view and fork your repositories.

GitHub does not pre-screen Content, but GitHub and its designee have the right (but not the obligation) in their sole discretion to refuse or remove any Content that is available via the Service.

You shall defend GitHub against any claim, demand, suit or proceeding made or brought against GitHub by a third party alleging that Your Content, or Your use of the Service in violation of this Agreement, infringes or misappropriates the intellectual property rights of a third party or violates applicable law, and shall indemnify GitHub for any damages finally awarded against, and for reasonable attorney’s fees incurred by, GitHub in connection with any such claim, demand, suit or proceeding; provided, that GitHub (a) promptly gives You written notice of the claim, demand, suit or proceeding; (b) gives You sole control of the defense and settlement of the claim, demand, suit or proceeding (provided that You may not settle any claim, demand, suit or proceeding unless the settlement unconditionally releases GitHub of all liability); and (c) provides to You all reasonable assistance, at Your expense.

The look and feel of the Service is copyright ©2011 GitHub Inc. All rights reserved. You may not duplicate, copy, or reuse any portion of the HTML/CSS, Javascript, or visual design elements or concepts without express written permission from GitHub."

http://help.github.com/terms-of-service/

-----

loumf 922 days ago | link

"you agree to allow others to view and fork your repositories"

Ok, but not use or deploy the results. Basically -- the author should add a license.

-----

achompas 922 days ago | link

Congrats on creating such a nice client. And in C#, no less!

Your title implies that your hand might've been forced here. Was that the case? Would you have preferred to keep it closed?

-----

websymphony 922 days ago | link

Kudos to you for taking such a brave decision. Can we know the story behind it?

-----

nmcfarl 922 days ago | link

Looks like there is a little bit of the story here: http://blog.inbox2.com/we-are-launching-a-new-product

-----

krmmalik 922 days ago | link

PS. Just in case you're all wondering, their company name "Tabdelee" is Urdu for "change" as in 'We want to change the world '

-----

revorad 922 days ago | link

Kya baat hai!

-----

waseemsadiq 922 days ago | link

nice catch :-)

-----

krmmalik 921 days ago | link

and suddenly HN becomes a cartel of Urdu speakers ;-)

-----

sharjeel 921 days ago | link

Badal do zamana!

-----

philipthrasher 922 days ago | link

Could it be? Someone has finally made an aesthetically pleasing Windows App?

Thank you for being design conscious. If only more developers like you existed on that platform.

-----

damoncali 922 days ago | link

I had to look twice to realize it wasn't an OSX app. Very well done.

-----

calloc 922 days ago | link

I am glad I wasn't the only one that thought that.

-----

batina 922 days ago | link

Haha, exactly what I did :)

-----

a3_nm 922 days ago | link

The github page has a screenshot, but no features list. It could be a good idea to add one. Right now, I still don't have any idea of what makes your email client different from any other, and why I would want to use it.

-----

joelthelion 922 days ago | link

Does this work on Linux with Mono?

-----

kevinherron 922 days ago | link

Anybody want to build and host the binary somewhere? I tried to build in Visual C# Express 2010 and was unsuccessful...

-----

consonaut 922 days ago | link

Use the installer found at https://github.com/waseems/inbox2_desktop/tree/master/Code/C...

-----

waseemsadiq 922 days ago | link

Hah didn't even know that was in there! :-)

-----

consonaut 922 days ago | link

Only thing I can say so far is that it looks nice ;-) Appreciate the work, I'll try to contribute if I get the chance.

-----

[deleted]
biot 922 days ago | link

They relaxed the Objective C only position quite some time ago.

-----

r4vik 922 days ago | link

Looks great, maybe you can monetise it by bundling some add on web services? xobni / rapportive / cloud backup & search?

-----

donniefitz2 922 days ago | link

This is awesome. I've been looking for something like this for Windows for a long time. You put some serious effort into this and it's beautiful.

FYI - for those looking to run this: open the non-64 bit solution, build it, then go to the installer directory and run the windows installer. Works really nicely.

-----

krmmalik 922 days ago | link

Just got really excited about this and tried it on my iPad. I managed to set the accounts up no problem but on downloading data it just keeps bombing out on me, and now i cant get back into the app.

-----

waseemsadiq 922 days ago | link

We just released a new version to the app store like 15 minutes ago, try again. Could you send me a crash report to waseem@inbox2.com otherwise? thx

-----

krmmalik 922 days ago | link

How do i send you a crash report? - Sorry im rather average when it comes to iOS

I tried the new update, its definitely a little more stable but it's still bombing out on me :(

-----

waseemsadiq 922 days ago | link

Follow the instructions on this page: https://culturedcode.com/things/wiki/index.php/Sending_crash... but e-mail them to waseem@inbox2.com

Thanks!

-----

suhastech 922 days ago | link

He started writing this just to open source it...

http://news.ycombinator.com/threads?id=waseemsadiq

Cool!

-----

waseemsadiq 922 days ago | link

Well not entirely true, that other post is actually about a experimental gmail plugin that I made. It hooked up in gmail and added something that we call the people centric inbox, never released tho

-----

jstepien 922 days ago | link

Could we a have a binary version, please? It would definitely help evaluating your project.

-----

waseemsadiq 922 days ago | link

I will compile an installer version later. Keep an eye on the github page for updates.

-----

consonaut 922 days ago | link

There already is an installer in the repo. https://github.com/waseems/inbox2_desktop/tree/master/Code/C...

-----

chriseidhof 922 days ago | link

I also wondered about the story. Looks like they made an iPad version instead: http://www.inbox2.com

-----

suhastech 922 days ago | link

I think I was using your inbox2.com web version. I was a fan of that. I know, this might be too much to ask, but can you open source that too?

The thing is, I've have never quite learnt to parse raw mime email. I don't quite get the million RFC rules imposed.

And great work!

-----

kvnn 922 days ago | link

The screenshot looks amazing. You should be proud! Well done!

Are you planning to make a profit? Did you always intend to open source it?

-----

firefoxman1 922 days ago | link

Wow, as soon as I saw the screenshot I thought: "Beautiful." It kind of reminds me of the Mozilla Raindrop project. That is just a really great UI.

-----

qasar 922 days ago | link

Good work Waseem/Khuram. Inbox2 going to live on for the iPad? Moving into 500?

-----

waseemsadiq 922 days ago | link

thx, yes and yes :-)

-----

itsnotvalid 920 days ago | link

I used it may be once when it was in beta and then never touched. The thing is, C# as well as Java have poor startup time which becomes the biggest problem of using any of such applications.

I don't always have a SSD on my computers.

-----

emp_ 922 days ago | link

98 compilation errors out of the box, this is going to be a long afternoon, but looks like it's worth it!

-----

waseemsadiq 922 days ago | link

Actually make sure that you choose the x86 in the configuration manager dropdown and everything goes away.

Sorry, should have mentioned it in the README, will update later

-----

donniefitz2 922 days ago | link

Yeah, don't use the 64bit. The non-64 worked great for me. After that go to the installer directory and run the installer.

-----

More



Lists | RSS | Bookmarklet | Guidelines | FAQ | DMCA | News News | Feature Requests | Bugs | Y Combinator | Apply | Library

Search: