|Think about Loose Coupling|
Re: The code I'm most proud of is:by blue_cowdawg (Monsignor)
|on Mar 10, 2010 at 18:00 UTC||Need Help??|
Sometime a few jobs ago (seems like a lifetime ago to me) I started a job with a smallish company with a not too sophisticated team of Unix System Administrators. On day #2 of my employment there I noticed one of the "senior guys" there reading an email and manually selecting information from it to create accounts on various systems. What I further noticed was the information he was reading was in a fixed format in fixed columns.
For the sake of this posting to protect the guilty I'll call this guy "Ben."
I asked Ben why he hadn't automated this process and his reaction was to stare blankly at me and ask "how can you do that?" I told him that I'd work on the problem and get back to him on that.
Ben then patiently explained to me that it couldn't be done because there were too many different types of systems involved and blah blah blah blah... He also told me that of a 40 hour work week he was spending 30 of those hours processing these account requests.
Off to my cubicle I went and opened up an Emacs session and typed the ubiquitous
that many a script of mine had started with. The result was actually four different scripts. One that processed the requests, and three others that acted as "agents" as I called them on the VMS, Solaris and Tru-64 systems that the accounts had to be created on. Each system requrired some customization of the agent scripts and the master script communicated with the agents over a TCP/IP socket and the data going to them was encrypted using GnuPG. The master script was invoked from the same alias that the system administrators (4 of them) go their requests through. (Yeah... I know.. there's a secruity hole there.. best I could do at the time. Later a web application replaced the master)
What made me proud of all this was the fact that I was saving 120 staff hours a week enabling the 4 SAs to do other things besides data entry. The other thing that I changed in the process was instead of setting default passwords for new accounts as was being done (which never got changed) I now gave the new users random passwords and the script emailed the login and password to the user's manager. On first login the users were required to change their password.
There were two other side effects to all this. The first of which was I damn near gave Ben a heart attack when he realized that he hadn't gotten a new account request all day the first day I installed the master script. (Oops.. forgot to tell him... there was no change control process in place either...) The other side effect was I was given a quality award (including a very spendable Amex gift card for $100) by my vice president, He was happy over the staff hour savings.
Peter L. Berghold -- Unix Professional
Peter -at- Berghold -dot- Net; AOL IM redcowdawg Yahoo IM: blue_cowdawg