Broaden your selection: Category/Education
- Learn how to program shell scripts using bash, the command interpreter from the GNU project. Start from the basics and become and advanced programmer.
- Blockly is a web-based, graphical programming editor. Users can drag blocks together to build an application. No typing required.
- C Programming
- C is the most commonly used programming language for writing operating systems. Unix was the first operating system written in C. Later Microsoft Windows, Mac OS X, and GNU/Linux were all written in C. Not only is C the language of operating systems, it is the precursor and inspiration for almost all of the most popular high-level languages available today. In fact, Perl, PHP, and Python are all written in C.
- Dive Into Python 3
- Dive Into Python 3 is the successor to Mark Pilgrim's Dive Into Python, a popular book for learning programming with Python 2.x. It has been adapted to Python 3.x, and contains about 20% revised and 80% new material.
- Fire★ is a distributed, decentralized way to communicate and share through running programs.
You don't send a message to someone, you send an program, which can have rich content. All programs are wired up together automatically providing distributed communication, either through text, images, videos, or games.
The source code to all applications is available immediately to instantly clone and modify.
- GNU MDK
- MDK stands for MIX Development Kit, and provides tools for developing and executing, in a MIX virtual machine, MIXAL programs. The MIX is Donald Knuth's mythical computer, described in the first volume of The Art of Computer Programming, which is programmed using MIXAL, the MIX assembly language. MDK includes a MIXAL assembler (mixasm) and a MIX virtual machine (mixvm) with a command line interface. In addition, a GTK+ GUI to mixvm, called gmixvm, and a Guile interpreter with an embedded MIX virtual machine called mixguile, are provided.
- Guido von Robot
- Guido van Robot (GvR) is a minimalistic programming language that provides just enough syntax to help students learn the concepts of sequencing, conditional branching, looping, and procedural abstraction. Its biggest strength is that it permits this learning in an environment that combines the thrill of problem-solving with instant visual feedback.
- Khan exercises
- Khan Academy has created a generic framework for building exercises. This framework, together with the exercises themselves, can be used completely independently of the Khan Academy application.
The framework exists in two components:
- An HTML markup for specifying exercises.
- A jQuery plugin for generating a usable, interactive, exercise from the HTML markup.
Using the Framework Locally
You need to serve the files from some sort of a server. You can't just open the files directly in a browser. For example:
cd khan-exercises python -m SimpleHTTPServer
cd khan-exercises python3 -m http.server
Now if you open your browser to `http://localhost:8000` (or `http://127.0.0.1:8000/`) you should see the contents of the `khan-exercises` directory. Navigate to the `exercises` subfolder, and an HTML file under there to see an exercise.
The process for writing exercises is rather well documented. More information about this process can be found in the Khan Exercises wiki. Specifically:
- Have fun and make games, or hack your homework using Ruby! Just tell your parents or teachers you're learning Ruby programming... ;)
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.
The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.