This site will look much better in a browser that supports web standards, but is accessible to any browser or Internet device.

Anomaly ~ G. Wade Johnson Anomaly Home G. Wade Home
Posts related to software architecture or architectural considerations.
Best Practices Gone Bad
A series of articles about the downside of best practices. Usually the downsides have to do with people misusing them.
Reviews and pointers to books that you might find interesting or thought provoking.
C/C++ Programming
Posts relating specifically to programming in the C or C++ languages.
Programming is only partly about the science of computation. These posts are about the Craft of writing quality, maintainable code.
Programming is no longer a purely solo activity. Some of the craft of programming involves interacting with a community.
CompSci General
Some of the Computer Science underlying writing code. These posts are often more theoretical.
Computer - Business
Writing code isn't all about the language or the algorithms, some of programming is about the business surrounding computing.
Topics relating to software design, including particular techniques and philosophy.
Posts that are somewhat off-topic for the topic of programming.
Java Programming Language
Posts about programming in the Java language.
JavaScript Programming
JavaScript has moved from toy language to something that drives the web. These posts are about programming in JavaScript.
Some issues are not specific to one programming language, but are still more language level than computer science or business. This category covers those topics.
Managing Programmers
Unlike most of the topics in the blog, these items are more useful to those who manage programmers than to the programmers themselves.
Development methodologies seem to be everywhere. They claim to improve development by focusing above the level of writing code to the process and forces that support and hinder development.
Novice Advice
Example approaches and topics focused completely on novice programmers or soon-to-be programmers.
Object oriented programming has become the default paradigm in writing code. This category focuses on some of the details of working with objects.
Perl Programming Language
Topics relating specifically to programming in the Perl language.
Programming Philosophy
Much of the practice of writing code is driven by how you think about problems and solutions. These posts focus on helping you to think about programming.
Ruby Programming Language
Posts relating to the Ruby programming language.
Topics relating to Scalable Vector Graphics.
In addition to making your code work, you need to be aware of how others may break your results. Security is an important topic for almost all programmers, but most aren't aware of it.
Teaching Programming
How do you go about teaching someone to program? These posts are focused on teaching aspects of the craft to others.
We should all do more testing. These posts focus on both the quality and design aspects of testing real code.
One of the standard paradigms of concurrent programming has been threading. These posts relate to particular issues and design decision related to threads.
As programmers, we all have our favorite tools. These posts introduce some of mine.
User Interfaces
Much of programming involves communication with the slow, buggy peripheral on the other side of the screen/keyboard/mouse. These posts discuss issues relating to the user.
Version Control
Version control is a critical part of a programmer's ability to actually accomplish work. These posts cover issues and ideas I have stumbled across while working with different VCSs.
Web Development
Posts that focus specifically on development for the web, as opposed to general programming topics.
Weblog Messages
These posts are related to the Programmer Musings blog itself, not to any programming topic.
XML is relatively wide-spread in programming. In recent years, it has lost some of its luster, but it is still a foundation of much of the web. These posts cover topics relating specifically to XML.