<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Post Archive - CEOsBay</title>
	<atom:link href="https://ceosbay.com/tag/post/feed/" rel="self" type="application/rss+xml" />
	<link>https://ceosbay.com/tag/post/</link>
	<description>It&#039;s all about Tech</description>
	<lastBuildDate>Sun, 16 Apr 2023 08:44:45 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.1</generator>

<image>
	<url>https://i0.wp.com/ceosbay.com/wp-content/uploads/2022/11/image.jpg?fit=32%2C32&#038;ssl=1</url>
	<title>Post Archive - CEOsBay</title>
	<link>https://ceosbay.com/tag/post/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">211828771</site>	<item>
		<title>SOAP &#8211; Effiziente Möglichkeit, um Daten zwischen Systemen zu übertragen</title>
		<link>https://ceosbay.com/2023/03/23/erklaerung-soap/</link>
					<comments>https://ceosbay.com/2023/03/23/erklaerung-soap/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Thu, 23 Mar 2023 17:16:00 +0000</pubDate>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Big-Data]]></category>
		<category><![CDATA[Datenbanken]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Netzwerk]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[Sicherheit]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[Application]]></category>
		<category><![CDATA[Body]]></category>
		<category><![CDATA[Child]]></category>
		<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[CSV]]></category>
		<category><![CDATA[Daten]]></category>
		<category><![CDATA[Datenaustausch]]></category>
		<category><![CDATA[EAI]]></category>
		<category><![CDATA[Empfänger]]></category>
		<category><![CDATA[Enterprise]]></category>
		<category><![CDATA[FTP]]></category>
		<category><![CDATA[Header]]></category>
		<category><![CDATA[https]]></category>
		<category><![CDATA[IBM]]></category>
		<category><![CDATA[Information]]></category>
		<category><![CDATA[Integration]]></category>
		<category><![CDATA[IoT]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JMS]]></category>
		<category><![CDATA[Kind]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Middleware]]></category>
		<category><![CDATA[Object]]></category>
		<category><![CDATA[Post]]></category>
		<category><![CDATA[Protocol]]></category>
		<category><![CDATA[Protokoll]]></category>
		<category><![CDATA[Request]]></category>
		<category><![CDATA[Rest]]></category>
		<category><![CDATA[Richtlinien]]></category>
		<category><![CDATA[RSS]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Sender]]></category>
		<category><![CDATA[Serverless]]></category>
		<category><![CDATA[Services]]></category>
		<category><![CDATA[SOAP]]></category>
		<category><![CDATA[Source]]></category>
		<category><![CDATA[Transaktion]]></category>
		<category><![CDATA[Unternehmensanforderungen]]></category>
		<category><![CDATA[URL]]></category>
		<category><![CDATA[Verbindung]]></category>
		<category><![CDATA[Verschlüsselung]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[Ware]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[www]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1069</guid>

					<description><![CDATA[<p>SOAP (Simple Object Access Protocol) ist ein Netzwerkprotokoll, mit dessen Hilfe man Daten zwischen Systemen austauschen und RPC’s (Remote Procedure Calls) durchführen kann. SOAP ist ein industrieller Standard des World Wide Web Consortiums (W3C). Es &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/03/23/erklaerung-soap/">SOAP &#8211; Effiziente Möglichkeit, um Daten zwischen Systemen zu übertragen</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>SOAP (Simple Object Access Protocol) ist ein Netzwerkprotokoll, mit dessen Hilfe man Daten zwischen Systemen austauschen und RPC’s (Remote Procedure Calls) durchführen kann. SOAP ist ein industrieller Standard des World Wide Web Consortiums (W3C).</p>



<p>Es stützt sich auf <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a> zur Repräsentation der Daten und auf Internet-Protokolle der Transport- und Anwendungsschicht zur Übertragung der Nachrichten. Die gängigste Kombination ist SOAP über https (Hypertext Transfer Protocol) und TCP (Transmission Control Protocol). Man kann SOAP auch über das SMTP (Simple Mail Transfer Protocol) oder JMS (Jakarta Messaging) verwenden.</p>



<p>Die mit der Nachricht übermittelten Nutzdaten man nicht zwingend in <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a> senden. Andere Formate wie Base64 oder CSV sind ebenfalls möglich. Seit Version 1.2. nutzt man die Abkürzung SOAP offiziell nicht mehr als Akronym, da es erstens (subjektiv) keineswegs einfach (Simple) ist und zweitens nicht nur dem Zugriff auf Objekte (Object Access) dient.</p>



<h3 class="wp-block-heading">Kurze Zeitreise</h3>



<p>SOAP entstand aus der Weiterentwicklung der Spezifikation für <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a>-RPC im Jahr 1998. Hauptverantwortlicher Software-Entwickler damals Dave Winer und seine Firma UserLand Software in engem Austausch mit Microsoft. Dave Winter ist übrigens auch für <a href="https://ceosbay.com/2022/12/28/erklaerung-rss/" target="_blank" rel="noreferrer noopener">RSS</a> 2.0 verantwortlich. Einen Beitrag über <a href="https://ceosbay.com/2022/12/28/erklaerung-rss/" target="_blank" rel="noreferrer noopener">RSS</a> findet man <a href="https://ceosbay.com/2022/12/28/erklaerung-rss/" target="_blank" rel="noreferrer noopener">hier</a>.</p>



<p>Im Jahr 1999 fand die Veröffentlichung der Version 1.0 von SOAP statt. Dies stellt unter Anderem den Zeitpunkt dar, an dem die Entwicklung mehr Unterstützung fand. Vor allem hat sich IBM im Jahr 2000 der Entwicklung angeschlossen, was dazu führte, dass IBM, Microsoft, DevelopMentor (Don Box) und UserLand Software (Dave Winer) die Spezifikation von SOAP 1.1 beim World Wide Web Consortium (W3C) einreichten. Dabei hat man das Ziel verfolgt, eine Arbeitsgruppe zu gründen, die SOAP weiterentwickeln sollte. Das Ergebnis dieser Arbeitsgruppe ist SOAP Version 1.2, empfing im Juni 2003 die Anerkennung als recommendation (Empfehlung).</p>



<p>Wie zu Beginn des Beitrags erwähnt, hat man SOAP nicht mehr als gebräuchliche(s) Akronym bzw. Abkürzung verstanden. Der Hauptgrund dafür ist die Tatsache, dass sämtliche Deutungen für SOAP, wie Simple Object Access Protocol oder Service Oriented Architecture Protocol, nicht mehr den vollständigen Sinn von SOAP trafen. Dies ermöglichte die Anmeldung von SOAP als Markennamen in den USA.</p>



<h3 class="wp-block-heading">Wie funktioniert SOAP?</h3>



<p>SOAP ist wie zuvor beschrieben, ein Protokoll zum Austausch <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a>-Information-Set-basierter Nachrichten über ein Rechnernetz und hat den Status einer W3C-Empfehlung. Es stellt Regeln für das Nachrichtendesign auf. Regelt, wie Daten in der Nachricht abzubilden und zu interpretieren sind. Es gibt eine Konvention für entfernte Prozeduraufrufe mittels SOAP-Nachrichten vor. SOAP macht keine Vorschriften zur Semantik applikationsspezifischer Daten, die man gegebenenfalls versendet möchte, sondern stellt ein <a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Framework</a> (Siehe meinen Beitrag) zur Verfügung, welches erlaubt, dass man beliebige applikationsspezifische Informationen übertragen kann. </p>



<p>Man kann SOAP für entfernte Prozeduraufrufe ebenso nutzen wie für einfache Nachrichtensysteme. Zum Senden von Nachrichten kann man beliebige Transportprotokolle verwendet. Dazu gehören beispielsweise FTP, SMTP, https oder auch JMS. Aus Gründen der Kompatibilität nutzt man in der Praxis hierzu gängige Netzwerk-Architekturen. Auch ist mittels https die verschlüsselte Übertragung von SOAP-Nachrichten möglich. Das ermöglicht jedoch keine End-to-End-Verschlüsselung. Dies kann man durch WS-Security erreichen. Die Einbindung erfolgt lediglich auf der Ebene der Nachrichten und nicht auf der des unterliegenden Transportprotokolls. Folglich ist es so, dass man das <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a> Information Set der SOAP-Anfrage bei Nutzung von https(S) im Body eines https POST Requests als <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a> an eine gegebene URL schickt.</p>



<p>In der Regel setzt man SOAP da ein, wo der direkte Zugang fremder Systeme zu einer Informationsquelle nicht sinnvoll erscheint. Dies kann sowohl an Kompatibilitätsproblemen zwischen verschiedenen Anwendungsarchitekturen liegen aber auch an diversen Sicherheitsaspekten. So kann man einen (partiellen) Zugriff auf eine Datenbank ermöglichen, ohne dem Anwenderprogramm den direkten Zugang zu ermöglichen. Die Menge der ausführbaren Methoden reglementiert und definiert man über die SOAP-Schnittstelle.</p>



<p>Die Kommunikation mit SOAP ermöglicht die Kopplung von Systemen. Der offene Entwurf ermöglicht jedoch lediglich den Aufbau schwach gekoppelter Systeme. Die Flexibilität des Konzeptes erkauft man sich durch die Nachteile beim Übertragungsvolumen und Rechenaufwand. Dies kann teuer werden, da man das <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a>-Dokument beim Sender zunächst aufbaut und anschließend validiert. Das Konzept verfolgt eigentlich das Ziel eines leichtgewichtigen Protokolls. </p>



<p>Doch durch den flexiblen Einsatzbereich führt die zu übertragende Datei eine Reihe von Metadaten mit sich, die bei der Konstruktion des <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a>-Dokuments weiter anwächst. So führt beispielsweise das einfache Versenden von „Wahr“ oder „Falsch“ zu einem Datenvolumen von mehreren hundert Bytes. In einem stark gekoppelten System sollte dafür theoretisch ein Bit reichen. </p>



<p>Durch die Möglichkeit des flexiblen Aufbaus des Dokuments kann man jedoch auch komplexe Transaktionen in einer Anfrage atomar zusammenfassen, während man in stark gekoppelten Systemen hierzu oftmals mehrere Anfragen erstellen muss. Dies verbessert das Nutzlastverhältnis (Nutzdaten zu Meta-Daten) und den Kommunikationsaufwand (für den Aufbau einer Verbindung, nur ein Senden/Empfangen).</p>



<p>SOAP unterscheidet zwischen dem endgültigen Empfänger und den Zwischenempfängern. Dies ermöglicht es, eine Nachricht über verschiedene „Hops“ zu schicken, bei denen man sogar verschiedene Transportprotokolle verwendet. Beispielsweise kann man zum ersten Hop die Nachricht mittels <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a> Message Service schicken, im Anschluss über E-Mail und schließlich dem Empfänger mittels https weitergeben. Der Absender muss über die Zwischenhops keine Information haben, die Middleware jedoch schon.</p>



<h3 class="wp-block-heading">Wie ist eine SOAP-Nachricht aufgebaut?</h3>



<p>Eine minimale SOAP-Nachricht besteht aus einem Envelope genannten Element, dem man einen lokalen Namen zuweisen muss. Dieses Element referenziert mittels eines Namensraum-Attributes auf https://www.w3.org/2003/05/soap-envelope. Child dieses Elements muss ein Body-Element sein. Optional kann zuvor ein Header-Element stehen. In diesem kann man Meta-Informationen, beispielsweise zum Routing, zur Verschlüsselung oder zu Transaktionsidentifizierung, unterbringen. Im Body-Element sind die eigentlichen Nutzdaten untergebracht. Dies sieht dann folgendermaßen aus:</p>



<pre class="wp-block-code"><code>&lt;?xml version="1.0"?&gt;
&lt;s:Envelope xmlns:s="https://www.w3.org/2003/05/soap-envelope"&gt;
    &lt;s:Header&gt;
    &lt;/s:Header&gt;
    &lt;s:Body&gt;
    &lt;/s:Body&gt;
&lt;/s:Envelope&gt;</code></pre>



<p>Innerhalb des Body-Elements können sowohl Informationen zum Datenaustausch als auch Anweisungen für einen entfernten Prozeduraufruf stehen. Dies ist vom Empfänger entsprechend zu interpretieren.</p>



<p>Im Header gibt man den nächsten Hop (intermediary) und den endgültigen Empfänger (ultimate recipient) an. Ein intermediary kann beispielsweise die Nachricht verschlüsseln, sie loggen oder die Nachricht aufteilen. Ersteres erlaubt es, dass die Anwendungslogik sich nicht um die Sicherheit der Nachricht kümmern muss. Darum kümmert sich die Middleware. Was eine Middleware ist, erkläre ich in einem anderen Beitrag. Die Möglichkeit, dass Intermediaries beliebige Dinge tun können, ermöglicht EAI (Enterprise Application Integration).</p>



<h3 class="wp-block-heading">Fazit</h3>



<p>Viele Altsysteme verwenden möglicherweise noch SOAP. In der Vergangenheit war es auch die Lösung schlechthin. Heute ist es eher <a href="https://ceosbay.com/2022/12/23/erklaerung-rest/" target="_blank" rel="noreferrer noopener">REST</a>, welches zum Einsatz kommt und in webbasierten Szenarien häufig als die schnellere Alternative gilt.</p>



<p>Zusammengefasst kann man sagen, dass <a href="https://ceosbay.com/2022/12/23/erklaerung-rest/" target="_blank" rel="noreferrer noopener">REST</a> aus einer Reihe von Richtlinien für eine flexible Implementierung besteht und SOAP ein Protokoll mit spezifischen Anforderungen wie <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a>-Messaging ist.</p>



<p><a href="https://ceosbay.com/2022/12/23/erklaerung-rest/" target="_blank" rel="noreferrer noopener">REST-APIs</a> sind schlank und daher ideal für moderne Anwendungen geeignet, wie das Internet of Things (IoT), mobile Anwendungen und Serverless Computing. SOAP-Webservices bieten zwar integrierte Sicherheit und Transaktions-Compliance, die vielen Unternehmensanforderungen entspricht, doch die Erstellung und Wartung ist wesentlich aufwändiger. Darüber hinaus folgen auch viele öffentlich zugängliche APIsheutzutage, den REST-Richtlinien.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/03/23/erklaerung-soap/">SOAP &#8211; Effiziente Möglichkeit, um Daten zwischen Systemen zu übertragen</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2023/03/23/erklaerung-soap/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1069</post-id>	</item>
		<item>
		<title>REST &#8211; Schönheit der einfachen Architektur</title>
		<link>https://ceosbay.com/2022/12/23/erklaerung-rest/</link>
					<comments>https://ceosbay.com/2022/12/23/erklaerung-rest/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Fri, 23 Dec 2022 19:00:00 +0000</pubDate>
				<category><![CDATA[Cloud]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[7252]]></category>
		<category><![CDATA[Application]]></category>
		<category><![CDATA[Applikation]]></category>
		<category><![CDATA[Architektur]]></category>
		<category><![CDATA[Client]]></category>
		<category><![CDATA[CoAP]]></category>
		<category><![CDATA[Demand]]></category>
		<category><![CDATA[Get]]></category>
		<category><![CDATA[HATEOAS]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[https]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Mkcol]]></category>
		<category><![CDATA[Move]]></category>
		<category><![CDATA[Parser]]></category>
		<category><![CDATA[Post]]></category>
		<category><![CDATA[Protokoll]]></category>
		<category><![CDATA[Rest]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[SOAP]]></category>
		<category><![CDATA[URI]]></category>
		<category><![CDATA[URL]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[www]]></category>
		<category><![CDATA[xml]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1033</guid>

					<description><![CDATA[<p>REST &#8211; Representational State Transfer ist ein Paradigma für die Softwarearchitektur von verteilten Systemen, insbesondere für Webservices. Es ist eine Abstraktion der Struktur und des Verhaltens des WWW (World Wide Web). REST hat das Ziel, &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/12/23/erklaerung-rest/">REST &#8211; Schönheit der einfachen Architektur</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>REST &#8211; Representational State Transfer ist ein Paradigma für die Softwarearchitektur von verteilten Systemen, insbesondere für Webservices. Es ist eine Abstraktion der Struktur und des Verhaltens des WWW (World Wide Web). REST hat das Ziel, einen Architekturstil zu schaffen, der den Anforderungen des modernen Web besser genügt. Dabei unterscheidet sich REST vor allem in der Forderung nach einer einheitlichen Schnittstelle von anderen Architekturstilen.</p>



<p>Der Zweck von REST liegt schwerpunktmäßig auf der Maschine-zu-Maschine-Kommunikation. REST stellt eine einfache Alternative zu ähnlichen Verfahren wie SOAP (Simple Object Access Protocol), WSDL (Web Services Description Language) und dem verwandten Verfahren RPC (Remote Procedure Call) dar. Anders als bei vielen verwandten Architekturen kodiert REST keine Methodeninformation in den URI (Uniform Resource Identifier), da der URI Ort und Namen der Ressource angibt, nicht aber die Funktionalität, die der Web-Dienst zu der Ressource anbietet. Der Vorteil von REST liegt darin, dass im WWW bereits ein Großteil der für REST nötigen Infrastruktur (z. B. Web- und Application-Server, https-fähige Clients, HTML- und XML-Parser, Sicherheitsmechanismen) vorhanden ist und viele Web-Dienste per se REST-konform sind. Eine Ressource kann dabei über verschiedene Medientypen dargestellt werden, auch Repräsentation der Ressource genannt.</p>



<p>So ist ein Online-Dienst, der lediglich unveränderte Seiteninhalte nach dem Internetstandard https anbietet, bereits REST-konform. Dynamisch erzeugte Seiten folgen diesem Paradigma jedoch meistens nicht. So bieten beispielsweise Nachrichtenseiten sich ständig ändernde Informationen mit sowohl unterschiedlichem Format als auch Inhalt an, die nur schwer automatisch verarbeitet werden können. Bliebe das Format unverändert, so wäre eine essenzielle REST-Eigenschaft erfüllt. So ist eine Webseite, auf der ständig die aktuelle Uhrzeit in immer demselben Format abrufbar ist, REST-konform.</p>



<p>Die Bezeichnung „Representational State Transfer“ soll den Übergang vom aktuellen Zustand zum nächsten Zustand (State) einer Applikation verbildlichen. Dieser Zustandsübergang erfolgt durch den Transfer der Daten, die den nächsten Zustand repräsentieren.</p>



<h3 class="wp-block-heading">Kurze Zeitreise</h3>



<p>Das REST-Paradigma entwickelte sich aus dem 1994 von Roy Fielding entworfenen https Object Model. Fielding entwickelte seine Idee von einem einheitlichen Konzept über die Jahre weiter, bis er 2000 den REST-Architekturstil im Rahmen seiner Dissertation (<a href="https://www.ics.uci.edu/~fielding/pubs/dissertation/fielding_dissertation.pdf" target="_blank" rel="noreferrer noopener">Hier der Link zu der Arbeit</a>) veröffentlichte. Das Programmierparadigma der „RESTful Application“ wurde allerdings häufig falsch umgesetzt und findet erst seit 2014 Anklang in der Welt des WWW. In seiner Arbeit geht Fielding dabei auf die verschiedenen Anforderungen ein, die für die Webarchitektur wichtig sind.</p>



<h3 class="wp-block-heading">Wie funktioniert REST?</h3>



<p>Der Architektur-Stil verweist auf sechs Eigenschaften, die ein Dienst haben muss. Dabei ist nicht festgelegt, wie man diese Prinzipien implementieren muss. Fielding beschreibt für jedes Architekturprinzip dessen Vor- und Nachteile. Dabei handelt es sich um Client-Server, Zustandslosigkeit, Caching, Einheitliche Schnittstellen, Mehrschichtige Systeme und optional Code on Demand, auf die ich nachfolgend eingehen werde.</p>



<ul class="wp-block-list">
<li>Client-Server (Es gilt generell die Anforderung, dass alle Eigenschaften der Client-Server-Architektur gelten. Der Server stellt dabei einen Dienst bereit, der bei Bedarf vom Client abgefragt wird. Der Hauptvorteil dieser Anforderung ist die einfache Skalierbarkeit der Server, da diese unabhängig vom Client agieren. Dies ermöglicht des Weiteren eine unterschiedlich schnelle Entwicklung der beiden Komponenten.)<br></li>



<li>Zustandslosigkeit (Jede REST-Nachricht enthält alle Informationen, die für den Server bzw. für den Client notwendig sind, um die Nachricht zu interpretieren. Weder der Server noch die Anwendung soll Zustandsinformationen zwischen zwei Nachrichten speichern. Man spricht daher von einem zustandslosen (englisch: stateless) Protokoll. Jede Anfrage eines Clients an den Server ist insofern in sich geschlossen, als dass sie sämtliche Informationen über den Anwendungszustand beinhaltet, die vom Server für die Verarbeitung der Anfrage benötigt. Zustandslosigkeit in der hier beschriebenen Form begünstigt die Skalierbarkeit eines Webservices. Beispielsweise können eingehende Anfragen im Zuge der Lastverteilung unkompliziert auf beliebige Maschinen verteilt werden, da jede Anfrage in sich geschlossen ist und Anwendungsinformationen somit ausschließlich auf der Seite des Clients vorgehalten werden. Aus diesem Grund ist auf der Seite des Servers keine Sitzungsverwaltung erforderlich. In der Praxis nutzen deswegen viele https-basierte Anwendungen Cookies und andere Techniken, um Zustandsinformationen auf der Client-Seite zu behalten. Weiterhin begünstigt wird die Ausfallsicherheit, weil die Zustandslosigkeit fordert, dass transaktionale Datenübertragung in einem einzigen Seitenaufruf erfolgt. Die Zustandslosigkeit bringt dabei aber den Nachteil mit, dass sich die Netzwerkperformance verschlechtert. Da bei jeder Abfrage alle Informationen zum Interpretieren mitgeschickt werden müssen, sind aufwendigere Abfragen nötig, als wenn sich der Server die Interaktionen merken würde.)<br></li>



<li>Caching (https-Caching soll genutzt werden, wobei aber gilt: Eine Anfrage, die nicht gestellt werden muss, ist die schnellste Anfrage. Fielding führt dabei den Nachteil auf, dass der Client auf veraltete Cache-Daten zurückgreifen könnte, statt die neue Ressource abzufragen. Wir kennen dies beispielsweise, wenn wir an einer Website unsere Änderungen vorgenommen haben aber die aktualisierten Informationen nach der Synchronisierung mit dem Server nicht richtig angezeigt werden bzw. lediglich die alten Informationen)<br></li>



<li>Einheitliche Schnittstelle (Dies ist das Hauptunterscheidungsmerkmal aller weiteren Architekturstile. Dabei besteht diese aus vier weiteren Eigenschaften.)</li>
</ul>



<ol class="wp-block-list" type="1">
<li>Die Adressierbarkeit von Ressourcen, bei der jede Information, die über einen URI kenntlich gemacht wird, als Ressource gekennzeichnet wird. Jeder REST-konforme Dienst eine eindeutige Adresse hat und dem Uniform Resource Locator (URL). Diese „Straße und Hausnummer im Netz“ standardisiert den Zugriffsweg zum Angebot eines Webservices für eine Vielzahl von Anwendungen (Clients). Eine konsistente Adressierbarkeit erleichtert es außerdem, einen Webservice als Teil eines Mashups weiterzuverwenden.<br></li>



<li>Repräsentationen zur Veränderung von Ressourcen, wodurch die unter einer Adresse zugänglichen Dienste unterschiedliche Darstellungsformen (Repräsentationen) haben können. Ein REST-konformer Server kann je nachdem, was die Anwendung anfordert, verschiedene Repräsentationen einer Ressource ausliefern, z. B. in verschiedenen Sprachen oder Formaten (HTML, JSON oder XML) oder auch die Beschreibung oder Dokumentation des Dienstes. Die Veränderung einer Ressource (also deren aktuellen Status) soll nur über eine Repräsentation erfolgen.<br></li>



<li>Selbstbeschreibende Nachrichten, REST-Nachrichten sollen selbstbeschreibend sein. Dazu zählt u. a. die Verwendung von Standardmethoden. Über diese Standardmethoden lassen sich Ressourcen manipulieren.<br></li>



<li>„Hypermedia as the Engine of Application State“ (HATEOAS)&nbsp;laut Fielding die wichtigste Eigenschaft</li>
</ol>



<p>Ziel ist die Einheitlichkeit der Schnittstelle und somit ihre einfache Nutzung.&nbsp;</p>



<ul class="wp-block-list">
<li>Mehrschichtige Systeme, bei dem die Systeme mehrschichtig aufgebaut sein sollen. Dadurch reicht es, dem Anwender lediglich eine Schnittstelle anzubieten. Dahinterliegende Ebenen können verborgen bleiben und somit die Architektur insgesamt vereinfachen. Vorteile dabei sind die bessere Skalierbarkeit der Server, sowie eine mögliche Abkapselung durch Firewalls. Durch Cache-Speicher an den Grenzen (z.B. vom Server zum Web) steigert man die Effizienz der Anfragen (Siehe Caching).<br></li>



<li>Code on Demand, wobei diese Forderung von Fielding optional ist. Unter Code on Demand versteht man die Übertragung an den Client Code erst im Bedarfsfall. Folglich zur lokalen Ausführung.&nbsp;Ein Beispiel hierfür wäre die Übertragung von JavaScript-Code bei einer HTML-Repräsentation.</li>
</ul>



<p>Folglich kommt für die Umsetzung des REST-Paradigmas ein zustandsloses Client-Server-Protokoll zum Einsatz. Als Anwendungsschicht-Protokolle werden hauptsächlich https und https eingesetzt. Dies liegt unter anderem daran, dass sich diese im WWW etabliert haben, über einen vergleichsweisen einfachen Aufbau verfügen und mit so gut wie jeder Firewall kompatibel sind. REST vereinheitlicht die Schnittstelle zwischen Systemen auf eine überschaubare und bezüglich des zu erwartenden Verhaltens standardisierte Menge von Aktionen. Welche Aktionen dies sind, ist in REST nicht festgelegt aber alle Aktionen sind allgemein definiert. In der Regel durch die verwendeten Protokolle der Anwendungsschicht.</p>



<p>Während REST als Abstraktion des WWW keine spezielle Implementierung und kein spezielles Protokoll fordert, ist doch zu beobachten, dass fast ausschließlich https zum Einsatz kommt. Dadurch werden auch die Menge der Aktionen festgelegt.</p>



<p>Wird über https zugegriffen, so gibt die verwendete https-Methode, darunter GET, POST, PUT und DELETE, an, welche Operation des Dienstes gewünscht ist. https schreibt vor, dass GET „safe“ (sicher) sein muss, was bedeutet, dass diese Methode nur Informationen beschafft und keine sonstigen Effekte verursacht. Die Methoden GET, HEAD, PUT und DELETE müssen laut https-Spezifikation idempotent (dasselbe) sein, was in diesem Zusammenhang bedeutet, dass das mehrfache Absenden der gleichen Anforderung sich nicht anders auswirkt als ein einzelner Aufruf. Abhängig von der Implementierung können noch weitere https-Befehle unterstützt werden. Dazu gehören COPY, MOVE, MKCOL, LOCK und UNLOCK des WebDAV-Protokolls, sowie LINK und UNLINK aus RFC 2068. Bei der Kommunikation über UDP kann zudem das CoAP aus RFC 7252 statt https eingesetzt werden, welches leicht abweichende Bedeutungen für GET, POST, PUT und DELETE besitzt.</p>



<h3 class="wp-block-heading">Fazit</h3>



<p>Die meisten Unternehmen verwenden den REST-Architekturstil für die Entwicklung / Implementierung von Webdiensten, da es sich um eine einfache und benutzerfreundliche Oberfläche handelt, die weniger Schulung für die vorhandenen / neuen Mitglieder des Projekts erfordert. Unternehmen erwägen REST zusammen mit ihren vorhandenen Webdiensten.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/12/23/erklaerung-rest/">REST &#8211; Schönheit der einfachen Architektur</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2022/12/23/erklaerung-rest/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1033</post-id>	</item>
		<item>
		<title>Mastodon &#8211; Open Source Twitter Alternative</title>
		<link>https://ceosbay.com/2022/11/15/open-source-twitter-alternative-mastodon/</link>
					<comments>https://ceosbay.com/2022/11/15/open-source-twitter-alternative-mastodon/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Tue, 15 Nov 2022 12:40:50 +0000</pubDate>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Soziale Medien]]></category>
		<category><![CDATA[Anwendungsentwicklung]]></category>
		<category><![CDATA[Applikation]]></category>
		<category><![CDATA[Apps]]></category>
		<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Client]]></category>
		<category><![CDATA[Clone]]></category>
		<category><![CDATA[Entwickler]]></category>
		<category><![CDATA[Federation]]></category>
		<category><![CDATA[Finanzamt]]></category>
		<category><![CDATA[Förderation]]></category>
		<category><![CDATA[Gemeinnützig]]></category>
		<category><![CDATA[Gesellschaft]]></category>
		<category><![CDATA[gGmbH]]></category>
		<category><![CDATA[GmbH]]></category>
		<category><![CDATA[Gründungsurkunde]]></category>
		<category><![CDATA[Haftung]]></category>
		<category><![CDATA[Mastodon]]></category>
		<category><![CDATA[Medien]]></category>
		<category><![CDATA[Netzwerk]]></category>
		<category><![CDATA[Open]]></category>
		<category><![CDATA[Post]]></category>
		<category><![CDATA[Posting]]></category>
		<category><![CDATA[Protonmail]]></category>
		<category><![CDATA[Social Media]]></category>
		<category><![CDATA[Source]]></category>
		<category><![CDATA[Twitter]]></category>
		<category><![CDATA[Twitter-Klon]]></category>
		<category><![CDATA[UX-Designer]]></category>
		<category><![CDATA[Web]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=556</guid>

					<description><![CDATA[<p>Aufgrund der aktuellen Gegebenheiten bei Twitter, sind in jüngster Zeit viele Nutzer zu Mastodon gewechselt. Einer Open Source-Twitter-Alternative, die sich als Microblog zu erkennen gibt. Seit dem 27. Oktober hat Mastodon viele neue Nutzer gewonnen &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/11/15/open-source-twitter-alternative-mastodon/">Mastodon &#8211; Open Source Twitter Alternative</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Aufgrund der aktuellen Gegebenheiten bei Twitter, sind in jüngster Zeit viele Nutzer zu Mastodon gewechselt. Einer <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/">Open Source</a>-Twitter-Alternative, die sich als Microblog zu erkennen gibt. Seit dem 27. Oktober hat Mastodon viele neue Nutzer gewonnen und damit seine Nutzerbasis signifikant vergrößert. Zum Zeitpunkt der Erstellung dieses Beitrags, also am 15.11.2022, 12:02 Uhr, beträgt die Anzahl der monatlich aktiven Nutzer stolze ca. 1,8 Millionen.</p>



<h3 class="wp-block-heading">Was ist Mastodon?</h3>



<p>Mastodon, 2016 von dem deutschen Softwareentwickler, Eugen Rochko, aus Berlin, gegründet. Im Gegensatz zu den beliebten kommerziellen Social-Media-Plattformen, ist Mastodon <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/">Open Source</a>. Folglich dient die Anwendung im Idealfall dem Ziel, der Öffentlichkeit einen Mehrwert zu schaffen und nicht primär irgendwelchen Aktionären. </p>



<p>Den Begriff <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/">Open Source</a> habe ich bereits mehrfach in meinen Beiträgen erwähnt und werde es in einem der nachfolgenden Beiträge genauer erklären. Laut seiner Aussagen in seinem Blog arbeitete Eugen Rochko 5 Jahre lang als Einzelunternehmer an dem Projekt, mit dem er unter anderem auch seinen Lebensunterhalt bestritt, bevor er sich als Angestellter des gegründeten Unternehmens ein Gehalt ausgezahlt hat. 8 Jahre sollen die juristischen Angelegenheiten für die ordnungsgemäße Gründung gefressen haben.</p>



<p>(Hatte ich schon erwähnt, wie toll Deutschland als Gründungsland und Tech-Standort funktioniert? 😉) </p>



<p>Laut seiner Aussagen, konnten mehr Ressourcen für Dinge wie die Einstellung zusätzlicher Entwickler, UX-Designer, die Entwicklung offizieller Apps usw. aufgebracht werden. Im Juni 2021 konnte dann die Mastodon gGmbH (gemeinnützige Gesellschaft mit beschränkter Haftung) offiziell eingetragen werden. Eine kurze Erklärung, was eine gGmbH ist, erfolgt gleich im Anschluss.</p>



<h3 class="wp-block-heading">Was ist eine gGmbH?</h3>



<p>Eine gemeinnützige Gesellschaft mit beschränkter Haftung ist im Grunde genommen ähnlich strukturiert wie eine gewinnorientierte Gesellschaft mit beschränkter Haftung. </p>



<p>Mit ein paar wichtigen Unterschieden:</p>



<ul class="wp-block-list">
<li>Die Gründungsurkunde der Gesellschaft ist so verfasst, dass die Tätigkeit der Gesellschaft auf Ziele ausgerichtet ist, die der Allgemeinheit zugute kommen</li>



<li>Die Gesellschafter dürfen keine Einkünfte aus der Tätigkeit der Gesellschaft erhalten und können höchstens die Gelder abheben, die sie ursprünglich eingezahlt haben</li>



<li>Die Mitarbeiter dürfen keine außerordentlich hohen Löhne erhalten und die Gesellschaft kann Spenden erhalten, die dann steuerfrei sind, obwohl alle anderen Einkünfte, die nicht der Definition einer Spende entsprechen, weiterhin mit verschiedenen Steuern belegt werden</li>



<li>Um eine solche juristische Person zu gründen, muss die Gründungsurkunde einer Prüfung durch das Finanzamt standhalten und die Gründer müssen ein Startkapital von 25.000 EUR einzahlen, wie es bei einer GmbH üblich ist.</li>
</ul>



<h3 class="wp-block-heading">Weiter mit &#8222;Was Mastodon eigentlich ist&#8230;&#8220;</h3>



<p>Mastodon mag auf den ersten Blick wie ein Twitter-Klon aussehen aber das System hinter der Microblogging-Plattform ist etwas komplexer. Der Dienst ist dezentralisiert. Nicht im Sinne einer Blockchain. Die werde ich auch noch genauer unter die Lupe nehmen und in einem Beitrag thematisieren. Sie beschreibt sich selbst als &#8222;Federation&#8220;. Mit Föderation, in diesem Kontext, ist eine Form der Dezentralisierung gemeint, die anstelle eines zentralisierten Dienstes, den alle Menschen nutzen, mehrere Dienste, die von einer beliebigen Anzahl von Menschen zur Verfügung gestellt und genutzt werden kann. </p>



<p>Eine Mastodon-Webseite kann selbstständig funktionieren. Genau wie bei einer herkömmlichen Webseite, melden sich die Benutzer*Innen an, posten Nachrichten, laden Bilder hoch und sprechen miteinander. Im Gegensatz zu einer herkömmlichen Webseite können jedoch Mastodon-Webseiten mit den Nutzern interagieren und auch ihre Nutzer können untereinander kommunizieren. So als ob man eine E-Mail von einem Gmail-Konto an jemanden schickt, der bei beispielsweise bei Fastmail, ProtonMail oder einem anderen E-Mail-Anbieter registriert ist. Solange man die Adresse des Empfängers kennt, kann man jeden auf einer beliebigen Seite mit seiner Adresse erwähnen oder benachrichtigen.</p>



<h3 class="wp-block-heading">Wie läuft die Sache mit der Registrierung/Anmeldung?</h3>



<p>Wenn man ein Konto zum ersten Mal erstellt, wählt man einen Server aus (Ähnlich wie bei der Eröffnung eines E-Mail-Kontos bei einem Provider), der die Adresse des Profils generiert. Wenn man sich zum Beispiel über den &#8222;ioc.exchange&#8220; bei Mastodon anmeldet, lautet die Adresse @[Benutzername]@ioc.exchange. Unabhängig davon, bei welchem Server man sich anmeldet, kann man mit Benutzern von anderen Servern kommunizieren, so wie Gmail-Nutzer beispielsweise Protonmail-Nutzer anschreiben und umgekehrt. Allerdings kann es sein, dass einige Server andere Server blockieren, da sie nicht so ganz miteinander klarkommen (Gründe hierfür sind beispielsweise Interessenkonflikte). Folglich kann mit niemandem eines blockierten Servers kommunizieren werden.</p>



<h3 class="wp-block-heading">Das Mastodon Jargon bzw. die Fachsprache</h3>



<p>Mastodon-Benutzer bezeichnen die einzelnen Gemeinschaften im Allgemeinen als &#8222;Instanzen&#8220; oder Server. Diese Mastodon-Server können von Einzelpersonen, Gruppen oder Organisationen erstellt und betrieben werden, die jeweils ihre eigenen Regeln für die Anmeldung von Benutzern sowie ihre eigenen Moderationsrichtlinien haben. Bei einigen Servern kann jeder mitmachen, während andere nur auf Einladung oder mit Genehmigung eines Administrators betrieben werden. Ein Server für professionelle Wissenschaftler verlangt beispielsweise, dass die Bewerber einen Link zu ihrer Forschung angeben, um zu zeigen, dass sie tatsächlich in einem professionellen akademischen Kontext bzw. Umfeld arbeiten.</p>



<p>Die Wahl des Servers, auf dem man das eigene Konto registrieren möchte, mag aufwändig erscheinen &#8211; Aber es ist möglich, das Konto später wieder zu verschieben. Aus diesem Grund ist die Auswahl des Servers nicht fundamental bzw. unumkehrbar. Außerdem kann man nach wie vor anderen Personen folgen, unabhängig davon, auf welchem Server man sich befindet.</p>



<p>Mastodon verwendet ein standardisiertes, offenes Protokoll zur Umsetzung des Verbunds. Es wird als ActivityPub bezeichnet. Jede Software, die von und durch die Federation über ActivityPub implementiert wird, kann nahtlos mit Mastodon kommunizieren, genau wie Mastodon-Webseiten miteinander kommunizieren.</p>



<p>Das Fediverse (&#8222;federated universe&#8220;) ist die Bezeichnung für alle Webseiten, die über ActivityPub und das www (World Wide Web) miteinander kommunizieren können. Dazu gehören alle Mastodon-Server und auch andere Implementierungen wie:</p>



<ul class="wp-block-list">
<li>Pleroma &#8211; Ein modulares Microblogging-System</li>



<li>Pixelfed &#8211; Eine föderierte Plattform für die gemeinsame Nutzung von Bildern, mit der man Medienbeiträge teilen und konsumieren kann</li>



<li>Misskey &#8211; Das neben Microblogging auch ein anpassbares Dashboard enthält</li>



<li>PeerTube &#8211; Mit dem man Videos in Kanäle hochladen kann</li>



<li>Plume &#8211; Mit dem man längere Artikel veröffentlichen kann</li>



<li>Und viele mehr, da es sich um individuelle und persönliche Webseiten handelt</li>
</ul>



<p>Mastodons Äquivalent von Tweets werden als &#8222;Toots&#8220; bezeichnet. Doch dieser Begriff scheint nicht mehr so beliebt zu sein und wird von den Nutzern eher als &#8222;Posts&#8220; bezeichnet. Dennoch wird der Begriff &#8222;Toot&#8220; immer noch auf älteren Clients von Drittanbietern verwendet. </p>



<p>Es unterstützt eine Reihe von Twitter-Konventionen wie Antworten, Retweets, Favoriten, Lesezeichen und Hashtags. Aber Retweets werden als &#8222;Boosts&#8220; bezeichnet und es unterstützt nicht das Konzept der Zitat-Tweets. Dies war eine bewusste Entscheidung des Gründers. Seiner Meinung nach ermutigt es das Individuum mit der Audienz zu interagieren, statt mit einer spezifischen Person.</p>



<p>Auch die Mastodon-Listen scheinen etwas anders zu funktionieren als bei Twitter, da man nur Personen zu einer Liste hinzufügen kann, denen man bereits folgt. Und Direktnachrichten auf Mastodon sind nur Beiträge mit dem @Benutzernamen, keine privaten Nachrichten, die in einem DM-Posteingang landen.</p>



<h3 class="wp-block-heading">Was klassifiziert Mastodon als Open Source?</h3>



<p>Jeder kann Mastodon herunterladen, verändern und auf seinem eigenen Server installieren &#8211; Das Urheberrecht liegt nicht bei den Entwicklern der Plattform.</p>



<p>Dies bedeutet jedoch nicht, dass man den Code von Mastodon ohne Quellenangabe einfach so übernehmen kann, wie die Social-Media-Plattform des ehemaligen Präsidenten Donald Trump, &#8222;Truth&#8220; im Jahr 2021, die Runde machte. Freie Software steht in der Regel unter der Lizenz <a rel="noreferrer noopener" href="https://www.fsf.org/news/agplv3-pr" target="_blank">AGPL</a>. Diese erlaubt es, den Code zu benutzen und zu verändern, wenn man sich dabei an die Lizenzvereinbarungen hält. Die AGPL-Lizenz schreibt vor, dass die Software auch nach ihrer Veränderung öffentlich zugänglich bleibt. Das soll verhindern, dass kommerzielle Anbieter*Innen sich den Code aneignen, ohne der Allgemeinheit etwas zurückzugeben.</p>



<h3 class="wp-block-heading">Gibt es im Vergleich zu Twitter irgendwelche Nachteile?</h3>



<p>Soweit ich es beurteilen kann, ist die Nutzerbasis von Mastodon im Vergleich zu Twitter immer noch sehr klein. Es ist vergleichsweise auch weitaus weniger intuitiv zu bedienen, da es nicht für ein großes globales Publikum wie Twitter ausgelegt ist. Dies kann sich aber mit der Zeit ändern. Vor allem dann, wenn sich dem Projekt mehr Entwickler anschließen.</p>



<p>Und da die Ausstattung, damit sind die Hardware-Ressourcen gemeint, von Mastodon noch nicht so gut ist wie die von Twitter, funktioniert es scheinbar hin und wieder nicht so gut. In den letzten Tagen war der Dienst zeitweise träge, wenn nicht sogar völlig zum Stillstand gekommen, da sich die Server an den massiven Zustrom neuer Nutzer erst anpassen mussten. Dies kann sich auch auf andere Bereiche der Nutzung auswirken. Vor allem wenn man versucht, auf die Schnelle eine Reihe von Freunden auf dem Dienst zu folgen, und feststellt, dass man zwischendurch warten muss, weil Restriktionen auftreten.</p>



<h3 class="wp-block-heading">Was sind die Vorteile von Mastodon im Vergleich zu Twitter?</h3>



<p>Allem voran, es ist <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/">Open Source</a> und vor allem dezentral. Ob es dem Twitter-Hype gleichkommt, kann ich mir persönlich nicht vorstellen. Einige Nutzer können Mastodon jedoch Twitter vorziehen, da es von Natur aus individueller anpassbar ist. Im Gegensatz zu Twitter haben die einzelnen Communities unterschiedliche Inhaltsrichtlinien, die eine Vielzahl von unterschiedlichen Nutzererfahrungen ermöglichen, die man so bei Twitter nicht hat. Und obwohl die Nutzerbasis auf Mastodon kleiner ist, kann dies manchmal zu persönlicheren und direkteren Gesprächen führen, als wenn man sozusagen ins Leere tweetet.</p>



<h3 class="wp-block-heading">Wie steht es mit der Sicherheit?</h3>



<p>Mastodon ist das, was man daraus macht. Aufgrund des dezentralen Charakters von Mastodon, kann man den eigenen Wünschen entsprechend, ein kontrolliertes Online-Erlebnis, mit strengeren Schutzmaßnahmen gegen Belästigungen erschaffen, wenn man einen Server erstellt. Einige Mastodon Funktionen existieren explizit für die Eindämmung von Belästigungen. Man kann zum Beispiel nur nach Hashtags suchen. Nicht aber nach Wörtern, die in einem Beitrag vorkommen. Wenn man also möchte, dass ein Beitrag auffindbar ist, kann man es taggen. Wenn das Publikum eingeschränkt werden soll, kann niemand den Tweet über beispielsweise &#8222;Teureres Parfüm&#8220; finden, indem nach &#8222;Teureres Parfüm&#8220; gesucht wird, wenn es nicht getagged wurde.</p>



<p>Eine textbasierte Suche kann jedoch Beiträge anzeigen, die man selbst geschrieben, favorisiert oder geboosted hat. Auch sind die Beiträge auffindbar, in denen jemand die eigene Person erwähnt oder getagged hat..</p>



<p>Der Dienst verfügt über eine weitere praktische Funktion, die es Nutzern ermöglicht, direkt im Erstellungsfeld eine Inhaltswarnung zu einem Beitrag hinzuzufügen. Einige Mastodon-Nutzer haben sich in letzter Zeit einen Spaß daraus gemacht und andere gewarnt, dass ihr Beitrag ein Twitter-Drama zum Inhalt hat.</p>



<h3 class="wp-block-heading">Können Bilder/Medien gepostet werden?</h3>



<p>Wie bereits erwähnt, unterstützt Mastodon viele Twitter-Konventionen. Die Unterstützung für Medien ist jedoch relativ begrenzt. Twitter untertützt eine Vielzahl von Medien und anderen Daten, die man an Tweets angehängten kann. Einschließlich der eignen sozialen &#8222;Spaces&#8220;, die Audio, Fotos, Videos, GIFs, Umfragen, genaue Ortsangaben und experimentelle &#8222;Status&#8220;-Tags enthalten. Mastodon unterstützt lediglich Bilder, Videos, Audio und Umfragen.</p>



<p>Man kann einem Beitrag bis zu vier Bilder mit einer Größe von bis maximal 8 Megabyte hinzufügen. Videos und Audiodateien können beliebig lang sein, die Dateigröße ist jedoch auf 40 Megabyte begrenzt.</p>



<h3 class="wp-block-heading">Kann man privat Freunden schreiben/posten?</h3>



<p>Ähnlich wie bei Twitter soll es den Nutzern möglich sein, die Sichtbarkeit der Tweets durch die &#8222;Circle-Funktion&#8220; einzuschränken. So bietet Mastodon die Möglichkeit, die Privatsphäre eines Beitrags zum Zeitpunkt der Erstellung festzulegen. Beiträge können so eingestellt werden, dass sie für alle sichtbar sind. Auch so, dass sie nicht gelistet werden. Man kann sie von den &#8222;discovery features&#8220; ausschließen. Nur für die eignen Follower sichtbar machen oder nur für die ausschließlich erwähnten Nutzer sichtbar machen.</p>



<h3 class="wp-block-heading">Kann man wie bei &#8222;Twitter-Blue&#8220; verifiziert werden?</h3>



<p>Es gibt kein universelles Verifizierungssystem wie bei Twitter. Einige Server überprüfen die Benutzeranmeldungen und man kann sich in gewisser Weise selbst verifizieren. Dies macht man, indem man Links zu dem eigenen Mastodon-Profil hinzufügt. Diese müssen ein bestimmtes Attribut (rel=&#8220;me&#8220;) haben, um zu beweisen, dass man die Person ist, die man vorgibt zu sein.</p>



<p>Einige Server machen sich zurzeit mit der Verifizierung auf eine weniger offizielle Art und Weise einen Spaß. Auf dem Server mstdn.social kann man beispielsweise dem Anzeigenamen blau-weiße Häkchen und andere Emoji hinzufügen, die einen verifiziert aussehen lassen, obwohl diese Emojis keinerlei Bedeutung haben &#8211; So ähnlich wie das neue Verifizierungssystem von Twitter, nur kostenlos! 😉</p>



<h3 class="wp-block-heading">Ist Mastodon hier, um zu bleiben?</h3>



<p>Mastodon erfährt einen massiven Zustrom neuer Nutzer von Twitter. So viel ist jedenfalls klar. Ob sich dieses Wachstum fortsetzen kann, wird sich zeigen. Mit nur 1,8 Millionen Nutzern am Tag ist Mastodon weitaus kleiner als Twitter, welches Stand heute über 206 Millionen täglich aktive Nutzer zählt, die darüber hinaus auch noch monetisiert werden können. Dennoch sind nicht alle sozialen Netzwerke gleich und vielleicht zieht man es auch vor, auf einem eigenen Server über Spiele zu plaudern, anstatt in ein Reich des Wahnsinns zu twittern. Oder aber man ist fasziniert von dezentralisierten Systemen und macht allein schon aus diesem Grund mit.</p>



<h3 class="wp-block-heading">Kann man von Twitter zu Mastodon cross-posten?</h3>



<p>Ja, dies scheint mithilfe von Tools von Drittanbietern möglich zu sein. So kann man mit den gängigen Autorisierungen, Twitter-Posts direkt zu Mastodon weiterleiten. Hierzu gibt es bereits einige Repositories auf GitHub, die man dafür nutzen kann. Auf GitHub und Repositories gehe ich in einem späteren Beitrag ein.</p>



<h3 class="wp-block-heading">Fazit</h3>



<p>Alles in allem finde ich <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/">Open Source</a> Anwendungen grundsätzlich gut. Ob sich Mastodon durchsetzen wird, lässt sich in diesem Augenblick wohl eher schlecht als recht sagen. Auch sollte man nicht vergessen, dass sich im Jahr 2019 das rechtsradikale Netzwerk „Gab“ mit ungefähr einer Millionen Nutzer*Innen auf Mastodon niederließ und damit eines der größten Knotenpunkte darstellte. Aus diversen Foren habe ich erfahren, dass Administratoren vieler Instanzen Gab blockiert haben (Hierfür ist ein einfacher Eintrag in den Einstellungen der jeweiligen Instanz nötig). </p>



<p>Folglich wurden Nachrichten &#8222;Toots&#8220; von Gab nicht mehr weitergeleitet, man konnte die Nachrichten auch nicht mehr in der öffentlichen Timeline sehen und man konnte Gab Nutzer nicht suchen bzw. finden.&nbsp;Die Entwickler*Innen von Mastodon selbst distanzierten sich umgehend von Gab. Ich bin jetzt auf jeden Fall mal dabei und werde mich die Tage, falls ich etwas Zeit finde, mehr damit beschäftigen. So gesehen, war ich bereits ende 2018 mal online, doch irgendwie wurde der Server scheinbar gelöscht. Heute findet man mich auf Mastodon über @coezbay@ioc.exchange &#8211; Erst einmal nicht so aktiv und eher aus Forschungszwecken dabei 😉</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/11/15/open-source-twitter-alternative-mastodon/">Mastodon &#8211; Open Source Twitter Alternative</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2022/11/15/open-source-twitter-alternative-mastodon/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">556</post-id>	</item>
	</channel>
</rss>
