[HN Gopher] Building a BitTorrent client from the ground up in Go
___________________________________________________________________
Building a BitTorrent client from the ground up in Go
Author : stargrave
Score : 226 points
Date : 2022-11-06 18:01 UTC (4 hours ago)
(HTM) web link (blog.jse.li)
(TXT) w3m dump (blog.jse.li)
| adastra22 wrote:
| Thanks, this is really cool. I don't have anything to add; I just
| want to let the author know this is appreciated. I recently
| decided to learn Go, and articles like this are a great way to
| get a feel for how Go programmers think about solving problems
| with the tools available to them. The kind of knowledge you don't
| get from just skimming The Go Programming Language and such.
| chrsig wrote:
| Great post
|
| One nit, with the font: l4:spami7ee
|
| the first two characters look an awful lot like the number "14",
| when they're actually "L4". I'm not sure if bencoding is case
| sensitive or if anohter font may better differentiate the two,
| but that may be something the author may want to poke at if they
| happen to read this comment :)
| fazfq wrote:
| The l looks taller than the 4 to me, which makes it clear it's
| not another number
| mdaniel wrote:
| The project author's previous submission:
| https://news.ycombinator.com/item?id=21958359
| andirk wrote:
| They're big fans of bittorrent, it appears.
| throwaway894345 wrote:
| This didn't dive into it, but I appreciated the suggested search
| terms for information on decentralized peer discovery. I always
| wondered how that would work, especially the bootstrapping
| process. Ultimately I found this StackOverflow answer to be
| really helpful: https://stackoverflow.com/a/22240583
| banana_giraffe wrote:
| One of the things that made the bootstrapping click for me was
| realizing there are in fact servers that DHT clients talk to
| once to find an entrance to the network. They all have a list
| (such as
| https://github.com/qbittorrent/qBittorrent/blob/c80238d66ff3...
| )
| riley_dog wrote:
| This looks to have been written on Jan 4, 2020.
| unboxingelf wrote:
| As someone who writes Go code daily, nice Go code!
___________________________________________________________________
(page generated 2022-11-06 23:00 UTC)