The Worst and Hardest Programming Languages to Avoid Like the Plague

Ian Buckley Updated 09-03-2019

There are lots of awesome programming tutorials out there to get you started with coding. But before you dive into them, you’ll have to answer a very difficult question: Which programming language should I learn?


Some languages are easier for beginners to learn. Others are most useful for the future. And others are most likely to help you land a programming job.

In this article, we’ll approach it from the opposite end: Which programming languages should you avoid?

1. Esoteric as %^&*!

Let’s start with an easy one. Esoteric programming languages (or esolang for short) are designed to push programming to its limits of simplicity. In doing so they succeed in making it incredibly complicated.

While this seems like a contradiction in terms, a quick look at the unfortunately named Brainf&*k language:


This monstrosity is functional, Turing-complete code. The function of this program? It prints Hello World! to the screen. Simple, isn’t it?


The language consists of eight characters, which move the data pointer within the program array, and modify or output the data held in each position. This all adds up to a simple language which is an absolute mind destroyer to use. Hence the unfortunate name. By the way, Brainf£$k is not the only esoteric language with a “colorful” name, so be curious at your own risk!

Brainf^&k is one of the better known esoteric programming languages, though many more can be found. Perhaps you want to build a program using the one-liners of Arnold Schwarzenegger? Chef is particularly notable as the code you write ends up reading like a recipe.

Esoteric languages are designed more like a fun challenge to programmers than for everyday use. As a general rule, these languages are Turing Tarpits and will cause more frustration than anything else if used for actual programming tasks. In the same way that going over Niagara Falls in a barrel isn’t necessary, I’m sure some of you will program in esoteric languages regardless!

2. PHP

This is where things may get contentious. PHP is a server-side language designed for web development, so you can use it to build a simple PHP website How to Build a Simple PHP Website Want to build a website but don't know where to start? Creating a basic PHP website will put you on the road to web development. Read More . Originally released in 1997, PHP quickly took over the web. You’d be hard pushed to find any large web entity that doesn’t use PHP. PHP introduced the concept of Dynamic Websites, allowing users to query databases in real time rather than loading static pages on each interaction.


A recent Stack Overflow survey shows PHP as the ninth most popular language, and there is still a considerable demand for PHP developers. So far so good. Widely used, in demand, long-standing, what isn’t there to like?

Well, depending on who you ask, quite a lot!


PHP wasn’t meant to be a language and grew piece by piece rather than with a general structure. This makes learning PHP a frustrating experience.

An example of this provided by aptly named phpsadness is PHP’s get function:


These little inconsistencies in the naming of in-built functions are part of a much larger problem. Small differences in syntax and semantics make PHP difficult to learn when coming from another language.

In an age of programming language polyglots, these issues might not be a big deal to you, but it is enough to make some developers run for the hills.

One more thing before we move away from these types of inconsistencies. In PHP, function and class names are not case sensitive, but variables are.

Wait, what?


The Ternary Operator

Whether it is a product of PHP’s ad-hoc structure or the mad whim of one of its creators, the ternary operator in PHP is baffling. Consider this:

$a = 11; 
echo ( 
    $a == 10 ? 'ten' : 
    $a == 11 ? 'eleven' : 
    $a == 12 ? 'twelve' : 
    $a == 13 ? 'thirteen' : 'something else'); 

echo "\n";
//this code prints 'thirteen' to the console

As you can see in the above example, PHP does strange things with ternary operators. In almost all other languages you would expect this code to output eleven. PHP disagrees.

This strange behavior comes from PHP using a left associative ternary operator. This somewhat mind-bending behavior is utterly unintuitive to many programmers, and even after reading a detailed explanation of how it works, it’s still baffling.

PHP is still used widely, and many people claim it has improved hugely over its 20-year tenure.

If you want to create your own WordPress plugins, then it’s certainly worth learning. There are great resources out there to get you started learning PHP Learn To Build With PHP: A Crash Course PHP is the language that Facebook and Wikipedia use to serve billions of requests daily; the de-facto language used for teaching people web programming. It’s beautifully simple, but brilliantly powerful. Read More , and its popularity means you will likely land a development job once you have.

The real question is: with so many other languages out there, and the rise of other frameworks like node.js and Ruby on Rails, do you really want to?

3. JavaScript

Can you hear that? It’s the sound of a thousand developers cracking their knuckles, ready to defend JavaScript’s honor in the comment section!

JavaScript is the language of the internet. There is no disguising its dominance. If you are using a browser, the page you are looking it will almost certainly be using JavaScript. When you watch Netflix or use PayPal, you are using servers running node.js, JavaScript’s server-side runtime. A quick skim of any job board for programmers shows demand for JavaScript developers.

Why does it belong on this list? Well, the darling of front-end has a few quirks.

Automatic Semicolon Insertion

If you are familiar with Java or any of the C family programming languages, you’ll know that semicolons are used to denote the termination of a statement. The interpreter sees the semicolon and knows to move on.

In JavaScript things are a little different. Semicolons are optional. While that might seem impossible, many people want to drop semicolons from JavaScript altogether.

While this is a nice idea, it is not without its problems. Self-confessed semicolon denier and YouTuber Kyle Robinson Young makes a good case for why they should be used by beginners.

The issues raised in this video point to a wider problem. JavaScript works fine without semicolons most of the time. This is because the semicolons aren’t gone at all, they are just automatically inserted where the interpreter thinks they should go.

While the cases when the interpreter gets it wrong are seen as “edge cases” by more experienced coders, they are all things beginners are likely to run into, thereby making the experience of using JavaScript unwelcoming.

A short search on the subject of semicolons in JavaScript will lead you down a rabbit hole of opinion and speculation with almost no end. When a language requires a full page of reading just to understand where you should use a semicolon, only to conclude that you should make up your own mind, it’s forgivable to think that something is wrong!

An Array of Weirdness

Anyone who has taken a beginner coding class will be familiar with arrays. They are a simple way to collect lots of data of the same type and order them to easily get it back later.

This is a fundamental of programming, so they should be pretty simple to understand right? Actually no, not right. The first example in James Mickins’ hilarious talk on JavaScript sums it up nicely:

“JavaScript arrays are array-list-dictionary combined multi-type objects A Beginner's Guide to Python Object-Oriented Programming To take full advantage of Python's strengths, you'll want to learn how Python works with object-oriented programming (OOP). Read More .”

Right then. Clear as day.

These are just a few small examples of why JavaScript could be seen as a terrible language to learn and to use. For every case here, and the thousands of others all over the web, there is an army of people ready to defend these behaviors. One thing is for sure, JavaScript isn’t going anywhere, and neither are the endless online arguments about it.

For a final bit of fun, which harks back to esoteric languages discussed earlier: open up a JavaScript console in your web browser and paste in this monster:


A World of Programming Languages

Can you hear the sabers rattling? The angry devs ready to strike down every point made in this article? In truth, they would not be wrong. There are thousands of other cases in almost every language out there I could have used.

With the exception of the esoteric languages, each programming language has its good and bad points. As with all tools, a feature which makes one user’s blood boil is a cherished functionality to another. Semicolons may be one person’s kryptonite, whereas whitespace might keep others up at night.

For a beginner, any programming language is hard, and you should spend time learning the fundamentals of programming The Basics Of Computer Programming 101 - Variables And DataTypes Having introduced and talked a little about Object Oriented Programming before and where its namesake comes from, I thought it's time we go through the absolute basics of programming in a non-language specific way. This... Read More before worrying too much about what language to choose. Having said that, it’s important to stay informed about the latest languages that are becoming popular. Right now, Rust is the most exciting programming language 7 Reasons Rust Is the Most Exciting New Programming Language Want to get started with programming? Here's why Rust is the most exciting and accessible new programming language. Read More to explore!

Image Credit: fizkes/Depositphotos

Related topics: JavaScript, PHP Programming, Programming.

Affiliate Disclosure: By buying the products we recommend, you help keep the site alive. Read more.

Whatsapp Pinterest

Leave a Reply

Your email address will not be published. Required fields are marked *

  1. Say What
    July 29, 2019 at 11:05 pm

    "PHP introduced the concept of Dynamic Websites"
    Do you seriously believe the entire web was static before PHP was released?
    I was writing dynamic pages with Visual Basic and CGI long before PHP was around.

  2. Be Reasonable
    June 29, 2019 at 2:30 pm

    You're describing flaws in languages which can be fixed in a new version. That's not a reason to avoid these languages "like the plague'!

  3. Angry Programmer
    March 26, 2019 at 5:26 am

    My worst three languages are:

    1) JavaScript, Node.js, et al. JavaScript is absolute garbage with its piss-poor standard library, stupid handling of data types, schizophrenic community, and libraries du-jour. Node.js' concurrency model is pathetic and building a successful business on Node.js is like trying to win a track and field event by shooting yourself in both knees. Show me a Node.js/JavaScript shop and I'll show you a non-scaling company whose customers are ripe for the poaching.

    2) Go. Go's dependency management and tooling are dreadful. Go also feels like a language Frankenstein-ed together from the worst ideas from Java and C with mediocre threading, a cooperative scheduler, and a fanboy community that refuse to admit that Go is a beta language at best.

    3) Java. I don't remember who said this, but they were right: "Java is a DSL for taking large XML files and converting them to stack traces." The language sucks. The JVM sucks. The fact that you can't write Java effectively without a bloated IDE sucks. Java deployments suck. Top to bottom, everything Java just sucks.

  4. Andrew O
    November 21, 2018 at 9:51 pm

    I agree with PHP, and as you even say it will be replaced with JavaScript, and then right after you say PHP will be replaced with JavaScript you bring up JavaScript.

    Telling people to avoid JavaScript is neither helpful or practical, as many jobs require at least a basic use of JavaScript these days. And the web will always use JavaScript.

    Obviously this is an opinion piece, but I personally say avoid PHP as it's reached it's height of use and will only start to become less over time. However, if you do want to learn it learn Magento as well, as that is one area where you can make a lot of money, I see job listing for over $200k a year. If you are learning for WordPress, then run, as there are just not that many jobs that pay over a $100K a year doing WordPress developer.

    I personally can't stand Java, but I know that Java is not going anywhere any time soon and is a good language to know if you want to be paid well.

    Esoteric languages are mainly for hobbyists, so if you want to play around go ahead.

  5. Abhinandan Jain
    November 14, 2018 at 9:52 am

    Worst is Alice 3

  6. A Human
    November 14, 2018 at 2:03 am

    You know what is funny about this, uses Javascript.

  7. David Domingo
    October 5, 2018 at 2:28 pm

    Well this was dumb... yet I feel like I just fell into a trap. Future programmers, avoid reading articles like this one. There's no perfect language. They are just tools that get a job done. PHP is a perfectly okay language to learn to build websites with. JavaScript is also perfectly okay. Learn esoteric if you like sudokus.

    • baburao
      December 25, 2018 at 4:24 am

      I don't think the author realises that this very blog is built upon WordPress which is all PHP & JavaScript ????

  8. Andrew
    September 6, 2018 at 10:01 pm

    Sadly, all languages have problems and sometimes it's a matter of preference.
    Even my all time favorite language Delphi/FPC has problems. You learn to automatically avoid traps/inconsistencies. That's why programmers are bad testers.

    There are a few aspects more important than the language itself:
    1. Readability: you read code more, so it must be simple and relatively easy to understand. Go tries hard to improve this aspect. I think Node is decent at this.
    Many OOP languages refuse to accept that the OOP model with classes/objects is flawed. You see more discussions about apparently philosophical things, Design Patterns, SOLID, Spring, composition vs inheritance. Most of them just hide the real problem, that OOP can easily become hard to maintain even in relatively simple programs given enough time. Data and it's interface/functions/methods should be separate concepts. The IDE/complier can automatically "link"(data.func) even the simplest function just by looking at the first param.
    2. How easy it is to learn: as a beginner vs experienced programmer.
    TypeScript might be the interface necessary for Java, C#, C++ and Delphi programmers to even get near JS. Sadly it loses some of the advantages.
    3. Memory/thread safety: many classic languages such as C/C++ allow and even encourage a lot of dangerous practices that lead to hidden holes/bugs, only to be exploited later. One of the reasons Rust even exist. JS and others have no such problems.
    4. Efficiency/scalability: While JS is certainly not as efficient as C/C++/Rust or even Go, it's good enough, and compensates by teaching good event-based async practices that were proven to work by the NGINX web-server.

    There are many other aspects such as cost, community size, documentation, how obvious the common coding practices are, cross-platform compatibility, commercial vs open, evolution speed.

    The brain-damaged/lobotomized language wasn't created to write serious apps, some people have too much free time and no idea how to use it :)

    PHP has shown a lot of problems over time, but the weird/inconsistent syntax is certainly not the biggest, there are simply too many vulnerable platforms, too many designers doing PHP, causing so many bugs/security holes.

    JS is still a bit hard to quickly understand, creating classes with functions or JSon may seem weird to people coming from static languages.
    Most of JS's weirdness goes away if you follow some simple rules:
    - 'use strict' at the top of all JS files.
    - Use modules(the way Node does it).
    - All globals are banned, state is "like kicking babies", pass state where you need it.
    - Learn what "this" means in JS, don't map it to self/this from other languages.
    - Learn functions vs arrow functions, context, bind/call/apply.
    - Use async/await where performance is not extremely important, name functions where it is, to avoid nested callback pyramid.
    - Use "classes" with familiar syntax if you must.
    - Use an IDE such as VS Code with ESLint and many other nice settings/extensions.
    - If everything else fails go the TypeScript way.

    JS is not going away soon, WebAssembly dreamers deny the existence of ASM.js/Emscripten, TypeScript and many other cross-compilers.
    Like some of the other folks coming from Java and other languages I found JS/Node challenging, but also interesting and overall liberating.

    I think the time of language wars is over, just use what you feel comfortable/productive and try not to create more security holes. There is no perfect language that pleases everyone.
    Pick a few and be really good at them, it's unlikely that you will become an expert in a dozen of very different languages, but they may look good in your CV :)

  9. Nenad
    August 31, 2018 at 2:18 pm - website that should be avoided like a plague

    • Kashif
      September 9, 2018 at 6:30 pm

      totally agreed

  10. Richard Eng
    August 13, 2018 at 9:54 pm

    This article is weird because of the inclusion of esolangs. Esolangs were never intended to be practical programming languages. They were never meant to be used in industry. They were created for amusement, or curiosity, or experimentation in perversion.

  11. Chris
    July 12, 2018 at 12:30 am

    Perhaps writing an article that you believe would be beneficial to new programmers, or developers, might be a better use of time. And definitely a better read for most of us.

    • Chris
      July 12, 2018 at 12:31 am

      An article that focuses on languages you think would be beneficial to new developers.

  12. Juan
    July 3, 2018 at 4:39 pm

    Yes, those languages are crap.

  13. Jan Steinman
    July 2, 2018 at 5:19 pm

    PHP introduced the concept of Dynamic Websites

    Actually, I think Ward Cunningham's original WikiWikiWeb could qualify, as it was the first widespread way web end-users could actually change web pages.

    WikiWikiWeb was (still is!) written in Perl, which I think could qualify for a mind-destroying language, often described as indistinguishable from transmission-line noise.

    • Edward Newbold
      October 25, 2018 at 1:13 pm

      Hahahaha... well said. I had to do a lot of Perl programming back in the day, and it was really convoluted.

    • Say What
      July 29, 2019 at 11:10 pm

      Dynamic websites were around before 1995 and before wikiwikiweb. I was writing them using CGI well before then, and I certainly wasn't on the bleeding edge.

  14. Star Horde
    July 2, 2018 at 3:29 pm

    Good article, and as was stated, all the defenders of these useless languages are out en masse gnashing their teeth and screaming bloody's actually hilarious and wonderfully entertaining to read their inane rantings and ravings.

    And some others were correct also...anything 'VB' should have been in this article too.

    • Santiago
      July 5, 2018 at 11:10 pm

      VB.Net is actually pretty easy to learn.

  15. Alpheus
    July 1, 2018 at 4:35 pm

    I'm going to challenge the notion that esoteric languages absolutely shouldn't, under any circumstances, be among your first languages, even though I, personally, haven't tried to learn one yet.

    Seriously? First, these are obviously toy languages. Writing programs in Shakespearean or Schwartzenager one-liners is clearly meant to be funny; if this is your first intro to programming, I wouldn't expect the use of the language to be extensive, but I'd expect it to be memorable, and with lots of laughs.

    And this is going to be true with *any* esoteric language, even br**nfudge, INTERCAL, or One-Instruction-Set Assembler (sub-and-jump-if-neg). Heck, it might even be true for esoteric languages like C++, JavaScript, Perl or PHP (even if some people mistakenly take those languages seriously as well!).

    Oh, and someone in the comments pointed out the consistency of suggesting that NodeJS is better than PHP, but one shouldn't learn JavaScript. It just occurred to me that this isn't an inconsistency at all. PHP is just that bad....

    (And having used both professionally, I'm not in a position to disagree...)

  16. Matt
    June 30, 2018 at 7:51 pm

    Javascript is the worst language I am forced to use, speaking as a 20 year developer. Thank you for highlighting it in your article.

    • Vladas Saulis
      January 26, 2019 at 12:33 pm

      Javascript is the _best_ language I am forced to use, speaking as a 20 year developer. Let's start language wars?

  17. Patrick
    June 30, 2018 at 1:30 pm

    I'm a professional JavaScript programmer at Amazon. In a way, I agree with your assessment. JavaScript is hard, and probably should not be a beginners first language. That description of arrays is accurate, and if your don't understand what that means, then you should probably first learn a simpler language.

    A language like C++, for example, can also be hard, but it's easier in a way because everything is explicitly defined. Part of the difficulty of JavaScript is that many things are implicit. You have to know whether you function arguments are passed by value or passed by reference, with different implications for both. You have to know when your asynchronous callbacks are getting called, and what the scope of your variables are when they do get called. So beginners should stay away from JavaScript because it's too hard, and let us professionals handle the work. :)

    • Nigel
      June 30, 2018 at 5:19 pm

      I agree with what you're saying here Patrick, but the problem is that Javascript was never designed to be such a versatile language, rather it evolved into one through a history of modifications to meet new challenges and the feeling many people have is that this evolution has over-extended it's foundation. It's turned into a stove-pipe language full of facades and illusions. Imagine if you could reinvest your time and effort, trying to keep track of smoke and mirrors into a language with a more straight forward and capable foundation. This is why we are seeing a lot of efforts being made these days to build a better alternatives to Javascript, especially for "professionals" pushing the limits of performance and capacity (Rust comes to mind). Otherwise, you're just calling yourself an expert for over-extending a beginner's language.

      • Chris
        June 30, 2018 at 8:05 pm

        Actually, JavaScript was specifically designed to be an evolving language. When Brendan made it, he knew he didn't have time to put in all the bells and whistles, so he made it possible for other devs to extend the heck out of it.

        Its flexibility is both it's blessing and it's curse. It's sort of like a chainsaw. It's dangerous for beginners, but a powerful tool in the hands of those who understand how to use it.

      • Vladas Saulis
        January 26, 2019 at 12:45 pm

        Sorry, Nigel, but Javascript DIDN't evolved at all. The language itself (except ECMA) is the absolutely the same as it was 20 years ago, and what is more important, - it hadn't changed even its behavior. What had evolved - this is programmers, who had understood the power of this language quite lately. With V8 and Node coming to scene, the language performance and capacity pushed the new limits (as you still compare to Rust). By my benchmarks it's only 2.5 times slower than C in number-crunching operations. What is slow with Javascript - this is interactions with DOM of the web-page, - but this is not the language issue.

  18. Prejith
    June 30, 2018 at 1:16 pm

    PHP is bad and nodeJs is good, but wait, JS is crap? Dude, what?

  19. Jusper
    June 30, 2018 at 10:52 am

    What a misleading nonsense! Another stupid article from this site...

    • DrShowMe
      July 2, 2018 at 6:55 pm

      Jusper: Without respect to the quality of this article, ... "Another stupid article from this site" implies that you have read a lot of them ... yet you continue to come back to it! If I find a site that spews stupidity, I find it easier to not return to it.

  20. Binh
    June 30, 2018 at 10:41 am

    This article is idiotic. By your logic, you could say QWERTY keyboards are inefficient and must be avoided like the plague.

    I seriously hope nobody starting take your advice. Regardless whether you like JavaScript or not didn't matter. JavaScript became a defacto standard. I'm a C# backend developer mostly but I consider JavaScript a must know. I don't know any senior developer who doesn't know it.

    • Jan Steinman
      July 2, 2018 at 5:21 pm

      By your logic, you could say QWERTY keyboards are inefficient and must be avoided like the plague.

      Works for me!

      I've been typing Dvorak for nearly 40 years. It is a tiny bit faster, but more importantly, it is more comfortable! While many of my professional associates have carpal tunnel syndrome and achey hands, I just keep on typing. It has the considerable fringe benefit of keeping others from using your computer!

      • Joseph J Pollock
        July 3, 2018 at 5:37 am

        LOL about the fringe benefit. Never thought of that. I'm sure it's true

        • Jan Steinman
          July 3, 2018 at 6:14 am

          Yea, sometimes I'll come back to it and find "dyylSzz" (that's "http://" in Dvorak) in the address pane of the web browser. :-)

  21. Faisal
    June 30, 2018 at 8:29 am

    Best article ever :D PeeAchePee.!!!

  22. Peter
    June 30, 2018 at 8:15 am

    Useless article, full of bullshit. If I ever found ternary operator used in such a way as in your example, I would slap the one who wrote it in face. No matter what language he wrote it in. And you say node.js is awesome, but javascript is bad? Good morning dubass, programs for node.js are written in JS.

  23. Hugo S.
    June 30, 2018 at 6:29 am

    Misleading title.

    The points made in the article are valid, and every language has something annoying about it.
    But you can not say "Avoid like a plague" when these are essential languages and JS will be for another decade.

    Make Use Of your time and avoid articles like this like a plague, which I regretably failed to do.

    • Anon
      June 30, 2018 at 6:55 am

      Absolutely agreed. Certainly JS has its problems, as all languages do. But listing it as a language to "avoid like the plague" is so entirely off and misleading. JS is the backbone of almost every modern websites.

  24. python developer
    June 30, 2018 at 6:02 am

    this article must be avoided and this website too. what a nonsense.
    Even though I always avoided last two, now I'm playing with last one. Hope I had used it earlier too.

  25. John
    June 30, 2018 at 5:22 am

    What a clickbait shit!

    • Talia Beldon
      June 30, 2018 at 5:40 am

      Yep. Total crap. This guy is an idiot! I guess if you can't code, you write.

      • Joseph J Pollock
        July 3, 2018 at 5:45 am

        Regardless, of the quality or lack thereof of this article, good writing is hard work - and a lot of programmers can't (or won't) do it very well.

        Don't forget that without usable documentation (even if it's just tooltips and pop-ups), not many people are going to be able to use your code!

  26. Lee
    June 30, 2018 at 3:28 am

    JavaScript? Even if something new were to come along tomorrow, JavaScript would not be phased-out in 5 or 10 years. It's an important language to know, and it's still relevant. And, if you learn to use it properly, and show a little self-control and pay attention to what you're writing, you use clean syntax. I think you forgot Visual Basic on your list by the way...

    • Chris
      June 30, 2018 at 8:08 pm

      Okay, having been a veteran of JavaScript and visual basic, I can wholeheartedly concur that vb should be on the list and JavaScript should not.

      • Frank
        June 30, 2018 at 9:29 pm

        Yeah vbscript/ etc. should be on the list (and not javascript). Unfortunately I have to maintain a few projects with (will be rewritten in c# in the near future).

  27. Jamal
    June 30, 2018 at 1:31 am

    Wow, really?

    I would have gone with VB, VBA and vbscript.

  28. Vladimir
    June 29, 2018 at 10:11 pm

    PHP is a little difficult for beginners, but oh my lord JavaScript has to be the worst. If it were my first language (thank goodness it's C) I would have dropped programming a long time ago. The syntax is awful and I never manage to solve a problem in my first try unlike in C# for example. Now I know you can't compare these two languages, but looking at syntax JavaScript has always been a nightmare to me. So glad I'm not alone.

    • John Davis
      June 30, 2018 at 6:21 am

      First, there are no alternatives to JS if you want to a web developer, C or C# won't do it.
      Secondly, JS has come along way, especially with ES7, plus if given the choice to use C or C# inside HTML, I'm pretty sure most people will turn it down because those languages are overly complicated and extremely inappropriate for simple web dev.
      So while js syntax may not look good to some developers, it's best at what it does.

      • Vladimir
        June 30, 2018 at 1:13 pm

        Yeah I wish there were alternatives that are easier to learn. It doesn't feel complete at all.

        • rahimie ahmad
          June 30, 2018 at 1:55 pm

          doesn't feel complete.. yeah.. stop wishing that.. javascript alone isn't that hard... but with over hundreds of js frameworks out there, and the ever growing ecosystem since the advent of nodejs.. yeah nahh...

          what angularjs version already now? xD

    • Lazza
      June 30, 2018 at 10:36 am

      JS uses a C-like syntax so your point about the syntax is moot.

      • Alex
        June 30, 2018 at 9:22 pm

        Exactly, thank you :)
        Just was going to say that

  29. McGuffins
    June 29, 2018 at 9:57 pm

    Stopped reading and blocked your domain as soon as I got to JavaScript. If I'm going to waste my time reading a nonsense clickbait article, it better at least be enjoyable.

  30. Raymond Gonzalez
    June 29, 2018 at 9:55 pm

    Its pretty silly to avoid js when its literally the defacto language of the web. Eventually, as a developer there will be no way to avoid it. It will be nearly impossible to avoid it in the next 20 years. The web is built on it, how can you avoid it, the semicolon issue us not much of an issue. The array issue sucks, but in all honesty every language has its problems, is still has a lot, but as it matures it will get better. One note on pop, there will be jobs for php for a long time, you are a bit off. Old companies will need them for quite some time.

  31. Steller
    June 29, 2018 at 9:26 pm

    You should have said scripting languages. They are not really programming language. I am a professional Java engineer and we all use javascript

    • Lazza
      June 30, 2018 at 10:38 am

      "They are not really programming language"

      Yes, they are. Python, Ruby and Javascript are programming languages and they are Turing-complete.

      • Steller
        July 1, 2018 at 12:25 am

        You are wrong. Even javascript has "script" in it. They are indeed scripting languages. Real programming languages for example are Java, c/c++ , c# , swift, objective c , ect. Php, and even python are scripting languages.

        • Lazza
          July 1, 2018 at 1:03 am

          WTH You are implying interpreted languages are not programming languages. Seriously, where the heck did you study CS?

      • corey mattis
        July 1, 2018 at 1:47 am

        JavaScript, ASP, JSP, PHP, Perl, Tcl and Python are examples of scripting languages. END OF STORY. Do a google search. I studies software engineering not CS.

        • Lazza
          July 1, 2018 at 10:42 am

          LOL and it shows, since you lack the basics about formal languages.

          Mr Google Search, let me quote what the first result about Python says: "Python is an interpreted high-level programming language for general-purpose programming.".

          You should now, since "scripting languages" are "programming languages" by definition, assuming you really got a degree.

  32. Nikola Kostadinov
    June 29, 2018 at 9:08 pm

    What should be avoided like plague are articles like this.

  33. Amsa ambe
    June 29, 2018 at 8:34 pm

    Accept all your reasonable descriptions then which language is more useful for future and more demandable jobs inIT ?

  34. Kingsley
    June 29, 2018 at 8:06 pm

    I could not agree more. I have avoided the last two like Ebola however Kelsey Hightower tweeted about learning Javascript reason being you will get to interact with it one way or another. Since then am considering giving it a second look.

  35. Kingsley
    June 29, 2018 at 8:03 pm

    I can not agree more. I have avoided the last two like Ebola, however Kelsey Hightower tweeted something about learning Javascript reason being that you will get to interact with it one way or another, since then am considering giving it a second look.

  36. Alex
    June 29, 2018 at 6:31 pm

    Opinion pieces are the worst

  37. Codeninja
    June 29, 2018 at 4:15 pm

    Ha! This site is done in WordPress aka php. Yet you talk trash about php and WordPress devs

    • Nigel
      June 29, 2018 at 5:49 pm

      WordPress is a great tool for blogging and for content management... I use it for both, but I rarely EVER interfere with the PHP behind it because the WordPress folks already did all the programming... Thank God, because PHP sucks!
      When *I* program, I use *real* languages like Java and C/C++. Then I write about it using WordPress. See how that works?

      • Loljava
        June 29, 2018 at 6:48 pm

        A Java developer, haha.

      • Loljava
        June 29, 2018 at 6:48 pm

        Java developer lol

      • Lazza
        June 30, 2018 at 10:40 am

        Did you really put C++ (which is like C after multiple sexual assaults and without proper garbage collection even if it's supposed to be object oriented) in the same sentence as C and Java? :o

        • Nigel
          June 30, 2018 at 4:33 pm

          LOL... point taken. But even so, I think C++, like Java and C has more to offer to those who can master these languages than PHP ever could... unless of course, all you're doing is making web pages for lemonade stands.

  38. Meow
    June 29, 2018 at 3:01 pm

    I guess ruby is okay, if your hobby is frequently unnecessary code coverage and you like sites that are slow and use way too much hardware.

  39. UCrazy99
    June 29, 2018 at 2:59 pm

    With Most IDE's can use some kind of JavaScript lint that will force you to use semi-colons. So that's not a reason to shy away from JavaScript. The array object issue is definitely a hair puller.

  40. Anurag Deshpande
    June 29, 2018 at 2:28 pm

    You have made some excellent points about why and what is bad about a language. I am a developer too, I experience these oddities first hand. But when you point out a problem also try directing towards a solution. Be solution driven not problem driven.

    • Meow
      June 29, 2018 at 3:05 pm

      He did. His solution is to avoid them not.

      If you can't derive the solution yourself by applying analytical principles and you expect people to hand you a solution you're not a developer, you're a machine that applies rote knowledge dictionary style to every problem and you will be replaced by a cheaper machine eventually.


      In life, the answers are not in the back of the textbook.

      • Jeff
        June 29, 2018 at 5:17 pm

        Avoid them not? The title of the article is "3 Worst Programming Languages to Avoid Like the Plague," so I think you are wrong.

        Clearly, this article is aimed and young devs. If you are going to suggest that they avoid 2 of the most widely used programming languages, you should probably bring more evidence than semicolons.

        I think OPs point is that this is a fatalistic negative article about 2 successful, widely used languages, when an article called "common gotchas to watch out for as you learn these popular langauges" is a much more productive and actuate title.

        • Josh
          June 29, 2018 at 6:28 pm

          Yeah, the whole thing feels very hipster-y. In reality, if you're a young developer without a CS degree looking to break into the market, Javascript is basically mandatory, and PHP is a shortcut to a decent paycheck or unending freelance work.

          Lumping them in with esoteric languages makes me feel like this person writes about code more than they actually use code.

        • Dov
          June 29, 2018 at 7:58 pm

          As a developer I run into these issues as well. However, I disagree with the OP. A language can have quirks and as developers we don't always get to choose what language we are going to use, so we need to learn to put up with all those quirks for better or for worse.

          Plus I find the tire misleading. I wasn't expecting to find two of the most popular SCRIPTING languages given so much attention in a part titled for programming languages.
          PHP does usually get an honorable mention in these kinds of posts, though.

  41. DGW
    June 29, 2018 at 1:38 pm

    Things that are horrible and will never die because so many people use them:
    The English Alphabet, QWERTY, Javascript.

    Embrace The Evil Trio :)

    • Mike
      June 29, 2018 at 3:40 pm

      Why the English alphabet though?

      • TvL
        June 29, 2018 at 4:15 pm

        Does an English alphabet even exists? Shouldn't that be a Roman alphabet?

      • DGW
        July 2, 2018 at 3:09 pm

        Looks like my original reply to you was blocked because I had a web link. The answer is easy: The English alphabet has 26 letters and 44 phonemes. It is a miasma of painful spelling "rules" that are broken over and over again. For a non-English speaker, it is frustrating. Spelling bees, for instance, are unique to the English language, and highlights the difficulty. Attempts to fix the alphabet have failed repeatedly.
        For a great example, search for "The Chaos", written by G. Nolst Trenite, a.k.a. Charivarius

        • Scott
          August 15, 2018 at 8:05 pm

          lol, the English language is the easiest language for any non English speaking person to learn. Few verbs need to be conjugated, no special character letters, no tildes, no dieresis, no accents, easy gender assignment.
          I would suspect your "issue" with the English language isn't the grammar or alphabet but an emotional bias.

        • Vladas Saulis
          January 26, 2019 at 1:12 pm

          Oooh, DGW, you haven't seen the Lithuanian language, for example. What about 7 noun's inclinations? What about 13(!) participles (English has only 2). What about verb mutating? English is the most simple language in the world, I think (as a Lithuanian speaking).