Showkeys is a simple program to display keys being pressed on the screen. It is useful while making presentations and screencasts. The audience will be able to see the keys being pressed. It is similar to key-mon. Key-mon has more features than showkeys. but the latter solves some specific problems: it doesn't use GTK/GNOME; uses libxosd to display keys directly onto the screen; has no floating windows to that always need to be on top (which is very useful if you're using a tiling WM like Xmonad); and has keystroke history. key-mon has keystroke history, but doesn't show modifiers. showkeys does, using an Emacs style key notation.
DevContest is a tool for teachers of programming that makes it possible to create programming contests for your students. You prepare tasks, a description of them, an examle of the input and output, and a Python script that generates input and output. Students send their source code to the server and the system decides if they work well..