Frequently Asked Questions about DBN

When I try running downloadable DBN on Windows, a command prompt window flashes on the screen then disappears. What's wrong?

this is a very common problem (especially with windows 95 and 98), but can be caused by a few things.

solution #1

try running DBN in a command prompt window to see if that works. that is, open up a command prompt, change to the dbn directory, and type 'dbn' to run it.

if that works, then you should try moving your dbn folder to the base of your C:\ drive, and edit 'run.bat' by replacing 'c:\dbn\bin\jre' where you see 'bin\jre'.

solution #2

is there a file called '' in the 'lib' folder? if so, you might have gotten an error like this:

Error reading lib/
    at DbnApplication.main<>

try re-extracting using winzip, and make sure that the option for "make MS-DOS (8.3) filenames" (or something like that) is disabled. otherwise you might run into some other random trouble with mis-named files (you'll notice there are a couple of .pro files in the lib directory.

solution #3

is there a folder called 'lib' inside your dbn folder? if not, re-extract the archive with winzip, and make sure that the "Use folder names" checkbox is marked. there should be folders called 'lib' and 'examples' inside the dbn directory.

I am a designer working on project XXXX and for YYYYY big design firm. I'd like to use DBN for my next project, but it doesn't seem to support a large enough drawing area, or printing of high quality graphics. Why?

DBN doesn't support high quality printing of this kind. The current version was written as a teaching tool rather than a tool for regular use. You might be interested in PROCE55ING, however.

This example from the book doesn't seem to work:

Paper 0
  Pen 100
  Line 25 80 100 25
The drawing area just stays blank when the program is run.

This is a bug that resurfaced in 2.x. Download the latest version of DBN (3.0) for the fix.

Is there a manual or a complete reference for the DBN language?

there is no 'official' listing for the complete syntax of the language, outside of what can be learned from the dbn book. two dbn users have contributed a vocabulary list that explains each command with some detail.

Are there any advanced or undocumented features of DBN? How do I get rid of flicker? How do I use arrays? Or slow my program down? Make my program faster? Use color?

these questions and more answered at the hidden features web page.

How do I include my DBN program on my own web page?

Get the skinny at

How do I use DBN in other languages?

See information at

What type of math is DBN capable of?

currently supported operators are + - / * and %. all math goes inside parentheses, and is entirely integer-based (not 'real's or floating point values).

Where are the decimal places? Why does (80/100) equal zero instead of 0.8?

dbn doesn't support decimal places, it's all integer math. you can get around this by multiplying numbers to make them larger and dividing back down, though it's not terribly pretty. you could rewrite your function in a way that works--for instance, the line function y = mx + b, where m is 0.8 could be written as y = (8*x)/10 + b.

What about making DBN open source?

there are no current plans to make dbn 'open source'. we've discussed it, but it's not currently a priority. mostly, this is because dbn is intended as a language for teaching computational design, as a opposed to a general-purpose language for day-to-day work. if open-sourcing it would be likely to make it a better teaching language, then it might be more likely that we'd pursue it. open source projects also require a great deal of time spent supporting their community, and this is probably time better spent elsewhere.

How do I run DBN under Linux?

you'll have to do this by hand, because we aren't yet supporting linux for DBN. however, it does work with a little tweaking. Here are some basic directions that we gave to someone using a redhat distro.

1. download the windows version to your linux box, unzip it
2. cd to the newly created 'dbn' directory
3. type 'java -cp lib/dbn.jar DbnApplication'

if you get a message like "bash: java: command not found" then that means that you need to get java. it can be downloaded from:
click the 'continue' link under 'redhat rpm shell script'

after that, follow the install instructions at

after that, try typing 'java' and see if it works. if installation was successful, you should get some usage info (instead of the command not found). if that works, you should be able to run DBN using the steps above.



Design By Numbers is Copyright 1999-2001, Massachusetts Institute of Technology.
DBN was developed by the Aesthetics and Computation Group at the MIT Media Laboratory.