[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Social-discuss] On the architecture of a GNU Social node
From: |
Eduardo Lima Mitev |
Subject: |
Re: [Social-discuss] On the architecture of a GNU Social node |
Date: |
Sat, 24 Apr 2010 09:00:28 +0200 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.9) Gecko/20100411 Icedove/3.0.4 |
On 04/24/2010 07:41 AM, Ted Smith wrote:
I just posted this on libreplanet - it outlines in a more specific way
how I think GNU Social nodes should be built.
<http://groups.fsf.org/wiki/User:Teddks/Social>
Note that this takes no stance on the whole web app vs. desktop app or
PHP vs. not PHP issue - the document outlines the components involved in
a GNU Social node and specifies, on a high level, how they work
together. The design can be implemented in any language on any
framework.
Thoughts? Feedback? Scathing criticism?
- Ted
Hi Ted,
I like this high-level design approach, specially because it is
technology/protocol agnostic in nature.
I think a flexible model like this is a good starting point to
1) define basic concepts/pieces of the structure of GNU Social, in
order to have a common vocabulary during discussions;
2) start discussing/brainstorming on high-level API each component must
provide;
3) give focus to current implemented approaches.
A have a couple of concerns about your model that you could probably
clarify:
-) Why do you consider that a core-transport differs from a
UI-transport, to separate them in two different components? In practice,
UI-transports could be used as core-transports and vice-versa in some
cases. (e.g. you can have DBus between two peer cores; a peer doing
long-polling to other peer through HTTP; a web UI connecting to a peer
through secure web-sockets (wss), etc).
-) In the case of web-based UIs, we would have to figure out how to
properly implement the end-to-end encryption when a PGP model is used. I
mean, if a user A encrypts a message for user B using PGP, and B is
using a web-based UI, probably the peer of user B will have to
participate and decrypt the message, before routing it to user's browser
through the HTTPS channel. Solution to this would be to implement some
kind of logic in the Core, to allow "processing" messages as they change
from one transport to another.
Thanks for sharing these interesting ideas.
regards,
Edu
PS: do you connect to our IRC room #social? what's your nickname?