Third party integrations speeding up

Teamwork in Polish.

Teamwork in Polish.

There is a increasing trend in getting more and more contributions from third parties to Teamwork – which is great news for us! Just received a Polish translations, will soon release a Teamwork plug-in for Thunderbird, and there are at least two software houses that will use Teamwork as a module in a more extended application suite. We are building a dedicated section on the web site for contributors, you can get previews on Pietro’s twitter stream here :-)

Teamwork release 4.2.10080

Meeting

Meeting section improved.

This new release contains principally bug fixes.
Download it here; the installer will upgrade your web application; the database schema in this release will be changed (it just adds a new column in “twk_disc_point” table).

Feature:

- We have added the possibility for each attendee of a meeting to add new discussion points. Every discussion point now   has an owner so a simple attendee can add new discussion points and modify them (but only his own ones).

Bugs:

-Fixed some bugs on the new skin Ulm in Internet Explorer
-Fixed bug on cost tab in the link of descendant
-Fixed a bug on agenda week size
-Fixed a bug on search field
-Fixed a bug on process back-office

Teamwork release 4.2.10025

Here you find the main features of this new Teamwork’s release.
There are also some bug-fixes which are listed at the end of this post.

The first feature is an improvment on the task editor tree which now is comfortable as the issue multi line editor.

ScreenShot008

The second added feature is a new print page for the task costs. This page is available from the tab “cost” in the project editor.

ScreenShot011

The third interesting feature is the new combo added in the check missing worklog.
This combo, which is already available in most  Teamwork search forms, lets you write several space separated names for multi select.

ScreenShot009

Bugs:

  • Fixed bug in timesheet day portlet with a too long action.
  • Fixed bug on the error page on internet Explorer.
  • Fixed a bug on timesheet page total calculation.
  • Fixed a bug on multiple generation of personal details for new resources.

Download it here; the installer will upgrade your web application; the database schema is unchanged.

Simplistic cost/benefit evaluations of organizational tools adoption

Cost/benefit analysis of PM software adoption

Cost/benefit analysis of PM software adoption

I’ve recently received yet another request of a cost-benefit analysis given by the adoption of Teamwork, in general, of project and groupware management software. Not always in those exact terms, but we do periodically receive such requests. One may rephrase the question as “what is the exact economical gain given by adopting Teamwork”?

Very superficially, this looks like a clear question, which requires an exact answer. Let’s take a closer look.

What does it mean “adopting Teamwork”? If one takes even a cursory look at Teamwork user guide, one should quickly realize that for a tool that can integrate at so many different levels with IT infrastructure, this may mean all sorts of different things: one may be handling just high level projects, sharing them on the web, or one may have integrated it from intranet authentication and certification forms, following every little action in the company.

One may be using the exchange function with Subversion, Google calendars  and Twitter, so even the boundaries between what is done in the company by Teamwork and what is done by other applications is blurred. So “adopting Teamwork” has different meanings for each adoption process.

But there is an even bigger conceptual mistake that is lingering here, given by the first part of the question, “exact economical gain”: i.e. that taking steps in improving quality of work, by implementing software aided organizational procedures, is a purely economical gain that can be accounted for say is a year after the reorganization. Anybody that has experience in reorganization and working on quality of work and communication knows that consequences cannot be evaluated so simplistically, though they can be great, and span an entire work life.

This said, the benefit that one will have basically depends on the plan and determination of the leader that is introducing innovation, by her/his culture, open mindedness and experience in the field and in human relationship, and the respect that she gets from the team; and we believe that in some cases (not all), Teamwork can be of help for such individuals, more structured help than just a to-do list shared online. But don’t ask us to fool you with numbers thrown at random; you should probably be very suspicious of vendors that promise X% “gains in efficiency” by doing this or that. Our customer list is partly public, the best way is to ask them, and everybody will give a different answer. Just my two cents.

Pietro Polsinelli

Teamwork release 4.2.9810

This is the first patch after the release of Teamwork 4.2, it includes some bug fixes. Download it here; the installer will upgrade your web application; the database schema is unchanged.

ScreenShot005 Features:

Added in the list of worklog on a specific assignment the possiblity to change the staus of all selected worklogs with one    click.

- Improved “check missing worklogs”.

Bugs:

- Fixed a bug in first saving of LDAP data.
- Fixed a bug on import tweets from Twitter.
-Fixed a bug in the document search page.
-Fixed a bug in the meeting discussion point list.
-Fixed a permission bug for agenda event owner.


Teamwork 4.2.9650 released

This is a major release, the first of the 4.2 series; it is a free upgrade to all users of version 4. The main features of this significant release are:

(actually even more than what described there has been done along this line: just try it out…)

  • An empowered meeting management section
  • Two new interface translations: in French, and in Chinese
  • Several tool expansions for the power users, on automatic advancements, code generations, test status on issues etc. (this is detailed in the following)
  • A new skin: ulm
The new ulm skin.

The new ulm skin.

The user guide has been updated. Download the release here; the installer will upgrade your web application and the database schema and data; remember to do backups!

General features

-    Added “test” status to issues
-    Improved Portuguese translation
-    Added option in config for setting task progress to 100% when complete
-    Added option in config for generating task codes from types
-    Saved filters are visible in the button bar
-    Costs are in currency in all the interface
-    Easter is not mandatorily a holiday
-    Avoid to duplicate subscriptions when present on parents
-    Subscribe overdue tasks
-    There is task name in the subject of email generated by TW?
-    There is a new “ulm” skin, really pretty
-

Usability

-    There are “tags” everywhere for tagging and then finding anything
-    Assigning a task: create resources on the fly if you have permissions, and put a link in message bar
-    The issue in line editor is easy to edit, and to jump from there to entities
-    Save on issue  line magically appears – no need to press “tab”
-    Unassigned resources can be set on issues
-    Messages on save and every action are really visible
-    Set a default color on resource so that say notification stickies from different assignees are in different colors
-    Worklog week: allow add more the one record per day without reloading the page
-    A new “first start” starting page
-    Badges as balloons for users

Meeting

-    Discussion points have been empowered, and are edited in the same page as the supporting calendar event
-    Now there is a minute for every discussion point
-    Every discussion point can be printed separately
-    Issues can be added by simply selecting text of the minute

Bug fixes

-    Boards: manage the z-order correctly
-    Bug in computing difference in worklog week
-    Bug in saving names of default filters
-    3rd level task ordering alphabetical not by task number (after selecting task)
-    Document: double save “upload” boom!
-    In worklog analysis “move all 796 work logs to selected assignment:” covers the “total” bottom line
-    Icons of menu never reloaded
-    Summa bug on docs
-    Must put operational role on the resources created on the fly
-    On chrome: issue list, change a description, press search button, do not leave the page, save the issue, press search again does not work
-    Priority not set on assignments created by project tree or issues

Notes on usability, game mechanics, and Teamwork’s evolution

happyDoggyIntroduction

The work documented in this post was ignited by receiving the first video tests from usertesting.com and other sources (by the way, Usertesting supplied valuable feedback for a very cheap price), and about at the same time watching a video where Amy Jo Kim from Shufflebrain does a great and inspiring presentation showing how some game mechanics are used by successful social software.

Motivation

Teamwork 4 was realized after studying several texts on usability, and even inventing new techniques, see for example

Smarter search and recent object functionality

Managing with lists vs. managing with trees

But our internal speculations lacked the ideas that may come from an independent fresh look; we received a lot of positive feedback from new users of Teamwork 4, but the problem is that those that do not understand your software, don’t usually give you feedback. So we submitted Teamwork 4.1 to several testers that were first-time users. Then, looking at the testers’ video, these were full of surprises, and quite… painful to watch! Poor users!

Putting together feedback of the testers and the idea of the prime importance of positive feedback from the software, in particular in early usage phases, we designed a new release of Teamwork which we hope should be friendlier for both the first starter and the daily user. Here we document some of the differences. I hope that being this a concrete example of usability evolution, it can be of some interest for those who are working on web application usability in general.

The criteria which we used for evolution of the interface have been inspired also by Amy Jo Kim’s work from Shufflebrain who in this presentation shows how some game mechanics are used by successful social software, and this may inspire in general who is designing any kind of application:

Putting the Fun in Functional: Applying Game Mechanics to Functional Software

This is filled with interesting ideas and observations; to me what results more interesting is not so much the extrapolation of the specifics of game mechanics, but looking at ways to involve with feedback the user in its first steps in your application, and then guide the evolution of it. It is clear from the speech and Q&A part of the video that she has a wide usage and behavior culture which is only partly expressed there.

Limits of game techniques

Looking at human beings as reacting to behavioral stimuli is taking an extremely partial view, which has little explanational mileage, but not zero.

It is true that games tap in primal response patterns; but that is also their limit, at least for games that use proximal metaphors (body movements) and not reasoning, collecting, quantifying. Collecting and quantifying means inserting strings and numbers; something at which Mario Bros. like interfaces are vary very bad at; like using the iPhone keyboard for a lot of data input. But collecting and quantifying is what is most important for a huge number of applications, and where the proximal metaphors simply won’t help.

In playing games, often the player is happy to use “low level” skills; in planning work, not so much. That is also why simple stimulus – response – reinforce metaphors can be effective in gaming, advertising, but not elsewhere; we are not (fortunately) always that stupid. It is surely false that the most powerful way to manipulate human behavior is to do a variable response schedule: a good argument to a responsive crowd can do better than any behavioral proximal stimulus. But that would take us far, on the failures of behaviorism (this is old stuff from the 50’s). Still, when the users of any software are in their first steps, the response patterns of the application matter a lot.

On the Business of software discussion group I’ve recently seen a discussion on a tool for visually collecting bookmarks. The developers chose to develop a desktop client before developing a browser plugin (!); this to me is a clear mistake in adoption path strategy, which does not consider the critical point of lowering the adoption path as much as possible for such a secondary tool. Seeing collecting bookmarks as a “game played in the browser”, makes it immediately that the separate client idea is disastrous!

My point of this section is just that the gaming metaphors can help, but in limited forms and cases.

Examples

The task given to the testers was this:

  • enroll to demo
  • create a project
  • assign yourself to it
  • create a resource
  • assign it to the project
  • create a child task
  • create some issues
  • register some worklog
  • search for a task
  • create a to-do

Going through this, they met some difficulties, which we tried to overcome, and we document all this in this PDF:

TeamworkUsabilityExamples

(1.5 MB – lots of screen shots).

Some ideas in the PDF can be generalized; additional  “behavioral reinforcement” tricks which we put in place:

  • Whatever first tests the user does, he makes a % increment
  • the “user score” (which was already there) has been structured in “badges” (which in our case are balloons of different color)
  • operators are associated to a “color”: so say sticky notes coming from them are immediately distinguishable
Progress feedback always increasing.

Progress feedback always increasing.

Users are associated with a color.

Score generates balloon "badges"

Users are associated with a color.

Users are associated with a color.

N.B. The changes to which we refer are not released yet (May 13th, 2009); the demo and the downloadable version are those before changes, the new release (Teamwork 4.2) will be available in a couple of weeks.

Additional references

The World’s Largest MMORPG: You’re Playing it Right Now

Teamwork weekly news: in Russian, in French and friendlier

Teamwork's user interface in Russian.

Teamwork's user interface in Russian.

We are currently intensely working on release 4.2, which will be a free upgrade as usual. Some of the new features that will be included are

  • translation in French
  • in Russian (!, thank you Kostantine),
  • maybe also Chinese,
  • a new start page,
  • a new feedback messaging system,
  • an empowered meeting management.

In the meantime we also refined our Tomcat configurations on our hosting farm, to make it even faster.

New feedback on save.

New feedback on save.

New feedback on error.

New feedback on error.

New option to pick personal color.

New option to pick personal color.

Teamwork webcast #3

Teamwork webcast #3In this webcast Silvia Chelazzi and Pietro Polsinelli take a look at the requests in the feedback service, which was launched together with Teamwork version 4. Completed, declined and open requests are examined. Also the connection between feature requests and Teamwork development is discussed, with a reference to this blog post.

We’d be happy to get feedback to our feedback on the feedback.

See the webcast in our player here, on Vimeo here.

Suggestions for topics that the webcasts should cover are welcome: use (of course :-) ) the feedback service, with requests as this one.

See all webcasts introductions here.

Teamwork, MySQL and UTF-8

Teamwork is MySQL partner.

Teamwork is MySQL partner.

This is a technical post about Teamwork and its databases.

Many Teamwork customers use MySQL as database for their data; Teamwork as web application supports UTF-8, which means that you can insert data in practically any language; but of course to save such data you need support along the “entire trip”, so your database must support UTF-8 data too. Now unfortunately MySQL default encoding is not UTF-8, but we found a way to work around that, which will be released with version 4.2: the Hibernate schema script generator will create UTF-8 encoding tables, as UTF-8 is supported also at table level (supported by MySQL 5),  so it will work in all cases.

This is done by simply extending the Hibernate MySQL5InnoDBDialect with

@Override
public String getTableTypeString() {
return ” ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_general_ci”;
}

as suggested here.

Remember to use MySQL 5 with referential integrity on and to end you JDBC url with “?useUnicode=true&characterEncoding=UTF-8″!

This is particularly important for our future Chinese customers, now that a Chinese translation is forthcoming.

Next Page »