Writing Rules
Brief, plain-English writing grounded in code and data.
Writing Rules
1. Default article structure
-
Put findings and evidence in the report; put model specifications and supporting detail in the appendix. Keep both in the experiment’s
report/directory:experiments/expXXX/report/ report.mdx Abstract Results One subsection per result or related figure group appendix.mdx Supporting methods and derivations, when needed Network diagrams Parameters -
Use this default for new reports. Add Introduction, Methods or Discussion only when useful; adapt structure and figure types to the science. Training curves and rasters are not required.
1.1. JavaScript animations
- Keep experiment-specific browser scripts and helpers in
report/js/; import them relatively, for example./js/neuron.js. - Keep Astro components, styles and captions in
report/; keep shared components and scripts insite/src/.
1.2. Optional structure for complex methods
- Add Methods after Results when connected derivations, dependent analysis stages or numerical procedures would interrupt the findings.
- Use numbered named method steps and substeps, such as 2 and 2.1. Put supporting derivations in lettered appendices, with subsections such as A1 and A2.
- Keep
report.mdxandappendix.mdx; retain diagrams and parameters in the appendix.
2. Abstract
- Write one short paragraph covering the question, comparison, essential conditions, main numerical result and scope.
- Describe only completed work. A single run supports that run’s finding, not robustness across untested seeds or conditions.
3. Results
- Order figures around the scientific question. Before each figure or group, briefly state the measured result and interpretation.
- Keep essential method details nearby, normally only non-standard steps; use equations when they clarify the method.
- Explain panels, colours, symbols, units, counting windows and reading conventions in captions. Keep construction details in Methods and avoid repeating prose.
- State material limitations beside the evidence. If the current recipe differs from the one used, identify the relevant difference.
4. Methods (optional)
- Use numbered, named steps in execution order, with numbered substeps for dependent operations. Link each stage to its result or figure panel.
- Give enough detail to reproduce the procedure: sweep ranges, initial conditions, solvers, tolerances, measurement windows and decision criteria where applicable.
- Report verification checks and limitations that affect interpretation. Keep routine settings in the parameter table.
- Keep procedure-defining equations in Methods; link longer derivations to numbered appendix equations. A step may simply point to its derivation.
5. Appendix
- Every report must include a network diagram and a parameter table in
appendix.mdx; both are always required. Order the appendix as supporting methods and derivations, network diagrams, then one grouped parameter table. Start with diagrams when no supporting text is needed. - Use named, lettered appendices for substantial topics, with numbered subsections such as A1 and A2. Develop derivations in order and define symbols and units.
- Distinguish exact algebra, approximations and closure assumptions; state what each assumption omits. Give referenced equations unique numbers and stable anchors, linked directly from Methods.
- Include each distinct network layout, preferably generated from the executed
model. Do not create a separate
parameters.mdx. - Group parameters as applicable: Network, Neurons, Synapses and weights, Input and simulation, Readout, Training, and Analysis. Use columns for compared models.
- Combine matching E/I parameters with paired values and units, for example
Leak conductance, E / I→0.05 / 0.1 µS. Explain pair order and derived values; distinguish absent populations, inapplicable settings and unavailable values. - Separate population or connection names from parameter descriptions with a space,
without a colon:
E→I weights,Input→E synapse / delay,Output neurons.
5.1. Parameter-table data binding
- Render SNNLab parameter tables from saved native snapshots, following the selected presentation’s recorded compute ancestry. Select snapshots for the weights shown, such as final-training or best-validation weights.
- Read input, training and analysis settings from the same run’s recorded configuration.
- Keep row selection, labels, grouping, units and display-only derivations in reports.
Do not use separate
parameter_tablepayloads, preformatted rows or copied parameter dictionaries from analysis or presentation outputs. - Shared report loaders may resolve selected lineage and read native snapshots; they must not replace native serialization or silently select another run.
- Show missing snapshots or fields as unavailable, or fail explicitly. Never fall back to current recipe defaults or old table rows.
6. Evidence and reproducibility
- Ground scientific claims in code and displayed data. Omit unsupported claims and unperformed work.
- Bind figures, numerical summaries and parameters to the same selected evidence. Use core’s resolved current runset once per production build or development page request; do not pin run IDs in report metadata, figures, thumbnails or animations. Prefer data-bound numerical summaries where supported.
- For SNNLab simulations, read model parameters from exported
SnapshotSpecevidence and input, training and analysis settings from recorded configuration. - For analytical models, identify imported and derived parameters, assumptions and experimental choices. Use settings that produced the displayed calculation.
- Never replace displayed results’ settings with current recipe settings.
- Distinguish training, validation, test and diagnostic examples. Identify checkpoint selection, measurement conventions and seed count; label diagnostics clearly.
7. Style, components and maintenance
- Use plain English and keep writing brief.
- Define terms, symbols and units; use standard variable names.
- Reuse site components for figures, tables, diagrams and shared presentation; prefer existing Astro components to custom markup.
- Expand explanations or derivations and depart from these rules when needed to make the science clearer.
7.1. Editing and dates
- For reports and notes, set
created_atonce. Updateupdated_atfor substantive saved prose or figure revisions, including incorporated results. - Preserve authored update dates for housekeeping and execution alone.
Use quoted UTC datetimes (
YYYY-MM-DDTHH:mm:ssZ). - Correct article evidence and availability or version tags when code or run changes invalidate them.