Dimdim downloads from sourceforge.net

Typically around 200-300 downloads of the Dimdim web meeting server happen on a daily basis from the sourceforge.net link. Yesterday (21 Jan 2007) that number jumped to 2313 and we were all pretty perplexed here at Dimdim. Today it has risen to even more: 2566 (as of now). We have requested the sourceforge.net folks for some clarification, if possible. So should we all party all night long or should we be worried?

Year end reminiscences

Generally at the end of each year, I write an email to some of my friends telling them how my year went: the ups and lows and ask about their experiences in the year past. This year I thought I will write a blog post on this topic.

The major theme for me this year has been my work in Dimdim. When I was thinking about joining a startup many fears swelled (DD has written about this) but there was an air of excitement, of doing something new and interesting. The expectation was to create something truly usable (and change the world  :-))

But this was tempered by the fear of loosing a stable and safe career. Especially in India, where the software profession is respected, society does not understand people who leave their existing job in a truly multi-national software company for a career in a startup company. This move of mine was viewed as stupid (at best) and childish (at worst) by many. The name “Dimdim” also didn’t inspire much confidence, it was not Acme Software Solutions or InfoTel Software Services :-).

I herded my trembling thoughts together and started work in Dimdim since I saw the possibility of fulfilling a need. But over time, with my fellow-dimdimers I have grown in confidence. The response at the OSCON Demo in July where Dimdim was first unveiled showed us that we were on the right track. Then the Open Source Alpha Release in September and the stunning response (Tens of thousands of downloads in less than 100 days) we have got from the community showed us that people are waiting for a product like Dimdim. The forums posts and interaction with the Dimdim community showed us the things we are doing right and the things we have to correct. The amount of time and energy that the members of the community have put into building Dimdim is truly humbling. People have not only suggested features but also gone ahead and implemented much-needed features (LDAP integration). We have found many bugs through community reporting and Dimdim testing has been tested by the community on many platforms which were not part of the original plan.      

Right now, we are working towards the early 2007, hosted Beta release. I am sure it will not be a flawless rollout, but I am also equally sure all of you will point and prod us into correcting the mistakes that happen and ensure that Dimdim truly becomes the world’s web meeting.

Happy New Year everybody !

Decisions by community, not by committee

We feel, in software, user experience and user talk fulfillment is more important than feature set expansion. A software product which fulfills the needs and expectations of the user is better than a product which is more feature rich but difficult to use. This has been the core of Dimdim’s product management philosophy and it is this principle which guides us.

Features which are not central to the core functionality set of Desktop/Application/Presentation sharing and which will suck out our scarce resources are not given priority unless our user communities ask for them. This means that our engineers can focus on making the core features easier to use and the product in general will be more stable. This underlines the philosophy we are following for our Beta release slated for release around January 2007.

New features in this release will include two way Audio and Video along with a much more scalable backend server. The UI (User Interface) is also being completely redesigned to ensure optimum usage of screen real estate. More features like collaborative whiteboard and recording and archiving will follow. To achieve this, we may have to sacrifice the "Remote Control" feature, where the presenter can control the Attendee's computer. This feature will follow in later versions of the product.

Of course, this kind of development where the stress is on user experience means that the focus should be on a task oriented fulfillment of user expectations. What I mean by this is, adding features only for the sake of adding features is not the way. Features will be added if they are required to complete the user experience as expected. For example, look at this ridiculous situation of Windows Vista presenting the user with Nine (yeah, that’s right) different options when a user wants to shut down the machine. Now, as reported by a developer who has worked on this particular feature, such a situation arises because decisions are not made with user intention (and expectation) in mind but by a group (in this case 43) people who take decisions depending on requirements/limitations defined by other groups of developers working on related code.

In Dimdim too we had a situation where many options could be set by the Presenter of a web meeting and the straight forward way of doing this would be to present all these options upfront before the start of the meeting. But this would have resulted in a situation where by even before the meeting begins, the presenter is confronted with a long list of options which have to be defined. This is not desirable user experience. So we took a call that expected values of parameters (like all participants will be able to chat with each other by default while they will not be able to start their video feeds by default) would be already defined when the meeting starts while at the same time giving the flexibility to change these values at any time.

Of course, Dimdim does not even have 43 employees! That's where our user community helps us ensure that all of our product designs are community decisions and not "committee decisions". So when you receive an email invite to participate in our hosted Beta, please let us know what you think about Dimdim and how we can make it better. 

Ps: Did I mention that you can register for the free hosted invite from our website at www.dimdim.com 

Champions of Dimdim

As some (ok ok, a couple) of you would have noticed there have been no posts on this blog for quite sometime. I could say that this situation arose because we were all busy developing Dimdim into the most useable and scalable web meeting software but the truth is not so simple. We are so swamped with work (even though it does not feel like “work” with its normal connotations of forced slavery and hard labor :-)) that I go home twice in a week to replenish my “change of clothes” stock. Rest of the days I eat, sleep and wake up in office.

Yeah, in the last few weeks Dimdim has indeed grown. Many bugs have been squashed and features added. Now Attendees can join a Dimdim web meeting from any Operating System (OS) platform and browser while Presenters can use both Internet Explorer and FireFox to start meetings on Windows OS. Of course the Dimdim web meeting server has also been ported to Linux in addition to Windows. More features like two-way audio & video and recording & archiving will also be released soon.

Many early adopters have also started using Dimdim including two instances of Dimdim being used in a conference setting. Of course, in these initiatives it is the Champions of Dimdim, people like Julian Ridden (contributor and evangelist in the Moodle community) and Moira Hunter (who combines the best of technology and language teaching in Europe) who have taken the initiative. In the Sydney Moodle Conference organized by Julian, Dimdim was used in two modes: Kiosk mode with roving Presenters and Presentation mode with numerous Attendees. In the Weblearning with the Human touch event organized by Moira there were more than five interactive Dimdim workshops. Through these events many early adopters of technology used Dimdim and gave us invaluable feedback and we got a much better idea of how Dimdim scales across many users and multiple simultaneous rooms. Universally users liked the browser based working of Dimdim which removes the need for installation and configuration of the product. Also almost everybody felt the need for two-way audio and as soon as we got this feedback our engineering team started work on two-way Audio & Video so that attendees can also talk back during the web meeting. I want to express my heart felt gratitude to Julian and Moira for being patient and working with Dimdim to make both the events much more interactive to the attendees. 

Ps: A big thanks to the readers who pointed out through emails the validation of the point expressed in this post of mine due to the 1.65B$ acquisition of YouTube by Google.

Communication Needs & the Community

Peter is a 79 year old widower who lives alone in UK. A lover of motorcycles, he likes to reminiscence about his experiences in the Second World War and how he took up art as a hobby after retirement.

Why am I talking about Peter? Because he has already garnered the maximum number of subscribers in YouTube (YouTube ID: geriatric1927) and each of his videos has got tens of thousands of views in just two weeks. His videos have started a passionate movement within the community with many users posting reply videos and some of them are pretty introspective. They talk about the basic human yearning to connect with others and how sites like YouTube help them in this. The benefit YouTube has garnered is immense and when the Web2.0 hype eventually bursts and the dust settles, I expect it to be one of the few startups left standing because YouTube fulfills the innate desire to communicate (even if it does this in an asynchronous manner) and imparts its users a sense of belonging in a community in a user-friendly way. And this is precisely what Dimdim also aims to achieve in a synchronous way with immediate results for all the parties in a conversation.

User led product development

In my previous post I wrote in general about how we take most of our decisions based on input from the community and in this post I am going to detail that with examples and practices that make user led product development possible.

Initially as we brainstormed (or is it bullshitted) within the company regarding the target space for an open source web conference product. E-learning space was one which emerged due to its cost-sensitive nature at the same time being pretty demanding in terms of features and scalability. So I contacted the developers and lead users of a few top open source e-learning products and immediately we started the process of learning from their experience. The founder of one such product helped us so much that we turned to him to get feedback every time we felt we had taken a significant step. This resulted in building trust between us and he even recommended other lead users and developers in that particular community who might be interested in Dimdim. This helped us immensely as each person on that list was very knowledgeable about the needs of users and ways to fulfill the needs. We even found a developer who wanted to integrate Dimdim with the e-learning product so that he could use it in an upcoming conference. This was god-sent manna for us as such a move would expose our product to the wider community leading to much needed feedback from early adopters. Through word of mouth we also found other value added resellers and solutions providers of the e-learning products who were interested in knowing about Dimdim.

Well enough of this self-congratulatory stuff, let me now talk a bit about what I feel are necessary attributes to ensure positive interaction between a company and the wider open source community:

  • By default most people have more good in them than bad. No I am not launching a new religion or cult but what I mean to say is: most people want to help a positive effort even if it has no direct bearing on them.
  • Respect the users by being genuine; don’t tell lies, ideally under promise and over deliver. They are as intelligent if not more, than you and can easily see though a gimmick or sleight of hand. When we gave the first demo to a potential user I started out by saying that it was pre-alpha build with potential bugs and it didn’t even have the main features he wanted. He thanked me for being polite enough to say that upfront and when some bugs were found out, he understood the situation enough to have confidence in us to go forward with the process.
  • Talk and more importantly, listen. That way you will not only know the problems and issues encountered by users but also most probably the users themselves will give the solution. For example, when we talked to a user of an established web conferencing product the main points which came out were: Slow to respond, Needs software to be installed on the attendee side even if the attendee does not participate actively but is more of a viewer and the need for integrated audio instead of calling in through a separate phone line. So solving these issues became part of our core features of our product.

I feel these principles are true for any interaction: be they between a company and a community or between two individuals. Now that I have established that, did I mention I am an uncommitted bachelor looking out for a suitable female companion? :)

Dimdim: A Users' Product

My name is Sundar and I am going to use this blog to talk about the stuff I do and my experiences while working in Dimdim.

Initially when we decided to find out if there was a market for a web conferencing tool, what did people need and more importantly at what price, we didn't commission a survey or study, we just asked around. This was very different from the prevailing methodology in other (albeit bigger) companies where there was a formal process of engaging a consultant to study the needs of potential customer specific focus groups or reading white papers etc. We just reached out to the community of people whom we thought would be interested in a web conferencing product. This included users of other web conferencing products as well as developers and users of products where we felt a web conferencing tool would add value (for example, in an e-learning product). I was not sure about the kind of response we would get. Maybe our uninvited emails would be treated as spam or worse somebody might laugh away our seemingly childish attempts at collecting requirements.
The response was unanimously positive and we didn't receive even one negative response in the initial 30-40 people we tried to contact. Of course some (less than 5 people) did not respond. This might be due to spam filters, time pressure or other reasons. But nobody responded in the negative and everyone of our initial contact base gave detailed responses what they would and would not like to see in a web conf product. Of course a majority of our initial contacts were either passionate users of complementary products or were developers themselves of similar products. We got responses saying things which are not obvious like saying that a particular feature was not very important (like video) while a complementary feature (audio) was important. This kind of visibility into a user's mind is nearly impossible if we had not reached out and our immersive user environment, in which all product-related decisions are taken, paid off.
After a couple of iterations we had a minimum feature set without which we felt our product would be incomplete even in the most basic sense. Of course this way of collecting requirements goes totally against the 37signals way (link) but it works for us. At this stage in keeping with our policy of open access we decided to go the open source route and registered to have our product inaugurated in OSCON. We felt going open source had two advantages: Giving the best to the users through the usage of mature open source components instead of re-inventing the wheel and secondly it is easier in the open source world to involve users and other developers while the product is being developed.

At every point of our product lifecycle when we had to make a decision regarding a feature or usability issue we went back to our initial decision of being totally user driven and would resolve the question not through a hierarchical decision making process from inside the company but through user suggestions and observations through user trials. Another result of this way of working is that all the individuals and communities we worked with, are now part of the Dimdim team in the truest sense of the word and spread the good word about Dimdim whenever appropriate and already we are seeing the effects of that.

Since I am a first time entrepreneur my posts might reflect things like immaturity and fear of the unknown in the startup world. I think this blog should become more like a sounding board of our thoughts with input from interested people and would greatly appreciate what you think about the posts on this blog.