Manual: Introduction

When I am learning to use libraries that other people have written I am often frustrated by the lack of good documentation. Most people seem to think that simply exposing the API (through the use of Javadoc or Doxygen, for instance) is plenty of documentation. However, when dealing with systems that have lots of different parts that fit together in certain ways to achieve certain ends, simply being able to browse the class heirarchy is often not enough information to begin using the library in any competent way. This is especially true if one is not already familiar with the domain that the library is providing a solution for. As such, the aim of this manual is to provide new users of Minim with a step-by-step introduction to the library that is easy to understand and provides a small amount of technical information regarding the field of Digital Signal Processing (DSP).

There are a couple conventions that I will use throughout the manual when describing how to use the library. When referring to a class, method, or method argument in the library, I will use text that looks like this. When referring to arguments in overloaded methods like the following:

I will usually say what the default value of bar is. When I do this I am referring to the value that the first method uses for bar.

This manual is geared towards people who may be new to programming and may not be entirely comfortable with object-oriented concepts. It is geared towards people whose first instinct is to close the window when they load a javadoc (that was my first instinct, anyway). As such, it may sometimes seem patronizing to people who are already comfortable with the concepts of classes, interfaces, and inheritance. I don’t mean to patronize, I only mean to make things as clear as possible.

6 thoughts on “Manual: Introduction

  1. Pingback: Code Log » Blog Archive » Minim Manual Updated.

  2. Pingback: Sound Analysis in Processing | christianmeinke.com

  3. You are absolutely right about documentation practices. This type of attitude also extends into the physical computing world (not to pick on them, but as a general example, one can look at the firmata “documentation/wiki”.) Thanks for taking the time to properly document your contribution!

  4. Wow, this is amazing. Thank you so much for building this library and providing the documentation. The amount of time and frustration that your work saves me and many others is immense!

Comments are closed.