Introduction to Cryptocurrency, Bitcoin, and Buying Crypto


This is module 1 of 10 for the Blockchain and Cryptocurrency course.

>> Module 2

Cryptocurrency is a fascinating area of finance that is changing the way that we think about money and investing. Cryptocurrency is built on blockchain technology, but before you try to understand blockchain, it can be helpful to start with some first-hand experience in cryptocurrency. This module will give you an introduction with a focus on Bitcoin as the first major cryptocurrency. You will also get some first-hand experience in buying crypto, which is a great way to start learning about cryptocurrency exchanges and regulation.

Readings

Cryptocurrency 101

Bitcoin

Cryptocurrency Exchanges

Cryptocurrency Regulation

+

Self-Directed Learning

Buy some AVAX. There is nothing like first-hand experience. There are also many ways to buy cryptocurrency. Before you jump in, you should do some research on the different ways to buy crypto. I would recommend trying Coinbase if you are new to this area. However, there are other exchanges where you can buy crypto.

+

Online Discussion of Module Topic

Write down your thoughts and experiences while you’re learning. This is a helpful practice for processing new information and building on what you’ve learned. It’s also a way for other students to learn from you and for you to learn from other students. Here are some prompts to get you started for writing about the module topic:

  • Describe your experience of buying crypto.
  • How did you decide on your preferred method for buying crypto?
  • What information did you need to provide to purchase the crypto?
  • Did you use a bank account or some other means of payment?
  • What fees did you pay for the transaction?
  • What price did you get for the purchase? Was this based on an exchange? Was there a spread?
  • Explain the role of regulation in buying crypto.

+

Technical Exercise

The technical exercises in this course are designed to introduce students to the basics of developing an Ethereum decentralized application.

We will use GitHub throughout the course for technical exercises and project work. Here is some background documentation that explains a GitHub repository, fork, and branch, which are referenced below.

Follow these steps to complete the technical exercise for Module 1:

Step 1. Join the GitHub repository for the course. The GitHub repository for the Winter 2022-2023 course is:

https://github.com/DePaulBlockchainCourse/winter-2022-2023

This is a private repository for students. Email Professor Black your preferred email address to be granted access to the repository.

Step 2. Fork the course’s GitHub repository on GitHub. A fork is a new repository that shares code and visibility settings with the original repository. Your personal fork is where you will complete the assignments. To create a fork, follow the instructions for Forking a repository on GitHub Docs.

Step 3. Install Git on your computer. You will need Git to download and upload assignments to GitHub. Follow these Instructions for Installing Git on the official Git site. Installing on a Mac is straightforward. Windows is a little more complicated.

Windows note: **If you are on a Windows computer, you should use the Git for Windows installation. The installation will ask for a default text editor and Visual Studio Code is a good option. If you are new to this, first install Visual Studio Code for your text editor. Once you are ready, install Git for Windows, which will result in an application on your PC called Git Bash. All default options for the installation questions (other than VSC) are OK. Once you have completed the installation, you can open Git Bash as an application.**

Step 4. Clone your forked Github repository on your computer. First, navigate to your new “Fork” repository using the small arrow on the upper right of the GitHub Fork dropdown as shown here:

An example of a Fork URL is: https://github.com/lblack18/winter-2022-2023.

Once you are in your personal Fork repository, follow the instructions for Cloning a repository on GitHub Docs. On this Docs page, there are tabs with distinct instructions based on operating system (Mac, Windows, Linux) and method of cloning (GitHub CLI, Desktop, and Web browser). The default method is Web browser.

Windows note: **To change the current working directory using Git Bash, you can right click on a folder and select “Git Bash Here.”**

Step 5. Create a personal branch. It will help to have a personal branch of your fork, so that you can get updates to your main branch in the next module. To create a personal branch

  • Open terminal or GitBash in your course directory
  • Change into the folder (directory) with the cloned repository (e.g., type cd winter-2022-2023)
  • Type git checkout -b firstnameLastnameDev

This will create a separate branch in your fork that you can use to upload your completed assignments.

Step 6. Read the first four chapters of the Eloquent Javascript e-book. The technical exercise for the first module is an assessment of introductory Javascript (no prior knowledge required). This will help prepare you for later modules.

Step 7. Complete the Module 1 assignment on your cloned GitHub repository. Open the jsExercises.js file on your computer using your text editor. Answer the questions and save the file. To “push” your changes to your Fork on GitHub, follow these steps:

  • Open terminal or GitBash in your course directory
  • Type git status (to see the changes in red)
  • Type git add .
  • Type git status (to see the changes now in green)
  • Type git commit -m “jsExercises.js”
  • Type git push

You can then check to confirm that this uploaded the changes to your Fork. You can make changes at any time prior to the assignment deadline. If you are unable to complete any question, please submit questions or comments in lieu of an answer so that you can receive feedback. 

Step 8. Install Node.js and NPM on your computer. To understand why Node.js and NPM are important, read this background information on Web Applications. To set up your local machine environment with the required dependencies for the course, specifically Node.js and NPM, see the following link for installing these on an OSX, Windows, or Linux machine: https://docs.npmjs.com/downloading-and-installing-node-js-and-npm

Before downloading Node.js and NPM, the instructions direct you to install nvm (Node Version Management). Clicking on the nvm link will take you to the nvm repository on GitHub. Scroll down to the section in the README about Installing and Updating and follow the instructions there.

Windows note: **To install nvm, you will need to use your GitBash application. Open the GitBash application and enter the first line of code in the nvm installation instructions. You may get an error about not having a “profile.” To create a profile, you can run “touch .bashrc” in GitBash. Then rerun the line of code from the nvm instructions. Follow the instructions in the GitBash output for finalizing the installation.**

Confirm that you have installed nvm by running “command -v nvm” in the Terminal or GitBash. The output should be “nvm.”

Once you have nvm installed, you install Node.js and npm (together) by running the command “nvm install --lts“, which will install the latest version of the software with long time support (lts is recommended for most users). You can confirm that you have installed them correctly by running “node -v”, which will return the version number of the software you have installed. This completes the installation of Node.js and NPM on your computer.

External references for help in installing Node.js and npm: How the heck do you install npm? by J. Collinsworth; Install Node.js Locally with Node Version Manager (nvm) by Osio Labs

Step 9. Read two introductory articles on Ethereum development. We recommend reading the following two Ethereum development articles in preparation for future technical exercises:

https://ethereum.org/en/developers/docs/intro-to-ethereum/

https://ethereum.org/en/developers/docs/ethereum-stack/