I'd consider the (slightly) increased difficulty in autogeneration to be a feature rather than a problem. 99% of the time, autogenerating code is a really lame idea. The other 1% of the time, you ought to be generating the indentation, too, for readability/debugability. So Python doesn't really lose here.
The penalties for counterfitting in the USA is $250,000 AND 25 years in prision per offence.
Note carefully the relative penalties assigned to passing a bogus $20 note versus embezzling millions of dollars from your employees' retirement accounts.
If true, this would cancel out the best advantage of Perl 6, which would be to rid the language of all of those incomprehensible syntactic quirks that Perl 5 has accreted. The Perl book is already over 1000 pages long--will it be 2000 pages for Perl 6?
The bad has been so thoroughly discussed by hysterical scaremongers that there's really no point.
If the possibilities don't scare you, I don't think you're paying attention. There are a lot of fundamentalists (of whatever ilk) out there that would like to kill large groups of people (if not all of us), and if this becomes technically and economically feasible, we're going to be in real trouble.
Namecall all you like, but people like us pay attention to FUD like this. It's what companies start to do when they feel like they're having trouble competing on the merits. And though we rarely "command" budgets, we're not entirely ignored by those that do.
The cynic in me says they'll probably replace it with the kind of Secrets of the Psychic Pharaohs crap that The Discovery Channel and The Learning Channel have been running since they bought each other (eliminating competition in basic cable science shows).
Television could be so great, but instead it's a cesspool.
If you ever work on a project with a development team of a hundred or more OO developers, then you need what Rational's tools like ROSE have got, there's really nothing else that can manage projects that complex. Harsh as this may sound, if you're an undergraduate you really don't qualify to have an opinion on ROSE either way.
Yeah, you tell 'em. That young whippersnapper should shut up about real software development, and go back to his open source project (which, incidentally, has a development team of 100 or more, doesn't use Rational tools, and--mirable dictu--actually works.)
Perl would seem a lot more like a language with a future if its adherents would actually discuss its pros and cons rather than just moderating anyone who doesn't love it into the ground.
I was looking into this question a while back, thinking that it would be a fast way to OCR or copy a book without lengthy manual placement or having to cut the binding off the book. The idea is that you could fan the book (i.e., a two-second flip through the pages with your thumb) under such a camera and then postprocess the results to capture the original. It might work, anyway.
In the world of business, there is no right and wrong in the moral sense, only "right" as in following the law and making money.
This is partly correct. Businesses have no primary drive toward lawful behavior, however. They obey laws (and act ethically) only in situations where it is more profitable to do so.
Often they can make more money by flouting the law--this is why they do it so much. It's not that they're evil; they're simply profoundly amoral.
I don't believe that this is the way things should be, but it's the way things are now.
That's an interesting and (to me) educational response, given that I'd never heard of this Rawls. There's a little bit of information here, for anyone interested. He also sounds quite reasonable.
I'm not versed enough in philosophy to be able to say whether your point is correct, so I'll simply concede that RMS's forte might not be philosophical argument. I think of him as more of a doer than a thinker, though he is surely both. And it could turn out that he is wrong.
It is difficult not to read the word propaganda as pejorative however, and it seems a little unfair to me to apply it to his argument.
My key point is that most of the criticism of RMS is misleading, if not outright libel. Given that background, there's little point in trying to judge RMS's ideas based on the words of others. This is so regardless of whether or not he is correct. You really have to hear/read him yourself (it's not like this is difficult to accomplish, in any case).
RMS is portrayed in various places and by various people as being a commie, nut job, etc. I've noticed, however, that all of the times when I have personally listened to or read what he has to say, that it's pretty damn reasonable.
If you want to have an educated opinion, you owe it to yourself to check out RMS's positions personally.
--Mike
Re:Python is a GREAT language, but. . .
on
Think Python
·
· Score: 2
I REALLY dislike any language that depends on white space.... Its a pain to move blocks around and anyone who doesn't use an editor with auto-indent is screwed. Also, unless tabs are set to spaces, computers with differnt tab stops will see your code differently, which can be a problem if code is emailed, etc.
You have to move blocks around in C, C++, Java and Perl, too. Yes, I know these languages' compilers/interpreters don't care about formatting, but programmers still must indent code to show structure. Otherwise you've got unmaintainable garbage.
Once you accept this point, you realize that all of those braces are actually completely spurious. The indentation shows the blocks, the braces are just there for the interpreter/compiler. Python has taken a step forward by eliminating them.
As for tab stops, yes, they are annoying, but the answer to this problem is known. Tab stops must be mod 8. If your terminal/editor/whatever does anything else, it's broken.
I recently spent a couple of months without TV, for a reason unrelated to ideology. Here are a couple of things I noticed:
I had a lot more free time and I did in fact tend to get productive things done with it.
Most of the news content on TV can be had better and faster on the Internet.
TV does have a subtle addictive quality to it that's difficult to detect unless you quit.
It can be rather difficult to escape from TV, even if you try. There almost always seems to be one on, around the house and in many public places. This is particularly onerous in some airports.
Although I'm watching again, occasionally, I do it even less now, and with the knowledge that it really is a nearly utter waste of my time (and therefore, my life).
Here is, roughly, my minimalist guacamole recipe, developed over many years.
First, you must have nice ripe avocados, about 1 or 2 for each person chowing down. Choose the dark green, rough ones. They're perfectly ripe if they're soft all the way through but not mushy or showing any signs of skin degradation. Put the pulp in a nice bowl and mash it up, but not too much--there should still be plenty of obvious 1cc chunks. Once you've exposed avocado to air, it's only really good for about 1-2 hours (it won't spoil, but it turns sour). So eat it right away.
Now, the other ingredients, in declining order of importance are salt, lime or lemon juice, freshly ground black pepper, finely chopped fresh pepper (i.e., a jalapeno), minced garlic, chopped onion. (I usually skip the onion.) Add these by taste; if you can taste any of them strongly, you added too much. Roughly, try 1/2 tsp salt, 1 1/2 tsp juice, one small pepper, 1/2 tsp garlic. Adjust.
Best with light corn tortilla chips, found in the Mexican section (not those awful megacorp chips).
Also excellent spread inside a quesadilla. Details available.
Remember when you were a kid and you got to lick the bowl after your mom/dad/whoever made brownies? Well, you're grown up now, so you don't have to settle for the leftovers. Turn off the oven, don't bother greasing the pan, just grab a spoon. Especially good with English walnuts mixed in.
(Be aware that raw eggs may contain salmonella. Don't do this if you have medical problems.)
But quality is often a personal opinion.... How can you get anywhere in such discussions?
As I said, "science". For example, in principle, one could set up studies to observe the various qualities (e.g., reliability, maintainability, readability, etc.) of code written in these various languages. These can be objectively measured--it's not just a question of opinion.
In practice, studies like this would be tricky and expensive to perform, which is probably why they're so rare. This doesn't negate the fact that languages can objectively differ in these properties.
My personal opinion is that languages with lots of sharp corners cause grave problems in practice. I've certainly seen it happen an awful lot. Nonetheless, until the science is done, it's just anecdote and guesswork.
...but we don't. If the goal is known specifically, then a single project (or at least, a fewer number of projects) would probably be a good idea.
The future is not known, though, so it must be evolved. Evolution requires variation, and multiple, competing projects are a good way to get that variation.
(Lack of variation is one of the reasons Microsoft is so stagnant. It's also a prime reason why they buy technology from others. It's not so much that they can't write code--their problem is that they can't generate variation, so they import it.)
Arguments about programming languages on this level are pointless beyond belief. It's like arguing which pop band is better than another. Who cares? It's all opinion and hearsay.
Are we really supposed to believe that all languages are equally good/bad and that we might just as well choose any of them for any project? This is nonsense.
Languages do differ in clarity, maintainability, readability, and many other features, and, in the end, this will lead to fundamental differences on average in the engineering quality of the code. Little science (AFAIK) has been performed to study the relative quality of different languages, but there is no reason to believe that it could not be studied in principle. Nor is there much reason to believe that there wouldn't be substantial differences between languages.
First off, let me state that choice of programming language isn't a reflection of the abilities of a developer.
On the contrary, if the choice was the developer's and he/she made a poor choice, that is very much a reflection of their (lack of) ability.
The language used has little to do with the quality of the final result, and has a lot more to do with the person coding with it.
Generally speaking, given the choice, a good programmer won't make a poor choice of language for a project. (We don't always have that choice, of course, but a good programmer knows the difference and will readily admit to suboptimal management constraints.)
The maintainability of a language seems weakly related to individual languages.
Most of the garbage code I see these days, both proportionally and in absolute terms, is written in Perl. I believe that this is due to design problems with the language itself, and due to the fact that the language is so popular, therefore drawing to it many unskilled programmers, and due to the compounding interaction of these two factors.
Perl was there first, and Larry Wall deserves accolades for it, IMO. These days, though, is there anyone that doesn't cringe at the thought of having another bale of newbie Perl code dumped on them to maintain?
None of what the *AA's are trying to do--even outlawing general purpose computers--will really make much of a dent in unauthorized copying as long as the final product has to be displayed on a screen somewhere. Of course, that's nothing they can't fix with a poke in the eye with a sharp stick.
...you will live, die and commit unspeakable acts at his mercy. He will destroy you for his amusement. Teare wasn't the first to learn this lesson and he won't be the last.
--Mike
Mike
--Mike
If the possibilities don't scare you, I don't think you're paying attention. There are a lot of fundamentalists (of whatever ilk) out there that would like to kill large groups of people (if not all of us), and if this becomes technically and economically feasible, we're going to be in real trouble.
--Mike
Mike
The important part, though, is that by design it will never identify a real piece of mail as spam.
--Mike
Television could be so great, but instead it's a cesspool.
--Mike
Yeah, you tell 'em. That young whippersnapper should shut up about real software development, and go back to his open source project (which, incidentally, has a development team of 100 or more, doesn't use Rational tools, and--mirable dictu--actually works.)
--Mike
--Mike
--Mike
This is partly correct. Businesses have no primary drive toward lawful behavior, however. They obey laws (and act ethically) only in situations where it is more profitable to do so.
Often they can make more money by flouting the law--this is why they do it so much. It's not that they're evil; they're simply profoundly amoral.
I don't believe that this is the way things should be, but it's the way things are now.
--Mike
True--you hardly ever see markets that have 11 or 12 entrants with double-digit share.
--Mike
I'm not versed enough in philosophy to be able to say whether your point is correct, so I'll simply concede that RMS's forte might not be philosophical argument. I think of him as more of a doer than a thinker, though he is surely both. And it could turn out that he is wrong.
It is difficult not to read the word propaganda as pejorative however, and it seems a little unfair to me to apply it to his argument.
My key point is that most of the criticism of RMS is misleading, if not outright libel. Given that background, there's little point in trying to judge RMS's ideas based on the words of others. This is so regardless of whether or not he is correct. You really have to hear/read him yourself (it's not like this is difficult to accomplish, in any case).
--Mike
If you want to have an educated opinion, you owe it to yourself to check out RMS's positions personally.
--Mike
You have to move blocks around in C, C++, Java and Perl, too. Yes, I know these languages' compilers/interpreters don't care about formatting, but programmers still must indent code to show structure. Otherwise you've got unmaintainable garbage.
Once you accept this point, you realize that all of those braces are actually completely spurious. The indentation shows the blocks, the braces are just there for the interpreter/compiler. Python has taken a step forward by eliminating them.
As for tab stops, yes, they are annoying, but the answer to this problem is known. Tab stops must be mod 8. If your terminal/editor/whatever does anything else, it's broken.
--Mike
- I had a lot more free time and I did in fact tend to get productive things done with it.
- Most of the news content on TV can be had better and faster on the Internet.
- TV does have a subtle addictive quality to it that's difficult to detect unless you quit.
- It can be rather difficult to escape from TV, even if you try. There almost always seems to be one on, around the house and in many public places. This is particularly onerous in some airports.
Although I'm watching again, occasionally, I do it even less now, and with the knowledge that it really is a nearly utter waste of my time (and therefore, my life).--Mike
First, you must have nice ripe avocados, about 1 or 2 for each person chowing down. Choose the dark green, rough ones. They're perfectly ripe if they're soft all the way through but not mushy or showing any signs of skin degradation. Put the pulp in a nice bowl and mash it up, but not too much--there should still be plenty of obvious 1cc chunks. Once you've exposed avocado to air, it's only really good for about 1-2 hours (it won't spoil, but it turns sour). So eat it right away.
Now, the other ingredients, in declining order of importance are salt, lime or lemon juice, freshly ground black pepper, finely chopped fresh pepper (i.e., a jalapeno), minced garlic, chopped onion. (I usually skip the onion.) Add these by taste; if you can taste any of them strongly, you added too much. Roughly, try 1/2 tsp salt, 1 1/2 tsp juice, one small pepper, 1/2 tsp garlic. Adjust.
Best with light corn tortilla chips, found in the Mexican section (not those awful megacorp chips).
Also excellent spread inside a quesadilla. Details available.
--Mike
(Be aware that raw eggs may contain salmonella. Don't do this if you have medical problems.)
--Mike
As I said, "science". For example, in principle, one could set up studies to observe the various qualities (e.g., reliability, maintainability, readability, etc.) of code written in these various languages. These can be objectively measured--it's not just a question of opinion.
In practice, studies like this would be tricky and expensive to perform, which is probably why they're so rare. This doesn't negate the fact that languages can objectively differ in these properties.
My personal opinion is that languages with lots of sharp corners cause grave problems in practice. I've certainly seen it happen an awful lot. Nonetheless, until the science is done, it's just anecdote and guesswork.
--Mike
The future is not known, though, so it must be evolved. Evolution requires variation, and multiple, competing projects are a good way to get that variation.
(Lack of variation is one of the reasons Microsoft is so stagnant. It's also a prime reason why they buy technology from others. It's not so much that they can't write code--their problem is that they can't generate variation, so they import it.)
--Mike
Are we really supposed to believe that all languages are equally good/bad and that we might just as well choose any of them for any project? This is nonsense.
Languages do differ in clarity, maintainability, readability, and many other features, and, in the end, this will lead to fundamental differences on average in the engineering quality of the code. Little science (AFAIK) has been performed to study the relative quality of different languages, but there is no reason to believe that it could not be studied in principle. Nor is there much reason to believe that there wouldn't be substantial differences between languages.
--Mike
On the contrary, if the choice was the developer's and he/she made a poor choice, that is very much a reflection of their (lack of) ability.
The language used has little to do with the quality of the final result, and has a lot more to do with the person coding with it.
Generally speaking, given the choice, a good programmer won't make a poor choice of language for a project. (We don't always have that choice, of course, but a good programmer knows the difference and will readily admit to suboptimal management constraints.)
The maintainability of a language seems weakly related to individual languages.
Most of the garbage code I see these days, both proportionally and in absolute terms, is written in Perl. I believe that this is due to design problems with the language itself, and due to the fact that the language is so popular, therefore drawing to it many unskilled programmers, and due to the compounding interaction of these two factors.
Perl was there first, and Larry Wall deserves accolades for it, IMO. These days, though, is there anyone that doesn't cringe at the thought of having another bale of newbie Perl code dumped on them to maintain?
--Mike
Mike
Mike
No pity here, I'm afraid.
Mike