DEV Community

Cover image for 6 languages developers hatešŸ¤¬
ispmanager.com for Ispmanager

Posted on

6 languages developers hatešŸ¤¬

Hating JavaScript or Python is like hating French or Spanish. If you don't like it, don't use it. When push comes to shove, there are two types of coding languages, ones that everyone hates and ones that no one uses.

C++, for when time is no object

This is a serious language that will demand all your time. It takes a long time to learn and it takes a long time to code with. However, C++ can be the only solution for large projects where stable performance is important. C++ is often used for developing operating systems, game engines, and the firmware for various devices.

For example, most of the ispmanager backend is written in C++.

ispmanager control panelThe ispmanager control panel

The standard language library appears wildly outdated and you have to manage the memory manually. This greatly increases compilation times and while you wait, the idea of switching languages will invariably creep into your head. Plus, if you adjust a header file, youā€™ll have to rebuild half the project.

C++, for when time is no objectThey say it's easier to wait for a breakthrough in processor technology than to implement the instructions you need to speed up C++ compilation

Python, because it's so lightweight

This is a useful and versatile language that is sure to be around for a long time to come. Python is great for software development, data analytics, and AI. Plus you can build any solution you need in just a couple of days.

Technically, Python is not the fastest language, it has a dynamic limitation on visibility and is poorly suited for mobile development. Another disadvantage is the separation of logical blocks through spaces, making it inconvenient for large projects.

However, developers are willing to forgive Python because itā€™s easy to learn. The simplicity of the syntax is addictive and, after Python, it will be pretty difficult to make yourself switch to C, Haskell, or Rust. It's even more frustrating to realize that you spent years learning some complex and outdated language only to hear about interesting projects in Python that youā€™re not a part of.

Python, because it's so lightweightSeriously, Python is hated for its low threshold of entry, which leads to an abundance of bad code

PHP, for being a relic

PHP is widely hated and even seen as a development bug, yet most websites continue to run on it. PHP has become a popular punching bag, hated for its glacial technological and syntactic development.

PHP is a peculiar language with no out-of-the-box debugging tool, no logical documentation, and no clear code design. It has a lot of non-systematic components and many functions have illogical names that make it hard to predict what theyā€™ll do. By and large, PHP is just a dumping ground for loosely hashed-together ideas, which is what the entire Internet is based on.

PHP, for being a relicPHP has been ruined by all its messed up frameworks and libraries, which were hacked together by someone totally not mailing it in a couple of years ago

Ruby, the Texas-steak challenge of languages

Ruby has a lot of cool features that other languages donā€™t. For example, a lot of ready-made testing solutions and caching tools right out of the box. This is a great language for rapid development on the Ruby on Rails framework and is not really viable in isolation from that platform.

Ruby is developing slower than JS and Python. It has no static typing and its complicated syntax greatly reduces code readability. Ruby gets most of its criticism for resource consumption. It requires an obscene amount of memory to process tasks.

Ruby has a lot of cool featuresWhen the code is concatenated in all the ways available in Ruby

Perl, for its unreadable code

This language is usually used just to tack together programs written in different languages, operating systems, or development environments. Perl can translate the output of one program into a format understood by another. It can work with complex structures, identify a type of data on its own, and offer non-trivial problem-solving methods.

Perl has a complex syntax, which sometimes makes it easier to rewrite a program from scratch than to try to link it to another program via Perl. The variable names are confusing, pointers replace function parameters, and you have several ways to do every operation. All this means your code is going to end up being a burning heap of garbage, no matter how much you try to structure it.

Perl, for its unreadable codeSometimes it's better to fight whitespace in Python

JavaScript, because thereā€™s no choice

While TypeScript is one of the most popular languages for development, the original JS is often hated. Although JavaScript has become standard for browsers and web interfaces, it has many shortcomings.

JavaScript is a language with heavy syntax and complex semantics, which is why it is known to be slow and inconsistent.

JavaScript code resembles a multi-volume book from the 16th century which is hard to read and even worse to edit. Besides, its similarity to C only adds fuel to the fire, although fundamentally they are two completely different languages. The funny thing is that JS is sometimes seen as an easy language that can be quickly mastered.

You canā€™t escape JavaScriptIt doesn't matter what you want. As a frontender, you canā€™t escape JavaScript

Write in the comments what language you hate most and why

A good developer's handbook

  • Secure your primary language by every means necessary.
  • Insist that C++ is way outdated and Rust should be used instead.
  • Tell anyone who uses PHP to press F.
  • Hold a moment of silence for Ruby.
  • Often repeat that no one codes in Perl.
  • Insist that no one actually hates JS because everyone loves TypeScript.

Bonus: try ispmanager to spend less time delving into code. ispmanger makes it easier to work with sites, databases, and servers; itā€™s just what you need to get away from JS and Python when deploying your next project.

Try it for free

Top comments (0)