Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re: Usage of tools

by Abigail-II (Bishop)
on Jul 02, 2002 at 11:35 UTC ( #178825=note: print w/ replies, xml ) Need Help??


in reply to Re: Usage of tools
in thread Usage of tools

For another, if tools are standardized, then updating them (say, for security patches) is a lot easier if all desktops have a common set of tools.

That's an argument I do not buy. I've worked too long in sysadmin departments. Maintainance of tools is important (and needed). And therefore, desktops shall have NO tools. Nada. You put them on a central file server, and use NFS (or whatever they use in a Windows environment) to install something once, and make it available everywhere. In a large environment, or in a heterogeneous environment, you might use AFS instead of NFS, for the same reasons.

Providing your developers a consistant set of tools, regardless of their actual physical seating place is a good thing, and independent of whether you have a standard set of tools. But standardizing (or rather, limiting) the set of tools has its benefits too. Take editors for instance. Installing a flavours of emacs, the entire army of vi look-a-likes, pico and whatever else is out there is one thing, but once you do, developers will insist you always have the latest version with all the bells and whistles possible. Of course, you'd need to keep the old version around, because someone will exploit the undocumented feature that was fixed in the newest release. And then a new flock of cheap teenagers enters the workforce, and rob the sysadmin of her valuable time by asking how to delete a line using editor X (which the sysadmin doesn't know, as she has always used 'd' or 'dd' just as god intended). And that's just free editors - there are also commercial editors like Crisp, that need license keyservers.

This is just text editors, which are relatively small and easy to maintain. But then everyone wants their favourite mail reader, news reader, web wowser, GUI editor, scripting language, coffee machine, and god knows what. Then the situation quickly becomes unmanageble.

It's best to have some form of middle ground. Have a relatively small set of tools for the same task. Emacs, vi, ed and a modern vi-look-alike for editors for instance. More editors can be included if someone can make a good case. But "I got to use vi-plus-plus 4.7.2.5alpha2b with these 15 options buildin, because I like the dancing penguin theme" just isn't going to do it. "Here's vi, kiddo. It has no theme or colours. Deal with it.". And the same for other classes of tools.

Abigail


Comment on Re: Usage of tools
Re: Re: Usage of tools
by ignatz (Vicar) on Jul 02, 2002 at 13:22 UTC
    This was how they did it at a LARGE company that I worked at recently. Their solution was not allowing any text editor except EditPlus & VI, and any OS except Windows 95 and HP-UX. (They are moving to Win2k in the next six months if they can figure out how to do it without bringing down the network.) Allowed programming languages were Java 1.3.1, PHP, Pl/SQL and Korn shell. They did have official version control software, PVCS, but only the managers were allowed to use it so as to keep things effecient.

    The company worked very hard at keeping desktop problems to a minimum saving a lot of time and money in terms of tech support and system administration. It also helped keep quality programming down to a minimum.

    It's amazing to me that companies hire people that they entrust with programming very expensive networked servers and yet don't think that they can be given control of a $1,000 desktop workstation. Garbage in, garbage out.

    ()-()
     \"/
      `                                                     
    
Re: Re: Usage of tools
by dws (Chancellor) on Jul 02, 2002 at 16:05 UTC
    That's an argument I do not buy. I've worked too long in sysadmin departments. Maintainance of tools is important (and needed). And therefore, desktops shall have NO tools. Nada. You put them on a central file server, and use NFS (or whatever they use in a Windows environment) to install something once, and make it available everywhere.

    Our experiences differ here. I've seldom worked at a place where run-everything-off-one-server was a stable solution, usually because of a geographic split between servers and developers, complicated by building moves and "oh f*ck, somebody didn't arrange for enough bandwidth between building A and B."

    A run-everything-off-one-server configuration also introduces a single point of failure. You can protect the server with RAID5 and big UPSs, but it's still a single box sitting there waiting for the gremlins to sink their teeth into it. If a single developer box goes out, replacing it is easy, and at worse you lose a developer day. If the server everyone depends on goes out, you're hosed. And for some strange reason, hosing always seems to happen about 12 hours before a major deadline.

      Let's see, you don't want a central file server because that introduces a single point of failure? Then what are you going to do with your data and products? Store the source code of your product scattered over hundreds of PC's? Not use a database server at all? Let me tell you, you will lose far more than one workday if a PC goes down if you do it that way.

      The "single point of failure" has been a known issue for a long, long time. And it has been solved for a long, long time: you'd use a cluster. Many vendors write cluster software, and it works very well in practise. File servers are really easy to cluster, you can have one up and running in less than a day.

      Abigail

        Then what are you going to do with your data and products? Store the source code of your product scattered over hundreds of PC's? Not use a database server at all?

        Not at all. We "flew under radar" and installed our own CVS server local to the group. The IT folks, who we depended on for things like adequate bandwidth between buildings (including the data center), didn't know about it. We would batch up our changes and update the official server periodically. And we had plenty of local "database" (RDBMS) servers for development, though I suspect that's not what you meant.

        The problem is that the same people we would be counting on to set up a cluster for us are the same ones who couldn't set up a reliable pipe between our group (which had been moved to a "new" building), and the corporate data center. They had their hands full. We couldn't wait 6 months, so we worked around the situation with some extra hardward that we had available in the group. Nobody lost any work.

        Update: Sparring aside, I think we're in agreement. A sensible organization supports development by setting up a reliable server cluster. But most my work has been in small, growing companies, who experience growing pains that make them non-sensible, and that have to be worked around.

Re: Re: Usage of tools
by BrowserUk (Pope) on Jul 02, 2002 at 19:54 UTC

    A couple of thoughts come out of your words here.

    First, I completely agree with your point about the importance of the maintainance of tools.

    I was instrumental in setting up an architecture that automated this task of program installation and maintainance of 700 'approved' apps (reduced from the surveyed 7000+ prior to integration) across 600 LANS in 350 locations spread across an entire country. If the right SysAdmin tools are used, the requirement to limit the users choices (without moving from the sublime to the rediculous) in order to cut down on SysAdmin costs and workload is lessened.

    I did roaming profiles a disservice when I mentioned (desktop's, fonts, color schemes etc.) in my earlier post. Under Win32. the "user's desktop" is more than just these trivia--although if your short-sighted not having access to your large font isn't trivial; nor lack of a high-contrast color scheme to the 10% of users that are red/green color-blind; nor visual 'audible warnings' for the deaf; swapped mouse-buttons for the left-handed etc.-- it is also everything s/he is able to see and do.

    In essence, the users 'desktop' is the users computer; His or her 'virtual machine' to use a quiant old-fashioned phrase. The "shortcuts" available on my 'desktop' are the only applications I am able to run.

    Whether the application a shortcut points to is locally or remotely installed doesn't matter, the fact that it (the shortcut) is installed on my desktop means I can use it. If it isn't, generally, I can't. Yes, it is possible to invoke programs manually via the filemunger/explorer, or even through the still-born CLP--assuming it hasn't been disabled--but in the Win32 sense, the desktop is more virtual than physical. More akin to a visual representation of the *nix .profile (and other .files).

    So when I say 'desktop', I mean somewhat more than just the pretty bits.

    Secondly, I also agree that there is a real need to restrict what gets installed and where, especially with the advent of easily accessible cracking tools and wide-spread exposure of the corporate network to downloads from the internet. However, forcing the user to use vi or notepad (or even worse, I've seen people using Word as a program editor!) when they have become accustomed to and dependant upon the features of X, because it make the SysAdmin function easier seems all wrong to me.

    Can you imagine the caddy telling Jack Nicklaus (or Tiger Woods dependant upon your generation) that he can only use a sand-wedge for his golf cos it makes cleaning his kit so much easier. Or drawing analogy to the described use of Word, a 1-wood!

    Or replacing the vehicle mechanics sets of straight-necked, cranked-necked, open-ended, flat-ring, shallow-offset-ring, deep-offset-ring, 6-point and twelve-point spanners(wrenches to most of you guys), short-reach and long-reach socket sets etc, with one two of these and one of these?

    I guess what I am saying is that the SysAdmin role, often under resourced and under funded as it is, is the support role. Whilst, as one monk's wry tag line would have it, downtime is that time when systems have a 0% user errors, without the users the SysAdmin role has no purpose. That makes the users the customers and although I have never subscribed to the customer always being right, restricting the users productivity in the name of simplifying or reducing costs in the SysAdmin role is not good management nor good fiscal policy IM(NS)HO.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://178825]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (7)
As of 2014-12-27 06:01 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (176 votes), past polls