generated from datatrail-jhu/DataTrail_Template
-
Notifications
You must be signed in to change notification settings - Fork 2
/
07_building_resumes_05_github.Rmd
102 lines (50 loc) · 10.1 KB
/
07_building_resumes_05_github.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
```{r, include = FALSE}
ottrpal::set_knitr_image_path()
```
# Improving Your GitHub Profile
**Be sure to follow the steps in this chapter before moving on to the associated quiz**
After discussing the required application materials, such as a resume and cover letter, and your personal website and the projects you've worked on, the next step in getting ready to apply to jobs is to be sure that your professional social media presence is complete and up-to-date. While this may not be a *requirement* of a job application, it is likely that your social media presence will be looked at during the interview process. Thus, while not required, it is incredibly important. In this and the following few lessons in this course, we'll walk through the necessary steps to get each of your professional social media platforms up-to-date. In this lesson, our focus will be on ensuring your GitHub presence and profile is ready for the job market.
### Profile
For each profile, it's a good idea to **include a picture of yourself** along with your profile. This does not have to be a glamour shot or professional photo, but it will ideally be a photo of you (without anyone else in the photo) with a simple and ideally solid color background. In fact, the same photo can be used across platforms. For example, if you have a photo on GitHub, it can be helpful to use that same photo on LinkedIn and Twitter, so that people can be sure that the accounts all belong to the same individual - you! Note that if you are not comfortable sharing an image of yourself on the Internet, it can be helpful to add some recognizable image to each of your social media accounts for the aforementioned reason. This could be a picture you've taken of a location or of your pet, or something of that nature. You'll also want to add a **brief description** to your GitHub profile and a **link to your website**.
To make all of these changes to your GitHub profile, first [login to GitHub](https://github.com/). Helpfully, if you haven't completed your profile yet, GitHub will likely prompt you to add profile information. Below, your username on GitHub, you'll want to first click, "Edit profile."
![Edit Profile](https://docs.google.com/presentation/d/10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs/export/png?id=10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs&pageid=g3a45d4729b_0_0)
You'll want to fill in all the following fields with accurate information:
![Public profile](https://docs.google.com/presentation/d/10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs/export/png?id=10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs&pageid=g3fe8a5363e_0_1)
* __Name__ - at least your first name. Include your last name too if you're comfortable doing so.
* __Bio__ - a brief bio about your interests and skills
* __URL__ - the link to your website
You can additionally include a public email address, a Company, and your Location, if you're comfortable doing so. Know that this information will be shared with GitHub and anyone who looks at your GitHub page. This information can be updated or deleted at any point in time.
Once you've filled in these fields, click on "Upload new picture" at the right-hand side of the screen. Using the window that pops up, navigate to the location of the photo you'd like to use as your profile picture and click "Open." Adjust the box to position and crop the photo as you desire and click "Set new profile picture." The new picture will appear on your Public Profile.
![Upload new picture](https://docs.google.com/presentation/d/10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs/export/png?id=10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs&pageid=g3fe8a5363e_0_50)
Once you've filled in the necessary information and added the photo you'd like to use, click "Update profile." Your profile will now be up to date!
To see an example of a complete GitHub profile, we'll take a look at [Jenny Bryan's GitHub](https://github.com/jennybc):
![Jenny Bryan's GitHub Profile](https://docs.google.com/presentation/d/10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs/export/png?id=10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs&pageid=g3fe8a5363e_0_65)
Helpfully, Jenny Bryan has included a picture, her name, a brief bio that let's us know where she works, a link to her website, and her location. She's also specified six pinned repositories.
### Pinned Repos
In addition to updating your personal information, you also have the opportunity to choose which repositories are displayed on your personal GitHub page. GitHub will choose six repos to display; however, you can customize which repos are shown here by clicking "Customize your pinned repositories."
![Customize your pinned repositories](https://docs.google.com/presentation/d/10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs/export/png?id=10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs&pageid=g3fe8a5363e_0_5)
A new box will appear and you'll have the opportunity to select six repos to remain pinned on your GitHub profile. You'll want to have the six projects your most proud, that are the most interesting, or that demonstrate your skills best appear. Once you've checked six boxes, click "Save pinned repositories."
![Save pinned repositories.](https://docs.google.com/presentation/d/10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs/export/png?id=10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs&pageid=g3fe8a5363e_0_12)
These repos will now be displayed on your profile.
![Pinned Repositories](https://docs.google.com/presentation/d/10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs/export/png?id=10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs&pageid=g3fe8a5363e_0_17)
### GitHub Contributions
When applying to jobs, future co-workers and hiring mangers will almost certainly take a look at your GitHub to get a sense for your programming skills. Additionally, they will also often look to see what type of community member you are. Data scientists are often members of teams, and this means that hiring managers will look for individuals who work well with and are willing to help others. One way to demonstrate this ability is by contributing to others work on GitHub.
To get started being a good community member, there are two ways to contribute early on:
* submitting PRs (pull requests) that fix typos
* submitting PRs that address issues on others' repos
#### Fixing Typos
Unlike sending an email letting the developer know about a typo and the developer then having to go in and make the edit themselves, the great thing about pull requests on GitHub is that you do the work (fix the typo) and then the developer (the person whose GitHub repo it is) simply has to accept the pull request for the changes to be made. The amount of work on the developer is minimal, but your contribution is important and helps the community by making documentation clearer! Thus, if you see a typo in someone else's documentation or README file, feel free to edit the typo and submit a pull request!
#### Addressing GitHub Issues
Further, for R packages that are hosted on GitHub, there are often *many* issues that users and other developers submit to the repository. It can be a lot on developers to keep up with these issues. Fortunately, you can take a look at the issues on packages you use to see if there are any issues you can help with. If you figure out how to address the issue, you can again submit a PR to the developers and they can determine if they want to accept your PR.
Specifically, many packages also include tags within issues stating where they feel help is wanted on an issue (using the tag "help wanted") or where developers feel there's an opportunity for individuals with less experience to contribute (using the tag "good first issue").
![`ggplot2` Open Issues](https://docs.google.com/presentation/d/10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs/export/png?id=10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs&pageid=g3fe8a5363e_0_22)
For example, let's take a look at `ggplot2`. On the day this lesson was written, there were 91 [open issues](https://github.com/tidyverse/ggplot2/issues). If you were to click on the "good first issue" tag at the top of this page, GitHub would filter to include issues that were specified to be "good first issues" for less experienced developers. You could look through these issues and see if you could contribute. If you could, you could submit a PR to the developers!
![`ggplot2` open issues and "good first issue"](https://docs.google.com/presentation/d/10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs/export/png?id=10VRTUHsYh8hdYBily8cexSdP-sviYCIo_gzh1y8PsRs&pageid=g3fe8a5363e_0_28)
Note that addressing issues on GitHub is not required. You should not accept unhelpful pull requests just for the sake of submitting pull requests. Only submit a pull request that solves an issue. In fact, `ggplot2` and many other packages have [contributing guidelines](https://github.com/tidyverse/ggplot2/blob/master/CONTRIBUTING.md) to help define when and how to best make a contribution to the package's development. Read [these guidelines now](https://github.com/tidyverse/ggplot2/blob/master/CONTRIBUTING.md) to get a sense of when it's best and how to make a contribution to someone else's package.
#### StackOverflow
Finally, answering others' question on [StackOverflow](www.stackoverflow.com) in a helpful manner is a good way to help the R community. While some hiring managers may not look there, others do. Thus, it's always good to have a reputation as a team player online. Again, only answer questions where you actually answer the other individual's question in a helpful, complete, and kind manner. Your reputation on this platform will be assessed by hiring managers and you never want to look like a jerk.
### Summary
In this lesson we discussed the importance of having a complete GitHub profile and how to be a helpful and productive community member online by fixing typos on others' repositories, addressing GitHub issues, and answering questions on StackOverflow.
### Additional Resources
* [You Do Not Need to Tell Me I Have a Typo in My Documentation](https://yihui.name/en/2013/06/fix-typo-in-documentation/), by [Yihui Xie](https://yihui.name/en/about/)
* [Contributing to `ggplot2` development](https://github.com/tidyverse/ggplot2/blob/master/CONTRIBUTING.md)