HackerFriction Feedback

Products · Product

Java

Raised as a usability problem by 495 people on Hacker News over 20 years (2007–2026), in 484 threads.

Ranked by people · period

No issue was raised by at least 3 people in 3 threads this year.

  1. 1
    Applets take forever to start in the browserUnreviewed

    14 people in the last 5 years · 11 threads

  2. 2
    Checked exception syntax and tooling are so bad people avoid the featureUnreviewed

    11 people in the last 5 years · 9 threads

  3. 3
    Needs an IDE constantly generating and fixing code to be usableUnreviewed

    4 people in the last 5 years · 4 threads

  4. 4
    Developers waste time working out which exceptions a method throwsUnreviewed

    4 people in the last 5 years · 4 threads

  5. 5
    Unclear which JRE or JDK versions to get and how to path themUnreviewed

    3 people in the last 5 years · 3 threads

  6. 6
    Inconsistent rules for when generic types must be written outUnreviewed

    3 people in the last 5 years · 3 threads

  7. 7
    Stack traces shown for misconfiguration instead of a short errorUnreviewed

    3 people in the last 5 years · 3 threads

  1. 1
    Applets take forever to start in the browserUnreviewed

    41 people since the beginning · 35 threads

  2. 2
    Needs an IDE constantly generating and fixing code to be usableUnreviewed

    20 people since the beginning · 18 threads

  3. 3
    Checked exception syntax and tooling are so bad people avoid the featureUnreviewed

    14 people since the beginning · 12 threads

  4. 4
    Beginners must ignore hello world boilerplate, causing confusionUnreviewed

    9 people since the beginning · 8 threads

  5. 5
    Unclear which JRE or JDK versions to get and how to path themUnreviewed

    8 people since the beginning · 8 threads

  6. 6
    Apps need complicated, fragile setup of JVMs, classpaths and scriptsUnreviewed

    7 people since the beginning · 7 threads

  7. 7
  8. 8
    Could not find a modern free JDK; only Java 8 availableUnreviewed

    6 people since the beginning · 6 threads

  9. 9
    Inconsistent rules for when generic types must be written outUnreviewed

    6 people since the beginning · 6 threads

  10. 10
    Scary security warnings must be clicked through before applets runUnreviewed

    6 people since the beginning · 6 threads

  11. 11
    Developers waste time working out which exceptions a method throwsUnreviewed

    6 people since the beginning · 6 threads

  12. 12
    Reams of badly designed XML config take forever to learnUnreviewed

    6 people since the beginning · 6 threads

  13. 13
    Verbose type declarations make code tedious to writeUnreviewed

    6 people since the beginning · 6 threads

  14. 14
    Stack traces shown for misconfiguration instead of a short errorUnreviewed

    5 people since the beginning · 5 threads

  15. 15
    Java UI apps have confusing layouts that are hard to useUnreviewed

    5 people since the beginning · 5 threads

  16. 16
    Configuring the JDK to work with IntelliJ is too complicatedUnreviewed

    5 people since the beginning · 4 threads

  17. 17
  18. 18
    Keeping Java updated on OS X is too hard, so users give upUnreviewed

    5 people since the beginning · 5 threads

  19. 19
    Easy to confuse == with .equals, causing silent misbehaviourUnreviewed

    4 people since the beginning · 4 threads

  20. 20
    Simple tasks need many files and the standard library complicates codingUnreviewed

    4 people since the beginning · 4 threads

  21. 21
    Overengineered code with many libraries is hard to debugUnreviewed

    3 people since the beginning · 3 threads

  22. 22
    Cannot easily run multiple Java versions; jars cannot specify runtimeUnreviewed

    3 people since the beginning · 3 threads

  23. 23
    Java Updater popups appear on every startUnreviewed

    3 people since the beginning · 3 threads

  24. 24
    Javadocs are hard to wade through to learn core usageUnreviewed

    3 people since the beginning · 3 threads

  25. 25
    Logging config files are poorly documented and hard to understandUnreviewed

    3 people since the beginning · 3 threads

  26. 26
    Big application takes over two minutes to start after compilingUnreviewed

    3 people since the beginning · 3 threads

  27. 27
    Verbose code with many abstraction layers is hard to readUnreviewed

    3 people since the beginning · 3 threads

Every issue, all time, most people first

  1. Applets take forever to start in the browserUnreviewed

    41 people since 2007, in 16 different years · 2 this year

    2007: 3 people2008: 0 people2009: 0 people2010: 1 person2011: 1 person2012: 2 people2013: 0 people2014: 1 person2015: 2 people2016: 2 people2017: 7 people2018: 2 people2019: 2 people2020: 1 person2021: 6 people2022: 4 people2023: 3 people2024: 2 people2025: 4 people2026: 0 people
    20072026
    Something wrong here?
  2. Needs an IDE constantly generating and fixing code to be usableUnreviewed

    20 people since 2010, in 8 different years · none this year

    2007: 0 people2008: 0 people2009: 0 people2010: 1 person2011: 0 people2012: 2 people2013: 2 people2014: 0 people2015: 0 people2016: 0 people2017: 5 people2018: 0 people2019: 0 people2020: 3 people2021: 3 people2022: 1 person2023: 0 people2024: 3 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  3. Checked exception syntax and tooling are so bad people avoid the featureUnreviewed

    14 people since 2016, in 8 different years · 2 this year

    2007: 0 people2008: 0 people2009: 0 people2010: 0 people2011: 0 people2012: 0 people2013: 0 people2014: 0 people2015: 0 people2016: 1 person2017: 0 people2018: 1 person2019: 2 people2020: 0 people2021: 0 people2022: 2 people2023: 2 people2024: 5 people2025: 2 people2026: 1 person
    20072026
    Something wrong here?
  4. Beginners must ignore hello world boilerplate, causing confusionUnreviewed

    9 people since 2011, in 6 different years · none this year

    2007: 0 people2008: 0 people2009: 0 people2010: 0 people2011: 1 person2012: 1 person2013: 0 people2014: 0 people2015: 0 people2016: 2 people2017: 2 people2018: 0 people2019: 0 people2020: 1 person2021: 2 people2022: 0 people2023: 0 people2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  5. Unclear which JRE or JDK versions to get and how to path themUnreviewed

    8 people since 2015, in 6 different years · none this year

    2007: 0 people2008: 0 people2009: 0 people2010: 0 people2011: 0 people2012: 0 people2013: 0 people2014: 0 people2015: 1 person2016: 0 people2017: 1 person2018: 0 people2019: 2 people2020: 0 people2021: 2 people2022: 1 person2023: 1 person2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  6. Apps need complicated, fragile setup of JVMs, classpaths and scriptsUnreviewed

    7 people since 2008, in 6 different years · none this year

    2007: 0 people2008: 1 person2009: 0 people2010: 0 people2011: 1 person2012: 0 people2013: 0 people2014: 1 person2015: 0 people2016: 0 people2017: 0 people2018: 1 person2019: 1 person2020: 0 people2021: 0 people2022: 2 people2023: 0 people2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  7. Installer adds toolbars via easily missed checkboxes; frequent update promptsUnreviewed

    7 people since 2010, in 6 different years · 1 this year

    2007: 0 people2008: 0 people2009: 0 people2010: 2 people2011: 0 people2012: 0 people2013: 0 people2014: 1 person2015: 1 person2016: 1 person2017: 0 people2018: 1 person2019: 0 people2020: 0 people2021: 0 people2022: 0 people2023: 0 people2024: 0 people2025: 0 people2026: 1 person
    20072026
    Something wrong here?
  8. Could not find a modern free JDK; only Java 8 availableUnreviewed

    6 people since 2008, in 6 different years · none this year

    2007: 0 people2008: 1 person2009: 0 people2010: 0 people2011: 1 person2012: 1 person2013: 0 people2014: 0 people2015: 0 people2016: 0 people2017: 0 people2018: 0 people2019: 1 person2020: 0 people2021: 1 person2022: 0 people2023: 1 person2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  9. Inconsistent rules for when generic types must be written outUnreviewed

    6 people since 2008, in 6 different years · none this year

    2007: 0 people2008: 1 person2009: 0 people2010: 0 people2011: 0 people2012: 0 people2013: 0 people2014: 0 people2015: 1 person2016: 1 person2017: 0 people2018: 0 people2019: 0 people2020: 0 people2021: 0 people2022: 0 people2023: 1 person2024: 1 person2025: 1 person2026: 0 people
    20072026
    Something wrong here?
  10. Scary security warnings must be clicked through before applets runUnreviewed

    6 people since 2008, in 5 different years · none this year

    2007: 0 people2008: 1 person2009: 0 people2010: 0 people2011: 0 people2012: 0 people2013: 1 person2014: 1 person2015: 2 people2016: 0 people2017: 1 person2018: 0 people2019: 0 people2020: 0 people2021: 0 people2022: 0 people2023: 0 people2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  11. Developers waste time working out which exceptions a method throwsUnreviewed

    6 people since 2011, in 5 different years · none this year

    2007: 0 people2008: 0 people2009: 0 people2010: 0 people2011: 1 person2012: 0 people2013: 0 people2014: 0 people2015: 0 people2016: 1 person2017: 0 people2018: 0 people2019: 0 people2020: 0 people2021: 0 people2022: 1 person2023: 0 people2024: 2 people2025: 1 person2026: 0 people
    20072026
    Something wrong here?
  12. Reams of badly designed XML config take forever to learnUnreviewed

    6 people since 2008, in 5 different years · none this year

    2007: 0 people2008: 1 person2009: 0 people2010: 1 person2011: 1 person2012: 0 people2013: 0 people2014: 0 people2015: 0 people2016: 1 person2017: 2 people2018: 0 people2019: 0 people2020: 0 people2021: 0 people2022: 0 people2023: 0 people2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  13. Verbose type declarations make code tedious to writeUnreviewed

    6 people since 2012, in 5 different years · none this year

    2007: 0 people2008: 0 people2009: 0 people2010: 0 people2011: 0 people2012: 1 person2013: 0 people2014: 0 people2015: 1 person2016: 0 people2017: 0 people2018: 0 people2019: 0 people2020: 2 people2021: 1 person2022: 1 person2023: 0 people2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  14. Stack traces shown for misconfiguration instead of a short errorUnreviewed

    5 people since 2009, in 5 different years · none this year

    2007: 0 people2008: 0 people2009: 1 person2010: 1 person2011: 0 people2012: 0 people2013: 0 people2014: 0 people2015: 0 people2016: 0 people2017: 0 people2018: 0 people2019: 1 person2020: 0 people2021: 0 people2022: 2 people2023: 1 person2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  15. Java UI apps have confusing layouts that are hard to useUnreviewed

    5 people since 2010, in 5 different years · none this year

    2007: 0 people2008: 0 people2009: 0 people2010: 1 person2011: 1 person2012: 0 people2013: 1 person2014: 1 person2015: 0 people2016: 0 people2017: 0 people2018: 0 people2019: 0 people2020: 1 person2021: 0 people2022: 0 people2023: 0 people2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  16. Configuring the JDK to work with IntelliJ is too complicatedUnreviewed

    5 people since 2011, in 4 different years · none this year

    2007: 0 people2008: 0 people2009: 0 people2010: 0 people2011: 1 person2012: 0 people2013: 0 people2014: 0 people2015: 0 people2016: 0 people2017: 0 people2018: 0 people2019: 1 person2020: 0 people2021: 2 people2022: 0 people2023: 0 people2024: 0 people2025: 1 person2026: 0 people
    20072026
    Something wrong here?
  17. Syntax and compiler errors confuse beginners, who keep asking how to fix themUnreviewed

    5 people since 2012, in 3 different years · none this year

    2007: 0 people2008: 0 people2009: 0 people2010: 0 people2011: 0 people2012: 1 person2013: 0 people2014: 2 people2015: 0 people2016: 0 people2017: 2 people2018: 0 people2019: 0 people2020: 0 people2021: 0 people2022: 0 people2023: 0 people2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  18. Keeping Java updated on OS X is too hard, so users give upUnreviewed

    5 people since 2013, in 2 different years · none this year

    2007: 0 people2008: 0 people2009: 0 people2010: 0 people2011: 0 people2012: 0 people2013: 4 people2014: 0 people2015: 0 people2016: 0 people2017: 0 people2018: 0 people2019: 0 people2020: 0 people2021: 0 people2022: 1 person2023: 0 people2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  19. Easy to confuse == with .equals, causing silent misbehaviourUnreviewed

    4 people since 2013, in 4 different years · none this year

    2007: 0 people2008: 0 people2009: 0 people2010: 0 people2011: 0 people2012: 0 people2013: 1 person2014: 0 people2015: 0 people2016: 0 people2017: 1 person2018: 0 people2019: 0 people2020: 0 people2021: 1 person2022: 0 people2023: 0 people2024: 0 people2025: 1 person2026: 0 people
    20072026
    Something wrong here?
  20. Simple tasks need many files and the standard library complicates codingUnreviewed

    4 people since 2009, in 4 different years · none this year

    2007: 0 people2008: 0 people2009: 1 person2010: 0 people2011: 0 people2012: 1 person2013: 0 people2014: 1 person2015: 0 people2016: 1 person2017: 0 people2018: 0 people2019: 0 people2020: 0 people2021: 0 people2022: 0 people2023: 0 people2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  21. Overengineered code with many libraries is hard to debugUnreviewed

    3 people since 2009, in 3 different years · none this year

    2007: 0 people2008: 0 people2009: 1 person2010: 0 people2011: 0 people2012: 0 people2013: 0 people2014: 0 people2015: 0 people2016: 1 person2017: 0 people2018: 0 people2019: 0 people2020: 0 people2021: 0 people2022: 0 people2023: 0 people2024: 0 people2025: 1 person2026: 0 people
    20072026
    Something wrong here?
  22. Cannot easily run multiple Java versions; jars cannot specify runtimeUnreviewed

    3 people since 2012, in 3 different years · none this year

    2007: 0 people2008: 0 people2009: 0 people2010: 0 people2011: 0 people2012: 1 person2013: 0 people2014: 0 people2015: 0 people2016: 0 people2017: 0 people2018: 0 people2019: 0 people2020: 0 people2021: 0 people2022: 1 person2023: 1 person2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  23. Java Updater popups appear on every startUnreviewed

    3 people since 2012, in 3 different years · none this year

    2007: 0 people2008: 0 people2009: 0 people2010: 0 people2011: 0 people2012: 1 person2013: 0 people2014: 1 person2015: 0 people2016: 0 people2017: 0 people2018: 0 people2019: 0 people2020: 0 people2021: 0 people2022: 0 people2023: 1 person2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  24. Javadocs are hard to wade through to learn core usageUnreviewed

    3 people since 2008, in 3 different years · none this year

    2007: 0 people2008: 1 person2009: 0 people2010: 1 person2011: 0 people2012: 0 people2013: 0 people2014: 1 person2015: 0 people2016: 0 people2017: 0 people2018: 0 people2019: 0 people2020: 0 people2021: 0 people2022: 0 people2023: 0 people2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  25. Logging config files are poorly documented and hard to understandUnreviewed

    3 people since 2016, in 2 different years · 1 this year

    2007: 0 people2008: 0 people2009: 0 people2010: 0 people2011: 0 people2012: 0 people2013: 0 people2014: 0 people2015: 0 people2016: 2 people2017: 0 people2018: 0 people2019: 0 people2020: 0 people2021: 0 people2022: 0 people2023: 0 people2024: 0 people2025: 1 person2026: 0 people
    20072026
    Something wrong here?
  26. Big application takes over two minutes to start after compilingUnreviewed

    3 people since 2015, in 2 different years · none this year

    2007: 0 people2008: 0 people2009: 0 people2010: 0 people2011: 0 people2012: 0 people2013: 0 people2014: 0 people2015: 1 person2016: 0 people2017: 0 people2018: 0 people2019: 0 people2020: 0 people2021: 2 people2022: 0 people2023: 0 people2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?
  27. Verbose code with many abstraction layers is hard to readUnreviewed

    3 people since 2017, in 2 different years · none this year

    2007: 0 people2008: 0 people2009: 0 people2010: 0 people2011: 0 people2012: 0 people2013: 0 people2014: 0 people2015: 0 people2016: 0 people2017: 1 person2018: 0 people2019: 0 people2020: 0 people2021: 2 people2022: 0 people2023: 0 people2024: 0 people2025: 0 people2026: 0 people
    20072026
    Something wrong here?

This list counts all time; the period switch above only changes the ranking. Each issue is a group of similar complaints raised by at least 3 people in 3 different months and threads. Each line under an issue is Claude Haiku's summary of one of its latest comments, not a quote; follow it to read the comment on Hacker News.

Unreviewed issues were grouped by machine: Claude Haiku labelled each comment as a usability complaint, named what it's about and summed up the problem in a line, and a small model grouped similar problems. Nobody has checked them by hand. Expect mistakes.

The newest 50 complaints