Teamwork 4.0.8063 released

This is a functionally minor update. with some nice bug fixes. We’ve also updated the user guide.

– Friendlier file storage editor
– On shutdown HsqlDB files get optimized
– Smarter full text search user “t:” shortcuts etc.
– Check overwork runs only if estimation is >0.

Bug fixes
– Bug on full text search in case of “:”
– Fix for schema evolution HsqlDB

Attempts to manage work with social networks: Twitter limits

One of the open discussions I’ve found wondering on the web is about people who try to manage their work with social networks. Since I’m a developer of a work management software and at the same time I’m social network addicted, I find this topic quite interesting. My first consideration is that social networks can be used to manage work only if your needs are limited, for example if you need only to log your time; for this, some use Twitter. This friendly little tool lets you share brief contents, send message to friends and trace activity in time (by scrolling it 🙁 ).


Reading blog discussions about social tools for management, I gather that who uses Twitter for work management, uses it also to log personal experiences and communicate with friends.

Probably if you write a twit every hour, it comes natural to use Twitter as time tracking tool, moreover with the  @tag you can send personal message, creating a sort of work group. Using Twitter in this case is a good way to save time considering that you will probably spend the same time on it even if you don’t use it for work!

However I can’t believe that users are satisfied from this service. The other day I read the post of Seth Godin Love(and annoying) and I immediately connected his words with my consideration about Twitter. Seth Goding said that

“If people love it, they’ll forgive a lot. They’ll talk about it. They’ll promote it. They’ll come back. They’ll be less price sensitive. They’ll bring their friends. They’ll work with you to make it better.”

But he doesn’t say that if people love it, they also probably will use it in a way that hasn’t been foreseen: using Twitter to manage work is a very clear example of this, and it happens all the time with many other applications like Excel, for example. This is fine, as long as you don’t want to extract information afterwards….
Twitter can log your activity but it can’t tell you which twits go where and how much time you have spent on a specific project, you can only calculate it by hand.
I think that the needs of work groups that really want to organize their work can’t be satisfied from what Twitter gives; it wasn’t meant to give more, it’s the above usage which is forced.
My conclusion is that some people use Twitter to manage work only because they love using Twitter, and having it as work tool sometimes is a good excuse to use it frequently :-).

Silvia Chelazzi
Follow me on Twitter (I have no fear of paradox)

Scrum tools: visually creating Sprints – a mockup

In this post we refer to Scrum and Sprint, which are terms taken from the Scrum management methodology: see here for an introduction.

Following Skype, Twitter and e-mail discussions with Rick Cogley, looking for example at Scrum-ban, we thought about how to improve the current Scrum module, creating a more “visual” interface for creating Sprints.  So this is our first mockup of the new “create sprint” page:

Teamwork visual Sprint creation page- first update
Teamwork visual Sprint creation page- first update

Now if you have a suggestion for this interface, just download the mock-up here, modify it and publish the link on our UserVoice or send it back to me (ppolsinelli at open – lab dot com).

Teamwork is (fortunately) not just a specific Scrum tool, in fact in the same company different methodologies may be used in different projects; sometimes only some parts of a methodology may be used. For example, in Open Lab we use pair programming and short cycles, taken from XP, but we do not use test-first coding; Teamwork is flexible enough to adapt to all these, so that you may use a single tool to manage differently structured projects.

First update. Received a mock-up with suggestions from Mr. Cogley:

Cogley update #1
Cogley update #1

adopted all, apart from “info on tasks” as left side is a single backlog hence from a single task. Thanks!

How Teamwork is made with Teamwork

The guys developing Teamwork are indeed using Teamwork for managing work. How we do that? Well, even in our small group, people have different functions and habits. We have two areas, production and accounting; inside prodution, there are people with different roles, and consequently see and use different data, to which the interface adapts seamlessly. We extensively use the dashboard customization functionalities so that everybody sees what they want.

Some issues editable in place.
Some issues editable in place.

Teamwork 4 has won the long-standing war with paper. We have to confess that for some short-lived issues, some of us (including me) were still using post-its and notes on paper as an integration of issues. But Teamwork 4 won: the Ajax issue multi-editor is just too practical. There is no more paper on our desks; add Balsamiq mockups for replacing paper interface drafts, and the coverage is complete.

We cross post issues and bugs, which we get notified thanks to the subscription engine.

Worklog reads from Twitter and Subversion
Worklog reads from Twitter and Subversion

Teamwork worklogs are inserted with help from Twitter and Subversion logs, which Teamwork 4 does natively.

A section which is widely used is the agenda integrated with meetings, which as it synchronizes with our e-mail clients, is quite practical.

stickyNotesWe use boards too, for example to collect notes for our technical meetings. Careful collection of worklogs allows to monitor costs, and also comparison between releases, cost per team etc. .

For authentication, our Teamwork is integrated with our Active Directory. As we are  “advanced users” :-), we have added to the scheduled jobs a “SiteAliveTester” job which tests that our servers are up and sends e-mail alerts.

Strategic company news.
Strategic company news.

We have added some parts to the defaults, such as RSS reader, user voice reader.

Of course we also use news, for example to publish scores of our table-tennis tournament!

Teamwork and multilinguism

Teamwork 4 interface in German
Teamwork 4 interface in German

Teamwork’s translation in German is almost ready, thanks to Koelnticket, in particular Andreas Nebinger (thank you Andreas!). Let’s see a bit in detail how we dealt in general with internationalization issues in Teamwork; actually this set of problems will have to be met by any sufficiently powerful web application.

There are many senses in which an application might be said to “support multi-languages”, or be “internationalized”:

Interface. Labels and messages of the web interface are available in several languages. Teamwork contains a label editor, where you can create a new language and also modify existing labels.  Teamwork is used in 43 countries, almost all using it in English; actually some project managers like to have it English as teams are made from people from different countries, so it encourages communication.

Teamwork multi edit labels

But as usual 🙂 Teamwork does more: it lets you change labels on the fly in the web interface, saving them on the database so that you don’t lose customizations on application update.

Some fake data in Chinese

Data. Data inserted in the application can be inserted in any language. We have been careful about the encoding (always a problem in web applications), so that the full spectrum of UTF-8 supported languages is included, which means also Greek, Cyrillic, Arabic, Japanese… . This also assumes that the database on which Teamwork is running supports Unicode or UTF-8 data. THen you have the further problem that labels and data you have on the interface may need to be channeled on a different mean, e.g. exported in an Excel file, or in a PDF, and there again you may be plagued by encoding problems.

Search. (This is often forgotten) Full-text search requires multi-language stemming of contents: this is from our technical contribution, which is in the context of Hibernate (an object/relational tool) and Lucene (an indexing engine):

You need to know the language in which a document is written, in order to correctly index it; once you know the language, you can instantiate say the Snowball analyzer with the correct language stemmer. To make a practical system, you will need to guess the documents language from its content. We have found a very simple and effective solution […].
In order to make a content “findable” also when searching from a language (say, German) a document in another language (say, English), we actually double indexed the content field, once with the nowball analyzer and once with the simple StopAnalyzer; so that if you are searching from German and you search “Telefunken”, which stemmed would be searched as “Telefunk”, will find also “Telefunken” in English documents ? .

See and

So Teamwork’s full text search is language-aware. Actually search in Teamwork is much smarter than that, but this is a topic for another post.

Documentation. Documentation may be provided in several languages. In Teamwork’s case, as it is by now in 99% of the web applications, it is provided only in English. We also believe that it will be the “power user” of the application that will mostly need documentation, and we assume that she/he can read English.

So how can we evaluate Teamwork w.r.t. all these aspects?

Feature How it is dealt with in Teamwork
Interface Available in English and Italian. German is almost ready, Spanish is planned.
Data Data in all languages is supported (UTF-8 supported).
Search Stemming is available for all Lucene analyzers: Teamwork provides out of the box English, Spanish, French, German, Portuguese, Italian, Swedish, Danish, Dutch, Norwegian, Russian, Finnish, but it is easy to include other Lucene extensions.
Documentation This is provided only in English.

A F.A.Q. on Teamwork’s site talks about changing labels: