I Built a Game That Teaches Git by Making You Type Real Commands
The article describes a browser game called Gitvana that teaches Git commands by having players type real Git commands in a terminal interface. The game aims to provide a more engaging and practical way to learn Git compared to traditional tutorials.
Why it matters
The game provides a novel and engaging way to learn Git, which is an essential tool for developers, by having them practice real Git commands in a safe and structured environment.
Key Points
- 1Gitvana is a browser game that teaches Git commands by having players type real Git commands
- 2The game is structured into 6 acts that gradually introduce new Git commands and concepts
- 3The game uses a real Git engine powered by isomorphic-git and an in-memory filesystem
- 4The game aims to provide a more engaging and practical way to learn Git compared to traditional tutorials
Details
The article explains that the author built Gitvana, a browser game, to teach Git in a more practical and engaging way compared to traditional tutorials. The game is structured into 6 acts that gradually introduce new Git commands and concepts, from the basics like `git init`, `add`, and `commit` to more advanced commands like `rebase`, `bisect`, and `blame`. The game uses a real Git engine powered by isomorphic-git and an in-memory filesystem, so players are typing real Git commands and interacting with a real Git repository. The author believes that people learn best by doing slightly too-hard tasks, failing, and figuring out why, which is the core principle behind the game's design. The technical challenges in implementing the game included building a state machine for `git rebase`, maintaining state for `git bisect`, and implementing an efficient `git blame` algorithm.
No comments yet
Be the first to comment