💻 Chromebook Ubuntu Troubleshooting and Device Switching Guide
This blog requires 0 prior coding experience and starts from the very basics.
If you were lost in class, this will pull you back to the right track.
✅ When to Use This Blog
Use this guide if:
- You are currently using a Chromebook or a KASM device.
- You are having trouble setting up the virtual environment and VS Code.
- You’re done with how slow Chromebooks are and want to switch to a new device.
Why Do We Need Ubuntu?
You can access VS Code directly on your Chromebook.
However, running VS Code this way removes many important features.
To get the full development experience, we’ll:
- Set up Ubuntu (Linux environment).
- Run VS Code inside Linux.
Prerequisites
Before starting:
🖥️ Setting Up on Chromebook (KASM)
- Go to kasm.opencodingsociety.com/#/login.
- Log in with your GitHub username (typed in the email field) and the same password.
-
On the right, click the orange Ubuntu Noble → Launch Session.
-
Right-click inside the session → Open Terminal Here.
- In the terminal, run:
```bash
mkdir opencs
cd opencs
git clone
⚠️ If you don’t have your own repository, go to this link and click Fork.
Continue setup:
cd student/
./scripts/activate.sh # Enter your GitHub username and email
./scripts/venv.sh
code .
When VS Code opens, go to Extensions (icon with 4 small squares) and install:
Python
Jupyter Notebook
🔄 Next Time You Log In
When you come back later:
cd opencs/student
source venv/bin/activate
code .
⚠️ Common Chromebook Issues
Ubuntu Freezing
Close the window and reopen Ubuntu through kasm.opencodingsociety.com.
In the session list, delete the old one, wait until it fully disappears, then start a new session.
source venv/bin/activate Not Working
Usually caused because you forgot
cd opencs/student
If you are in the correct directory and it still fails → ask your peers or Mr. Mortensen.
👉 Always check your spelling when typing commands — many errors are just typos.
🖥️ Switching to Windows (with WSL)
If Chromebooks are too slow and you’ve moved to a Windows system, here’s how to set up Ubuntu via WSL (Windows Subsystem for Linux):
In the Windows search bar, type and run:
wsl –install -d Ubuntu-24.04
Set up a username and password (save these somewhere safe).
Exit WSL:
exit
Set Ubuntu 24.04 as the default:
wsl –set-default Ubuntu-24.04
Start Ubuntu again:
wsl
Inside Ubuntu, run:
mkdir opencs
cd opencs
git config –global credential.helper “/mnt/c/Program Files/Git/mingw64/bin/git-credential-manager.exe”
git clone https://github.com/Open-Coding-Society/student.git
cd student/
./scripts/activate_ubuntu.sh
./scripts/activate.sh
After setup, close the terminal.
🔄 Next Time on Windows
When reopening Ubuntu:
bash
cd opencs/student
source venv/bin/activate
code .
⚠️ Common Windows Issues
PowerShell Error:
File Activate.ps1 cannot be loaded because running scripts is disabled on this system.
Fix:
Run PowerShell as Administrator.
Enter:
powershell
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process
🚨 Important: The setup process will not work inside PowerShell.
You must type commands inside the Ubuntu terminal that WSL installed.
🎉 That’s it! You now know how to set up your coding environment on both Chromebooks (KASM) and Windows (WSL).
If you run into problems, ask your peers, Mr. Mortensen, or ChatGPT — don’t push forward on the wrong path.
-
This guide introduces the foundational concepts in web development—from setting up your About Me site, documenting your tools and workflow, and talking and extracting data from servers. You'll learn how to publish with GitHub Pages and create a central homepage to organize your developer journey, as well as thinking about future possibilities.
Jun 12, 2025
-
Tech has reshaped our lives, from the internet to the smartphone in your pocket, or the advent of AI. This course is opening new technology possibilities by equipping you with the developer tools that are the keys to boundless technology possibilities.
Apr 15, 2025
-
Set up a Flask server locally using a starter template. This guide walks you through cloning the repository, creating a virtual environment, installing dependencies, connecting VSCode, and running the project with a SQL database.
Jun 17, 2025
-
Master Markdown syntax to create clean, readable, and well-structured documents for the web and code projects.
Jun 17, 2025
-
Introduction to API, JPA, ORM, POJOs in Java Spring Framework
Jun 17, 2025
-
Additional things you can add to your About Me page
Jun 15, 2025
-
A guide to using kernels in the Foundation framework. Kernels are a powerful tool for creating custom data processing pipelines. They allow you to define how data is transformed and processed in a flexible and reusable way.
Jun 15, 2025
-
This page will teach you how to set up your Java kernel in Jupyter Notebooks.
Jun 14, 2025
-
This page will teach you how to use HTML, CSS, and JavaScript kernels in Jupyter Notebooks.
Jun 14, 2025
-
This page will teach you how to use Python kernels in Jupyter Notebooks.
Jun 14, 2025
-
This page will teach you the basics of HTML and JavaScript.
Jun 13, 2025
-
In this guide, you'll set up your personal About Me site using GitHub Pages and create a homepage to organize and link to your Day 1 tools lessons. By the end, you'll have a deployed website that documents your development setup and serves as a launchpad for future projects.
Jun 12, 2025
-
Collaborate in real time using VSCode Live Share, pair programming techniques, and effective version control to work like professional dev teams.
Jun 12, 2025
-
Hands-on projects editing and enhancing classic games like Snake and Turtle to practice JavaScript, DOM manipulation, and game logic.
Jun 12, 2025
-
Discover how full-stack applications deliver live data to users by connecting frontend interfaces with backend servers and databases. Learn to build dynamic web pages that fetch and display real information in real time.
Jun 12, 2025
-
In this guide, you'll learn a brief introduction to models + api and how they are involved in full stack development.
Jun 12, 2025
-
Learn how to build a backend using Spring Boot with simple database integration.
Jun 12, 2025
-
This guide will walk you through setting up a Flask project with local database integration.
Jun 12, 2025
-
-
-
Grade Predictor documentation
Jun 1, 2025
-
-
Learning Cyber and Linux together
May 27, 2025
-
This page will teach you how to set up GitHub Pages using the VSCode online editor.
May 20, 2025
-
Learn how to create and manage course-required accounts, including a Portfolio Website, GitHub, Slack, and LinkedIn, while protecting your Personal Identifiable Information (PII).
May 19, 2025
-
-
-
-
-
Learn how to create and manage course-required accounts, including a Portfolio Website, GitHub, Slack, and LinkedIn, while protecting your Personal Identifiable Information (PII).
Apr 15, 2025
-
This guide will assists as we work through the class together — this is not comprehensive as we will evolve on GitHub collaboration together!
Apr 15, 2025
-
Setup guide for using the Ubuntu-based KASM Workspace for development.
Apr 15, 2025
-
Setup guide for MacOS developer tools including Homebrew, Python, and more.
Apr 15, 2025
-
Significant setup is required for development tools to support the Operating System, JavaScript, Python, Java, Jupyter Notebooks, and more. This is the first step in the development process.
Apr 15, 2025
-
A key to learning in this class is understanding how to make a GitHub Pages project. This guide will setup and run the project. At the end, you will have a student Website that can be used for blogging classroom learnings and progress.
Apr 15, 2025
-
Setup guide for using Windows Subsystem for Linux with Ubuntu for development.
Apr 15, 2025
-
Establishing pair/trio programming habits in the classroom.
Apr 13, 2025
-
Math 1B Chapter 7 equation of a line problems
Mar 17, 2025
-
-
-
-
-
How to Start Using KASM
Nov 17, 2024
-
-
-
-
A card game built to entertain
Oct 24, 2024
-
Tools and Software Development for Sprint 1
Aug 21, 2024
-
-
-
-
-
-
How to configure the Kasm Muti-Server Workspaces
Aug 14, 2024
-
-
How to configure Kasm to Store Persistent Data on S3
Aug 7, 2024
-
Plans for the big meeting demo
Jul 31, 2024
-
How to configure Kasm to automatically scale agents
Jul 30, 2024
-
When Kasm registry is not working, even with third party additions, there are ways to directly import a docker image from dockerhub.
Jul 15, 2024
-
How to configure Kasm to store data on the agent servers
Jul 15, 2024
-
How to configure the Kasm security groups to make sure all services are running.
Jul 12, 2024
-
How to create a cronjob to check if the Kasm Docker images are running and auto-start them if not.
Jul 5, 2024
-
When Kasm registry is not working, even with third party additions, there are ways to directly import a docker image from dockerhub.
Jul 5, 2024
-
Agile methodology helps bring out all the good characteristics in group development. The sociology of how an individual and group of individuals work in a Scrum Team using Agile methodology is a key development skill. Often interview questions, for a job interview in the real world, focus on the processes of how you work on code.
Aug 30, 2023
-
Build a simple project with Javascript
Aug 30, 2023
-
Objective is to be able to work fully with Notebooks, Submenus, and Anatomy to create your own personal interest blog.
Aug 27, 2023
-
Learn about the power of GitHub Pages and Jekyll
Aug 26, 2023
-
Learn how to set up utterances for your blog. Utterances is a tool that allows you to have comments on your blog posts.
Aug 25, 2023
-
Learn the Files and development work flow of GitHub Pages. This includes working with you home page, theme, markdown, and more.
Aug 24, 2023
-
GitHub pages was built with Python and Jupyter Notebooks in mind. This post is to verify tools by using Python.
Aug 23, 2023
-
JavaScript, HTML, CSS and Markdown are the primary coding languages used by bloggers when developing in the GitHub Pages system. Student developers can learn functionality while adding functionality to their GitHub pages website.
Aug 23, 2023
-
JavaScript, HTML, CSS and Markdown are the primary coding languages used by bloggers when developing in the GitHub Pages system. Student developers can learn functionality while adding functionality to their GitHub pages website.
Aug 23, 2023
-
These hacks are for tools that are used in the development process. Completing these hacks will help you to understand the tools better and are foundational for the course
Aug 23, 2023
-
The Web Programming topics are focused on learning Frontend programming, GitHub Pages, and Jupyter Notebooks.
Aug 23, 2023
-
JavaScript, HTML, CSS and Markdown are coding languages used by bloggers when developing in the GitHub Pages system. By using these languages, student developers can add functionality to their GitHub pages site.
Aug 23, 2023
-
Linux and the shell is used in this example to setup and verify the installation of the tools. Additionally, a few programming exercises are included.
Aug 22, 2023
-
A key to learning in this class is understanding how to make a GitHub Pages project. This guide will setup and run the project. At the end, you will have a student Website that can be used for blogging classroom learnings and progress.
Aug 21, 2023
-
Establishing pair/trio learning habits in the classroom. This will extend to other forms of collaboration, such as group work and team projects.
Aug 17, 2023
-
Anytime during a Sprint is an opportunity to showcase accomplishments to the teacher. The last week of the Sprint includes a formal live review meeting.
Aug 16, 2023