The "object oriented" idea sounds good. Until you, the human, need to look at the intermediate results.
Like (trivial) "ls > ls.txt; sort ls.txt". Now if ls produces human readable output the output cannot be object. Therefore sort must be able to parse text, not objects.
In practice it means it is extremely nice that everything is text, every application (and there are quite a few in *nix) understands text. Only because humans do. And that is what command line is for: humans.
If, OTOH, you want to pass objects (as they make error prone parsing unnecessary) you can use, as pointed out, Perl/BeanShell/... Those, BTW, do things much better anyway, because they are "real" languages.
You really, really shouldn't tell shortcut keys. As a lot of people have said, they have changed. And worse than that, they are extremely inconsistent even with Microsoft applications. One of the most used (by me) is find (usually ctrl-f - but not always) and find-next (f2/ctrl-g/...). See http://msdn2.microsoft.com/en-us/library/ms971323. aspx (at the end).
Well, the situation is can be worse in Linux, but it is definitely no excuse - Linux applications are not done by one company.
I don't see a moral problem with a tool I created being used for war. I do. Especially tools designed to be used for war.
Everything can be subverted for use in war But they are not, originally, tools created for war. Your bread example is a good one: when the bread was done (by the farmers), it was not made for war (and if the farmers did it for that purpose, I would condemn them too). It was converted for the war later (when delivered to the soldiers), and the converter does not get any of my sympathies.
Just like Linux... it is not designed for war. Unfortunately it can be used to make "instruments of death". I do not condemn Linus, I condemn those who use make those weapons.
To me making money is not the evil, to me the terrible suffering is the evil.
it has made development in Java much more productive and safe. Has it really?
To be honest, I do not know. It certainly makes programming harder and slower. And some people (who advocate dynamic languages like Python) claim that unit tests are "better" at catching errors than static analysis.
"Better" to be understood in business sense, i.e. minimize "errors left * price used to find them", etc.
I use Lightning for my calendar. It is one of the worst applications I have ever used.
1. It does no longer give alarms. Maybe wirtuawin affects? 2. It does not understand Microsoft tnef stuff. I get all my appointments send by Outlook. No, I cannot tell every Outlook user to configure their email. 3. The "new event" dialog is modal. WFT??? Why it disallows me from copying stuff from e-mails? See point 2. 4. Week (and day) view shows whole day. From 0:00 to 23:59. Cannot be changed. 5. Sometimes the "Agenda" does not go forwards. Most of the time it does.
The "object oriented" idea sounds good. Until you, the human, need to look at the intermediate results.
Like (trivial) "ls > ls.txt; sort ls.txt". Now if ls produces human readable output the output cannot be object. Therefore sort must be able to parse text, not objects.
In practice it means it is extremely nice that everything is text, every application (and there are quite a few in *nix) understands text. Only because humans do. And that is what command line is for: humans.
If, OTOH, you want to pass objects (as they make error prone parsing unnecessary) you can use, as pointed out, Perl/BeanShell/... Those, BTW, do things much better anyway, because they are "real" languages.
You really, really shouldn't tell shortcut keys. As a lot of people have said, they have changed. And worse than that, they are extremely inconsistent even with Microsoft applications. One of the most used (by me) is find (usually ctrl-f - but not always) and find-next (f2/ctrl-g/...).. aspx (at the end).
See http://msdn2.microsoft.com/en-us/library/ms971323
Well, the situation is can be worse in Linux, but it is definitely no excuse - Linux applications are not done by one company.
Just like Linux ... it is not designed for war. Unfortunately it can be used to make "instruments of death". I do not condemn Linus, I condemn those who use make those weapons.
To me making money is not the evil, to me the terrible suffering is the evil.
Soldiers??? Do you have any clue who gets killed in modern wars?
To be honest, I do not know. It certainly makes programming harder and slower.
And some people (who advocate dynamic languages like Python) claim that unit tests are "better" at catching errors than static analysis.
"Better" to be understood in business sense, i.e. minimize "errors left * price used to find them", etc.
You can do the same in C++, trivially.
Besides, it does give warnings:
Note: kkk.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
I use Lightning for my calendar. It is one of the worst applications I have ever used.
1. It does no longer give alarms. Maybe wirtuawin affects?
2. It does not understand Microsoft tnef stuff. I get all my appointments send by Outlook. No, I cannot tell every Outlook user to configure their email.
3. The "new event" dialog is modal. WFT??? Why it disallows me from copying stuff from e-mails? See point 2.
4. Week (and day) view shows whole day. From 0:00 to 23:59. Cannot be changed.
5. Sometimes the "Agenda" does not go forwards. Most of the time it does.
Lightning is not a substitute for anything.