M
Mike McQuaid
blog.printf.net · Personal blog · on HN since 2010
Mike McQuaid writes about software projects and talks, including GitTorrent, WebRTC, Go-playing computers, and the future of JavaScript.
What HN saysHN links it mainly for GitTorrent, a 2015 proposal for a decentralized GitHub, which commenters cite when discussing peer-to-peer code hosting alternatives like radicle.
28HN people shared it
22linked it in comments
12stories submitted
1.9Kstory points
2 years agolast shared
2010people per year2026
Most-shared posts
- 1GitTorrent: A Decentralized GitHub18 people · 1.8K points · first shared 2015 · 169 comments on HN
- 2WebRTC without a signaling server5 people · 10 points · first shared 2013 · discussion on HN
- 3A Robot for Timo – cheap telepresence for remote teams2 people · 20 points · first shared 2014 · 6 comments on HN
- 4Computers are very good at the game of Go2 people · 12 points · first shared 2012 · discussion on HN
- 5Technical talks should be recorded2 people · 3 points · first shared 2013 · 1 comments on HN
- 6Computers that aren't computers1 people · 11 points · first shared 2010 · 3 comments on HN
- 7The Future of JavaScript1 people · 1 points · first shared 2013 · discussion on HN
- 8Dell c6100 xs23 sb server1 people · first shared 2014
- 9Wikipedia on xo1 people · first shared 2015
- 10Homepage1 people · first shared 2011
- 11Fujitsu lifebook u904 review1 people · first shared 2014
- 12Giving thanks1 people · first shared 2011
- 13Multi pointer remote desktop1 people · first shared 2020
- 14Peru olpc and wikipedia1 people · first shared 2015
- 15Celebrating seven years with seven percent1 people · first shared 2013
What HN people wrote when they linked it
cjbprime · 2020-03-25
I don't think you're missing anything, except maybe just that closed-source is the default on macOS and Windows so the marginal loss of safety from one more closed-source privileged app isn't so high there.
For the moment maybe the best we can do is trying to use apps with screen sharing support included, e.g. Visual Studio Code's sharing.
Your mention of VNC reminded me of some work I did in 2008 :) https://blog.printf.net/articles/2009/01/26/multi-pointer-remote-deskt…
fpgaminer · 2016-03-08
GitTorrent: http://blog.printf.net/articles/2015/05/29/announcing-gittorrent-a-dec…
Imagine a world where GitTorrent is fully developed, includes support for issue tracking, and has a nice GUI client that makes the experience on-par with browsing github.com.
I mention this not as an "Everybody bail out of GitHub and run to GitTorrent!!!" sort of statement, because I believe GitHub's response here was excellent and confidence inspiring. But it's an unnatural relationship for community supported, open source projects to host themselves on commercial platforms such as GitHub. GitHub primarily hosts them to promote its business. That's not necessarily a bad thing, but it results impedance mismatches like demonstrated here.
That isn't to say that a mature GitTorrent would replace GitHub. Rather, I envision GitHub becoming a supernode in the network, an identity provider, and a paid seed offering, all alongside their existing private repo business.
Honestly, once I scrape a few projects off my plate, I'm inclined to dive into GitTorrent, see where it's at in development, and see if I can start contributing code. It just seems like such a cool and useful idea.
pabs3 · 2022-08-05
There was GitTorrent in 2015:
https://blog.printf.net/articles/2015/05/29/announcing-gittorrent-a-de…
https://news.ycombinator.com/item?id=31534936
There are also multiple git-remote-ipfs projects on GitHub.
cscottnet · 2022-01-18
Funny thing: I was hired by OLPC specifically to implement that book:
https://blog.printf.net/articles/2011/06/18/narrative-interfaces/
jka · 2020-11-12
tl;dr - GitTorrent[1][2], and more recently, radicle[3]
[1] - https://blog.printf.net/articles/2015/05/29/announcing-gittorrent-a-de…
[2] - https://hn.algolia.com/?q=GitTorrent
[3] - https://radicle.xyz/
tbrugz · 2020-10-25
rnhmjoj · 2020-10-23
I know of two such projects from HN: GitTorrent and Radicle.
The former seems abandoned but the latter is still being developed.
Radicle: https://news.ycombinator.com/item?id=19367916
Gittorrent: https://blog.printf.net/articles/2015/05/29/announcing-gittorrent-a-de…
ryukafalz · 2020-07-10
I think the only way we’ll get people to really care about free software is to build functionality that really only works if the software is free. For example: https://blog.printf.net/articles/2006/10/29/the-view-source-key/
JamesLeonis · 2018-09-29
Speaking of existing technologies, Chris Ball combined the BitTorrent, DHT, and GIT protocols into GitTorrent [1][2].
[1]: https://blog.printf.net/articles/2015/05/29/announcing-gittorrent-a-de…
[2]: https://github.com/cjb/GitTorrent
rakoo · 2018-06-14
> Are there any example projects using this?
The only project I know is gittorrent (https://blog.printf.net/articles/2015/05/29/announcing-gittorrent-a-de… but it hasn't gone anywhere.
pushtheenvelope · 2018-06-06
you may be interested in Gittorrent. I'll link to the recent HN discussion, since the original article was from 2015: https://news.ycombinator.com/item?id=17234498
original article: https://blog.printf.net/articles/2015/05/29/announcing-gittorrent-a-de…
moosingin3space · 2017-07-28
A decentralized key-value store that is tolerant to an active adversary is not a "very simple problem". A block-chain is actually a reasonable solution for this, see [1].
Not to say it's perfect, for sure.
[1]: http://blog.printf.net/articles/2015/05/29/announcing-gittorrent-a-dec…
myfonj · 2017-07-17
> You will need [...] and drumroll - a server.
Actually, you can make poor human to do signalling servers work: http://blog.printf.net/articles/2013/05/17/webrtc-without-a-signaling-…
szupie · 2017-02-02
I was wondering what this project had to do with GitHub. Looks like the only feature from GitHub that this addresses is the global username namespace, which it decentralises using the blockchain.
Here's the article associated with the project: http://blog.printf.net/articles/2015/05/29/announcing-gittorrent-a-dec…
andreyk · 2016-03-15
Related, from 2012 "Computers are very good at the game of Go " (from the perspective of an amateur Go player): http://blog.printf.net/articles/2012/02/23/computers-are-very-good-at-…
IanCal · 2015-09-29
You might like this: http://blog.printf.net/articles/2015/05/29/announcing-gittorrent-a-dec…
Really you just want the very first part, since the more complex bits are around having mutable "latest" versions and usernames.
And here's the github repo: https://github.com/cjb/gittorrent
michaelmior · 2015-09-18
I assume you're suggesting something like including such a timestamp in the commit message? If that's the case, that makes a lot of sense to me. It would be cool to have a tool to automate this. Or something like GitTorrent[0] might do the trick if it had wider adoption.
[0] http://blog.printf.net/articles/2015/05/29/announcing-gittorrent-a-dec…
jlcx · 2015-08-25
I think they're two different projects, but this is exactly what I thought of. A separate Chinese DDoS was even mentioned by cjb in his announcement of GitTorrent a few months ago: http://blog.printf.net/articles/2015/05/29/announcing-gittorrent-a-dec…
randallu · 2013-06-24
> WebRTC still uses central servers to establish connections
WebRTC without a signalling server: http://blog.printf.net/articles/2013/05/17/webrtc-without-a-signaling-…
mtgx · 2013-06-05
FeepingCreature · 2017-04-06
> Do you really want the basic ability for two devices to talk to each other depend on something that goes over the internet?
Set up your hosts file or edit the js to point at a local server.
Of course, if you're in China you'd get in trouble making connections to an outside STUN server but if you're in China you're in trouble making connections to the outside anyways, and the STUN connection is probably the least of your worries.
> just to use those poor imitations of sockets
... that work across NATs without issues, as opposed to real sockets...
---
In any case, WebRTC doesn't strictly speaking need discovery servers at all. See http://blog.printf.net/articles/2013/05/17/webrtc-without-a-signaling-… It still uses STUN for public-ip discovery, but comments indicate that can be bypassed by just configuring the connection to use a local IP for STUN. Unsurprisingly, not many people seem to actually care about that.