I recently quit my hedge fund job to pursue entrepreneurship. My hypothesis is that in the long term entrepreneurship outperforms high paying jobs, and that most risk of failure can be minimized when starting a business by choosing conservative (easy) problems, and applying rational thinking as well as creativity to business problems. I started chronicling my success and failures here, this is article 2. It will cover idea formation, monetization, and the technical and design choices I made building the product.
I rented this Airbnb for 8 friends. Airbnb wanted the email addresses of my companions so they could forward the itinerary. Typing one address is ok, 8 is way too many, so like most programmers would do, I wrote a program to solve this minor problem.
There are a number of ways that this is solved right now. And by this I mean “handling email communications with groups of people”
I believed that by making email groups as easy to use as option 1 people would start using email groups in more places.
Monetization
This only counts as a business if I can monetize it. I had 2 possible approaches in mind — a paid version (more groups, larger groups), or advertising. This service is an incremental improvement on existing solutions (which are free) so my prior is that it would be difficult to charge for it. Email advertising gets you 5$ per 1000 emails sent (or 15$ per 1000 opened). Mailing list emails should have pretty high open rates (in this case it’s being sent by your friends). I would be reasonably happy if I could generate $2000 a month from a service this simple to build so that would require (assuming 80% open rate) 166,000 emails sent per month — not ridiculous.
One downside of this idea is it’s not a huge improvement over existing tools — I generally prefer businesses where there is an urgent customer need — but it was straightforward to put together (1.5 weeks development time) and I personally use it, so I was willing to give it a go. There is also a viral component which I like. I believed that group members who had been added would add their friends, and it would spread.
This section will be somewhat technical (but without code snippets). If technical stuff bores you, you can stop reading now.
The first thing I did was throw together a landing page. I’m terrible at design — I just needed something that looked somewhat professional and fun. I went to this page of free (and paid) themes, and chose this one. For someone like me, using a theme (or hiring a designer) is definitely the best way to go, there are too many design details that I get wrong when I try to do it myself. My only complaint is that most themes tend to be overly specific, and look strange when you try to adapt them to other content.
Here it is adapted for GroupMail. I went to pexels for some royalty free images and chose a happy beach scene.
Traditional password based auth schemes are too cumbersome. I ask users for an email address, and, then I send them a one time login link (this is also how Medium works by the way). And it has the added benefit that the flow of registering a new account and logging in are exactly the same.
Web App for GroupMail
I threw together a web interface using Vue.js. I had originally started using React and abandoned it for a 2 reasons
The web application portion of GroupMail is simple. It’s unclear to me whether the templates of Vue.js are flexible enough to produce more complicated web applications without becoming too confusing. If I ever build another client side web application of sufficient complexity I’ll probably find out, but for now Vue.js is great, and React is too hard.
The web interface is a secondary way to create email groups. The easiest way to create groups is by forwarding email. If you forward an email to [email protected], we’ll turn the subject of the email into the group name, and add all email addresses referenced in the email to the group. Every time I receive an email at [email protected], My email service provider hits a webhook of mine with some metadata about the incoming event. I parse the creation email, then I send a message to the group creator, with a link so that they can confirm the group, or edit the group. When they are done, I send a welcome message to the original thread. Subsequent replies to the thread use the new email group. I’ve learned a few interesting things about email
I’ve got a functional group email service now. I use it regularly for some permanent groups (my family, for example) As well as for some disposable groups (for trips that I’ve taken with friends). Building is the easy part — getting users and monetizing them is the hard part — which is up next. My next article talks about how I tried to market GroupMail, and got banned from Google Adwords in the process
my past projects are about simple easy email groups, and getting help for open source projects. My current project provides cloud hosted Jupyter notebooks