We are participating at the Office 2.0 conference this week (starting today) in SFO and this is going to be one exciting week.
We know it’s been a long time since you noticed any update from Zoho Mail. We are working very hard to add many great features and enhance Zoho Mail’s core functionalities including performance, security and scalability. Since most of the work is being done at the back-end, and not much on the design/UI, as an end-user you get very less to notice.
As a step towards improving the overall functionalities of Zoho Mail, we have scheduled a major server-side update on Saturday, 8th September 2007 at 10.30 PM PDT. This upgrade is expected to take about 2 hours. Hence, access to Zoho Mail will not be available during this period.
Our sincere apologies for the inconvenience.
Recently, Zoho Projects got closely integrated with Zoho Writer, Sheet & Show. Extending this integration further, you can now create from within Zoho Projects a ‘New Document’ or a ‘New Spreadsheet’ using Zoho Writer and Sheet respectively.
And in Zoho Projects’ “Forums”, you can now embed <iframe> and <object> HTML tags. Makes it easier for embedding a spreadsheet from Zoho Sheet or videos from YouTube.
Test drive the new features in Zoho Projects and do let us know your feedback.
That is a question we often get. Particularly considering our background at AdventNet, where we offer more than 60 software products you can download, this is a very interesting question. About 2 years ago, we seriously considered this option. In fact, both Zoho CRM and Zoho Virtual Office (which later got renamed to Zoho Mail) were offered as downloadable products for a period. But we discontinued the product to focus on the web service – thereby hangs a tale.
To cut the story short, the answer to that question is “We would love to offer a product, but sorry we can’t”. I don’t say that lightly, knowing how AdventNet makes its living. Zoho is approaching its second anniversary, and we have accumulated considerable experience now in providing web services. We also have a 11+ year experience in shipping and supporting software products. It turns out these two are quite different animals. Trying to do both at the same time is a mistake – and having gone through that a couple of times, we are in no hurry to repeat it.
First there are the obvious issues everyone knows about: a software product means versions, patches, upgrades and so on. Then there are platform dependencies – right about now, many AdventNet products are getting support questions on Windows Vista, which we haven’t officially supported in every product. Compared to the combinatorial possibilities inherent in products, web services are a piece of cake. In this post, I want to highlight some not so obvious differences.
When we write a product, we pay attention to issues like download size, how much CPU/RAM does it take to run, compatibility with other software that could be running on the user’s machine and so on. We know that we cannot assume that our product would be the only one running on a machine, so we have to play nice. We have to assume a certain minimal configuration, which cannot be too large. For example, assuming that a user would have 4 GB of RAM minimum could be disastrous. But in web service code, on the server side specifically (where much of the code resides), we can and should assume that an entire server is available for that particular service. There is no prize to be had for playing nice on the server side. And we can test the server code in just the one configuration – and within reason, that configuration is in our control. So if a minimum of 16 GB RAM is needed, well, 16 GM RAM it is. In fact, it is stronger than that. It pays to write server code assuming and optimizing for a lot of resources. In memory caching of objects is an example of such an optimization.
N > 1
A second non-obvious difference is what Joe Gregorio has eloquently called N > 1. In writing a product, you assume that it will run on one computer system. Even if a product is capable of running in a distributed fashion, a default mode where it runs on one system is essential – otherwise it would massively inconvenience users who want to test the product. With a web service, it is actually counter-productive to make server code run on one system. We can make all kinds of optimizations, if we can assume multiple servers would be available. Just to give one example, we can run non-user facing servers “hot” all the time (at permanently high CPU utilization), while keeping user-facing servers “cool”. This extra degree of freedom makes you write code differently.
Service Reliability != Component Reliability
This is an interesting one and a corollary to N > 1: when you ship a product, your product is only as reliable as its least reliable module or component. If you have a slow memory-leak in one rarely accessed module, it will still impact the reliability of the whole system. In a web service, you can “handle” that kind of problem differently – simply restart that component every so often, before it has a chance to leak any memory! That may sound weird to anyone coming from a traditional software product background, sometimes periodic restart may be the best solution. You depend on the fact that more than one instance of that module is available, and load can be moved to other instances when one instance is restarted. So the entire service is available, but its components periodically become unavailable, intentionally.
In theory, it might be possible to take these into account all these in designing the code. A future operating system or perhaps more appropriately, a middleware stack could address these differences, and self-configure itself based on whether it is running a product or a service. We are quite far from that goal today.
Now, a note on Zoho Mail. The reason it got delayed was it fell victim to the product vs service distinction. We are proud of our Zoho Virtual Office product – it packed a lot of functionality in a compact download. But alas, that focus on product also made the web service difficult to optimize for. We could make serious progress on the web service, only after we decided to discontinue the product (my sincere apologies to customers we disappointed with that decision) and focus our energies full time on the service.
It was 2004, and I remember that dreamy and misty morning in January. I was walking along Harvard Square, bundled up against the biting cold. I saw a young man, who looked about half my age, walking in the opposite direction. As he approached, he stopped and asked “Hey, your face seems real familiar, have we met before?”
I asked him “Have you been to Princeton?”
“Yeah, like a year ago, when I was checking out colleges.”
I said “OK, I was a grad student in Princeton in early 90′s, and I became quite famous for writing the most boring PhD thesis ever. You may remember my face from one of those year books at Princeton”.
That very moment, his eyes lit up, and he screamed “Yes, YES, OMIGOD, Face on the book, FACE BOOK, I Got It, Now I Really Got It, That’s what I am going to do, Facebook. Thank you, Thank you, Thank you, I LOVE YOU!”
He gave me a bear hug that nearly choked me, and before I could recover my poise and ask him anything, he just blasted off. I shouted after him, “Really, I am serious, I had the distinction of producing the most boring PhD ever …” but he was gone. That was the last I saw him. Until now.
When I saw the photo of Mark Zuckerberg recently, that little incident in Harvard Square came flooding back. It was a staggering realization: the whole concept of Facebook must have come to him at that brief moment we crossed each other in Harvard Square that morning. I thought to myself “Yeah, genius, so what are you going to do about that now?” To be perfectly honest, I felt a little cheated. OK, I felt really cheated. I mean, he gave me that bear hug that nearly choked me to death, and never even bothered to give me any credit, for my idea, my very own original idea, that gave him that inspiration.
So naturally I went to my lawyer, because I remember being told that is the first thing you are supposed to do in these situations. You know, like, billions could be at stake here.
He listened to my story intently, and started explaining the legal situation, in that measured, precisely crafted manner that I had come to associate with him: “Clearly you brought the two distinct ideas “FACE” and “BOOK” together in one sentence, on which the whole Facebook foundation rests, and which Mark Zuckerberg took from you, as proved by the reaction he had when the idea was transmitted to him. In legal terms, what you had was a THOUGHT-ent, also known as a thought-patent, which are considered legally equivalent to patents.”
I was getting pretty excited by now, “So what do we do now?”
The lawyer explained “Listen, the first thing we will do is to establish priority for this thougtent for you. The best place to do that is the federal court at Sleepy Valley, Idaho, where thougtents get granted quickly and painlessly. This can be done any time, because under US law, it is the first to think the thought that counts, not the first to file. Then we will start the legal process, starting with a Cease & Desist, also known as the love letter.”
“But Mark and team wrote all the code, so won’t they try to minimize my original contribution?” I protested.
“That is immaterial under US thougtent law. Anyone could write the code, it is having the thought that counts. You are the legitimate and rightful holder of one of the most important thougtents on the internet today. I would be really happy to help you get you what is rightfully yours.”
With that I thanked my lawyer and came out. The air smelled sweet outside – it felt great to be alive in this wonderful nation, the greatest on earth. Thank God for freedom and property rights, America.
Sridhar got interviewed by Ashish of pluGGd.in. From the interview :
[Ashish] Building a competitive engineering workforce is a huge challenge in India – especially for product companies. Please share some of your experiences/insights on the same.
[Sridhar] We have been fortunate that we started out as a product company in 1996 and stayed the course. We built a culture of creating a product, selling it to customers, which is a lot tougher than building the product in the first place, supporting customers and so on. Creating that culture is what I regard as the most important first step.
It also helps that we don’t put that much weight on paper credentials – the kind of college a person attended, their academic performance and so on. We have found that most of that is not very useful in predicting job performance. By ignoring such conventional metrics, we truly broaden the pool of people we draw our team from.
Of course, the Indian IT market is hot, and anyone with experience has a multitude of opportunities to choose from. We are fortunate in that our people, by and large, choose to stay in AdventNet/Zoho, because they like the challenge here, and they like the culture of the company. Without that team and the culture, we couldn’t have come as far as we have come.
[Ashish] Your tips to entrepreneurs
[Sridhar] It helps to have passion. It helps to keep in mind that there is no template to succeed – there are so many paths leading to success, and so many paths that result in a dead-end too, and nobody can tell you which is which in advance. Each person has to find their path, tuned to their inner nature and self. Like a grandmaster, it helps to study past chess games, while keeping in mind that each game is likely to be unique, so often the only way to know the outcome is to actually play out the game.
Ashish had earlier interviewed Raju.
PC Magazine has released its Top 100 Undiscovered Web Sites (hat tip – Mashable. Thanks, Pete!). The list consists of their “picks for the top new or under-the-radar sites of 2007. You may not know many of the sites on this list, but you should” and Zoho’s part of it.
Blog Online University Lowdown in its post titled “Top 20 Facebook Apps for Entrepreneurs” lists Zoho prominently at number 2. And Pete Prestipino at Website Magazine writes in the post, “Zoho: Office Suite Game Changer“,
I’ve been meaning to write about my experience with Zoho, the increasingly popular web office suite for quite some time, but each and every time I start, they seem to roll out either another application or feature which brings me back to phase one. As such, let’s look at the office suite products provided by Zoho right now because more than anyone else they are a real game changer and if I wait any longer they will roll out another service and I’ll have to start new all over again.
All Zoho applications are web-native, meaning no client-side software is required (no download). All you need is a browser and an Internet connection (perfect for those who are always on the road). It’s also a real boon to those needing some level of collaboration on the documents or projects they are working on.
We are using Zoho Wiki for the Zoho CRM Help Documentation. So, when you click on the Help link, you are actually directed to http://zohocrm.wiki.zoho.com.
The Wiki-approach helps achieve collaborative editing. The knowledge of the masses is easier to collate and aggregate with this method. So, even you can edit the Wiki document and add/edit to it. There may be times when you would like to share how to achieve a particular implementation. Then, go ahead, edit the wiki! This will enable others to grow with you too as others benefit from your experience. This makes the entire experience with the product more wholesome.
We plan to enable the users to register for Zoho CRM right from the Zoho Wiki pages too! Gopal is working on it and we hope to have that feature integrated by EOD today.