| Language \ Environment \ Comparison |

| Index \ Java \ ActionScript \ Lingo \ Python \ Design By Numbers Design By Numbers (DBN) was developed for teaching general programming concepts to artists and designers with no prior programming experience. DBN is an extremely minimal language and environment, thus making it easy to learn but limited in its potential for creating advanced applications. DBN was originated by John Maeda, director of the Aesthetics + Computation Group (ACG) at the MIT Media Laboratory. Processing originated in the ACG and many years of experience developing and teaching with DBN informed its development. DBN is free and can run inside a web browser. More information is available at http://dbn.media.mit.edu

| Processing | Design By Numbers
| background(0); background(255); | Paper 100 Paper 0
| background(255, 204, 0); | N/A
| stroke(255); stroke(0); | Pen 0 Pen 100
| stroke(255, 204, 0); | N/A
| fill(0, 102, 153); | N/A

| Processing | Design By Numbers
| point(30, 20); | Set [30 20] 0
| line(0, 20, 80, 20); | Line 0 20 80 20
| rect(10, 20, 30, 30); | Field 0 20 40 50 100

| Processing | Design By Numbers
| setPixel(30, 20, 255); | Set [30 20] 100
| a = getPixel(60, 10); | Set a [60 10]
| pixels[y*width+x] | [x y]

| Processing | Design By Numbers
| int x = 70; // Initialize x = 30; // Change value | Set X 70 // Initialize Set X 30 // Change value
| float x = 70.0; x = 30.0; | N/A
| int[] a = {5, 10, 11}; a[0] = 12; // Reassign | set <array 1> 5 set <array 2> 10 set <array 3> 11 set <array 1> 12 // Reassign

| Processing | Design By Numbers
| void loop() { // Statements } | Forever { // Statements }
| for(int a=45; a<=55; a++) { // Statements } | Repeat A 45 55 { // Statements }
| if(c==1) { // Statements } | Same? C 1 { // Statements }
| if(c!=1) { // Statements } | NotSame? C 1 { // Statements }
| if(c < 1) { // Statements } | Smaller? C 1 { // Statements }
| if(c >= 1) { // Statements } | NotSmaller? C 1 { // Statements }
| if((c >= 1) && (c < 20)) { // Statements } | NotSmaller? C 1 { Smaller? C 20 { // Statements } }
| if(c >= 20) { // Statements 1 } else if (c == 0) { // Statements 2 } else { // Statements 3 } | N/A

| Processing | Design By Numbers
| // Comment | // Comment
| void doIt(int x) { // Statements } doIt(x); | Command doIt X { // Statements } <doIt X>
| int square(int x) { return x*x; } square(X); | Number Square X { value (x*x) } <square X>

| Processing | Design By Numbers
| mouseX mouseY mousePressed | <Mouse 1> <Mouse 2> <Mouse 3>
| void mousePressed() { // Statements } | N/A
| (key=='a') (key=='b') ... | <Key 1> <Key 2> ...
| void keyPressed() { // Statements } | N/A
| hour() minute() second() | <Time 1> <Time 2> <Time 3>

| Processing >> Design By Numbers by Josh Nimoy

| © 2002, 2001 Massachusetts Institute of Technology and Interaction Design Institute Ivrea |
| Processing is an open project initiated by Ben Fry and Casey Reas |