Recently in General Work Blather Category

Developuction

| 1 Comment | No TrackBacks

Developuction: when a service or host intended for development gets pressed into production. Usually this is done in a reaction to some external event, and nearly always results in fail somewhere down the road. If sysadmins are lucky, it just means the service collapses under a load it wasn't designed to handle. If they're not lucky, it means that somebody took a shortcut that compromised security somewhere, and the box gets well and thoroughly pwned. This is nearly always the fault of the sysadmin and not the developer who wrote the code, or the manager who caused the service to be pressed into production.

Developuction is a fact of life for many system administrators, and points to one or more serious issues in their shops. For instance, they could lack professionalism. This is generally ignorance, which is sometimes willful. They could be not granted any authority over technical decisions, in which case management needs to understand why it is that professionals are hired. But ultimately, it's a sign that short-term answers are favoured over sustainable long-term stability. Sometimes shops get lucky with developuction, and later they run into trouble when this luck is confused with competence.

We've all done developuction at some point or another. Sometimes it really is the best way to solve a problem. The key is understanding when it's acceptable, and being able to properly analyze the risks involved. It helps if you've not treated the development machines as a place where processes don't matter because "it's just a dev box."

IT as a service organization

| No Comments | No TrackBacks


All my professional career, I've been a member of service organizations. Granted, by some standards, that has not been for very long, but since I graduated from university, I've been a technician for a small business that sold and repaired PCs, I've been an owner of a business doing exactly the same thing, I've been a sysadmin type in an academic support department, and I'm now a system administrator in an academic unit.

A faculty member once said to me, "It's a relief to hear that you consider yourself to be in a service organization." I took that to mean that he didn't feel we (always) behaved as such. But how could it be organized any other way? We all report, ultimately, to a faculty member, and in our organization, it's faculty members who make the requests and drive the agenda. He could have been remarking that my own behaviour contraindicated this belief, but I don't think so. I will avoid false modesty and say that I know most faculty members and grad students for whom I do work are extremely happy with my work, as is my manager.

So why the statement? Has a clear mandate not been given to us, and if not, why not? (The fact that I ask this question gives a pretty clear answer: not really.) How do IT organizations perceive themselves? I used to think that mission statements were foolish, but I've changed my mind over the last several years. They allow an organization to not only publish a self-perception, but to ensure that staff members either are aware of this perception, or at least to not give them an excuse for being unaware of such. They allow people dealing with that organization to know what they're getting into and what to expect.

Ultimately, a service organization needs to define itself in terms of the person or group of people to whom it is giving service. I'm not entirely sure that's been done - not for our own group in particular, and not for most other service groups on campus. Even if statements of mission have been made, it's not clear that they have been promulgated or are under regular review to ensure they're still applicable.

Are you in a service organization? If not, how do you know that?

Hack A Day had a post on how to get better service from "service representatives".

As commenter "joey y" says, how sad is it that we need a book to tell us that being nice to people from whom we want something is a good way to get that?

I make no secret of it that people who are nice to me are likely to get faster service than those who aren't. My time is a zero-sum game: I only have so much of it to give out, and frequently my time is entirely consumed by stuff I'm *supposed* to do. I always work extra hours (much to my wife's frustration), so given that my mere presence is entirely at my discretion, I feel no guilt in rewarding the good and punishing the poor. Thankfully, most of the people I work with seem to understand that making my life miserable isn't likely to get them what they want any faster.

Anybody who is bored enough to look at my weekly roundup posts out of more than mere duty (hi boss) knows that I've always got plenty on my plate. At the risk of almost working on a Saturday afternoon, I've currently got 90 individual requests of varying complexity in my queue, ranging in scope and complexity from "can't print" to "rebuild this cluster installation including OS, batch queue, authentication/authorization, and add some new hardware too." So anybody walking into my office is automatically taking away from one of those items - some of which are a couple of years old - even before they ask me to lift a finger to do anything at all. That's ok, it's what I'm paid for, I really don't mind. Much.

Somebody who walks into my office saying "Hi, I have a problem, can you please help me?" is naturally going to get better attention than somebody who walks in saying "Here's my problem, you fix it now." I'd apologize, but I wouldn't be really sorry, and that's just human nature. There's a difference between "squeaky wheel gets the grease" and "I'm going to bother you and get under your skin in order to get what I think I need."

Lottery systems

| No Comments | No TrackBacks

I'm helping a faculty member and a grad student with classifying Google queries in various ways. One that keeps coming up over and over is queries for systems of playing the lottery. I'm hoping that this page will eventually come up, because guys, the only way to consistently win playing the lottery is to keep your money in your pocket. There's a reason governments like to run these things, and it isn't because they love you, it's because they make a boatload of money.

I'm not getting much out of helping out by making a fairly quick decision and clicking approximately 4,000 times, although the faculty member's going to spring for lunch at a fairly decent local restaurant (I've never been to it, but I hear it's good). Nevertheless, I'm getting more out of the repeated lottery queries than the people making them are likely to get. TANSTAAFL, but sometimes you can get one for not much more than an investment of time. The same can't be said of lottery tickets.

Oh, it's also kind of funny how many single-word searches like "erotica" and related terms there are. You don't need to look for that stuff; just open all your email attachments, you'll eventually get all the popups you need...

Solaris 10 pkgsrc

| No Comments | No TrackBacks

This is as much for my own reference as anything else. I have a pair of Solaris 10 machines upon which I would like to install various utilities (for different reasons). I'm not totally happy with Blastwave or sunfreeware, and I'm really unhappy with rolling my own for everything. I'm used to BSD and used NetBSD as a desktop for a year or so, about 7 years back mind. So I figured I'd give pkgsrc a try. One machine is sparc64 (a SunFire 280R), the other x86_64 (a SunFire X4100) so it should be a good test of both old and new architectures. If things go well, I may try this stuff out on a T2000 we have kicking around too.

I got bootstrap binary packages from here, although it turns out I didn't need them. I grabbed the pkgsrc sourceball from here, although I see there's a 2008Q2 directory dated a couple days later - maybe I should have grabbed that, I'm not up on my releases. Never mind though, new enough.

I'd done full installations on both my machines, so I had to remind myself about /usr/sfw/bin/gcc before I could bootstrap the pkgsrc install. I put everything in /usr/pkgsrc, so

cd /usr/pkgsrc/bootstrap ; ./bootstrap

was enough to get things started.

A PATH of something like

export PATH="/usr/pkg/bin:/usr/pkg/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/sfw/bin"
seems to work nicely.

Caveat: Solaris 10 does not have a cvs utility. NetBSD has cvs as part of its base, so it's not in pkgsrc. Now you have a chicken/egg: the first package I tried installing from pkgsrc (mutt) actually has a security vulnerability, so I thought I'd grab the latest pkgsrc via cvs. Guess I build that by hand.

Office Space

| No Comments | No TrackBacks
Academic offices.

Ahh, I can remember the offices of a few of my own professors.  Always fascinating places to visit, once I got over the innate fear reaction.  I used to love my mother's too.  Visiting other offices, there's lots to see, especially books on shelves.  Nowadays I look to see what's on the shelves that *isn't* directly related to their field.  Professors being who and what they are, it's actually disappointingly rare to see much along those lines, but I look anyway.  I also like to see how people lay things out, to see if I can scoop any ideas for my own disaster.  Unfortunately, few people have the sort of work I do, so that's difficult.

In my current job, I see a great many offices of faculty members, but more importantly, I have my own.  Many of my friends are in industry and have, at best, cubes of their very own.  Some people I know on campus have offices, but have to vacate them periodically.  At my last job, I started in a real office, then got moved to a desk in a corner of cubeland, then I got my own cube walls, then my cube got doubled up, then I lost a bit more space - eventually winding up in a 5'x5' square with shelving higher than I could reach and a pair of CRTs gobbling up most of the desk space.  I won't say that's *the* reason I ditched, but it sure didn't hurt either.

A good-sized office is a nice thing to have, and is one of the things I appreciate about my current job.  If I changed jobs, I suspect it would be something I'd miss a lot.

Solaris runtime dependencies

| No Comments | No TrackBacks

Solaris ain't Linux, as a lot of developers seem to forget, and adding gcc doesn't make it so either. One thing I run into often enough to be annoying, but not often enough to actually remember the incantations, is runtime library dependencies. Linuxmafia has one of the better writeups going, but for my own reference, you can work around this by setting LD_LIBRARY_PATH, which is usually sick, wrong, and evil. Instead, when building, make use of the -L and -R flags:

gcc foo.c -o foo -L/software/bar/lib -R/software/bar/lib

Yeah, pretty easy to forget "R for Runtime", shut up. Maybe the act of writing this down will fix it in my memory, finally. I also know that same page talks about crle, but I can't do this for various reasons.

Human Coal and Talent

| No Comments | No TrackBacks

Seth Godin wants to market HR.

He's not wrong, although he's thinking of things as a marketer. He wants to change the corporate mindset. So do I, but for different reasons. His idea is as good as any, but mostly I just want the name "Human Resources" gone. I find it absolutely fucking offensive. I'm not a piece of coal, I'm not some oil that somebody dug up, I'm not even some fabulous talent that somebody discovered. I work where I do because I wanted to work here and put my name in to the HR department, then somebody else hired me.

The name Human Resources is wrong because they and (by extension) administration / upper management may really see us staff as interchangeable cogs in a wheel. If you want to retain people, that's not the way to go about it. "If everybody's interchangeable, why am I still here again?" At my place of employment, as at many, we have yearly performance reviews that send quite the opposite message. Some people get bigger raises than others based on what they've accomplished relative to everybody else.

If we're not interchangeable cogs, why are we Resources?

I just discovered something important about N1GE6 that I don't see covered in the docs: if you have a grad student that prefers editing files in Windows, don't let him do so to his N1GE shell scripts.  GE will barf out with odd error messages.  Make him re-type the scripts into vi rather than spending 30 minutes debugging before doing the same thing, as I just did.

Maybe 6.1 is better, I don't know.

That is all.

Academic assholes

| No Comments | No TrackBacks
Via a friend, an oldie but a goodie: assholes in academia.

I don't really have much to add to this, beyond saying if you don't know who the assholes in your work place are, chances are - it's you.

Fortunately, I could name at least a few, so I think I'm mostly safe.

From one of the comments: "I suspect though, that he can bully when he needs to . . . "  I've long had a theory that inside every professor, a little jerk lives, just waiting to hop out.  I think it's virtually impossible to get to the point where tenure is offered without having at least pushed somebody aside a time or two.  I say this knowing that my mother is a tenured professor, and is one of the nicest women I know.  (And she agrees with me.)  Of course the prof referred to in that comment can bully when he needs to, or he wouldn't be a department chair.  The line is knowing when you really need to bully, and when you should just shut your mouth.