Evidence-based learning science principles for educational research and practice
A comprehensive skill for applying evidence-based learning science principles to educational research, instructional design, and teaching practice. Grounded in cognitive psychology and educational neuroscience.
Working memory has limited capacity. Effective instruction manages three types of cognitive load:
| Load Type | Definition | Design Strategy |
|---|---|---|
| Intrinsic | Complexity inherent to the material | Sequence from simple to complex; chunk information |
| Extraneous | Load from poor instructional design | Eliminate redundancy; use spatial contiguity |
| Germane | Load from schema construction | Use worked examples; encourage self-explanation |
# Estimate cognitive load using element interactivity
def estimate_intrinsic_load(elements: list, interactions: list) -> str:
"""
elements: list of knowledge components
interactions: list of (element_i, element_j) tuples that must be
processed simultaneously
"""
interactivity = len(interactions) / max(len(elements), 1)
if interactivity < 0.3:
return "low intrinsic load - suitable for independent study"
elif interactivity < 0.7:
return "moderate intrinsic load - scaffold with worked examples"
else:
return "high intrinsic load - use fading strategy and segmenting"
# Example: teaching statistical regression
elements = ['variable', 'coefficient', 'intercept', 'residual', 'R-squared']
interactions = [('coefficient', 'variable'), ('intercept', 'residual'),
('coefficient', 'R-squared'), ('residual', 'R-squared')]
print(estimate_intrinsic_load(elements, interactions))
Constructivist approaches emphasize that learners build knowledge through experience. Key active learning strategies with measured effect sizes (Freeman et al., 2014, PNAS):
Testing is not just assessment -- it is a powerful learning tool (Roediger & Karpicke, 2006). Implement the testing effect:
Study Session Structure:
1. Initial encoding (read/watch) - 15 min
2. Free recall (close materials, write) - 10 min
3. Check accuracy and fill gaps - 5 min
4. Spaced retrieval after 1 day - 10 min
5. Spaced retrieval after 7 days - 10 min
6. Spaced retrieval after 30 days - 10 min
Implement optimal review scheduling:
def next_review_interval(repetition: int, ease_factor: float = 2.5,
quality: int = 4) -> float:
"""
SM-2 inspired algorithm.
repetition: number of successful reviews
ease_factor: item difficulty (>= 1.3)
quality: response quality 0-5
"""
if quality < 3:
return 1 # reset to 1 day
if repetition == 0:
return 1
elif repetition == 1:
return 6
else:
interval = 6 * (ease_factor ** (repetition - 1))
# Adjust ease factor
new_ef = ease_factor + (0.1 - (5 - quality) * (0.08 + (5 - quality) * 0.02))
return round(interval, 1)
# Schedule for a moderately difficult concept
for rep in range(6):
days = next_review_interval(rep)
print(f"Review {rep + 1}: after {days} days")
Research shows interleaved practice (mixing problem types) outperforms blocked practice for long-term retention (Rohrer & Taylor, 2007):
Map learning objectives to assessment items across cognitive levels: