Wednesday, December 31, 2008

Treat groups as sub-projects for a better structure

As mentioned in this post about organizing projects, a group may be considered as a project of its own, but still part of your existing project. Groups are a convenient way of organizing your data and using them as mini-projects is just one way of how you may use them to boost your productivity.

Let's take the example of a catering company who has a few regular customers, one being a company named Greedy Consumer (yeah, I know, clever name). The catering company takes care of their customers' orders using a project named "Food delivery".

Since they handle a lot of data for the Greedy Consumer, as recipes, messages and milestones for when the customer needs food delivered, they create a group named "Greedy Consumer" that holds all these objects.

It's easy to navigate inside this group, browsing only through data related to Greedy Consumer, because when a group is selected in one of the pages, the selection is persistent. For instance, if on the tasks page they select the group "Greedy Consumer", subsequently selecting the milestones page, it will show the milestones for this group.

This is just a hint on how you may use a feature in Teamness that I wanted to bring along with our sincere wishes of success with your projects in 2009, hopefully managed with Teamness.

Happy New Year!

Thursday, December 25, 2008

Teamness is open during Christmas

"Stores open on Christmas day" is one of the hottest search terms in Google trends these days.

Teamness is open for business during Christmas, pointing out another advantage of a SaaS tool: high availability, even during the holidays.

Image by Balakov

Christmas started nicely and warm for me, partly because I broke down the complex administrative tasks during this time as described here.

I wanted to write this short post during a break switching from home made sausages to Christmas cookies to remind you that you may use Teamness as your data bucket for these holidays period chores, following the Getting Things Done principles.

Here are some hints:
  • Create groups for different type of activities in your project, such as "Holiday meals".
  • Invite your family members in your projects and distribute the chores.
  • Put your notes in the messages area, inside the groups you created above.
  • Use milestones as reminders and attach tasks to them.
  • Upload files to keep them together in your GTD pool, arranged by groups.
  • Star objects that need your immediate attention.
You may access your data bucket from anywhere with an internet connection, without the need to synchronize it between computers. You can even print or export everything.

Merry Christmas, folks!

Friday, December 19, 2008

Using Teamness to sell flower pots

A friend of mine wants to start a business selling flower pots and she asked me how Teamness may be of help.

I came up with a few questions to clarify her needs and I suggested some ways on how to deal with them in Teamness.

Image by cwalker71

How do you intend to sell the pots, online or in classical shops?

I would first like to start on the web, with an online store. Then I intend to collaborate with existing shops, both virtual and "physical", like flower shops, design houses.

The web site will evolve in a project of its own, having a high activity in the requirements phase, development and testing and at a slower pace afterwards, in the maintenance period. So I suggested separating its administration in a separate project called Flower pots website.

The rest of procedures of the startup can be put in a separate project called Flower pots. The name can be changed at any time, but we don't append startup or something similar, since it's highly probable that we'll use this project to track the whole business life span afterward.

What are the initial issues for this business?
  • Perform an analysis of the competition and try to identify niches, finding missing details, like alternative materials for the pots.
  • Build the requirements for a basic e-commerce website. Once having the requirements, I want to contact a few companies that could help with the whole infrastructure (hosting, server, web application etc) so I can move on to the next step.
  • Discuss with potential partners. I think it's easier to not be alone in this journey.
  • Find storage space for the pots and establish initial stock of products.
  • Contact suppliers and discuss the conditions.
  • Contact delivery companies and discuss the conditions.
  • Calculate the initial amount to be invested.
  • Micro-test the product using Google AdWords.
  • Buy ads in related web and paper magazines, like gardening or blogs about flowers.
Every point in this list is a mini-project of its own, therefore I suggested defining milestones for each.

Breaking down these points into sub-tasks offers a clear vision on the roadmap for each of them.

When she has to Perform an analysis of the competition, she needs to know which competitors to follow, hence the first task: Search on Internet and in the gardening magazines and identify 5 top flower pots resellers.

Suddenly, this rather ambiguous job of analyzing the competition has a starting point. List the type of pots they're selling (material, size, model etc) and the prices, could be the subsequent task.

The result of the analysis above goes into separate messages: List of competitors, Possible niches for flower pots, which also lead to further steps in terms of milestone, like Contact 3 flower shops as a client and ask them why they're not selling a certain type of pot.

Who's going to be involved in this and what are the roles?

For starters, me, then my partner and afterward, an accountant who will take care of the legal finance issues.

My partner will take care of the administrative issues, like finding storage space, dealing with the company building the website and the delivery company.

I will be discussing and making the contracts with the suppliers; I'll design the first set of pots and take care of the advertisements. I also intend to outsource the whole process behind the website, including the hosting and the setup.

The partner is not known at this time, so he/she will get an invitation in both the website project and the administrative one at a later time.

The accountant can be welcome in a separate project, dealing with financial data, since it's not necessary to be involved in all aspects of the business, like brainstorming about the types of pots.

Creating more granular projects for different types of activities offers a clearer way of administrating the work done. People from the company involved in the website work don't need to know the data the accountant works with, so separating their work is more helpful in getting a good grasp on each part.

Also, once a project is completed, it can be archived, leaving more room for active ones.

Monday, December 15, 2008

Break down complex tasks with milestones

Is there any task in your project that seems un-doable? A task that causes you repugnance and makes you pass over it all the time when considering your next action? As Merlin instructs, break it down.

Sometimes what we think to be a task is actually hiding a sequence of things that need to be done. Drilling down and revealing this sequence is an incentive to get going with the work.

With Teamness, this can be easily achieved with a milestone. Make a milestone out of that task and tie a list of sub-tasks to it. Even more, by using messages you can store more information and brainstorm with your colleagues.

Let's consider an example of a couple, John and Jenny, who decided to throw a Christmas party for their family. A part of this project is the task of preparing the food.

They made a task called "Think about the food" which got assigned to John, since he's a better cook, about 2 weeks ago when they announced they're going to host the party this year.

But the task didn't seem appealing to him. Only the thought that he has to think about preparing food for around 12 persons made John scan quickly over this entry in the tasks list.

Image by Aim and shoot!

The time was getting short, so John had to stop and evaluate what he needs to do. He realized that the action of thinking about the food, as was first noted in the task, is in fact a list of actions.

He made a milestone called "Planning the meal" and assigned it to both him and Jenny. The due date for the milestone: December 23. By then, they have to have everything sorted out.

"Make the list of guests", "List their culinary preferences", "Create a list of 6 dishes to prepare", "For each dish build a list of ingredients", "Make a cost estimate for the groceries", "Prepare a list of drinks", "Select wines according to the dishes" were all tasks for "Planning the meal". John distributed them to him and to Jenny and tied every one of them to the milestone he just created.

Image by abbyladybug

He spent some time on the web to find a few pages with hints for the above tasks and put them in separate messages: "Blog posts with Christmas dinner ideas", "Recipes for the Christmas", "Red wines" and "Christmas deserts". He also attached the messages to the milestone.

By creating a small mini-project out of the tedious task from the beginning, John made it easy to grasp the actions needed to complete this chore.

Creating a milestone offers a couple of productivity benefits:
  • tying a list of sub-tasks to the milestone you actually build a list of actionable things to do
  • using messages you can keep a lot of information and brainstorm on it with your colleagues
  • having a due date for the big task works as an incentive to do it

Friday, December 12, 2008

Organizing projects

What is the structure and behavior of your organization? was the first in a series of 5 questions to ask yourself when evaluating project management tools, a post in which Paul mentioned the distinction between project-driven and functional-driven organizations.

The structure of an organization strongly influences the way its projects are organized and in this post I'm writing about some options you have when doing this structuring.

Image by Thomas Hawk

Generic or specific projects

The project-driven organization may be more inclined toward creating more generic products, while the functional-drive one may opt for more specific ones.

Some examples of generic projects:
  • Product development
  • Website
  • Wedding photo assignments
Examples of specific projects:
  • Search engine optimization for blog
  • Photo assignment - Clara and Brad's wedding
  • Library lawsuit
In any case, depending on the current needs, it's a good practice to try both specific and generic projects to see which works better in a certain situation.

Naming the projects

If you deal with multiple projects or if you decided for a more granular approach, the names of the projects must follow some rule to allow easy scanning and referral.

One way of doing this could be to name a project as following: the initials of the company for whom the project is done, the year when it was started, a numeric index and description:
  • IMA - 08 - 012 -Web pages optimization
  • KD - 07 - 010 - Staff management
This naming convention is also useful if you put labels with the same identifier for written documents, like invoices. This way it becomes more easily to find a certain paper a few years after the project completion.

The granularity of the projects

The complexity and the level of activity in a project is also a factor on how it should be organized. Here are some variants you may take into account with Teamness:

Granular projects - a small project might be created for a part of your work. For instance if you want to launch a business for selling t-shirts, you may divide this big activity in 3 smaller ones: a project for the administrative process of the business, a project for your website and one for an eventual blog.

Groups in a single project - if you feel the granularity described above is too intricate for your activity, then you may create a single project in which you create groups for the processes: a group for sales, one for marketing, one for the website and so on.

Mini-projects with milestones - a milestone with tasks and messages tied to it might be regarded as a mini-project or, if you prefer, a sub-project. Going back to the blog example, it can be seen as a sequence of milestones for posting activities, with tasks tied to each representing the ideas for posts and messages containing drafts.

Projects durations

Some projects are perpetual, like the maintenance of a product, while others have a limited time span.

In Teamness it is possible to archive a project and you may want to do this with a project that doesn't have any activity anymore, due to its termination or if it's in a paused state. Archiving a project will free up another spot for a new project within the current plan limits.

Wednesday, December 10, 2008

Focus on the outcome for success

One feature frequently requested on Teamness support was to display all the items assigned to a milestone. We also felt the need for an overview of all the tasks and messages that belong to a milestone, therefore the page View milestone was born.

Why was it needed?

First of all, let's think about what a milestone is. It is an objective that must be met during the development cycle. An objective is met by doing work, which is translated into tasks.

In Teamness it was possible to assign tasks and messages to a milestone, but there was no way to aggregate all these together.

How to use this feature?

One of the most powerful concepts of David Allen’s GTD system is outcome-based thinking, as Merlin Mann points out.

Setting the outcome like Merlin describes in terms of "I need to $FOO because I want to $BAR" gives you something you can use. It clearly shows the goal. But in order to avoid procrastination to settle, a listing of the steps to get you to this goal is required.

How about an example?

Christmas is coming soon. Santa Claus didn't reply to my letters, so I have to take care of the presents for my family this year. But doing Santa's job is a piece of cake with the use of the new View milestone page.

First, I'm setting the milestone, Merlin Mann style: I need to buy presents for my family members because I want them to feel the Christmas spirit.

Now that I have my goal set in clear terms, I need to build the list of steps. I create the following tasks and assign them to this milestone:
  • Make the budget for the presents
  • Find a nice blue shirt size 42 for dad, since I heard him saying he needs one
  • Decide if I buy my mother some piece of jewelry or an electronic photo frame
  • Look for websites where I can order that thing my girlfriend was dreaming about for months
Where does other stuff fall in?

While working towards completing the tasks, often you need to store various bits of information to help you in this journey toward the goal. Teamness allows assigning also messages to a milestone.

I used this feature to store various related information, like the followings:
  • I built a list of websites with Christmas gifts ideas.
  • I took some paragraphs from some blog posts about what others are considering buying for their family members.
  • Talking to my friends I asked what they are buying for their parents and then put all the notes down in a message named "Presents my friends are considering".
Here is how it looks like (click on the image for a bigger version):

We hope you'll find this feature useful and that it will considerably improve your workflow.

Monday, December 8, 2008

5 options for text delight with Wordle

The image below contains the 20 most used words on this blog. It's made with Wordle, a tool that generates word clouds from text.

At first glance it can be considered fun and that's it. But the useful thing about Wordle is that it actually points out the essence of a text collection.

Here are 5 ways in which Wordle may be used:

1. Writing habits
Find out if you repeat too much some specific words when writing a blog post.

2. The gist of an article
Copy and paste the text from an article or a blog post in Wordle and you can see a word summary.

3. See the word core of a blog
Paste the URL of a blog in Wordle and it will build the word cloud from that blog. This is how I generated the first image.

4. Display text with various sizes
Using Wordle advanced, you may input word-weight and colors for the text, to get various sizes which may be used for different purposes, like a business card:
5. Educational
This post contains a few useful hints for educational usage of Wordle.

Friday, December 5, 2008

Tooth brushing techniques for geeks

The tooth brush industry seems to be the most dynamic there is. Every time I need to get a new one there is a whole new generation on the shelves. The classic "normal" ones are long gone.

Image by silent7seven

Now you can find weird flexible ones, dragon style tooth brushes that clean both sides of the mouth at the same time and tooth brushes with plastic extensions that massage your shoulders while you use them.

But isn't the conscientious usage the key here?

Yesterday I attended the GeekMeet in Stockholm. Mingling with people in between presentations by the wise redheaded Chris Heilmann, I noticed that even the geeks consider a bit overwhelming the amount of web tools that pop up every day.

Is this good or bad? I think it's like the tooth brushes. Get a fancy one or get a more classical one, but use it religiously.

One of the presentations was called Playing With The Web in which Chris advocates for reusing already built APIs and tools in web development. There are a couple of nice existing platforms to build upon out there. Using them gets even easier to make new products. And that's a good thing because it generates more options for us, the users.

But I think we're becoming sloppy in what we're doing. We're buying too many clothes and not using them, we're changing our mobile phones every other month for a newer model, even before using the one we have to the full potential and we're also just trying out new web tools without getting the best of those we already use.

Or maybe it's just me. I have to get this.

Wednesday, December 3, 2008

10 practices to be efficient in a virtual team

Following Sorin's post about working in a virtual team, I decided to write about 10 practices that in my opinion improve a lot the efficiency of a geographically dispersed team, which is using the online medium for business.

Image by SpoiltCat

1. Be strict with email
Don't eliminate email but be disciplined in using it. Also, you don't need separate accounts for personal and business use, but make use of filtering. Keep all the conversations for later search.

2. Use a project collaboration tool
A project collaboration tool must help you keep all your stuff together: tasks, milestones, notes, messages, documents. Sometimes it's easy to let go of this idea, with excuses ranging from: "but what we're doing is not actually a project" or "we use email and we're fine". Email cannot replace properly the role of milestones or tasks, for instance.

3. Write everything down
There isn't a straightforward replacement for the water cooler in a real office. But in a way, this might be an advantage. It happened to me a lot of times to discuss on ideas with my colleagues, only to notice later that we remember less than half of the ramifications our conversation took.

4. Brainstorm and expose
Save any idea that comes to your mind and share it. Let your colleagues "play" with your notes. In turn, find different approaches or fine tune your team mates' proposals. A thing to be careful about here is to avoid going too deep in one direction, since this can be the recipe for getting nothing done.

5. Keep documents in one place
Resist the temptation to send documents as attachments to emails, but upload them in your collaboration application. You don't need to build a hierarchy for the files, just use the search approach.

6. Turn limitations into advantages
In a real office, if someone has a question for a co-worker usually goes to her desk to ask. This is bad, since it creates interruptions and breaks the flow. When working in a virtual team, don't try to mimic the same behavior. If the colleague is not online on IM, don't wait for her but leave a comprehensive message, preferably in the collaboration tool.

If you have a question don't just ask it and wait for an answer, as this may lead to very long conversations. Instead provide all the options you thought about as possible answers, specifying why you like or dislike each of them. This diminishes the time spent on an issue, thus increasing efficiency.

7. Set a working schedule
Everything is set up regarding the way you interact with the colleagues and you're enjoying the flexibility of your own schedule to do the work. But in time, this can get out of control if you don't establish a working schedule for yourself. Spreading the working hours throughout the whole day may affect your personal life and you'll end up "working" all the time, not knowing when it's enough for a day.

Having a schedule also helps the other members of the team, since they would have more accurate expectations on when you're going to do various tasks.

8. Set iteration milestones
Working in iterations is a good practice to have a clear overview of what needs to be done next. It also helps to see if the deliverables were met. Weekly iterations offer a convenient time frame, but depending on your team this may be reduced or extended. However, extending them too much would be like not having them at all.

9. Stick with a given workflow
If you started to use a collaboration tool, keep everything in there. Don't scatter discussion about features of the product in emails, but use messages in the tool. Don't ask for things on email or IM, but set tasks.

10. Get to know your colleagues
If it's possible, meet your team mates personally, go out for a drink or make weekend trips. Getting a glimpse into their personal life and also exposing some of yours helps with the work. If that's not possible, try to connect with them on social networking websites. Find out their hobbies, maybe they match yours, and exchange thoughts about them.

I would not state that this list is exhaustive, but I think it covers 10 important aspects that lead to easier communication and a better workflow in a virtual team. Almost all of the points rely strongly on self discipline, but once it's achieved, it's easier to keep going.

Monday, December 1, 2008

Overcome procrastination with Teamness

Regarding procrastination, I think there are two types of people: those who procrastinate and those who declare they don't.

Putting off things needlessly is a common thing most of us do. How many times did you postpone making an appointment for the dentist, even if you knew you're going to do it eventually? And how many times did you start working on different things, just to delay a burdensome task?

Image by celie

All of us have good business ideas. Most of the time we reject from the start and I think one of the reasons is that we procrastinate on thinking about a roadmap. When thinking about it, the path seems complicated and we tend to see mainly the obstacles.

In this post I'll present a simple way on how using Teamness and mind mapping one can get a better grip on how to pursue a new opportunity.

It all starts with an idea

For the sake of the example let's consider a guy Robert, which was on a holiday in France and bought a funny hat. At least he considered it to be funny, but he was asked a couple of times on the street where he got it from.

One day he asked himself what if he started to bring those hats from France and sell them. When he was about to let go, due to unanswered questions in his mind about the manufacturer, target market, shipping issues and so on, he makes a last effort and decides to give it try.

Turn the idea into a project

One of his friends recommends Teamness to Robert. "But I have no project to run, it's just an idea", was Robert's answer. That's exactly the point. Turn the idea into a project.

Robert creates a project in Teamness and calls it The funny hat. The purpose of the project is to investigate this business idea.

Brainstorming is the first step

He creates a new whiteboard in the project and starts writing all the things that comes into his mind regarding the process: existing products on the market, prices, target demographic, manufacturer, producing prices, shipping costs, storage and all other things that pop into his mind. Using mind mapping is really helpful in this process.

Time for tasks

Robert starts now to formulate questions based on the things he brainstormed about, like "What are the existing products on the market?". This question easily becomes a task: "Make a list with similar products on the market and their retail cost".

One by one, almost all of the other issues start to take the form of a task: "Call the manufacturer and ask for the price; try to get a discount for multiple purchases", "Identify areas for advertising for this kind of product and the target demographic", "Make a plan to microtest the product with PPC advertising" and so on.

Make the roadmap

Now Robert creates milestones. He makes one called "Target market analysis" and assigns the tasks related to his market to it. He sets this milestone to be due one week from now, based on some rough estimations on his free time.

As the project rolls on, information is collected in The funny hat project. Links, lists of prices, contacts, scans after brochures, screenshots made on some websites and so on are now all in one place and the idea turned into something more consistent. It's more clearly now what the good direction might be, based on real investigation rather than fuzzy assumptions.

Having a clear picture on how to continue, it's possible now for Robert to even delegate some of the tasks to a virtual assistant, which can help with some time consuming chores, understandably defined.

Friday, November 28, 2008

Creativity gone wild with mind mapping

Image by Trapac

One of our readers, Eduard, mentioned mind mapping in a comment in this post and I thought it would be interesting to share with you how I apply this technique to come up with ideas for blog posts.

Usually when we think about various creative aspects of our work, the tendency is to come up with an idea and then analyze it on spot. This is not productive, since it requires costly context switches. Mind mapping helps to avoid thinking linearly and it makes us produce as many ideas as possible first, postponing the analyzing phase.

I used the technique described here. The idea is to take the last five posts from your blog and brainstorm around them. For the purpose of this demonstration, I selected three random posts from our blog and set myself the task to come up with five ideas for each. The posts selected were:
A pen and a piece of paper could be ideal for doing this, as they make you step away from the computer and eliminate some distractions. On the other hand, working mostly with computers throughout time, I got to a state in which I type faster than I write, so I used an online application that is pretty fast in response.

The tool is called and it's a neat free web application, written in Flash. It that has some useful capabilities, like exporting the map to an image and collaborating with others, and some not very useful, in my opinion, like sound alerts.
Click on the image for a bigger version

Using mind mapping, I managed to come up with 15 different ideas in about 10 minutes, as you may see in the image. You actually only see the ideas, so you have to trust me for the time interval. Of course, it's not mandatory to write about everything that I came up with, but I got a couple of ideas to play with for new posts.

I find this technique to be as efficient as simple and I consider that it may be applied to a broad range of mental activities, like determining goals and directions for your projects, establishing new features, writing articles or letters, generating ideas for blog posts and also composing a post.

Wednesday, November 26, 2008

Clean up session in Google Reader

A few days ago I decided there was time for a clean up in the feeds I'm following. My aggregator of choice is Google Reader. I use it because it's sleek, fast and comes with some juicy features like graphs about your following habits compared to posting frequency.

Image by Eneas

If you don't know what a feed is, please check these 2 links:
My clean up process included some folders deletion, creation of others, reassigned existing feeds to various folders, unsubscribed from a couple of feeds I haven't been following in a long while.

Feedback on Teamness from Google Reader

In this post I described how we monitor Teamness presence on the web. Google Reader is playing a big role in this, being my RSS and Atom feeds aggregator. I grouped all the feeds obtained for Teamness search options described in the abovementioned post in a folder called About Teamness.

Google Alerts, with which I follow keywords of interest on the web, recently started to offer RSS feeds, besides email. I defined a couple of alerts with terms related to project management and collaboration and I saved their RSS feeds into Google reader. They went into a folder called Teamness terms.

Competition has to be followed from time to time, also. It has its assigned folder called Teamness competitors.

Structure of the feeds

Google Reader allows to put your feeds in different folders. These folders are actually like labels. Or like tags, if you prefer. Therefore, you can assign a feed to multiple folders. This is a bit confusing, even when you try to say it: "I assigned a couple of folders to my feed" or "I put my feed in a few folders" ... doesn't sound natural. I don't understand why Google didn't name them labels, as in Gmail, instead of folders. This post contains some brief thoughts about ontology and organizing data, if you're interested on the topic.

Anyway, getting back to my cleanup process, I made 15 folders in which I put (or assigned, or assigned to) my 117 feed subscriptions. Now, to be honest, I don't actually follow all of them. It seems fairly impossible to me, even though I heard about bloggers claiming that they're following more than 1000 feeds per day. Following doesn't necessarily mean reading. I came up with the organizational scheme described in this post in order to get the most from my feeds.

Getting neat with iGoogle

iGoogle is another gimmick from ubiquitous Google. It's a customizable page, where you can add gadgets such as weather forecast, joke of the day, news and many many more.

iGoogle has a gadget called ... hmm ... Google Reader which can show the feeds you have in the Google Reader itself. The nice thing about this gadget is that you can ask it to display only the feeds in a certain folder.

Therefore, in this revolutionary organization enthusiasm, I made two more folders, which I assigned to two Google Reader gadgets in iGoogle. These folders are called: Essential and Mild.

contains feeds which are highly important and which I check often, like 2-3 times per day. Mild contains feeds that are still important, but not as important as those in Essential, and gets read once about 1-2 days.

All that is in the folder About Teamness goes also in Essential. Some blogs that I want to follow frequently go there as well.

This setup is pretty neat and allows me to focus on what's important, or essential. I also don't miss other news, of lower importance, which I gather in Mild. When time allows, I can go Google Reader and browse through the other folders, like Photography.

Monday, November 24, 2008

Do you want to be satisfied?

Image by TheAlieness GiselaGiardino

We gave our forum up. We concluded it's a bit complex, a bit old fashioned and it was a different application from Teamness, which also needed maintenance.

So what does one in today's web world, when tools appear everyday for every need, do to offer a solution for its users to ask questions and interact? The answer could be outsourcing and this is what we chose. It means that we're now using another service to provide a way for customer support. This service is GetSatisfaction.

First of all, I think the name of this service is brilliant. You may create enticing phrases, like the one in the title, when you mention that you're using it. But besides that, they come with a bunch of cool features that make the service look like a forum on steroids.

Getsatisfaction offers a win-win situation, regarding customers and providers.

The former can go to a central point and see what other users are saying, interact with other customers, share opinions and so on. Like in a forum, but with a couple of twists.

The latter can get feedback in a structured way. For instance, if one person asks a question, others can simply click a button saying "I have this question too", increasing the number of people who would like an answer on the matter. So a company may answer a question once, instead of replying to a lot of emails. The same goes for ideas, praises and problems.

When you register a company or a service in GetSatisfaction, it gets assigned the URL Therefore I wonder what would happen if decided they want to use the service, since the page contains the story behind the tool.

We're really excited about the features offered by GetSatisfaction and we're curious how it will work for our customer support in the future. In other words, we're really excited to get satisfaction. (I told you the name is brilliant.)

So please, if you have any question or complain or suggestion or even praise about Teamness, use this link to get satisfied.

Friday, November 21, 2008

Data segregation and the Stockholm syndrome

Dreaming in code, the book I mentioned in this post from last week, follows the creation of a software tool named Chandler. At one point, the author makes a connection between how the development team is trying to make the data structures in Chandler as flexible as possible and intertwingularity, a term coined by Ted Nelson, who also came up with the term hypertext, to express the complexity of interrelations. Ted Nelson said that "people keep pretending they can make things hierarchical, categorizable and sequential when they can't".

Image by Nattu

I find myself many times organizing files into folders on my computer, but as time goes by, the data tend to get dispersed anyway. Then I end up procrastinating to clean up my files and directories on my hard drive again. On the other hand I'm using Delicious everyday to save and retrieve my bookmarks, without worrying about the structure.

We're not supposed to help computers into maintaining the data, but to put them to work. I wouldn't probably spend time creating folders on my hard drive, if retrieving the information by searching would be instantaneous.

I think that trying to maintain hierarchical structures turns us into some sort of data victims or as Patrick Mueller said, it makes us suffer from the Stockholm syndrome.

Image by cambodia4kidsorg

As I mentioned above, I keep my bookmarks on Delicious. I have about 1500 and the organization is based on tags. If I would've built a hierarchy for them I would be lost. It's easier to go to a tag and see other tags used in connection with that and so on. The same approach of archiving and searching is so liberating and it makes Gmail so easy to use.

Clay Shirky states the following in this interesting article about categories, links and tags:
One reason Google was adopted so quickly when it came along is that Google understood there is no shelf, and that there is no file system. Google can decide what goes with what after hearing from the user, rather than trying to predict in advance what it is you need to know.
He mentions that categorizing is similar to predicting the future, which turns out to be hard:
Consider the following statements:

A: "This is a book about Dresden."
B: "This is a book about Dresden, and it goes in the category 'East Germany'."

That second sentence seems so obvious, but East Germany actually turned out to be an unstable category. Cities are real. They are real, physical facts. Countries are social fictions. It is much easier for a country to disappear than for a city to disappear, so when you're saying that the small thing is contained by the large thing, you're actually mixing radically different kinds of entities. We pretend that 'country' refers to a physical area the same way 'city' does, but it's not true, as we know from places like the former Yugoslavia.

What about you, do you feel more comfortable building hierarchical categories or tagging information? What tools do you use that offer each of these functions or maybe both?

Wednesday, November 19, 2008

Teamness case study - wedding photography

Andris Zenta is a professional photographer from Latvia who specializes in wedding photography.

In the beginning, please introduce us to your work.

I've been working as professional photographer and illustrator for the last five years and recently I started to focus my interest into wedding photography. It's a very exciting field, but at the same time, exhausting. In any case, it brings me satisfaction both career wise, as well as from a financial perspective.

How did you find out about Teamness?

After shooting a couple of weddings by myself, I decided that I need two assistants to help me, one as a second shooter and one to take care of auxiliary tasks, like preparing the equipment or moving things around to set up scenes, allowing me to focus on taking the photos.

With more than one participant in this kind of project, there was need for a project collaboration tool. Since it was my first assignment with a team I wanted to try a free tool to see how it goes and I ran across Teamness by searching on the web for a free collaboration tool for teams.

I'm very satisfied on how it went and now I'm also seeing the benefits of using project management tool even if you work alone. It helps keeping you organized.

How did you use Teamness for your project?

I used Teamness so far for this wedding project I described, in which I had two assistants helping me.

Wedding photography is one of the most difficult tasks for a photographer. Everything must be very well planned, because you don't get a second chance to shoot the event. Preparation is then the key and Teamness helped us with being prepared.

A lot of details need to be settled prior to the event, like for instance dressing code. It doesn't seem like a photography task, but even if you're not part of the event, you need to blend in. This was written down in a whiteboard in Teamness which I named "General checklist".

The wedding had two parts: a first part in the church with shootings outside afterward in a nearby park and a second part taking place at the party, inside a location. We checked the weather for the day with shooting outdoors and stored the results in Teamness.

Prior to the wedding all three of us did some location scouting. We went to the established places and put down ideas for shots. We then discussed them in Teamness using messages and agreed on shot lists which we saved as whiteboards. I also prepared groups of tasks for my assistants and watched the activity on the dashboard.

What are the roles of every participant and how do you use Teamness for them?

I was doing the main shooting and one of my assistant was taking photos with a wide lens, covering more general aspects. We had a script prepared that list all the actions we needed and for each action I assigned tasks for my second assistant, like making sure to gather every member of the family at a certain time.

I established tasks for my assistants, first for the scouting session in which we simulated a real shooting and then for the wedding itself. The various stages were marked with milestones, for instance I had a set of tasks assigned for different talks with the couple: settings expectations regarding how many shots they want, what things to have covered and also the agreement based on which I charged them.

I made the equipment list for each bag, as different messages in Teamness and assigned tasks for the assistants to take care of each.

Are there any particular features that you value the most?

I liked that we were able to assign tasks to different persons and comment on them, so we agreed easily on every aspect. Building together lists of things to pack and do in whiteboards and seeing what everyone added was neat.

What would you improve in Teamness?

I would like a more flexible way of managing the items tied to a milestone. I would also like to see a richer editing feature for messages, in the same way as for whiteboards for instance. This was very helpful for us to accentuate on various equipment. I will stay with Teamness for my future projects, including a portfolio website that I'm preparing to build at the moment.

Thank you very much for your time.

Thank you.

Tuesday, November 18, 2008

Login through Google and Yahoo

In order to have an account in Teamness one needs an email address. The reasons for this are simple. Firstly, the email address is part of the login credentials. Secondly, Teamness sends notifications by email, so asking the users for a valid email address is a guarantee that they will have a good and consistent experience.

Delegating the login

By analyzing our logs we noticed that the most of the accounts were created with Gmail addresses. Yahoo came second.

In this case, why not take advantage of the authentication delegation mechanism from these services? Yahoo puts it best here: You build great web applications. We have millions of users who store their data on Yahoo!. Browser-Based Authentication (BBAuth) makes it possible for your applications to use that data (with their permission).

Why delegated authentication?

It's easier for everyone to remember her or his Gmail or Yahoo account, which she/he has been using for a while, instead of a new one specially created.

The decision to make it easier for new users to try Teamness was eased by the fact that both Google and Yahoo offer the support of delegating the authentication.

What about the existing users?

New users don't have to remember new passwords now. But what about the exiting ones, that already created accounts?

They can associate their Yahoo and/or Gmail accounts to the account they're already using. I can now use my old Teamness account, along with my Gmail and my Yahoo account, so I can use all these three to login into the same account in Teamness.

Is this safe?

Yes. The authentication process is delegated to Google or Yahoo, which ask you if it's ok for Teamness to access your details, consisting in your name and your email address.

If you're still skeptical, just think about this: why would Google and Yahoo give away users' sensitive data, like passwords? They won't and they don't do it.

You may find more information about these services in the following places:

Friday, November 14, 2008

The project triangle

I'm reading "Dreaming in code", a book trying to find the answer for this question: why is software so hard? It's probably fun to read for anyone who ever participated in creation of any type of software as it follows a project doomed to endlessly spin without getting close to the initial vision.

One paradigm that drew my attention lately is the Project triangle, mentioned in the chapter "Managing dogs and geeks". The project triangle is a painful formula coined in the software development field, which states that given the options of Fast, Good and Cheap, you have to pick two of them to build a system.

With the recent explosion of web 2.0 tools, I tend to think that the solution for the problem was nailed down. In my opinion most of the small companies releasing services on the web are first getting comfortable around the Fast and Cheap options, then releasing the product and after that iterating over Good.

Leaving Good at the end doesn't mean that the initial state of the product is unreliable. It means that the product is refined in time, following the feedback received from initial users to pump up the Good side of the triangle. Web 2.0 redefined the term Good from the triangle.

If you didn't read the book, I recommend it. Joel Spolsky wrote a review about it here.

Wednesday, November 12, 2008

Twitter pals

We are big fans of Twitter and with its growing popularity we believe it's a very good tool to make contacts. We recently started using Twitter to promote Teamness through it and we try to stay focused on this purpose, without being obtrusive. At the same time we watch what other people are doing and writing about.

To make our Twitter life easier, we're using a couple of related tools and in this post I'm going to list them with a short description:

Twitter Search
We mentioned Twitter Search already in this post, writing about the way we use it to stay up to date with Teamness being mentioned in the tweets.

When you include an URL into an update, Twitter converts it to a short one using TinyUrl. Tweetburner does the same thing, only that it tracks the links your URL receives. This way you would know how many people clicked on the URLs in your messages.

With FriendOrFollow you may easily see who you're following that's not following you back and who's following you that you're not following back. You may also see your mutual follow contacts. It's a fast way to follow back at interesting people who are following you already.

Tweet Scan searches Twitter and other micro blogging services and delivers reports on email or RSS.

This tool shows you how popular you are on Twitter. You'll get a nice graph with the daily status of your followers, so you'll see how many more are following you day after day. Or, sadly, how many stopped following you.

Yoono is a browser add-on that aggregates social networking information and keeps it in one place. It comes in very handy especially if you're active on a few social networks and you want to handle all of them from one place.

No matter what are the tools used, make sure you use Twitter for business the right way. As written in the post, it's more valuable to actually interact with people than hastily promoting your products.

Here is another list of Twitter related services and in this post you'll find a presentation of five ways to connect to people on Twitter.

Monday, November 10, 2008

Working in a virtual team

Managing the work on Teamness is done entirely virtual using basically two environments: Teamness for all kind of data and Gmail. In this post I write a few thoughts about being part of a virtual team.

Image by Zed.Cat

Virtual team allows for mobility, but mobility doesn't mean absence. You need to work on your virtual presence and in today's world there are plenty of online tools to ease this process. These solutions are moving teams beyond phone and email, giving more and more space to other means of communication.

Stay up to date with what your team work. Micro blogging platforms like Twitter increased the frequency of achieving this. Posting five times per day about work related activities may replace the little chit-chat on the corridors in a real office. Everyone in the team may participate to these virtual discussions and you can even organize virtual coffee breaks while actually drinking coffee.

Looking at the results rather than activity is the efficient way of managing a project and the virtual world makes this task even easier. The list of completed tasks shows clearly if you were just busy with unimportant issues or you were focusing on being productive.

Don't use IM for business. IM instigates to chat and to endless discussions around the same subject without drawing conclusions. This is not what you need to get the job done. However, if you started twitting, make sure you're not transforming this into a new IM environment.

Eliminate meetings with a project collaboration tool. In my opinion, the only good thing about meetings is brainstorming. Use messages for that. Establish deadlines with milestones and create tasks for things that need to be done. Discuss those using comments, to clarify all the aspects. A summary of the work done can be obtained from the dashboard.

Connect personally with your colleagues. As Chris Nagele points out in this post: "nothing helps a team gel more than learning about each others personal lives". But it's not very difficult anymore to get connected with your colleagues. Social networking websites help sharing profiles about team members. Connecting with your colleagues on Flickr and looking through their photostreams you'll find out things you would otherwise talk about near the water cooler in the office.

Be consistent in using these tools. Doing this builds trust in time and eases the interaction with the team. Each member of the team would know what to expect from the others.

If you're working remotely or if part of a virtual team, you might want to also checkout FreelanceSwitch. If you're travelling a lot, Portableapps has a large collection of software that works on any "USB flash drive, iPod, memory card, portable hard drive or other portable device".

Wednesday, November 5, 2008

5 questions to ask yourself when evaluating project management tools

Students participate in online groups to chat and share information. Small companies use emails for communication and network drives for storing documents. Non-profit organization may rely on a free online solution. Software departments could keep the schedule in an Excel file. Some individuals use notebooks and pens to put down appointments in a paper agenda or type reminder items in an online or desktop solution on the computer.

The name and the complexity of the tools used vary with the type of organization and the activity performed. Every organization, from big companies to individuals, uses a mechanism for project management, even if they don't call it like this.

Image by El Fotopakismo

In this post I will try to identify a few preliminary questions that may be asked to asses the needs for an online type of project management solution. It is not meant to be a complete and exhausted list of questions, but more of a guide for choosing a solution that will best suit the needs.

1. What is the structure and behavior of your organization?

Project-driven organizations have different internal processes than functional-driven ones.

Examples of project-driven organizations are: a construction company who builds wooden houses, a group of students working on a class assignment or even a wedding photographer doing assignments.

A functional-driven organization is usually a service or information company, like a small family hotel or a department in a bank working with processing checks. Such an organization may need to define either small multiple projects, which can be archived when becoming inactive or define fewer ongoing ones for each type of activity.

2. What is the complexity of your projects?

The number of people involved and the estimated activity must be taken into account. A project generating a lot of data, with a high posting frequency needs a fast solution on the web and options to filter and group the data for easier retrieval. Searching is a must, since it's easier to archive and look for, instead of spending time classifying the data.

3. What is the life expectancy of a project?

Some projects don't have a deadline, like an on-going activity for a functional-driven organization. They may require task grouping under milestones, though. A project with a long life span faces the challenge of getting old data out of the way, but being able to retrieve it at any times.

Image by lumaxart

4. Are the projects internal?

If everything is public for everyone in the project, a solution with complicated privacy policies is not needed. But if you need your clients to have a peek once in a while, you probably don't want to expose everything from under the hood.

5. Are you already using any software for disciplines related to your activity?

If there is already an established procedure for certain disciplines involved in the project, like requirements management or issue tracking, the transition to the new solution must be as smooth as possible. The learning curve for your team should be as easy to climb as possible. Trying to keep the same type of workflow can save a lot of time.

This list doesn't cover many aspects related to choosing a solution, for instance there is nothing about security. I wanted to keep the list focused on the workflow of the team.

Simple tools like online todo lists, text or Excel files may be more efficient than a complex solution, so it's important to identify the requirements prior to deciding for a given solution.

Sunday, November 2, 2008

Blogging for a startup

A lot of blogging resources recommend having a blog for your business. A blog can be useful for various reasons, the most important one being that you may promote your product.

I believe that for promoting the product, the content of the blog must be interesting enough for people which are not familiar with the product to come and read the posts. Then, they find out about the product and use it, fulfilling the mission of the blog and not the other way around, having the product sending readers to the blog.

Image by El Fotopakismo

Some of the general reasons mentioned for having a blog as a business include:
  • Announcing new features. This is good, but then your readers would be the users of your product. Who else is going to read a list of upcoming new stuff you worked a lot upon, other than the already existing users? In Teamness, we made a special page called News, where we're adding information about new features. There is also a RSS feed provided for this News page. This way, we spare the users who are only interested in the product to spend time going through our blog posts.
  • Frequently asked questions about the product. Why spread them around posts in a blog, when you can display all of them with a searchable feature in your website? In Teamness we gathered them all under the Help page. We also implemented a mechanism to offer contextual help, by sending the user directly to the questions in Help referring to the page she/he started from.
  • What are you working on. This is also related to announcing new features. It might be interesting only for existing users.
  • A mix of the above. Not such a good idea, in my opinion. As problogger describes it, writing about multiple topics on a blog makes users "became disillusioned with the blog". People wanting to know if a new feature is available will become annoyed by other types of posts.
Then, what's left to write about?

Many of the advices found on the web regarding blogging for business omit the fact that as a startup, you would want to maintain a blog in order to get users for your product. Therefore, we think that the blog has to become attractive, independently of the product.

We are continuously trying to find subjects to write about in order to keep this blog interesting. We found two interesting directions:

Writing about Teamness as a startup and the way we try to grow Teamness as a product. We often find blogs on the web for various products which write about their development process and it's an interesting and useful resource.

Writing about product collaboration and management methodologies and how can these be applied to small businesses. Teamness users are people working and collaborating on various projects. Having this topic on the blog could bring new insights for some and could introduce Teamness to them.

What's your opinion about blogs for businesses? Also, what subjects would be of interest to you on this blog?

Friday, October 31, 2008

Feedback for a startup

Every web service needs some kind of feedback mechanism. When working on a startup, feedback is probably even more valuable than when the product is mature. Here are some thoughts regarding the feedback for Teamness and how we're trying to make it easy for our users to make themselves heard.

Image by Orange_Beard

Why is feedback important for a startup?

It keeps you on the right track. You'll focus on the things that users actually demand, beside the ones that you think are desired. This doesn't mean that the features you're thinking about are useless, but it may imply they're less important than you think. Then it comes to prioritizing in an efficient way.

It increases the motivation. When people start using your application, this will constitute a good incentive for you to keep up the work. Getting feedback from them is a way of knowing that they're actually using it.

Situations you didn't consider show up. The diversity of the users generates context you probably didn't think about before.

How do we get feedback for Teamness?

Right from the beginning, we asked ourselves how we can make it easy for the users to send us feedback. As I pointed out in a previous post about support, it's hard to obtain feedback in the beginning stage of a product, because most users just walk away if something doesn't work.

We cannot change this behavior. After all we are all users and act in the same way, but we can make sure there are a lot of options for people to contact us. Here is a list of current choices Teamness users have for that:

1. Direct feedback from any page in Teamness
The user must get in the situation of searching for how to contact us. The method to do it should be right there and this is why we added a link called "Send feedback" in the header of every page. The link sends the user to a page with a simple contact form. Since we added this feature, we received more messages this way than through email.

2. Email
This is how we used to get most of the feedback, before implementing the option above. The emails usually consist in bug reports or feature requests, but we also receive business proposals.

3. Blog
A blog is a good place to improvise in all directions regarding the project. Using a blog you may conduct polls, invite users to participate in discussions and so on. We started blogging here after we launched, but I think that if we would've started before, like these guys did, it would've helped collecting more feedback and in an earlier stage of the product.

4. Forum
We have set up a message forum as an environment for users to provide feedback. However, we observed that most of them prefer the private way of a direct message, like email or the contact form. In any case, a forum is good in the long run, because it's a way of allowing users to engage in conversations about your product amongst themselves.

Don't get carried away

Users want the products they’re using to fit their needs as a glove. However, this is very difficult to achieve, due to the diversity of the necessities out there. We're trying to balance the options we have and to refrain from plunging into implementing a feature that will make life easier for a user, unless it's obvious it will make life easier for many users.

One of the most common advices for small web startups from experienced entrepreneurs is to launch early. A strong reason for that is feedback accumulation for the reasons described in the beginning of this post. Of course, you cannot launch a product that does pretty much nothing and expect users to come and tell you what to do, but providing a single solution for a single problem may be a good start.

Saturday, October 25, 2008

Monitor your web presence

Image by fazen

A celebrity is used to being talked about. A known business is mentioned in too many places to bother keeping track of them. But with a small startup like Teamness we cannot afford not being aware of the places on the web where we’re mentioned.

Why is it important to know where you're mentioned?

We want to know what's being said about Teamness for the following reasons:
  • Start new relationships. Relationships, even web ones, are good for the business. People are more likely to use your product if they know you. And they’re more likely to recommend your product.
  • Participate in conversations about your product. People comment on reviews of your product and sometimes they ask questions about it. Other people make various assumptions, which may be wrong and if left unclear or unanswered, they might create a false perspective over the product. It's a good thing if conversations about your product on other websites are not left undone.
  • Get notice about critical opinions. Some critiques may be wrong and it could be good to correct the perception. You may also come upon nasty comments about your product, perhaps in the forums of the competitors. This is unpleasant, but it's something we don't want to ignore.
  • Find out mentions of your blog posts. If you have a blog in which you promote the product, it's good to know if some of the posts are mentioned. This way you may also track successful posts of your own.

How do we know where Teamness is mentioned?

My favorite method to watch for Teamness on the web is by using RSS feeds. I created a folder called "About Teamness" in Google Reader, which is the RSS aggregator I'm using. Here I added a couple of feeds to let me know where Teamness pops up, by using various features from a few web services, as following:

Technorati watchlist
Technorati allows you to watch various items by using keywords or URLs. In the watchlist page I inserted the “Teamness” keyword and I obtained a RSS feed which I then added in the “About Teamness” in Google Reader. If you don't like RSS (and I noticed there are still a lot of people who don't), you have the possibility to access your Technorati watching list in the page itself, without using the RSS feed.

Type the search term in either Google News or Google Blog Search and along with the search results, you'll get a RSS or Atom feed. I typed “Teamness”, of course, and I then used the two RSS feeds offered by Google.

Using you may input search terms for tweets and you can get a RSS feed. They even offer advanced search capabilities, so you may get only tweets with "positive attitude :)", for instance.

Delicious offers a feature called Subscriptions, through which you may subscribe to certain tags used by all the users. I created a subscription for the tag "Teamness" and I also got a RSS feed for it, which went into the "About Teamness" folder. Here is a nice post explaining how to use Delicious subscriptions.

Other ways of monitoring your presence

Using Google Alerts is another way of staying up to date with your presence on the web. Google Alerts are "email updates of the latest relevant Google results (web, news, etc.) based on your choice of query or topic". You may track keywords through various media like news, blogs, web, groups and video.

Other services like TechRepublic or Magnolia offer similar capabilities which may be used in the same way to keep track of your startup.

Tuesday, October 7, 2008

The five seconds test

The other day, one of our Twitter contacts pointed out the 5-Second Test for measuring your site's content pages. It took about 5 seconds to set up a 5-seconds test with a screenshot of the Teamness web page here.

What's the test about?

As the test page itself states, it consists in showing an image of the front page of the Teamness website for 5 seconds. Then the visitor is asked to fill in 5 of the things she/he remembers. It's a quick technique for evaluation the impact of your web pages. And it's also fun.

The results of the test

1: easy
2: online
3: project
4: collaboration
5: teams

1: teamness
2: easy collaboration

1: online
2: application
3: easy
4: team
5: orange colour

1: screenshot to right
2: how to get started
3: teamness logo with small dots
4: layout breakdown - 2 upper half

1: a project management application
2: collaboration

1: toolbar
2: top menu
3: two columns design
4: some pictures and text

1: teamness logo upper left made of tiles
2: screenshot of a web interface upper right
3: sign up button, big - suggestive
4: the word 'easy' in a title
5: pleasant color scheme, good use of nonintrusive fonts

1: teamness

1: easy online colaboration for teams

1: easy project collaboration tools
2: teamness
3: screenshots
4: blue, red

What do the results say?

The test doesn't tell much, but if in 5 seconds you manage to transmit your site's message to the viewer, then it's more probable you'll have the user for longer on your website. The longer it takes a visitor to understand what your site is about, the higher the chance of leaving the page.

Some of the conclusions are:
  • The word Easy stands out.
  • Collaboration is also observed, but it's not always put together with Easy, as desired.
  • The term Project is not noticeable, meaning that the idea of Easy online project collaboration needs more than 5 seconds to get into the mind of the user.
  • The name of the service, Teamness, is easy to remember and to make note of it.
  • The colors are noticeable in connection with the service.
If you have a website, try making this 5 seconds test and see how you may analyze the results. To get more relevant responses, try to send it to people who are not aware of your site or to persons from a different business than the one depicted in the page.