I'm a programmer, but Python isn't my main language. I'm transitioning into teaching and want to create an efficient programming environment for 24 students who will be bringing their own laptops. My initial thought is to run an Ubuntu server and set up remote desktop connections for each student so they can have a uniform development setup. This could also allow me to monitor their screens easily. However, I'm wondering if I'm overcomplicating things. Would a web-based solution be better? Any tips for teaching Python effectively to secondary school students would be appreciated!
5 Answers
Google Colab is another solid option. It's user-friendly and perfect for Python, just remind them to create a new notebook for each session to keep things organized.
If you're open to alternatives, consider VSCode's remote development feature via SSH. This way, students can work directly on their local systems but still access a consistent development environment.
Definitely consider Docker containers with VSCode's remote containers feature. It simplifies things significantly, especially if you're trying to maintain consistency across different machines.
Running a remote desktop for so many users can be tough due to hardware requirements. Plus, switching between local and remote environments might confuse students. I’d recommend using a web solution like JupyterHub. It allows you to manage the environment better and set up a common package base for everyone.
I think you're overthinking it—Python can be easily set up on individual machines. But if you want control, creating accounts and using remote access could work. Just ensure the network setup allows for this kind of deployment.
True, but getting a bunch of students to set up Python on their own can be challenging. I've seen adults struggle with similar setups!
True, context switching can be tricky, but it might help keep students focused by limiting distractions on their local devices.