Search

gcompris: educational suite for children

December 7th, 2008 edited by Vicho

Article submitted by Raman Pandarinathan. We’re running out of articles! If you like Debian Package of the Day please submit good articles about software you like!

As a parent, have you ever wondered if kids can use FOSS to have fun and learn at the same time? As a teacher, have you ever wondered how to teach using a computer and FOSS tools? The answer is gcompris.

Gcompris combines fun and learning. Each activity is designed and developed with creativity in mind, and it has a nice interface for children.

My children have learned some computer basics like mouse usage, it has also helped them to understand basic arithmetic, colour identification and many other things. Tuxpaint is also included, so children can draw to their imagination.

Gcompris is a collection of over 90 educational activities for children. The activities are classified into mathematics, computer discovery, puzzles, strategy games, amusement activities, experimental activities and reading activities.

Mathematics

This has more than 20 activities classified into calculations, geometry and numeration. The activities are planned to teach basic arithmetic, geometry, money usage, etc.

For example, below you can see a screen shot of an activity that consist in finding series of numerical operations. Here the final answer is 15 and should be derived in two steps. The child has to select the numbers and operators from the top and form equations to get the final answer.

numerical operations

Puzzles

The puzzle activities include: drag and drop pieces to rebuild paintings, build a given shape with seven pieces, drive the crane and copy the model, tower of Hanoi, sudoku and the fifteen game.

Below is a screen shot of the Crane activity. The objects in the left grid should be placed in the same position as in the right side grid. The crane can be operated by clicking on the four arrows at the bottom.

Puzzles

Computer discovery

These activities help children learn basic skills of computers. Bellow is a screen shot of the keyboard activity in which the child has to push the ball to Tux. In order to do it, both shift keys should be pressed simultaneously, as if pushing the ball with the hands. If they are pressed simultaneously the ball will travel in a straight line and reach Tux, if not the ball will drift and fall into the sea.

keyboard activity

Strategy Games

Some of them are chess, arranging four coins in a row, bar game (don’t use the last ball), and oware (shown below).

Oware

Amusement Activities

The amusement activities include Tuxpaint, a simple football game, and an animation creator.

Below is a screen shot of the animation creator. If you want to create an animation, you first select an image and put it somewhere. Then take a snapshot using the camera icon. Now move it to the next position and take another snapshot. Repeat until you reach the desired position. Finally click on the film icon and you’ll see the animation.

Animation creation

Experimental activities

This section lets the children learn various things which require thinking in a series of steps. Things like the water cycle and operating canal lock lets the child learn systemic thinking.

Below is a screen shot of the activity about the water cycle. First the sun raises, water evaporates and clouds are formed. When you click on the cloud it starts raining and the rain fills the water tank. Operating the water inlet gives Tux a shower.

An example of the water cycle

Discovery

This section is about learning several common things like colour names, clock reading, symmetry, etc. The activity shown in the screen shot is about identifying colours: you must identify the colour from the name displayed.

Identifying colors

Reading Activities

These are activities about learning the letters, words and matching them with images. Reading can be practised both horizontal and vertical.

Below is a screen shot where the child has to drag and drop the image onto the correct name.

Reading activity

As part of my Linux Users Group activity, I give talks and demos about FOSS frequently. Whenever I see kids and parents among the audience, the first thing I do is to demonstrate gcompris, and it’s a sure hit. The kids love it and parents realize its educational value.

Here are some photos of one such event held in a public park at Chennai, India.

gcompris grabs the attention of everyone   Kids playing gcompris   Kids love it. And parents too!

Pros and cons

  • Pros
  • Cons
    • It requires more local language and sound support, especially for several Indian languages. At present for Indian Languages the sounds and reading practices are not well developed. Though gcompris is well structured to support translations, it lacks volunteers.

There is another similar package named childsplay - also available in Debian.

Availability

gcompris was a part of Debian even in the Sarge days and it’s been in Ubuntu since Dapper (if not before!).

Posted in Debian, Ubuntu | 1 Comment »

apticron: cron-script to mail impending apt updates

November 30th, 2008 edited by Vicho

Article submitted by Justin Hamade. Guess what? We still need you to submit good articles about software you like!

Always wondering if your debian server needs an update? Apticron is a simple script that will email you when new versions of any package installed are available. This is very helpful for security related issues. The e-mail shows what has changed in the new version, obtained using apt-listchanges. It also tells you the repository where it comes from (ie. etch-security) and the urgency of the release (ie. high).

The configuration files are located in

  • /etc/apticron/apticron.conf
  • /etc/apt/listchanges.conf
  • /etc/apt/apt.conf.d/20listchanges

By default emails are sent to root. If you want root emails sent to yourself you can add your email to root in /etc/aliases and run newaliases.

apticron will run daily and let you know each day if there is any packages that require updating. Here is an example of one of its e-mails:

apticron report [Sun, 08 Jun 2008 06:48:58 -0700]
========================================================================

apticron has detected that some packages need upgrading on:

      myserver.mydomain.com

      [ 192.168.1.1 ]

The following packages are currently pending an upgrade:

      linux-image-2.6.18-6-686 2.6.18.dfsg.1-18etch5

      linux-image-2.6-686 2.6.18+6etch3

========================================================================

Package Details:

Reading changelogs…

— Changes for linux-latest-2.6 (linux-image-2.6-686) —

linux-latest-2.6 (6etch3) stable-security; urgency=high

  * Update to 2.6.18-6.

 — dann frazier   Tue, 22 Jan 2008 22:47:16 -0700

linux-latest-2.6 (6etch2) stable-security; urgency=high

  * The arm build of 6etch1 is missing from 4.0r1.

    Since the latest security update of linux-2.6
(2.6.18.dfsg.1-13etch1)

    requires this new ABI, and an updated linux-latest-2.6 facilitates
the

    migration to the new ABI. Closes: #438617

 — dann frazier   Mon, 20 Aug 2007 17:01:18 -0600

linux-latest-2.6 (6etch1) stable; urgency=high

  * Update to 2.6.18-5.

 — dann frazier   Thu, 24 May 2007 17:05:09 -0600

========================================================================

You can perform the upgrade by issuing the command:

      aptitude dist-upgrade

as root on luxor.mcrt.ca

It is recommended that you simulate the upgrade first to confirm that the
actions that would be taken are reasonable. The upgrade may be simulated by
issuing the command:

      aptitude -s -y dist-upgrade

–

apticron

cron-apt is a similar tool that can perform any action apt-get and aptitude can do. For example, it can automatically perform an upgrade when new packages available. However this is not recommend and can be a security risk.

apticron has been available in Debian since (at least) Etch and in Ubuntu since Dapper.

Posted in Debian, Ubuntu | Comments Off

remind: a text based agenda and todolist manager

November 16th, 2008 edited by Vicho

Article submitted by Olivier Schwander. Guess what? We still need you to submit good articles about software you like!

There are lots of different tools for managing your time: Mozilla has a standalone solution: Sunbird and another one based on Thunderbird: Lighting, KDE has Korganizer, and Gnome has the young gnome-agenda and the very popular Evolution, and we must not forget the most famous web based tool: Google Calendar.

All these applications are based on a graphical user interface, and use either iCalendar or the older vCalendar as the data formats.

What about people who prefer console based interfaces and want to edit the data with their favourite text editors? The best solution is remind: it uses an easy but powerful language for describing events. A simple example, this event happens every Tuesday at 13:00 and lasts one hour:

REM Tue AT 13:00 DURATION 1:00 MSG Group meeting

You always forget your appointments? Remind can help you:

REM Tue +1 AT 13:00 +120 *5 DURATION 1:00 MSG Group meeting

It will begin to bother you one day before the date, and will display warnings two hours before, every five minutes. The language is really powerful, and is able to express arbitrary complex date calculations (first Monday of a month, excluding holidays, moon phases). To look at the events of the day, simply run:

$ remind
Reminders for Thursday, 10th July, 2008 (today):

Write Debaday post today at 3:00pm

Remind can import and export iCalendar files, and generate HTML and Postscript from your calendar. You can choose to have reminders sent by email, or showed by a pop-up window but you’ll need to start remind with some special arguments for that, see the Remind FAQ at the 43folders wiki which has a lot of useful tips for remind.

You can also use it through user-friendly interfaces: tkremind, a Tk based front-end, but it hides some of the power from remind; and wyrd, a curses based interface which eases the editing of events and lets you use all of the power of remind.

tkermind: Tk front-end wyrd: curses front-end

Availability

Remind has been available in Debian since Sarge (perhaps even longer), and in Ubuntu since Dapper.

Posted in Debian, Ubuntu | 3 Comments »

Apt-P2P: peer-to-peer downloading of Debian packages

November 9th, 2008 edited by Tincho

Article submitted by Cameron Dale. Guess what? We still need you to submit good articles about software you like!

Do you want to help out the Debian (or Ubuntu) project with some mirror bandwidth but don’t know how? Do you want to contribute somehow to Debian’s infrastructure, but you’re not a coder? Tired of getting slow download speeds when the mirrors are overloaded after a new release? Then Apt-P2P is for you.

After installing the apt-p2p package and making some minor changes to apt’s sources, all the files you download with apt (or aptitude, synaptic, gnome-apt, etc…) will be shared with other users, and any files you download will use other users (peers) to download from. However, if no other users have the file you want there’s no need to worry, Apt-P2P will happily fall back to downloading directly from the mirror so your download will not fail.

How it works

Apt-P2P is a daemon that runs in the background, responding to any requests from apt for files to download, and sharing any downloaded files with other users. The sharing is all done using HTTP, so it operates as both a server for the requests from apt and other peers, and as a client to download from other peers and mirrors. Also, if you go to http://localhost:9977/ in your browser on the machine Apt-P2P is running on, you will get a nice statistical display of what it is doing.

The main operation of Apt-P2P is the maintenance of a Distributed Hash Table (DHT) used to find and store peers to download from for each file. Whenever you download a file, apt-2p will first lookup the SHA1 hash of the file in the DHT. If it is found and has peers listed, then the downloading will occur from the peers (if there are only 1 or 2 peers, the mirror is used as well to speed up the download). If it is not found then the file is requested directly from the mirror. Once the download is complete, a new value is added to the DHT using the SHA1 hash of the file as the key, and including your contact info, so that other peers can then find you to download the file from.

That’s just a brief overview, but there are many hidden details that make things go smoother. For example, for larger files the SHA1 hashes of pieces of the file are stored in the DHT as well, which allows downloaders to break up large files among several peers to get better download speeds (similar to BitTorrent). For more information, you can go to the Apt-P2P home page: http://www.camrdale.org/apt-p2p/.

Comparison with other P2P programs

Other than DebTorrent, there aren’t any other peer-to-peer downloaders available for apt. There was apt-torrent, but it was never packaged in Debian, and now seems to be dead (no updates in 18 months). Comparing Apt-P2P with DebTorrent, Apt-P2P:

  • Is faster at downloading from mirrors.
  • Uses much less memory and a little less CPU.
  • Can download almost all files (source files, Packages.bz2, etc…) from peers, not just .deb packages.
  • Works with only the information apt has, no need for other files.
  • Doesn’t require a new apt transport for communicating with apt.
  • Is more modular and easier to understand as it is based on existing technologies (e.g. twisted).

Setup

Apt-P2P is available in testing (lenny) and unstable (sid), and will be available in Intrepid for Ubuntu. It can be installed by aptitude install apt-p2p.

First, it is VERY important to set up port forwarding if your machine is behind a firewall or router/NAT. The default port you need to forward is 9977, both UDP and TCP. More information on how to determine if you are reachable can be found here.

Setting up apt to use Apt-P2P as a proxy is easy, especially if you have used other proxy software (e.g. apt-proxy, apt-cacher, approx) in the past. The configuration change is the same, simply adding a localhost:9977/ to the front of the entries in your /etc/apt/sources.list file. For example, if you previously had this:

# Official
deb http://ftp.us.debian.org/debian etch main contrib non-free
deb-src http://ftp.us.debian.org/debian etch main contrib non-free

# Security Updates
deb http://security.debian.org/ etch/updates main contrib non-free
deb-src http://security.debian.org/ etch/updates main contrib non-free

# Unofficial
deb http://ftp.debian-unofficial.org/debian etch main contrib non-free restricted
deb-src http://ftp.debian-unofficial.org/debian etch main contrib non-free restricted

# Backports
deb http://www.backports.org/debian etch-backports main contrib non-free
deb-src http://www.backports.org/debian etch-backports main contrib non-free

Then, if you only want to share the official and backported packages, you would change it to this:

# Official
deb http://localhost:9977/ftp.us.debian.org/debian etch main contrib non-free
deb-src http://localhost:9977/ftp.us.debian.org/debian etch main contrib non-free

# Security Updates
deb http://security.debian.org/ etch/updates main contrib non-free
deb-src http://security.debian.org/ etch/updates main contrib non-free

# Unofficial
deb http://ftp.debian-unofficial.org/debian etch main contrib non-free restricted
deb-src http://ftp.debian-unofficial.org/debian etch main contrib non-free restricted

# Backports
deb http://localhost:9977/www.backports.org/debian etch-backports main contrib non-free
deb-src http://localhost:9977/www.backports.org/debian etch-backports main contrib non-free

Then, run an apt-get update and start installing packages.

The apt-p2p package is fairly new, so it’s available only in the testing and unstable distributions of Debian, and in the just released Intrepid Ibex, from Ubuntu.

Posted in Debian, Ubuntu | 7 Comments »

Synfig: the free software alternative for 2D animation

November 2nd, 2008 edited by Tincho

Article submitted by Carlos López González. Guess what? We still need you to submit good articles about software you like!

Synfig logoFor a long time 2D animation software has been dominated by proprietary software. Other common multimedia tasks such as video playing, editing, raster and vector 2D graphics and 3D graphics or animation are currently being covered properly by free software / open source (FOSS) but there wasn’t enough FOSS alternatives for computer aided 2D animation.

Synfig increases the 2D animation software available with a brilliant and professional piece of software.

Synfig was primary developed by Voria, an animation company founded by Robert Quattlebaum who was also the lead software engineer of the software. In 2004 Voria shut down and was discontinued. Fortunately Robert decided to license Synfig under the GNU GPL and turned it over the free software community to develop and use.

Synfig has no comparable alternative software in the FOSS world. Unlike other FOSS that can be used to produce 2D animation (ktoon, pencil) in the “traditional” frame to frame animation, the Synfig workflow is based on vector primitives and their interpolation in time. This drastically reduces the amount of work to produce professional animations because the manual tweening from pose to pose is eliminated, without the need to draw each frame individually.

But this is not the only feature of Synfig…

In Synfig, every primitive or transformation is parametrically generated, which gives extreme flexibility during animation and doesn’t restrict artistic expression. Also, those parameters are calculated on a float point basis obtaining smooth results at any size and any frame rate. Additionally it is possible to link any compatible parameter between any two or more different layers, even placed in different canvases or even convert most of the parameters into a mathematically calculated formula, this allows Synfig to produce particle effects, path based brushes, vectors dynamically linked to any place of a curve and other interesting stuff.

In Synfig there are an extensive set of primitives and transformation layers: Blurs (3), Distortions (6), Colour Filters (5), Fractals (2), Geometry Primitives (8), Gradients (6), Transform (3), Stylize (2) Text, Plant, Duplicate, etc. which provide a complete set of tools in the artist’s hand.

Finally in Synfig is easy to reuse libraries, group scattered layers to manage them like a single one, there are 22 different blend methods… If you want to dig synfig visit its web page. You can find there more info about the usage, the features and its development. Behind it, there is a small but friendly community.

Synfig UI

All those features make Synfig a great application but it has also some weak points: there are some missing features not completely developed like the support of sound or saving and loading colour palettes.

On the other hand although the interface of Synfig-Studio can be strange for the first contact (most of the actions are found in the right click context menu), once you understand how it works it is very efficient. I’ve been working with it during last year and I’m completely in love with it. I only miss a quick render engine for editing animation because the current one is quite slow for a normal workflow.

Although it is relatively young it has definitely turned into a program that any 2D artist must have on their GNU/Linux box. It’s been available in Debian since Lenny and in Ubuntu since Feisty.

Posted in Debian, Ubuntu | 9 Comments »

« Previous Entries Next Entries »