Skip to content

Commit 9f5088c

Browse files
committed
improve clarity of contribution first steps
1 parent 8c95e5e commit 9f5088c

File tree

3 files changed

+65
-32
lines changed

3 files changed

+65
-32
lines changed

_includes/inner-documentation-sections.html

+12-1
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,19 @@
44

55
<div class="documentation">
66
{% for link in include.links %}
7+
8+
<!-- check if link starts with '#' -->
9+
{% assign first_char = link.link | slice: 0 %}
10+
{% if first_char == '#' %}
11+
{% assign is_url = false %}
12+
{% else %}
13+
{% assign is_url = true %}
14+
{% endif %}
15+
716
<a href="{% if link.link contains '://' %}{{link.link}}{% else %}{{site.baseurl}}{{link.link}}{% endif %}"
8-
class="doc-item doc-item-link">
17+
class="doc-item doc-item-link"
18+
{% if is_url %}target="_blank" rel="noopener noreferrer"{% endif %}
19+
>
920
<div class="doc-item-header">
1021
<i class="{{link.icon}}"></i>
1122
<h4>{{link.title}}</h4>

_overviews/contribute/index.md

+52-31
Original file line numberDiff line numberDiff line change
@@ -3,32 +3,46 @@ title: Becoming a Scala OSS Contributor
33
num: 1
44

55
explore_resources:
6-
- title: Who Can Contribute?
6+
- title: Who can contribute?
77
description: "Open source is for everyone! If you are reading this you are already a contributor..."
88
icon: "fa fa-hand-sparkles"
99
link: "#who-can-contribute-to-open-source"
10-
- title: Why Should I Contribute?
10+
- title: Why should I contribute?
1111
description: "Giving back to the community has many benefits..."
1212
icon: "fa fa-circle-question"
1313
link: "#why-should-i-contribute-to-open-source"
14-
- title: How Can I Contribute?
14+
- title: How can I contribute?
1515
description: "From friendly documentation to coding a bug-fix, there is lots to do..."
1616
icon: "fa fa-clipboard-list"
1717
link: "#how-can-i-contribute-to-open-source"
18-
- title: Where Should I Contribute?
18+
- title: Where should I contribute?
1919
description: "If you are already using OSS, or are curious about projects, you can begin right away..."
2020
icon: "fa fa-check-to-slot"
2121
link: "#how-do-i-choose-where-to-contribute"
2222

2323
compiler_resources:
24-
- title: "Scala 3 Contributing Guide"
25-
description: "Guide to the Scala 3 Compiler and fixing an issue"
26-
icon: "fa fa-code-merge"
27-
link: /scala3/guides/contribution/contribution-intro.html
28-
- title: "Compiler Academy Videos"
29-
description: "In-depth tours of the Scala 3 compiler's internals"
24+
- title: "Join the Compiler Issue Spree"
25+
description: "A tri-weekly event where you can get mentored on the compiler. Register for participation here."
26+
icon: "fa fa-clipboard-user"
27+
link: https://docs.google.com/forms/d/e/1FAIpQLSdhr5Y7QG9VGTGaPn5uS5v3Gz7VtnM5PW-vseZ9OpjseEiwYQ/viewform
28+
- title: "Compiler Academy videos"
29+
description: "In-depth tours of the Scala 3 compiler's internals, aimed to help you get started."
3030
icon: "fa fa-circle-play"
3131
link: https://www.youtube.com/channel/UCIH0OgqE54-KEvYDg4LRhKQ
32+
- title: "Scala 3 contributing guide"
33+
description: "Guide to the Scala 3 Compiler and fixing an issue"
34+
icon: "fa fa-code-merge"
35+
link: https://dotty.epfl.ch/docs/contributing/index.html
36+
37+
spree_resources:
38+
- title: "Scala open source sprees"
39+
description: "Learn about the next upcoming community spree"
40+
icon: "fa fa-hand-holding-heart"
41+
link: "https://github.com/scalacenter/sprees"
42+
- title: "Upcoming conferences"
43+
description: "See upcoming Scala conferences where you can meet open source maintainers."
44+
icon: "fa-regular fa-calendar-check"
45+
link: "https://www.scala-lang.org/events/"
3246

3347
scala_resources:
3448
- title: Documentation
@@ -84,29 +98,36 @@ open-source ecosystem. We have answered some common questions for you below:
8498

8599
{% include inner-documentation-sections.html links=page.explore_resources %}
86100

87-
## Ways to Start Today
101+
## Ways to start today
88102

89-
### The Scala Compiler Academy
103+
### Join the nearest open source spree
90104

91-
The [Scala Center](https://scala.epfl.ch)
92-
runs the **Scala Compiler Academy** project to onboard and educate new people in the Scala 3 compiler.
93-
One of the Compiler Academy
94-
projects is an Issue Spree – an event that takes place every 3 weeks where people fix Scala 3 compiler issues
95-
in pair programming sessions while learning the compiler together. You can apply for the Spree participation
96-
by [filling this form](https://docs.google.com/forms/d/e/1FAIpQLSdhr5Y7QG9VGTGaPn5uS5v3Gz7VtnM5PW-vseZ9OpjseEiwYQ/viewform).
105+
The [Scala Center](https://scala.epfl.ch) hosts open source sprees, colocated with other Scala events.
106+
In the spree, regular project maintainers will mentor you to create your first contribution to the project.
97107

98-
Before you begin, you can learn more about the Scala 3 compiler
99-
from the following links:
108+
{% include inner-documentation-sections.html links=page.spree_resources %}
109+
110+
### So you want to improve the Scala 3 compiler...
111+
112+
The [Scala 3 compiler](https://github.com/lampepfl/dotty) is an open source project.
113+
If you are curious about contributing but don't know how to begin, the [Scala Center](https://scala.epfl.ch)
114+
runs the **Scala Compiler Academy** project to onboard and educate new people to the project. You can join the regular
115+
**Issue Spree**, watch in-depth videos, and read the contributing guide:
100116

101117
{% include inner-documentation-sections.html links=page.compiler_resources %}
102118

103-
### So You Want To Write A Library...
119+
#### Which areas are perfect for newcomers?
120+
- Adding new linting options, which help enforce cleaner code.
121+
- Improving the clarity of error messages, so that the user understands better what went wrong.
122+
- Add IDE quick-fix actions to error messages, e.g. PR [lampepfl/dotty#18314](https://github.com/lampepfl/dotty/pull/18314).
123+
124+
### So you want to write a library...
104125

105126
Read these guides if you are a maintainer of a library, or are thinking of starting a new project:
106127

107128
{% include inner-documentation-sections.html links=page.library_resources %}
108129

109-
### Want to Improve Scala Itself?
130+
### Want to improve Scala itself?
110131
The Scala programming language is an open source project with a very
111132
diverse community, where people from all over the world contribute their work,
112133
with everyone benefiting from friendly help and advice, and
@@ -115,7 +136,7 @@ kindly helping others in return.
115136
Read on to learn how to join the Scala community and help
116137
everyone make things better.
117138

118-
## Contributing to the Scala Project
139+
## Contributing to the Scala project
119140

120141
**What Can I Do?**
121142
That depends on what you want to contribute. Below are some getting started resources for different contribution domains. Please read all the documentation and follow all the links from the topic pages below before attempting to contribute, as many of the questions you have will already be answered.
@@ -139,12 +160,12 @@ When contributing, please follow:
139160
* The [Scala Code of Conduct](https://scala-lang.org/conduct/)
140161
* The [Inclusive Language Guide][inclusive-language-guide]
141162

142-
### Community Tickets
163+
### Community tickets
143164

144165
All issues can be found in the [Scala bug tracker](https://github.com/scala/bug), or the [Scala 3 issue tracker](https://github.com/lampepfl/dotty/issues). Most issues are labeled
145166
to make it easier to find issues you are interested in.
146167

147-
### Tools and Libraries
168+
### Tools and libraries
148169

149170
The Scala ecosystem includes a great many diverse open-source projects
150171
with their own maintainers and community of contributors. Helping out
@@ -154,7 +175,7 @@ other projects, see the
154175
[Libraries and Tools section](https://scala-lang.org/community/#community-libraries-and-tools)
155176
on our Community page.
156177

157-
### Scala Community Build
178+
### Scala community build
158179

159180
The Scala community build enables the Scala compiler team
160181
to build and test a corpus of
@@ -171,7 +192,7 @@ open-source Scala library or tool, please visit the
171192
for guidelines on what projects are suitable for the community build
172193
and how projects can be added.
173194

174-
## Your Questions, Answered
195+
## Your questions, answered
175196

176197
{% capture backButton %}
177198
<p>
@@ -182,7 +203,7 @@ and how projects can be added.
182203
</p>
183204
{% endcapture %}
184205

185-
### Who Can Contribute To Open Source?
206+
### Who can contribute to open source?
186207
{{backButton}}
187208
- **Everyone:** No matter your skills or background, non-technical or otherwise, there is always
188209
[some way](#how-can-i-contribute-to-open-source) you can contribute to a project.
@@ -194,7 +215,7 @@ and how projects can be added.
194215
- **Got a cool idea?** Perhaps you have gained confidence in your skills and are looking to give back to the community,
195216
start a new project that fills that perfect niche, or maybe is the life-changing tool everyone never knew they needed.
196217

197-
### Why Should I Contribute to Open Source?
218+
### Why should I contribute to open source?
198219
{{backButton}}
199220
- **The world is built on OSS:**
200221
Open Source Software (OSS) libraries are the flesh on top of the bone structure of the core language itself.
@@ -212,7 +233,7 @@ and how projects can be added.
212233

213234
The above benefits are something good to achieve regardless of your level of experience.
214235

215-
### How Can I Contribute to Open Source?
236+
### How can I contribute to open source?
216237
{{backButton}}
217238
- **Documentation:** Often it is outdated, incomplete, or with mistakes. If you see a way to improve the
218239
documentation for a project you are using, you should consider if the project is accepting contributions,
@@ -242,7 +263,7 @@ The above benefits are something good to achieve regardless of your level of exp
242263
[Library Author's Guide](https://docs.scala-lang.org/overviews/contributors/index.html) is an
243264
excellent resource on how to get started.
244265

245-
### How Do I Choose Where To Contribute?
266+
### How do I choose where to contribute?
246267
{{backButton}}
247268
- **Ask yourself, what am I using?** The best project to contribute to is the one that you are using yourself.
248269
Take an inventory of your work and hobby projects: what OSS libraries do they use? Have you ever encountered bugs in

_sass/layout/table-of-content.scss

+1
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@
6666
margin-bottom: 10px;
6767

6868
.fa,
69+
.fa-regular,
6970
.fa-brands {
7071
font-size: 1.563rem;
7172
margin-right: 14px;

0 commit comments

Comments
 (0)