Doxygen is a cross-platform, JavaDoc-like documentation system for C++, C, Objective-C, C#, Java, IDL, Python, PHP, VHDL, and Fortran. Doxygen can be used to generate an on-line class browser (in HTML) and/or an off-line reference manual (in LaTeX or RTF) from a set of source files. Doxygen can also be configured to extract the code-structure from undocumented source files. This includes dependency graphs, class diagrams and hyperlinked source code. This type of information can be very useful to quickly find your way in large source distributions.
gjots lets you organize text notes in a convenient, hierarchical way. It can be used for notes, jottings, bits and pieces, recipes, and even PINs and passwords, using encryption. It can also be used to "mind-map" larger compositions like manuals, Web pages, articles, etc. It is a bit like the KDE program "kjots", but uses the GTK library and supports a hierarchy of folders. Files can be output to HTML with an automatic table of contents or to docbook XML. Encryption is supported with ccrypt(1), gpg(1), and openssl(1), so that musings can be kept private.
The Advanced Bash Scripting Guide is both a reference and a tutorial on shell scripting. This comprehensive book, the equivalent of 1,000+ print pages, covers almost every aspect of shell scripting. It contains 382 profusely commented illustrative examples, a number of tables, and a cross-linked index/glossary. Not just a shell scripting tutorial, this book also provides an introduction to basic programming techniques, such as sorting and recursion. Included scripts are the Game of Life, a Perquackey variant, a Morse code trainer, and an implementation of the Gronsfeld Cipher. This book is suited for both individual study and classroom use. It covers Bash, up to and including version 4.2. Note that users of miniaturized single-board computers running Linux, such as the Raspberry Pi and the Beagle Bone, would find this Guide useful for learning and running Bash scripts to explore and expand the capabilities of these small, but powerful machines.
tex-upmethodology provides a complete set of LaTeX styles that permit you to write documents according to a UP-based methodology. Its major features are document history, task management, design and specification documentation, and helping tools. tex-upmethodology is officially supported by CTAN.
Cxref is a program that will produce documentation (in LaTeX, HTML, RTF or SGML) including cross-references from C program source code. It works for ANSI C, including most gcc extensions. The documentation for the program is produced from comments in the code that are appropriately formatted. The cross referencing comes from the code itself and requires no extra work.
cproto generates function prototypes for functions defined in the specified C source files to the standard output. The function definitions may be in K&R or ANSI C style, or in the lint library form. cproto can also convert function definitions in the specified files from the K&R style to the ANSI C style.
GNU TeXmacs is a free wysiwyw (what you see is what you want) editing platform with special features for scientists. The software aims to provide a unified and user friendly framework for editing structured documents with different types of content: text, mathematics, graphics, interactive content. TeXmacs can also be used as an interface to many external systems for computer algebra, numerical analysis, and statistics. New presentation styles can be written by the user and new features can be added to the editor using Scheme.
UMLet is a lightweight tool for rapidly drawing UML diagrams, with a sound and pop-up-free user interface. UMLet lets you draw diagram sketches quickly, teach UML with a simple user interface, and export diagrams to SVG, JPG, PDF, and LaTeX-friendly EPS. It features a fast, text-based way of editing UML elements.