[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)