Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Creating interactive learning interfaces at Khan Academy Ben Alpert and Pamela Fox
Slide 2
Slide 2 text
No content
Slide 3
Slide 3 text
No content
Slide 4
Slide 4 text
No content
Slide 5
Slide 5 text
Constraints are liberating.
Slide 6
Slide 6 text
“khan-exercises”
Slide 7
Slide 7 text
randRange(5, 10)
randRange(5, 10)
!
Bob has
X
apples...
Slide 8
Slide 8 text
graphInit({ range: 10, scale: 20 }); ! plot(function(x) { return 2 * sin(x); }, [-10, 10]);
Slide 9
Slide 9 text
No content
Slide 10
Slide 10 text
Solid line Dashed line
Slide 11
Slide 11 text
Too much power.
Slide 12
Slide 12 text
“Perseus”
Slide 13
Slide 13 text
No content
Slide 14
Slide 14 text
What about pictures?
Slide 15
Slide 15 text
For diagrams, we want… • Simple to create • Consistent look and feel • Flexibility to draw anything
Slide 16
Slide 16 text
No content
Slide 17
Slide 17 text
Diagrams turn into image files that any browser can render, but we save the source too.
Slide 18
Slide 18 text
Constraining yourself can be liberating too.
Slide 19
Slide 19 text
var MissionDashboard = React.createClass({ render: function() { return (
); } });
Slide 20
Slide 20 text
“Falling into the“ “pit of success” Jeff Atwood
Slide 21
Slide 21 text
Unthematic announcement time.
Slide 22
Slide 22 text
f ( x ) = Z 1 1 ˆ f ( ⇠ ) e 2 ⇡i⇠x d⇠
Slide 23
Slide 23 text
No content
Slide 24
Slide 24 text
• Used in production since last summer • Beautiful math typesetting • About 50x faster than MathJax • http://khan.github.io/KaTeX/
Slide 25
Slide 25 text
No content
Slide 26
Slide 26 text
Thanks.