At My Fingertips
Rapid Playground
PyTamaro focuses on one single programming language: Python. (While PyTamaro and the material on this site is focused on Python, there exists a sister library, JTamaro, for teaching the Java programming language.)
In terms of natural languages, PyTamaro is multilingual: You can teach Python programming with PyTamaro in any natural language. However, depending on the language, there is more or less support. English is supported in the most comprehensive way. Italian, German, and French have strong support, with complete translations of the PyTamaro library. Teaching in other natural languages can work well, too, but you will have to accept the presence of some code or documentation in natural languages others than yours.
When teaching Python programming with PyTamaro, natural language text appears in the following five ways:
There is a small set of words that are baked into the Python language: they are called keywords.
Commonly used keywords include:
if
,
else
,
for
,
in
,
def
,
return
,
and
,
or
,
not
,
True
,
False
,
from
, and
import
.
The Python Language References defines all keywords.
The keywords are:
from
,
import
,
def
,
if
,
and
,
return
,
elif
,
or
,
not
,
True
,
else
,
for
,
in
, and
while
.
Note that range is not a keyword;
it is a function in the Python standard library.
Beginner Python programmars often mistakenly assume that range
is baked into the Python language and thus is a keyword.
This is incorrect:
range
is a function
that produces a sequence of numbers.
Unfortuantely some Python syntax highlighting styles used in IDEs
highlight the name range
in the same color they use for keywords.
Like in most programming languages, in Python the keywords are English words. If you want to program in Python, you have to use those specific keywords, and thus you cannot avoid using at least a little bit English.
The Python standard library defines a lot of names (e.g., names of functions and names of constants). The Python library uses English names.
Example names include: print, range, input, len, int, str, max.
The Python Library References documents all names defined in the Python standard library.
The above code uses the following names from the Python Standard Library:
Name | Defined in Module | What | Description |
---|---|---|---|
math | module | Mathematical constants and functions. | |
pi | math | constant | The mathematical constant π. |
str | builtins | function | Converts a value to a string. |
range | builtins | function | Returns a sequence of numbers. |
len | builtins | function | Returns the length of a sequence or a collection. |
print | builtins | function | Prints a value as a string to the console. |
Note that math is the name of a "module". A module is a part of a library. Sometimes developers also say that a module is a library (e.g., "the math library"). We follow this tradition on this web platform: if you click on pi, the documentation popup describes it as a "Constant from library math".
Like the standard libraries of most programming languages, the Python library is written in English: functions and constants have English names, and their documentation is written in English as well.
We provide translated variants of the PyTamaro library. You can pick the PyTamaro library variant that corresponds to your preferred natural language. You do this by importing from the corresponding module. Here are four equivalent examples in four supported languages:
The PyTamaro library can be used independently of this web site.
You can simply install it with pip install pytamaro
.
Installing the library provides you with its variants in all available languages.
The user interface of this web platform, such as the menus, button labels, or tooltip texts is available in multiple natural languages. You can pick the platform language using the language switcher button at the top right of the page:
You will notice that very little changes on the page. This page presents an activity written in English; the content of the activity will not change if you change the platform language.
This web site provides a large number of programming activities. You can browse them in the activity gallery.
Different activities are written by different contributors in different natural languages. Activities written by the Luce team usually are written in English, while activities authored by Swiss German teachers are primarily written in German, and those authored by teachers in Ticino are generally written in Italian.
An author of an activity can decide which natural language to write their activity in. They can even provide multiple variants of the activity in multiple languages. In those cases it is possible to switch between languages in the menubar.
If you want to use an activity in a language other than the one it was provided in, you can use your browser (e.g., Google Chrome) to automatically translate pages to your desired language.
We designed the web site in such a way that it will not translate the code cells, and it will not translate the function names mentioned in API tags like yellow. It will translate the content of the activity, and it will translate the platform user interface.
Note that these automatic translations might not be optimal: for example, they might not use the proper terminology for some programming concepts discussed in an activity.
If you are interested in contributing to the translation of the PyTamaro library or the PyTamaro Web platform user interface, or if you would like to contribute activities written in your own language, please contact us.
Note that the main contribution of a manual translation of the library or platform lies in the expert understanding of the terminology by the translator. Simply running the text through a machine translator is not helpful (users can already use machine translation via their browser); what is helpful is the expert effort of ensuring that all the terminology is correct and none of the text is misleading.
This activity has been created by LuCE Research Lab and is licensed under CC BY-SA 4.0.
Multiple Languages
PyTamaro is a project created by the Lugano Computing Education Research Lab at the Software Institute of USI
Privacy Policy • Platform Version 0d7866a (Fri, 20 Dec 2024 07:46:38 GMT)