To avoid language contention, let's say that the list counts the most annoying programming languages for cross-language developers, such as the one you like best with a language, which may be a bit of a nuisance to some of the features of other languages.
This is a very subjective view, the list of languages does not mean that the language is not good, but that some developers do not like some of the characteristics of the language. You are welcome to say what you think of certain languages in the comments.
The following rankings are based on Quora, Stack overflow, and hacker news related postings.
Python
Reason for listing: code indentation is used to specify the structure of blocks, why not parentheses or curly braces? In addition, a large number of uses of colons and underscores, modules, variable name conflicts.
How to avoid: don't work for Google, Yahoo, or NASA
9. LabVIEW
LabVIEW is a developed by the United States National Instrumentation (NI) company, similar to the C and basic development environment, the use of graphical editing language G program, the resulting program is the form of a block diagram.
Reason for listing: LabVIEW is quite abstract so that simple problems become extremely complex. This is completely contrary to its original purpose.
How to avoid: away from the instrument control class or industrial automation class programming work.
8. JavaScript
Reasons to list: case-sensitive, different implementations across browsers, lack of debugging (although you can use Firebug), and strange inheritance rules.
How to avoid: Don't go as a web developer.
7. Tcl
Tcl is a scripting language, the earliest known as the tool Command language (Tool command Language), but this is not the meaning at this time. Created by John Ousterhout, it is often used for rapid prototyping development RAD, scripting, GUI, and testing.
Reason for listing: syntax is too simple, lack of pointers, cannot be passed by reference, storing arrays as strings; poor list semantics and confusing variable ranges.
How to avoid: Do not work with Cisco, AOL or CNET companies or any company that aolserver or OPENACS platforms.
6. COBOL
COBOL (Common Business oriented langauge, business-oriented common language), also known as Enterprise Management language, data processing language, etc., is a data-oriented, file-oriented, process-oriented (POL) Advanced programming language, is a very powerful and very verbose language.
Reasons for listing: Extremely cumbersome syntax (intended for non-programmer readable), incompatible versions, lack of object-oriented programming, functions, and pointers.
How to avoid: Do not go to the government, the financial sector or military enterprises.
5. C + +
Reason for listing: large set of functions; manual memory management; Slow compilation; in fact, it allows programmers to use both object-oriented and process-oriented programming patterns in the same program.
How to avoid: Under normal circumstances, do not go to Adobe, Google or the game area to work.
4. PHP
Reason for listing: A number of functions have inconsistent naming conventions, security vulnerabilities, cannot natively support Unicode, and are often mixed in some demo code (such as HTML, CSS).
How to avoid this: if you work in the Web, it's hard to avoid. But for starters, you can stay away from Wikimedia, Wordpress, Joomla, and Drupal without working on Facebook.
3. Java
Reasons for listing: Long grammar, slow, not easy transfer function; API is overly designed, it can be done, other languages can be done, and more efficient.
How to avoid: Do not be a programmer, or do not use the Android SDK to develop any application.
2. Perl
Reason to list: There are so many ways to do something in Perl, making it difficult to understand the code that other people write; it's so neat that even a piece of code does the simplest thing and it seems hard to read and maintain.
How to avoid: Don't be a programmer.
1. Visual Basic
Reason for listing: its syntax is considered overly verbose and unfamiliar, requiring dynamic link libraries to run its code, and limited support for object-oriented programming; in fact, since 1998, Microsoft has ceased to provide formal support.
How to avoid: avoid working with companies that develop old Windows applications.
Another kind of statistical method
The following method is based on the managed code base on GitHub, and the developer uses the GitHub API to count the number of "WTF What" strings appearing in GitHub project code to determine how annoying the project developer is about certain features of a language, Visible C + + is more annoying. (This method has some joking meaning)
Do you hate certain features in some languages? You are welcome to say what you think in the comments.