Knowledge Base
This Knowledge Base is maintained by our consultants and reflects the current set of tools and technologies we use. It gives some advice on when to use or avoid each item, and in some cases includes tips and comparisons with other items. Each item has a category and a status and one or more tags. The tags help identify related items and can be used when searching the Knowledge Base.
Current IW technology landscape
A detailed, up-to-date view of tools and technologies currently in use across our clients can be found in the IW technology landscape spreadsheet. This is maintained by the Tech Leads on each account and can be used to supplement this knowledge base with details on exactly what is in use on each account.
Category
There are four supported categories.
- Tool: Software used in the delivery or operation of software systems (e.g. code editors, issue trackers, code linters) or standalone components of running systems (e.g. databases, message queues).
- Technique: A way of doing things (e.g. pair programming, Kanban, short lived feature branches, impact mapping).
- Framework: Programming languages and frameworks (e.g. Java, Spring, Python, Flask).
- Platform: Environments within which our software runs (e.g. Linux, Docker, Android, Kubernetes, Apache Spark).
Status
There are three supported statuses, which indicate our consensus or majority view. But it is worth reading the commentary for each item as we try to reflect the breadth of experience across the company. Some caution items, in particular, may be loved by some but disliked by others — hence proceed with caution, but do not reject out of hand.
- Default: A recommended default choice for this category. There can be more than one default choice for some categories, meaning all are good in their own way.
- Consider: Alternatives to the default items, worth considering especially where specific factors make these items a particularly good fit for a certain use case.
- Caution: Not something we would usually recommend. Either there are better alternatives or the value of this item is questionable, controversial or unproven. We advise clients to consider alternatives.