By Multiple Everyone at Khan Academy received a plea recently: I’m hoping to organize a blog post that joins together stories of how each of you manage your time, and lessons you’ve learned in your …
Hackathons Can Be Healthy
By Tom Yedwab As an organization whose raison d’être is learning – we in fact have a campaign called “You Can Learn Anything!” – having a dedicated time where anyone at Khan Academy can tackle a new …
Ensuring transaction-safety in Google App Engine
By Craig Silverstein In last week’s exciting post, I described an alternative to transactions that we use at Khan Academy, to ensure atomic datastore operations. When used correctly, both the …
Continue Reading about Ensuring transaction-safety in Google App Engine →
The User Write Lock: an Alternative to Transactions for Google App Engine
By Craig Silverstein Transactions are the standard method in Google App Engine’s datastore — as in many databases — to ensure atomicity. This is true for both atomic writes of multiple entities, …
Continue Reading about The User Write Lock: an Alternative to Transactions for Google App Engine →
Khan Academy’s Engineering Principles
⭐ Read about our 2019 revision of the principles! ⭐ By Ben Kamens You know those super-frustrating movie scenes where the entire plotline is driven by some sort of completely avoidable communication …
Continue Reading about Khan Academy’s Engineering Principles →
Minimizing the length of regular expressions, in practice
By Craig Silverstein The problem Software engineering interviews tend to be full of ”algorithms” questions, because they’re easy to explore in an hour, unlike the messy problems that most …
Continue Reading about Minimizing the length of regular expressions, in practice →