Your browser is blocking local storage, so your progress will be lost when you close or reload this page.
Programming Concepts
Core ideas that apply in any language: data, errors, state, time and performance.
- Not reviewed
- 0
- Unfamiliar
- 0
- Familiar
- 0
- Confident
- 0
Checklist: 0 of 7 items
Topics
- Data StructuresExpected level: Proficient
Understand lists, maps, sets, queues, stacks, and when to use each.
Not reviewed - Error HandlingExpected level: Working
Design software that fails predictably and safely.
Not reviewed - Clean Code and NamingExpected level: Working
Write readable code with meaningful names and small units.
Not reviewed - Data SerializationExpected level: Working
Learn how systems exchange and store structured data.
Not reviewed - State ManagementExpected level: Working
Understand how applications maintain and change state.
Not reviewed - Dates, Times, and Time ZonesExpected level: Working
Avoid classic bugs with local time, UTC, and daylight saving.
Not reviewed - Time and Space ComplexityExpected level: Awareness
Understand why some solutions scale better than others.
Not reviewed - Performance BasicsExpected level: Awareness
Measure before optimising, and recognise the typical causes of slowness.
Not reviewed - Compiled vs Interpreted CodeExpected level: Awareness
Understand how source code becomes something that runs.
Not reviewed - Number RepresentationExpected level: Awareness
Recognise integer overflow, floating-point precision, and rounding errors.
Not reviewed - Concurrency and ParallelismExpected level: Awareness
Understand the difference between multiple tasks and simultaneous execution.
Not reviewed
Self-assessment
You should be able to do each of these without help.
- Related: Data Structures
- Related: Error Handling
- Related: Clean Code and Naming, Refactoring Basics
- Related: Refactoring Basics, Unit Testing
- Related: Data Serialization, JSON Fundamentals
- Related: Dates, Times, and Time Zones
- Related: State Management