About pv1: Handle APIVersions requests

This is really confusing, is this one perhaps not for a beginner-intermediate level.

my repo: GitHub - logan1o1/codecrafters-kafka-go

I don’t understand how you get these, like how would we know which parts contain what

message_size := buff[0:4]
corelation_id := buff[8:12] 

Can anyone please explain, I want to learn but its too complicated,
and can anyone direct me towards any learning resources that would be on the beginner level.

Hey @logan1o1, we’re still working on instructions for stage #pv1, so it’s expected that things might be a bit unclear for now.

I don’t understand how you get these, like how would we know which parts contain what

Totally hear you. Ideally, these details would be clearly documented in the Kafka protocol specs, but unfortunately the docs aren’t very beginner-friendly.

Can anyone please explain, I want to learn but its too complicated

To help with this, we created binspec, which breaks down Kafka messages in a byte-by-byte way.

and can anyone direct me towards any learning resources that would be on the beginner level.

I’d recommend trying the Redis challenge first.

It introduces networking concepts and protocols in a more gradual way, which can help build the foundation for Kafka.

This topic was automatically closed 5 days after the last reply. New replies are no longer allowed.