When we embarked on building an application that we thought everyone could use, was viral in nature, and that fit in with the trends in social and business collaboration, we had no idea how to market it on essentially a zero budget. We got advice from VC’s (venture capitalists) and former CEO’s that we would need to drive users to us by embracing open standards and by connecting with existing user communities. So we spent 2007 completing our features, fixing our bugs, honing our message, and wondering if our product “had legs.” We launched an alpha program with our closest friends and family members and were pleasantly surprised with how well we “got it” in building an easy to install, simple setup and “one-click-to-use” product. We then took a bold step in going public with the launch of our web site http://www.yakkle.com and with the general availability of a beta version of our product. Then the fun began! We started getting downloads, web hits, email, we even got included in a California company's newsletter even though we had no prior contact with them. Very cool.
We found a neat web site tool call Feedjit http://www.feedjit.com which tracks where web site hits are coming from. It uses Google maps to give a relative location and will track your last 100 hits. We decided to put it on our web site one day. Within 24 hours, we had our 100 hits and we were global. San Francisco, Boston, Chicago, Seattle, Canada, Rio, England, France, Germany, Sweden, even China, India and Taipei had found us. “Amazing” was all we could say.
Now a month has gone by and the viral nature of our product is taking hold. We were featured in a German web site write up on our product, we were featured in a French web site write up and someone took screen shots from our web site and wrote a “How to Use Yakkle” article. We continue to submit our product to various web sites to be listed as a free download or to have someone evaluate our product. We’ve sent pointers to our web site to Realtors, teachers, tutors, and so on.
With 2008 upon us, we want to provide some insight into what's next for Yakkle. Given the feedback we are getting, we are moving quickly into enhancing Yakkle with meeting recording and playback features, easy to setup collaboration sessions with invitations, and a feature rich IM portion with fonts, colors, and emoticons. We are also looking into tighter integration with Google including new email notification, offline chats, and shared status messages."
We don’t know where 2008 will take us, but if it is anything like the last month of 2007, our journey will be wild, vast, global, and unknown.
Discover Yakkle for yourself. Come along for the ride!
Saturday, December 29, 2007
Yakkle Goes Worldwide
Posted by The ZenViva Guys at 10:54 AM View Comments
Labels: Desktop Sharing, Instant Messaging, VoIP, Yakkle
Thursday, December 13, 2007
The Yakkle Difference
Imagine all the people who use instant messaging everyday. It’s a staggering number and it’s growing all the time. There’s literally millions of users online right now sending messages.
Now imagine if you had a product that could take a basic IM session and supercharge it. What do we mean by that? Say you are at the office and you are IMing with a colleague. What if you were one click away from connecting your voice to them to have a discussion and connecting your desktop to them to share an idea? What if you were another click away from bringing in a third or fourth person into the mix and having an instant conference call? Each of you now speaking with each other using crystal clear sound and each of you being able to share your desktop with anyone in the meeting.
Who could use Instant Collaboration?
• A real-estate agent wants to speak with his clients and show them house listings from his computer to theirs.
• A teacher wants to connect with her students for an extra tutoring session.
• A salesperson wants to present his product to customers all over the world.
• A customer support person that needs to connect with their customer and remotely fix a problem for them.
We call this instant collaboration and we think there is an untapped market for a cost effective chat, talk and desktop sharing product that does not require a central server to host these sessions.
Our company is ZenViva, our first product is Yakkle, and we welcome you to “share your ideas, your world, yourself.” http://www.yakkle.com
Posted by The ZenViva Guys at 6:50 AM View Comments
Labels: Desktop Sharing, Instant Collaboration, Instant Messaging, VoIP, Yakkle
Tuesday, December 11, 2007
Building Yakkle (Part 5: Object Implementation and Notification)
In our last discussion "Building Yakkle (Part 4)", we described some of Yakkle's distributed objects and touched on our development process. This post will cover object implementation and notification.
We could write a book ( http://www.amazon.com/o/ASIN/0201657937 ) on how to implement such things, but this is a blog. What we will do is talk at a high level on how we implemented our Voice object and how User objects are notified. It should be understood that the following discussion will be a bit techie, so non-programmers beware.
If you have experience writing traditional client/server or peer-to-peer applications, you'll understand that network sockets sooner or later get involved in the design. If your experienced in procedural programming ( http://wikipedia.org/wiki/Procedural_programming ), you've probably sent data over these sockets to be processed in subroutines ( http://en.wikipedia.org/wiki/Subroutine ). Well, in a distributed object world, your sockets and procedural functions do not exist.
In a distributed object world, you use objects to communicate between applications. Now in reality there are sockets and functions under the hood, but as a programmer, they are never seen nor part of your design. In an active Yakkle ( http://www.yakkle.com ) session, we create a Yakkle voice object per Yakkle user. When a user speaks, methods ( http://en.wikipedia.org/wiki/Method_(computer_science) ) are invoked on the voice object which stores the audio data. Once stored, all other users can access this data.
Distributed object method invocations work well for design patterns like voice. Where get methods can block and put methods can throttle. Very symmetric. However, there are design patterns where you want arbitrary object information, but do not want to continuously invoke methods to access it. Our Yakkle user object has such information.
The user object, for instance, has status that can change from “Available to Yakkle” to “Do not disturb”. Instead of continuously invoking methods to see if status has changed, the Yakkle application registers and listens for object change events. This way, the framework ( in our case MyOODB ), notifies the Yakkle application that the user object has changed ( Remember what your teacher said “An Event driven model is better than a polling model”. )
We hope you enjoyed a peek into our development process and the Yakkle architecture...
Posted by The ZenViva Guys at 6:26 PM View Comments
Labels: distributed objects, myOODB, object oriented design
Tuesday, December 4, 2007
Collaborating Locally
When we think of collaboration software, we think of IM (instant messaging) from our computer to someone else's wherever they are, which is usually at a different location than we are. But what if we could use collaboration software when we're in the same room with our co-workers? You may ask, "Why would I want to do that? I'm in the same room?" Well, we have all been in meetings where a topic is discussed. Usually it's a brainstorming session, or design review, or even a demo being given. We've been in those meetings where everyone brings their laptops to take notes as well.
In comes Yakkle. Now we can connect to everyone in the room and each participant can share their own desktop.
What does that mean? We might be the one with the design document, so we open it on our computer and share it to the group. Others might have supporting documents or marked up copies of the design document that they reviewed the day before. They can share their desktops as well. Now we hold our meeting. As the document is reviewed or ideas are discussed, we can capture them in real-time and everyone can see our edits instantly. If someone thinks we entered the concept or idea wrong, they can comment on it right then or better yet, give them control of our desktop to make the edit themselves. If someone else has some idea to chime in with, everyone in the meeting can jump to their desktop and see it. Imagine being able to capture everything being discussed in real-time and having our participants see the document come to life on their own computer. Rather than hand editing a hardcopy of the document, we don't leave the room until all the edits are made and everyone agrees with them. The design review is done AND there's no follow up review to be held to make sure the edits were done right. There's no need to.
So the meeting ends, but first we want to give everyone the latest copy of the document, so we use the built-in file sharing and push our document out to all the meeting participants. Yes, we could email it to them, but then they’d have to weed it out of their email, maybe they'll misplace it, maybe they'll say they never got it….
Now that's what I call a productive meeting!
Try this for yourself at http://www.yakkle.com
Oh, and while the meeting is going on, Yakkle will create a conference chat tab to allow a group chat, but will also let us send private messages to anyone in the meeting as well….
Posted by The ZenViva Guys at 7:32 PM View Comments
Labels: Desktop Sharing, Instant Collaboration, Yakkle



