![]() ![]() We recommend Docker Desktop Stable 2.3.0.3 as it is the most recent and performant version of Docker Desktop. Docker is the industry standard for building and sharing containers.Students will all get the same version of Python, avoiding the need to install a new version or uninstall any old ones, and everyone running the same container and source code will get the same exact results. To save tremendous time and confusion, we can use dev containers to create a standardized Python development environment across our class. Having multiple versions of Python, and then multiple accompanying tools such as linters, can be confusing and lead to errors. Let's take Python as an example: there's Python 2 and Python 3, along with different minor versions. Instructors need to be well versed in all these subtleties to be able to help students solve these issues.Ī common issue is managing different versions of a tool. Some examples include differences in their unique OS, where project files are stored, or small differences in runtimes or tools they've installed. With traditional set up approaches, students can run into a wide variety of issues while setting up their environment. To witness dev containers in action and how students can get started in just 5 minutes, check out our introductory student video. This post will serve as a guide to instructors looking to implement development containers in the classroom to create a smoother, more consistent environment for their students. You can check out Using DevContainers to Standardize Student Development Environments: An Experience Report to learn more about the experiences of three researchers who used dev containers in a course at UC San Diego. We've already seen instructors using Dev Containers in their classrooms with success. ![]() The Dev Containers extension works solely with Linux-based containers, so although students may have different operating systems on their computers, the coding environment will be consistent across all of them. Students will also have access to VS Code's full feature set, including IntelliSense and debugging, while coding. Each student can open the container in VS Code and automatically have the tools and runtimes they need to develop their applications. ![]() In the classroom, an instructor can take an existing dev container, or create their own, and share it with the class. The Visual Studio Code Dev Containers extension lets you use a container as your main coding environment. Each student will get the exact same version of dependencies, such as the same version of Python or a C++ compiler, regardless of their operating system or any other files already installed on their computer. In the diagram below, notice how the container includes the app and its necessary dependencies, keeping the computer (Host OS and Infrastructure) free and clean of any dependencies:Īs an instructor, you can create a specific image for an assignment. For example, if you download a specific version of a dependency, that version will be unique to the container. You describe what goes into the image using a Dockerfile, and once you run the image, it becomes a container.ĭev containers provide a separate coding environment from your computer. When you create a container, its initial contents come from what's known as an "image." An image can be thought of as a mini-disk drive with things like the operating system and other tools pre-installed. That's where the name dev container comes from. They later evolved to help in providing a consistent build environment, and more recently, development environment. Containers were initially created as a way to deploy and manage apps in a consistent environment and make more efficient use of hardware. So, what are development containers? Containers are pieces of software that package code and all of the dependencies that code needs to run, including the runtime, tools, libraries, and settings. They take care of setup so that students and instructors can quickly move past configuration, and instead focus on what's truly important: learning and coding something great! Development containers "I would prefer a version of VS Code, specifically set up for a Python installation." -ĭevelopment containers with Visual Studio Code can serve as a fantastic tool in education to ensure students have a consistent coding environment. Sadly that complexity takes a lot of time and money to sort out.". There are version of Python to deal with. "Set up for my students normally takes five class periods. Even so, students may still end up with a low-quality development experience or insufficient grading of their assignments: Jby Brigit Murtaugh, heard from many educators that the first days or weeks of the semester can be lost to configuring the correct environment for students.
0 Comments
Leave a Reply. |