Appendix B: Likert Scale for Experimental Study

Likert Scale for Experimental Study

Cognitive Code Study — Experiment Paths Likert Scale

A Likert Scale is a psychometric scale that is commonly used in Cognitive Load Theory–driven trials to gauge the subjective level of effort someone feels they need to apply to understand a given stimulus. Participants assigned to the experimental cell were shown each of the seventeen code listings reproduced below — representing the same parsing pipeline as the control cell, but refactored according to the CLT-aligned principles developed in this dissertation — and asked “How hard is this code to understand?” on a seven-point Likert scale anchored at “Very Easy” (1) and “Very Hard” (7). The form also captured the participant’s email address as an identifier.

The seventeen code listings, in the order presented:

  1. DateTimeFormatter#parseDateTime

  2. DateTimeParsingStrategy constructor

  3. FormatterParsingStrategy constructor (with parse)

  4. Chronology#selectChronology (with private helpers)

  5. DateTimeUtils#getChronology

  6. DateTimeParserBucket constructor

  7. DateTimeUtils#getChronology (duplicate listing as shown in the original form)

  8. InternalParser#parseInto

  9. DateTimeFormatter$Composite#parseInto

  10. NumberFormatter#parseInto

  11. NumericSequence constructor

  12. NumericSequence#isPrefixedWithPlusOrMinus

  13. NumericSequence#determineCurrentPosition

  14. NumericSequence#findLastIndexOfStringToParse

  15. NumericSequence#calculateLength

  16. NumericSequence#calculate

  17. DateTimeParsingStrategy#convertToOutputType

The instrument was distributed via Google Forms; the rendered form, including the code listings and the Likert response widget for each, is reproduced page-by-page below.

Form page 1: intro, refactored parseDateTime.
Form page 1: intro, refactored parseDateTime.
Form page 2: DateTimeParsingStrategy, FormatterParsingStrategy.
Form page 2: DateTimeParsingStrategy, FormatterParsingStrategy.
Form page 3: selectChronology and helpers.
Form page 3: selectChronology and helpers.
Form page 4: DateTimeParserBucket, duplicate getChronology.
Form page 4: DateTimeParserBucket, duplicate getChronology.
Form page 5: InternalParser interface.
Form page 5: InternalParser interface.
Form page 6: Composite and refactored NumberFormatter.
Form page 6: Composite and refactored NumberFormatter.
Form page 7: NumericSequence first methods.
Form page 7: NumericSequence first methods.
Form page 8: NumericSequence position helpers.
Form page 8: NumericSequence position helpers.
Form page 9: NumericSequence#calculate and convertToOutputType.
Form page 9: NumericSequence#calculate and convertToOutputType.
Form page 10: final Likert, submit footer.
Form page 10: final Likert, submit footer.