How to define "a Python project"?

Aivar Annamaa <[email protected]>
Newsgroups gmane.comp.python.education
Message-ID <[email protected]>
Hi!

Python programs which involve a single *.py file are easy to manage -- 
eg. it's clear what is meant with "opening" or "running" the program.

In case of larger programs or in the context of a course (sequence of 
exercises) it would make sense to somehow group a bunch of Python (and 
other) files. Matthew Jadud recently brought this up in Microbit list 
(See "2. Projects vs. Files" in 
https://mail.python.org/pipermail/microbit/2017-October/001721.html).

I'm considering adding the (optional) concept of "project" into my 
Python IDE (http://thonny.org). In my current vision this would bring:

  * an extra pane showing the files of the project
  * actions "Create project..." and "Select project..."
  * actions "Import project ..." and "Export project..."
      o Target could be GitHub, EduGit, zip-file, FTP, another folder, ...
  * Bonus: In case of projects originating from Git there could be also
    "Sync" action.

Can you point out some good examples of Python project management?

What could be good format for defining the project? Just a folder? A 
folder with a configuration file or subfolder? __init__.py? __main__.py? 
setup.py? .git? Something else?

Teachers could prepare and distribute starter projects. What are the 
things that could go there besides library code and templates? Test 
cases? Linter configuration? Something else?

Any other thoughts regarding Python projects in the educational context?

How do your students transfer files between computer lab and their home 
computers? How do they submit code? Would the concept or "project" 
simplify this?

best regards,
Aivar Annamaa

_______________________________________________
Edu-sig mailing list
[email protected]
https://mail.python.org/mailman/listinfo/edu-sig
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.