GitHub
GitPod
Github Codespaces
In this guide, we’ll provide a very straightforward explanation about Github Codespaces and why we think it’s an excellent tool for learning coding-related skills, that’s why it’s one of the leading teaching tools we use at 4Geeks.
In plain English: GitHub Codespaces is a computer builder “on the go”. Instead of using your own computer or working on your code locally; instead, you can ask Github Codespaces to create a remote computer and give you access to it; you can use that remote computer to work on your project or code.
One of the most significant issues when learning a new coding-related skill is configuration. E.g: When I started learning PHP (a coding language) it took me 1 week to successfully install it on my computer.
Following online tutorials is tricky because everyone has a different computer, with different configurations, operating systems, languages, etc.
When you open a GitHub repository using Github Codespaces instead of your local computer, you will use a perfectly-configured environment to run your tutorial or project.
Are you familiar with GitHub and what a Git Repository is? If you already know what Github and Git are please skip this next 3 paragraphs, otherwise read it carefully:
Git: You can think of GIT like “Google Docs but for code”. Software developers don’t like to save their progress on their own personal computers. Saving your code in your local hard drive makes it hard to share with your teammates; everyone in your team should have access to the code almost in real-time. Git was created to help share your project code among the team, track changes from everyone and help merge and sync those changes back into every single developer in the team.
Github: On the other hand, you can think about GitHub as a social network for coders and development teams; instead of sharing images like Instagram or videos like Tiktok you will be sharing code; people can review and comment on your code, and you can invite people to contribute to your code, etc.
GitHub is a website that compliments Git significantly; Github will provide you with an online website or URL where you can upload your code (using Git) and invite other people to review it.
With codespaces, your code will still be saved on GitHub (using git), but instead of downloading the code to work on your computer, you press a button to open a remote computer called a “Codespace” that will contain the latest version of your code.
Note: this example is for educational purposes on how to work in a professional setting. Each project we will undertake will have its instructions in the Readme.md file, please read carefully on how to initialize them.
Let’s follow the process exactly like a real-life software developer would do. For example:
Maria gets hired as a developer to join an ongoing project; during the first day of work she needs to get access to the code, so she asks the project leader for the project URL within github.com.
To work on your projects you will need access to the terminal, you can always find or open the terminal by clicking on the hamburger menu on the top left and selecting the “terminal” => “new terminal”
option.
Every computer has a terminal, and you use it to do almost everything you want: open an application, create a file, folder, etc. However, in Codespaces, the terminal will only control the virtual computer.
You don't have to learn the terminal's commands yet, but we strongly recommend reading this lesson to get familiar and know its functions and limitations.