Any word on supporting diagrams inside GitHub flavored markdown?
I always just use ASCII art in code blocks.
Architecture.md
11–20 of 159 posts
Re: Architecture.md
#12If anyone knows of other open source projects that do this, it would be particularly useful.
Re: Architecture.md
#13In a big project, when I'm hunting for code that does something and I have no familiarity of the codebase, I want to be able to follow a chain of ARCHITECTURE documents from the root of the project to the implementation of the feature I'm looking for.
If your documentation is poor enough that I resort to finding a string used in the feature and grepping the whole source tree for it, then your codebase will be tricky for someone new to get started on.
Re: Architecture.md
#14Any word on supporting diagrams inside GitHub flavored markdown?
Re: Architecture.md
#15Any word on supporting diagrams inside GitHub flavored markdown?
Re: Architecture.md
#16Re: Architecture.md
#17* Initiators (things that receive, decode, and validate input)
* Controllers (Business logic containers. One function refers to one business action)
* Services (Used by controllers to effectuate commands. Services absolutely cannot call other services)
* Cross Cutting concerns (Common model objects, logging, top level error handling, etc)
This allows even a new person to pick up a project and orient themselves immediately.
Re: Architecture.md
#18 1. Spend a long time writing the doc.
2. Wait for a person to chance upon it.
3. Hope you anticipated their questions.
It seems like the most important thing a person can do is reverse this: 1. Say who the doc is for.
2. Find that person. Ask them to try a lil contribution.
3. Frantically write / revise the doc.
IMO it's a lot like creating a presentation. The earlier the feedback the better!Re: Architecture.md
#19An architecture document should be the code equivalent of a combined street map and tourist guide. Its purpose is to bring strangers up to a minimum level of familiarity with the code as quickly as possible. That includes where things are, why it was architected this way, things to look out for, and a few interesting points of weirdness perhaps.
Re: Architecture.md
#20So one thing we've done is write all of our applications the exact same way with well defined terms (on a wiki) and a commitment to no more than 4 layers. * Initiators (things that receive, decode, and validate input) * Controllers (Business logic containers. One function refers to one business action) * Services (Used by controllers to effectuate commands. Services absolutely cannot call other services) * Cross Cutt…