Below is a case study of a Computer Science educator in Thailand and includes his recommendations for VS Code extensions and settings in the classroom.
Intro to Web Development at Naresuan University
Charles Allen is a lecturer at Naresuan University in Thailand, where he teaches several Computer Science and Business courses. He teaches a project-based Web Development course, where students build a TypeScript app using the Vue.js framework and Firebase platform.
Why Visual Studio Code?
Charles has been using Visual Studio Code to teach for the past four years. In his own words:
"The more realistic the learning environment, the more comprehensive the education. I am not just teaching code; I'm also teaching the tools, tactics, and teamwork my students will need to start building for themselves. VS Code is the first choice of web professionals, so it’s the first choice for my class!"
VS Code is great for Charles because it has a portable mode, which stores all of VS Code's application data in one location. He prepares a single "image", available on GitHub, containing his favorite extensions, settings, and cached versions of some libraries. This customized folder structure can be quickly copied to every lab machine without needing to run installers, download additional files, or manually configure each machine.
The extensions he likes to have installed:
- TabNine - Longer AI-driven code-snippets helps non-native English speakers avoid code-breaking typos and reduces the impact of slow typing.
- REST Client - Share API designs as
.httpfiles and simplify manual API testing within VS Code.
- Vetur - Vue.js framework support for syntax highlighting, code completion, and more! This helps students focus on their Vue.js code rather than getting stuck solving syntactical errors.
And here are his recommended settings, which help his students have consistent formatting of their code to make his life reviewing and grading their work that much easier. You can use his settings by editing the settings file and pasting these in:
The extension pack contains:
- npm and npm IntelliSense for verifying status of npm packages(installed or not) and auto-completions.
- Live Share to enable real-time collaboration and Live Share Audio to enable audio calls as well.
- Remote - SSH to work on remote projects (for example, to access lab machines) through SSH with full VS Code functionality.
- REST Client to run REST Calls within VS Code for quick manual testing.
- Code Runner to run snippets (selected code) and single files of any code with a single click.
- and more!
Free lesson: Build a Node.js app for Azure Cosmos DB
Build a database app to store and query data in Azure Cosmos DB by using Visual Studio Code and Node.js. View full details of the lessons on Microsoft Learn: Build a Node.js app for Azure Cosmos DB.