[Python-ideas] PythonOS

victor rajewski askvictor at gmail.com
Sun Nov 6 17:25:08 EST 2016


Firstly, apologies if this is the wrong forum for this idea; it's not so
much about the language itself, but what surrounds it. If you have any
ideas for better forums, please let me know. Also, if there is any work
started on anything like this, let me know

Now to the idea:
PythonOS - a (likely linux-based) OS built specifically for python.

I've been working in the education space as well as with embedded systems
for quite a few years, and am really excited about tiny affordable
standalone computing devices as a computing and science educational tool.
At the moment however, there are two options for python in this space:

   - micropython, which, despite its awesomeness, lacks many library
   possibilities, doesn't have a debugger, and is restricted to a handful of
   devices. The learning curve for getting this up and running can be quite
   steep
   - A full linux setup on an SBC - let's take the raspberry pi. This has
   access to (just about) everything, but beyond just programming the python
   code, you need to have some (basic) system administration training to get
   it running. For someone new to programming, this can be quite intimidating
   (recent developments with drag-and-drop Pi configuration notwithstanding).

In the latter category, there seems to be a lot of newer, cheaper hardware
appearing - for example the Pi Zero, C.H.I.P and VoCore2, and these are
already at  very affordable price point; I think that before long the
rationale for micropython will be lost, and $2 hardware will be running a
fully capable linux setup. However, micropython has the advantage of
simplicity. Upload main.py, and press reset. That's it.

My proposal is a Linux distribution that has the simplicity of micropython,
but the power of full python. Drop a file (let's call it main.py) on an SD
card from your laptop, plug it into the device, and it boots and runs that
file straight away. Or drop an entire project. If the device has USB device
capabilities, then just drag the file across, or even edit it live. Easy
SSH setup could allow more advanced users remote development and debugging
options. Maybe jupyter could be leveraged to provide other network-based
dev options (pynq <http://www.pynq.io/> already has a working linux distro
like this). Connecting to a console would give you a python prompt.

Ideally, key OS functions should be able to be controlled from within
python, so that the user never has to leave the python prompt. For a start,
things like network config, and possibly cron.

What do you think? I'm not in a state to do all of this myself, but could
give it a start if there is interest in the concept.
-- 

Victor Rajewski

Sent from my mobile device. please. Please excuse brevity and any errors.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20161106/612e091d/attachment-0001.html>


More information about the Python-ideas mailing list