[ This is still "first draft" quality but I'm posting it rather than keeping it bottled up. Feedback appreciated.]
There are those that believe that the history of system administration will follow a similar path to electrical engineering. Broadly categorized, there are 3 types of careers in that area:
- Electricians: People that have limited scientific education, but though apprenticeships and certifications they do the majority of the work in buildings, both deployments and repairs. They "follow the building code" (the building and safety guidelines for their state or country) but couldn't write new build codes (and would never try). Inspectors are paid to check their work for conformance to the "building code". 80% of all electrical work is in this category, and it is usually thankless and boring.
- Electrical engineers: People that have university degrees and understand both the theory and practice of what they do. They specialize in specific areas (construction, circuit design, chip design, etc.). The design new products. More advanced EEs write the building codes that electricians follow.
- Researchers: People (typically with PhDs) that are advancing the science of electrical engineering. They may invent entirely new ways of doing things, rather than just new products.
The field of system administration is already following this kind of trajectory. There are people in that first category: they have Cisco, MS, and LPI (Linux) certifications, they are mostly deploying vendor-approved architectures and design patterns (known as "best practices"). When they get creative you should be as scared as you would if an electrician installing a new circuit in your house told you he "got creative"). We don't have the auditing or inspection system yet, but SOX is the closest we have.
System administration has that second category too. They usually are the senior sysadmins in a company, and often are employed by vendors to create the best practice documents and certifications used by the first category. Sadly they often have the same titles as people in the first category which creates confusion.
The third category is quite rare in system administration. How often in our lives will something be invented that radically changes the way we do IT? There are a few that I can think of: Local storage vs. remote storage NFS. Individually managed accounts on each machine to NIS (laterLDAP). Waiting for users to complain vs. monitoring for outages. Keeping machines in sync by hand vs. cfengine (later Puppet).
All of these were major changes to our industry (and I profess that 80% of the industry doesn't do most of those things yet, so there is plenty of work to do).
There are very few schools that have Masters or PhD programs in system administration. Some call it IT, and dilute it with a lot of research around what we used to call MIS. A lot of the innovation in system administration comes from industry, which is usually good, but sometimes taints the research.
I believe there are many interesting areas of research that need more effort:
- Why are good practices so rarely adopted?
- What prevents a constant number of sysadmins from administrating growing populations of machines or users?
- Why is debugging so complicated?
- How to organize teams of system administrators to maximize macro efficiency and personal efficiency?
- How to delegate to users without expecting users to be system administrators?
- What traits do successful system administration organizations share?
- Are we asking the right questions?
These are the same questions we've always asked yet the need for research grows as system administration becomes more complicated and society becomes more dependent on technology.
Maybe we need to write less code and spend more time thinking.
Well I think that systems administration is an evolving part of
Systems Theory. You wrote in TM4SA that "we manage chaos for a
living". If you read "What is a Systems Approach?"[*] you will find
out that it discusses "organized complexity" which is essentially the
same thing, given the fact that our role as System Administrators is
to minimize the entropy that users (and data) bring to the system.
[*] - http://arxiv.org/abs/0809.1698