Pathetic – Java pathfinding: 10k concurrent paths in ~7ms
Primitive heaps beat FibonacciHeap by killing GC overhead in Java.
A distributed P2P BitTorrent client in Go with custom networking and concurrency handling.
BitTorrent engine tackles real distributed systems problems—slow peers, data poisoning, pipelining.
Backend engineers, distributed systems learners, Go developers interested in P2P protocols
Transmission (established BitTorrent client) · libtorrent (reference P2P implementation) · Syncthing (Go-based P2P, but different use case)
Key Technical Challenges I Solved:
Non-Blocking Concurrency: Used a worker pool where each peer gets its own Goroutine. I implemented a "Stateless Worker" logic where if a peer fails a SHA-1 hash check or drops the connection, the piece is automatically re-queued into a thread-safe channel for other peers to pick up.
Request Pipelining: To fight network RTT, I implemented a pipeline depth of 5. The client dispatches multiple 16KB block requests without waiting for the previous one to return, ensuring the bandwidth is fully saturated.
The Binary Boundary: Dealing with Big-Endian logic and the 68-byte binary handshake taught me more about encoding/binary and byte-alignment than any textbook could.
Zero-Trust Data Integrity: Every 256KB piece is verified against a "Golden Hash" using crypto/sha1 before being written to disk. If a single bit is off, the data is purged.
The Specification: I’ve documented the full spec in the README, covering:
Reflection-based Bencode Parsing.
Compact Tracker Discovery (BEP-0023).
The Choke/Unchoke Protocol State Machine.
Data Granularity (Pieces vs. Blocks).
Repo: https://github.com/Jyotishmoy12/Bittorrent-Client-in-Go
I’d love to get feedback from the community on my concurrency model and how I handled the peer lifecycle.
Primitive heaps beat FibonacciHeap by killing GC overhead in Java.
Eight concurrent SSH sessions with no ads or paywall unlike Termius.
Gamifies Claude Code usage with global token spend leaderboards and macOS widget.
Compiler written in JavaScript outputs raw ELF64 bytes without linking against libc or CRT.
Direct ELF64 emission without libc—concurrency as inspectable OS processes.
374x faster path queries than Neo4j with zero infrastructure overhead.