Ask HN: What are some rite-of-passage style projects for programmers?
* Data structures - Linked list - Hash map - Several types of trees
* Algorithms - The common sorting algorithms - Dijkstra - Graph-traversal algorithms
* Projects - Ray tracer - Parser/Interpreter - Compiler - Virtual Machine - Small kernel - Neural Network - Web server
The algorithm and data structures section I believe should be covered by any decent computer science education (but may be useful to self-taught programmers). The projects are slightly more advanced and may take up to several weeks to implement completely. I realize this list is far from complete, so that's why I'm turning to you: do you have any projects that you've worked on that turned out to be very educational and made you a better programmer once you completed it?