ToolboX is an
integrated development environment
An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editor, build automation tools a ...
designed to introduce computer programming in academic subjects with originally no competences in this matter. Its design is based on the premise that, when solving a problem, a student performs a sequence of computations (i.e., proceeds in an
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
ic way), that can be expressed in a computer language, similarly to how it is done on a notebook or blackboard.
Besides the environment and the academic contents, ToolboX compiles students' usage data and process it by means of
big data algorithms based on
artificial intelligence
Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
(just in the Andalusian region, a million students have access to this tool, after being integrated in the
Guadalinex and
Guadalinfo repositories). These techniques perform knowledge acquisition about the students community, that can be used afterwards to improve teaching and resource planning. As examples of this knowledge, gifted students, ADHD and dyslexia can be prediagnosed.
Functioning
ToolboX is a didactic resource that teachers can use at the classroom or in the computer room. When the program is launched, it shows a simple development environment, made of a
command window, a
text editor
A text editor is a type of computer program that edits plain text. Such programs are sometimes known as "notepad" software (e.g. Windows Notepad). Text editors are provided with operating systems and software development packages, and can be u ...
to write the program, and an optional graphic window. After choosing a problem list, the student must solve each of them by writing a program. It also provides help commands (to be executed in the command window) and other commands for debugging and running the program. When the solution computed by the program is correct, it shows the next problem, until the whole list is completed.
The programming language used is
GNU Octave
GNU Octave is a high-level programming language primarily intended for scientific computing and numerical computation. Octave helps in solving linear and nonlinear problems numerically, and for performing other numerical experiments using a lang ...
, for being a scientific programming language, widely used in education, science and engineering.
Problem definition
ToolboX is based on the notion of
problegram to represent problems of a wide range of academic subjects. The definition includes information like the statement, tips or wiki help, its (alpha)numeric solution, proposed programs (in different languages), and a take-home-message after the task is solved. The relations of problems (or modules) are just lists with the names of the files in
JSON
JSON (JavaScript Object Notation, pronounced ; also ) is an open standard file format and data interchange format that uses human-readable text to store and transmit data objects consisting of attribute–value pairs and arrays (or other s ...
format.
,
"takehomemessage": "The power of a fraction derives from the product of fractions.",
"author": "ToolboX",
"URL" : "toolbox.uma.es",
"CC" : "BY-NC-SA 3.0"
}
Installation
ToolboX can be installed in the Andalusian public centers from the
Guadalinex repository, as well as in the Andalusian network of rural centers
Guadalinfo.
The program can also be installed out of these networks, in two different ways:
With a deb file
On a computer with a
Debian-based Linux distribution (like
Ubuntu
Ubuntu ( ) is a Linux distribution based on Debian and composed mostly of free and open-source software. Ubuntu is officially released in three editions: '' Desktop'', '' Server'', and ''Core'' for Internet of things devices and robots. All th ...
,
Stretch,
Raspbian
Raspberry Pi OS (formerly Raspbian) is a Unix-like operating system based on the Debian Linux distribution for the Raspberry Pi family of compact single-board computers. First developed independently in 2012, it has been produced as the primary o ...
,
Lubuntu
Lubuntu ( ) is a lightweight Linux distribution based on Ubuntu and uses the LXQt desktop environment in place of Ubuntu's GNOME desktop. Lubuntu was originally touted as being "lighter, less resource hungry and more energy-efficient", but n ...
), ToolboX can be installed from
debfile following these steps:
Ubuntu version history#Ubuntu 16.04 LTS (Xenial Xerus)
$ wget -N --quiet toolbox.uma.es/download/toolbox_latest.deb
$ sudo apt-get update
$ sudo dpkg -i toolbox_latest.deb
dpkg: dependency problems prevent ...
ther messages$ sudo apt-get -f install
ther messages Setting up ependency ...
Ubuntu version history#Ubuntu 18.04 LTS (Bionic Beaver)
$ wget -N --quiet toolbox.uma.es/download/toolbox_latest.deb
$ sudo apt-get update
$ sudo gdebi toolbox_latest.deb
...
With an ISO file
Th
ISO filemust be first downloaded, and then install
UNetbootin
UNetbootin (Universal Netboot Installer) is a List of tools to create Live USB systems, cross-platform utility that can create live USB systems and can load a variety of system utilities or install various Linux distributions and other operating s ...
. Next, a
pen drive
A USB flash drive (also called a thumb drive) is a data storage device that includes flash memory with an integrated USB interface. It is typically removable, rewritable and much smaller than an optical disc. Most weigh less than . Since first ...
(+4GB) is plugged in, UNetbootin is run, and the ISO file is burnt as a live version with persistent storage (this process will erase the pen drive, which must be copied beforehand, if needed):
# select the downloaded ISO file
# specify the size of the persistent storage (optional), for example 1000MB
# select the unit where the pen drive is plugged.
When the copy process completes, the system is restarted from the live version on the pen drive, which is selected as the booting method (this might demand interrupting the restart at the beginning by pressing a special key, like
ESC,
F2 or
F9 on the PC, or
Alt key
The Alt key (pronounced or ) on a computer keyboard is used to change (alternate) the function of other pressed keys. Thus, the Alt key is a modifier key, used in a similar fashion to the Shift key. For example, simply pressing ''A'' will ...
on a Mac) to access the
BIOS
In computing, BIOS (, ; Basic Input/Output System, also known as the System BIOS, ROM BIOS, BIOS ROM or PC BIOS) is firmware used to provide runtime services for operating systems and programs and to perform hardware initialization during the ...
and select the preferred
booting
In computing, booting is the process of starting a computer as initiated via Computer hardware, hardware such as a button or by a software command. After it is switched on, a computer's central processing unit (CPU) has no software in its ma ...
method. Once the system has booted from the live version, the main menu can be accessed from the upper-left corner, and ''ToolboX'' can be found in the ''Programming'' category.
User instructions
After running ToolboX, the screen is divided into three areas: a
system console
One meaning of system console, computer console, root console, operator's console, or simply console is the text entry and display device for system administration messages, particularly those from the BIOS or boot loader, the kernel, from the i ...
, a
text editor
A text editor is a type of computer program that edits plain text. Such programs are sometimes known as "notepad" software (e.g. Windows Notepad). Text editors are provided with operating systems and software development packages, and can be u ...
, and a graphic window. By typing the 'task' or 'help' commands in the console, information is obtained on the task modules and the list of available commands. Once a task is loaded with command 'task', 'tip' and 'wiki' might provide additional information. Each task is solved by typing a program on the text editor, and running it with the 'go' command in the console.
Distribution
In version 0.0, it was oriented to the Spanish educational system and included problem lists for all pre-university subjects. It was distributed in a
USB flash drive
A USB flash drive (also called a thumb drive) is a data storage device that includes flash memory with an integrated USB interface. It is typically removable, rewritable and much smaller than an optical disc. Most weigh less than . Since fir ...
provided to the students, which instructors can apply for online. This drive contains a live
Linux distro, the interpreter of the
GNU Octave
GNU Octave is a high-level programming language primarily intended for scientific computing and numerical computation. Octave helps in solving linear and nonlinear problems numerically, and for performing other numerical experiments using a lang ...
programming language, and the ToolboX and necessary software.
ToolboX is currently distributed under GNU GPLv3 license. Its first version includes a repository of tasks for several subjects of pre-college education (mathematics, physics and chemistry).
Th
source codeis available in a public repository.
See also
*
Thonny
*
Kojo Kojo may refer to:
* ''King Kojo'', a novel by Ruth Plumly Thompson
* KOJO (company), Australian entertainment company which supported the Adelaide Film Festival#Indigenous Feature Documentary Initiative
* KOJO (FM), a radio station (91.1 FM) lic ...
*
JUDO
is an unarmed modern Japanese martial art, Olympic sport (since 1964), and the most prominent form of jacket wrestling competed internationally.『日本大百科全書』電子版【柔道】(CD-ROM version of Encyclopedia Nipponica, "Judo") ...
*
BASIC-256
*
Microsoft Small Basic
Microsoft Small Basic is a programming language, interpreter and associated IDE. Microsoft's simplified variant of BASIC, it is designed to help students who have learnt visual programming languages such as Scratch learn text-based programming ...
External links
Averroes blog(Council of Andalusia, Board of Education)
official website
References
{{reflist
*
Spanish educational websites
Free educational software
Pedagogic integrated development environments