7 ms·
I’ll point out what a dozen others are probably typing right now: what works for beginners is not necessarily what’s best for experts. An analogy: I don’t know
by celoyd 15y ago
I’ll point out what a dozen others are probably typing right now: what works for beginners is not necessarily what’s best for experts.
An analogy: I don’t know how to read sheet music with any proficiency. It would be easier for me if note duration were shown by horizontal length instead of the system of tails and open/filled circles. However, this wouldn’t be as good for experts, who care more about fingering than about being able to see the melody in the most literal way.
I don’t happen to like perl’s syntax, but this study by itself isn’t proof that it’s objectively bad for the people who use it heavily.
- jerf 15y ago"what works for beginners is not necessarily what’s best for experts.... this study by itself isn’t proof that it’s objectively bad for the people who use it heavily." More than that. Three languages were chosen. One was based on what previous studies had shown works, and one sounds like it was basically a ROT13'ed perl (only with symbols), and from what some were saying on Reddit it was an overcomplicated dialect of perl (though IMHO that would change little). Then, in a study in which they pitted Perl against a language designed to do well in studies, the language designed to do well in studies prevailed. Even though I do question whether there may be a wee whiff of tautology about this whole exercise, this is interesting because it shows that studies may be able to distinguish between the features of two languages w.r.t. how easily they can be taught and learned. This is valuable stuff, millions upon millions of dollars to society's worth of valuable stuff. What it says about Perl is simply that it was not designed to do well in such studies, quelle surprise, and in particular it doesn't say anything at all about Perl relative to any other real language. $YOUR_FAVORITE_LANGUAGE may well have fared worse, and $YOUR_MOST_HATED_LANGUAGE may well have fared much better. It is a true shame that the underlying valuable message of the study is being missed by so many people in a tearing hurry to go "hurr hurr, perl t3h suckz, hurr hurr".
- chromatic 15y agoWhat it says about Perl is simply that it was not designed to do well in such studies... I disagree. If it says anything, it's that if you give bad code to people who don't know anything about programming, they'll have trouble writing good code.
- dpres 15y agoIf you give a noob the task of writing a program in a language the noob has never seen before it makes sense the noob would write code that looks like random gibberish to a Perl programmer. Therefore, it's not surprising the random gibberish code would would resemble "a language design by chance" more than it would look like Perl.
- Mithaldu 15y agoThe point he was making wasn't about the output, but about the fact that the learning material given to the test subjects was the worst perl imaginable.
- jessedhillon 15y agoThen, in a study in which they pitted Perl against a language designed to do well in studies, the language designed to do well in studies prevailed. No, it's not surprising that perl performed poorer than Quorum. The surprise is that perl did as poorly as Randomo, which should not be sensible given that the operators and keywords are gibberish. I generally agree with what you're saying, but the point of the study is not that the well-designed language did better. Who wouldn't expect that? But there is no tautological question when you realize that the result they are focusing on is the near-even performance with Randomo, not the failure to exceed or match Quorum. It's pretty clear that they aren't engaging in perl bashing, but trying to provide data that backs up their experiential findings as teachers.
- loup-vaillant 15y agoFrom what I've understood, Randomo and Quorum's syntaxes share the same structure. Only keywords and operators changed. Therefore, Randomo has a much better structure than what we could expect from a truly randomly generated language. So, while it still looks pretty bad for Perl, I'd say it's not that bad.
- Mithaldu 15y agoIt doesn't look bad for Perl at all, because the entire setup of this study is flawed to the point of making the conclusion a non sequitur.
- jessedhillon 15y agoIt always amazes me when people can dismiss academic papers -- the result of (at least) several weeks of work -- with a glib comment uttered anonymously, and no support given. Have you read the study? If not, you can find it here: http://www.cs.siue.edu/~astefik/papers/StefikPlateau2011.pdf http://www.cs.siue.edu/~astefik/papers/StefikPlateau2011.pdf
- Mithaldu 15y ago
- wazoox 15y agoThere were 18 frigging participants to the study, for chrissake! You can't get any meaningful statistical data from such a ridiculously small sample! The methodology may be sound, they may be good students and deserve a good grade, but there are absolutely zero conclusion to draw from this paper except for the fact that it may be valuable to make a larger study.
- Fliko 15y agoIn the case of sheet music it's more about adapting yourself to the standard, so that when you write down music and some random guy in Russia writes down music you can both understand what you wrote without difficulty. (Unless you're that classical asshole who does C sharp sharp). Most jazz musicians I have talked to and taken clinics from really don't like sheet music though, as it is an ineffective and inconcise way to represent a tune's structure and melody, hence why they prefer charts. Charts really are worlds ahead of sheet music in my opinion.
- colanderman 15y agoDouble-sharps are actually a great example of syntax for experts being inappropriate for novices. The double-sharp on a note indicates that that particular note is part of an upward motion. Writing the same note as the equivalent natural would instead indicate downward motion (assuming a sharp key). Knowing the intended motion of a note can influence phrasing and help a reader predict the next note of the melody without looking ahead. Of course when you start out reading notes, double-sharps are confusing as heck.
- Fliko 15y agoHaha, yeah I shouldn't of been so harsh with my mentioning of double-sharps. I do still think that in the end people are just conforming to the standard to make life much much more easier, and that it isn't so much that certain things are better for the expert then the novice, but that experts are more used to the standards than a novice is. I feel it's more of a matter of personal style than a programming language x being more efficient when you become an expert when compared to language y. Some people really fly with Perl, whereas other people are more of a Python kind of person.
- sk5t 15y agoCan you provide an example of what you mean re. the difference between sheet music and a jazz chart? I have played classical and jazz winds for years and consider them almost synonymous. (You probably won't find "changes" in the kind of sheet music other than that musicians call a "chart.") I don't feel that any written music can or could adequately convey the feel, shape, or nature of the music--you've got to work through it with the group, or hear someone who already understands the piece.
- j_baker 15y agoI don't think anyone (the paper's authors included) would claim that this is objective proof that Perl is bad. I personally share your concerns. But wouldn't you at least agree that it's an interesting concept to try to test?
- celoyd 15y agoOh, I certainly don’t begrudge them running the experiment. I just wanted to put a check on the excessively anti-Perl interpretations that I thought were suggested by the title. A more interesting test to me would be something like seeing how fast experts in a number of languages could extend or find a bug in code by other experts. I think there’s been a little research on this, but I don’t know enough to link to the best of it. As I said, I dislike Perl’s syntax. But I think that, on the available evidence, it makes sense to see that an an opinion on the level of disliking cilantro, not on the level of disliking geocentric cosmology.
- gbog 15y agoThese are teachers teaching software. They like the study because it somewhat confirm their experience (switching to python makes learning significantly faster). It is not The Final Proof (against what? perl?), but it is nice to find one way, among maybe other, to give some ground to empirical teaching experience. I don't know much of perl, but I tried bash, and know PHP well, and really, really, the language used does matter, it will shape your models and logic, and change the way you handle, debug, write, read, maintain code. Some people seem to adhere to the relativist cliché: all languages are good for something, in their field of usage. It is a matter of personal taste (implying it doesn't matter at all). I don't agree. All languages are not equal. The breadth or their application field is often not comparable (eg compare bash, which is useful for some unix scripting tasks, with python, which can do web, and math, and stats, and windows grey-hacking, and multiplatform desktop clients, and image processing, and Unix scripting, etc.) Having worked with (and fought against) PHP for many years and recently switched away, I can tell, it is not a matter of taste, some languages are simply worse, which implies that some are better. There is no "equal rights" to enforce in this domain. [edit: clarify]
- mst 15y agoI first learned programming writing BBC BASIC; perl is now my weapon of choice but I'm not sure I would have liked it nearly as much had I learned it first. Interestingly (perhaps) I repeatedly hear from people with language/humanities background that they tried both python and perl and found perl much, much easier to start to get things done with - the more natural-language-ish aesthetic of perl being a strong contributor to that (I'm a pure maths grad but my parents are both Eng. Lit. grads, so I guess I sort of count in the "humanities background" category). On the other hand, people with non-humanities backgrounds almost always found python easier to start to get things done with, even if they later found perl to be their preference. Above comments based purely on anecdata; take them for what you will.
- jimworm 15y agoI've played music for years and read sheet music well, but the first time I saw Singstar it was a huge wtf moment.