Learning patterns/Learn in detail about existing tools before building new ones
What problem does this solve?
editYou 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?
editReach 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
editIt 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
editWe 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