7 ms·
Programming Languages - Hammer Principle
- buster 14y agoWell, doesn't really work out.. Example for python: Pro #2: This language would be good for teaching children to write software Contra #1: This language is unusually bad for beginners Uhm.. ok.. so this shows how subjective it is to rate a programming language. It depends more on the individual and its own thinking process and experience then on hard facts.
- icebraining 14y agoI don't think it's a Pro vs Contras, but "this statement applies Well vs Badly to this language".
- buster 14y agoOh ok.. i see.. Now that's confusing. So the right side basically says "everything that is listed here doesn't apply". Mhh... ok.. ;)
- davedx 14y agoC#: "If my code in this language successfully compiles, there is a good chance my code is correct." Gave me a good chuckle, but now I can't work out if I'm supposed to take this site seriously? And all of the PHP statements were negative, of course... /goes back to his PHP programming
- mctx 14y agoI enjoyed Visual Basic's top few: * I am sometimes embarrassed to admit to my peers that I know this language * I am reluctant to admit to knowing this language * The thought that I may still be using this language in twenty years time fills me with dread * This language is frequently used for applications it isn't suitable for * Code written in this language tends to be verbose * This language is likely to be a passing fad * This language has an annoying syntax * I often get angry when writing code in this language * Developers who primarily use this language often burn out after a few years Is Visual Basic still used in industry? I haven't touched it in years.
- RyanZAG 14y agoStill used heavily - but not in industry exactly. It is used mainly for creating little button macros in Excel documents to do some calculations in the document. It is generally not used directly - Excel lets you record a macro, where it will transform the user's clicks and actions into VB script directly. Users can then add this script to a button, and can repeat their actions by clicking on the button. So not a programming language, but more of a macro language.
- wging 14y agoThere are companies that still sell desktop software written in VB 6.
- jimmaswell 14y agoI learned Visual Basic .NET in high school. It honestly wasn't nearly as bad as its reputation. It's more like a watered down C#. It's pretty decent once you get past the syntax. There's still no reason to pick it over C# though. One thing I can say I prefer in VB.NET is the handles syntax - private sub blah blah .. handles object.event. A bit more elegant than C#'s making the event function and adding it to the object with +=.
- jasey 14y agoVisual basic 6 was/is allot worse than VB.net VB.net is just the same as C# with a different syntax. My evolution went something like this: BASIC -> VB6 -> (VB.NET + JAVA) -> C# Knowing VB.net and JAVA I pretty much picked up C# on day one of my first job.
- betterunix 14y agoPerhaps not a good chance, but certainly a "better" chance than some languages (C/C++).
- marcosdumay 14y agoIt's crowdsourced, so you shouldn't comply about the site, but its audience. Anyway, I agree that if my C# code compiles, it does probably work. Just like Java, C# makes it hard to shoot yourself on the foot (and also to shoot at all, like somebody already said here).
- pjmlp 14y agoGave up after seeing how many steps were actually required.
- dizzystar 14y agoLot of this is presented in a confusing manner: Clojure ranks low for having annoying syntax and usually being verbose. Java ranks low for being terse. Python and Java both rank low for easy to shoot yourself in the foot. With the presentation this ambiguous, I am not sure how those taking this survey interpreted the questions.
- RyanZAG 14y agoVery confusing presentation. It is a collection of statements about the language. So ranks low in 'easy to shoot yourself in the foot' means that most people did not think that java or python was 'easy to shoot yourself in the foot'. ie. the low ranking statements mean that the language is not like that statement.
- Someone 14y agoIt's not only presentation. For example, it is good that, with Java, it isn't simple to shoot yourself in your foot. Unfortunately, Java also makes it hard to shoot, period. That, IMO, is its main weakness.
- ssabev 14y ago- I often get angry when writing code in this language - There is a lot of accidental complexity when writing code in this language - This language has an annoying syntax This is from the negatives for Python.. Really?
- deleted 14y ago[deleted]
- icebraining 14y agoNo, those are statements that rank low when applied to Python, not negatives.
- ssabev 14y agoOh, absolutely sorry! Makes sense now!
- tinco 14y agoThe ranking process requires answering 110 questions.. I can not imagine you would actually need that many questions. Perhaps the author can use the already submitted questionnaires to see which questions correlate heavily, so they might be merged. The only language I know from this list that I wouldn't recommend wholeheartedly to someone else is Java, and that's just because I know C#. A bunch of languages I know very superficially, and just haven't learned because I didn't like their superficial qualities. Anyone here ever mastered (not just learned) a language that they did not like at all? I don't like Java all that much, but it is not absolutely terrible. (From this list I am comfortable with Ruby, Haskell, C#, Java and Javascript, less comfortable with C, C++, Scheme, Python, ASM, Matlab, VB, PHP)
- FuzzyDunlop 14y agoSome of the questions are duplicate, in terms of both addressing the same characteristic, but leading it in either a positive or negative way. Presumably this is to fit in the format of just clicking 'rank' or 'skip', for each question (which I think is also ambiguous). Surely it would have worked better as 'statement -> yes/no[/skip]', cutting down the number of questions by about half (I'd guess) at the same time?
- polyfractal 14y agoWow, this is like a case study on how not to present data. I'm sure this is an interesting dataset...but it's so confusing.
- Symmetry 14y agoYes! I was very confused when I saw that Python was ranked high for being "good for beginners" but ranked low for being "usually bad for beginners". Then I realized it was actually actually intended to be ranked low in terms of being "bad for beginners". Which makes sense, if barely. If you're going to have "ranked high" and "ranked low", make all the attributes positive.
- jakub_g 14y agoYeah, Python is good case study for confusion as it has a lot of negative sentences in "ranked low". I see in this thread that many people complain about it, so I've emailed author with the link to this thread and to Python's page and suggested renaming "Ranked high/low" to "Most people agree/disagree that..." or sth like this. Otherwise, very nice idea.
- polskibus 14y agoI found the survey really slow - perhaps the server is being hammered too much? 1 question submit is taking at least 10 seconds at the moment, which means 20 minutes to just submit all questions without reading them and reordering answers. Improve the site first, if you want to gather more data quickly.
- the_cat_kittles 14y agoYou need to resolve this ambiguity: When something is ranked low for a bad thing, is that good (and I think it is) or is that bad? For instance, python is ranked low for "There is a lot of accidental complexity when writing code in this language", which I think means that there is NOT a lot of accidental complexity when writing this code, but it might confuse people because it looks like you are presenting two lists, a list of top pros and a list of top cons.
- pekk 14y agoCool, can you expose an API for this data?
- gbog 14y agoStrange, I had no problem understanding the symmetric rankings, barely noticed it before reading the many negative comments hee.
- bencoder 14y agoSame, no problems at all. Was surprised at the negative comments but after checking again I can understand the ambiguity of ranking low for a negative item. I often have that problem with English speaking, but this made sense to me. I'd say it ranks low on "the presentation is difficult for programmers to understand".
- lucb1e 14y agohttp://hammerprinciple.com/therighttool/items/php http://hammerprinciple.com/therighttool/items/php Jesus christ guys. It were probably others than visitors from HN (most here are a little more thoughtful and less trolling), but if there is nothing but negativism on the PHP page (I can't find a single positive point) then why in the world are we all using it? Why does almost everyone know the language? Why is it one of the biggest languages on the planet? I don't trust this site anymore just because of the first item I happen to look at. PHP may or may not be a horrible language, but certainly it has some good uses and advantages to other languages, or it would never have become popular at all. Perhaps it's just because PHP is so easy and that's the only reason. I'm not saying it is, but it might be. But then at least that should have been written on the page.
- skylan_q 14y agoI use plenty of javscript and PHP at work. They are poorly designed languages, IMO. (I am not an expert, but I'm familiar with many languages and I always read up on such topics) >Jesus christ guys. Despite the poor design considerations and wanting to kill off some of these languages, (or-rehaul them and not being able to) many of us still have to use them day-to-day. This is one of those things that convinces me that there is a God, and he's got a twisted sense of humor. I can't really explain it otherwise. :p
- lucb1e 14y agoRegardless whether PHP is a poorly designed language, or if it has some sense of "design" at all, the website should have listed good uses of PHP. There are plenty.
- pdonis 14y agoI found the interface for actually giving my answers to the questions unusable, at least for such a large number of questions. ("Large" in this case, I would probably say is "anything more than 5".)
- neilbowers 14y agoThat's a terrible UI. I wanted to add some data, but couldn't work out how to, and gave up in frustration.
- saraid216 14y agoI thought the two top-ten lists were upvotes/downvotes until I realized there wasn't a way to disagree with the top ten Pro statements. :(
- TinyBig 14y agoI love the idea behind this. The issue is that the questions are not MECE (mutually exclusive, collectively exhaustive - en.wikipedia.org/wiki/MECE_principle). Perhaps counterintuitive, but fewer questions would actually lead to a richer dataset were they MECE.
- hayksaakian 14y agoI didn't realize that bullet pointed list contained links until I was confused by the comments on HN and accidentally clicked one. Chrome for android on nexus 7.
- Too 14y agoD - Most similar to: F# - Most disimilar to: C Is this really correct? The impression i've got of D is that it started as "Take C, remove everything that sucks and add other nice features". It surely looks more like C / C++ than some functional langage too me.
- sparkie 14y agoThe "Most similar to" feature is not necessarily a reflection of the language's features, but of how closely they rank in the questions (which are largely subjective, and lack technical depth.) You're correct though, in terms of features, D is closer to C++, C#, Java.
- shoopy 14y agoEh? Go: "Based on 7308 responses from 586 people, this is the picture we've built up of Go." Vote early, vote often, I guess.
- erick23 14y agoSystem.out.println("porque muitos os outros desenvolvedores odeiam java?"); System.out.println("eu amo java! objective-c, php, jquery.etc...");
- pohl 14y agoSaid of Scala: "I learned this language early in my career as a programmer" It's cute, like when children use the phrase "my whole life".