On Mon, 30 Oct 2006, Luke Kanies wrote:
Luke Crawford wrote:
On Mon, 16 Oct 2006, Alva Couch wrote:
The bottom line is that they are too dangerous for use by the
uninitiated; and "safety is more important than power" for the
beginner.

This is key. I would argue that safety is more important than power for nearly all system administration tasks, at every level. Tools to catch problems before the users notice would be much more valuable than tools that just allow me to setup boxes faster.

I don't get this at all. What tools got to be popular by being weak? Who ever adopted a tool because it protected him from himself? Are C and Unix great because they're safe, or because they're powerful enough for you to burn yourself.

heh. You are talking to a person that has maybe 1/5th the value of his vehicle in safety gear. I do put quite a bit of effort into protecting myself from myself... From my perspective, nobody else is quite as dangerous.

certainly, our respective credentials speak for themselves- I'm not the expert here, but for what it's worth, my experience has been that the tool that presents a low barrier to entry wins; I believe Unix and C win because they are simple, not because they are powerful. Give me any reasonably intelligent person for a month and I'll give you back a mediocre unix admin.

(I would argue that Unix has a lower barrier to entry than Windows - if by "entry" you mean actually having some idea what is going on, and the ability to do something more than blindly run very high level tools someone else wrote (or format/reinstall) to fix things.)

more recently Java (and Object oriented languages in general) won, again because of the low barrier to entry (and this time at the expense of simplicity.) - OO enables you to throw a bunch of mediocre programmers at a programming job, and to get something bloated and horribly slow out the other end; but something that mostly works. With C, the quality of your programmers needs to be another order of magnitude higher.


I fully plan to make dangerous tools, tools that allow you to be as stupid or as smart as you like. If you're stupid, you'll break your network, and your boss will fire you; hopefully he'll be smart enough to hire someone in your place who isn't dumb enough to use tools in stupid ways.

Well, yes. See, I am the boss at the place where I'm allowed to play with system management tools. Unfortunately, this being the real world, and me supporting it off of my consulting activities, I can't afford a SysAdmin who is both good at figuring things out, independent, and careful. I actually have one of each at the moment, and I'm still working on getting them to work as a coherent unit. (And no, I'm not going to fire him for botching a mdadm... I'm not paying that much more than retail here; I have to expect that he will be doing some learning.)

My setup right now is "powerful and dangerous" - everything is on a SAN, and I'm using software raid. It's fairly easy to destroy a whole lot of customer data. (in fact, that's what happened last weekend; after a reboot (due to a homicidal oom_killer) the md devices didn't come up correctly, and someone forced them up, but swapped the devices around; we now have two functional mirrors with the same data; all data on mirror 2 is now gone.)

Frankly, I've learned far more from doing stupid things with tools than I ever did from doing smart things. I'll give you another quote:

 Good judgment comes from experience, and experience comes from bad
 judgment.     --Barry LePatner

That is a good point when it comes to choosing a training tool.

What's so bad about sysadmins being forced to be good enough at their jobs as to be able to make judgement calls? I just wish business owners were better at recognizing incompetence when it was staring them in the face. If the gold standard was high-level tools, then these incompetent admins would do some real damage and their incompetence would be obvious. As it is, their tools are so weak that they can't do much good *or* harm, so their largely non-technical bosses don't know if the problems are systematic or personnel.

systematic problems are personal problems if you hired someone else to run your networks.

I wish business owners were better at recognizing competence as well. I can cite many examples where people that I knew were obviously better than I am got passed up, when I got hired. Some of these times I have even told the hiring person "hey that guy over there- he's obviously better than I am" (that is usually after I have the job; still, I have access to good cheap people- I give them away to my employers, and my employers prefer to find their own failure.

The reality most of us are dealing with, though, is one of mediocrity.

Me, I attempt to deal with this using "extreme redundancy" - but that is expensive. (but can be cheaper than good sysadmins)

the truth is that humans are failable; some more than others. anything you can do to mitigate this is good. Even for me, I know I make mistakes. Extreme awareness of my own failability helps a whole lot; but most employers select based on confidence, so you certanly can't count on that.

Most of the places I have worked, most of the 'fires' were caused by an admin mistake.
[snip]
I have advised many people beginning with automation to start
with scripts, evolve into using cfengine, and then evolve into
using bcfg2 or puppet, *knowing* that each intermediate step
is a "throw-away". The intermediate steps are "educational".

this sounds like a good idea.

Do you advise programmers to start with machine language, then move on to assembly, and only then start using high-level languages? Or do you skip all of that crap and go right to the languages that are useful?

almost. I tell people to learn C, then a lisp/scheme, then whatever the current buzzword language is; Once you know c and lisp, everything else is a weekend of hacking to figure out. Putting all your eggs in one buzzword is a bad idea, I tell them.

The thing is, the buzzword of the week languages are generally where the money is, but they change every now and again; you don't want your career to go down the tubes when the next one comes out. if you know C and a lisp, it's pretty easily to mentally translate that into whatever language you need to write in. Everything I've seen has been some sort of amglamation of C and lisp.

(Now, this is not from the perspective from someone that writes programs; this is from the perspective of someone that makes minor changes to existing programs.)

and again; I'm not trying to say that your tool is worthless or that I'm better than you; I am clearly, as the kids would say, the n00b here. I'm just trying to give you a view from what is perhaps a different part of the SysAdmin world than you have experienced.


_______________________________________________
lssconf-discuss mailing list
[email protected]
http://lists.inf.ed.ac.uk/mailman/listinfo/lssconf-discuss

Reply via email to