Skip to content

Commit f34aefb

Browse files
Add GSoD 2021 Project Ideas List
Signed-off-by: Ayan Sinha Mahapatra <ayansmahapatra@gmail.com>
1 parent d032397 commit f34aefb

2 files changed

Lines changed: 369 additions & 0 deletions

File tree

docs/source/gsod-toc.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ More about of GSoD - <https://developers.google.com/season-of-docs>_
1111
.. toctree::
1212
:maxdepth: 2
1313

14+
gsod/gsod-2021
1415
gsod/gsod-2020
1516
gsod/gsod_2019_report
1617
gsod/gsod_2019

docs/source/gsod/gsod-2021.rst

Lines changed: 368 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,368 @@
1+
.. _GSoD2021:
2+
3+
===================================
4+
:index:`Google Season of Docs 2021`
5+
===================================
6+
7+
AboutCode.org is applying to be a mentoring organization for the `Google Season of Docs (GSoD) 2021 <https://developers.google.com/season-of-docs>`_.
8+
9+
In the event that our proposal is accepted, we'll be looking for fellow members of the FOSS
10+
community with technical writing skills and an interest in helping. If you're interested, keep
11+
reading to get a sense of what we have in mind for GSoD 2021.
12+
13+
----
14+
15+
.. contents:: Contents
16+
:local:
17+
:depth: 2
18+
19+
----
20+
21+
AboutCode Overview
22+
------------------
23+
24+
AboutCode.org is a community of developers behind a suite of Software Composition Analysis tools
25+
(command line tools, web-based and API servers and desktop applications) and data for
26+
license, origin and security:
27+
28+
* Where does the code come from?
29+
* What software packages are present?
30+
* What is its license? copyright?
31+
* Is the code secure, maintained, well coded?
32+
* Are there any known vulnerabilities?
33+
34+
All these questions are important, and are relevant to millions of free and open source
35+
software components available on the web for reuse. The answers are critical to ensure that
36+
everyone can safely consume free and open source software.
37+
38+
39+
*Join us to make it so!*
40+
41+
42+
AboutCode Projects
43+
~~~~~~~~~~~~~~~~~~
44+
45+
Our focus for GSoD 2021 is on `ScanCode Toolkit <https://github.com/nexB/scancode-toolkit>`_
46+
`ScanCode.io <https://github.com/nexB/scancode.io>`_, and
47+
`Scancode Workbench <https://github.com/nexB/scancode-workbench>`_, but proposals to
48+
improve the documentation for other AboutCode projects are welcome.
49+
50+
See :ref:`aboutcode-project-overview` for a complete list of AboutCode projects.
51+
52+
Technology
53+
~~~~~~~~~~
54+
55+
We primarily use Python for AboutCode software. There is also some code in C/C++ or other
56+
languages. We use Electron/JavaScript for the ScanCode Workbench desktop application.
57+
Scancode.io is based on Django and JavaScript.
58+
59+
Our domain includes text analysis and processing (e.g., for copyright and license
60+
detection), parsing (for package manifest formats), binary analysis (to detect the origin and
61+
license of binaries), web-based tools and APIs (to expose the tools and libraries as web
62+
services) and low-level data structures for efficient matching (such as Aho-Corasick and
63+
other automata).
64+
65+
For documentation we primarily use reStructured Text files with Sphinx and ReadTheDocs.
66+
67+
68+
Contact Info
69+
~~~~~~~~~~~~
70+
71+
Join the chat online or by IRC at https://gitter.im/aboutcode-org/gsod-season-of-docs.
72+
Introduce yourself and start the discussion!
73+
74+
You can also contact:
75+
76+
- the primary org admin directly: @pombredanne and pombredanne@gmail.com
77+
- the GSoD coordinator directly: jmhoran@nexb.com
78+
79+
Technical Writing Skills Needed
80+
-------------------------------
81+
82+
Incoming technical writers will need the following skills:
83+
84+
- Ability to install and configure open source code from GitHub.
85+
- Ability to understand and run programs from the command line in a terminal window.
86+
- An interest in FOSS licensing and software code and origin analysis.
87+
- Ability to pick up working knowledge of our tools with mentor guidance.
88+
89+
During the application process and during a GSoD project with us you will learn how to:
90+
91+
- Design and create documentation as Tutorials, HowTo Guides, Reference or Discussions.
92+
- Optionally, creating video socumentation guides for tools and UI.
93+
- Create and edit documentation files in reStructured Text.
94+
- Manage documentation files with Sphinx.
95+
- Publish documentation to ReadTheDocs.
96+
97+
We are happy to help you get up to speed. The more you are able to demonstrate ability and
98+
skills in advance, the more likely we are to choose your application!
99+
100+
About Your Project Application
101+
------------------------------
102+
103+
Check out the `GSoD Tech Writer Guide <https://developers.google.com/season-of-docs/docs/tech-writer-guide>`_
104+
and `Statement Template <https://developers.google.com/season-of-docs/docs/tech-writer-statement>`_.
105+
106+
Your statement of interest should be in the range of 1,000 words,
107+
and should contain the following information, plus anything else that
108+
you think is relevant:
109+
110+
- Personal information, i.e. Your name and contact details.
111+
112+
- A Project statement.
113+
114+
- A detailed description of your idea including an explanation of what
115+
it will contribute to the project.
116+
117+
- Description of your relevant skills.
118+
119+
- Professional information: Description of previous work, existing solutions,
120+
open-source projects, preferably with links.
121+
122+
- Proposed Timeline
123+
124+
- Proposed budget or hourly rate
125+
126+
- Do you plan to have any other commitments during GSoD that may affect your work? Any
127+
vacations/holidays? Will you be available full time to work on your project? Please apply
128+
only if this is a serious full time commitment during the GSoD time frame.
129+
130+
Join the chat online or by IRC at https://gitter.im/aboutcode-org/gsod-season-of-docs.
131+
Introduce yourself and start a discussion!
132+
133+
An excellent, competitive way to demonstrate your capability would be to submit a documentation
134+
improvement (small changes/typos are welcome but doesn't demostrate your ability) to an AboutCode
135+
project, especially to ScanCode Toolkit, Scancode.io and ScanCode Workbench.
136+
137+
You can pick a project idea from the list below. You can also submit
138+
`Your Documentation Project Ideas <#your-documentation-project-ideas-2021>`_.
139+
140+
Our Documentation Project Ideas
141+
-------------------------------
142+
143+
Note that the AboutCode focus for GSoD 2021 is on ScanCode Toolkit, Scancode.io and ScanCode
144+
Workbench, although proposals to improve the documentation for other AboutCode projects are welcome.
145+
146+
`Your Documentation Project Ideas <#your-documentation-project-ideas-2021>`_ are welcome too! Please
147+
chat about them to increase your chances of success!
148+
149+
----
150+
151+
Docs to Integrate third-party libraries in scancode.io pipelines
152+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-------------------
153+
154+
* Create documentation on integrating third-party libraries in a scancode.io pipeline step.
155+
* Add a simple tutorial example of adding a new pipeline with a third-party library.
156+
157+
Note: Filter current Scancode.io GitHub Issues by Label 'documentation' to see many examples of
158+
specific areas for improvement.
159+
160+
- **Level**
161+
162+
- Intermediate
163+
164+
- **Tech**
165+
166+
- Command line processing in a Linux-compatible terminal window
167+
- Python [Django]
168+
- GitHub, reStructured Text and Sphinx
169+
170+
- **URLs**
171+
172+
- https://scancodeio.readthedocs.io
173+
- https://github.com/nexB/scancode.io
174+
- https://gitter.im/aboutcode-org/discuss
175+
176+
- **Mentors**
177+
178+
- https://github.com/johnmhoran
179+
- https://github.com/mjherzog
180+
- https://github.com/tdruez
181+
182+
183+
Improve scancode.io Documentation
184+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
185+
186+
* Upgrade the scancode.io documentation on ReadTheDocs by streamlining and re-organizing it.
187+
* Upgrade the scancode.io documentation on creating projects and running pipelines.
188+
* Upgrade the scancode.io documentation on making sense of the results using the UI.
189+
* Apply the Tutorial, HowTo, Reference and Discussions framework.
190+
* An alternative could be creating `videos explaining the UI <https://opensource.com/article/21/3/video-open-source-tools>`_
191+
* Implement process to sync documentation changes with releases.
192+
193+
Note: Filter current Scancode.io GitHub Issues by Label 'documentation' to see many examples of
194+
specific areas for improvement.
195+
196+
- **Level**
197+
198+
- Intermediate
199+
200+
- **Tech**
201+
202+
- Command line processing in a Linux-compatible terminal window
203+
- Python [Django]
204+
- GitHub, reStructured Text and Sphinx
205+
206+
- **URLs**
207+
208+
- https://scancodeio.readthedocs.io
209+
- https://github.com/nexB/scancode-io
210+
- https://gitter.im/aboutcode-org/discuss
211+
212+
- **Mentors**
213+
214+
- https://github.com/johnmhoran
215+
- https://github.com/mjherzog
216+
- https://github.com/tdruez
217+
218+
219+
Improve ScanCode-Toolkit Plugin Documentation
220+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
221+
222+
* Explain the Plugin Architechture used in scancode-toolkit
223+
* Explain the types of plugins used in scancode-toolkit
224+
(pre-installed/seperately-installed) and (post-scan, pre-scan, scanner)
225+
* An exhaustive list of all plugins and what they do, with links to their code.
226+
227+
Note: Filter current scancode-toolkit GitHub Issues by Label 'documentation' to see
228+
many examples of specific areas for improvement.
229+
230+
- **Level**
231+
232+
- Intermediate
233+
234+
- **Tech**
235+
236+
- Command line processing in a Linux-compatible terminal window
237+
- GUI design
238+
- GitHub, reStructured Text and Sphinx
239+
240+
- **URLs**
241+
242+
- https://scancode-toolkit.readthedocs.io
243+
- https://github.com/nexB/scancode-toolkit
244+
- https://gitter.im/aboutcode-org/scancode
245+
246+
- **Mentors**
247+
248+
- https://github.com/johnmhoran
249+
- https://github.com/majurg
250+
- https://github.com/AyanSinhaMahapatra
251+
252+
253+
Documentation to create ScanCode-Toolkit Plugins
254+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
255+
256+
* How to create a minimal plugin adding some functionality to scancode-toolkit.
257+
* Useful examples of different types of plugins
258+
* Using `nexb/skeleton <https://github.com/nexB/skeleton>`_ as a template for plugins.
259+
260+
Note: Filter current scancode-toolkit GitHub Issues by Label 'documentation' to see
261+
many examples of specific areas for improvement.
262+
263+
- **Level**
264+
265+
- Intermediate
266+
267+
- **Tech**
268+
269+
- Command line processing in a Linux-compatible terminal window
270+
- GUI design
271+
- GitHub, reStructured Text and Sphinx
272+
273+
- **URLs**
274+
275+
- https://scancode-toolkit.readthedocs.io
276+
- https://github.com/nexB/scancode-toolkit
277+
- https://gitter.im/aboutcode-org/scancode
278+
279+
- **Mentors**
280+
281+
- https://github.com/johnmhoran
282+
- https://github.com/majurg
283+
- https://github.com/AyanSinhaMahapatra
284+
285+
286+
Automated Documentation generation on Scancode Data
287+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
288+
289+
The goal of this project is to create a documentation section automatically for all
290+
scancode data attributes.
291+
292+
There is currently no single file in the codebase (like Django models), but there are
293+
several of them present throughout the codebase.
294+
295+
* A first step should be to investigate whether there are existing automated documentation
296+
tools for Python that would help us get started.
297+
298+
* Use attrs classes all the way for models and define/design a simple way to add a
299+
docstring/attribute of sorts to each model and attribute.
300+
301+
* Make a list of all data attributes to document (that appears in the scancode result)
302+
and implement the above for all of them.
303+
304+
* Have/create a way to get that integrated into sphinx, possibly with custom extensions.
305+
306+
* Integrate with existing doc generation, and make it a part of doc publication, with
307+
docs to help contributors keep the data documentation updated.
308+
309+
It should be hosted as a section in the scancode RTD documentation::
310+
311+
`scancode-toolkit.readthedocs.io/en/latest/scancode-data/`
312+
313+
You will work closely with a mentor to add the documentation and implement the automatic
314+
documentation creation process.
315+
316+
- **Level**
317+
318+
- Advanced
319+
320+
- **Tech**
321+
322+
- Command line processing in a Linux-compatible terminal window
323+
- Python programming
324+
- GitHub, reStructured Text and Sphinx
325+
326+
- **URLs**
327+
328+
- https://github.com/nexB/scancode-toolkit/issues/2008
329+
- https://scancode-toolkit.readthedocs.io/en/latest/index.html
330+
- https://github.com/nexB/scancode-toolkit
331+
- https://gitter.im/aboutcode-org/scancode
332+
333+
- **Mentors**
334+
335+
- https://github.com/johnmhoran
336+
- https://github.com/majurg
337+
- https://github.com/AyanSinhaMahapatra
338+
339+
----
340+
341+
.. _your_documentation_project_ideas-2021:
342+
343+
Your Documentation Project Ideas
344+
--------------------------------
345+
346+
Download and install `ScanCode Toolkit <https://github.com/nexB/scancode-toolkit>`_,
347+
`ScanCode.io <https://github.com/nexB/scancode.io>`_, and
348+
`Scancode Workbench <https://github.com/nexB/scancode-workbench>`_ and try them out.
349+
For example, you may try scanning an open source software package in a technology
350+
with which you are familiar. What are the documentation weak points?
351+
352+
353+
* Is it difficult to get started? A **Tutorial** documentation opportunity.
354+
* Is it difficult to accomplish a specific objective? A **How-To** documentation opportunity.
355+
* Are the capabilities of the tool too mysterious? Do you want to know more about what you can do
356+
with it? A **Reference** documentation opportunity.
357+
* Do you feel that you need to understand its concepts better in order to use it and trust it? Do
358+
you want to know more about how the code scanning actually works? A **Discussion** documentation
359+
opportunity.
360+
361+
Feel free to propose and describe your own documentation ideas.
362+
Mentoring
363+
---------
364+
365+
We welcome new mentors to help with the program. We require some understanding of the project
366+
domain to join as a mentor.
367+
368+
Contact the team on Gitter at https://gitter.im/aboutcode-org/gsod-season-of-docs

0 commit comments

Comments
 (0)