Documentation for New Developers
See original GitHub issueI think we should have some doc pages targetting new contributors.
I was once talking with @s4chin and he had a very simple question “How do I understand mitmproxy’s codebase? It’s huge and I have no idea where to start.”
Understanding new codebases isn’t an easy task, but we can surely tell people where to start.
Some contents (off the top of my head):
- The
Hacking
&Testing
section from the Readme - Describe the basic folder structure
- what is where
- what are netlib/pathoc etc.
- how they fit into mitmproxy
- ‘Suggested/Further Readings’ for topics like HTTP/2 etc.
- There are a lot of people who just know python and want to contribute to open source projects but may not know all the advanced networking topics involved.
- I didn’t understand 70% of what is on the How mitmproxy works when I read it for the first time.
Some of the files already have a top-level docstring. Extending this to every file would be great.
Thoughts?
Seeing Anaconda’s Developer Docs finally made me open this issue.
Issue Analytics
- State:
- Created 7 years ago
- Reactions:2
- Comments:5 (3 by maintainers)
Top Results From Across the Web
Technical Documentation in Software Development: Types, ...
фAll software development products require technical documentation. This article describes tech documentation types, best practices, ...
Read more >Docs for Developers – Documentation for Everyone
Docs for Developers demystifies the process of creating great developer documentation, following a team of software developers as they work to launch a...
Read more >14 Types of Software Development Documentation (Plus ...
Software development documentation helps developers, their colleagues and users understand how the software works.
Read more >How to Write Documentation For Your Next Software ...
For your developers, the most important product documentation is the system documentation. It explains how the software product works, why it ...
Read more >8 Great Examples of Developer Documentation
8 Great Examples of Developer Documentation · The Developer Home Page · A Getting Started Page · Language-specific Guides · Copy-paste Ready Samples....
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
As a newomer myself I am experiencing a big difficulty in understanding mimtproxy. For me the biggest problem is to understand the module structures. I think it would really help if there were a module-tree documentation (Maybe there is already one somewhere but I am just too incompetent to find it). There is a very big posibility that a lot of new contributers would come if you explain the code structures of mitmproxy and therefore make the entry for newcomers easier.
Something similar: Guido and others are working on a guided tour to CPython’s source code. (see discussion)