Frequently Asked Questions¶
The topics application is the main focus of the CS Unplugged website, as it contains the majority of educational material for the project.
We use the term “key” to specify a field name. Keys map to particular values (which range from learning outcome text, to the structure and attributes of a lesson).
A key is a short label for something, containing only letters, numbers, or hyphens. In our system, a key must be no longer than 50 characters, and use hyphens instead of underscores.
These are valid examples of keys:
These are invalid examples of keys:
Keys must be exact matches to work, for example, if you name a lesson
bits-and-bytes, referencing it in another configuration file as
bytes-and-bits will raise an error.
Django contains ‘applications’ which are Python packages that provide some set of features. Each large part/chunk of the CS Unplugged is a separate application. Read this section in our project structure guide for details of the applications used in the CS Unplugged system.
A Virtual Environment is a tool to keep the dependencies required by different projects in separate places, by creating virtual Python environments for them. It solves the “Project X depends on version 1.x but, Project Y needs 4.x” dilemma, and keeps your global site-packages directory clean and manageable.