Skip to content

add "back to top" links #4

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

Open
wants to merge 36 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
facb0d9
updated python material
Jul 25, 2021
73b4920
updated python material
Jul 25, 2021
1e20085
updated python material
Jul 25, 2021
2f33c84
updated basics with new TOC
Dec 4, 2021
3156d26
updated python with new TOC
Dec 4, 2021
e993e1e
renamed python
Dec 4, 2021
a3821a7
renamed python
Dec 4, 2021
71cd58d
add logos
Dec 4, 2021
1a83045
added images
Dec 4, 2021
462692c
update all notebooks with logos
Dec 4, 2021
e6785d5
add more logos
Dec 4, 2021
c6a87ba
delete unnecessary files
Dec 4, 2021
87e69ea
update README
Dec 4, 2021
7da30f8
remove extra TOC
Dec 5, 2021
09d6744
add banners to python tutorials
Dec 5, 2021
89c6293
fix for decorators session
Dec 5, 2021
59c7642
update TOC
Dec 5, 2021
c5d3f7f
Set theme jekyll-theme-minimal
hejazizo Dec 5, 2021
d96f91f
Updating The meaning of Underscore Tutorial
MahtabRanjbar Dec 6, 2021
a2b83df
add CONTRIBUTING instrcutions
Dec 6, 2021
28c1bc9
Merge pull request #2 from MahtabRanjbar/main
hejazizo Dec 6, 2021
6e2dcf1
update single underscore notebook
Dec 6, 2021
8def712
add how to contribute
Dec 6, 2021
d743e21
Update pathlib tutorial
MahtabRanjbar Dec 8, 2021
a44a006
Merge pull request #3 from hejazizo/update-tutorial
hejazizo Dec 9, 2021
b7423e2
update sessions style
Dec 9, 2021
554f7f1
update pathlib session titles
Dec 9, 2021
43885b0
add "back to top" links
sfarajnia Dec 9, 2021
530ac47
add concurrency sessions
Dec 9, 2021
4a7ab73
Merge branch 'main' into salman_modify_links
sfarajnia Dec 10, 2021
f46bb47
add concurrency sessions
Dec 11, 2021
d258ca1
fix image path
Dec 11, 2021
b7b6b42
add back_to_top ICONS
sfarajnia Dec 11, 2021
b821611
Merge branch 'main' of https://github.com/hejazizo/CS-Tutorial into main
sfarajnia Dec 11, 2021
59174d8
Merge branch 'salman_modify_links' into main
sfarajnia Dec 11, 2021
6d7a8cf
updat back_to_top ICONS
sfarajnia Dec 11, 2021
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
108 changes: 108 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
# How to Contribute to CS-Tutorial

## Working on a new feature or fixing a bug

If you would like to add a new feature or fix an existing bug, we prefer that you open a new issue on the CS-Tutorial repository before creating a pull request.

It’s important to note that when opening an issue, you should first do a quick search of existing issues to make sure your suggestion hasn’t already been added as an issue.

**To open a Github issue, go to the CS-Tutorial repository, select “Issues”, “New Issue” then “Feature Request” or “Bug Report” and fill out the template.**

The CS-Tutorial team will then get in touch with you to discuss if the proposed feature aligns with the roadmap, and we will guide you along the way in shaping the proposed feature so that it could be merged to the CS-Tutorial codebase.

## What is a Pull Request (PR)?

This is how the GitHub team defines a PR:

> “Pull requests let you tell others about changes you’ve pushed to a branch in a repository on GitHub. Once a pull request is opened, you can discuss and review the potential changes with collaborators and add follow-up commits before your changes are merged into the base branch.”

This process is used by both CS-Tutorial team members and CS-Tutorial contributors to make changes and improvements to CS-Tutorial.

## What to know before opening a PR

### Draft PRs

If you're ready to get some quick initial feedback from the CS-Tutorial team, you can create a draft pull request.

### PRs should be a reasonable length

If your PR is greater than 500 lines, please consider splitting it into multiple smaller contributions.


## How to open a PR and contribute code to CS-Tutorial Open Source

### 1. Forking the CS-Tutorial Repository

Head to CS-Tutorial repository and click ‘Fork’. Forking a repository creates you a copy of the project which you can edit and use to propose changes to the original project.

Once you fork it, a copy of the CS-Tutorial repository will appear inside your GitHub repository list.

### 2. Cloning the Forked Repository Locally

To make changes to your copy of the CS-Tutorial repository, clone the repository on your local machine. To do that, run the following command in your terminal:

```
git clone https://github.com/hejazizo/CS-Tutorial.git
```

The link to the repository can be found after clicking Clone or download button as shown in the image below:

Note: this assumes you have git installed on your local machine. If not, check out the [following guide](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) to learn how to install it.

### 3. Update your Forked Repository

Before you make any changes to your cloned repository, make sure you have the latest version of the original https://github.com/hejazizo/CS-Tutorial.git repository. To do that, run the following commands in your terminal:

```
cd CS-Tutorial
git remote add upstream https://github.com/hejazizo/CS-Tutorial.git
git pull upstream main
```

This will update the local copy of the CS-Tutorial repository to the latest version.

### 4. Implement your code contribution

At this point, you are good to make changes to the files in the local directory of your project.

Alternatively, you can create a new branch which will contain the implementation of your contribution. To do that, run:

```
git checkout -b name-of-your-new-branch
```

### 5. Push changes to your forked repository on GitHub

Once you are happy with the changes you made in the local files, push them to the forked repository on GitHub. To do that, run the following commands:

```
git add .
git commit -m ‘fixed a bug’
git push origin name-of-your-new-branch
```

This will create a new branch on your forked CS-Tutorial repository, and now you’re ready to create a Pull Request with your proposed changes!

### 6. Opening the Pull Request on CS-Tutorial

Head to the forked repository and click on a _Compare & pull_ request button.

This will open a window where you can choose the repository and branch you would like to propose your changes to, as well as specific details of your contribution. In the top panel menu choose the following details:

- Base repository: `hejazizo/cs-tutorial`
- Base branch: `main`
- Head repository: `your-github-username/cs-tutorial`
- Head branch: `name-of-your-new-branch`

Once you are happy with everything, click the _Create pull request_ button. This will create a Pull Request with your proposed changes.

### 8. Merging your PR and the final steps of your contribution

Once you open a PR, a member from the CS-Tutorial team will get in touch with you with the feedback on your contribution. In some cases, contributions are accepted right away, but often, you may be asked to make some edits/improvements. Don’t worry if you are asked to change something - it’s a completely normal part of software development.

If you have been requested to make changes to your contribution, head back to the local copy of your repository on your machine, implement the changes and push them to your contribution branch by repeating instructions from step 5. Your pull request will automatically be updated with the changes you pushed. Once you've implemented all of the suggested changes, tag the person who first reviewed your contribution by mentioning them in the comments of your PR to ask them to take another look.
Finally, if your contribution is accepted, the CS-Tutorial team member will merge it to the CS-Tutorial codebase.

### 10. Non-code contributions

Contributing doesn’t start and end with code. You can support the project by planning community events, creating tutorials, helping fellow community members find answers to their questions or translating documentation and news. Every contribution matters!
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,42 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"# Introduction\n",
"<img src=\"../../images/banners/python-basics.png\" width=\"600\"/>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# <img src=\"../../images/logos/python.png\" width=\"23\"/> Introduction \n",
"\n",
"- Python was created in 1990 by [Guido van Rossum](https://en.wikipedia.org/wiki/Guido_van_Rossum).\n",
"- Python 3 released in 2008.\n",
"- Specifically designed as an easy to use language.\n",
"- High focus on readability of code."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a class=\"anchor\" id=\"table_of_contents\"></a>\n",
"## Table of Contents\n",
"\n",
"\n",
"* [Why Choose Python](#why_choose_python)\n",
" * [Python is Popular](#python_is_popular)\n",
" * [Python is Interpreted](#python_is_interpreted)\n",
" * [Python is Free](#python_is_free)\n",
" * [Python is Portable](#python_is_portable)\n",
" * [Python is Simple](#python_is_simple)\n",
" * [But It’s Not That Simple](#but_it’s_not_that_simple)\n",
"* [What can you do with python?](#what_can_you_do_with_python?)\n",
"* [<img src=\"../../images/logos/checkmark.png\" width=\"20\"/> Conclusion](#conclusion)\n",
"\n",
"---"
]
},
{
"cell_type": "markdown",
"metadata": {},
Expand Down Expand Up @@ -44,7 +72,8 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## Why Choose Python\n",
"<a class=\"anchor\" id=\"why_choose_python\"></a>\n",
"## Why Choose Python [<img src=\"../../images/logos/back_to_top.png\" width=\"22\" align= \"center\"/>](#table_of_contents)\n",
"\n",
"If you’re going to write programs, there are literally dozens of commonly used languages to choose from. Why choose Python? Here are some of the features that make Python an appealing choice."
]
Expand All @@ -53,7 +82,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### Python is Popular\n",
"# <a class=\"anchor\" id=\"python_is_popular\"></a>\n",
"### Python is Popular [<img src=\"../../images/logos/back_to_top.png\" width=\"22\" align= \"center\"/>](#table_of_contents)\n",
"\n",
"Python has been growing in popularity over the last few years. The [2018 Stack Overflow Developer Survey](https://insights.stackoverflow.com/survey/2018) ranked Python as the 7th most popular and the number one most wanted technology of the year. [World-class software development companies around the globe use Python every single day](https://realpython.com/world-class-companies-using-python/).\n",
"\n",
"According to [research by Dice](https://insights.dice.com/2016/02/01/whats-hot-and-not-in-tech-skills/) Python is also one of the hottest skills to have and the most popular programming language in the world based on the [Popularity of Programming Language Index](https://pypl.github.io/PYPL.html).\n",
Expand All @@ -65,7 +96,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### Python is Interpreted\n",
"<a class=\"anchor\" id=\"python_is_interpreted\"></a>\n",
"### Python is Interpreted [<img src=\"../../images/logos/back_to_top.png\" width=\"22\" align= \"center\"/>](#table_of_contents)\n",
"\n",
"Many languages are compiled, meaning the source code you create needs to be translated into machine code, the language of your computer’s processor, before it can be run. Programs written in an interpreted language are passed straight to an interpreter that runs them directly.\n",
"\n",
"This makes for a quicker development cycle because you just type in your code and run it, without the intermediate compilation step.\n",
Expand All @@ -86,7 +119,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### Python is Free\n",
"<a class=\"anchor\" id=\"python_is_free\"></a>\n",
"### Python is Free [<img src=\"../../images/logos/back_to_top.png\" width=\"22\" align= \"center\"/>](#table_of_contents)\n",
"\n",
"The Python interpreter is developed under an OSI-approved open-source license, making it free to install, use, and distribute, even for commercial purposes.\n",
"\n",
"A version of the interpreter is available for virtually any platform there is, including all flavors of Unix, Windows, macOS, smartphones and tablets, and probably anything else you ever heard of. A version even exists for the half dozen people remaining who use OS/2."
Expand All @@ -96,15 +131,19 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### Python is Portable\n",
"<a class=\"anchor\" id=\"python_is_portable\"></a>\n",
"### Python is Portable [<img src=\"../../images/logos/back_to_top.png\" width=\"22\" align= \"center\"/>](#table_of_contents)\n",
"\n",
"Because Python code is interpreted and not compiled into native machine instructions, code written for one platform will work on any other platform that has the Python interpreter installed. (This is true of any interpreted language, not just Python.)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Python is Simple\n",
"<a class=\"anchor\" id=\"python_is_simple\"></a>\n",
"### Python is Simple [<img src=\"../../images/logos/back_to_top.png\" width=\"22\" align= \"center\"/>](#table_of_contents)\n",
"\n",
"As programming languages go, Python is relatively uncluttered, and the developers have deliberately kept it that way.\n",
"\n",
"A rough estimate of the complexity of a language can be gleaned from the number of keywords or reserved words in the language. These are words that are reserved for special meaning by the compiler or interpreter because they designate specific built-in functionality of the language.\n",
Expand All @@ -118,7 +157,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### But It’s Not That Simple\n",
"<a class=\"anchor\" id=\"but_it’s_not_that_simple\"></a>\n",
"### But It’s Not That Simple [<img src=\"../../images/logos/back_to_top.png\" width=\"22\" align= \"center\"/>](#table_of_contents)\n",
"\n",
"For all its syntactical simplicity, Python supports most constructs that would be expected in a very high-level language, including complex dynamic data types, structured and functional programming, and [object-oriented programming](https://realpython.com/python3-object-oriented-programming/).\n",
"\n",
"Additionally, a very extensive library of classes and functions is available that provides capability well beyond what is built into the language, such as database manipulation or GUI programming.\n",
Expand All @@ -130,7 +171,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## What can you do with python?\n",
"<a class=\"anchor\" id=\"what_can_you_do_with_python?\"></a>\n",
"## What can you do with python? [<img src=\"../../images/logos/back_to_top.png\" width=\"22\" align= \"center\"/>](#table_of_contents)\n",
"\n",
"- Automate Simple tasks.\n",
" * Searching for file and editing them.\n",
" * Scraping information from a website.\n",
Expand All @@ -152,13 +195,22 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## Conclusion\n",
"<a class=\"anchor\" id=\"conclusion\"></a>\n",
"## <img src=\"../../images/logos/checkmark.png\" width=\"20\"/> Conclusion [<img src=\"../../images/logos/back_to_top.png\" width=\"22\" align= \"center\"/>](#table_of_contents)\n",
"\n",
"This section gave an overview of the Python programming language, including:\n",
"\n",
"A brief history of the development of Python\n",
"Some reasons why you might select Python as your language of choice\n",
"Python is a great option, whether you are a beginning programmer looking to learn the basics, an experienced programmer designing a large application, or anywhere in between. The basics of Python are easily grasped, and yet its capabilities are vast."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
Expand All @@ -177,7 +229,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.10"
"version": "3.7.6"
}
},
"nbformat": 4,
Expand Down
Loading