programming languages

Rank

C vs Java

  1. This is a low level language

    94% 6%
    C 1045 out of 1108 picked C over Java Java
  2. This language makes it easy to shoot yourself in the foot

    88% 12%
    C 735 out of 827 picked C over Java Java
  3. This language is minimal

    87% 13%
    C 844 out of 963 picked C over Java Java
  4. I would use this language for writing programs for an embedded hardware platform

    87% 13%
    C 844 out of 966 picked C over Java Java
  5. This language is suitable for real-time applications

    85% 15%
    C 794 out of 932 picked C over Java Java
  6. Programs written in this language tend to be efficient

    84% 16%
    C 880 out of 1037 picked C over Java Java
  7. This language allows me to write programs where I know exactly what they are doing under the hood

    84% 16%
    C 879 out of 1040 picked C over Java Java
  8. I would use this language for writing embedded programs

    81% 19%
    C 122 out of 150 picked C over Java Java
  9. This language is likely to be around for a very long time

    75% 25%
    C 754 out of 995 picked C over Java Java
  10. I use many applications written in this language

    75% 25%
    C 797 out of 1055 picked C over Java Java
  11. This language is built on a small core of orthogonal features

    75% 25%
    C 623 out of 826 picked C over Java Java
  12. This language is good for numeric computing

    74% 26%
    C 689 out of 922 picked C over Java Java
  13. It is too easy to write code in this language that looks like it does one thing but actually does something else

    72% 28%
    C 632 out of 869 picked C over Java Java
  14. If this language didn't exist, I would have trouble finding a satisfactory replacement

    71% 29%
    C 661 out of 927 picked C over Java Java
  15. I often feel like I am not smart enough to write this language

    71% 29%
    C 372 out of 523 picked C over Java Java
  16. I learned this language early in my career as a programmer

    70% 30%
    C 493 out of 704 picked C over Java Java
  17. I would recommend most programmers learn this language, regardless of whether they have a specific need for it

    68% 32%
    C 461 out of 671 picked C over Java Java
  18. I would use this language to write a command-line app

    68% 32%
    C 757 out of 1106 picked C over Java Java
  19. Learning this language improved my ability as a programmer

    67% 33%
    C 732 out of 1079 picked C over Java Java
  20. Code written in this language tends to be terse

    67% 33%
    C 681 out of 1004 picked C over Java Java
  21. This language is good for scientific computing

    67% 33%
    C 669 out of 987 picked C over Java Java
  22. I find it easy to write efficient code in this language

    66% 34%
    C 713 out of 1078 picked C over Java Java
  23. This language is unusually bad for beginners

    65% 35%
    C 711 out of 1084 picked C over Java Java
  24. This language has a niche in which it is great

    64% 36%
    C 623 out of 960 picked C over Java Java
  25. There is a wide variety of open source code written in this language

    64% 36%
    C 667 out of 1040 picked C over Java Java
  26. Programs written in this language tend to play well with others

    63% 37%
    C 598 out of 939 picked C over Java Java
  27. Writing code in this language is a lot of work

    62% 38%
    C 691 out of 1104 picked C over Java Java
  28. This language matches it's problem domain particularly well.

    61% 39%
    C 345 out of 563 picked C over Java Java
  29. It's unusual for me to discover unfamiliar features

    58% 42%
    C 540 out of 926 picked C over Java Java
  30. This language is best for very small projects

    57% 43%
    C 563 out of 973 picked C over Java Java
  31. Learning this language significantly changed how I use other languages.

    57% 43%
    C 366 out of 635 picked C over Java Java
  32. This language has a high quality implementation

    57% 43%
    C 341 out of 592 picked C over Java Java
  33. I use a lot of code written in this language which I really don't want to have to make changes to

    57% 43%
    C 242 out of 421 picked C over Java Java
  34. This language has a niche outside of which I would not use it

    56% 44%
    C 556 out of 976 picked C over Java Java
  35. I would like to write more of this language than I currently do

    55% 45%
    C 608 out of 1086 picked C over Java Java
  36. This language has a very coherent design

    54% 46%
    C 516 out of 945 picked C over Java Java
  37. Programs written in this language will usually work in future versions of the language

    53% 47%
    C 506 out of 948 picked C over Java Java
  38. There is a lot of accidental complexity when writing code in this language

    52% 48%
    C 539 out of 1027 picked C over Java Java
  39. I enjoy playing with this language but would never use it for "real code"

    51% 49%
    C 453 out of 875 picked C over Java Java
  40. I can imagine this will be a popular language in twenty years time

    51% 49%
    C 499 out of 965 picked C over Java Java
  41. This language is very flexible

    51% 49%
    C 536 out of 1050 picked C over Java Java
  42. I find code written in this language very elegant

    50% 50%
    C 555 out of 1095 picked C over Java Java
  43. The semantics of this language are much different than other languages I know.

    50% 50%
    C 295 out of 586 picked C over Java Java
  44. I enjoy using this language

    49% 51%
    C 562 out of 1122 picked Java over C Java
  45. I use this language out of choice

    49% 51%
    C 493 out of 971 picked Java over C Java
  46. This language is likely to have a strong influence on future languages

    48% 52%
    C 505 out of 972 picked Java over C Java
  47. I usually use this language on solo projects

    47% 53%
    C 538 out of 1030 picked Java over C Java
  48. Developers who primarily use this language often burn out after a few years

    47% 53%
    C 393 out of 746 picked Java over C Java
  49. I often get angry when writing code in this language

    46% 54%
    C 302 out of 562 picked Java over C Java
  50. I know this language well

    45% 55%
    C 5012 out of 9277 picked Java over C Java
  51. This language has unusual features that I often miss when using other languages

    45% 55%
    C 530 out of 973 picked Java over C Java
  52. This language is easier to use for it's problem domain by removing unneeded expressiveness (such as not being Turing complete).

    45% 55%
    C 172 out of 313 picked Java over C Java
  53. There are many good open-source tools for this language

    45% 55%
    C 545 out of 991 picked Java over C Java
  54. I would list this language on my resume

    43% 57%
    C 554 out of 989 picked Java over C Java
  55. This language is frequently used for applications it isn't suitable for

    43% 57%
    C 507 out of 895 picked Java over C Java
  56. I regularly use this language

    41% 59%
    C 684 out of 1166 picked Java over C Java
  57. The thought that I may still be using this language in twenty years time fills me with dread

    40% 60%
    C 582 out of 984 picked Java over C Java
  58. This language has an annoying syntax

    39% 61%
    C 377 out of 621 picked Java over C Java
  59. The resources for learning this language are of high quality

    38% 62%
    C 604 out of 990 picked Java over C Java
  60. I would use this language for casual scripting

    38% 62%
    C 638 out of 1044 picked Java over C Java
  61. I can imagine using this language in my day job

    38% 62%
    C 693 out of 1118 picked Java over C Java
  62. When I run into problems my colleagues can provide me with immediate help with this language

    37% 63%
    C 577 out of 918 picked Java over C Java
  63. I am reluctant to admit to knowing this language

    36% 64%
    C 510 out of 801 picked Java over C Java
  64. I am sometimes embarrassed to admit to my peers that I know this language

    35% 65%
    C 529 out of 818 picked Java over C Java
  65. This language has a good community

    35% 65%
    C 635 out of 977 picked Java over C Java
  66. This language has a very dogmatic community

    34% 66%
    C 579 out of 887 picked Java over C Java
  67. I often write things in this language with the intent of rewriting them in something else later

    34% 66%
    C 489 out of 743 picked Java over C Java
  68. This language would be good for teaching children to write software

    34% 66%
    C 422 out of 640 picked Java over C Java
  69. Third-party libraries are readily available, well-documented, and of high quality

    33% 67%
    C 662 out of 997 picked Java over C Java
  70. I still discover new features of this language on a fairly regular basis

    33% 67%
    C 590 out of 881 picked Java over C Java
  71. This is a mainstream language

    32% 68%
    C 445 out of 659 picked Java over C Java
  72. This language is expressive

    32% 68%
    C 710 out of 1051 picked Java over C Java
  73. This language is well documented

    32% 68%
    C 676 out of 998 picked Java over C Java
  74. Code written in this language tends to be very reliable

    32% 68%
    C 674 out of 994 picked Java over C Java
  75. This language has a wide variety of agreed-upon conventions, which are generally adhered to reasonably well, and which increase my productivity

    32% 68%
    C 624 out of 919 picked Java over C Java
  76. This language is good for beginners

    32% 68%
    C 747 out of 1099 picked Java over C Java
  77. I would use this language for mobile applications

    31% 69%
    C 707 out of 1037 picked Java over C Java
  78. It is easy to tell at a glance what code in this language does

    31% 69%
    C 727 out of 1066 picked Java over C Java
  79. I would use this language for writing server programs

    31% 69%
    C 707 out of 1032 picked Java over C Java
  80. This language excels at symbolic manipulation

    31% 69%
    C 599 out of 874 picked Java over C Java
  81. I would use this language as a scripting language embedded inside a larger application

    31% 69%
    C 647 out of 944 picked Java over C Java
  82. I rarely have difficulty abstracting patterns I find in my code

    30% 70%
    C 667 out of 966 picked Java over C Java
  83. I usually use this language on projects with many other members

    29% 71%
    C 681 out of 970 picked Java over C Java
  84. I find this language easy to prototype in

    29% 71%
    C 728 out of 1036 picked Java over C Java
  85. Code written in this language is very readable

    28% 72%
    C 726 out of 1020 picked Java over C Java
  86. This language has a very rigid idea of how things should be done

    28% 72%
    C 730 out of 1024 picked Java over C Java
  87. This language is good for distributed computing

    28% 72%
    C 664 out of 931 picked Java over C Java
  88. There are many good tools for this language

    28% 72%
    C 700 out of 978 picked Java over C Java
  89. I know many other people who use this language

    28% 72%
    C 747 out of 1041 picked Java over C Java
  90. There are many good commercial tools for this language

    28% 72%
    C 689 out of 958 picked Java over C Java
  91. This language has a strong static type system

    27% 73%
    C 772 out of 1070 picked Java over C Java
  92. This language excels at text processing

    27% 73%
    C 695 out of 963 picked Java over C Java
  93. This language has well-organized libraries with consistent, carefully thought-out interfaces

    25% 75%
    C 664 out of 888 picked Java over C Java
  94. Code written in this language tends to be verbose

    25% 75%
    C 818 out of 1092 picked Java over C Java
  95. This language is likely to be a passing fad

    24% 76%
    C 606 out of 798 picked Java over C Java
  96. It is easy to debug programs written in this language when it goes wrong

    24% 76%
    C 763 out of 1004 picked Java over C Java
  97. This language excels at concurrency

    23% 77%
    C 734 out of 964 picked Java over C Java
  98. Code written in this language will usually run in all the major implementations if it runs in one of them.

    23% 77%
    C 428 out of 562 picked Java over C Java
  99. When I write code in this language I can be very sure it is correct

    23% 77%
    C 781 out of 1018 picked Java over C Java
  100. This language encourages writing code that is easy to maintain.

    22% 78%
    C 483 out of 623 picked Java over C Java
  101. This language is well suited for an agile development approach using short iterations.

    22% 78%
    C 454 out of 585 picked Java over C Java
  102. I would use this language for a desktop GUI project

    22% 78%
    C 858 out of 1101 picked Java over C Java
  103. Libraries in this language tend to be well documented.

    21% 79%
    C 467 out of 598 picked Java over C Java
  104. This language has many features which feel "tacked on"

    21% 79%
    C 707 out of 901 picked Java over C Java
  105. This language is best for very large projects

    20% 80%
    C 803 out of 1016 picked Java over C Java
  106. This language has a good library distribution mechanism.

    20% 80%
    C 442 out of 559 picked Java over C Java
  107. If my code in this language successfully compiles, there is a good chance my code is correct.

    20% 80%
    C 467 out of 589 picked Java over C Java
  108. This language encourages writing reusable code.

    20% 80%
    C 503 out of 631 picked Java over C Java
  109. I would use this language for a web project

    14% 86%
    C 927 out of 1084 picked Java over C Java
  110. This language is large

    13% 87%
    C 810 out of 939 picked Java over C Java
  111. This is a high level language

    6% 94%
    C 1041 out of 1118 picked Java over C Java

What's going on here?

The absolute rankings are interesting for large scale comparisons but when you want to know about two specific languages it's much more informative to look at how the two fare when they go directly head to head.

Here are all the statements which we've got enough comparisons between C and Java to be meaningful and which of the two our users picked.

The order in which we're presenting them is a little arbitrary (sorry), but we've tried to put the things which they're both good at first so as to give you the most interesting picture of it.