Slashdot Mirror


Employers Want JavaScript, But Developers Want Python, Survey Finds (infoworld.com)

An anonymous reader quotes InfoWorld: When it comes to which programming languages are in demand by employers, JavaScript, Java, Python, C++, and C -- in that order -- came out on top in a recent developer survey. Developers, however, want to learn languages like Python, Go, and Kotlin. A survey of developers by technical recruiter HackerRank, conducted in October, found no gap between languages employers want and what developers actually know, with JavaScript barely edging out Java...

HackerRank also found gaps in JavaScript frameworks between what employers want and what developers know. The React JavaScript UI library had the biggest delta between employers and developers, with about 37 percent of employers wanting React skills but only about 19 percent of developers having them... [But] problem-solving skills are the most-sought by employers, more than language proficiency, debugging, and system design.

The survey involved 39,441 developers, and concluded that "Python ruled among all age groups," according to Application Development Trends, "except for those 55 years or older, who narrowly prefer C."

222 comments

  1. Different applications. by 0100010001010011 · · Score: 2

    Companies want flashy pretty webpages. Developers prefer to produce something else.

    I only look for jobs that use Simulink, Matlab, and embedded C/C++. But that's because I have no desire to ever be near the web front end. I know nothing professionally about TCP/IP but have CAN memorized.

    1. Re:Different applications. by Hognoxious · · Score: 4, Funny

      I only look for jobs that use Simulink, Matlab, and embedded C/C++.

      We're hiring right now. Do you know C++ one seven? Give me a call if you have at least 5 years experience.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    2. Re:Different applications. by Anonymous Coward · · Score: 0

      Usually the developers conferences give a 5 years heads up on what the C++ researchers are planning.

    3. Re: Different applications. by Anonymous Coward · · Score: 0

      Send me jobs here - conwaytrick(at)yahoo.com

    4. Re:Different applications. by TechyImmigrant · · Score: 1

      Companies want flashy pretty webpages. Developers prefer to produce something else.

      I only look for jobs that use Simulink, Matlab, and embedded C/C++. But that's because I have no desire to ever be near the web front end. I know nothing professionally about TCP/IP but have CAN memorized.

      CAN! They sure did a good job putting security features into that protocol.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    5. Re:Different applications. by angel'o'sphere · · Score: 1

      He invented it, you insensitive clot!

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    6. Re:Different applications. by mark-t · · Score: 1

      I like JavaScript, but hate using it inside of a browser. It is most useful, imo, embedded into a client program as a means of allowing a mechanism for user-added functionality that is simple for the end user to use while also being expressive enough to do anything, even beyond what the developers might imagine.

    7. Re:Different applications. by angel'o'sphere · · Score: 1

      Security is not relevant for a CAN bus.
      And: TCP/IP has no 'security' build in either, that would be on much higher levels.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    8. Re:Different applications. by wolrahnaes · · Score: 1

      That seems more like something for Lua, or even Python, rather than Javascript. I definitely see Lua as the embedded scripting language in a lot of modern apps, particularly games, so there's something to that.

      --
      I used to get high on life, but I developed a tolerance. Now I need something stronger.
    9. Re:Different applications. by shaitand · · Score: 1

      Having used Lua, Python, and Javascript I for one vote for Perl for almost anything being done with any of the above. A few years back I'd have to give javascript a big edge because of node.js but as it always does Perl 5 has already absorbed its strengths.

    10. Re:Different applications. by DCFusor · · Score: 2
      Mod up. Damn, I used all my mod points on less worthy stuff. I speak most all of the languages (and asm for a 2 digit number of cpus), and quickly learn any new ones I'm interested in - the libraries might take longer. For anything where scripting is the thing - perl's the #1 go to language, and is faster and less bloated than most. Due to CPAN, yeah, there's lots of stuff - but you only include what you want, cutting bloat and increasing speed quite a bit over most of the others (cleaner resulting namespace too).

      If you like, you can use the Inline:: series of modules and include many other languages (python - which runs faster than native for me that way, and C at least work well, dunno about others) - these are pretty seamless and are compiled into a shared library (.so or .dll) for ya. Yeah, there's a thunk cost, but if you just want to nab some new device interface code from Adafruit or some other trendy python user, it's the ticket.

      Now, for embedded...I'm C, C++, or ASM all the way. I like to produce the reaction in the customer "I didn't know that cheap chip could DO that!". If you're using scripting languages in an embedded project, someone's wasting the customer's money (and the manuf's profits) using much too capable a chip. You might disagree, but I got all those really nice paychecks working that way.

      As for javascript...I happen to agree with Linus. What a horrible language. You clowns you think you can do validation on the user side...need to learn about security and other unpleasant realities. And quit wasting my cycles - I don't like free riding on my stuff.

      --
      Why guess when you can know? Measure!
    11. Re:Different applications. by mark-t · · Score: 1

      Perhaps, but Javascript is far more ubiquitous than Lua, so for business-oriented software that has such end-user programmable extensions, you probably won't have to train any of your customers how to use it, while if you used Lua... you'd almost certainly have to supply language tutorials with your product just to get most people to square one... and as far as the end user is concerned, it would not be significantly different than if you had developed your own proprietary extension programming language that was not used anywhere but in your products (although it would take much less time to develop than using Lua, of course).

    12. Re:Different applications. by K.+S.+Kyosuke · · Score: 1

      Perl faster and less bloated than Lua?

      --
      Ezekiel 23:20
    13. Re:Different applications. by K.+S.+Kyosuke · · Score: 1

      "Far more ubiquitous", yet the actual embeddings seem to favor Lua in higher-end applications. Unless "ubiquitous" means "it's in my browser, dammit".

      --
      Ezekiel 23:20
    14. Re:Different applications. by mark-t · · Score: 1

      I mean "ubiquitous" as in it is much more widely known, and you are less likely to have to supply all of your clients with training in the extension language than you would if you used Lua.

      Lua is a fine embedded script language, but I sincerely think Javascript is preferable simply because it is more likely that the end user is going to have a passing familiarity with it even before they see your product, and will thus find the notion of developing such extensions, if they are inclined to do so, less intimidating.

    15. Re:Different applications. by DCFusor · · Score: 1

      It's probably faster (based on what I know of the internals) but more/less bloated I haven't a clue. I admit I know diddly about lua and tons about perl. The only place I've even seen lua so far is in an ESP8266, where I instantly erased it to put in C/C++ programs to fully use the chip and get my money's worth.
      I doubt any scripting language would have let me do what I do in C++ re interrupts, real time, all kinds of cool multitasking and so forth - and still fit easily in cycles and memory.
      Perl tends to be quicker than other scripting languages because of how the compiler/interpreter was done - the internals are pretty unique to the business. It tends to blow away interpreted byte code stuff which is what I was thinking about - the intermediate code in perl was designed along with and to support - perl.

      --
      Why guess when you can know? Measure!
    16. Re:Different applications. by geoskd · · Score: 1

      Security is not relevant for a CAN bus.

      Security is relevant everywhere. Some people are just in denial.

      TCP/IP has no 'security' build in either

      Look how well that is working for us.

      --
      I wish I had a good sig, but all the good ones are copyrighted
    17. Re:Different applications. by Actually,+I+do+RTFA · · Score: 1

      Where are you located? Do you allow telecommuting?

      --
      Your ad here. Ask me how!
    18. Re:Different applications. by DCFusor · · Score: 1

      Actually, because you commented, I RTFM on Lua and I'm gonna try it. I'm likely to keep using C++ for embedded and opsys uses, but for simple stuff, Lua looks great on the surface. Time, of course, will tell how handy it is on a PC. Where you've got resources, it's easy to be seduced by something with more features...nothing perfectly fits everything.

      --
      Why guess when you can know? Measure!
    19. Re:Different applications. by K.+S.+Kyosuke · · Score: 1

      Be sure to try LuaJIT/RaptorJIT, you might like its FFI features.

      --
      Ezekiel 23:20
    20. Re:Different applications. by Anonymous Coward · · Score: 0

      CAN! They sure did a good job putting security features into that protocol.

      What issues have you had with Seed & Key?

    21. Re:Different applications. by Pseudonym · · Score: 1

      If you've been using Boost for five years, you pretty much have five years' experience on the most recent standard.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    22. Re:Different applications. by Pseudonym · · Score: 1

      Companies want flashy pretty webpages. Developers prefer to produce something else.

      My first thought was that I don't want to be anywhere near a potential employer who wants to use JavaScript or a potential colleague who wants to use Python.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    23. Re:Different applications. by Pseudonym · · Score: 1

      Let me throw out a few more suggestions for you:

      ChaiScript. A header-only library that implements an scripting layer for C++. If you saw the words "header-only library" and felt a warm glow, then this is for you.

      GameMonkey Script. Essentially Lua, but easier to integrate as a scripting layer.

      Squirrel. Similar to Lua/GameMonkey. It does have built-in OOP brain damage, though.

      Pawn. The lightest-weight scripting layer you will ever see.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    24. Re: Different applications. by Anonymous Coward · · Score: 0

      As long as that's not 5 years of C++17 :).

    25. Re: Different applications. by Anonymous Coward · · Score: 0

      Horses for courses. In the scientific software world Python is pretty popular now for binding together multiple applications at the high level, as a notebook via ipython, some task farming, and visualisations via matplotlib, vtk, etc. The heavy lifting is still typically Fortran, or increasingly C++, though. It's pretty expressive via SciPy, etc., although, much like C++ of old, you have to keep an eye on inadvertent deep copies and avoid arrays of objects.

      q_e_t

    26. Re:Different applications. by angel'o'sphere · · Score: 1

      A CAN bus is a serial bus used in cars.
      You could have googled that.

      If you need 'security' you have to harden the devices connected to it, not the bus.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    27. Re:Different applications. by Anonymous Coward · · Score: 0

      Sorry, not enough experience.

    28. Re:Different applications. by Hognoxious · · Score: 1

      Yes Mr Torvalds, I've read your resumé. But we only consider actual commercial *paid* experience. Not hobbies.

      I'm sure things along those lines have happened.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    29. Re:Different applications. by TechyImmigrant · · Score: 1

      A CAN bus is a serial bus used in cars.
      You could have googled that.

      If you need 'security' you have to harden the devices connected to it, not the bus.

      Well both if you think 'defense in depth' is a useful concept in secure design.

      In cars, CAN bus has been the conduit through which a hacker cracking the bluetooth audio is able to mess with the brakes. Ask Jeep. https://www.wired.com/2015/07/...

      I've designed CAN bus systems in the past. There is no security aspect to the protocol. No authentication, no integrity, no encryption, no ACLs. People have been proposing them at conferences.. http://ieeexplore.ieee.org/doc... . But with ISO in the mix, there is unlikely to be a quick path to fixing this.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    30. Re:Different applications. by fisted · · Score: 1

      If you saw the words "header-only library" and felt a warm glow, then this is for you.

      I felt a warm piece of vomit in my mouth, is it still for me?

    31. Re:Different applications. by Pseudonym · · Score: 1

      No, C++ is not for you.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    32. Re:Different applications. by fisted · · Score: 1

      Okay, I'll stick with C then. No 'an scripting layer', no problems!

  2. Yep. by Anonymous Coward · · Score: 3, Interesting

    Yep, my employer is starting a new project in nodejs because they want to attract "top talent" so there is a big pool of nodejs developers, over my objection that the "top talent" isn't actually in that pool in the first place (and suggested Go, as there is also a performance requirement).

    1. Re:Yep. by Anonymous Coward · · Score: 0

      Hey, if you guys are willing to take on a 10+ year veteran javascript developer who only works in nodejs/mongodb/socket.io then I would love the position, where is this employer?

    2. Re:Yep. by Anonymous Coward · · Score: 0

      At least with JavaScript you'll have job security as the application will have to be rewritten every few months. If you wrote it in Go it would probably work for the next 20 years without problems.

    3. Re:Yep. by Anonymous Coward · · Score: 0

      No.

    4. Re:Yep. by Pseudonym · · Score: 1

      Here, let me give you the email address of my competitor. Please take them down.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  3. employers need a bullet to the head by Anonymous Coward · · Score: 0

    Or more

    1. Re:employers need a bullet to the head by Anonymous Coward · · Score: 2, Insightful

      Why?

      A web application done today makes total sense, a desktop app only makes a certain sense.

      Pros of a web app: dynamic multi user interaction is baked in, most apps require real time updates when another user performs an action or something server side changes. Web applications are free from operating system requirements, operating system environment requirements, and hardware requirements (if it runs a browser it will work). You can run it on a cellphone, raspberry pi, best desktop, linux, mac, windows etc. Web pages do not require the user to download and run mysterious patch executable programs, instead you just update the website and everyone who logs in next is on the new updated version. Web pages will also exist forever more or less, they don't break because the operating system goes to a newer version, or you installed new anti virus, or you even dropped your computer down an incinerator chute (just hop on the next computer available and all your work is still there on the site).

      Cons: it isn't as powerful, though its generally speaking powerful enough.

      All that said, employers who prefer javascript and are moving towards this type of architecture are certainly not deserving of a bullet in the head but rather a hearty handshake for being so logical about a core business system.

    2. Re:employers need a bullet to the head by sjames · · Score: 4, Interesting

      Web apps are fine, but the logic should be driven by the server side. The client javascript should be a minimal thing that handles updating dynamic content and does input prevalidation. If it's big enough to need a framework, you've probably already gone too far by half.

    3. Re:employers need a bullet to the head by Anonymous Coward · · Score: 0

      The biggest issue I have with Web Apps is they are constantly changing for no good reason. If I have an application that does what I want, then I just want to use it. Not relearn a new UI every other week because someone thought it was a good idea to change everything.

    4. Re:employers need a bullet to the head by Anonymous Coward · · Score: 0

      I can honestly say that I've really never seen most of my web app stuff change in ways I could see relating to the GUI.

      As for changes, SERIOUSLY? Desktop apps change their GUI like a hooker changes underwear.

    5. Re: employers need a bullet to the head by liefer · · Score: 1

      If you want a terribly slow web app that's limited to the speed of your internet connection, sure, do that. Bonus: you get to screw over the people on metered connections and kill the battery life of mobile users as well while doing this

    6. Re: employers need a bullet to the head by sjames · · Score: 1

      I don't see why the app will be slow if you've done it right. OP already specified multi-user and client-server, so you aren't going to eliminate the network traffic by stuffing a bunch of stuff into the client.

    7. Re:employers need a bullet to the head by Hognoxious · · Score: 1

      Cons: it isn't as powerful, though its generally speaking powerful enough.

      If you lose your internet connection, you can't do shit. Some people consider that a bit of a drawback too.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  4. I'm 55plus by Mister+Liberty · · Score: 1

    But I like Basic, not C.
    Guess I'm an outlier.

    1. Re: I'm 55plus by Anonymous Coward · · Score: 2, Funny

      Your bragging skills need some polishing

    2. Re:I'm 55plus by frank_adrian314159 · · Score: 1

      Well, I'm 60+ and I like Clojure.
      I guess that puts me on Mars.

      --
      That is all.
    3. Re:I'm 55plus by Anonymous Coward · · Score: 0

      Nope, you're just a master troll.

    4. Re:I'm 55plus by reboot246 · · Score: 4, Funny

      I'll be 65 next month and I like Fortran, or FORTRAN as we knew it back in the day.

    5. Re:I'm 55plus by Anonymous Coward · · Score: 0

      But you're a billionaire so it doesn't matter, Bill.

    6. Re:I'm 55plus by StikyPad · · Score: 4, Funny

      Stop yelling, grandpa!

    7. Re:I'm 55plus by Anonymous Coward · · Score: 1

      I'll be 65 tomorrow and I write both Python and C most days. They both have their uses

    8. Re:I'm 55plus by Anonymous Coward · · Score: 0

      Then there's the issue of a cheap and dumb company.
      Employer to staff: Do the next project in Python, I heard at lunch it's best.
      Staff to Accounting department: We need new computers!
      Accounting: More money for new toys, No!
      Both S100 bus CPM computers are working just fine.
      And, there's still a few cases of paper punch tape to use up.
      .

    9. Re:I'm 55plus by Hognoxious · · Score: 1

      Should be on three lines and have a reference to the weather. 3/10

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    10. Re:I'm 55plus by q4Fry · · Score: 1

      If that's all it takes, I'll tell Elon to start learning Clojure.

  5. That fits with what I think by AlanObject · · Score: 4, Insightful

    I would have answered the survey with the majority.

    Personally I learned and started using both Python and Javascript late in my career that goes all the way back to writing assembly language on the CDC 6000 and I can't remember how many languages I used. (DIBOL anyone? APL?). As with most software engineers I read Javascript seems to be one of the most unprofessionally crafted languages ever put into wide use.

    The updates to Javascript (ES5/ES6) go a long way to fixing things. However I have often wondered how much the world would be different had Python been used as the in-browser programming language rather than JS (ECMAscript) from the start.

    The only problem I think Python would introduce is its dependence on white space as a syntactically significant element. That seems like a small compromise. Anyone else think this?

    1. Re: That fits with what I think by Anonymous Coward · · Score: 1

      As someone who isn't developer (I'm a network engineer turned product manager) I would have loved the in-browser language to be TCL or perhaps Erlang. Imagine the possibilities

    2. Re: That fits with what I think by Anonymous Coward · · Score: 2, Interesting

      I'm a deep fan of Python, but I think TCL didn't get enough attention and traction. I'm not sure why. Perl came along around then, Maybe that's why.

    3. Re:That fits with what I think by itsdapead · · Score: 4, Informative

      However I have often wondered how much the world would be different had Python been used as the in-browser programming language rather than JS (ECMAscript) from the start.

      Well, yes, we'd probably all be using Python, but we'd have a Microsoft preprocessor called "PyScript" that let you use curly-bracket delimited blocks instead of significant whitespace , and which automatically converted Python 3 syntax to Python 2... :-)

      --
      In a survey of 100 programmers, 111111 thought that duck-typing was a good idea.
    4. Re:That fits with what I think by Anonymous Coward · · Score: 0

      That's your only problem? It has other problems, for example how much of a pain it is to print partial lines, it is possible, but unlike every other language I've used, it requires hacking. The error messages are particularly uninformative, granted reading error messages does take some learning, but with Python they're particularly hard to grasp.

    5. Re: That fits with what I think by LionMage · · Score: 1

      I seem to recall that TCL isn't considered Turing complete. If true, that would prevent TCL from being used for a variety of applications.

    6. Re: That fits with what I think by TechyImmigrant · · Score: 1

      TCL didn't seem to play nicely with larger codebases. It grew spaghetti properties like BASIC did.
      Even the semiconductor CAD tools are switching to python these days.

      At college, circa 1990, I took a look at PERL and Python, found PERL to be messy and I've stuck with Python as my main scripting language. 27 years later I don't think it was a bad choice.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    7. Re:That fits with what I think by hitchhacker · · Score: 2
      Netscape originally wanted to embed Scheme in the browser, Sun wanted them to use Java.. they settled on creating something new with syntax similar to Java: https://en.wikipedia.org/wiki/...

      In 1995, Netscape Communications recruited Brendan Eich with the goal of embedding the Scheme programming language into its Netscape Navigator.[8] Before he could get started, Netscape Communications collaborated with Sun Microsystems to include in Netscape Navigator Sun's more static programming language Java, in order to compete with Microsoft for user adoption of Web technologies and platforms.[9] Netscape Communications then decided that the scripting language they wanted to create would complement Java and should have a similar syntax, which excluded adopting other languages such as Perl, Python, TCL, or Scheme. To defend the idea of JavaScript against competing proposals, the company needed a prototype. Eich wrote one in 10 days, in May 1995.

    8. Re:That fits with what I think by Anonymous Coward · · Score: 0

      You contemplate how a language with syntactic white space would have fared as the in-browser language? Are you nuts? That is not a small compromise. That would be so brittle that we would have concluded long ago the web should not have a programming language at all.

    9. Re: That fits with what I think by angel'o'sphere · · Score: 0

      How the funk should TCL not be turing complete?
      Do you actually know what the term 'turing ccomplete' means?
      A funing turing machine, pun intended, is turing ccomplete.
      How should a full fledged programming language not be turing complete?

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    10. Re:That fits with what I think by AlanObject · · Score: 0

      In a modern web applications you can already be dealing with multiple syntax rules in one file: (HTML, CSS, JS, template-of-your-choice, etc). I don't see how Python could be any worse than a CDATA section.

      If that had been done rules for dealing with the Python white space requirement would have been established from the very start, everyone would be forced to learn it before anything would work, and by now everyone would consider it "natural" and how could it be any other way.

    11. Re: That fits with what I think by Snotnose · · Score: 1

      Perl came out a couple years before Tcl. At various points of my career I've been pretty good in both, but never really took to Tcl. Dunno why, it just never jelled for me.

      Perl of course was awesome. Provided you never had to look at someone else's line noise, errr, script.

    12. Re:That fits with what I think by Anonymous Coward · · Score: 0

      >The updates to Javascript (ES5/ES6) go a long way to fixing things. However I have often wondered how much the world would be different had Python been used as the in-browser programming language rather than JS (ECMAscript) from the start.

      If you want to be depressed, Netscape actually wanted to use (and started to use) LISP as in-browser programming language. Sun then threatened them and so they removed it and replaced it by a horrible kludge written in a week.

    13. Re:That fits with what I think by Anonymous Coward · · Score: 0

      how much of a pain it is to print partial lines ... unlike every other language I've used, it requires hacking

      Huh? What are you on about?

      If you want the same sort of interface you have in most other languages, just use `sys.stdout.write()`. Yes, `print` will add a newline by default, but even then it's easy to suppress - simply add a trailing comma (Python2) or set `end=""` (for Python3).

      These are not hidden features, or "requiring hacking". The fact you're unaware of it indicates to me that you haven't really given Python a fair trial.

    14. Re:That fits with what I think by Anonymous Coward · · Score: 0

      Anyone else think this? No, I don't. This is the anti-feature which prevent real anonymous function (lambda is half-baked in python). This prevents functional programming.

    15. Re: That fits with what I think by Tough+Love · · Score: 1

      Python falls down because efficiency is not a first class member of the project culture, and because significant whitespace is idiotic. It is also incredibly stupid that it should have its own parallel set of libraries and package manager, so that implementation language is far from transparent to the user. Python, now at the height of its popularity, is doomed to be overtaken by more sensible projects like Go.

      --
      When all you have is a hammer, every problem starts to look like a thumb.
    16. Re:That fits with what I think by DCFusor · · Score: 1

      It's interesting how truly experienced people uniformly dislike Javascript. While I don't think python is the answer to everything without knowing the question - I can let that go - though I'd sure prefer something where whitespace wasn't part of the language in that way.
      It's almost as if we old guys who've done this a lot might have learned something, and are trying to help by telling it to everyone. We can all disagree about the minor stuff and be fine, but a disaster is what it is and there seems to be little disagreement about that.

      --
      Why guess when you can know? Measure!
    17. Re:That fits with what I think by dgatwood · · Score: 1

      Can you imagine if Netscape had won that battle, and all those web designers had to learn Scheme as their first programming language?

      On the flip side, all the web scripting code would compress well, with all the pages of close parentheses at the end. Maybe they could compress it further by just dropping trailing close parentheses entirely. Imagine the kilobytes of savings!

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

    18. Re:That fits with what I think by Actually,+I+do+RTFA · · Score: 1

      I have often wondered how much the world would be different had Python been used as the in-browser programming language rather than JS (ECMAscript) from the start.

      Python seems... fine. But the language itself seems pretty meh. It doesn't seems any more compact than any other. The amazing amount of libraries, on the other hand, make it a language worth using.

      Which means it would have ended up getting a lot of frontend JS-style libraries (and DOM control), and a lot fewer command and control style ones (since it would have gotten a nasty reputation like JS did as a domain of non-real programmers).

      But the actual big difference would be that functional programming would never have experienced its (re?)surgence, and OO would still be king of the hill. Which, in turn, wouldchange things dramatically.

      --
      Your ad here. Ask me how!
    19. Re:That fits with what I think by jeremyp · · Score: 1

      Well, for one thing, the white space wouldn't minify very well.

      White space should never be a syntactic element of a language. It's a testament to Python it is a good language in spite of its white space rules.

      --
      All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
    20. Re:That fits with what I think by jasno · · Score: 1

      I couldn't care less about Python's whitespace handling. Once you accept it, it just fades away and you deal with it. I'm much more annoyed by Python's dynamic typing. I work at a place that has decided to use Python as a 'systems language' on an embedded platform. Navigating large Python codebases is difficult because you can't say what a function expects or returns without thoroughly examining it. I started my current job with a deep fondness for Python but now I'm less fond of it. Python, like many languages, has it's place and does certain things well.

      I prefer C. C++ is interesting but they keep bolting on shit that doesn't seem to flow with the rest of the language. I like "C with classes" style C++ but beyond that you can keep it.

      I recently taught myself Javascript. The language itself is atrocious but I like working with the DOM and CSS. You get a lot of cool things for very little work. It's worse than Python in many ways yet I'm strangely comfortable with it. I'm looking forward to doing some more JS.

      At the end of the day, I'll do whatever pays well. I have alimony to worry about so I'll do whatever dance I have to in order to be able to retire some day. I'm probably going to leave the embedded world soon because, despite the increased difficulty, it just doesn't seem to pay well these days. People want enterprise programmers and full-stack developers, so that's what I'm looking at transitioning to. It's a step down from what I used to make, but I'm looking at a ~$150k/year work from anywhere gig, 40 hours a week, doing full-stack shit.

      --

      http://www.masturbateforpeace.com/
    21. Re: That fits with what I think by Reverend+Green · · Score: 1

      Python already has been overtaken by Go, at least in terms of developer mindshare. No one is starting new, cool protects in Python today.

      I will be curious to see if Kotlin starts to catch up with Go. In many ways it's a better language, particularly its null safety features. And it's blessedly free from the authoritarian "code of conduct" Google undemocratically imposed on the Go community.

    22. Re: That fits with what I think by sg_oneill · · Score: 1

      He's actually right. TCLs core syntax has no branching or looping capabilities and thus is not turing complete. But you'll never encounter a TCL without those capacities and your ifs and thens and what not come in as part of the standard TCL command library.

      --
      Excuse the Unicode crap in my posts. That's an apostrophe, and slashdot is busted.
    23. Re: That fits with what I think by angel'o'sphere · · Score: 1

      Are we talking about this TCL: https://en.m.wikipedia.org/wik... ?

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    24. Re:That fits with what I think by Anonymous Coward · · Score: 0

      Ah APL, the language so weird that as you typed it you regularly had to hit the backspace key, not to delete a character, but to literally go back one space and type a second character over the first because the language used digraphs and there weren't enough keys on the keyboard.

    25. Re:That fits with what I think by Anonymous Coward · · Score: 0

      Agree, I don't think it would have been better because you would never have been able to have minimized Python scripts the way we do with minimized JavaScript libraries because Python of the white space issues. This is one of the main reasons I generally don't use Python if there's an alternative available. If I want to hack up a quick script to do something I don't want to have to concern myself with making the code look pretty to make it work.

    26. Re:That fits with what I think by Hognoxious · · Score: 1

      Well, for one thing, the white space wouldn't minify very well.

      There are, in theory, ways around that. Instead of using whitespace as a 'level tag' on each line use some kind of token at the start and end of each level.

      I think it's important to have a mnemonic, as sort of visual metaphor for what symbols do. So think of a pair of hands, or if you like halves of a shell, holding something like ( this ). Since that particular type is common in mathematics it might be best to reserve them for that but there are others, like [ these ] or even { these }.

      It's even possible, with advanced techniques like counting up at a lefty and down at a righty, to nest them ( like (this) or (this) ).

      Heck, if you didn't mind being a bit verbose you could go dne foo bar dne bla end end.

      Crazy talk, I know.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    27. Re:That fits with what I think by AlanObject · · Score: 1

      Python, like many languages, has it's place and does certain things well.

      That's pretty much how I see it. Any tool can be misused, and once you get to a large, complex program Python leaves a lot to be desired. The exception to that is when your application consists of a relatively small, well defined code as a module in a potentially complex framework that is itself well written and supported. That's where a "loose" language like Python really shines and that also describes the browser environment.

      What if. It is all what-if at this point. Javscript it is.

    28. Re: That fits with what I think by Anonymous Coward · · Score: 0

      Sorry, I programmed with Tcl and Tcl/Tk and Expect for about 8 years. You're so wrong, I wonder if you've ever seen a Tcl program

    29. Re: That fits with what I think by sg_oneill · · Score: 1

      [blockquote]Sorry, I programmed with Tcl and Tcl/Tk and Expect for about 8 years. You're so wrong, I wonder if you've ever seen a Tcl program[/blockquote]

      Yes I have written tonnes of TCL, and it baffles me that you don't understand this. The core TCL specification is not turing complete. Thats a fact. The branching and looping commands are part of the standard library.

      --
      Excuse the Unicode crap in my posts. That's an apostrophe, and slashdot is busted.
    30. Re:That fits with what I think by Hognoxious · · Score: 1

      Been dabbling in it too, and I'm not so happy with the whitespace, but I agree about the libraries.

      Would that be change for the better, or for the worse?

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    31. Re: That fits with what I think by Anonymous Coward · · Score: 0
  6. Rust! by Anonymous Coward · · Score: 0

    Rust is better than all these and should be required by law.

    1. Re: Rust! by Anonymous Coward · · Score: 0

      JavaScript is a godsend language. Fuck Python.

  7. C? I'm surprised. by Anonymous Coward · · Score: 0

    Haven't seen too many C jobs around these days, except maybe for embedded applications. A shame really, as that's the language I know best, but I'm having to polish up my C++ as the number of C++ job adverts is an order of magnitude or two higher.

  8. Static typing; sharing server logic with browser by tepples · · Score: 0

    You said "performance requirement". What widely used, dynamically typed, memory-safe language has a runtime faster than the V8 engine used in Node.js? Go is statically typed. Or does the "top talent" in this area prefer static typing?

    Is your project a web application? If so, what automated process would you use to translate server-side authoritative input validation written in Go into JavaScript in order to ensure that the client-side prevalidation enforces the same rules?

  9. Javascript isn't the problem. It's the browsers. by Wycliffe · · Score: 5, Interesting

    I don't mind javascript as language. The problem is the DOM, CSS, cross browser incompatibilities, and all the rube goldberg machines like jquery and select2.
    The russian doll that is modern web programming is a nightmare. Things like jquery remind me of script kiddies who think they are cool when they use a source filter and/or operator overloading to completely redefine a language.
    The hacking that has gone into things like jquery is impressive but it should never have become the standard for production code. It should have stayed in the "that's a cool hack" category.

  10. Meaningless statistics by ranton · · Score: 1

    37 percent of employers wanting React skills but only about 19 percent of developers having them

    37% of employers may need developers with React skills, but they don't need 100% of their developers to have React skills. Statistics like this are nonsense. I really doubt that 37% of all unfilled developer positions need React skills. I doubt 19% of all unfilled developer positions need React skills. The whole article is full of garbage like this.

    --
    -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
    1. Re:Meaningless statistics by prefec2 · · Score: 1

      Also if you can program in JS you are most likely capable to use the React framework in a day.

    2. Re: Meaningless statistics by Anonymous Coward · · Score: 0

      Yes, but employer faggets don't want to teach you anything, even for a day. You need to match exactly, have 20 years of experience coding critical websites, your own million-dollar mobile apps, and be a successful rocket scientist.

      Otherwise they'll just hire an shitty indian monkey.

  11. JS and Python by hcs_$reboot · · Score: 1

    Javascript runs (usually) on the browser, while Python is server side. Not really the same purpose.

    --
    Slashdot, fix the reply notifications... You won't get away with it...
    1. Re: JS and Python by Anonymous Coward · · Score: 0

      5 years ago yes. Today JavaScript is the go-to language for servers.

    2. Re: JS and Python by HornWumpus · · Score: 3, Informative

      For morons.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    3. Re: JS and Python by Midnight+Thunder · · Score: 1

      For morons.

      What issues do you see with node.js?

      --
      Jumpstart the tartan drive.
    4. Re:JS and Python by Anonymous Coward · · Score: 0

      *cough* nodejs *cough*

      Sorry, just, I use nodejs so heavily on the server side it's crazy useful.

      I know python can do some sort of amazing magic (or so it would appear from its appeal). However if your coding your back end in one language and front end in another, that isn't as productive as coding both in the same language. This is why I stopped using PHP and nginx, it made more sense to just have HTML,CSS3,Javascript since really I need those to make a modern webpage anyways, being able to jump from front end to back end seamlessly in the same language boosted the speed I can create at by an order of magnitude.

      You should perhaps check out nodejs it does many a surprising thing from facilitating web sockets, file read/write, virtual hosting, and so much more. You get fantastically fine grained control over everything in the system. Also you can launch scripts with it like python so hybridization is also a very powerful possibility.

    5. Re: JS and Python by HornWumpus · · Score: 3, Informative

      Javascript is just a terrible language. Once, in the browser you had no other viable choice, today you compile to Javascript or web assembly.

      There is only one, somewhat logical, reason to use Javascript on the server: It's the only language you know. I can't think of one worse suited for the job, perhaps COBOL.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    6. Re: JS and Python by Anonymous Coward · · Score: 1

      Any developer that chooses to work in a dynamically typed languages is a moron. Python may be better than JavaScript but the difference is basically negligible and they're both still trash.

    7. Re: JS and Python by Anonymous Coward · · Score: 1

      Use the right tool for the right job, javascript monkey.

    8. Re: JS and Python by Anonymous Coward · · Score: 0

      You and I live in VASTLY different worlds.

      I have employers who want to pay minimum wage (and no, there are no choices, that's the money take it or leave it), they want the project done as fast as possible (1 month generally is their expectation).

      I can't do all of that so fast and have it functional if I'm writing it in 15 different languages.

      For you perhaps splitting the languages makes sense and you have a team of people and resources etc etc.

      That isn't the world I live in, I write entire company software by myself for minimum wage. I've been at it for 10+ years and the rates and expectations never change (which is actually why I moved out of that area, I'm somewhere new now and exploring pay and employment options). You wanna know the kicker? I'm about the only person in the area who knows how to create these complex apps, create them within budget and in time, I've got 3 diplomas and they still treated me like shit.

      You keep acting like there is some kind of ability to even have a choice of how this is all done. I don't have a choice, if I recommended bringing in another developer to help me, or saying I need more time to learn another language for the server side, or quite frankly if I even make myself known I'd be fired.

    9. Re: JS and Python by Anonymous Coward · · Score: 2, Insightful

      Your comment makes the core problem very clear: you have no marketable skills and aren't willing to learn them on yourbown so you have to make due with bottom of the barrel jobs.

      Want better opportunities: acquire better skills.

      This is still not an excuse for using the wrong tool for the job at hand.

    10. Re:JS and Python by hitchhacker · · Score: 1

      There's no reason Python can't be used in the client webbrowser (but, I agree, I'm not aware of anyone using it in production). I think Rice university uses Skulpt for some of their online programming courses: http://www.skulpt.org/

    11. Re: JS and Python by angel'o'sphere · · Score: 1

      You should not judge about languages you are not fluent in.
      COBOL e.g. is an excellent language for business programming.
      JS is a very fine language, too. The only problem is type coercion with 'primitive' types to strings and similars things.
      People writing their hate here sinply mix up JS with how it is integrated into browsers ... and that again is mainly M$s fault.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    12. Re: JS and Python by Anonymous Coward · · Score: 1

      One logical reason for using Javascript, node.js, on the server is that it works really well. Another is that it is quick and easy to develop, test and deploy.

      As it happens I have worked in a dozen or so languages over the decades from assembler to C++.

      I was amazed five years ago when, as an experiment, I implemented a performance critical chunk of the functionality of some of our server side processing in Javascript using JSON.

      Amazed that it was so easy to do.

      Amazed that it performed equally well as the existing C++ using XML process.

      I'm amazed that, as a result, five years later JS has been used extensively throughout our server side systems and has been very reliable.

      You see, like you I always looked down on JS as that stupid, slow, scripting language used by web monkeys to animate trivia in web pages. Not a "real language". So, I was amazed to find that is is actually quite a superior language.

      Also. All that fanaticism about type checking is misplaced. Sure it's nice to have a compiler detect such errors at compile time. But if you are doing things right you have unit tests and integration tests in place. They will find your silly mistakes fast enough.

    13. Re: JS and Python by thebullshitpatrol · · Score: 1

      I actually really love typescript. It takes a language that is frustrating for a variety of reasons and accentuates all of its best qualities. I feel like the simplicity of JS is the reason it's ended up in this transpiler hell. It's like a boilerplate language.

      JS with types feels very much like Go (very interface driven, language has very simple design patterns for you to follow), and is still pretty damn fast. Like if I wanted more features, swift, C#, rust, but for 90% of stuff these are really good languages.

    14. Re: JS and Python by HornWumpus · · Score: 1

      Hangs head in shame: I actually have coded professionally in COBOL. Decades ago. It is just _terrible_. Then spent a few years replacing COBOL sideshows with networked PC database systems under Netmare.

      Javascript is just a mess. Enjoy your debugging.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    15. Re: JS and Python by angel'o'sphere · · Score: 1

      What did you dislike about COBOL?
      I don't develop in JS :) I only use it to script other apps, hu hom, like debuggers,

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    16. Re: JS and Python by Hognoxious · · Score: 1

      You should not judge about languages you are not fluent in.
      COBOL e.g. is an excellent language for business programming.

      And you shouldn't post things from the first hit on Google about languages you've never used. Because nobody who's actually used it for actual fucking work(tm) likes it. Certainly it has a few features - packed decimals and file/record handling that are useful. But it's verbose in the extreme and its modularisation and control flow suck big time.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    17. Re: JS and Python by HornWumpus · · Score: 1

      Incredibly long winded.

      Tied to CICS.

      Pic statements, basically storing BCD data in a print buffer. Typically find many functions for the same task, based on how many digits past the decimal. This is prone to failure in strange ways, change a rounding method, add a digit, the other end of the system starts giving wrong answers. Every pic statement is a global that controls how rounding works for that variable.

      It was built to do accounting, adapting it to anything else _sucks_. Even for beancounting, there have been better tools for many decades.

      When I used it, debugging was just 'pulling your own tooth' painful. That has to be a little better.

      There were others, but it's been a long time...JCL was and is the most insane thing I've ever touched, not really COBOL.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    18. Re: JS and Python by angel'o'sphere · · Score: 1

      I used COBOL, did about 1MLOC Y2k reengineering.
      I use JavaScriot regularily as scripting language, but not as a web language in a browser.

      Next try?

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    19. Re: JS and Python by Anonymous Coward · · Score: 0

      Dynamic typing has its place.
      I wouldn't hesitate to use python for "write once, use once and forget" type of programs or scripts that are supposed to be used during development only. In those cases development time is more important than stability.

      Dynamic typing on anything that will ship to a customer is just crazy-talk. No responsible adult would do that.

      A tool that is used to program a microcontroller on the other hand is a place where python is viable.
      Just throw it together. You aren't going to get feature requests so maintenance is going to be minimal. If it crashes due to faulty input or whatnot it will be caught in production rather than by the customer.

    20. Re: JS and Python by DCFusor · · Score: 1

      Um, isn't that the lashup where one guy pulled down his string padding code and broke most of the apps using it on the web? I'd consider utter dependency on a flaky source a VERY SERIOUS FLAW. No, make that fatal. No way I'm using that.

      --
      Why guess when you can know? Measure!
    21. Re: JS and Python by Gojira+Shipi-Taro · · Score: 1

      My reason to use JS when I must is this: the people signing my paycheck want it used, and I enjoy GETTING paid rather than the alternative.

      --
      "Oh my God. This is terrible. This is the end of my Presidency. I'm fucked."; ~ Donald J. Trump
    22. Re: JS and Python by jeremyp · · Score: 1

      Also. All that fanaticism about type checking is misplaced.

      No, really it isn't.

      Sure it's nice to have a compiler detect such errors at compile time. But if you are doing things right you have unit tests and integration tests in place. They will find your silly mistakes fast enough.

      Writing unit tests is boring. I'd rather just write tests that prove my code meets the specification than also have to write tests that prove I have added two numbers together rather than concatenated a string and a number.

      Next you'll be saying it's nice to have a debugger. But, if you are doing things right you have debug logging...

      --
      All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
    23. Re: JS and Python by Reverend+Green · · Score: 1

      Dependency hell. This is not so much an issue with Nodejs itself, as with the culture of Node programmers.

      A quick example: My company is currently developing an internal API in Node. It's really a very simple application. Yet node_modules has 954 subfolders. That's a *lot* of dependencies for not very much functionality.

      From my perspective in devops, it's no harder to deploy a Node app than anything else. But I thank the gods daily that I don't ever have to hack on that nasty codebase.

    24. Re: JS and Python by Reverend+Green · · Score: 1

      Then just quit, man. If they don't pay any better than working at Starbucks then by all means go pour coffee for a living. You'll have a lot more fun. 100% serious.

    25. Re:JS and Python by hcs_$reboot · · Score: 1

      *cough* nodejs *cough*

      It's why I said "usually". Winter is cold, get your pills.

      --
      Slashdot, fix the reply notifications... You won't get away with it...
    26. Re:JS and Python by Anonymous Coward · · Score: 0

      Javascript runs (usually) on the browser, while Python is server side. Not really the same purpose.

      NodeJS says you are incorrect, not wrong, merely incorrect in your claim.

    27. Re: JS and Python by hjf · · Score: 1

      Ah yes, the USA-centric answer. Never fails.

    28. Re: JS and Python by Midnight+Thunder · · Score: 1

      Still an answer that does not enumerate what is perceived wrong with the language and sounds fairly ignorant.

      I’ll tell you why I am programming in nodejs at the moment and not Java (I have been a Java programmer for over a decade):

      - The first reason is we needed to get a web oriented MVP to market quickly, without getting bogged down with over-architecture. It needed to be good enough. I have been an early startup using Java and doing things the right way hurt the evolution. J2EE be damned.
      - We felt that if needed startup minded people nodejs fitted the culture of the available people, since good majority of a Java developers appeared to be targeting corporate.
      - Many successful startups started off with interpreted languages and then evolved to more corporate friendly language later on.
      - It needed to be OS agnostic. Our developers use macOS, Linux abs Windows, but deploy to a Linux server.
      - There are many hosting platforms that are nodejs ready
      - Native JSON support, which is great for REST type applications
      - We can use the same set of developers on both frontend and backend.

      I am aware there are a good number of challenges, like the large number of dependencies; it isn’t typed (though Typescript can help here); the asynchronous one threaded model.

        All languages have trade-offs, but in the end what matters is that it gets the job done. There may be better languages, that correspond to certain criteria, but in the end if your team is failing to deliver, then that is when a poor technology was made.

      --
      Jumpstart the tartan drive.
    29. Re: JS and Python by Reverend+Green · · Score: 1

      How is that USA-centric? Please feel free to substitute the name of your local coffee shop instead of "Starbucks".

      The point is, if you make minimum wage as a programmer, why not do a different minimum wage job? One that's easier and more fun.

    30. Re: JS and Python by Anonymous Coward · · Score: 0

      20 years ago, I would have said programming is a hell of a lot more fun than slaving over a hot espresso machine.

      Nowadays, though, it's become a world of pain. :-P

    31. Re: JS and Python by Hognoxious · · Score: 1

      I used COBOL, did about 1MLOC Y2k reengineering.

      Ah, you're one of those cretins who got into the industry when they'd take anyone with a pulse.

      So you changed a load of PIC 9(6) statements to PIC 9 (8). Yeah, you're a real guru. Was this before or after you were an astronaut?

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    32. Re: JS and Python by angel'o'sphere · · Score: 1

      First of all a date is not described by a PIC(6) declaration.
      Secondly changing every 6-digit date in software to an 8-digit date is the most braindead and by far the most expensive approach.

      Why you consider yourself an expert and look down on me is beyond me.
      Good luck with your attitude.

      Hope you nevver have to fix a Y2K related problem, as you clearly have no clue about it.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  12. Fuck Python And Its Whitespace by Anonymous Coward · · Score: 0

    I don't have real strong opinions on languages in general, but it takes a gun to my head to get me to use Python.

    And maybe, if I wasn't convinced there was actually a bullet in the chamber, maybe not even then.

    1. Re:Fuck Python And Its Whitespace by Anonymous Coward · · Score: 0

      I see a lot of ads and articles (like this one) sneakily propagating Python, and I'm secretly wondering: who does the astroturfing?

    2. Re:Fuck Python And Its Whitespace by Anonymous Coward · · Score: 0

      Hardware companies since they want you running the slowest software imaginable.

    3. Re:Fuck Python And Its Whitespace by PPH · · Score: 3, Funny

      I wanted to learn Python a while back. So I bought a book on the language. All the pages were blank.

      --
      Have gnu, will travel.
    4. Re:Fuck Python And Its Whitespace by Pseudonym · · Score: 1

      Of all the stupidity that Python requires and encourages, significant whitespace is by far the least objectionable.

      FORTRAN had significant whitespace. Occam had significant whitespace. Haskell has significant whitespace. Makefiles have significant tabs for Knuth's sake. We're grownups and we can cope.

      The main problem with Python is literally everything else.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    5. Re:Fuck Python And Its Whitespace by JesseMcDonald · · Score: 1

      Haskell has significant whitespace.

      Not to detract from your main point, but at least in the case of Haskell the significant whitespace is optional. This is just a consequence of the "layout rule": if you omit the braces and semicolons after certain keywords, the parser will insert them for you based on indentation. If you prefer C-style code with explicit braces and arbitrary whitespace, you can write it that way. (This is a great feature when writing code samples in forums where you can't count on whitespace being preserved.)

      --
      "The state is that great fiction by which everyone tries to live at the expense of everyone else." - Bastiat
  13. It's Decided. VIM Beat Emacs! by randallman · · Score: 3, Informative

    Most important finding in the survey. ... Gets popcorn ... Where is everyone? ...

    Guess I'm getting old.

  14. Re:Static typing; sharing server logic with browse by Hognoxious · · Score: 1

    what automated process would you use to translate server-side authoritative input validation written in Go into JavaScript in order to ensure that the client-side prevalidation enforces the same rules?

    I'd probably hack something together using Python if it was a quick and dirty job. Maybe a combination of bash, sed, PHP, awk & sed if I had the luxury of doing it properly.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  15. Who cares about "employers" by Anonymous Coward · · Score: 0

    No one has programming jobs anymore since they are all outsourced. Real programmers program for fun in any language they want and make money by writing crypto currency miners.

  16. Re:Static typing; sharing server logic with browse by Anonymous Coward · · Score: 3, Insightful

    What widely used, dynamically typed, memory-safe language has a runtime faster than the V8 engine used in Node.js?

    Why is that relevant? Dynamic typing is retarded and every single popular statically typed language has implementations that are far faster than V8.

  17. Re:Static typing; sharing server logic with browse by Anonymous Coward · · Score: 0

    Use Haskell and GHCJS you brainlet.

  18. Python is harder to maintain than JS by Anonymous Coward · · Score: 0

    Mainly because of how it uses space-based alignment as part of its syntax. What a stupid design! It's like the Makefile issues all over again!!

  19. Different people speak different languages by Anonymous Coward · · Score: 0

    Now go forth and swiftly teach your employer the language she basically needs, whether it be JavaScript, Java, Python, C, or C++ and then go coding in whatever language you need to before you turn to rust.

  20. I like PHP and JavaScript by Anonymous Coward · · Score: 0

    Also fuck frameworks

  21. Re:Static typing; sharing server logic with browse by Anonymous Coward · · Score: 1, Insightful

    Or does the "top talent" in this area prefer static typing?

    Yes

  22. Re:Javascript isn't the problem. It's the browsers by phantomfive · · Score: 2

    Javascript has the problem that you can type obj.typo = 5 and it will run just fine, and you won't ever be notified of your typo unless there are some behavioral issues. Whereas many languages will catch that typo before you even run the code. Python, of course, has the same problem.

    --
    "First they came for the slanderers and i said nothing."
  23. I couldn't get Javascript at all by Anonymous Coward · · Score: 0

    After developing software in Objective-C and Swift and before that in olden times, Java and C++, i never could get javascript.

    After downloading an IDE, nothing ever seemed to work out of the box. I understand that the node framework is similar to Cocoapods but I couldn't navigate my way around getting all the libraries that I needed. There seemed to be thousands of libraries to do simple tasks. Which one do I choose? What in the heck is ES6, ES7? Why do I need to install all these libraries just so I can be backwards compatible? Why doesn't javascript have a common core set of methods/libraries that works across all browsers, then you can pick up specific components that you need to work with??? When searching out online how to do something there was 10 different ways to do depending on a multitude of factors and what you were trying to accomplish.

    I couldnt even get arrays to 'work'. At least work how I think an array in any language should work. I would print out the elements and I would be shocked at the results. After a week or so I finally figured out objects weren't really objects. What??? I also found out not too long ago JS finally got the 'Constant' keyword. Huh??

    I got frustrated with it and really don't want to go through that again. Perhaps someone could explain why its so frustrating.

    1. Re: I couldn't get Javascript at all by Anonymous Coward · · Score: 2, Insightful

      Because Javascript is a language that was designed for adding isolated behaviors with simple scripts to web pages. It was not designed to be a language used to build application logic with.

      To make it roughly capable of implementing application logic it's been mangled into a giant, hacked together house of cards mess and it shows in all the things you mention and more.

      And now idiots are trying to use it to build not just front end, but back end as well. Because they only know to to use a hammer, so everything looks like a nail to them.

      Node.js is the abomination that is the result of this.

    2. Re:I couldn't get Javascript at all by Cutting_Crew · · Score: 2

      Coming from the Objective-C and Swift world I get you. Coming into the language with no prior experience with it leaves a sour taste in your mouth. It didnt take me too long to figure out I would hate it with a passion. The languages is deceptive. DOM is deceptive and unforgiving for those that have never worked with. It sucks. Why do I have to install Typescript just so I can use Javascript?

      Javascript has no classes (while at the same time, trying to pretend that it does). To your point about array, Javascript arrays aren't really arrays - that is, it's not a list of items. JS defines these as 'associate arrays', meaning that they can be whatever they dev wants it to be. You can also divide arrays by each other and there will be no compiler error or it might not even crash. You will still get an answer to what is in the 'array' but it won't be right. The program might crash 1,000 lines later but there is no way to trace the problem. How do you even debug a large application? I couldn't even find a method to see if an array contained a specific item, or to get the number of items in it or to test if it was empty. The " == " operator isn't what you think it is.

      Where's the basic data structures? Classes? Not on your life. Inheritance? (of a different kind). Reading from and writing to files is awful. Especially when reading files other that contain other things such as data streams(i.e. pdfs, general binary data, etc).

      They need to completely start over, get all the browsers to agree on a standard and force people to stop supporting older versions and upgrade to the new standard. Establish a consortium. Until then, I'm not trying again. I'll go back to Swift.

    3. Re:I couldn't get Javascript at all by Anonymous Coward · · Score: 0

      LOL

      Array.prototype.whine=function(){cry}

    4. Re: I couldn't get Javascript at all by Anonymous Coward · · Score: 0

      Your argument, sir, is its own counterargument.

    5. Re:I couldn't get Javascript at all by Anonymous Coward · · Score: 0

      >To your point about array, Javascript arrays aren't really arrays - that is, it's not a list of items.

      How so?

      >JS defines these as 'associate arrays', meaning that they can be whatever they dev wants it to be.

      It does? Last time I checked (2 h ago) it didn't. They are non-associative.

      > You can also divide arrays by each other and there will be no compiler error or it might not even crash.

      Yeah, I hate autoconversion too.

      >there is no way to trace the problem. How do you even debug a large application?

      Using the debugger built-in in the web browser.

      >I couldn't even find a method to see if an array contained a specific item

      indexOf

      >, or to get the number of items in it

      length

      > The " == " operator isn't what you think it is.

      How so?

      >Where's the basic data structures?

      It has functions, closures, floats, strings, arrays, objects. What is missing?

      > Inheritance? (of a different kind).

      Works just fine.

  24. Language choice is complex by MpVpRb · · Score: 1

    Sometimes, it's strictly about the tech. One language is superior to another for the job being done

    Other times, it's about the team. If the entire team is expert at a language, there needs to be a really, really good reason to change

    Other times, it's about the tools, or the libraries

    Unfortunately, some times it's driven by clueless management, who have no idea how to program but still have strong opinions

    Individual programmer preference is only important for personal education or hobby projects

    1. Re:Language choice is complex by angel'o'sphere · · Score: 1

      That is why in my world the management usually does not decide about languages.
      The developers do ...

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    2. Re:Language choice is complex by hjf · · Score: 1

      In your world, you mean inside your head?
      Or are you freelance?

      Because in most professional development the developers DON'T choose the technologies. They may have a say, they may make a suggestion, but the management decides what's to be used.

      Where I work, the manager, a former software developer, decided to go with .NET and SQL Server. And all Winforms. For an application that queries public APIs and it's deployed in thousands of computers. "Because .NET is Tried And True®, Mature® and has a lot of support® from Microsoft. Oh and as much business logic as possible should go in stored procedures because they can be changed easily without a new deployment".

      His second in command (my "leader"), a former FoxPro developer can't stop whining about "how bad .NET really is, and FoxPro is far superior for everything. It's just that microsoft decided to kill FoxPro for marketing reasons". The guy keeps a separate implementation for every client. Often months away from each other "because if the version is working there is no point in changing it". Then the clients wants new features. The features are already developed in the development branch. "Can you merge these changes?" "No I can't. It impacts several parts of the system" "uh but why!!!! it's just a module!!" "yes, it's the security module. it impacts EVERY WINDOW IN THE SYSTEM, we can't just change it".

      And database scripts? Hell naw. We'll just copy the production database and empty the tables.

      The project has now blown up in their faces. Every report they need to add to the system takes weeks to develop (because of course, they HAVE to be developed in T-SQL and deployed to Reporting Services), then added to the Menu of the application. Formerly it was one-form-per-report. So i developed a form that just takes the report ID and looks it up in the database. "No, no, that's ugly, we can't just add a string to specify the report! It has to be on a table!"

      Lucky for me, like I said, the project has blown up in their faces. 60% of the dev force was fired by the new management. They're outsourcing to Colombia now. My bosses are scared. They know they will be next. So they're trying to come up with a new reporting system. In a week I hacked something together with Node.js and MongoDB. I reduced the execution time of a SP from 3-4 seconds to 200ms in MongoDB. Another report timed out at 5 minutes on SQL Server. It runs on 27 seconds on Mongo. The ETL is so fast that I made a real time report that updates the screen with every row (my new leader loves it so much, she will be showing it to a big client to look for their "sponsorship" so they won't fire all of us). My new team blew their minds in the presentation last friday, so they "sort of" greenlighted us to go ahead and play a little more with my proposed architecture.

      So yeah, the developer is the last in line to decide anything. There are very strong forces (inertia, client opinion, new management destroying everything) that it's just foolish to think the developer can choose "the right tool for the job".

      And honestly, after reading the comments in this discussion, I'm glad it's that way. So many "hackers" thinking about "hacking something together with bash scripts". Come on kid. This isn't your home server. This is corporate. This is a team. Code needs to be tested and understood by others. Deployments need to be easy. Bash, sed, and awk, just won't cut it in the real world. Using Winforms and having no SQL Server script might be retarded, but hacking stuff with bash? Thanks, I'll stick to DbComparer.

    3. Re:Language choice is complex by angel'o'sphere · · Score: 1

      Obviously I was talking about new projects.
      Yes, usually the developers _make the decission_
      Management only formally signs it, because they have no clue about technology and languages but usually trust the team somehow.

      Anyway, I understand your suffering, shudder :)

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  25. Re:Javascript isn't the problem. It's the browsers by AmiMoJo · · Score: 1

    That's why companies want JavaScript. They have huge piles of the stuff, mountains of spaghetti code, a mishmash of frameworks and Stack Overflow copypasta.

    --
    const int one = 65536; (Silvermoon, Texture.cs)
    SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
  26. WebAssembly. Problem solved. by Anonymous Coward · · Score: 0

    Seriously ... as soon as I heard of it, I knew I'd never ever code anything related to a browser platform ever again. I'd just write universal programs, and make them run on the web and on the phone via small adapters.

    Because let's be frank: Today's web browsers just shitty operating systems in virtualized platforms. The whole URL retrieval architecture is about the only plus they have over normal OSes. And I said for a decade, that we should just add application firewalls around our OS's virtualization containers, have an instance with a bare-bones OS pre-loaded in memory, and provide an URL input / state manager, that clones the prepared instance (just a memcpy), loads the file from the URL, and runs it inside the clone. For legacy support, there would be a HTML OS, based on a browser. Done right, it would entirely replace browsers, but without requiring a pointless layer of inner-platform effect.

    At least web applications that is. Actual web pages ... as in: Documents ... would still be in HTML and CSS... *documents*, as that makes some actual sense. Or TeX with an adapter. ;)

    1. Re:WebAssembly. Problem solved. by Anonymous Coward · · Score: 0

      I agree with your comments that a web browser is becoming a shitty OS. Regarding your second point, I think Plan9 did something like what you're describing...

  27. Re:Javascript isn't the problem. It's the browsers by angel'o'sphere · · Score: 2

    That is why the dynamic language ccrowd 'invented' (rediscovered, cough cough) unit tests and test driven development.
    To bad they throw it on the staticc typed language crowed now as if we never had heared about compilers.

    (For those who wonder: I only write integration tests and 'system tests' on the level of use cases, scenarios or stories. For real software, that means deployed applications, not 'libraries', ordinary 'unit tests' are in 90% of all cases complete pointless and a waste of time - in a compiled, strong typed language, that is)

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  28. Re:It's Decided. VIM Beat Emacs! by Anonymous Coward · · Score: 1

    Ah, on what planet does "ESC d d" make sense to delete a line?

    No one will ever convince me that any variant of vi is a good idea.

  29. Re:Static typing; sharing server logic with browse by angel'o'sphere · · Score: 1

    People moved from assembly mainly to dynamic typed languages like LISP and Smalltalk.
    Calling dynamic typed retarded only shows how new you are to programming and how less you have grasped so far.

    E.g. write a DSL in a dynamic typed language and then the same in a statical typed one. Have fun :)

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  30. Re:Static typing; sharing server logic with browse by Anonymous Coward · · Score: 0

    There's nothing particularly special about the Lisp family of languages or Smalltalk outside of history and nostalgia.

    write a DSL in a dynamic typed language and then the same in a statical typed one

    Writing DSLs in Haskell, Scala, Kotlin, Swift and most ML descendants is trivial.

  31. what does it matter? by Anonymous Coward · · Score: 0

    The languages that are on top are on top for a reason: they are the most effective solution to the problem.

    If devs who want jobs can't handle that, go back to academia.

    1. Re: what does it matter? by Reverend+Green · · Score: 1

      Dr Pangloss, what a pleasant surprise to see you here!

  32. Re:Javascript isn't the problem. It's the browsers by Anonymous Coward · · Score: 0

    Javascript has the problem that you can type obj.typo = 5 and it will run just fine

    Perhaps I've not done enough of it, but Javascript just seems something that should just die. Both C# and Java seem to have actual careful design behind them. Yes they by default allow too much access to use in a web browser tab, but that is fixable by limiting classes allowed and such.

    The biggest thing Java misses is output or reference variables, and you can toss together a mini class if you really want that. Not having them forces you to try to code not to need them, which is not the worst thing in the world. Both are strictly typed. Java even throws away the unsigned types in some quest for simplicity.

    The biggest reason I mention such a somewhat radical idea, is if your trying to make all web pages more or less computer programs, then it is better off starting with an actual programming language, and not one that is being manipulated into one over time.

    Security could be enhanced by web browsers supporting a common set of interfaces, then if you want to filter some crap, you can install plugins that replace the interfaces with better versions. You also control browser security by what interfaces can be downloaded. The main "application (web page tab)" likely has a limited set of Interfaces it can draw on, so as to limit what can be done maliciously. Every component could be cryptographically signed as usual. Adds would need to be sandboxed to effectively run as a component of that page, without access to state information about the page. Also a good design would probably have any content originating off the page to have at least one tier less in permissions. Most likely third party content would be limited by the browser, or at least could be, to a safe set like video, html, or audio. Just because you have a programming language available doesn't mean adds should be able to run cryptocoin miners...

    At any rate, I know the idea is hopeless and we aren't going to be able to start over with something cleaner. Thankfully we will probably evolve our way there, eventually..

  33. Very funny by seven+of+five · · Score: 1

    problem-solving skills are the most-sought by employers, more than language proficiency, debugging, and system design.

    Yeah. Try getting your resume past HR if you've had 15 years of problem-solving experience in a dozen different languages but not the one their shop uses.

    1. Re:Very funny by Tablizer · · Score: 1

      Write it as "ProblemSolving++ 1.0 through 9.0"

  34. IPsec ; IPv6 by DrYak · · Score: 1

    And: TCP/IP has no 'security' build in either, that would be on much higher levels.

    Actually, IPsec (initially developed as part of the requirements for IPv6, but back ported as an option of IPv4) *is* at the "Internet Layer".
    (It sits at the "IP" part of "TCP/IP", right under the "TCP" / "UDP" transport layer).

    But yeah, most other the other encryption is usually happening in the application layer (HTTPS, SSH, etc.)

    --
    "Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
  35. Bullshit by NicknameUnavailable · · Score: 1

    No competent developer would defile their mind with Python or Go.

  36. Re:Static typing; sharing server logic with browse by molarmass192 · · Score: 1

    That's what I was thinking too. To make things more confusing, people moved from assembly to FORTRAN and COBOL, not LISP.

    --

    Good people do not need laws to tell them to act responsibly, while bad people will find a way around the laws-Plato
  37. Re: Javascript isn't the problem. It's the browser by Anonymous Coward · · Score: 0

    Webassembly will make other languages possible in the front-end. But it will take 5 years or so

  38. Re:Static typing; sharing server logic with browse by shaitand · · Score: 2

    First of all you said dynamically typed like that is a strength, it's easier but more bug prone. Secondly, Perl. I see lots of benchmarks showing Perl near the end of the row but that is because you if you don't speak Perl you'll end up using it's flexibility to code up a bunch of array based garbage written like it's C code and include 400 spam modules to "avoid reinventing the wheel." When you load a module just to get the PID of your script when there is a built in that contains the pid... you are definitely reinventing the wheel.

  39. Re:It's Decided. VIM Beat Emacs! by Anonymous Coward · · Score: 0

    I remember a sysadmin like you. I had to edit her init.d from single user mode every time she had issues because she too could not manage to use an editor that everyone needed to learn. That was the only job i ever had where I was truly just a typist. It was fun, she used to get mad when I pretended not to know the right commands, or clicked with the mouse to move the cursor and nothing happened. (this was Bill Joy's vi, not gvim!)

  40. Python over JavaScript - how shocking by gabrieltss · · Score: 1

    I've written Python (2.7) and Jython in the past for scripting out IBM WebSphere administration stuff for WebSphere Admins who were to lazy to learn how to script their stuff. Been writing my JBoss/Wildfly stuff in Python 3.4 now - I would NEVER use JavaScript on the server side - much less on the Client side. It's all a giant steaming pile of shit! Consider the whole language was written in what 10 days? Even Netscape who wanted that language couldn't implement it right in their browser. I've used Perl to write scripts for backing up Subversion (SVN) repositories. I've done DOS Batch and PowerShell - but Python kicks both of those scripting languages ASS! I've done a TON of Java and all it's associated stuff. But right now I'm really enjoying coding in Python - it's versatile, fast and clean. Jython is nice because you can have the best of two worlds - Python and Java. But JavaScript - employers that want that real bad don't know SHIT about real languages - JavaScript is NOT a real language - it's a FUCKING JOKE!

    --
    The Truth is a Virus!!!
  41. Best of Both Worlds by Anonymous Coward · · Score: 0

    CoffeeScript

    Beautiful Python-like syntax, AND it compiles down to JavaScript.

  42. Re:It's Decided. VIM Beat Emacs! by dwpro · · Score: 1

    Don't worry, the results haven't rendered in the Emacs browser yet, they'll get here.

    --
    Millions long for immortality who do not know what to do with themselves on a rainy Sunday afternoon. -- Susan Ertz
  43. Javascript 4 ever by Anonymous Coward · · Score: 0

    MyBalls=function(you){
    you.call()
    you.lick()

    }

  44. Re:Static typing; sharing server logic with browse by DCFusor · · Score: 1

    Yup, and for dynamic typing (if it doesn't grow hair on your palms), I've found perl faster than most anything else, but then I'm careful and know how scoping issues affect the invoking of its garbage collector. Most don't, but most thing perl is like selfgol from Damian Conway - which is explicitly an example of how to be bad and to "don't do it this way". Mine looks pretty clean.

    --
    Why guess when you can know? Measure!
  45. Maybe it's time to shut up and listen by Anonymous Coward · · Score: 0

    Maybe it is time to shut up and listen to the expert you hired than some bullshit hype.

    1. Re: Maybe it's time to shut up and listen by Anonymous Coward · · Score: 0

      The expert is the âoebullshitâ type.

      Most experts are bullshit types....

  46. Re:Static typing; sharing server logic with browse by DCFusor · · Score: 3, Insightful

    Mod parent up. It's the programmer, stupid. You can be a shite-head in any language....or write good code in *some* of them.

    --
    Why guess when you can know? Measure!
  47. Re: Static typing; sharing server logic with brows by Anonymous Coward · · Score: 0

    Json schema.

  48. Re: Static typing; sharing server logic with brows by Anonymous Coward · · Score: 0

    That's horrifying. Lol.

  49. Re: Static typing; sharing server logic with brows by Anonymous Coward · · Score: 0

    Yes

  50. Re:Static typing; sharing server logic with browse by K.+S.+Kyosuke · · Score: 1

    What widely used, dynamically typed, memory-safe language has a runtime faster than the V8 engine used in Node.js?

    SBCL is pretty fast... So is LuaJIT.

    --
    Ezekiel 23:20
  51. Re:Static typing; sharing server logic with browse by Anonymous Coward · · Score: 0

    There's nothing particularly special about the Lisp family of languages or Smalltalk outside of history and nostalgia.

    That, or the fact that you don't lose the state of a running application when you edit a single function.

  52. Re:Static typing; sharing server logic with browse by Actually,+I+do+RTFA · · Score: 2

    the "top talent" in this area prefer static typing?

    Is there top talent anywhere that prefers dynamic typing?

    --
    Your ad here. Ask me how!
  53. Re:Static typing; sharing server logic with browse by Actually,+I+do+RTFA · · Score: 2

    LISP and Smalltalk were early exemplars of functional programming and object oriented programming respectively. Dynamic typing had little to nothing to do with it.

    --
    Your ad here. Ask me how!
  54. Re:Javascript isn't the problem. It's the browsers by Anonymous Coward · · Score: 0

    "(For those who wonder: I only write integration tests and 'system tests' on the level of use cases, scenarios or stories. For real software, that means deployed applications, not 'libraries', ordinary 'unit tests' are in 90% of all cases complete pointless and a waste of time - in a compiled, strong typed language, that is)"

    Is your code coverage the same or better? Can be pretty hard to exercise all the code paths at such a high level.

  55. Re:Javascript isn't the problem. It's the browsers by K.+S.+Kyosuke · · Score: 1

    For real software, that means deployed applications, not 'libraries', ordinary 'unit tests' are in 90% of all cases complete pointless and a waste of time - in a compiled, strong typed language, that is

    Chances are that this is an observation of status quo, not of potential. Tests catch problems with logic and types, with the latter in a sense being a subset of the former. Type systems only catch problems with types. Type systems extended to handle problems with logic become non-decidable and therefore aren't used in general practice. By the way, I assume you meant strong static typing rather than merely strong typing. And I'd also remark that decent compilers of dynamically typed languages still catch many potential errors at compile time so there really isn't a reason not to have both.

    --
    Ezekiel 23:20
  56. rat's ass by mapkinase · · Score: 1

    That's what I give about what developers want.

    --
    I do not believe in karma. "Funny"=-6. Do good and forbid evil. Yours, Oft-Offtopic Flamebaiting Troll.
  57. Re:Static typing; sharing server logic with browse by Anonymous Coward · · Score: 0

    in order to ensure that the client-side prevalidation enforces the same rules?

    Hahaha! So funny! Did anybody else fall for your "client-side" and "[enforce] the rules" in the same sentence bit?

  58. Re:Static typing; sharing server logic with browse by Pseudonym · · Score: 2

    Or does the "top talent" in this area prefer static typing?

    Yes.

    My experience is that dynamically typed languages make you feel more productive but lower your productivity overall. It takes longer for a programmer to persuade a Haskell or C++ or Java compiler to accept their program. Python programmers interpret this as "satisfying the arbitrary whims of the compiler", where C++ programmers interpret this as "finding and squashing bugs before deploying".

    If you don't mind deploying bugs because time-to-market is more important than software quality, that may not be a concern for you. But you won't attract "top talent" with that attitude.

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  59. Re:Static typing; sharing server logic with browse by Pseudonym · · Score: 1

    bash + sed + awk == Perl

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  60. Any poll where Python scores well is suspicious by Anonymous Coward · · Score: 0

    Based on all prior occurrences. No need to read any further.

  61. Re:Javascript isn't the problem. It's the browsers by Pseudonym · · Score: 1

    That is why the dynamic language ccrowd 'invented' (rediscovered, cough cough) unit tests and test driven development.

    Oh, no. You can thank the Extreme Programming Gurus (now known as "Agile") for this.

    The system that I work on now is an API, so unit testing it is necessary. For external APIs, you absolutely need to know if any user-visible behaviour has changed.

    For internal APIs, the main job of unit testing is to make refactoring sufficiently expensive that it will never happen.

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  62. Re: Static typing; sharing server logic with brows by Anonymous Coward · · Score: 0

    Really top talent doesnâ(TM)t really get bothered about dynamic or static typing.

    If you are advancing the discussion for academic purpose and maximising future productivity for the industry great.... but if thatâ(TM)s what you are thinking as important on just yet another project ..... then you arenâ(TM)t top talent and is trying to hire the wrong people.

  63. Re:Static typing; sharing server logic with browse by tepples · · Score: 1

    Did anybody else fall for your "client-side" and "[enforce] the rules" in the same sentence bit?

    I have no idea what you're getting at. I said the authoritative validation runs on the server. I was referring to ensuring that the behavior of the pre-submission validation, which runs on the client, matches that of the authoritative validation, which runs on the server. Any mismatch causes a poor user experience, as users who want to enter data that is server-valid but not client-valid have to "hack" it in using Inspect Element.

  64. Re:Javascript isn't the problem. It's the browsers by Anonymous Coward · · Score: 0

    I'm writing code in Python now. The primary purpose of unit tests is to make sure the code "compiles". You need a 100% code coverage to make sure you don't access an undefined variable.

  65. Re: Static typing; sharing server logic with brows by Actually,+I+do+RTFA · · Score: 1

    I agree that top talent can use pretty much any environment. And that static vs. dynamic typing has never been (even close to) the most important decision point (or event a point that comes up unless you're writing a language).

    I do also think that static typing is superior, and like to argue about it on the internet.

    --
    Your ad here. Ask me how!
  66. ugh by Anonymous Coward · · Score: 0

    Web programming should use easy scripting languages, to suit the large numbers of technically less skilled, whom make their own websites. Something like Python, or Visual Basic.

  67. Sample bias...no C#, really? by Tony+Isaac · · Score: 3, Informative

    OK, I know C# isn't the most popular language on slashdot. But it is really popular with businesses. The fact that it's not even on the list makes me question the survey's methodology. Other surveys certainly include C#, such as http://www.codingdojo.com/blog....

  68. Re: Static typing; sharing server logic with brows by Anonymous Coward · · Score: 0

    I might be tempted to quote you...

  69. Re:Javascript isn't the problem. It's the browsers by angel'o'sphere · · Score: 1

    You can thank the Extreme Programming Gurus (now known as "Agile") for this.
    And in what programming language did those guys work at that time? Hm?

    The system that I work on now is an API, so unit testing it is necessary.
    Agreed.

    For internal APIs, the main job of unit testing is to make refactoring sufficiently expensive that it will never happen.
    You could "black box testing" only the APl and only have further unit tests for essential stuff.

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  70. Re:Javascript isn't the problem. It's the browsers by angel'o'sphere · · Score: 1

    Oops, of course I meant strong _static_ typing.

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  71. Re:Static typing; sharing server logic with browse by angel'o'sphere · · Score: 1

    Both are dynamic typed, so what is your point?

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  72. Re:Static typing; sharing server logic with browse by Hognoxious · · Score: 1

    People moved from assembly mainly to dynamic typed languages like LISP and Smalltalk.

    I'm not sure they did, except in niche applications & academia. But in any case it's a huge leap to say they did that because they're dynamically typed, and it's another one to say that just because a lot of people do something that means it's not retarded.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  73. Re:Static typing; sharing server logic with browse by Actually,+I+do+RTFA · · Score: 1

    My point is that LISP and Smalltalk weren't interesting because of (or hell, I would stay were interesting in spite of) dynamic typing. They have other other important reasons people used them. It's like claiming the reason that people like to go n cruises is the unlimited soda for their children. Sure that's a thing that some people want (and other people oppose), but it's never been close to why its interesting.

    --
    Your ad here. Ask me how!
  74. Re:Javascript isn't the problem. It's the browsers by Pseudonym · · Score: 1

    And in what programming language did those guys work at that time?

    Mostly pre-ANSI C++. Smalltalk also gets quite a bit of coverage in GoF.

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  75. Re:Static typing; sharing server logic with browse by Hognoxious · · Score: 1

    He actually wrote "the same rules", implying it's being done [at least] twice. Which is the case. I don't even play a web developer on TV and I know that.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  76. It's always been this way by Shirley+Marquez · · Score: 1

    No real surprise. Employers want to pay programmers to do the same things they have done before. Programmers want to do things they haven't done yet.

  77. Re: Static typing; sharing server logic with brows by Pseudonym · · Score: 1

    You may credit me as "some random person on Slashdot".

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  78. Re:Static typing; sharing server logic with browse by Joey+Vegetables · · Score: 1

    I consider myself 90th percentile (in that I think I'm better than at least the bottom 10%). :) I might or might be what you consider "top talent," but for whatever it's worth, I prefer dynamic typing when it's appropriate, and static typing when it's appropriate. A lot of times, that's dictated by a choice of tools or technologies made by others. Much of my work is done in C# which is statically typed by default but supports dynamic types as well, which I use only rarely, but like to have available when needed. But I also love Python, and can tolerate JavaScript when and if necessary. :) Proper automated testing can often mitigate the lack of compile-time checks inherent in dynamically typed languages, and the use (abuse?) of things like Object and generics can often mitigate the lack of full support for dynamic types in many otherwise strongly-typed languages. Normally, what can be done in one can be done in the other, but it always makes sense to have multiple tools at one's disposal and to try to choose whatever seems like the right one for any given job.

  79. Re:Javascript isn't the problem. It's the browsers by angel'o'sphere · · Score: 1

    No, they worked with SmallTalk.
    The GoF guys are not the unit testing guys ...
    The GoF actually did work mostly with C++, however they analyzed code in other languages, too, to find patterns.

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  80. Re:Static typing; sharing server logic with browse by angel'o'sphere · · Score: 1

    The other important things, like dynamic dispatch (calling methods that don't exist and provide runtime glue to 'interpret the call') is only possible because the languages are dynamic typed.
    The typesystem (and meta type system, and meta object protocol) is the most important part of SmallTalk and OO LISP variations.

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  81. Re:Static typing; sharing server logic with browse by angel'o'sphere · · Score: 1

    Well,
    most assembler programmers 'in the old time' invented their own 'business high level assembler' languages that they interpreted with a relatively small interpreter.
    Besides that we basically we only had two crowds, language wise: the FORTRAN / COBOL crowed that from different points of views wanted to write compilers; and the LISP / Smalltalk crowd that were in the early steps of working with OO concepts, IDEs and other unique things, like the Smalltalk images.
    Then again suddenly the C crowed popped up, but I would put them into the operation systems crowd. They basically only invented C and its predecessor to easy port their toy operation systems to new processors, untill they suddenly where no longer toy operation systems :) and C evolved into a more mature language and had then its offsprings like C++.
    I guess in all crowds they made retarded stuff ... but also in most of them they fixed it a good deal over time.

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  82. Re:Static typing; sharing server logic with browse by Anonymous Coward · · Score: 0

    They basically only invented C and its predecessor to easy port their toy operation systems to new processors, untill they suddenly where no longer toy operation systems

    You have no clue what you're talking about.

    Unix and C were invented to run on the PDP-11 (though the OS started out in PDP-7 assembly) and weren't ported for many years.

  83. Misinterpreted:55+ year olds actually prefer Swift by Optic7 · · Score: 1

    The graph in the original article shows (for 55+ year olds):

    Python: 68.2%
    C: 70.8%
    (a bunch of other languages, then)
    Swift: 75% (emphasis mine)

    Whoever wrote that didn't look at the graph for more than a second or two.

  84. Re:Javascript isn't the problem. It's the browsers by Anonymous Coward · · Score: 0

    jQuery has been irrelevant for a while now unless you are targeting some really old browsers.

  85. Re: Static typing; sharing server logic with brows by Hognoxious · · Score: 1

    Really top talent doesnÃ(TM)t really get bothered about dynamic or static typing.

    Ronnie O'Sullivan could massacre me at snooker using a broom handle.

    He'd still be better using an actual cue.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  86. Re: Static typing; sharing server logic with brows by Hognoxious · · Score: 1

    If I was under thirty with tribal tattoos and piercings you could hang a towel on I'd invent my own language that translates on the fly into whatever you want.

    As long as you want swift or go.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."