CodeCrafters (YC S22)

CodeCrafters (YC S22)

Programming exercises for experienced engineers.

5.0
27 reviews

355 followers

CodeCrafters builds upon the popularity of Build your own X tutorials, packaging them as interactive challenges and making them accessible to every engineer.

This is the 2nd launch from CodeCrafters (YC S22). View more
CodeCrafters (YC S22)

CodeCrafters (YC S22)

Recreate your favorite developer tools from scratch
CodeCrafters makes interactive courses for software engineers, where you get to recreate popular developer tools from scratch. Build your own Redis, Git, Docker, and SQLite—in Go, Python, Rust, etc.
CodeCrafters (YC S22) gallery image
CodeCrafters (YC S22) gallery image
CodeCrafters (YC S22) gallery image
CodeCrafters (YC S22) gallery image
CodeCrafters (YC S22) gallery image
Free Options
Launch Team

What do you think? …

Sarup Banskota — CodeCrafters (YC S22)
Thanks for hunting us @mwseibel, and hello Product Hunt. For @rohitpaulk and I, our desire to get really good at programming began 10 years back in Uni. One time we had the crazy idea to reimplement Git in Ruby (why not, right?). At that time we thought only some crazy genius types could build such a complex project. But not only did we build it, we also taught our friends. It turned out to be such an enriching experience that Paul and I became best friends over it. Years later, it's led to our first company together. Today, through CodeCrafters: ◆ Developers at companies like Apple & Vercel are mastering Rust, Go, Haskell, etc. ◆ Harvard & MIT students are mastering the internals of popular software (e.g Git) ◆ Companies like Rose Rocket (YC S16) are powering their up-skilling programs ◆ ... some engineering teams are even organising mini hackathons So how does it work? The basics are simple: 1. You choose a project from our catalog (e.g Build your own Git in Python) 2. We break it down for you into approachable features (aka. stages) 3. You implement each stage, and push code to get feedback And it gets more interesting from there: ◆ You can study others' implementations (with AI-assisted explanations) ◆ You can study the official source code (e.g the Redis source) for inspiration ◆ You can publish to GitHub, one click. Show off progress through gorgeous banners ◆ You can learn alongside your team, through private leaderboards and our Slack app We've built CodeCrafters with a lot of love. We'd love for you to try it, and tell us what you think. Can't wait to see you build.
Rohit Paul Kuruvilla
Hello Product Hunt! We’re different in the developer education segment in 3 main ways: ◆ First, we cater to people with programming experience. There are tons of introductory “learn to code” resources out there, but surprisingly little once you get past the basics. Good programmers want to get better and to develop in areas where they’re not strong yet, and that’s what we help with. ◆ Second, the coursework involves writing actual code instead of consuming videos. You handle concurrency, develop statecharts, traverse B-trees, etc. While we test against a fixed spec, you’re welcome to try different approaches. E.g in our Redis course, you could implement handling concurrent clients either using threads, or using an event loop. ◆ Third, instead of coding in the browser, you build these projects in your local dev environment. We create repositories for you to work out of, and you git push to run tests. The actual code can be written in your editor of choice (VSCode, Vim, Emacs, etc). This last point in particular — our git-based workflow — is something customers repeatedly tell us they enjoy. As open source contributors, we’ve always been interested in the internals of software we use day-to-day. We’ve learned how much hunger there is for a skill-building path that’s structured, fun, and focused on cool, well-known projects with serious technical dimensions. Jumping straight into the deep end as an open-source contributor has always been an option, but it’s daunting, if not intimidating. It can take a long time to get oriented in a major codebase, and mentorship isn’t always available. There’s a need for an intermediate approach with lessons that build technical expertise, and that’s where we fit in.
Eunice Marginel
Is this suitable for developers of all experience levels? Feels a bit intimidating lol
Sarup Banskota — CodeCrafters (YC S22)
@eunicemarginel Great question. If I'm being honest, when we first started out, we didn't think too deeply about which experience level the product is for. As we started getting users, we started learning from them. You definitely need to have programming experience, CodeCrafters is definitely not the right fit as an "intro to programming" platform. But you don't need to be an expert. ◆ At the Eastern Switzerland University of Applied Sciences, CodeCrafters is part of the curriculum for undergrad students to learn and master Haskell. ◆ My favorite customer story ever is of a final college student in the US who had never written a line of Java and had never heard of Redis. But he knew C. During his CodeCrafters adventures, he learnt about what Redis is, picked up Java, and Built his own Redis. ◆ Like I shared in my story, Paul and I hardly knew much serious programming when we set out to reimplement Git in Ruby 10 years back. During the early career level it definitely feels intimidating. But that's also when you stand to gain the most value. You should give it a try ;)
Eunice Marginel
@sarupbanskota Thanks for sharing your insights and experiences with CodeCrafters! It's interesting to learn how the product evolved based on user feedback. The customer story about the college student who learned Java and built their own Redis implementation is inspiring. I appreciate your transparency about the required programming experience. I'll definitely consider giving it a try. Thanks again!

Do you use CodeCrafters (YC S22)?