Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Intro to open source with knative blog series p0 and p1 #5618

Merged
merged 43 commits into from
Jul 11, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
dd9c6eb
Started first getting started blog post
Cali0707 Jun 26, 2023
784c961
First draft of p0 of getting started blog
Cali0707 Jun 29, 2023
0e772f0
Update blog/docs/articles/getting-started-blog-p0.md
Cali0707 Jun 29, 2023
6863e91
Updated config to add blog post 0 to nav
Cali0707 Jul 4, 2023
4e69c07
First draft of getting started with open source blog
Cali0707 Jul 5, 2023
ae5803c
Added open source intro post to nav
Cali0707 Jul 5, 2023
ab2d665
Updated links in blog series
Cali0707 Jul 5, 2023
3ab11fd
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
11a5641
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
a48573f
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
5f4565e
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
8a08000
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
1b3ccdf
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
4b59415
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
b7c9065
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
6d24ea1
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
f993a2c
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
8d92bb6
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
a87923c
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
d1b2772
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
5cb8c0a
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
3510609
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
c721568
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 5, 2023
5483ca2
Fixed the list rendering
Cali0707 Jul 5, 2023
48e1b0b
Updated links
Cali0707 Jul 5, 2023
3ead2c8
Fixed link
Cali0707 Jul 5, 2023
86c6e53
Added link to next post
Cali0707 Jul 5, 2023
f1d9af9
Added exclamation
Cali0707 Jul 5, 2023
ddf1248
Add explanation of free software
Cali0707 Jul 5, 2023
262b353
Added images to first post
Cali0707 Jul 5, 2023
789adb0
Fixed image links
Cali0707 Jul 5, 2023
0e4e226
fixed image link
Cali0707 Jul 5, 2023
b5878a9
Added images to post 1
Cali0707 Jul 5, 2023
442af41
Update blog/docs/articles/getting-started-blog-p0.md
Cali0707 Jul 6, 2023
26f2172
Remove unneeded image
Cali0707 Jul 6, 2023
6f6ea11
Updated workflow image, and added link to cncf
Cali0707 Jul 6, 2023
eff2a09
Addressed PR comments
Cali0707 Jul 10, 2023
7b38092
Hopefully fixed link
Cali0707 Jul 10, 2023
b95907e
Bumped article dates
Cali0707 Jul 11, 2023
677ae3f
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 11, 2023
21d9f0e
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 11, 2023
4eadabe
Update blog/docs/articles/getting-started-blog-p1.md
Cali0707 Jul 11, 2023
7dd5ee1
Update blog/config/nav.yml
Cali0707 Jul 11, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions blog/config/nav.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,8 @@ nav:
- releases/announcing-knative-v0-3-release.md
- releases/announcing-knative-v0-2-release.md
- Articles:
- articles/getting-started-blog-p1.md
- articles/getting-started-blog-p0.md
- articles/improved-ha-configuration.md
- articles/from-cloudevent-to-apache-kafka-records-part-two.md
- articles/knative-serving-in-k0s.md
Expand Down
79 changes: 79 additions & 0 deletions blog/docs/articles/getting-started-blog-p0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
# Getting Started in Open Source with Knative Part 0: Introduction and Overview

**Authors: [Calum Murray](https://www.linkedin.com/in/calum-ra-murray/) Software Engineering Intern @ [Red Hat](https://www.redhat.com/en), and [Leo Li](https://www.linkedin.com/in/haocheng-leo/) Software Engineering Intern @ [Red Hat](https://www.redhat.com/en)**

**Date: 2023-07-11**

![](/blog/images/getting-started-blog-series/post0/person-chasing-logo.png)

## What is this blog series?

This blog series is a collection of posts aimed at helping new contributors get started with contributing code to Knative. So, if you are a new contributor
or are considering becoming a contributor, welcome! Also, if you are an existing contributor and interested in learning more about how some of the fundamental
concepts of Knative work, we hope that you will also learn something from these posts.

### Posts in this series

1. [Introduction and Overview (this post!)](/blog/articles/getting-started-blog-p0)
2. [Introduction to Open Source](/blog/articles/getting-started-blog-p1)
3. Environment setup for Knative (coming soon)
4. Making API changes (coming soon)
5. Controllers (coming soon)
6. Testing (coming soon)
7. Binding with other languages (coming soon)

## Why are we writing this blog series?

In the month prior to writing this blog post, we started our internship at Red Hat and began working on Knative. As such, we have just spent the past month
learning all about how Knative works and making our first contributions to the project. We understand many of the pain points that new contributors face because
we just faced them ourselves. Our hope is that by creating this blog series we can alleviate some of these pain points for the contibutors who come after
us.

![](/blog/images/getting-started-blog-series/post0/reading-side-doodle.png)

With that in mind, let's discuss what pain points we have been experiencing. The first is that Knative is a very large project, with many massive repositories.
As a new contributor it can be very difficult to know how to navigate the codebase to find where to make your change. There is also a lot of "magic" in the
Knative codebase, where you have to name functions in certain ways and/or there is code generation. This makes it really hard to understand where you should
make your changes until you have spent enough time making changes to understand it. There are also some pretty intensive test suites which can be very confusing
to new contributors, so even if you manage to make your change, it can still be a struggle to test it.

We want to alleviate these pain points for new contributors like you, so that it is easier for any new developers to join us. We want to speed up your learning
process, reduce your confusion, and make sure that you enjoy getting started contributing to this amazing community and project. So, let's dive in and get
started!

## How can you get the most from this blog series?

At this point, you're probably wondering (at least we hope you are) how you can get the most out of these blogs? Well, it's actually pretty simple! All you
have to do is actively learn as you follow along, ask the community questions when you get stuck, and stick with it! Let's talk a little bit more about how you
can do this.

### Active Learning

Whenever there are code samples, actually type it out yourself and try to understand each line of code. We know that copying and pasting would be faster, and
definitely easier in the short term, but you might miss out on some of the understanding that way.

If, as you are reading the articles you ever have any questions, look it up online! There are a plethora of amazing resources out there to help you and being
able to find them is a valuable skill in and of itself. We will do our best to provide you with a curated list of articles to go and learn more with each post
in this series to provide a starting point to your research, although we encourage you to read beyond what we provide.

![](/blog/images/getting-started-blog-series/post0/person-falling-logo.png)

### Ask the community

But what if you get stuck or have a question, you've researched it yourself, and you still don't have an answer? Well, that's when the Knative community comes
into the picture. The community is very supportive and happy to help, you if you have any questions: don't be shy, ask on slack! Depending on the topic, you
may want to ask it via Slack in [knative-eventing](https://cloud-native.slack.com/archives/C04LMU33V1S), [knative-functions](https://cloud-native.slack.com/archives/C04LKEZUXEE),
[knative-serving](https://cloud-native.slack.com/archives/C04LMU0AX60), or some other `knative-*` channel. If you are unsure, you can always default to asking
in [knative-contributors](https://cloud-native.slack.com/archives/C04LN0620E8). There are also weekly or bi-weekly working group meetings, so if for example you
have a question about a topic related to eventing you could also attend the eventing working group meeting and ask it there. We all want you to succeed, so don't
hesitate to reach out.

### Stick with it

Finally, please stick with it! We know that it can be intimidating to get started, and it can be discouraging to try and make a change and get stuck. But if
you stick with us through this blog series, we promise you that it will be easier. Also, once you get started working on your first issues/PRs, feel free
to refer back to these blog posts to remember how things work. Your patience and persistence will pay off in the long run, so don't give up!

We hope that you've enjoyed this first post, and we look forward to seeing you in [the next one](/blog/articles/getting-started-blog-p1)!

![](/blog/images/getting-started-blog-series/post1/thanks.png)
Loading
Loading