diff --git a/BlueskyArchitecture.html b/BlueskyArchitecture.html index c4e07ef..fcecee6 100644 --- a/BlueskyArchitecture.html +++ b/BlueskyArchitecture.html @@ -27,17 +27,17 @@

Table of Contents

-
-

Introduction

+
+

Introduction

Boo! @@ -46,153 +46,248 @@ Boo!

-
-

General social media architectures

-
+
+

General social media architectures

+
-
-

Simplistic view 1/2 – overview

+
+

Simplistic view 1/2 – overview

-
+

structurizr-1-001-GenericSocial-01.png

-
-

Simplistic view 2/2 – services

-
+
+

Simplistic view 2/2 – services

+
-
-

structurizr-1-002-GenericSocial-02.png +

+ +
+

structurizr-1-002-GenericSocial-02.png

+ +
+
    +
  • Social media user access the app
  • +
  • The app interacts with the API
  • +
  • The API is the gateway for the database of posts, responses, likes, etc.
  • + +
+
+
-
-

More realistic view 1/4 – overview

+
+

More realistic view 1/4 – overview

-
+

structurizr-1-003-RealisticSocial-01.png

-
-

More realistic view 2/4 – basic services

-
+
+

More realistic view 2/4 – basic services

+
-
-

structurizr-1-004-RealisticSocial-02.png +

+ +
+

structurizr-1-004-RealisticSocial-02.png

+ +
+
    +
  • Social media user access the app
  • +
  • The app interacts with the API
  • +
  • The API is the gateway for the database of posts, responses, likes, etc.
  • +
  • The API also captures data for building profiles of users for targeting purposes
  • +
  • The algorithmic feed generator guides the API on what posts to place into the app's feed
  • + +
+
+
-
-

More realistic view 3/4 – the algorithm

-
+
+

More realistic view 3/4 – the algorithm

+
-
-

structurizr-1-005-RealisticSocial-03.png +

+ +
+

structurizr-1-005-RealisticSocial-03.png

+ +
+
    +
  • Social media user access the app
  • +
  • The app interacts with the API
  • +
  • The API is the gateway for the database of posts, responses, likes, etc.
  • +
  • The API also captures data for building profiles of users for targeting purposes
  • +
  • The algorithmic feed generator guides the API on what posts to place into the app's feed
  • +
  • Algorithmic feeds are created by the service administrator, using an app only they have access to
  • + +
+
+
-
-

More realistic view 4/4 – content moderation

-
+
+

More realistic view 4/4 – content moderation

+
-
-

structurizr-1-006-RealisticSocial-04.png +

+ +
+

structurizr-1-006-RealisticSocial-04.png

+ +
+
    +
  • Social media user access the app
  • +
  • The app interacts with the API
  • +
  • The API is the gateway for the database of posts, responses, likes, etc.
  • +
  • The API also captures data for building profiles of users for targeting purposes
  • +
  • The algorithmic feed generator guides the API on what posts to place into the app's feed
  • +
  • Algorithmic feeds are created by the service administrator, using an app only they have access to
  • +
  • Moderation is also performed by a member of the service's staff, using a dedicate app and services the the user doesn't have access to
  • + +
+
+
-
-

Federated social media services

-
+
+

Federated social media services

+
-
-

Federated services 1/8 – overview

+
+

Federated services 1/8 – overview

-
+

structurizr-1-007-FederatedSocial-01.png

-
-

Federated services 2/8 – internal, administration and content moderation services

-
+
+

Federated services 2/8 – internal, administration and content moderation services

+
-
-

structurizr-1-008-FederatedSocial-02.png +

+ +
+

structurizr-1-008-FederatedSocial-02.png

-
-
-

Federated services 3/8 – federation 1

-
-
-

structurizr-1-009-FederatedSocial-03.png +

+
    +
  • Same as before, the user access the service through an App that uses an API
  • +
  • As federated services are small, the administrator and the moderator are the one person
  • +
  • No algorithmic feeds, though +
      +
    • not popular in the fediverse community
    • +
    • difficult to implement in a federated environment.
    • + +
  • + +
+
+
+
+
+

Federated services 3/8 – federation 1

+
+ +
+ +
+

structurizr-1-009-FederatedSocial-03.png

+ +
+
    +
  • Same as before, the user access the service through an App that uses an API
  • +
  • As federated services are small, the administrator and the moderator are the one person
  • +
  • No algorithmic feeds, though +
      +
    • not popular in the fediverse community
    • +
    • difficult to implement in a federated environment.
    • + +
  • +
  • Federation service to push activity out to the federated network
  • +
  • Federation API to take in activity from other nodes
  • +
  • A logical database of inbound federated posts
  • +
  • Federation using ActivityPub standard
  • + +
+
+
-
-

Federated services 4/8 – federation 2

+
+

Federated services 4/8 – federation 2

-
+

structurizr-1-010-FederatedSocial-04.png

-
-

Federated services 5/8 – federation 3

+
+

Federated services 5/8 – federation 3

-
+

structurizr-1-011-FederatedSocial-05.png

-
-

Federated services 6/8 – federation 4

+
+

Federated services 6/8 – federation 4

-
+

structurizr-1-012-FederatedSocial-06.png

-
-

Federated services 7/8 – federation 5

+
+

Federated services 7/8 – federation 5

-
+

structurizr-1-013-FederatedSocial-07.png

-
-

Federated services 8/8 – federation 6

+
+

Federated services 8/8 – federation 6

-
+

structurizr-1-014-FederatedSocial-08.png

diff --git a/BlueskyArchitecture.org b/BlueskyArchitecture.org index 9de2af8..3359635 100644 --- a/BlueskyArchitecture.org +++ b/BlueskyArchitecture.org @@ -41,30 +41,77 @@ file:structurizr-1-001-GenericSocial-01.png #+REVEAL_HTML:
** Simplistic view 2/2 -- services - #+REVEAL_HTML:
- #+ATTR_HTML: :width 20% + #+REVEAL_HTML:
+ + #+REVEAL_HTML:
+ #+ATTR_HTML: :width 40% file:structurizr-1-002-GenericSocial-02.png #+REVEAL_HTML:
+ + #+REVEAL_HTML:
+ #+ATTR_REVEAL: :frag (appear) + - Social media user access the app + - The app interacts with the API + - The API is the gateway for the database of posts, responses, likes, etc. + #+REVEAL_HTML:
+ #+REVEAL_HTML:
** More realistic view 1/4 -- overview #+REVEAL_HTML:
#+ATTR_HTML: :width 90% file:structurizr-1-003-RealisticSocial-01.png #+REVEAL_HTML:
** More realistic view 2/4 -- basic services - #+REVEAL_HTML:
- #+ATTR_HTML: :width 40% + #+REVEAL_HTML:
+ + #+REVEAL_HTML:
+ #+ATTR_HTML: :width 70% file:structurizr-1-004-RealisticSocial-02.png #+REVEAL_HTML:
+ + #+REVEAL_HTML:
+ #+ATTR_REVEAL: :frag (appear) + - Social media user access the app + - The app interacts with the API + - The API is the gateway for the database of posts, responses, likes, etc. + - The API also captures data for building profiles of users for targeting purposes + - The algorithmic feed generator guides the API on what posts to place into the app's feed + #+REVEAL_HTML:
+ #+REVEAL_HTML:
** More realistic view 3/4 -- the algorithm - #+REVEAL_HTML:
- #+ATTR_HTML: :width 40% + #+REVEAL_HTML:
+ + #+REVEAL_HTML:
+ #+ATTR_HTML: :width 70% file:structurizr-1-005-RealisticSocial-03.png #+REVEAL_HTML:
+ + #+REVEAL_HTML:
+ - Social media user access the app + - The app interacts with the API + - The API is the gateway for the database of posts, responses, likes, etc. + - The API also captures data for building profiles of users for targeting purposes + - The algorithmic feed generator guides the API on what posts to place into the app's feed + - Algorithmic feeds are created by the service administrator, using an app only /they/ have access to + #+REVEAL_HTML:
+ #+REVEAL_HTML:
** More realistic view 4/4 -- content moderation - #+REVEAL_HTML:
- #+ATTR_HTML: :width 60% + #+REVEAL_HTML:
+ + #+REVEAL_HTML:
+ #+ATTR_HTML: :width 100% file:structurizr-1-006-RealisticSocial-04.png #+REVEAL_HTML:
+ + #+REVEAL_HTML:
+ - Social media user access the app + - The app interacts with the API + - The API is the gateway for the database of posts, responses, likes, etc. + - The API also captures data for building profiles of users for targeting purposes + - The algorithmic feed generator guides the API on what posts to place into the app's feed + - Algorithmic feeds are created by the service administrator, using an app only /they/ have access to + - Moderation is also performed by a member of the service's staff, using a dedicate app and services the the user doesn't have access to + #+REVEAL_HTML:
+ #+REVEAL_HTML:
* Federated social media services ** Federated services 1/8 -- overview #+REVEAL_HTML:
@@ -72,15 +119,43 @@ file:structurizr-1-007-FederatedSocial-01.png #+REVEAL_HTML:
** Federated services 2/8 -- internal, administration and content moderation services - #+REVEAL_HTML:
- #+ATTR_HTML: :width 40% + #+REVEAL_HTML:
+ + #+REVEAL_HTML:
+ #+ATTR_HTML: :width 70% file:structurizr-1-008-FederatedSocial-02.png #+REVEAL_HTML:
+ + #+REVEAL_HTML:
+ #+ATTR_REVEAL: :frag (appear) + - Same as before, the user access the service through an App that uses an API + - As federated services are small, the administrator and the moderator are the one person + - No algorithmic feeds, though + + not popular in the fediverse community + + difficult to implement in a federated environment. + #+REVEAL_HTML:
+ #+REVEAL_HTML:
** Federated services 3/8 -- federation 1 - #+REVEAL_HTML:
- #+ATTR_HTML: :width 75% + #+REVEAL_HTML:
+ + #+REVEAL_HTML:
+ #+ATTR_HTML: :width 100% file:structurizr-1-009-FederatedSocial-03.png #+REVEAL_HTML:
+ + #+REVEAL_HTML:
+ #+ATTR_REVEAL: :frag (none none none appear) + - Same as before, the user access the service through an App that uses an API + - As federated services are small, the administrator and the moderator are the one person + - No algorithmic feeds, though + + not popular in the fediverse community + + difficult to implement in a federated environment. + - Federation service to push activity out to the federated network + - Federation API to take in activity from other nodes + - A logical database of inbound federated posts + - Federation using ActivityPub standard + #+REVEAL_HTML:
+ #+REVEAL_HTML:
** Federated services 4/8 -- federation 2 #+REVEAL_HTML:
#+ATTR_HTML: :width 75% diff --git a/gridding.css b/gridding.css index dc2b871..4a7f758 100644 --- a/gridding.css +++ b/gridding.css @@ -15,10 +15,12 @@ .one_of_2_columns { width: 50%; + align-content: center; } .one_of_3_columns { width: 33%; + align-content: center; } .column_with_rows {