Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
27 changes: 13 additions & 14 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

To lower the barriers to entry, all of our course content is in Markdown located in the `docs` directory. We then use [mkdocs](https://www.mkdocs.org/) to generate the course pages (thank you [Kevin Bluer!](https://github.com/kevinbluer)).

Markdown is what this file and GitHub README.md files are written in. If you need some help with Markdown, [please see this Markdown cheatsheet.](https://www.markdownguide.org/cheat-sheet/). One note, to make sure links open in a new window, be sure to add `{target=_blank}` at the end of a link. It will look like this:
Markdown is what this file and GitHub README.md files are written in. If you need some help with Markdown, [please see this Markdown cheatsheet](https://www.markdownguide.org/cheat-sheet/). One note, to make sure links open in a new window, be sure to add `{target=\_blank}` at the end of a link. It will look like this:

```
[Text being linked](www.linkaddresshere.com){target=_blank}
```markdown
[Text being linked](www.linkaddresshere.com){target=\_blank}
```

## Steps to GitHub PRs
Expand All @@ -32,7 +32,7 @@ If there have been updates to the `staging` branch since you forked it for your

Learn more on [how to use branches](https://www.atlassian.com/git/tutorials/using-branches) 🌳.

**Please check that your PR doesn't have a conflict! If it does, please:**
**Please check that your PR doesn't have a conflict! If it does, please:**

1. On your local machine, add the staging repo as your upstream branch using `git remote add upstream https://github.com/ConsenSys-Academy/Blockchain-Developer-Bootcamp/tree/staging`
2. Run `git fetch upstream`
Expand All @@ -45,7 +45,7 @@ We use [GitHub issues](https://github.com/ConsenSys-Academy/Blockchain-Developer

### Overview

We use the [Forking Workflow](https://www.atlassian.com/git/tutorials/comparing-workflows/forking-workflow) method of open source contribution. This method allows projects to scale well with not alot of complexity.
We use the [Forking Workflow](https://www.atlassian.com/git/tutorials/comparing-workflows/forking-workflow) method of open source contribution. This method allows projects to scale well with not a lot of complexity.

### Setup

Expand All @@ -63,7 +63,7 @@ Learn more about [working with forks](https://docs.github.com/en/github/collabor

### Issues

[Open a issue](https://github.com/ConsenSys-Academy/Blockchain-Developer-Bootcamp/issues). Issues are good! They are used to point out errors and suggest new features.
[Open a issue](https://github.com/ConsenSys-Academy/Blockchain-Developer-Bootcamp/issues). Issues are good! They are used to point out errors and suggest new features.

### Picking up an Issue

Expand All @@ -88,7 +88,7 @@ Learn more on [how to use branches](https://www.atlassian.com/git/tutorials/usin
4. Write code.
5. Commit code. See style guide.
6. Push the branch to `origin`.
7. Open a pull request against `staging` with the branch. Please note, this is not `main` but `staging` to help us save on GitHub Action minutes, we're doing our best to batch-committ changes.
7. Open a pull request against `staging` with the branch. Please note, this is not `main` but `staging` to help us save on GitHub Action minutes, we're doing our best to batch-commit changes.

## Style Guide

Expand All @@ -100,9 +100,9 @@ Types of branches:

1. `main` - main branch that is live.
2. `staging` - branch you make your PRs against.
2. `feat/FEATURE` - for features.
3. `fix/THING1` - hot fixes.
4. `bug/THING2` - bug fixes.
3. `feat/FEATURE` - for features.
4. `fix/THING1` - hot fixes.
5. `bug/THING2` - bug fixes.

Make sure to:

Expand All @@ -116,7 +116,7 @@ Make sure to:
2. Second `-m`: Describe the code in under 240 characters.
`Added x feature in sample.js and updated README.md in the section required.`

```
```bash
git commit -m "Feature. Added GIF to README.md -m "Added the GIF was required to explain what is Solidity."
```

Expand All @@ -128,13 +128,12 @@ Example: `Closes #7 - Add CONTRIBUTING.md`

### Content style guide

Keep it brief but descriptive. Use links. Avoid jargon.
Keep it brief but descriptive. Use links. Avoid jargon.

When possible, use pictures or gifs.

## Get Support

Open an [issue](https://github.com/ConsenSys-Academy/Blockchain-Developer-Bootcamp/issues) or [join our discord](https://bit.ly/ConsenSysDiscord).

Made with ❤️ by ConsenSys and
![GitHub Contributors Image](https://contrib.rocks/image?repo=ConsenSys-Academy/Blockchain-Developer-Bootcamp)
Made with ❤️ by ConsenSys and ![GitHub Contributors Image](https://contrib.rocks/image?repo=ConsenSys-Academy/Blockchain-Developer-Bootcamp)
10 changes: 5 additions & 5 deletions docs/S00-intro/L1-course-intro/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,26 +10,26 @@ This cohort will launch on September 1st, 2021. You're in good company! Develope

In this course, we start off by teaching you about the underpinnings of the blockchain and show how it all comes together to allow us to build the next generation of web applications.

We will start with an overview of what we call blockchain primitives: The technology brought together underneath the name blockchain. We'll then dive deeper into the specifics of the Ethereum protocol and learn how those blockchain primitives show up there.
We will start with an overview of what we call blockchain primitives: The technology brought together underneath the name blockchain. We'll then dive deeper into the specifics of the Ethereum protocol and learn how those blockchain primitives show up there.

Next, we'll move on to understanding how to write smart contracts. We introduce you to Solidity, a programming language for Smart Contracts that lets you interact with the Ethereum Virtual Machine. We'll learn about Truffle so you can try out your new Solidity skills! We'll also discuss smart contract design patterns and security for your smart contracts.
Next, we'll move on to understanding how to write smart contracts. We introduce you to Solidity, a programming language for Smart Contracts that lets you interact with the Ethereum Virtual Machine. We'll learn about Truffle so you can try out your new Solidity skills! We'll also discuss smart contract design patterns and security for your smart contracts.

After that, we'll introduce you to developer tooling, including Web3 libraries, and other development frameworks.
After that, we'll introduce you to developer tooling, including Web3 libraries, and other development frameworks.

Next, we'll discuss the way in which people are innovating blockchain development, with an introduction to Decentralized Finance (DeFi) and Decentralized Autonomous Organizations (DAOs). While this material may seem a bit overwhelming, it's important to have it available to you as you continue to develop in the space. You can always come back later to reread stuff. And we won't be testing you on it!

Next, we'll touch on scalability: What it is, why it's necessary, and how some folks are proposing we approach it. We'll have a few tutorials allowing you to setup your own development environment for working on some of these scalability solutions.

Last, we'll cover Ethereum 2.0, the upgrading of the Ethereum consensus mechanism from Proof of Work to Proof of Stake. We'll touch on some of the key terms and the current roadmap.

As this course is self-paced, you can feel free to jump around between lessons. The earlier modules have more video and provide more of an overview of the relevant technology, while later modules get technical and have more hands on coding exercises and walk-throughs.
As this course is self-paced, you can feel free to jump around between lessons. The earlier modules have more video and provide more of an overview of the relevant technology, while later modules get technical and have more hands on coding exercises and walkthroughs.

Most modules have graded quizzes at the end of the module.

## Live Presentations

Throughout the course, you'll see that some of the lessons are "Live Presentations," these are demonstrations and walkthroughs of the concepts we're learning in the course. They will be hosted by wide cast of characters, including Academy staff, ConsenSys engineers, and developers working in the space.

**To help us pick the best time for these sessions, along with the weekly Office Hours and study sessions we hope to setup, <a href="https://doodle.com/poll/z5nqdq25zube8tyt#calendar" target="_blank" rel="noopener noreferrer">please fill out this survey</a> to let us know the best time for you to meet.**
**To help us pick the best time for these sessions, along with the weekly Office Hours and study sessions we hope to setup, [please fill out this survey](https://doodle.com/poll/z5nqdq25zube8tyt#calendar){target=\_blank} to let us know the best time for you to meet.**

So without further ado, we wish you the best of luck, and let’s get started!
2 changes: 0 additions & 2 deletions docs/S00-intro/L2-why-learn/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

Initially, most people transitioned into the crypto space because of the vast financial opportunities. To some, they missed an opportunity to buy a token at its early, while others are looking for a chance to grow their salary base, or see an opportunity for a killer app. There's no shame in that! But we do hope you come for the money and stay for the paradigm shift as well.


Blockchain promises to upend the current top-down information systems in our world. Currently, most users of the internet surrender their personal data to centralized databases and services.

To achieve this paradigm shift, blockchain relies fundamentally on two fields of computer science: [**Distributed Computing**](https://en.wikipedia.org/wiki/Distributed_computing){target=\_blank} and [**Cryptography**](https://en.wikipedia.org/wiki/Cryptography){target=\_blank}. We will cover these topics in the first section of the course.
Expand All @@ -18,4 +17,3 @@ While there's enormous promise with blockchain development, it requires an aware
- [Why It's Hard to "Get" Bitcoin: The Blockchain Spectrum](https://unchained-capital.com/blog/blockchain-spectrum/){target=\_blank}
- [The Promise of Blockchain: Vinay Gupta](https://vimeo.com/161183966){target=\_blank}
- [Cryptocurrencies (Last Week Tonight)](https://www.youtube.com/watch?v=g6iDZspbRMg){target=\_blank}

6 changes: 3 additions & 3 deletions docs/S00-intro/L3-course-tips/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@

## Make Sure to Take Basic Training

We built a course called ["Before the Bootcamp: Basic Training,"](https://courses.consensys.net/courses/bootcamp-basic-training){target=_blank} which will help you start off the course on the best foot. We've included all the things we believe make successful students for the Bootcamp. It's a prerequisite for the course!
We built a course called ["Before the Bootcamp: Basic Training"](https://courses.consensys.net/courses/bootcamp-basic-training){target=\_blank}, which will help you start off the course on the best foot. We've included all the things we believe make successful students for the Bootcamp. It's a prerequisite for the course!

## Growth Mindset

Taking an online, self-paced course is a difficult task and requires a certain mindset in order be successful.

First and foremost, foster a growth mindset and take full advantage of the course. Understanding takes time. There will be struggles and frustration when learning something new, especially something as difficult as blockchain development.

Fortunately, enrolling in a continuing education course such as this indicates that you already exhibit a growth mindset. [Here is a short video](https://www.youtube.com/watch?v=Xv2ar6AKvGc){target=_blank} that shows the differences and talks about how you can demonstrate a growth mindset throughout this course.
Fortunately, enrolling in a continuing education course such as this indicates that you already exhibit a growth mindset. [Here is a short video](https://www.youtube.com/watch?v=Xv2ar6AKvGc){target=\_blank} that shows the differences and talks about how you can demonstrate a growth mindset throughout this course.

## Ask All the Questions

Expand All @@ -22,7 +22,7 @@ As you're going through the course, we recommend you take some time to write dow

## Give Yourself Time to Understand

It’s impossible to learn these concepts by hearing them once. Instead, you’ll hear concepts multiple times and begin to learn more each time around. Maybe you’ll start programming and it makes some more sense. Finally, you’ll try to explain it to someone and realize there’s a part you don’t understand, which you then have to go back and learn.
It’s impossible to learn these concepts by hearing them once. Instead, you’ll hear concepts multiple times and begin to learn more each time around. Maybe you’ll start programming and it makes some more sense. Finally, you’ll try to explain it to someone and realize there’s a part you don’t understand, which you then have to go back and learn.

This is the process of learning blockchain, and if you can accept it, it will take the pressure off trying to perfectly understand something the first time you hear it. Instead, try to let it wash over you, ask questions when they come up, but we’re also going to dunk you into the unknown, pull you up to catch your breath, then do it again!

Expand Down
Loading