Re: [Pythonedu-wg] The installation and deployment experience
Welcome to the list.
We did have some discussions in September & October last year. The main discussion was about the editor which I understand is work in progress.
This is the contribution I added previously on the installation / deployment. I'm very happy to contribute to this discussion and towards any implementation plans. I am going to be very busy the first few months of 2016, although that won't stop me joining in the discussion.
-- Previous email from 28 Sept 2015 --
Common feedback from people trying to use Python in education is that it can be difficult and confusing to get a system that includes all the dependencies they require.
Not many people have contributed to this discussion although arguably I think this is just as, if not more important than the editor discussion.
Working on my own projects is fairly straight forward as I usually develop on Linux (which is much easier platform for Python development than say Windows), my computer is not restricted in anyway and I always have an internet connection (at least during the development and setup). However when I have worked with schools then it's not been possible to install additional packages as the machines are locked down, or because they are not allowed to connect to the network. So I think this is an important step forward in making it easier to learn programming in Python.
I have found on some of my own projects I have had to list a large number of steps required in installing the pre-requisites that an educational bundle will help with.
I think it's good to start with the requirements rather than solutions. From the "must have" list, and my understanding, I was expecting just a list of modules that could be pre-built and easy installed, but the highly desired list goes beyond that. I think there could be a real benefit with those additional features, although I'm not sure how easily they can be implemented on computers that are "locked down". One thing I do think we need to consider is how updates to the education bundle can be managed as no doubt there will be additional modules that need to be added in future such as when the next super-dooper Raspberry Pi hat comes out :-)
I think it's worth highlighting some of the issues / difficulties on the different platforms, I've listed some of my experiences below.
It is harder to install python modules (and software in general) on Windows as it may be necessary to install using different sources (eg. binary install files as well as PIP). I think the biggest problem with Windows is likely to be that they are locked down to prevent software from being installed (including locking out the teachers in some cases). I think that having a single installable package which includes the most popular modules that are used in education would make it easier to give that as a single install step that can be applied to existing Windows systems. It could then be presented to the administrator as a single install client that can be pushed out on the system.
**Linux (excluding Raspberry Pi)**
Although (excluding the Raspberry Pi) Linux is used less in schools than the other platforms I think it's still useful to at least look at how the education bundle can be implemented on Linux. I think this could be useful for colleges and schools looking to re-use some older machines. I think we are likely to see this considered more in future as teachers become more adept with Linux based on experience with the Raspberry Pi. The current PIP system is designed to make it easier to install software, but it's not quite as straight forward as it should be. It can be an issue where a computer is locked down to prevent additional software being installed and support for all packages isn't as easy as it could be. For example to install pygame for Python 3 on Ubuntu requires compiling the package and if using PyUSB (to control a USB device) then that includes dependencies upon Libusb and the package needs to be manually downloaded and installed using setup.py.
**Raspbian on Raspberry Pi**
Raspbian is already further ahead than some other Linux distributions with inclusion of pygame for Python 3, although it still has difficulty with some other packages (such as PyUSB). In some schools the Raspberry Pis are all being used off-network (due to school policy), so I think it would be good to get additional packages installed in the NOOBS image so they are available by default.
Unfortunately I don't have any experience with Mac to be able to comment on the particular issues, although I expect it will not be too different from the other platforms in terms of issues.
From: Pythonedu-wg [mailto:email@example.com] On Behalf Of Caleb Hattingh Sent: 06 January 2016 03:57 To: firstname.lastname@example.org Subject: [Pythonedu-wg] The installation and deployment experience
I joined this WG only yesterday. I'd like to help, if possible, with the installation and deployment experience.
- "Installation": whatever needs to happen for a learner to be able to
write code on their device
- "Deployment": whatever needs to happen for a learner to give their
creation to a friend so that the friend can use it on their device.
Is there any other prior, online discussion on these two points that I could use to catch up on what's already been discussed? I've already seen the google doc that Carrie Anne set up, for "Python Education Bundle", here: