The Paradox Of The Mail Server On The Cloud

Cloud Mail ParadoxProviding your web application with a mail service that works flawlessly is probably essential for your business. You need to send activation emails to users, password reset emails, newsletters and probably a whole bunch of other emails that have to do with interactions with your application.

When there were only physical servers and static IP addresses, everything worked perfectly. But now, when your application is in the cloud, setting up a working mail server next to your application is ridiculously impossible. If your application is successful and you would like to send emails to your millions of satisfied users, your options come down to:

  1. Use a physical hosted server.
  2. Use a 3rd party email service.
  3. Set up a mail server in the cloud and compromise on some/most being marked as spam.

For us cloud oriented developers, option 1 is as useful as somebody suggesting you’d use a cassette tape recorder to put your favorite songs on. It’s old, unreliable, can’t scale. Option 2 is very costly if your business is successful, and most of these services don’t deal with the amount of mails you need to send if you have a large scale user base. Option 3 will make your email communication efforts with your users almost non-existent, which means you can’t afford it as well. So your only option is to compromise somewhere.

Why is sending email from the cloud so difficult?

In order for your mail server to operate successfully and be trusted by mail services around the world, you need to abide by the following rules:

  1. Don’t be an open relay.
  2. Implement (and follow) SPF policy (and DKIM if possible).
  3. Have a PTR record that resolves back exactly to your mail server hostname.
  4. Don’t let your public IP address be listed in any RBLs.

Rule #1 is easily implemented in any mail server configuration, and there are also a number of online tools to test if you’re an open relay or not. Option #2 is also pretty easy to implement, assuming you control your DNS zone files and know your way around it.

The problem of mail on the cloud begins with rules #3 and #4. A PTR record, which is a reverse DNS entry, must be present and correct for your mail server to not be considered spammy. If your mail server is at 1.2.3.4 and is called mail.example.com, the PTR query for 1.2.3.4 (well, for 4.3.2.1.in-addr.arpa) must return mail.example.com. The PTR record can only be changed by the owner of the IP address, or by a delegation of his authority to you. Amazon Web Services do not let you control PTR records, so there goes the option for a mail server on EC2.

Other clouds let you control the PTR records for the IP addresses they assigned to you. But they fail on Rule #4. While your specific IP address might not be blacklisted in RBLs, the entire block that it belongs to might be blacklisted, because these IP addresses are assigned dynamically and therefore are always suspected as spammy by these lists. This is the case with Rackspace Cloud for example, and is the only thing left to be solved before you can run a mail server there. And although they’re trying to get their address block de-listed, this problem still persists.

Other clouds I’ve examined in this space are GoGrid and Joyent. GoGrid want you to fill up a questionnaire, and only then they open up port 25 for you. This sounds absurd, and against all the on-demand nature of the cloud (and I also personally don’t trust ServePath, the company that operates GoGrid). Joyent’s offering seem to disregard the option of hosting a mail server with them, and I couldn’t get their response on this matter.

So unless Rackspace Cloud solve their IP block blacklisting problem, or AWS offer a PTR setting option (plus no blacklisting as well), we’re left with the need to compromise.

The only feasible solution right now — seems like it’s back to physical hosting.

When A Service Can't Commit To What It Is Selling

I’ve stumbled upon a service which promises your Twitter account to automatically grow enormously in terms of followers and make money on the way. It’s called TwitterTrafficMachine, and I am absolutely not going to link to them.

They might be nice people, good at what they’re doing, and this might be even legit according to all the involved Terms Of Service agreements of any of the services they’re using, but something about it doesn’t feel right. First of all, it looks cheap and sleazy. Second, and what I find most bothering, is that they try to sell you their service as something excellent, and then in the disclaimer page they say:

And you should also know that the testimonials here illustrate extraordinary results and unique experiences which do not apply to most customers who use our products and which you should not expect to achieve.

If I should not expect to achieve what you’re selling, then why should I buy it? If you have a service, don’t offer it if your client can’t expect to achieve what you’re offering.

If Twitter Go The Advertising Model Way, They Might Hit The Jackpot

There are wild guesses all over the blogosphere as to where Twitter is headed when it comes to its business model. It has certainly become an obsession to talk about it in some circles, and the air is filled with speculations — from Calacanis’s advertising/subscription model, through TechCrunch’s pro/business or sponsored suggested accounts model, to the hilarious downtime advertising model.

Wherever it may eventually go — and my bet is it will be a mixture of pro accounts and advertising — the advertising model in Twitter might be something very innovative, both in targeting and delivery.

Targeting – Easy Semantics and The Realtime Factor

Targeting a Twitter user is very convenient. They don’t have to assume or speculate anything about a user, they don’t have to track cookies and collect Behavioral Targeting data and try to determine if a user is action prone or not, or try all the other good old targeting tricks, such as geo-targeting and figuring household income. The simple nature of Twitter messages, which is very short and informative, makes them very easy to process semantically — aside from lolspeak and l33t, sentences are simple, usually noun/pronoun-verb-adverb-adjective. And the best part is, the user gives information about himself voluntarily — location, likes and dislikes, actions performed, etc.

Take me for example, in this imaginary (but could-be-true) scenario:

  • In SFO, waiting to board flight for JFK. Coffee anybody?
  • Just saw the new Pearl Jam album, love them!
  • @johndoe Let’s meet later this evening for dinner

Do you realize how much Twitter knows about me in the 5 minutes I tweeted these three? They can advertise to me flight tickets, coffee in SFO, Pearl Jam and similar music, and places to eat dinner in New York.

Now, you might say that Facebook or other social networks can provide similar targeting, but the realtime nature of Twitter makes it even more powerful. I might ditch Pearl Jam in a month in favor of Soundgarden, and Twitter will know that immediately. I might be in a conference and suddenly crave a steak. The relevance of the advertising is much better when my realtime wish or craving is in the equation.

Delivery – Unobtrusiveness and Flow

The way Twitter will deliver the ads will have a very high impact on the user responsiveness to the advertising. And the fact that Twitter has an open API and a lot of users using 3rd party clients to access it, will force them to embed the ads in the Twitter stream. They could be “full tweet ads” or they could be “tweet-appended ads”.

For example:

  • In SFO, waiting to board flight for JFK. Coffee anybody?
    • From twitter: Drink Coffee at Starbucks@SFO!
    • From twitter: Next time, save on airfare with MyImaginaryTravelAgent!
  • Just saw the new Pearl Jam album, love them!
  • @johndoe Let’s meet later this evening for dinner

Or:

  • In SFO, waiting to board flight for JFK. Coffee anybody?
  • Just saw the new Pearl Jam album, love them!
  • @johndoe Let’s meet later this evening for dinner
    • From johndoe: sure let’s eat a steak! (From twitter: check out the SteakHouse on 5th and 34)

I’m For It, The World Is Ready

I would not care receiving both these forms of advertising, if they are well integrated in the flow of my Twitter stream, and especially if they are so well targeted. I believe the semantics tools today are good enough to process meaning from a user’s short and simple under-140-characters sentences, since there is no hard contextual analysis to perform. And the realtime factor makes the targeting temporal-aware — they know what I need when I need it. Regardless of what payment model they choose (CPC, CPA, CPM), the targeting and delivery methods are the winners here.

There, I’ve contributed my part to the Twitter business model obsession.

Startups Are The Marines Of The Business World

I recently finished watching Generation Kill, a 7-episodes HBO mini series depicting the advancement of the Marines 1st Reconnaissance Battalion during the war in Iraq in 2003.

Without going into the many political, social and human aspects to the series, what struck me the most was the remarkable resemblance between the Marines activity in their world, to the startup activity in the business world. As I was watching the series, I felt there were 3 main themes I could relate to, and that were analogous to the unique day to day life of a startup company.

Observe Everything, Admire Nothing

While advancing through enemy territory, the Marines are ordered to pay attention to all details, but not to settle their eyes on any one point for too much time, because it can lead to distraction or numbness.

Same goes for a startup company which advances in the competitive market, and should be aware of all aspects of its activity, and yet have no time to go into research and development in fields that are not its core business (as a corporate might).

Marines Make Do

While the other army/navy/air force branches of the military have excellent supplies, Marines have to settle for the equipment they have, and manage to pull through using nothing more than what was readily available.

Same goes for startups, which as opposed to corporates, operate most of the time on a low budget and try to keep a low burn rate, and have to get by with what’s at hand and no more than that.

The Vision Is Clear, The Mission Is Constantly Changing

While the vision of the war is clear to the Marines, the mission is constantly changing. One day you storm an airfield, the other you police civilians in a city. Moreover, it seems that in military terms, there is nothing more agile than a bunch of troops mounted on light humvees.

Same goes for startups, which have a very clear business vision, but usually work in a constantly changing market which dictates a constantly changing mission. One day you develop a feature for your product, the other priorities dictate it’s business development time. And in the business world, no company is more agile than a startup made up of a bunch of entrepreneurs with a clear vision.

Well, stay frosty!

Widgetbox Missing Out: Blidgets Should Be Aimed At Developers, Not Users

Widgetbox is an amazing service with a great promise: You might have content that can be widgetized and distributed, but there are numerous formats your widget can be in, and tons of services which it can be distributed on. Widgetbox is a centralized place to handle all that is widget, and it connects your content with several distribution methods (to all major blogging platforms, to social networks like MySpace, Facebook and Bebo, and to personalized homepages like iGoogle and Netvibes, and the list goes on). On top of that, it also helps your content get viral distribution.

Sounds like widget heaven, however in reality it is far from perfect. As it seems from toying around with Widgetbox, their delivery is below their promise — sometimes because of limitations imposed on them by 3rd parties, but sometimes because of what seems like misunderstanding of developer’s needs (or at least my needs ;) ).

I set out to turn some RSS feeds, or some other API-available content, to be widgetized and distributed on social networks. I encountered two major issues that prevented me from succeeding.

The first issue is their support for distribution over MySpace and Facebook, or lack thereof. Widgets can be distributed on MySpace or Facebook only if they are flash widgets. If distributed on MySpace, outgoing links don’t work, and Widgetbox use some sort of weird workaround that makes the user copy and paste the link in a different browser tab (will you ever do it if a widget asks you to?). Moreover, it seems that there was an option to turn your widget to a Facebook App, but it has been down for the last 6 months.

The second issue is more important in my opinion, because it is entirely up to them and not imposed on them due to restrictions made by 3rd parties, and it reflects a flaw in their business perception. They have a great tool which is called a Blidget — a widget that takes an RSS feed and turns it into a slick flash widget showing the recent items in the feed. The main problem with it, is that it is aimed towards end users, and not towards developers. Say I have a web service with hundreds of thousands of users, each of them having his own RSS feed, and I want to enable them to get my branded widget with their feed in it with a click of a button — I can’t make use of Blidgets. Blidgets require the user to prepare them and brand them, there is no API for that which developers can use, nor is there anyway that I can prepare a branded Blidget, and pass the feed URL as a parameter, because a Blidget is made on a per-feed basis.

I consulted their support, that’s what they had to say:

It seems all you would have to do is get the RSS feed from them and make the widget yourself. You can put any brand or logo on the widget.

And when I said that I am looking for a scalable solution, not something that I have to manually do myself:

One link is not possible. You can have a link to Widgetbox.com on your site. Then you can list there RSS feed for them to copy and paste into widgetbox to create there blidget.

Which is unacceptable as well, since if they create the blidget, it’s not branded as I want it.

I think that Widgetbox is missing out here big time, at least in the Blidget case. Instead of leveraging the communities of existing web services and the innovation of developers (they try to do it with their other widget formats, I don’t understand why that’s not the case with Blidgets), they are turning to end users in search of virality. I believe that turning to developers and enabling them to use Blidgets, will increase the use cases and the virality of Blidgets. After all, getting a million users is harder than getting 10 developers, each with a tenth of a million users on his web service.

TechCrunch Cashing In on CrunchBase

TechCrunch just announced that they have a premium report of an analysis of 2008 according to data gathered on CrunchBase. The report is available for $149, and includes data about startup financing, products, trends and exits.

Two things strike me here.

First, CrunchBase is finally proving as an asset, with TechCrunch cashing in on its non stop data gathering. Whether or not this is moral is a point to argue about — after all, it is a wiki, most of the data is community driven. But in any case, the TechCrunch empire has another income stream, unrelated to the traditional media advertising revenue stream.

Second, we all know the downturn is here, but put visually through the graph of the number of founded startups per month:

From 170 to 20 in 1 year. Phew. But then again, this can also be seen in an optimistic perspective — the market is now less competitive for startups, and if you’ve got the funding and the business model, you might get through this survival of the fittest battle with a winner.

TVinci's Break

It’s always nice to hear about people you personally know who succeed in the world of hi-tech and venture capital. That is the case with the guys over at TVinci, who just secured $1.6M in funding from angels Zohar Gilon and Ron Tamir.

Although their blog is down (probably due to the massive techcrunch, vccafe and techaviv coverage), TVinci offers something which is usually overlooked on product development – a full blown user experience. With background in creative solutions development for UI at frido, the team that founded TVinci is all about user experience and user interface.

Sometimes a product succeeds because it is groundbreaking, a completely new idea or a phenomenon that appeals to a large target audience and is viral in its essence (did somebody say twitter?). But sometimes, it is enough to take something very basic, give it a different angle or a never-before added value,  and come out with a winner product.

And I think this is the case with TVinci. They take a very basic service, which is video consumption, and they turn it into a turnkey solution for the publisher on the one hand, and a full blown video experience for the consumer on the other hand. They’ve already done so on Reshet (an Israeli TV broadcaster) MTV Israel, MTV Poland and Orange Israel.

I am not fully aware of all competition in this space of turnkey video solutions for media organizations (qumu might be one), but TVinci sure looks like a very appealing product which maximizes the video consumption experience of the viewers and thus helps publishers retain and engage their customers more effectively.

I am not sure where they are going to direct this round of funding, but wherever they do, I am sure they can take their product sky high.

Congratulations to Ofer (and Moran)!