Switch to .ruby extension?

  • Thread starter Karl von Laudermann
  • Start date
K

Karl von Laudermann

The current convention for Ruby source file names is to end them with
a .rb extension. This strikes me as too minimalistic. Why not .ruby?

File extensions of more than three characters are very commonplace,
now that Windows supports them. HTML files generally have a .html
extension; you very rarely see .htm anymore. And Java source and
object files have .java and .class extensions, respectively. "ruby" is
only two more letters than "rb", but I think it's clearer and more
aesthetically pleasing.

So, I propose a change in the convention from .rb to .ruby. Now, I'm
not suggesting that everyone change all of their existing scripts and
libraries, or even the files in the Ruby distribution. That would be
excessive for such a small thing. But, for example, the Windows
installer could associate both .rb and .ruby files with ruby.exe, and
we could start using .ruby in new projects.

Yes it's a silly little thing. But ever since Y2K, I've been wary of
excessive abbreviation. :) Besides, it's the attention to the little
things that makes Ruby so appealing.
 
N

Neil Stevens

Karl said:
... we could start using .ruby in new projects.

What stops you from doing so now?

You're sure never going to get me to start mangling my script names that
way. I leave script names unadorned, in case I ever wish to change the
implementation. This already paid off with shell scripts that I moved to
ruby. :)
 
M

Mark Hubbart

What stops you from doing so now?

Well, it's not just a convention. it's built-in. Try requiring 'foo'
when the file is named foo.rb.

FWIW, I see no reason not to support this, as long as it's an alternate
extension. Having a file named foo.ruby is at least as easy to
recognize as foo.rb.
You're sure never going to get me to start mangling my script names
that
way. I leave script names unadorned, in case I ever wish to change the
implementation. This already paid off with shell scripts that I moved
to
ruby. :)

Same here :) But I think OP was talking about libraries/included code.
--
Neil Stevens - neil @hakubi.us
"The world is a dangerous place to live; not because of the people who
are evil, but because of the people who don't do anything about it."
-- Albert Einstein(?)

"I should have been a plumber." -- Albert Einstein :)
 
N

Neil Stevens

Mark said:
Well, it's not just a convention. it's built-in. Try requiring 'foo'
when the file is named foo.rb.

FWIW, I see no reason not to support this, as long as it's an alternate
extension. Having a file named foo.ruby is at least as easy to
recognize as foo.rb.

Sure, I'm concerned about scripts, not libraries, though.
Same here :) But I think OP was talking about libraries/included code.

Well, he did say scripts and libraries. I don't see what the names matter
for libraries, though. Only the scripts are user-visible.
 
T

Tyler Zesiger

The obsessive levels of abbreviation in the *nix world infuriate me.
Especially when it's so easy to make verbose and abbreviated commands
exist together, and do the same thing.

I remember when I first started using linux (now I use FreeBSD, which is
no better in this regard), I spent an hour trying to figure out how to
copy a file..."copy" didn't work. Searching the internet for info on
"copying" didn't turn up anything, probably because Google wasn't what
it is now, back then. I had to finally get on IRC and ask someone how to
copy - Turns out it's "cp". It will take me a decade of typing "cp",
with it's two fewer letters than "copy", to earn back the hour it took
me to figure out the command in the first place.

When I mention to *nix people how easy it would be to make "copy" work
simultaneously along with "cp" for the sake of user-friendliness, I'm
met with scorn and rage, and cat-calls saying "go back to windows". It
seems that most *nix people have no interest in other people, even to
the small extent of making things accessible for newcomers to their
favorite tools. That's what I call an antisocial failure to communicate.

Ruby ought to have a either a .ruby extension, or no extension at all,
as someone else mentioned in this thread. I'm sure lots of anti-social
types find their meaning in life by insulting the intelligence of people
who can't figure out what ".rb" means, but I'm not one of them. I
wholeheartedly agree with you, that abbreviations are ancient relics of
an elitist and anti-social past, and they should be buried with the
creaky old coots that invented them.
 
L

Lothar Scholz

Hello Neil,


NS> What stops you from doing so now?

Some braindead lines in the ruby interpreter. You can't even "require" rbw files
without patching the hardcoded extensions names in eval.c
 
H

Hal Fulton

Tyler said:
The obsessive levels of abbreviation in the *nix world infuriate me.
Especially when it's so easy to make verbose and abbreviated commands
exist together, and do the same thing.

I remember when I first started using linux (now I use FreeBSD, which is
no better in this regard), I spent an hour trying to figure out how to
copy a file..."copy" didn't work. Searching the internet for info on
"copying" didn't turn up anything, probably because Google wasn't what
it is now, back then. I had to finally get on IRC and ask someone how to
copy - Turns out it's "cp". It will take me a decade of typing "cp",
with it's two fewer letters than "copy", to earn back the hour it took
me to figure out the command in the first place.

True. But the best thing would have been to read a tutorial of some
kind. It would have taken an hour, and you might have saved many hours
that you now will not get back.
When I mention to *nix people how easy it would be to make "copy" work
simultaneously along with "cp" for the sake of user-friendliness, I'm
met with scorn and rage, and cat-calls saying "go back to windows". It
seems that most *nix people have no interest in other people, even to
the small extent of making things accessible for newcomers to their
favorite tools. That's what I call an antisocial failure to communicate.

Heh heh, no scorn and rage here.

Ordinarily this would be easy in Unix -- you'd make a link from cp to
copy. But it doesn't work here (unless I'm behind the times) for an
interesting reason. Such programs as cp. mv, and ln are traditionally
actually links to the *same* program on disk. Their different behavior
is explained by the fact that this program checks argv to see what name
it was invoked with, in order to know how to behave.

Believe me, this made a lot more sense in 1972 than it does today.

Of course, most shells have an "alias" feature; you can do something
like alias copy=cp or the like.

Failing that, you could always make your own script "copy" that simply
said cp $* or whatever.
Ruby ought to have a either a .ruby extension, or no extension at all,
as someone else mentioned in this thread. I'm sure lots of anti-social
types find their meaning in life by insulting the intelligence of people
who can't figure out what ".rb" means, but I'm not one of them. I
wholeheartedly agree with you, that abbreviations are ancient relics of
an elitist and anti-social past, and they should be buried with the
creaky old coots that invented them.

LOL!

There are many things in society, not just in computing, where this is
true. :)


Hal Fulton,
Creaky Old Coot
 
J

James Britt

Karl said:
The current convention for Ruby source file names is to end them with
a .rb extension. This strikes me as too minimalistic. Why not .ruby?

File extensions of more than three characters are very commonplace,
now that Windows supports them. HTML files generally have a .html
extension; you very rarely see .htm anymore. And Java source and
object files have .java and .class extensions, respectively. "ruby" is
only two more letters than "rb", but I think it's clearer and more
aesthetically pleasing.

So, I propose a change in the convention from .rb to .ruby. Now, I'm
not suggesting that everyone change all of their existing scripts and
libraries, or even the files in the Ruby distribution. That would be
excessive for such a small thing. But, for example, the Windows
installer could associate both .rb and .ruby files with ruby.exe, and
we could start using .ruby in new projects.

The package installer for Blogtari uses the .ruby extension.

This came out of necessity; I moved from distributing the app as a
tarball to deploying a self-extracting Ruby script that prompts the user
for configuration details, writes out (or updates) the config file, and
installs the program. But whereas serving up *.tgz worked fine, serving
up *.rb from the web server caused it to execute on the server :).

While there are any number of workarounds for this, I opted to use the
ruby extension and tell Apache to serve it as a particular MIME type so
that browsers would prompt the user to save it to disk.


Jamess
 
G

Gennady

Tyler said:
The obsessive levels of abbreviation in the *nix world infuriate me.
Especially when it's so easy to make verbose and abbreviated commands
exist together, and do the same thing.

I remember when I first started using linux (now I use FreeBSD, which is
no better in this regard), I spent an hour trying to figure out how to
copy a file..."copy" didn't work. Searching the internet for info on
"copying" didn't turn up anything, probably because Google wasn't what
it is now, back then. I had to finally get on IRC and ask someone how to
copy - Turns out it's "cp". It will take me a decade of typing "cp",
with it's two fewer letters than "copy", to earn back the hour it took
me to figure out the command in the first place.

When I mention to *nix people how easy it would be to make "copy" work
simultaneously along with "cp" for the sake of user-friendliness, I'm
met with scorn and rage, and cat-calls saying "go back to windows". It

Go back to windows ;-)

More seriously, In Unix you spend almost all your time at the command
prompt, so it would "infuriate" me if I had to type at least twice as
much all the day if commands were called as you suggest. As for
newcomers, short command names is the least problem they would encounter
if they switch from Windows (for completely fresh people it does not
matter what command set to learn anyway).

On the other hand, you have a lot of means to alias any command in any
Unix shell.
 
M

Mark Hubbart

I remember when I first started using linux (now I use FreeBSD, which
is no better in this regard), I spent an hour trying to figure out how
to copy a file..."copy" didn't work. Searching the internet for info
on "copying" didn't turn up anything, probably because Google wasn't
what it is now, back then. I had to finally get on IRC and ask someone
how to copy - Turns out it's "cp". It will take me a decade of typing
"cp", with it's two fewer letters than "copy", to earn back the hour
it took me to figure out the command in the first place.

heh :) I had a similar experience, coming from a Mac, with no command
line, to a Mac running OS X, with a full fledged UNIX interface, when
you want it... it was all very frustrating until a friend pointed me in
the direction of the 'apropos' tool. After that, it was mostly smooth
sailing.

I don't think that there should be extra commands littering up the one
monolithic namespace of shell commands. A simple 'help' tool, which
relays a few ways of finding various commands, should, IMHO, be
included. A few tips about apropos, man, and a short note about how
command line arguments work. That would be enough, I think, to get a
determined person up and running.

cheers,
Mark
 
T

Tyler Zesiger

I think I may be earning myself a reputation as a user-friendliness
Nazi, but I see no reason why a CLI can't be *very* user friendly. For
example, if someone types in "copy", it could spit out some
context-sensitive help about the right way to do a copy. These are the
nice little touches that take a product into the realm of maturity, in
my opinion. When it's so well designed, and so well understood by the
designers, that it's designed to help you get to where you're trying to
go, even when you're not exactly sure how to proceed.

Most people argue that, if you've got the gumption to use Unix, you've
got the gumption to hike the learning curve - And if you need to have
your hand held along the way, you're better off with a GUI'd OS anyways.
All of that may be true, but it's beside the point. The point is that
the paradigm is all wrong. To intentionally make things cryptic, and
then to leave them that way for decades on end is deplorable, and speaks
volumes about the direction that The Powers That Be are headed in.

Is it a crime to make a powerful and sophisticated software system easy
enough for children to use? Is it so bad if all the complexity is tucked
away under a nice interface until needed? (Be it command line or GUI, or
who knows what else). MacOSX seems to be a hit with Mac users.
Apparently, shoving all the sophistication under the rug has worked for
them. *nix OS's are a decade behind in the UI/user-friendliness
department, and there's no good reason for it to be like that. The
hardcore hackers don't need to lose anything if Timmy The Five Year Old
has an overlying interface to Unix that makes sense to him, so why the
incredible opposition to user-friendliness?

My beef is with *nix people who think user-friendliness is a bad thing -
A threat to their way of thinking. It's utter nonsense. Software is kind
of a commodity these days, in that oftentimes, you can't even give it
away. That which isn't used, has no value. That which is used more, has
more value.

The user-friendliness paradigm in the *nix world should change, it makes
no difference whether it necessarily needs to or not. Everything good,
should be easy to use, otherwise, it might as well not be so good. If
someone out there isn't able to use it, for that person, it doesn't even
exist.

That's the way I think.
 
Z

Zach Dennis

I think I may be earning myself a reputation as a user-friendliness
Nazi, but I see no reason why a CLI can't be *very* user friendly. For
example, if someone types in "copy", it could spit out some
context-sensitive help about the right way to do a copy. These are the
nice little touches that take a product into the realm of maturity, in
my opinion.

Since the CLI is mostly used by developers, hard core users, wannabe geeks
and system administrators i don't really see the need to make the CLI this
user friendly. Not everything is meant to be a all in one jack in the box
with instructions on how to crank the lever. Would you like ASCII drawn
color images next to give the uesr a visual cue as well?
When it's so well designed, and so well understood by the
designers, that it's designed to help you get to where you're trying to
go, even when you're not exactly sure how to proceed.

Ok, the last place I want an end user is on the command line. They might
hurt themselves or the machine. And if you don't know how to use a product,
operating system, programming language, etc... RTFM.

As operating systems upgrade they may include all of these nice step by step
guides and procedures on how to do something, but since everything is
merely a perspective away I think that it causes more of a problem then it
solves. One person may like "cp", another "copy", another "duplicate",
another "clone" , another "copyfile", and the list can go on and on. To
support every variation would be a waste of developer time. And if you say
dont' support them all only support "copy" then you are being selfish and
only looking at this from your perspective. At some point someone had to
make the decision for it to be consistent across the board and I applaud
them. I have never used any languageset besides the default english one that
comes with any OS, but I would be interested to see if the spanish version
changes "cp" to "~cpiol" or some variation. If commands are consistent
across languages then I even more so disagree with you.
Most people argue that, if you've got the gumption to use Unix, you've
got the gumption to hike the learning curve - And if you need to have
your hand held along the way, you're better off with a GUI'd OS anyways.

Only insecure people who like to feel like they are 1 step higher then
others on the food chain do this. It makes them feel like somehow they are
better, smarter, more intelligent! Computers aren't innate, nothing in
technology is. Everything you know you have learned. You don't have a two
year old who innately knows how configure a syslogd server one day.

All of that may be true, but it's beside the point. The point is that
the paradigm is all wrong. To intentionally make things cryptic, and
then to leave them that way for decades on end is deplorable, and speaks
volumes about the direction that The Powers That Be are headed in.

Cryptic? cp to do a file copy isn't cryptic. An MD5 Hash of cp to do a file
copy is cryptic.
Is it a crime to make a powerful and sophisticated software system easy
enough for children to use?

No let's put a giant red button on each machine that says format, so they
can go push it. Anyways that is why children start with LeapFrog when they
are young, then they progress to using a computer. Then they learn on how to
use the computer.
Is it so bad if all the complexity is tucked
away under a nice interface until needed? (Be it command line or GUI, or
who knows what else). MacOSX seems to be a hit with Mac users.

And Linux is a hit with Linux users, BSD is a hit with BSD users and Windows
is a hit with uneducated users. ;) MacOSX and MS Windows are the only OS's
where the Apple or Microsoft tried to reach every age, child, race and
religion of computers. Linux/BSD/UNIX were never intended that way. You are
taking the problem that Linux/BSD/UNIX solve and trying to reshape it.
Apparently, shoving all the sophistication under the rug has worked for
them. *nix OS's are a decade behind in the UI/user-friendliness
department, and there's no good reason for it to be like that.

Again the *Nix OS's were never intended to be an all in one jack in the box.
That is Windows and OSX's job. And although Windows and OS X are very pretty
they run much slower then my CLI nix box and because they have nice pretty
icons ticks me off, especially when the icons by default in Windows Longhorn
are half the size of my 21" monitor.

The
hardcore hackers don't need to lose anything if Timmy The Five Year Old
has an overlying interface to Unix that makes sense to him, so why the
incredible opposition to user-friendliness?

There are distributions of Linux that aim for this sort of thing. Maybe you
should google for it or check it out....http://www.linuxiso.org
My beef is with *nix people who think user-friendliness is a bad thing -
A threat to their way of thinking. It's utter nonsense. Software is kind
of a commodity these days, in that oftentimes, you can't even give it
away. That which isn't used, has no value. That which is used more, has
more value.

User friendliness is not a bad thing, but realize most *nix people don't use
*nix for UI's and GUI's. Most *nix users won't have a need for a intuitive
all in one UI and GUI. So why would they want to support it, if it doesn't
necessarily benefit them? And there are distro's aimed for UI and GUI
friendliness, go look at the link I gave you and browse the different
distros.

When you go buy technical books do you look for the popup books? If so I can
totally see where you are coming from and why you had so much frustration
finding "cp".

Also if you would have moved from Unix to Windows, you be asking where "cp"
was and wtf "copy" was there.

Zach
 
T

Tyler Zesiger

Zach said:
Since the CLI is mostly used by developers, hard core users, wannabe geeks
and system administrators i don't really see the need to make the CLI this
user friendly. Not everything is meant to be a all in one jack in the box
with instructions on how to crank the lever. Would you like ASCII drawn
color images next to give the uesr a visual cue as well?

As a matter of fact, I think that's an excellent idea. But, as I
mentioned later in the post, it's not really the point. It's the
anti-user-friendliness paradigm that's the real problem, not the
peculiarties of the command line, per se.

[snip]
Ok, the last place I want an end user is on the command line. They might
hurt themselves or the machine. And if you don't know how to use a product,
operating system, programming language, etc... RTFM.

Someone once told me to "RTFM" when I couldn't figure out how to work a
*nix text editor. I felt insulted, that he insinuated that *I* was the
one with the problem, not the text editor. In fact, text editors are
dang near the oldest software technology we have. I've used dozens,
maybe even hundreds of them, and not once have I ever had to "RTFM"
before starting to use it, because they've all adopted the same
intuitive UI conventions that have worked well for a decade - Except for
*nix editors. They're 20 years out-of-date.

If you try to argue that typical *nix editors are in fact easy to use
(vi, et al), and it's "obvious" how to use them, as many *nix people do,
maybe you should step out of your geek-bubble and try learning something
completely new - maybe something that's also poorly designed and 20+
years out of date.

I'd suggest something like American manufacturing. As soon as someone
hears you complaining about stupidly the drill index is organized,
you'll probably be told something as insulting as "RTFM". Almost
everything is unintuitive, from a newcomer's perspective, if not
everyone's. To the dinosaurs still working in American industry, it's
"obvious" how things work, and they'll have no patience with you. As
I've seen happen many times before, your intelligence will be called
into question and you'll get fired the next day.

All because of crappy systems that refuse to die, because of arrogance
and silly "tradition".
As operating systems upgrade they may include all of these nice step by step
guides and procedures on how to do something, but since everything is
merely a perspective away I think that it causes more of a problem then it
solves. One person may like "cp", another "copy", another "duplicate",
another "clone" , another "copyfile", and the list can go on and on. To
support every variation would be a waste of developer time. And if you say
dont' support them all only support "copy" then you are being selfish and
only looking at this from your perspective. At some point someone had to
make the decision for it to be consistent across the board and I applaud
them.

I think "copy" is something everyone could agree upon, but I don't see
why it should take up a lot of developer time to make a "synonym file"
that contains all of the words and phrases that might trigger a help
program to explain the proper way to do things...even if that proper way
is still good 'ol cp.
I have never used any languageset besides the default english one that
comes with any OS, but I would be interested to see if the spanish version
changes "cp" to "~cpiol" or some variation. If commands are consistent
across languages then I even more so disagree with you.

Once again, the *nix world is behind the times. It's called
"localization". There's no reason that it can't be internationalized.
Mandrake Linux has already taken a stab at it. Microsoft has been doing
it for a decade, or more. It can be done, and the interest is surely
there. The only reason it hasn't happened is because of the arrogant
"RTFM" mentality in the *nix crowd, and the unwillingness of The Powers
That Be to cooperate. How hard would it be to create a language plugin
system that can intermediate between the OS inner workings and the end
user, in order to provide the language the user wants?

I'm not suggesting we go and much with all the stuff that's well tested
and works well, since that was your idea. But, once again, none of this
is the point. The point is that user-friendliness is frowned upon in the
*nix culture, for no good reason. I can only attribute it to arrogance,
or maybe something akin to forbidding the translation of the bible from
Latin. Who knows.
Only insecure people who like to feel like they are 1 step higher then
others on the food chain do this. It makes them feel like somehow they are
better, smarter, more intelligent! Computers aren't innate, nothing in
technology is. Everything you know you have learned. You don't have a two
year old who innately knows how configure a syslogd server one day.

Oh yeah, I totally agree. That's the root reason for all this ranting
I'm doing. Nothing is obvious, no matter how many times people say that
it is. I guess that's why we have warning labels on everything in the
USA, haha. Well, maybe the actual reason is because of the argument
behind who's responsible for things not being obvious...
Cryptic? cp to do a file copy isn't cryptic. An MD5 Hash of cp to do a file
copy is cryptic.

If a black screen with a blinking cursor is not cryptic, I don't know
what is. Windows has a "Start" menu. Why can't the command line say
"type 'man' for help" the first few times it boots up? I can't tell you
the grief I suffered in the IRC chans when I first asked for help. All
people would say is simply "man". What is "man"? I didn't know.

Oh, here's a good opportunity to mention that "help" doesn't help unless
you know exactly what you need help with. "help cp" works, but as I
found out all those years ago, "help copy" does not. That makes the help
command virtually useless for someone who has no idea where to begin.
No let's put a giant red button on each machine that says format, so they
can go push it. Anyways that is why children start with LeapFrog when they
are young, then they progress to using a computer. Then they learn on how to
use the computer.

Computer games for the youngest children are no more complex than
leapfrog. It's certainly a good way to start the progression, as you
say. I'm not even going to comment on the big red button idea.
And Linux is a hit with Linux users, BSD is a hit with BSD users and Windows
is a hit with uneducated users. ;) MacOSX and MS Windows are the only OS's
where the Apple or Microsoft tried to reach every age, child, race and
religion of computers. Linux/BSD/UNIX were never intended that way. You are
taking the problem that Linux/BSD/UNIX solve and trying to reshape it.

Yep.

*nix OS's can do anything, so why limit them to an elitist geekdom? As
far as I know, you're wrong about what *nix OS's were intended for. It
looks to me like they've been designed to capably handle anything you
want them to.
Apparently, shoving all the sophistication under the rug has worked for
them. *nix OS's are a decade behind in the UI/user-friendliness
department, and there's no good reason for it to be like that.


Again the *Nix OS's were never intended to be an all in one jack in the box.
That is Windows and OSX's job. [snip]

This webpage -
http://www.stud.ntnu.no/~shane/dokumentasjon/commandline.html - has the
following to say about what Linux is useful for:

"You can hook it up to twelve other Linux boxes and make it into part of
a parallel computer. You can configure it so that a hundred different
people can be logged onto it at once over the Internet, via as many
modem lines, Ethernet cards, TCP/IP sockets, and packet radio links. You
can hang half a dozen different monitors off of it and play DOOM with
someone in Australia while tracking communications satellites in orbit
and controlling your house's lights and thermostats and streaming live
video from your web-cam and surfing the Net and designing circuit boards
on the other screens."
There are distributions of Linux that aim for this sort of thing. Maybe you
should google for it or check it out....http://www.linuxiso.org

I know about those. They're the exceptions to the rule. I'm complaining
about the rules, not the exceptions.
User friendliness is not a bad thing, but realize most *nix people don't use
*nix for UI's and GUI's. Most *nix users won't have a need for a intuitive
all in one UI and GUI. So why would they want to support it, if it doesn't
necessarily benefit them? And there are distro's aimed for UI and GUI
friendliness, go look at the link I gave you and browse the different
distros.

GUI's aren't really what I'm advocating here. I use the commandline
exclusively, and I like it. I'm advocating a general attentiveness to
user-friendliness. Unix systems aren't really experimental anymore, it's
time to make them easier to use.
When you go buy technical books do you look for the popup books? If so I can
totally see where you are coming from and why you had so much frustration
finding "cp".

I'm too old for popup books, but I *do* look for books that are easy to
understand. Doesn't everybody? And, I had a hard time finding "cp"
because I was staring at a black screen with a blinking cursor, with no
other clues as to what to do next - NOT because I have the mind of a 3
year old, as you insinuate.
Also if you would have moved from Unix to Windows, you be asking where "cp"
was and wtf "copy" was there.

Yes, but only if I had a hard time finding out the proper way of doing
things. Windows is in a whole other league as far as this is concerned.
 
B

Ben Giddings

Ok, this is really not the area to discuss the pros and cons of generic
user friendliness. If you really want to get into it, could you do it
offline?

For what it's worth, I think the .ruby filename extension idea is a good
one. As far as I know, Windows doesn't have problems with long
filenames anymore, so why not?

And, although I don't think it's appropriate for this list, I still want
to make a couple of comments about unix user-friendliness:

Tyler said:
Someone once told me to "RTFM" when I couldn't figure out how to work a
*nix text editor. I felt insulted, that he insinuated that *I* was the
one with the problem, not the text editor. In fact, text editors are
dang near the oldest software technology we have. I've used dozens,
maybe even hundreds of them, and not once have I ever had to "RTFM"
before starting to use it, because they've all adopted the same
intuitive UI conventions that have worked well for a decade - Except for
*nix editors. They're 20 years out-of-date.

Unix editors are not "out of date", they're just different. Saying that
Unix editors are out of date is like saying that Chinese is out of date.
So many countries now use a roman alphabet, that China should "get
with the times" and use a roman character set, and complaining that it's
hard to read Chinese.

I agree, the first time you use vi or emacs you'll definitely need a
manual close by or you'll be completely lost. On the other hand, how
many career programmers do you know that use Notepad as their primary
editor?

The ideal for usability is something that has a gradual learning curve,
and has extremely advanced features that are slowly exposed. Very
things meet that ideal, however.

Notepad has an extremely shallow learning curve, but it plateaus very
quickly. Emacs and vi have very steep learning curves, but it could be
argued that they never plateau.

I agree that both vi and emacs would be better editors if you could
start them in 'beginner' mode, where they were constantly helping you
out, and, as you progressed, they became less and less helpful, and
exposed more and more hidden features. That would be great for
beginners, and as the beginners became more and more advanced, they'd
unlock more of the more powerful features of the editor.

But vi and Emacs are not commercial products. They're made by advanced
developers for advanced developers, and so far, nobody has found it to
be a priority to make them easy to use at first try. And why should
they? There are plenty of other editors that are really easy to use,
visual ones like Kedit or terminal ones like pico.

It used to be that Linux was only for the extremely daring, and the very
knowledgable. These days using Knoppix is probably almost as easy as
using Windows. But the focus of all these usability improvements has
been the graphical environment. Both Gnome and KDE do a lot to make a
new user's experience as friendly and easy as possible.

So far, nobody has really found it necessary to make the commandline
user friendly. I guess the theory is that if the GUI is made friendly
enough, people don't have to even know the commandline exists (and I
guess OS X is proof that concept can work).
If a black screen with a blinking cursor is not cryptic, I don't know
what is. Windows has a "Start" menu. Why can't the command line say
"type 'man' for help" the first few times it boots up? I can't tell you
the grief I suffered in the IRC chans when I first asked for help. All
people would say is simply "man". What is "man"? I didn't know.

Oh, it can! It would be really easy to modify the shell startup files
to print this sort of message out, or to set up a bunch of useful
aliases. By default, 'zsh' tries to correct you when you mistype
something. Isn't that friendly?

The thing is, people who care about usability have focused on the
graphical environment. The nice thing about open source, however, is
that you're free to fix anything you feel is open.

If you think that the default shell startup files should print out a
page of introductory text explaining how to use the shell, create those
files, and either find a distribution that wants to use them, or start
your own 'CommandlineFriendly' distribution. If it really bothers you,
but you're not willing to put any time into fixing it, then why are you
complaining?

However, knowing that a commandline is difficult, why would you start
using it unprepared? There are lots of books out there that will help
you learn Unix, so why not use them?

To me, complaining about the user-unfriendliness of the commandline is
like complaining about the user-unfriendliness of a jet cockpit. It
probably could be made much more intuitive, on the other hand, the vast
majority of people who find themselves in jet cockpits are experienced
pilots. Rather than needing a simple, friendly interface, they need
something that gives them full control.

Anyhow, this is either trolling or just way offtopic, so I say we stop now.

Ben
 
Z

Zach Dennis

This is way OT now. So I will leave this this:

I see where you are coming from, but I do not necessarily agree with you.
Perhaps someone besides the Linux OS teams could write a package for the
type of behavior you are looking for, but I do not think it is in the scope
of the core OS itself.

Zach
 
T

Tyler Zesiger

Ben Giddings wrote:

[snip]
Unix editors are not "out of date", they're just different. Saying that
Unix editors are out of date is like saying that Chinese is out of date.
So many countries now use a roman alphabet, that China should "get with
the times" and use a roman character set, and complaining that it's hard
to read Chinese.

Actually, Unix editors aren't different - they're the same as every
other text editor was 20 years ago. That is to say, obsolete. (or should
I say obsol33t?)

It's ironic you should sarcastically mention Chinese as being out of
date, because that's *exactly* how it's viewed in China. China has
always had a literacy problem because the Chinese language, the
characters specifically, were just too difficult to master. So, in
modern times, the Chinese government has pushed for it to be simplified
in an effort to improve literacy rates. It's impossible to build a
technologically advanced populace when the primary barrier to entry
isn't higher education, it's mastering your own language.
I agree, the first time you use vi or emacs you'll definitely need a
manual close by or you'll be completely lost. On the other hand, how
many career programmers do you know that use Notepad as their primary
editor?

I prefer TextPad. I don't think anyone uses Notepad anymore, not for 10
years at least. Your comparing to something that's long since been
superceded.
The ideal for usability is something that has a gradual learning curve,
and has extremely advanced features that are slowly exposed. Very
things meet that ideal, however.

Notepad has an extremely shallow learning curve, but it plateaus very
quickly. Emacs and vi have very steep learning curves, but it could be
argued that they never plateau.

I don't think having a shallow learning curve means it can't be
sophisticated. We're talking about text editors here, it's the easiest
work you can possibly do with a computer, it almost takes effort to
figure out how to make it hard to do.

In any case, when I open up textpad, or any of the thousands of other
modern text editors, it works just like notepad until I dig into the
menu options. Typing letters makes new letters, using backspace or
delete gets rid of them.

[snip]
Oh, it can! It would be really easy to modify the shell startup files
to print this sort of message out, or to set up a bunch of useful
aliases. By default, 'zsh' tries to correct you when you mistype
something. Isn't that friendly?

That's just great, I spend a month figuring out how the OS works, then
another month figuring out how to do that, and I've accomplished nothing
with my time, and by the time I'm done, I no longer need what I've just
spent so much time and money doing. Oh, and the best part is, once I'm
done doing all that, and I no longer need it for myself, and I've lost 2
months worth of working time, I can't recoup my losses because of the
GPL...(this thread will never die if someone replies to this).
The thing is, people who care about usability have focused on the
graphical environment. The nice thing about open source, however, is
that you're free to fix anything you feel is open.

If you think that the default shell startup files should print out a
page of introductory text explaining how to use the shell, create those
files, and either find a distribution that wants to use them, or start
your own 'CommandlineFriendly' distribution. If it really bothers you,
but you're not willing to put any time into fixing it, then why are you
complaining?

Let's assume for the time being that I'm a user, not a Unix hacker, and
that I wouldn't even know where to begin.
However, knowing that a commandline is difficult, why would you start
using it unprepared? There are lots of books out there that will help
you learn Unix, so why not use them?

To me, complaining about the user-unfriendliness of the commandline is
like complaining about the user-unfriendliness of a jet cockpit. It
probably could be made much more intuitive, on the other hand, the vast
majority of people who find themselves in jet cockpits are experienced
pilots. Rather than needing a simple, friendly interface, they need
something that gives them full control.

Another ironic comment, just like the one about the Chinese language.
Have you ever flown a multimillion-dollar, incredibly sophisticated, US
military jet fighter? They're designed to be very easy to use, even
under the most stressful circumstances (like moments before death). It's
designed to be as simple to use as possible, with the UI intervening at
every step. Nothing of the power and sophistication is lost in making it
user-friendly, but quite a lot is gained. The pilot can still adjust
every parameter on that machine, without interference from the UI,
simply because it's well designed.
 
M

Mark Hubbart

Hi,
I just had to comment on one thing.

I know about those. They're the exceptions to the rule. I'm
complaining about the rules, not the exceptions.

Hrm. The reason I have to use the command line at times is because the
GUI was created to be "User Friendly". If we attempted to make *all*
unix command lines accessible to children and other inexperienced
people, it would suck the power right out of it, just like the gui. I
figure that GUIs are for user-friendliness, and command lines are for
raw power. I don't resent the difficult time I had learning how to use
the command line; I figure it's the price I paid to be able to use that
power. If you aren't willing to learn it, you don't get to use it.

I still say a small tool (named 'help') would be a good idea, but I
don't see it as being a full fledged tutorial, just a set of quick
pointers. I know that one of the first things I typed when I sat down
to figure out this "Terminal" thing was 'help'. If that had pointed me
to 'apropos' and 'man', I would have gotten started a lot sooner.
Instead, a friend did it, and I learned it after all.

If you want a super user-friendly command line, install it. But don't
make me use it, I won't touch it. It's user friendly enough for me.

cheers,
Mark
 
T

Tyler Zesiger

I'm not talking about the command line per se, I'm talking about
user-friendliness in general.

Mark Hubbart wrote:

[snip]
 
G

Gennady Bystritsky

I'm not talking about the command line per se, I'm talking about
user-friendliness in general.

You are right, all trollers talk about same thing. You are no exception.
Mark Hubbart wrote:

[snip]
If you want a super user-friendly command line, install it. But don't
make me use it, I won't touch it. It's user friendly enough for me.
cheers,
Mark

Sincerely,
Gennady Bystritsky
 
T

Tyler Zesiger

Gennady said:
You are right, all trollers talk about same thing. You are no exception.

Oh, you've heard these complaints before? So maybe there's some merit in
them.
Mark Hubbart wrote:

[snip]
If you want a super user-friendly command line, install it. But don't
make me use it, I won't touch it. It's user friendly enough for me.
cheers,
Mark

Sincerely,
Gennady Bystritsky
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,581
Members
45,055
Latest member
SlimSparkKetoACVReview

Latest Threads

Top