Learning patterns/Learn in detail about existing tools before building new ones

A learning pattern forteamwork
Learn in detail about existing tools before building new ones
problemYou need to write a new technical tool and there are already similar but unsuitable tools in existence.
solutionGet in touch with all of the existing similar tools you can before you start work.
creatorT Arrow
created on16 June, 2017

What problem does this solve? edit

You need a technical tool that doesn't already exist. However there are a range of existing tools out there that do a similar but not quite suitable job.

What is the solution? edit

Reach out to all of the existing tool maintainers you can for any tools that are similar. Get in contact with as many of them as possible so you can all learn all the details, advantages, disadvantages etc...

This meant we were able to take the best aspects of all the tools rather than continued to all work in different directions.

Things to consider edit

It can be hard to even discover all the tools that might be similar. You may need to do a lot of research and talk to people in similar areas before you've found them all. You may need to also do this by, email, searching code repositories like GitHub or reaching out through people you know rather than just on Wiki.

When to use edit

We utilised the WMF European Hackathon for this purpose and arranged video calls with some other people who weren't there at the same time. Work was done on the fatameh tool which seeks to provide a good alternative to (or replacement for): https://tools.wmflabs.org/sourcemd/, https://www.wikidata.org/wiki/Wikidata:WikiProject_Source_MetaData/PMIDTool, https://github.com/harej/BiblioWikidata

See also edit

Related patterns edit

External links edit

References edit