Products · Product
Clojure
Raised as a usability problem by 175 people on Hacker News over 18 years (2009–2026), in 150 threads.
No issue was raised by at least 3 people in 3 threads this year.
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
Every issue, all time, most people first
Stack traces are verbose, errors buried in Java code and hard to mapUnreviewed
20092026- Error output is a raw Java stacktrace instead of a readable message, and the REPL is slow2025-02-23
- Error messages are bad, making problems hard to diagnose2024-05-23
- Type errors give inscrutable short messages that are hard to interpret2024-05-22
Build tool options confuse beginners, with customisation overwhelmingUnreviewed
20092026- Too many confusing build tools and libraries; user can't tell how to start2025-02-24
- Build tool options are confusing for beginners, with customisation overwhelming before getting started2022-09-13
- Getting started requires a hand-rolled build.clj for boilerplate tasks; hard to start2021-07-21
Leiningen builds are slow and reloading files into REPL is unclearUnreviewed
20092026- Installing a library is slow and memory-heavy, and can't be done from the REPL2020-12-16
- Launching the REPL is painfully slow on a new MacBook2019-05-25
- Starting the lein REPL takes 9 to 16 seconds, so developers wait a long time2017-02-01
Beginners find parentheses syntax annoying at firstUnreviewed
20092026- Parentheses make the code hard to read on a phone screen2025-05-23
- Nested parentheses are hard to scan and tedious to read2023-02-14
- Parentheses look ugly and tedious to type, scaring newcomers away2021-01-04
Spending far too much time getting tooling set upUnreviewed
20092026- Tooling error states are nasty and stack traces are inscrutable to beginners2023-12-06
- Setup of tooling, REPLs, and editor is hard and often breaks2020-05-13
- Spending far too much time getting tooling set up2020-03-01
REPL lacks line editing and up-arrow historyUnreviewed
20092026- No up-arrow to recall the previous line in the REPL2012-07-08
- JLine is not the default, so the REPL line editing is finicky2012-04-07
- Hard to get started; REPL lacks line editing and up-arrow history2011-10-10
Too many library choices slow beginners' ramp-upUnreviewed
20092026- Too many libraries to choose from makes beginners' ramp-up much slower2022-10-04
- Must cobble together many libraries and tutorials before building the actual application2022-07-31
- Many inconsistent ways to load libraries, hard to remember and confusing to learn2020-05-13
Docs lack examples and tutorials, making the language hard to learnUnreviewed
20092026- Lacks basic tutorials and guides; documentation is poor, making it hard to start2013-09-16
- Docs lack examples and tutorials, making the language hard to learn and use2013-06-25
- Online documentation is hard to follow and essentially impenetrable2011-08-13
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
- Finds Clojure code basically impossible to read outside an editor2026-07-06
- Hard to find bugs from wrong nested object types at runtime2026-06-03
- Package was hard to use and errors were hard to debug2026-04-23
- Beginners must choose among many overlapping tools, causing decision anxiety and fragmented documentation2026-04-01
- STM code is hard to reason about, slow, and non-composable2025-11-18
- Alternating name-value vector layout for let bindings is hard to understand2025-10-29
- Reifying Java functional interfaces was bulky and ugly, now mostly fixed2025-08-18
- Parentheses make the code hard to read on a phone screen2025-05-23
- Too many confusing build tools and libraries; user can't tell how to start2025-02-24
- Must verbosely reify Java single-method interfaces instead of passing a fn2025-02-23
- Error output is a raw Java stacktrace instead of a readable message, and the REPL is slow2025-02-23
- Syntax is terse and nearly unreadable unless used very often2024-12-22
- Specs are too rigid, so the commenter works around them with Malli2024-09-06
- Editor can't tell vectors and macro DSLs apart, making refactoring hard2024-07-27
- Macro-based libraries give worse error messages and break debugging tools, so failures are hard to diagnose2024-07-25
- Nil values propagate silently through functions, failing far from where they originated2024-07-18
- Error messages are bad, making problems hard to diagnose2024-05-23
- Official CLI is confusing and its config files are not intuitive for beginners2024-05-23
- Clojure's errors, REPL and build tooling are awkward and not easy enough to use2024-05-22
- Type errors give inscrutable short messages that are hard to interpret2024-05-22
- Typing Clojure syntax in the wrong format, requiring backspacing and correction2024-05-22
- Official CLI and config files are confusing, and newcomers face hard-to-read error messages2024-05-22
- Must repeatedly rediscover where laziness is present while debugging2024-04-08
- Clojure CLI and deps.edn design is frustrating and lacks user-friendly tooling2024-04-07
- People unsure how to connect editor to REPL, leading to copy-pasting snippets2024-02-24
- Metaprogrammed Clojure projects are hard to ramp up on, maintain, and debug2024-01-26
- Tooling error states are nasty and stack traces are inscrutable to beginners2023-12-06
- Clojure's error messages are confusing enough that a learner gave up early2023-12-06
- Errors from macros and anonymous closures are cryptic and hard to navigate2023-12-06
- Spec errors are unreadable, so the user can't tell what went wrong2023-12-06
- Simple examples won't compile; tooling is confusing and the author gave up2023-11-27
- Beginners struggle to set up ClojureScript config across shadow-cljs, deps.edn and npm2023-06-23
- Can't tell which function caused an unexpected error in a running app2023-06-23
- Debugging is hard; stack traces make instrumenting and reproducing problems difficult2023-06-23
- Getting started is confusing: the setup page is hard to follow and the Windows version is still beta2023-06-12
- Nested parentheses are hard to scan and tedious to read2023-02-14
- Docs bloated with unhelpful waffle; hard to solve a real problem from them2023-02-13
- Interface hierarchy is too complex to internalize; developers must reason through Java interfaces2023-02-13
- Can't figure out how to structure a deps.edn file, so must copy other projects' configs2023-02-13
- Docs don't explain basic CLI flags or deps.edn, so users can't find answers2023-02-13
- Hard to get started: unclear Java install, too many tooling choices, confusing setup2022-11-27
- Hard to install and get a simple project running; project systems confusing2022-11-04
- Cryptic error for malformed deps map; easy syntax mistakes give no useful explanation2022-10-23
- Emacs Clojure toolchain has too many parts, hard to install reliably2022-10-22
- Hard to tell what data maps and lists contain in old code2022-10-04
- Too many libraries to choose from makes beginners' ramp-up much slower2022-10-04
- Clojure CLI tools take over a second to start, slower with more libraries2022-10-02
- Build tool options are confusing for beginners, with customisation overwhelming before getting started2022-09-13
- Must cobble together many libraries and tutorials before building the actual application2022-07-31
- Implicit falsiness rules force programmers to memorize many special cases2022-05-18