Dev Compass – Programming Philosophy Quiz

An online quiz called “Dev Compass” aims to map a programmer’s philosophy along two axes—abstract vs. concrete and human- vs. computer-friendly—based on multiple-choice questions about coding style, testing, debugging, and design. Many find it entertaining and broadly accurate at a high level, but numerous critiques emerge: the questions are highly context-dependent, often force false choices, bias results toward the center, and lack statistical or psychometric rigor. Commenters propose improvements such as hiding the scoring dimensions, allowing multiple or ranked answers, and validating which questions actually measure consistent traits, while noting the broader tension between neat personality-style labels and the messy realities of software engineering.

Overall Reception

  • Many found the quiz fun or cute, comparing it to MBTI/FizzBuzz-style personality tests.
  • A large number of respondents landed very close to the center of the compass, often despite feeling they have strong opinions about code style and architecture.
  • Some got clearly “concrete/human-friendly” or “abstract/human-friendly” results and felt the short descriptions matched their self-perception.

Question Design & “It Depends” Critique

  • A dominant complaint: most questions are highly context-dependent, and sensible answers are “all of the above” or “it depends”.
  • Examples: testing styles, debugging methods, refactoring priorities, performance strategies—all seen as tools chosen per situation, not stable preferences.
  • Single-choice radio buttons were seen as especially limiting; several suggested multi-select or ranked-choice to express nuance.
  • Some argued forcing a contextless gut choice is the whole point; others said that makes results essentially meaningless for experienced developers.

Scoring Model, Bias, and Implementation

  • People noted you can easily guess which answer pushes which axis, which may bias responses; some recommended hiding the axes until the end.
  • Inspection of the questions JSON showed uneven score ranges (more possible “abstract” and “human-friendly” points), implying a systemic bias.
  • Several suspected the central clustering arises from poorly correlated questions; one commenter explicitly recommended psychometric checks (e.g., Cronbach’s alpha, PCA) and pruning inconsistent items.
  • The plotting of results on the circle was criticized as misleading and not scaled to the score distribution.

Interpretation of Axes & Concepts

  • Some questioned whether “imperative vs OO” is a meaningful contrast, noting OO is largely a style within imperative programming.
  • Others questioned the separation of “human-friendly” and “computer-friendly”, arguing good code can often be both.
  • There were calls for more philosophically grounded questions (e.g., tech debt, moral responsibility) rather than tool/technique choices.

Broader Reflections on Programming Philosophy

  • Several pushed back on “abstraction first”, arguing you understand a problem only after iterating on concrete implementations.
  • Strong views surfaced on unit testing, static typing, and “best practices”; some see many modern practices (TDD, heavy OO, patterns) as over-applied dogma.
  • A few liked the idea of explicit “factions” or alignments in programming style, even if this quiz is a rough prototype of that notion.