Skip to content

Reviewing a Model for the Library

Connor Bain edited this page Nov 18, 2020 · 7 revisions

For the Models Library, we use an even stricter holistic standard beyond following the Style Guide.

  • The CODE should be readable (e.g. well structured and well written) and close-to-understandable by a person who is becoming familiar with NetLogo.
  • The INFO tab should succinctly and accurately describe the phenomenon being modeled. A reader who does not have any background in the subject should be able to at least garner some understanding of what is going on.
  • The INTERFACE should be intuitive and it should be possible to use the model (at least tinker with it) without having to refer to the Info tab immediately.

Plotting Policies

As of NetLogo 5.0, there's basically no reason for including plotting code inside the CODE tab. If you need to update a model from 4.x style to 5.0 style, look here: http://ccl.northwestern.edu/netlogo/5.0/docs/transition.html#v50

Replace all uses of temporary plot pens (plot pens created by create-temporary-plot-pen) with permanent plot pens (plot pens that are defined in the plot edit dialog) unless you are certain they are necessary (in 99% of models, they are not). Usually this is only a problem with really old models (such as models converted from StarLogoT).

Cases where they are useful include when you want to create a number of pens that varies according to some parameter of the simulation. In the Hotelling's Law model, for example, we dynamically create one pen per store.

What is a Code Example?

When making a code example, here are some guidelines to follow:

they should be simple and only explain one thing in the info tab, be sure to explain what this code could/should be used for in the info tab, be sure to give an adequate description of the problem this code example solves the code example should do something (not necessarily anything useful) maybe have short amounts of code in buttons (using the code as the label) a good code example will have references to models in the Models Library you don't necessarily have to have all the sections of a normal info tab — you can leave out some, even most sections, depending on how much there is to say a good code example is (at least a little bit) fun!