Friday, December 12, 2008


Software development requires the daily use of tools to complete tasks. These tools come in multiple forms such as:
  • shells/command interpreters
  • compilers/linkers
  • programming languages
  • editors
  • IDEs
  • libraries/APIs
  • practices/standards
  • operating systems
  • computers
Due to the wide variety of tools that need to be used it is common for only a superficial understanding of them to be obtained in between actually getting work done. This site aims to provide an accessible means for deep and complete exploration of these tools. There will be no restrictions on what is considered a tool and what will be presented. However, as I have a programming bent, I will be giving priority to those tools that I currently use day-to-day and those tools I am aware of but have not yet had a chance to use.
A quick think about the kind of tools I use in the development of software yields the following categories into which tools fit:
  • Command Line Tools - tools that either provide a command line interface or are generally used from a command line interface
  • Editors - tools for capturing and editing text, images, general files
  • Languages - programming languages
  • Libraries - code libraries supplied external to the core of a programming language
  • Practices - subjective notes about software development practices
  • Standards - formal (or otherwise) standards that have relevance to software development
Subsequent posts will be tagged with one (or more) of these categories as well as more specific categories identifying the platform on which the tool discussed was tested and potentially a few labels identifying the tool. Navigating this site can be performed in a number of ways: Feel free to comment on these blog posts. I will endeavour to correct any errors reported or write about any topics requested.