From: Austin Ziegler Date: 2006-10-28T04:21:13+09:00 Subject: Re: How do I tell when I'm on Cygwin? On 10/27/06, Bill Kelly wrote: > From: "Austin Ziegler" >> On 10/27/06, jameshcunningham@gmail.com wrote: >>> On Oct 26, 6:44 pm, "Austin Ziegler" wrote: >>>> I am equally comfortable in Unix and Windows -- and the longtime >>>> Mac folks who were at RubyConf this past weekend can tell you how >>>> quickly I've adapted to the Mac in just two months (with some >>>> things that I have yet to find a comfortable replacement for). >>> Would you like a candy? A pat on the back? A "who cares - just >>> because you want to increase the amount of work you have to do by >>> making your platforms completely disparate, doesn't mean I have to?" >> I'm just baffled that people are so opposed to Windows conventions >> that they must install a poorly-matched emulation layer to make it >> feel usable. > I'm not baffled. Bully for you. > Did you ever code in VB6? I did, once. Unless the alternative was my > family's starvation, I never would again. I haven't. I've used VBA and built some pretty impressive (if fragile) stuff on top of Access and Word, but I've never had to use full-on VB. Maybe I *am* different than elsewhom participating in this thread: I use the tool that's most appropriate to the environment. I was doing something earlier this year where I needed to copy a dozen files (from disparate locations) over to a single location, while stopping and starting a Windows service. This would have been trivial to write in Ruby. I did it in "Autoit3" because it let me add on a GUI in twenty minutes -- less time than it would have taken in Ruby (although the Ruby version would have been much more maintainable). I still write .cmd scripts for a lot of things (although I write more Ruby scripts). I do this not because I *like* writing in the Windows batch scripting language (I don't), but because said scripts are far more immediately useful and usable than writing for bash and Ruby. I can hand these scripts to my coworkers and they can use them; sometimes they'll have to copy a couple of binaries, but these things just *work*. > There are reasons why I prefer Ruby to VB6, and they're the same kinds > of reasons I prefer bash to cmd.exe. I honestly, except possibly for aliases (which I'm using less and less in Unix environments[1]), don't see what *REAL* advantage bash gives over cmd.exe. Remember: I'm *fluent* in both (which was the real point my first paragraph to which Mr Cunningham responded). I find command- line editing in bash a pain in the ass whether you're in vi or emacs bindings mode (set -o vi; it defaults to emacs). * Bash has history displayable through 'history'. cmd.exe displays it as a selectable menu with F7 and cycles through F8. I'd score a minor point for cmd.exe; there's a few advanced things you can do with bash and substitution on history recall, but I've rarely seen them used. * Bash can tab complete program names (in the path), filenames, and directories. cmd.exe can tab complete filenames and directories. Score one for bash (path program-name completion is the *only* thing I miss in cmd.exe). * Both have scripting languages; both scripting languages have some impressive capabilities. Bash's language is slightly more powerful, but both are like pulling teeth. I'd rather use Ruby, and both bash and cmd.exe treat these equally. There are other things, but by and large I find them both to be a wash in the use. I don't even miss "screen" on Windows because it's trivial to open another command window. > What baffles me is the lack of outrage on the part of folks who > who can use VB6 or cmd.exe without being deeply offended at these > abominations being perpetrated on the computing world. Except that both actually *do* *their* *job*. I'm more outraged at PHP than at VB6, because VB6 at least only affects Windows users. Seriously, on an IBM mainframe, I'd use JCL (and *that* is truly ugly, IMO) rather than insisting on a scripting language or shell that isn't part of the operating system install. I think, Bill, what I'm most surprised at is the lack of pragmatism presented by the folks who have suggested Cygwin as a solution. It's most definitely not a pragmatic solution 99% of the time; it's a cop- out. (I worked in an environment once where the DBA had insisted on the presence of MKS to administer Oracle on Windows. This was the most disastrous thing that I'd seen in a while, and it showed in how much *extra* work was being done to maintain the Oracle processes.) Cygwin has its place. That place is very limited. -austin [1] I use shell functions far more often these days. Aliases are mostly useless for my purposes. -- Austin Ziegler * halostatue@gmail.com * http://www.halostatue.ca/ * austin@halostatue.ca * http://www.halostatue.ca/feed/ * austin@zieglers.ca