When I first used a Mac with Apple M1, there is a tool called Rosetta that helps to use apps built for a Mac with an Intel processor. I like the word “Rosetta” and found it is original from Rosetta Stone - is an ancient artifact that played a crucial role in deciphering Egyptian hieroglyphs, a script that had been undecipherable for centuries.
Today, the term “Rosetta Stone” is also used metaphorically to refer to something that provides the key to understanding a complex or difficult subject.
I believe in software development, and especially when Agile is a buzz everywhere with a core value of “Working software over comprehensive documentation” which can sometimes lead to documentation being seen as less critical. However, it’s important to note that Agile doesn’t advocate for no documentation at all. Instead, it suggests creating just enough documentation to support the development process and ensure the team and stakeholders have the necessary information.
The level of detail in documentation should indeed be adapted based on the type and complexity of the software being developed. For small or straightforward projects, brief and high-level documentation might suffice. This could include basic setup instructions, a high-level overview of the system, and simple user guides. We can focus on clean code and well software design, inline documentation can replace these formal documentation. For the complex system, comprehensive documentation is usually necessary. We can include detailed architecture design diagrams, database ERD, API documentation. To me, I like to use C4 Model for visualizing software architecture.
When your team with varying levels of knowledge, it’s crucial to tailor the document to accommodate. We should structure the documentation on layers, from a high-level overview to the details design then do the adjustment based on the empiricism.
To me, as a developer, the source code is my favorite museum to exhibit the Rosetta Stone.
P.S. The Rosetta Stone is located in the British Museum in London. The stone was discovered in July 1799 by French soldiers digging the foundations of a fort in the town of Rashid (modern-day Rosetta) in Egypt’s Nile Delta.