Fragen zur technischen Architektur von Discourse

Hallo

Vor langer Zeit war ich ein Technikexperte, aber heutzutage nicht mehr. Ich habe anderswo gesagt, dass ich mich für das Design digitaler Gemeinschaften interessiere. Soziologie, die mit Technologie aufgebaut ist.

Ich weiß nicht, was die Architektur von Discourse ist, aber ich weiß, dass es Themen und Plugins gibt. Wenn es andere Teile gibt, bin ich mir dieser nicht bewusst.

Hilfe bitte :slight_smile:

Ich habe versucht, das Paar auf verschiedene Weise zu durchsuchen, aber ich erhalte nichts zurück, das darauf hindeutet: „Hier ist die 101 über Was/Warum. Z.B.: Es gibt eine Präsentationsschicht, eine Speicherschicht und einen Auswahlprozess dazwischen, der diese Informationen verwendet, um Kontext herzustellen, um von einer in die andere auszuwählen. Out of the Box erhalten Sie x y und z. Ein Plugin ist ein… Jedes im Verzeichnis wird beim Start des Serverprozesses (oder was auch immer) geladen, sie haken an der Benutzeroberfläche/Backend/Frontend usw. an, die vorhandenen sind…, ein Thema beeinflusst die Präsentationsschicht (?) des Out-of-the-Box-Plus-Plugins auf folgende Weise…“

Gibt es eine solche Beschreibung, auf die mich jemand verweisen kann und die mich von 0 zu einem ausreichenden Verständnis bringt, um herauszufinden, was derzeit existiert, und genug Verständnis zu haben, um kreativ zu denken?

weil

dann kann ich sie als konzeptionelle Bausteine für das Design von Gemeinschaften für verschiedene Zwecke verwenden.

Ich interessiere mich für…:
Ob Discourse für #medizinischeStandards “gehärtet” werden könnte - nein, ich weiß noch nicht, was diese in einer bestimmten Gerichtsbarkeit sind, aber ich weiß, dass sie für die Zwecke von Interesse notwendig sein werden und sich geografisch unterscheiden.

Ich interessiere mich für die Schnittstelle zu instrumentierten Rehabilitationswerkzeugen und die Codierung für die anonymisierte Datenextraktion (#DSGVO-konform) von Fortschritts- und Wirksamkeitsmetriken als Verbesserungsdaten für die Forschung.

Ich interessiere mich dafür, wie die besten Beiträge wie Sahne nach oben steigen können, damit neue Benutzer nicht mit einer Discourse-Benutzeroberfläche konfrontiert werden, die in einem Thema, für das sie gerade einen dringenden Bedarf entdeckt haben, fremd ist, zu einer Zeit der Desorientierung mit einer Fülle von Informationen vor ihnen, die Tausende von Beiträgen und Threads umfasst, mit nur einer hierarchischen Struktur, die akademisch und nicht viszeral für sie ist…

Hierarchische Strukturen sind im Allgemeinen besser für die Suche nach Themen von potenziellem Interesse geeignet, wenn man zuerst einen Atemzug nehmen kann, aber im Allgemeinen unterstützen sie nur Tiefensuche-Muster - Discord scheint ein Paradebeispiel dafür zu sein - wo die Annahme ist, dass man das Thema bereits kennt - das könnte durch Hashtags, ein weiteres Thema auf meinem Lesepensum, leicht gemildert werden.

Vielleicht überbrücken einige der KI-Bot-Sachen die Lücke? Ein weiteres Lesepensum-Element… :slight_smile:

Ich sehe mir auch einige Videos über den Blog mit @jonobacon an und kann vielleicht intelligentere Fragen stellen, wenn ich sie beendet habe.

Um kreativ im Kontext von Discourse zu denken, benötige ich mehr Verständnis dafür, welche Komponenten und Schnittstellen existieren.

Können Sie mir dabei helfen? :slight_smile:
Vielen Dank im Voraus

2 „Gefällt mir“

Das Durchsuchen der vorhandenen Plugins, Themes und Theme-Komponenten kann Ihnen einen Eindruck davon vermitteln, was in Bezug auf die Anpassung möglich ist:

6 „Gefällt mir“

:wave: Hallo @51mon - wenn du dich für die Entwicklung von Discourse-Foren interessierst, sind die Infos hier vielleicht von Interesse für dich. :slight_smile:

2 „Gefällt mir“

Danke :)\n\nIch glaube, du hast mir gerade ein Wörterbuch gegeben, wo ich mir eine Anleitung zum Lesen erhofft hatte! - Hast du eine sanftere Einführung in das Thema, was diese Dinge sind und wie sie funktionieren, anstatt was sie tun? :-\n\nIn deinen Links gibt es viel Material, aber nichts im Überblick, das die Architektur von Discourse beschreibt - ich mache mir im Moment weniger Sorgen über die Fähigkeiten, die in den Plugins usw. bereitgestellt werden - ich versuche immer noch herauszufinden, was sie eigentlich sind.

2 „Gefällt mir“

Vielen Dank, ich werde es mir ansehen :slight_smile:

Ich bin etwas zurückhaltend, da sie mit „Entwicklung…“ überschrieben sind und ich kein Interesse daran habe, Code zu schreiben – ich möchte die Architektur verstehen.

Ich werde es mir ansehen, da im Moment nicht offensichtlich ist, ob die Texte meinen Bedarf decken werden (Daumen drücken).

Ich werde Sie auf dem Laufenden halten – es sei denn, Sie haben natürlich noch andere Vorschläge :). ?

1 „Gefällt mir“

@51mon Ich gehe davon aus, dass Sie diese studiert haben?

7 „Gefällt mir“

Ich hatte nicht :slight_smile:
Danke

~~ “~” ~~
[[Bearbeitungen]]

Autsch! Link Nummer eins bringt mich zur Kopfzeile von 15 Threads

Link zwei und drei sind Verkaufsseiten, aber zumindest sind es nur eine Seite - sie sind Funktionslisten, keine architektonischen Beschreibungen.

Und autsch, ich bin mir nicht einmal sicher, was der letzte Link ist, außer einer Einladung, sich bei try.discourse.org anzumelden, mit Threads, die mehr als 100 Einträge haben, plus einem mit mehr als 1.000 Einträgen allein -

keine Karte. Muss ein bisschen so sein, wie Cook sich gefühlt hat, als er Australien entdeckte und dann tagelang an seiner Küste entlangsegelte

Bearbeiten
Die Funktionsliste
Die Seite nennt eine lange Liste von Dingen. Einige der Dinge sind konzeptionell. Wenn ein Name sich auf ein Konzept bezieht, das nicht beschrieben wird, sagt er Ihnen nur, dass hier ein Ding ist, vermittelt aber kein Verständnis oder was das Ding ist - also weiß ich aus den Funktionen, dass es viele gibt :slight_smile: aber ich habe kein Konzept davon, was ich mit vielen der genannten Funktionen tun kann.
Gut für die Feststellung der Breite, eine gute Gedächtnisstütze für diejenigen, die es bereits wissen, aber schwer für jemanden, der nach Verständnis sucht, um Verständnis zu erlangen.
Außerdem habe ich aus dieser Funktionsliste keine Ahnung, ob es sich um Plugins, Themes, Out-of-the-Box-Funktionen, einzigartig für Discourse oder in jeder Plattform üblich handelt.
Ich sage nicht, dass ich wirklich etwas für diese Seite tun sollte, im Moment mache ich nur Notizen, weil ich einen Kontinent zu erkunden habe. Was meine OP gefragt hat, war ein Bild der Erde, wie sie vom Mond aus aufgenommen wurde, bisher habe ich es nicht einmal geschafft, auf die Spitze des Mastes der HMS Endeavour zu klettern :grin:

Link Nummer drei “Was ist Discourse” ist eine Mischung aus Verkaufsgespräch mit anderen Dingen. Es gibt auch keine Architektur an - ich sage nicht, dass es das sollte, aber da es das nicht tut, ist es nicht das, was ich suche.
Es klingt für mich auch nicht ganz richtig - zum Beispiel behauptet es, dass Discourse Komplexität beseitigt hat, aber die Farbe Rot, die in der Benutzeroberfläche verwendet wird, ändert sich je nach Anzahl der Likes im Vergleich zu Beiträgen. Das ist ein sehr esoterisches Element der Benutzeroberfläche. Auch ob man in den Listen der ungelesenen Beiträge auf den Titel, die Antwortanzahl oder ein drittes Feld klickt, weiß ich nicht, wie man es nennen soll, man wird an verschiedene Stellen in einem Thread gebracht. Dies sind alles intuitive, nicht angekündigte, nicht signalisierte Variationen der Benutzererfahrung, die, bis man weiß, dass sie in der Benutzeroberfläche existieren, verwirrend sein werden.

2 „Gefällt mir“

Um ehrlich zu sein @51mon, ich glaube nicht, dass ich deine Frage verstehe. Könntest du sie in einfachen Worten stellen, und ich werde mein Bestes tun, um dir eine Antwort zu geben.

8 „Gefällt mir“

Das ist eine nette Kontaktaufnahme @JammyDodger – und das werde ich tun, wenn ich kann, aber im Moment geht es nicht.

Ich denke, mein erster Beitrag hat es in meinen Ohren klar gesagt, aber offensichtlich vermittelt er deinen Ohren (Augen!) nicht klar.

Versuchen wir es so:

Wenn wir beide stünden und uns ein Auto ansehen würden, könnten wir eine Diskussion führen wie: „Du kannst darin sitzen und es bringt dich zum Supermarkt oder zum Strand.“ Oder alternativ könnten wir ein Gespräch führen wie: „Es hat Räder und einen Motor, der mit Benzin oder einer Batterie betrieben wird, und ein Lenkgerät und ein Bremsgerät.“

Das Gespräch über die Bremsen und Blinker und ob die Innenbeleuchtung automatisch ein- und ausgeschaltet wird, ist ein Entwicklergespräch. Das Gespräch darüber, zum Strand zu fahren und die Kinder morgens zur Schule zu bringen und ob man einen Rollstuhl hinten reinbekommt oder einen Wohnwagen ziehen kann, ist eine benutzerorientierte Diskussion, die an das Technische grenzt. Um einen Wohnwagen zu ziehen, benötigt man eine Anhängerkupplung, da diese nicht serienmäßig ist. Wenn Sie das Auto kaufen, haben Sie die Wahl zwischen Weiß oder Grau oder Schwarz oder vielleicht Blau. Das sind einmalige Entscheidungen – vielleicht sind das im Kontext von Discourse Admin-Themen.

Ein Aspekt unter vielen, der mich interessiert, ist, ob ich eine Community mit Discourse betreiben könnte, bei der die Informationen, die irgendwo zwischen Admin und der Ansammlung von Beiträgen der Mitwirkenden und den Benutzer-IDs usw. liegen, möglicherweise medizinischen Vorschriften für den Schutz von Daten CIA (Vertraulichkeit, Integrität und Verfügbarkeit) entsprechen müssen. Aber ich kann diese Frage nicht beurteilen, wenn ich die zugrunde liegende Architektur nicht kenne.

Wenn dies es nicht klarer gemacht hat, müssen Sie warten, bis ich alle Ressourcen gelesen habe, auf die mich die Leute verwiesen haben, damit ich eine Frage stellen kann, die für diejenigen, die sie beantworten können, verständlich ist, denn derzeit kann ich die Frage nicht besser formulieren.
Danke - :slight_smile:

Es ist eine Entdeckungsreise und ich bin zufrieden, dass es einige Zeit dauern wird. Wenn ich die Entdeckungen gemacht habe, die ich brauche, werde ich sie wahrscheinlich aufschreiben und der Community hier spenden, in der Hoffnung, dass sie anderen in Zukunft helfen.

Ich fürchte, das hat es nicht viel klarer gemacht. :slight_smile: Hoffentlich kann jemand anderes einspringen und Ihnen geben, was Sie brauchen. :crossed_fingers:

Haben Sie schon ein Forum erstellt, in dem Sie herumspielen können? Das könnte Ihnen helfen, Ihre Ideen zu erkunden und ein Gefühl dafür zu bekommen, was möglich ist.

5 „Gefällt mir“

Hallo @51mon.

Ich vermute, ein Teil des Problems sind Metaphern. Alles, was man tippt, wird oft vom Autor verstanden. Andere haben jedoch möglicherweise Schwierigkeiten, es zu verstehen.


Also… hier geht’s los:

Discourse Meta ist im Kern als grundlegendes Community-Framework konzipiert.

Es bietet eine grundlegende Basis… die von Haus aus eher schlicht ist.

Mit deiner und meiner Altersgruppe hast du vielleicht Dos Electronic BBSes kennengelernt oder davon gehört.

Eine ganze Reihe davon waren Ableger von Telegard BBS, auch bekannt als Telegard Hacks. (Abschweifung…)

Zurück zum Thema.

Du möchtest also ein Discourse Meta-Forum aufbauen für…

Das ist dein Ausgangspunkt. Setz dich hin und überlege dir eine Idee, was der Zweck deiner Community ist und was sie in Bezug auf Funktion und Features bieten soll.

Dann mach einen Schritt zurück.

Um eine klarere Vorstellung davon zu bekommen, wohin du gehen kannst. Erkunde die Liste der Communities, die Discourse bereits nutzen. Im Moment habe ich keinen Link zur Hand. Wenn du dir bestehende Communities ansiehst, bekommst du eine Vorstellung davon, was erreicht werden kann… und wie ähnlich einige Communities sind, wie sehr sie sich in Umfang und Funktion unterscheiden können.

Von hier aus kannst du Funktionen notieren, die verschiedene Communities haben und die du in deiner Community-Idee haben möchtest.

Du kannst entscheiden, ob du kostenpflichtiges Hosting möchtest, das die Lebensqualität verbessern kann, oder ob du die volle Kontrolle übernimmst und selbst hostest, um die volle Kontrolle über die leistungsstarke Erweiterbarkeit zu haben, indem du beliebige Plugins auswählst. Aber zu dem Preis, dass du den VPS selbst warten musst.

In jedem Fall musst du recherchieren, was du brauchst, um die Funktionen und Features zu haben, die du benötigst, um deine Community zu gestalten.

Führen wir von hier aus ein Gedankenexperiment durch. Stelle eine Beispiel-Community-Idee vor. Wir können sogar eine bestehende Community nehmen und uns fragen, welches Plugin (falls benötigt), Theme und Theme component wir benötigen würden, um das zu erreichen, was diese Community hat?

1 „Gefällt mir“

Hallo @Heliosurge :slight_smile: Vergessen Sie diese BBS, ich erinnere mich an Newsnet, das von UKC in Canterbury über DFÜ-Leitungen mit 300 Baud betrieben wurde, und ich erinnere mich an NNTP-basierte Dienste und Clients wie FreeAgent.

Ich stimme vollkommen zu, dass Analogien und im weiteren Sinne einfach Wörter, die in Sätzen angeordnet sind, oft nur das Verständnis zwischen den Ohren des Schreibers kapseln. Selbst wenn sie anderswo Verständnis schaffen, gibt es keine Garantie, dass es dasselbe ist! :slight_smile:

Versuchen wir es mal:
Ich verstehe, dass Discourse ein serverseitiges Ende hat, das eine Datenbank mit Beiträgen und Benutzern enthält, und dass sowohl Beiträge als auch Benutzer Attribute haben und miteinander verknüpft sind. Dass dies irgendwo gehostet wird, der Host kann virtuell sein, ein Content Delivery Network usw.

Ich verstehe, dass auf der Client-Seite eine Präsentationsschicht vorhanden ist, die die Beiträge und die Anmeldeinformationen und Zugriffsrechte eines Benutzers verwendet und Links erstellt, um einen Feed zu erstellen. Ich sehe, dass philosophisch viele der verwendeten Strukturen hierarchisch sind. Die Hierarchie wird durch viele Mechanismen für Querverknüpfungen verschleiert.

Ich nehme an – ich denke, sicher –, dass das Farbschema usw., das vom Client verwendet wird, zur Laufzeit an ein Thema gebunden ist, das ersetzt werden kann, sodass die nachfolgende Ausführung an ein neues Thema gebunden wird und nicht den Inhalt ändert, aber das Erscheinungsbild und möglicherweise sogar einige funktionale stilistische Navigationskomponenten ändert, aber hier werde ich etwas vage und spekulativ.

Ich bin mir bewusst, dass Themenkomponenten existieren, und ich habe derzeit ein Modell in meinem Kopf, das besagt, dass eine Kombination von Themenkomponenten ein Thema ausmacht, aber auch hier bin ich mir nicht ganz sicher. Ich habe kein Verständnis für einige Beispiele dafür, was eine Themenkomponente tut.

Ich habe weniger Verständnis für Plugins. Ich verstehe den architektonischen Teil, dass sie serverseitig sind und somit in der laufenden Instanz sitzen, die Inhalte bereitstellt. Ich sehe die Interaktion zwischen einem Thema und einem Plugin nicht ganz. Ich würde vermuten, wenn man die serverseitigen Fähigkeiten erweitert, muss man die clientseitige Präsentation erweitern, aber dieser Teil ist Unsicherheit über die Unsicherheit.

Ich weiß auch nicht, ob das vollständige Architekturmodell aus Folgendem besteht: Server, Server-Software, Client-App/Browser, Themenkomponenten und Plugins oder ob es andere Komponenten gibt.

Ich habe Fragen wie: „Eine Standard-Discourse-Community wird nicht hinter einer Paywall oder anderen Monetarisierungsmechanismen betrieben, könnte eine hinzugefügt werden?“ Die Daten werden in einem System mit einem gewissen Grad an Vertraulichkeit, Integrität und Verfügbarkeit gespeichert. Kann das auf die Standards gehärtet werden, die für Interoperabilitätsstandards im Gesundheitswesen auf beiden Seiten des Atlantiks erforderlich sind?

Diese letztere Anforderung verlagert die Diskussion hin zu Ethik und wie Software rechtliche, moralische und kulturelle Belange unterstützt, was meiner Meinung nach zum Thema dieses Forums gehört. Architektonisches Verständnis ist eine Voraussetzung für Lösungsdesign, ebenso wie die Bestimmung philosophischer Prinzipien, die die als wünschenswert, wesentlich und unerwünscht/inakzeptabel/tadelnswert betrachteten Einrichtungen prägen und Tadel verarbeitet werden sollten.

1 „Gefällt mir“

Okay, Sie verstehen es. Die Kerndatenbank von Themen, gruppiert in Kategorien und mit Tags organisiert, wie hier zum Beispiel.

Es gibt 2 Arten von Theme

  • Basic ändert nur das Standard-Discourse-Aussehen
  • Full Theme ändert das Aussehen und ist mit einigen #theme-componenten vorverpackt, um zu ändern, was es mit Komponenten tun kann, um zu ändern, wie Dinge funktionieren

Dieses Bild. Beschwört das Seitenmenü auf.

Unten, wo ich mit dem Pfeil hervorgehoben habe, Erweitern Sie es. Sie haben eine Sammlung von Themen, von Basic bis Full. Experimentieren Sie, wählen Sie eines aus und sehen Sie, wie Meta hier in Bezug auf Aussehen und Gefühl verändert wird.

Probieren Sie ein paar verschiedene aus und erkunden Sie. Ich denke, das wird helfen, ein besseres Verständnis dafür zu bekommen, was Themen mit und ohne Komponenten tun können.

Air Theme zum Beispiel ist ein vollständiges Thema mit vorinstallierten Komponenten.

2 „Gefällt mir“

Danke
Ich glaube, diese Antwort hat mir gezeigt, dass Themes auf der Serverseite geladen werden und dass die Clientseite beim Start abfragt, welche Themes verfügbar sind, und dann bei jeder Datenabfrage (oder Instanziierung einer Sitzung?) ein Theme-ID bereitstellt, das der Server dann verwendet, um zu kodieren, welche HTML-Elemente an den Client weitergeleitet werden, um sie anzuzeigen.

Außerdem haben Sie gesagt, dass die App neu erstellt werden muss. Ich nehme an, das ist ein Link-Edit-Prozess? Zumindest beschreiben Sie einen statischen Mechanismus, keine dynamisch verknüpften Bibliotheken?

Ich habe immer noch kein Gefühl dafür, welche Dienste das Plug-in bereitstellen könnte und wie ein Theme interagieren würde, außer dass es mein Symbol von einem Kreis zu einem Quadrat ändert, was zu passieren scheint, wenn ich dasjenige auswählte, das Sie Air nannten?

Im Gegensatz zu älteren Forenplattformen (vBulletin, phpBB) ist Discourse keine Sammlung von flachen serverseitigen Skripten (php) und einer separaten Datenbank.

Discourse besteht aus zwei Hälften: einem Backend, das in Docker läuft, und einer Single-Page-JavaScript-Anwendung, die an das Client-Gerät ausgeliefert wird.

Alles, was eine Backend-Änderung erfordert, wirkt sich auf den Docker-Container aus, was bei den grundlegendsten Installationen eine geringe Ausfallzeit erfordert. Das ist es, was die Leute meinen, wenn sie sagen, dass die App neu erstellt werden muss. Die Konfigurationsdatei (ein yml-Dokument), die steuert, wie der Container erstellt wird, muss bearbeitet und dann wird ein Rebuild über SSH an den Launcher ausgegeben. Die Installation von Plugins erfordert einen Rebuild, während einfache Änderungen an SMTP eher einem Neustart ähneln.

Die Einführung neuer Themes und Theme-Komponenten sind im Wesentlichen Frontend-Änderungen, die innerhalb der laufenden Web-App vorgenommen werden. Sie führen zu keiner Ausfallzeit, da die zugrunde liegende App und Datenbank im Wesentlichen unverändert bleiben.

1 „Gefällt mir“

Danke Steven :slight_smile:

Ich habe ein paar technische Defizite. Meine praktische Erfahrung liegt eine Generation vor Docker! Tatsächlich erinnere ich mich, als Goslings Rechtfertigung von Java als einer leichtgewichtigen Sprache die heißeste Veröffentlichung des Monats war – damals war ich K&R C, Ingres & Oracle & Sysadmin & DBA.

Ich glaube, ich erkenne die Verwendung der Wörter „Front-End“ und „Back-End“ als Prozesse, die auf dem Server laufen, und nicht als serverseitig/clientseitig, ist das richtig?

Haben wir kooperierende Prozesse mit gemeinsamem Speicher oder Pipes oder etwas dazwischen, die auf dem Server sitzen, und dann einen TCP-verkapselten Nachrichtenstrom, der Dinge an die IP sendet, auf der die Client-Software läuft?

Hat jemand ein Blockdiagramm dieser Architektur erstellt?

Ich denke, das hat sich definitiv von Community entfernt :slight_smile: Schieben wir es zu Dev, da es mehr um die technischen Elemente geht.

1 „Gefällt mir“

Diese Diskussion scheint eine Mischung aus zwei Ideen zu sein:

  1. „Eine allgemeine Übersicht/ein Diagramm wäre hilfreich für mich, um meine Discourse-Instanz zu entwerfen.“
  2. „Ich versuche, die Funktionalität von Discourse mit meinen Anforderungen zu vergleichen, kann aber bestimmte Informationen nicht finden.“

Der erste Punkt bezüglich der Architektur wurde bereits ein wenig diskutiert, aber leider fehlt immer noch ein übergeordnetes Diagramm. Hoffentlich kann jemand mit besserem Verständnis hier mit mermaid etwas für uns zeichnen, aber ich kann zumindest (hoffentlich) etwas Anleitung für Ihre ursprünglichen Anforderungen geben.

Kann Discourse die Anforderungen und Standards für Informationssicherheit im medizinischen/behördlichen/automobilen Bereich erfüllen?

Ob Discourse für #medizinische Standards „gehärtet“ werden könnte – nein, ich weiß noch nicht, wie diese in einer bestimmten Gerichtsbarkeit aussehen, aber ich weiß, dass sie für die Zwecke von Interesse notwendig sein werden und sich geografisch unterscheiden.

Sie müssten konkreter werden, was diese Anforderungen genau sind. Da die medizinische und die Automobilwelt jedoch nicht allzu weit voneinander entfernt sind, kann ich meine Erfahrungen teilen, in der Hoffnung, dass sie hilfreich sind. Zur Information: Ich betreibe eine Innersource-Instanz für einen großen Automobilzulieferer in Deutschland. Es war ein rechtlicher Albtraum, aber mit einem naiven Maß an Hartnäckigkeit, idiotischem Durchhaltevermögen und einem unglaublich hilfsbereiten und geduldigen Rechtsteam ist es machbar. Ernsthaft, seien Sie extra nett zu Ihrem Rechtsteam :laughing:

Die wichtigsten Fragen, die Sie beantworten müssen, sind:

  1. Wer greift auf die Informationen zu?
  • Die Öffentlichkeit?
  • Mitarbeiter?
  • Eine Mischung aus Mitarbeitern und Öffentlichkeit?
  1. Welche Art von Informationen wird auf der Plattform vorhanden sein?
  • Nur öffentlich?
  • Mischung aus öffentlich und intern?
  • Vertraulich? – Beachten Sie, dass es umso schwieriger wird, je früher Sie planen, dies auf der Plattform zu hosten.
  1. Wo wird es gehostet?
  • Vor Ort
  • Von Discourse oder einem anderen Hoster

In unserem Beispiel waren wir nur intern (Mitarbeiter), hatten nur interne Informationen (d. h. Unternehmensinformationen, die nicht vertraulich sind) und haben ursprünglich selbst gehostet, sind dann aber zu Discourse für das Hosting gewechselt.

Was das Hosting mit Discourse betrifft, so sah unser Informationssicherheitsbüro keine wesentlichen Probleme, als wir uns für die Migration entschieden.

Wir verteilen diese Informationen auch über mehrere Nationen: China, Indien, Deutschland, Rumänien, USA, Frankreich usw. China war ein kleiner Schmerz, aber die Discourse-Leute haben fantastische Arbeit geleistet, um uns mit den CDN-Problemen, mit denen wir konfrontiert waren, über die Ziellinie zu bringen.

Beachten Sie, dass Frage Nummer 3: „Wo wird es gehostet?“ diejenige ist, die die meisten Ihrer Fragen zum Datenschutz und zur Sicherheit beantwortet.

Anmeldung und Autorisierung

Für die Anmeldung möchten Sie wahrscheinlich auf SAML zurückgreifen. Das Discourse-Team hilft Ihnen bei der Einrichtung, wenn Sie ein Enterprise-Kunde bei ihnen sind. Unser IDP ist nur zugänglich, wenn Sie sich hinter dem VPN unseres Unternehmens befinden. Das fügt uns eine zusätzliche Sicherheitsebene hinzu (d. h. Sie können den Anmeldebildschirm nicht einmal aufrufen, es sei denn, Sie sind in unserem Netzwerk).

SSH

Darüber hinaus bietet eine Standardinstallation SSH-Verschlüsselung. Ich bin nicht bei der CIA, also weiß ich nicht, ob sie mehr als das brauchen. :male_detective: angeblich

Discourse mit anderen Tools verbinden

Ich bin daran interessiert, eine Schnittstelle zu instrumentierten Rehabilitationswerkzeugen herzustellen und Code für die anonymisierte Datenextraktion (gdpr konform) von Fortschritts- und Wirksamkeitsmetriken zu erstellen, um Verbesserungsdaten für die Forschung zu erhalten.

Nutzen Sie die API

Für die Schnittstellen ist die Discourse API Ihr Freund. Sie können Daten mit einem API-Schlüssel und etwas Python abrufen und festlegen.

Hier gibt es eine großartige Sammlung von Beispielen: Discourse REST API comprehensive examples

Anonymisierung von Benutzerdaten zur Einhaltung der DSGVO

In Bezug auf die DSGVO könnten Sie die Daten von der Plattform extrahieren und den Benutzer zum Zeitpunkt der Quellabfrage im Daten-Explorer weglassen.

Dies steht im Gegensatz zur Verwendung der Discourse API, bei der die JSON-Antwort typischerweise die vollständigen Informationen über den Beitrag enthält, wie z. B.:

  • Der Inhalt des Beitrags (gekochtes HTML und rohes Markdown)
  • Die Beitrags-ID
  • Die Themen-ID, zu der er gehört
  • Der Benutzername des Verfassers
  • Die Beitragsnummer innerhalb des Themas
  • Die Erstellungs- und letzten Aktualisierungszeitstempel des Beitrags
  • Die Anzahl der Likes, Antworten, Zitate und so weiter.

Wie man aufsteigende Beiträge und eine vertraute Benutzeroberfläche erhält?

Ich bin daran interessiert, wie die besten Beiträge wie Sahne nach oben steigen, damit neue Benutzer nicht mit einer Discourse-Benutzeroberfläche konfrontiert werden, die ihnen fremd ist.

Sie haben es vielleicht nicht gesehen, aber Sie könnten dieses Thema kombinieren:

mit etwas wie diesem:

3 „Gefällt mir“

Für das HIPAA-Gesetz in den USA können Ärzte mit jeder Art von medizinischen Daten diese mit Familie/Freunden/Betreuern und allen anderen Personen teilen, die der Patient wählt, wenn diese ein offizielles Formular zur Freigabe von Informationen unterzeichnen. Diese haben normalerweise nur eine Gültigkeit von wenigen Monaten oder Jahren.

Ein einfaches Diagramm dafür wäre: Alle medizinischen Daten befinden sich in einem riesigen verschlossenen Tresor, der niemals für Notfälle geöffnet werden kann, es sei denn, das Notfallpersonal hat eine unterschriebene Papiere vom Patienten.

Es sei denn: Der Patient ist bewusstlos, insbesondere langfristig im Koma oder anderweitig nicht bei klarem Verstand, und/oder von einem Gericht und Richter für unfähig erklärt, seine eigenen Angelegenheiten zu regeln, in welchem Fall jemand anderes dafür ernannt werden kann.

Eines dieser beiden Szenarien könnte durch einen Schlüssel dargestellt werden, der den Tresor öffnen kann, um dann einige medizinische Daten in einen sekundären Tresor mit eingeschränktem Zugriff nur für bestimmte Personen zu verschieben.

Dies könnte eine Gruppe von Personen sein, aber sie müssten in den meisten Fällen einzeln namentlich genannt werden, um die Befugnis zu erhalten, auf medizinische Daten zuzugreifen.

https://www.cdc.gov/phlp/publications/topic/hipaa.html

1 „Gefällt mir“