Live data from Hacker News

ShowHN: buddycloud, a distributed social network

news.ycombinator.com

11–20 of 41 posts

Re: ShowHN: buddycloud, a distributed social network

#11
Very nice, from a quick look this looks closer to my design sketches for an open social network than the earlier contenders.

It wasn't entirely clear from a quick look at the wiki: What is postgresql used for? Metadata on media? How is authentication handled?

Apologies if I overlooked some obvious documentation (I confess I haven't looked at the code).

Are there any good comprehensive design overview documents?

I'd be interested in how much would be needed to (re)implement a stand alone version, running on a single technology for easy low-scale deployment (eg: running xmpp, mediaserver and api(?)-server all on top of nodejs, or via simple go-based servers)?

Re: ShowHN: buddycloud, a distributed social network

#13
post #11

Very nice, from a quick look this looks closer to my design sketches for an open social network than the earlier contenders. It wasn't entirely clear from a quick look at the wiki: What is postgresql used for? Metadata on media? How is authentication handled? Apologies if I overlooked some obvious documentation (I confess I haven't looked at the code). Are there any good comprehensive design overview documents? I'd b…

PostgreSQL is used for storing channels (users posts, subscriptions, etc.) and metadata on media.

Authentication is handled by the XMPP server - Prosody, ejabberd, OpenFire, etc.

The XMPP protocol is documented on https://buddycloud.org/wiki/XMPP_XEP, and the HTTP API on https://buddycloud.org/wiki/Buddycloud_HTTP_API.

Right now if you want to use a single technology I think the best would be to use nodejs: the channels server and HTTP API are running on it. The problem will be the XMPP server (I don't think node-xmpp can handle that). The media server is written in Java, so a complete rewrite would be needed (but the media server is optional). And I'd love to see all of that in Go, but last time I checked its XMPP libraries were not usable enough for what we'd need.

Re: ShowHN: buddycloud, a distributed social network

#14

Simon ( https://demo.buddycloud.org/simon@buddycloud.org ) from the buddycloud team here. Happy to answer any questions about the bc architecture or our approach.

How would my data (say status updates) be stored? On a single server of my own choice?

How do you decide who has access to what? Will it be somehow encrypted, so that only a subset of my contact list could get access to a part of it?

Would I be able to move all my data to a different server if I decided it is no longer trustworthy?

Re: ShowHN: buddycloud, a distributed social network

#15

Any way you can make it more appealing to bitcoiners?

I like bitcoin: it started out as a protocol and reference implementation. That's what we are trying to do today.

And I wouldn't be surprised if there is a a large overlap between bitcoin-ers and buddycloud-ers. Encryption (Client to server connections are encrypted. Server to server connections are also encrypted.) And Decentralised. And built around a common protocol.

Re: ShowHN: buddycloud, a distributed social network

#17

Simon ( https://demo.buddycloud.org/simon@buddycloud.org ) from the buddycloud team here. Happy to answer any questions about the bc architecture or our approach.

Your profile page behaves weirdly when viewed on iPad. The scrolling is jerky and clicking the title bar doesn't scroll to the top like it should.

Re: ShowHN: buddycloud, a distributed social network

#18
post #14

Simon ( https://demo.buddycloud.org/simon@buddycloud.org ) from the buddycloud team here. Happy to answer any questions about the bc architecture or our approach.

How would my data (say status updates) be stored? On a single server of my own choice? How do you decide who has access to what? Will it be somehow encrypted, so that only a subset of my contact list could get access to a part of it? Would I be able to move all my data to a different server if I decided it is no longer trustworthy?

The unit of sharing is the channel. You start with a personal channel user@domain.com and can create any number of new channels (holiday-photos@domain.com). Each channel has followers, moderator etc that you can control access to (or just set it as public): https://buddycloud.org/wiki/Channels_Explained

Think of the architecture like your email provider: You can always grab your mail spool and find a new provider. buddycloud is not dissimilar - just grab your posts and followers from the API and import them on a new provider. We're make this easier soon but, the data and endpoints are all there to facilitate it.

Re: ShowHN: buddycloud, a distributed social network

#19

Are any of my friends on it ?

So we have to solve three big problems: build a distributed architecture, build great reference clients, get massive adoption. We've almost solved two of those and have a team working on the third problem: https://buddycloud.org/wiki/K-Factor_Project

tl;dr

* find existing friends on buddycloud using other social networks as pointers

* post out to existing social networks

* give users a way to invite Twitter, FB etc friends in

* build a build a Facebook vacuum-cleaner that helps move a users existing content over (depending on API restrictions).

Re: ShowHN: buddycloud, a distributed social network

#20

Simon ( https://demo.buddycloud.org/simon@buddycloud.org ) from the buddycloud team here. Happy to answer any questions about the bc architecture or our approach.

Your profile page behaves weirdly when viewed on iPad. The scrolling is jerky and clicking the title bar doesn't scroll to the top like it should.

We know there are problems on the 1st gen iPad. Is that what you are using?
Post reply on HN