Skip navigation

Product Polish

Posted by matt Sep 29, 2006

For me to really fall in love with an application, it's all about the little things. Not the major features that you might find in the product feature list, but all of the polish that makes an application a joy to use from day to day. We think a lot about this for Spark, so I wanted to highlight a few such polish items that have arrived with the 2.0.2 release.


The Ctrl-F Feature


[|Photo Sharing]If you have a huge contact list like I do, it can be a major pain to find someone that you want to chat with. Navigate to the right group, scan through the list of who's online, click. Instead, you can now type Ctrl-F in either the contact list or chat window. That will popup a "Find Users" widget with auto-complete. Start typing the name of the person you want to chat with and it presents you with choices. I find it to be a huge time saver, especially now that I have so many contacts with the gateways feature turned on.


Stale Chats


This one is technically not new for the 2.0.2 release (it's been around since 2.0.0). Still, it fits the "polish" theme and it's a feature that a lot of people probably aren't familiar with. If you're a typical IM user, you leave lots of chat tabs open. That can get unwieldy once there are too many. Worse, closing each chat tab can be a slow process since it takes time to figure out whether each conversation needs your continued attention or not. For Spark 2.0, we made this whole process a lot easier. Now, when a chat tab is inactive for a period of time (no messages sent or received), it will fade out slightly. That makes it easy to see which chats are "stale" and which are still active. Further, you can right click on any tab and close all stale chats. It's a quick way to clean up all your windows. Click the images below to get a better sense of how the feature works.


[|Photo Sharing] [|Photo Sharing]


Sorting in the Group Chat Browser


Some group chat servers such as host an enormous number of group chat rooms. That can make finding the right one a big pain. It's a simple change, but now you can sort the list of group chat rooms.


[|Photo Sharing]


Stay tuned -- we'll be adding lots more tweaks like these for future Spark releases.


We have a busy second week of October in San Francisco. At the beginning of the week, we'll be showcasing our new relationship with at Dreamforce, their huge Appexchange conference. Beginning that week, companies who use will be able to have our forums product tighly integrated within the experience. Businesses will be able to easily add support communities and have it work seamlessly with the case management system.


Also that week, Matt will be speaking at Office 2.0, a new conference focused on next-gen products and concepts in the workplace. Matt will be talking about how EIM is changing the way companies work. Please stop by and say hi if you'll be attending either event.



Tips for Surviving Interruptions

Posted by matt Sep 20, 2006

Sometimes it can feel tough to get any actual work done at the office in between meetings, the deluge of email, and people interrupting to ask questions. The work done by software engineers requires concentration over long periods of time. Any engineer knows what it's like to be "in the zone" -- where your surroundings melt away and you're able to crank on code highly efficiently. The bad news is that "the zone" is a delicate state of mind. A co-worker's annoying cell-phone ringtone, an Outlook email alert, or someone stopping by your desk will snap you right out of productivity. Joel (from Joel on software) estimates that it takes about 15 minutes to achieve full concentration after an interruption. Factor in a typical engineer's salary, and the dollars of lost productivity add up quickly. In fact, some estimates peg the cost of interruptions in the workplace at 588 billion dollars per year.


Tips for Surviving Interruptions

  • Realize you're part of the problem. Most people say "I hate being interrupted" but will turn to their co-worker anytime they have a quick question. By being respectful of others' time and minimizing the interruptions that you initiate, you'll help foster a culture in your workplace that will allow you to work more efficiently. Other ways to be a good citizen in the office include setting your cellphone to vibrate, listening to music with headphones instead of speakers (seems obvious?), and not laughing out loud at jokes only you can see.

  • Create an office environment that's quiet and that minimizes visual distractions. At Jive, we use system furniture with tall glass partitions. This keeps the office feeling light and airy, but helps cut down on noise. If your office is noisy and you can't do anything about it, try headphones.
    [588 billion dollars per year||Photo Sharing]

  • Use the best communication medium. Interrupting someone in person or by phone is the most intrusive. It forces the other person to focus their full attention on you. Everybody hates email and it just doesn't work for questions that need a quick answer. So, use instant messaging (IM). It's fast but also much less intrusive compared to other options. This is non-intuitive to some, who figure that instant messaging will only increase interruptions. We've found that IM may slightly increase the raw number of interruptions, but answering an IM is much better than having to answer a question in person since you can usually do so with only partial attention and at your own speed. IM's are also typically short and to the point (unlike email). IM is especially effective when combined with good presence management (more on that below).

  • Optimize your time. Do you really need to attend all those meetings? A good rule of thumb -- if the meeting can be held without you, you shouldn't be there. At Jive, we try to schedule all meetings that include engineers for the mornings (close to lunch time) so that afternoons are left open for focused work. We also make meetings as short as possible and have very few regularly scheduled meetings (instead only meeting when necessary). It's also helpful to block out time to get work done. For example, schedule an hour or more in your calendar to work on a tough problem, then politely communicate to your co-workers that you're heads-down.

  • Use on-line presence information. Communicating to co-workers when it's ok and not ok to be interrupted is critical. We've integrated our IM presence with our phone system using Asterisk-IM, so that we can see whenever somebody is on the phone. We've  also built a culture where people are reluctant to interrupt when they see someone's presence set to "Do Not Disturb" (DND). Although most IM clients will automatically toggle between "available" and "away" based on activity on your computer, be diligent about setting more complete presence information such as "Running errands, back at 2:30 PM".

The tips above include both technology and non-technology fixes to interruptions. Both are required to really mitigate the problem and there's no silver bullet. However, I'm a big believer that presence and instant messaging can make a big impact. What if your computer noticed you working in your IDE (programming environment) and automatically helped protect against interruptions by setting your presence and supressing non-urgent requests until you were finished? We're working on lots of interesting ideas like these.


How did I manage to actually get this blog post written? Headphones and the DND presence setting in Spark, of course!



Spark 2.0 Released

Posted by matt Sep 11, 2006

I've previously announced Spark becoming Open Source and its source code appearing in SVN. Now, the first official Open Source release of Spark (version 2.0) is available. A lot of great stuff got packed into 2.0, including support for translations, URI mappings, gateways (for legacy IM networks), and numerous UI and performance improvements.


The release is the culmination of a big shift in our strategy around business IM. Organizations that deploy IM don't think of the server and client as two totally separate applications. Instead, they're looking for an IM solution where both the client and server work together seamlessly to offer the best possible user experience. Our goal for Spark is ambitious but simple -- to create the best IM client for business. Why do most companies deploy Microsoft's email system? It's because their users prefer Outlook. When users demand Spark instead of Office Communicator, we'll know we're accomplishing our goal.


One aspect of the Spark story that I find particularly interesting is that we've built it using Java. It's been common knowledge for years that using Java for client-side applications "sucks". In fact, I personally remember having lots of worries about the platform as we started Spark development two years ago. Could we make it feel like a native application and get good performance? Well, times change and the common wisdom about client-side Java needs some updating. We've made Spark feel like a Windows app on Windows, a Mac app on OS X, etc. It's also speedy and we've even made some good strides with memory consumption. Memory usage is going to continue to be an issue for some, but computers keep shipping with more and more RAM and the Java platform keeps making big strides. Why do we use Java in Spark? We get a huge community of developers, fairly seamless cross-platform support, and great development productivity. One thing I'm excited about is the upcoming Java 6 release. It includes loads of improvements for client-side Java and will be a great platform for Spark.


Of course, the myriad other XMPP clients will continue to work great with Wildfire. Choice is a great thing about open standards. We hope you find Spark 2.0 to be a worthy option.

The Playa Community

Posted by sam_lawrence Sep 8, 2006

This is my first week back in the office after attending my first Burning Man Festival.  My wife and I found it to be a powerful and inspiring experience. It's jaw-dropping to witness the amount of boundless engineering and creativity that people pour massive amounts of energy, time and money bringing to life for a week's time. The desert rockets from barren to the third most populous Nevada city, instantaneously. This year, 40,000 people came with no money or agenda to gather in the ancient lake bed.


It was interesting that when stripped of routine daily responsibility, how people assumed natural roles, like leaders, followers, chefs, or handimen. Even more impactful was how perfectly everything worked with 40,000 people self-managing themselves. Sorta like a real-life tag clouds. The experience did reinforce for me that communities can work amazingly well when given an open, clear space, full authority to manage themselves and when they have a powerful way to reward each other.


On another note, it was surprising to me to read the article that Dave sent to me about the Google guys using Burning Man as a recruiting event. At Burning Man everyone abandons their work ego. No one wants to talk or think about their career. Everyone is equal. For example, I learned later that one guy I drank coffee with had won three Academy Awards including work on Star Wars but when we talked he just shared which art he liked so far. I think it was the massive sculpture of the man on his hands and knees with gasoline pouring from his eyes into a pool of flame. That is, if I remember correctly.



Jive Forums 5.0.5 Released

Posted by bill Sep 1, 2006

We released version 5.0.5 of Jive Forums this week. Typically, minor releases like this are bug fixes only  (speaking of, here's the changelog), but this time we couldn't resist putting in a new feature. Forums now features an advanced email integration which makes it possible to reply to watch notifications by email. Simply read the watch update you get, type a reply and send it. A few seconds later your message will be posted to the forums. We've implemented it in a pretty secure way so we can verify that an email coming from "you" can match up with your user account in the forums. This has been a heavily requested feature so we're pretty excited to release it.


Also new this release are 4 new translations: German, Italian, Spanish and Dutch.


What else is new? We've got a swanky new product tour (check out the entry about email watch replies).


And finally, KB 1.7.5 and a new build of the Integrated server are out as well.


Filter Blog

By date: By tag: