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."

30 of 222 comments (clear)

  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 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!
  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).

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

    Your bragging skills need some polishing

  4. 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: 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.

    2. 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.
    3. 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.

  5. 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.

  6. 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.

  7. 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.

  8. 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.

  9. 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'
  10. 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'
  11. 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.

  12. 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."
  13. 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.

  14. 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.

  15. 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.

  16. 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.
  17. Re:I'm 55plus by StikyPad · · Score: 4, Funny

    Stop yelling, grandpa!

  18. 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.

  19. 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.

  20. 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.
  21. 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!
  22. 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!
  23. 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!
  24. 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});
  25. 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....