Path: utzoo!attcan!uunet!samsung!dali.cs.montana.edu!rpi!crdgw1!sixhub!davidsen From: davidsen@sixhub.UUCP (Wm E. Davidsen Jr) Newsgroups: comp.unix.programmer Subject: Re: Why use U* over VMS Message-ID: <2116@sixhub.UUCP> Date: 22 Oct 90 01:00:09 GMT References: <16438@shlump.nac.dec.com> Reply-To: davidsen@sixhub.UUCP (bill davidsen) Organization: *IX Public Access UNIX, Schenectady NY Lines: 55 Well, there are a lot of tools using the same conventions, so you can learn something and use the info in many places. Regular expressions come to mind. There are a number of user interfaces, allowing the developer to use the one most suited to his (her) needs or preferences. In the same vein there are more editors than you can count, and many are customizable. UNIX has a large number of tools which manipulate data and pass it on, giving the ability to do many ad hoc text enquiries and manipulations using pipes, without intermediate files. This is simply not practical in VMS, due to the high overhead required for process creation. No matter what the horsepower of the CPU, a pipe with more than a few processes is slow. I have run DECshell on an unloaded large VAX (sorry, number escapes me), and it is a pig. The filenames are more consistant in UNIX, and you can have links when needed to make directory structures intuitive. That doesn't mean simple, just that you can find the same data file in /techrept/mit and mit/techrept, without having multiple copies. You don't need to know where a file is physically to get to it, that's the diference of "~joe_s/doc/scan" as opposed to "BIGVAX::USR$DISK3:[JOES.DOCS]SCAN." VMS assumes that it knows what you're doing, and UNIX assumes that *you* know what you're doing. If a filename doesn't have a dot in it VMS usually wants to add one, and a filetype. Often it guesses right, but it still guesses. UNIX has what appear to be better tools standard to allow multiple users to develop on the same project, Notable SCCS and make. And there are versions of these themes if you don't find vanilla fits your situation. Portability is important. You can do development on a number of platforms, and if you follow some rules the result can be run on any and all of them. You really can do development on mixes like Ultrix, SunOS, and V.3.2, with all developers compiling the successive production parts on their machine, but doing the editing and testing of modules against the current base locally. NFS makes this possible. Access control in VMS can be by access control list, that's not in most versions of UNIX. UNIX uses groups to get the same functionality, but it works poorly if you have a large number of files and need to control access to each one individually. That is not usually needed or even remotely useful in most software development environments. That's about it for head to head in my mind, I find the UNIX environment easy to tailor to the way I want a computer to work, and that usually improves productivity. -- bill davidsen - davidsen@sixhub.uucp (uunet!crdgw1!sixhub!davidsen) sysop *IX BBS and Public Access UNIX moderator of comp.binaries.ibm.pc and 80386 mailing list "Stupidity, like virtue, is its own reward" -me