The power of 'just do it'
When you're working in a large team it is the case that from time to time someone has an idea how to increase the effectivity or productivity by using a new technology or tool.
The common way of incorporating enhancements in general is to do a little bit of research on the topic, then present the results to a project leader or manager and after that decide to do more investigation or incorporate the thing into the project.
The downsides of this way are, that it can take quite some time and maybe the person responsible for the final decision does not have enough knowledge and overview of the whole process and environment to be able to make the right decisions.
But sometimes this whole trouble can be saved with the what I call "just do it"-approach. This means that one or several developers set up a new tool or process and "just use it" without asking their bosses or team leads before.
At my workplace there are several examples for this and many of them have proven to enhance our daily work for a great extend. For example, some developers just set up a CVS server and began using version controlled sourcecode. Bam! Development speed went up, because they could exchange their source faster and adapt to the source changes of others more easily. But then some conflicts and subtle changes of the code more often broke existing functionality. Another "just do it" solved the problem: automated test cases. At the same time the "just do it" of Extreme Programming also enhanced our productivity and output even if we didn't adopt all of its points and requirements (for example Pair Programming, which at that time was still a cornerstone of XP but seems not to be anymore today, nowadays it seems more to resemble Ping-Pong Programming). Also the introduction of Bugzilla sped up our development speed and aided documentation and traceability of changes and decisions.
In the new project two weeks ago I saw the need for a change of the communication practices. The team has grown to a size, where discussions and decisions cannot involve the whole team anymore without ending in trouble or boredom. But letting only a small group decide on the steps affecting the whole team holds the risk of ignoring the knowledge and experience of the rest of the team. So after a small dispute with some members of the team I decided for myself to set up a forum (namely phpBB3) to get around this problem and presented it to the team. It seems now, that the forum will get accepted as a communication platform where discussions can take place utilizing the know-how of the whole team while avoiding boring and unproductive meetings. We'll see how it will integrate but the chances are not that bad that this will be another "just do it" success story.
Something which is a requirement for such successes is, is the support from the applications in questions. If it takes days to set up a server or to integrate it into an existing environment (common logins/LDAP, mail, etc.) the tool almost rules itself out of the possible candidate list for "just do it"s. It is essential that it is possible to set up an application or server quickly and with as minimal configuration effort as possible. Also it must be possible to move an application from a personal or test-machine to a server if it proves to be that successful that the need for a more reliable environment arises. The application should support backup and restore of configuration options and the database contents.
I personally think, at our workplace the largest leaps in efficiency, productivity and reliability have had their seed in such "just do it" actions. Mostly the developers theirselves know best how to improve their work so why make it hard for them to change structures or procedures? Or even worse, force applications and tools on them which add no value to their work without asking them beforehand...