rss feed

Seit einiger Zeit (eigentlich schon recht lange) arbeite ich daran ICE¹ aus meinem Videochat und Instant Messenger Projekt Voptop² zu entfernen. Bisher verwende ich dafür eine Bibliothek Namens libnice³, mit der bin ich aber nicht besonders zufrieden. Der Verbindungsaufbau dauert ewig und die Verbindung, die damit entsteht, ist auch nicht besonders stabil. Von Datendurchsatz und Latenz ganz zu schweigen. Für Videokonferenzen meiner Meinung nach völlig ungeeignet und besonders toll ist die API auch nicht gerade. Am Ende war es im Grunde auch immer so, dass via ICE nur eine Verbindung mittels eines TURN4 Server erzeugt werden konnte, man also bei üblichen Internetanbindungen in unseren Breitengraden über einen Router quasi nie ohne Relay auskam. STUN5 funktionierte bestenfalls in ausnahmen.
Am Ende habe ich mich dafür entschieden ein eigenes Gateway/Relay für Voptop zu programmieren. Das Ganze wollte ich auf Basis von „none blocking sockets“ machen und tat ich auch. Dafür habe ich die Sockets folgendermaßen zu nicht blockierend erklärt:

bool
CSockStream::setNoneBlocking() {
if (mSocket < 0) return false;

int flags = fcntl(mSocket, F_GETFL, 0);
if (flags == -1) return false;
flags = (flags | O_NONBLOCK);
return fcntl(mSocket, F_SETFL, flags) == 0;
}

Das ganze funktioniert auch wunderbar, so lange man es als Client <-> Client Anwendung auf dem eigenen Rechner laufen lässt, es funktioniert sogar noch hervorragend, wenn man es auf Rechnern im eigenen lokalen Netzwerk laufen lässt Aber wehe man versucht es über ein weniger transparentes und zuverlässiges Netzwerk (unser gutes altes Internet zum Beispiel). Da wird das Ganze quasi zum Flöhehüten. Das, was man sendet, kommt bestenfalls sporadisch so an, wie man es raus schickt. Gerne kommt es teilweise an, oder in mehreren Häppchen, von Zeit zu Zeit auch mal gar nicht. Wenn es darum geht, verschlüsselte Daten zu transferieren, ist das der Super GAU.
Ich habe mich letztlich entschieden quasi eigene „None blocking sockets“ zu entwickeln, einfach in dem ich zuvor prüfe ob das Lesen eines Sockets blockieren würde, und sollte es so seien darauf zu verzichten bis der Socket verspricht es nicht zu tun. Das Ganze habe ich mit folgender Methode gemacht:

bool
CSockStream::isSocketReady() {
bool             res;
  fd_set          sReady;
  struct timeval  nowait{};

  FD_ZERO(&sReady);
  FD_SET(this->mSocket,&sReady);
  memset((char *)&nowait,0,sizeof(nowait));

  select(this->mSocket + 1, &sReady, nullptr, nullptr, &nowait);
  if( FD_ISSET(this->mSocket,&sReady) )
    res = true;
  else
  res = false;

  return res;
}

Nur wenn mir diese Methode true zurückgibt und damit signalisiert das der Socket gelesen werden kann, ohne zu blockieren, wird von dem Socket gelesen. Auf die Art und Weise habe ich mir quasi lesende nicht blockierende Sockets programmiert, mit der Zuverlässigkeit blockierender Sockets.
Mittlerweile betreibe ich das ganze seit einigen Tagen auf einem Testserver sehr erfolgreich und kann das ganze bald mit einem neuen Release von Voptop komplett in die freie Wildbahn entlassen.

1) https://tools.ietf.org/html/rfc5245
2) https://www.voptop.com
3) https://libnice.freedesktop.org/
4) https://tools.ietf.org/html/rfc5766
5) https://tools.ietf.org/html/rfc5389

HP Elitebook 735 G5 frontSchon letztes Jahr im August habe ich mir ein neues Notebook zugelegt und mein altes Lenovo Thinkpad T61 in den wohl verdienten Ruhestand versetzt.
Dieses Mal wollte ich mir aber nicht einfach wieder ein Notebook zusätzlich zu meiner Workstation zulegen, sondern ein Notebook, das mein altes T61 sowie meine alte Workstation ersetzt. Die Kiste muss also schon ordentlich Power haben, denn moderne Entwicklungsumgebungen sind echte Ressourcen Fresser. Außerdem wollte ich zumindest auch einfache Spiele Zocken können. Meine Zockerzeit ist zwar längst vorbei, aber von Zeit zu Zeit überkommt es mich dann doch.
Ferner brauch ich auch durchaus Rechenleistung für das, was ich so programmiere. Für Voptop¹ zum Beispiel muss ich Video und Audiostreams live encodieren, verschlüsseln und das ganze auch noch debuggen können. Außerdem sind Dinge wie statische Codeanalysen und Memory-Leak Erkennung wahnsinnig rechenintensiv. Darüber hinaus hab ich mir schon vor Längerem angewöhnt, meine Rechner und Notebooks massiv überzudimensionieren und die Geräte dafür dann sehr viel länger einzusetzen. Die meisten Leute ersetzen ihre Geräte maximal in einem zwei Jahres Rhythmus, ich mache das viel seltener. Ich scheue einfach den Aufwand des Einrichtens, das dauert bei Entwicklerrechnern schlicht ewig und bis dann mal wieder alles installiert und eingerichtet ist, vergeht gut und gerne die ein oder andere Woche. Außerdem finde ich es auch ökologischer, das ist quasi mein Beitrag gegen die Wegwerfgesellschaft ;-).
Finanziell lohnt es sich übrigens nicht direkt, man gibt einfach durch die Überdimensionierung bei der Anschaffung so viel mehr aus, wie man sonst durch die wiederholte Anschaffung ausgeben würde. Sparen tut man erst dann, wenn man seine eigene Arbeitszeit des turnusmäßigen Neueinrichtens berücksichtigt.
Ein weiteres Selektionskriterium war für mich, das ich das Notebook auf einer Dockingstation betreiben kann. Ich will einfach nicht jedes Mal, wenn ich zuhause bin zuerst Kabel verlegen und in mein Notebook stöpseln müssen, damit es an einer vernünftigen Tastatur, Maus und einem Monitor hängt.
Ein weiterer wichtiger Punkt bei der Anschaffung meines neuen Notebooks war dessen Größendimension. Ich wollte gezielt ein Notebook, das klein genug ist, um es überall mit hinzunehmen, und gerade noch so groß ist, dass man ordentlich daran arbeiten kann. In meinen Augen entspricht das genau der 13 Zoll Display diagonale. Alles was größer als 13 Zoll ist, empfinde ich als zu groß um es immer dabei zu haben und alles was kleiner ist, verunmöglicht das arbeiten.HP Elitebook 735 G5 keyboard
Ursprünglich hatte ich damit geliebäugelt mir wieder ein Lenovo Gerät anzuschaffen, damit habe ich beste Erfahrung gemacht. Meine Lenovo T61 habe ich im Jahr 2008 gekauft, bis ins Jahr 2018 im Gebrauch gehabt und war durch die Bank weg zufrieden damit. Auch die Docking Lösungen von Lenovo fand ich bisher immer Super. Nur aus einem Grund ist es letztlich kein Lenovo Gerät geworden, Lenovo hatte zum Zeitpunkt meiner Kaufentscheidung kein einziges Notebook mit AMD Ryzen 2700² CPU im Angebot und ich wollte gezielt keinen Intel CPU kaufen, ich halte die Ryzen CPU’s für deutlich besser. Abgesehen davon unterstütze ich gerne AMD, einfach um der Marktmacht von Intel etwas entgegen zusetzen.
Dell Notebooks kamen auch nicht in Frage, zum einen weil auch Dell nichts Adäquates mit AMD Prozessor hatte und zum anderen, weil ich mit Dell eher weniger gute Erfahrung gemacht habe. Bisher sind bei mir alle Dell Notebooks unmittelbar nach Ende der Garantie defekt gegangen (meist die Kühler).
Neben HP gab es dann noch Schenker. Schenker finde ich grundsätzlich interessant, einfach weil es ein deutscher Hersteller ist. Schenker hatte (und hat bis heute) nichts mit AMD Prozessoren im Portfolio, damit war Schenker dann auch raus.
Zum damaligen Zeitpunkt der einzige Anbieter am Markt mit Notebooks, die durch einen aktuellen AMD Prozessor angetrieben wurden, war HP. Zu allem Überfluss hatte HP auch mit AMD Prozessor angetriebene Notebooks im 13 Zoll Format und zu diesen Notebooks auch noch vernünftige Dockingstations. Mein Glück perfekt machte dann noch die Tatsache das HP die Geräte als Geschäftskundengeräte mit „Next Business Day“ Garantie anbot, in Kombination mit einer Garantieverlängerung auf 5 Jahre. Der einzige Wermutstropfen war, dass es die Geräte nicht mit einer ordentlichen Festplatten Kapazität gab. Das Maximum waren 256 GB als PCIe® SSD, was für ein Notebook neben einer normalen Workstation irgendwie OK wäre, aber nicht für einen Desktop Ersatz, und immer externe Laufwerke wollte ich auch nicht mit mir rum schleppen. Also habe ich mir gleich noch eine 2 TB große PCIe® SSD bestellt und ein Arbeitsspeicher Upgrade auf 16 GB RAM (WICHTIG: Auf zwei RAM Module aufteilen, das steigert die Performance enorm!), denn ausgeliefert werden/wurden die Notebooks mit nur 8 GB RAM, auch das ist für moderne Entwicklungsumgebungen eher unterdimensioniert. Geordert habe ich dann letzten Endes das HP Elitebook 735 G5.
Bisher bin ich alles in allem sehr zufrieden mit dem Gerät. Ich habe direkt nach Erhalt die größere SSD und den größeren Arbeitsspeicher eingebaut sowie das Windows 10 durch eine Linux Distribution ersetzt. Die Hardware wird bei mir unter Linux einwandfrei erkannt und für die Grafikkarte habe ich die AMD - Grafiktreiber³ für Linux installiert.
Allerdings muss ich erwähnen, dass ich tatsächlich bereits einen Garantiefall hatte. Nicht aber weil Hardware defekt war, sondern weil das UEFI nach einem Upgrade gestorben ist und das Gerät damit „gebricked“4 war. Das ganze lief ausgesprochen unproblematisch ab, ich hab bei HP angerufen und HP hat mir am Folgetag einen Mitarbeiter vorbeigeschickt, der mir kurzerhand das Mainboard in meinem Notebook austauschte.

1) Voptop
2) AMD Ryzen 2700
3) AMD - Grafiktreiber
4) Bricked

War Heute bei einem meiner größeren Kunden (Konzern mit ca. >2000 Mitarbeiten) und wie alle Unternehmen, muss auch hier der DSGVO Rechnung getragen werden. Dafür kamen die auf die wahnsinnig clevere Idee, ein Stück Software (Fremd-Script) einzusetzen das auf jedem Internetauftritt des Konzerns eingebunden werden soll, mit dessen Hilfe sich der User dann anzeigen lassen kann, welche Cookies so gesetzt werden.
Das Skript kommt von einem amerikanischen Unternehmen.... Ich fasse noch mal zusammen: Zur Umsetzung der europäischen DSGVO wird ein Fremd-Script einer amerikanischen Firma (natürlich bei denen gehostet) auf jeder Webseite eingebunden und mit aufgerufen... um der DSGVO Rechnung zu tragen... kann man sich gar nicht ausdenken so was...

13.08.2018

Ich habe mir kürzlich ein neues Notebook gekauft, von HP ein Elitebook 735 G5 mit AMD Ryzen 27000 CPU. Auf dem Gerät war Windows 10 Pro vor installiert, das ich auch haben wollte, primär arbeite ich aber unter Linux. Ich musste mir also zusätzlich noch ein Linux parallel installieren. Standardmäßig ist in dem Gerät eine 256 GB PCIe NVMe SSD verbaut. 256 GB sind für zwei Betriebssysteme samt jeweils vollständig installierter Entwicklungsumgebungen zu wenig, weshalb ich eine größere Festplatte verbaut habe (eine PCIe NVMe SSD von Samsung mit deutlich mehr Kapazität).
Um Windows 10 Pro auf der neuen Platte nicht neuinstallieren zu müssen wollte ich den Inhalt der alten SSD via „dd“¹ vollständig auf ein USB-Laufwerk sichern, dann die neue Samsung SSD einbauen und die Sicherung wieder via „dd“ auf die neue Platte rüber kopieren. Damit fing dann der Ärger an.
Zunächst musste ich das UEFI davon überzeugen von meinem USB-Stick zu booten, dafür war es erst einmal nötig „secure boot“ auszuschalten. Mit ausgeschalteten „secure boot“ konnte ich dann erfolgreich ein „Live Linux image“ booten, aber jeder Zugriff auf die SSD, um sie mit „dd“ zu sichern, wurde mit einer kryptischen Fehlermeldung verweigert. Nun dachte ich, das wird wohl an dem hoffnungslos veralteten „Live image“ (Ubuntu 14.04) liegen das mit Neuen PCIe SSDs möglicherweise nicht klar kommt und ich noch für meinen bootbaren USB-Stick benutzte. Ich hab nicht lang gefackelt und mir einen neuen bootbaren USB-Stick mit einem aktuellen Ubuntu angefertigt, aber das Problem blieb das gleiche.
Da ein neueres „Live Linux image“ das Problem nicht zu lösen vermochte, habe ich mich wieder in die untiefen des UEFI-Setups begeben, da habe ich das TPM-Modul deaktiviert und siehe da, jetzt konnte ich nicht nur vom USB-Stick aus booten, ich konnte auch von dem „Live image“ aus auf die interne SSD zugreifen und eine Kopie mittels „dd“ auf ein externes Wechsellaufwerk machen, so wie die Sicherung dann auf die neue SSD rüber kopieren.
Im nächsten Schritt habe ich dann mit dem gleichen „Linux live image“ die Windows Partition mithilfe von GParted auf ca. die hälfte der Größe der neuen SSD erweitert und dann im Anschluss auf dem restlichen freien Speicher ein aktuelles Xubuntu 18.04 installiert.
Die Installation von Xubuntu 18.04 verlief erst einmal völlig reibungslos, danach ging dann aber auch schon der nächste Ärger los. Bei diversen Neustarts hing sich das neue Notebook in aller Regelmäßigkeit beim Runter- und Hochfahren auf. Dabei ist die Kiste einfach eingefroren, weder gab es unter Windows einen Bluescreen, noch unter Linux eine „Kernel panic“². Ich ging erst davon aus, dass es möglicherweise an noch nicht korrekt installierten Treibern läge, und habe den passenden AMD Radeon Treiber³ von der AMD Webseite runtergeladen und installiert. Nach der Installation des Treibers und einem reboot sah soweit auch alles gut aus, der Treiber wurde korrekt geladen und ich konnte auch mittels „Steam“4 für Linux Spiele starten und laufen lassen (Hardware beschleunigt versteht sich). Die Ernüchterung kam dann nach dem nächsten Hochfahren, auf einmal wurde der Treiber nicht mehr geladen und Linux lief nur noch im VESA5 Modus. Ich spielte ein wenig in den Konfigurationen rum und merkte, das der Treiber mal sporadisch geladen wurde und mal nicht, ohne das ich zunächst dafür habe einen Grund ausmachen können. Ich nahm an, es läge möglicherweise am Treiber und installierte stattdessen den open source AMD Radeon Treiber, das Ergebnis war das gleiche, auch dieser wurde sporadisch mal korrekt geladen und mal nicht. Darauf hin fing ich an, im UEFI „rum zu spielen“, im Gedanken das Problem könnte hier liegen. Ich schaltete „secure boot“ und das TPM-Modul wieder ein; es half nichts. Nach einiger Zeit habe ich dann entnervt das UEFI in seine „Werkseinstellungen“ zurückversetzt (Was es meiner Meinung nach eigentlich schon war, denn mehr als „secure boot“ und das TPM-Modul habe ich nicht konfiguriert). Auf einmal wurde der Grafiktreiber korrekt geladen und das nicht mehr nur sporadisch. Beim Konfigurieren von „secure boot“ und dem TPM-Modul muss sich irgendetwas im UEFI-Setup „queer“ gelegt haben, dass mit dem harten Reset in die Werkseinstellung wieder grade gezogen wurde. Von nun an bootete das Notebook reibungslos und fuhr zumindest unter Windows auch korrekt runter. Nur unter Linux hing es beim Runterfahren für 10 Minuten, bis es sich dann ausschaltete (es hing beim Runterfahren der MySQL-Datenbank fest).
Irgendwann habe ich festgestellt, dass jeweils nach dem ich Windows gebootet habe, die Uhrzeit unter Linux nicht mehr stimmte und wenn ich Linux gebootet habe, dann die Uhrzeit unter Windows nicht mehr stimmte. Wie sich herausstellte beziehen beide Betriebssysteme ihre Uhrzeiten von einem Timeserver via NTP6 (was ja auch sinn ergibt) und stellten nach dem Booten und einloggen die Uhrzeit ein, aber nicht nur für sich, sondern systemweit in dem sie jeweils die Zeit im UEFI überschrieben. Das war wiederum für das aufhängen beim Runterfahren verantwortlich, und zwar durch ein Wechselspiel mit einer installierten MySQL Datenbank (da muss man erst einmal drauf kommen). Verursacht wurde die Misere weil systenmd7 den NTP daemon erst nach der MySQL-Datenbank startet, der NTP daemon hat dann seinerseits die Uhrzeit umgestellt, so das die MySQL-Datenbank in der Zukunft lief, was diese wiederum so aus dem Tritt brachte, dass sie beim Runterfahren festhing bis ein 10 Minuten timeout eingetreten ist und den MySQL Prozess beendet hat. Lösen konnte ich das Problem am Ende dadurch, dass ich das UEFI Passwort geschützt habe und somit dafür gesorgt habe, dass weder Windows noch Linux die Zeit im UEFI mehr überschreiben können.
Was ist das eigentlich für ein Rotz, dass ein Betriebssystem so einfach im UEFI rum schreiben kann? Wer hat sich diesen Misst nur ausgedacht? Das scheint mir dann alles doch keine so große Verbesserung zu den früheren BIOS Systemen zu sein, vor allem wirkt das alles sehr unausgereift und ich habe zweifel, ob sich daran sobald irgendetwas ändern wird. Auf mich macht es den Eindruck eines viel zu komplexen und damit fehlerträchtigen Systems.


1) dd
2) Kernel panic
3) AMD Radeon Treiber
4) Steam for Linux
5) VESA
6) NTP
7) systemd

Aktuell komme ich mal wieder zu quasi nichts da ich beruflich, wie privat extrem eingespannt bin, so das insbesondere meine persönlichen bzw. privaten Projekte weitestgehend auf der Strecke bleiben. Trotzdem bin ich kürzlich endlich und notgedrungenerweise mal wieder dazu gekommen etwas an meinem Projekt Voptop ¹ zu machen. Vor einiger Zeit kam mit Ubuntu 17.10 eine neue Ubuntu Version raus, die zwar zum Vorgänger binärkompatibel ist aber das OpenCV ² Framework auf eine neue Version angehoben hat. Das führte dazu, dass ich einige Anpassungen an Voptop vornehmen musste, dabei habe ich auch gleich die Gelegenheit genutzt und ein paar Fehler behoben. Insbesondere habe ich einen kleinen Tipp/Rechtschreibfehler an der Login - Schnittstelle behoben, was dazu führte, dass ich Anpassungen an allen Clients für alle unterstützten Betriebssysteme machen musste. Das Ende vom Lied war, das ich für alle Betriebssysteme neu bauen und paketieren musste.

Das bauen und paketieren mache ich derzeit manuell. Dafür habe ich für die jeweiligen Betriebssysteme virtuelle Maschinen, in denen werden die Binärdateien gebaut und dann paketiert. Den Bau- und Paketiervorgang muss ich derzeit für 3 Betriebssysteme und deren jeweilige Unterversionen machen, insgesamt 7 Installationspakete. Das Ganze ist vorsichtig ausgedrückt ansträngend und nervig und raubt mir wertvolle Zeit, die mir zum Entwickeln fehlt.

Lange rede kurzer Unsinn, ich werde wohl absehbar einwenig Zeit darauf verwenden müssen ein vernünftiges Release - Management für Voptop auf die Reihe zu bringen. Das ist im Falle von Voptop leider nicht gerade einfach, denn insbesondere die Barriere über Betriebssystemgrenzen hinweg ist nicht einfach zu nehmen.

Ich spiele mit dem Gedanken einen Jenkins ³ aufzusetzen, der automatisiert virtuelle Maschinen starte, sich mittels Script und SSH auf die virtuellen Maschinen verbindet, ein Update auf das „Source Repository“ 4 durchführt und auf der SSH - Konsole den Build Prozess sowie den Paketierungsprozess anstößt. Die fertigen Pakete können dann vom Jenkins ausgeführten Skript wiederum via SCP eingesammelt werden. Das klingt kompliziert und aufwendig, ist es auch.

Die skizzierte Lösung sollte zumindest mein Problem für alle auf Linux 5 basierende Betriebssysteme sowie für Haiku 6 lösen. Bei Windows sieht es dann schon wieder anders aus, denn zumindest bisher war unter Windows mit SSH nicht viel zu holen. Allerdings habe ich kürzlich gelesen, es gäbe jetzt mit Windows 10 auch die Möglichkeit einen SSH-Server auf Windows laufen zu lassen, das könnte wiederum die Lösung für dieses Problem sein. Aber selbst wenn ich es nicht schaffe einen SSH-Server unter Windows vernünftig zu betreiben, so hätte ich damit alle anderen Betriebssysteme abgehakt und müsste nur noch für Windows manuell bauen.

 

1) Voptop
2) OpenCV
3) Jenkins
4) Source repository
5) Linux
6) Haiku OS

Heute mal etwas aus der Kategorie, „Fehlermeldungen, die man nicht alle Tage sieht“. Ich arbeite der Zeit an einem größeren Java Projekt für einen Kunden, einer Webapp die in einem Tomcat deployed wird und aus vielen kleinen Teilprojekten besteht die via Maven gebaut werden. Die eigentliche Webapp wird dabei durch eine parent pom.xml gebaut, die ihres Zeichens auf die Teilprojekte verweist. Dabei kommt es immer wieder mal zu folgendem Fehler:

[ERROR] PermGen space -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/OutOfMemoryError

Das ist im Grunde nichts anderes als eine „out of memory exception“. Der Maven Prozess kann standardmäßig nur eine gewisse Menge an speicher allozieren und die reicht nicht, um dieses Projekt zu bauen. Den Fehler hab ich an diesem Projekt das erste mal gesehen und musste ein wenig recherchieren um raus zu finden wie man Maven erlauben kann mehr Speicher zu allozieren. Das hier war dann meine Lösung (einfach in der Konsole eingeben, bevor man das Projekt baut):

set MAVEN_OPTS=-Xmx512m -XX:MaxPermSize=128m

PS: Ich bin mir übrigens wohl bewusst, dass die Lösung des Problems in der URL zu finden ist. Da als Erstes nach zu schauen anstatt selbst zu recherchieren wäre aber viel zu einfach gewesen ;-).

http://cwiki.apache.org/confluence/display/MAVEN/OutOfMemoryError

Endlich komme ich mal wieder dazu was für meinen Blog zu schreiben, die letzten Wochen waren durch die Bank weg ansträngend und stressig, ich bin quasi zu nichts mehr gekommen.
Schon vor fast zwei Monaten hab ich mir ein neues Smartphone zugelegt, nach dem der Akku meines in die Jahre gekommenen Nexus 4 von Google mehr und mehr den Geist aufgegeben hat und im Grunde nicht mehr über den Tag gekommen ist.
Die Suche nach einem neuen Smartphone hat sich als weniger einfach herausgestellt, als ich mir das gedacht habe. Eigentlich wollte ich nur noch Geräte direkt von Google kaufen (Nexus bzw. Pixel), um das Problem mit der schlechten Updatepolitik zu umgehen. Leider hat Google aber nur noch Smartphones mit Displaygrößen über 5 Zoll im Angebot, ich wollte aber unbedingt eines mit einem Display, das kleiner ist als 5 Zoll. Ich finde diese riesigen Displays einfach nur nervig, die Dinger passen in keine Tasche und kaum noch in die Hand, außerdem hat man beim Telefonieren das Gefühl sich ein Schneidebrätchen ans Ohr zu halten.
Das erste Auswahl Kriterium Größe hat damit schon einmal die Menge der infrage kommenden Smartphones massiv ausgedünnt. Dann fing der Spaß der Suche aber erst an, denn ich musste feststellen, dass die meisten kleinen Smartphones nur mit sehr leistungsschwacher Hardware ausgerüstet sind, die Dinger sind quasi überwiegend als „low budget“ Produkte konzipiert. Ich wollte aber ein Smartphone mit leistungsstarker Hardware und einem Display unter 5 Zoll, sowie idealerweise mit einem aktuellen Android-Betriebssystem. Bestenfalls sollte der Hersteller sein Gerät dann zu allem Überfluss auch noch halbwegs regelmäßig mit Updates versorgen.
Entschieden habe ich mich letztendlich für das „Sony Xperia X Compact“¹, das Gerät ist vernünftig ausgestattet und die Updatepolitik von Sony ist zumindest kein Totalausfall. Im „Sony Xperia X Compact“ ist ein Hexa-Core-Prozessor vom Typ „Snapdragon 650“² verbaut und dem Prozessor stehen 3 Gigabyte Arbeitsspeicher zur Verfügung, um seine Arbeit zu verrichten³. Der Akku des X Compact fasst 2700 mAh³, die in dem Gerät auch bei starker Nutzung leicht über den Tag reichen. Anfangs wurde das Gerät mit Android 6.0 ausgeliefert und dann mit Android 7.x via einem OTA4-Update nachgerüstet. Aufgeladen wird das „Sony X Compact“ über einen USB-Typ-C Stecker, was dank Schnellladefunktion in ca. 2 1/2 Stunden vonstattengeht. Ferner verfügt das kompakte Smartphone von Sony über einen Speicherkarten-Slot.
Besonders positiv muss man meiner Meinung nach die Kamera des „Sony Xperia X Compact“ hervorheben, bisher hatte ich noch kein Smartphone, das so gute Fotos machte.
Weniger positiv hingegen sind die vorinstallierten Apps von Sony, die man teilweise nicht einmal deinstallieren kann.

Fazit

Das „Sony Xperia X Compact“ erfüllt genau meine Bedürfnisse, es ist ausreichend schnell damit alle Apps ruckelfrei und zügig laufen, sowie ohne Verzögerung starten. Außerdem passt das „Sony Xperia X Compact“ leicht in jede Hosentasche, was mit den großen Geräten jenseits der 5 Zoll eher nicht mehr so richtig geht. Lediglich die vorinstallierten Apps, die man nicht deinstallieren kann, trüben das grundsätzlich gute Gesamtbild, dafür werden von Sony derzeit Updates ausgesprochen zeitnah bereitgestellt und ausgeliefert.

Anmerkung

Ich hab mir für mein „Sony Xperia X Compact“ gleich noch eine Lederhülle5 bestellt. Die Lederhülle ist durchaus auch empfehlenswert, gut verarbeitet und schützt das Gerät.

 

1) Sony X Comact
2) Snapdragon 650
3) Sony X Comact Spezifikation
4) OTA
5) Lederhülle

Vor zwei Wochen war es mal wieder so weit, mein USB-Hub hat sich verabschiedet, dass passiert in aller Regelmäßigkeit, alle zwei bis drei Jahre im Dauerbetrieb gehen die Dinger bei mir kaputt.
Meinen USB-Hub betreibe ich am USB-Port meiner FRITZ!Box¹. An dem USB-Hub selbst betreibe ich zwei externe Festplatten, zwei Mikro-USB-Kabel zum Aufladen meines Tablets sowie meiner e-Zigarette und außerdem ein USB-Typ-C Kabel zum Aufladen meines Smartphones. Alle USB-Hubs, die ich bisher hatte, waren „aktiv“ dass bedeutet die USB-Hubs verfügten über ein externes Netzteil und wurden nicht ausschließlich durch die FRITZ!Box mit Strom versorgt. Warum die Dinger bei mir regelmäßig ihr Leben aushauchen, ist mir dabei unklar. Eigentlich mache ich damit exakt das, wofür sie da sind. Nun gut, es lässt sich ja nicht ändern, ich habe also wieder einen Neuen bei Amazon² bestellt. Der neue USB-Hub von Atolla³ entspricht bereits dem aktuellen USB 3.0 Standard und verfügt über sieben USB 3.0 Ports, darüber hinaus hat er einen achten „Auflade“ USB-Port. Der „Auflade“ USB-Port wird mit bis zu 2,4 Ampere betrieben und ermöglicht das Schnellladen von Akkus von zum Beispiel Smartphones. Angeblich soll der USB-Hub abwärts kompatibel sein bis USB 1.0, was ich aber nicht bestätigen kann. Meine FRITZ!Box kann mit dem USB 3.0 Hub nichts anfangen und meldet nur ein unbekanntes Gerät. An meinem Raspberrypi4 hingegen funktioniert der USB-Hub tadellos, mit dem Ergebnis das er jetzt am Raspberrypi hängt und nicht an der FRITZ!Box, so das mir mein Raspberrypi jetzt zusätzlich als NAS dient. Alls kleines zusätzliches Feature so zu sagen, hat der USB-Hub an jedem USB-Port einen Schalter, mit dem man die einzelnen USB-Ports ein und ausschalten kann.
Ein echtes Fazit habe ich zu diesem USB-Hub noch nicht, bisher gefällt er mir ganz gut, ob er aber auch nach zwei bis drei Jahren den Geist auf gibt weiß ich aber natürlich noch nicht.

1) FRITZ!Box 6360
2) Atolla USB 3.0 Hub 7
3) Atolla
4) Raspberrypi

Maus VicTsing MiniKürzlich habe ich meine Notebook-Maus verloren, ich hab das Ding wohl irgendwo liegen lassen. Also musste kurzfristig eine Neue her. Ernsthaftes Arbeiten mit Touchpads finde ich nämlich eher ansträngend. Da es nur eine Maus sein sollte, die ich mit meinem Notebook mit mir rum schleppe, wollte ich mir nichts Teures und Extravagantes kaufen. Also habe ich ein wenig bei Amazon gestöbert und bin dabei auf eine Maus mit Namen „VicTsing Mini“ mit guter Kundenrezension gestoßen, die zum unglaublichen Preis von 8,59 € angeboten wurde. Das Ding hat 6 Tasten, 2400 DPI und ist kabellos mit einem Mikroempfänger. Der Mikroempfänger ist klein genug um ihn einfach dauerhaft am Notebook zu lassen.
Maus VicTsing Mini Von dieser Maus hab ich mir im Grunde nicht viel versprochen und war dann sehr von der Qualität überrascht. Die Maus ist anständig verarbeitet und funktioniert tadellos, ich hab mir dann gleich noch eine Zweite für meinen Desktop-PC bestellt. Die Maus an meinem Hauptrechner hatte sich nämlich auch schon so langsam überlebt.
Mir ist zwar völlig unklar wie man eine Funkmaus zu einem derartigen spottbilligen Preis herstellen und verkaufen kann, es ist mir aber auch egal, für die 8,59 € kann ich auf jeden Fall eine klare Kaufempfehlung aussprechen.

VicTsing Mini bei Amazon

Lenovo T61

Mein Notebook ist jetzt schon ein etwas älteres Modell aus dem Hause Lenovo¹ vom Typ T61². Das T61 begleitet mich jetzt schon seit gut 8 Jahren und leistet mir gute Dienste als Arbeitsgerät. Ausgestattet war mein Lenovo T61 zum Kaufzeitpunkt mit einem Core 2 Duo T8300, 4 Gigabyte RAM Arbeitsspeicher, einer Nvidia Quadro NVS 140M³ und einer 175 Gigabyte Festplatte, die mit 7200 Umdrehungen pro Minute arbeitet. Außerdem hat es ein SXGA+4 Display, dass mit 1400x1050 Pixel auflöst. Ganz günstig war das Notebook damals nicht, wenn ich mich recht erinnere, musste ich ca. 2500 € dafür löhnen.
Als ich das T61 gekauft habe war es massiv überdimensioniert. Ich dimensioniere meine Rechner und Notebooks immer deutlich über meine eigentlichen Anforderungen, so kann ich meine Notebooks und Rechner länger einsetzen und muss mir nicht alle naselang neue kaufen und einrichten. Besonders das Einrichten geht mir dabei immer am meisten auf den Zeiger, bei einem Entwicklergerät dauert das nämlich immer ewig.
Überdimensionierung hin oder her, irgendwann ist auch ein überdimensioniertes Gerät veraltet. Ich stand also vor der Entscheidung: Entweder ein neues Notebook zu kaufen, wieder einige Tausend Euro zu investieren und das Gerät dann neu aufsetzen zu müssen, oder mein Lenovo T61 aufzurüsten.
Ich habe mich dann dazu entschieden, mein jetziges Notebook aufzurüsten. Dafür habe ich versucht zu erkennen wo die Performance Nadelöhr meines T61 sind. Dabei habe ich festgestellt, dass die 4 Gigabyte Arbeitsspeicher im täglichen Arbeitseinsatz mittlerweile zu knapp geworden sind, also habe ich das Ganze auf 8 Gigabyte RAM aufgerüstet.

Außerdem habe ich beobachtet wie das T61 häufig auf die Festplatte warten musste, hier musste also etwas Schnelleres her. Ich habe dann kurzerhand eine Samsung SSD mit 250 Gigabyte bestellt und eingebaut.

Das Ergebnis hat mich überzeugt. Das T61 leistet wieder hervorragend seine Dienste, insbesondere die neue Festplatte (SSD) hat dem Notebook noch einmal einen erheblichen Schub verliehen. Vermutlich wird das T61 jetzt noch 2 vielleicht auch 3 Jahre bei mir im Einsatz bleiben.


¹) Lenovo
²) Thinkwiki
³) Nvidia
4Thinkwiki

Bildquelle Lenovo T61: Thinkwiki

 

Impressum

SN-Media
Robert Stiehler
Harbach 5a
36115 Hilders
Tel.: (+49) 6681 6309737
Fax: (+49) 6681 6309738
E-Mail: info@sn-media.com
PGP: Public key .asc file

Inhaltlich Verantwortlicher gemäß §55 Abs. 2 RStV

Robert Stiehler

Urheberrecht

Keine Seiten oder Informationen dieser Seite dürfen ohne schriftliche Genehmigung kopiert werden oder inhaltlich verändert werden. Die Angaben des Impressums dürfen in gar keinem Fall für Massensendungen, Bulk- bzw. Spam-Mail verwendet werden.

Datenschutzerklärung für die Website

1. Name und Kontaktdaten des für die Verarbeitung Verantwortlichen sowie des betrieblichen Datenschutzbeauftragten

Diese Datenschutz-Information gilt für die Datenverarbeitung durch:
Verantwortlicher:

Robert Stiehler
Harbach 5a
D-36115 Hilders
Deutschland
E-Mail: info@sn-media.com

2. Erhebung und Speicherung personenbezogener Daten sowie Art und Zweck von deren Verwendung
a) Beim Besuch der Website
Beim Aufrufen unserer Website werden durch den auf Ihrem Endgerät zum Einsatz kommenden Browser automatisch Informationen an den Server unserer Website gesendet. Diese Informationen werden temporär in einem sog. Logfile gespeichert. Folgende Informationen werden dabei ohne Ihr Zutun erfasst und bis zur automatisierten Löschung gespeichert:

  • IP-Adresse des anfragenden Rechners,
  • Datum und Uhrzeit des Zugriffs,
  • Name und URL der abgerufenen Datei,
  • Website, von der aus der Zugriff erfolgt (Referrer-URL),
  • verwendeter Browser und ggf. das Betriebssystem Ihres Rechners sowie der Name Ihres Access-Providers. Die genannten Daten werden durch uns zu folgenden Zwecken verarbeitet:
  • Gewährleistung eines reibungslosen Verbindungsaufbaus der Website,
  • Gewährleistung einer komfortablen Nutzung unserer Website,
  • Auswertung der Systemsicherheit und -stabilität sowie
  • zu weiteren administrativen Zwecken.

Die Rechtsgrundlage für die Datenverarbeitung ist Art. 6 Abs. 1 S. 1 lit. f DSGVO. Unser berechtigtes Interesse folgt aus oben aufgelisteten Zwecken zur Datenerhebung. In keinem Fall verwenden wir die erhobenen Daten zu dem Zweck, Rückschlüsse auf Ihre Person zu ziehen. Darüber hinaus setzen wir beim Besuch unserer Website Cookies sowie Analysedienste ein. Nähere Erläuterungen dazu erhalten Sie unter den Ziff. 4 und 5 dieser Datenschutzerklärung.

3. Weitergabe von Daten
Eine Übermittlung Ihrer persönlichen Daten an Dritte zu anderen als den im Folgenden aufgeführten Zwecken findet nicht statt. Wir geben Ihre persönlichen Daten nur an Dritte weiter, wenn:

  • Sie Ihre nach Art. 6 Abs. 1 S. 1 lit. a DSGVO ausdrückliche Einwilligung dazu erteilt haben,
  • die Weitergabe nach Art. 6 Abs. 1 S. 1 lit. f DSGVO zur Geltendmachung, Ausübung oder Verteidigung von Rechtsansprüchen erforderlich ist und kein Grund zur Annahme besteht, dass Sie ein überwiegendes schutzwürdiges Interesse an der Nichtweitergabe Ihrer Daten haben,
  • für den Fall, dass für die Weitergabe nach Art. 6 Abs. 1 S. 1 lit. c DSGVO eine gesetzliche Verpflichtung besteht, sowie
  • dies gesetzlich zulässig und nach Art. 6 Abs. 1 S. 1 lit. b DSGVO für die Abwicklung von Vertragsverhältnissen mit Ihnen erforderlich ist.

4. Cookies
Wir setzen auf unserer Seite Cookies ein. Hierbei handelt es sich um kleine Dateien, die Ihr Browser automatisch erstellt und die auf Ihrem Endgerät (Laptop, Tablet, Smartphone o.ä.) gespeichert werden, wenn Sie unsere Seite besuchen. Cookies richten auf Ihrem Endgerät keinen Schaden an, enthalten keine Viren, Trojaner oder sonstige Schadsoftware. In dem Cookie werden Informationen abgelegt, die sich jeweils im Zusammenhang mit dem spezifisch eingesetzten Endgerät ergeben. Dies bedeutet jedoch nicht, dass wir dadurch unmittelbar Kenntnis von Ihrer Identität erhalten. Der Einsatz von Cookies dient einerseits dazu, die Nutzung unseres Angebots für Sie angenehmer zu gestalten. So setzen wir sogenannte Session-Cookies ein, um zu erkennen, dass Sie einzelne Seiten unserer Website bereits besucht haben. Diese werden nach Verlassen unserer Seite automatisch gelöscht. Darüber hinaus setzen wir ebenfalls zur Optimierung der Benutzerfreundlichkeit temporäre Cookies ein, die für einen bestimmten festgelegten Zeitraum auf Ihrem Endgerät gespeichert werden. Besuchen Sie unsere Seite erneut, um unsere Dienste in Anspruch zu nehmen, wird automatisch erkannt, dass Sie bereits bei uns waren und welche Eingaben und Einstellungen sie getätigt haben, um diese nicht noch einmal eingeben zu müssen. Zum anderen setzten wir Cookies ein, um die Nutzung unserer Website statistisch zu erfassen und zum Zwecke der Optimierung unseres Angebotes für Sie auszuwerten (siehe Ziff. 5). Diese Cookies ermöglichen es uns, bei einem erneuten Besuch unserer Seite automatisch zu erkennen, dass Sie bereits bei uns waren. Diese Cookies werden nach einer jeweils definierten Zeit automatisch gelöscht. Die durch Cookies verarbeiteten Daten sind für die genannten Zwecke zur Wahrung unserer berechtigten Interessen sowie der Dritter nach Art. 6 Abs. 1 S. 1 lit. f DSGVO erforderlich. Die meisten Browser akzeptieren Cookies automatisch. Sie können Ihren Browser jedoch so konfigurieren, dass keine Cookies auf Ihrem Computer gespeichert werden oder stets ein Hinweis erscheint, bevor ein neuer Cookie angelegt wird. Die vollständige Deaktivierung von Cookies kann jedoch dazu führen, dass Sie nicht alle Funktionen unserer Website nutzen können.

5. Analyse-Tools
a) Tracking-Tools
Die im Folgenden aufgeführten und von uns eingesetzten Tracking-Maßnahmen werden auf Grundlage des Art. 6 Abs. 1 S. 1 lit. f DSGVO durchgeführt. Mit den zum Einsatz kommenden Tracking-Maßnahmen wollen wir eine bedarfsgerechte Gestaltung und die fortlaufende Optimierung unserer Webseite sicherstellen. Zum anderen setzen wir die Tracking-Maßnahmen ein, um die Nutzung unserer Webseite statistisch zu erfassen und zum Zwecke der Optimierung unseres Angebotes für Sie auszuwerten. Diese Interessen sind als berechtigt im Sinne der vorgenannten Vorschrift anzusehen. Die jeweiligen Datenverarbeitungszwecke und Datenkategorien sind aus den entsprechenden Tracking-Tools zu entnehmen.

i) Google Analytics
Zum Zwecke der bedarfsgerechten Gestaltung und fortlaufenden Optimierung unserer Seiten nutzen wir Google Analytics, ein Webanalysedienst der Google Inc. (https://www.google.de/intl/de/about/) (1600 Amphitheatre Parkway, Mountain View, CA 94043, USA; im Folgenden „Google“). In diesem Zusammenhang werden pseudonymisierte Nutzungsprofile erstellt und Cookies (siehe unter Ziff. 4) verwendet. Die durch den Cookie erzeugten Informationen über Ihre Benutzung dieser Website wie

  • Browser-Typ/-Version,
  • verwendetes Betriebssystem,
  • Referrer-URL (die zuvor besuchte Seite),
  • Hostname des zugreifenden Rechners (IP-Adresse),
  • Uhrzeit der Serveranfrage, werden an einen Server von Google in den USA übertragen und dort gespeichert. Die Informationen werden verwendet, um die Nutzung der Website auszuwerten, um Reports über die Websiteaktivitäten zusammenzustellen und um weitere mit der Websitenutzung und der Internetnutzung verbundene Dienstleistungen zu Zwecken der Marktforschung und bedarfsgerechten Gestaltung dieser Internetseiten zu erbringen. Auch werden diese Informationen gegebenenfalls an Dritte übertragen, sofern dies gesetzlich vorgeschrieben ist oder soweit Dritte diese Daten im Auftrag verarbeiten. Es wird in keinem Fall Ihre IP-Adresse mit anderen Daten von Google zusammengeführt. Die IP-Adressen werden anonymisiert, so dass eine Zuordnung nicht möglich ist (IP-Masking). Sie können die Installation der Cookies durch eine entsprechende Einstellung der Browser-Software verhindern; wir weisen jedoch darauf hin, dass in diesem Fall gegebenenfalls nicht sämtliche Funktionen dieser Website vollumfänglich genutzt werden können. Sie können darüber hinaus die Erfassung der durch das Cookie erzeugten und auf Ihre Nutzung der Website bezogenen Daten (inkl. Ihrer IP-Adresse) sowie die Verarbeitung dieser Daten durch Google verhindern, indem Sie ein Browser-Add-on herunterladen und installieren (https://tools.google.com/dlpage/gaoptout?hl=de). Alternativ zum Browser-Add-on, insbesondere bei Browsern auf mobilen Endgeräten, können Sie die Erfassung durch Google Analytics zudem verhindern, indem Sie auf diesen Link klicken. Es wird ein Opt-out-Cookie gesetzt, das die zukünftige Erfassung Ihrer Daten beim Besuch dieser Website verhindert. Der Opt-out-Cookie gilt nur in diesem Browser und nur für unsere Website und wird auf Ihrem Gerät abgelegt. Löschen Sie die Cookies in diesem Browser, müssen Sie das Opt-out-Cookie erneut setzen. Weitere Informationen zum Datenschutz im Zusammenhang mit Google Analytics finden Sie etwa in der Google Analytics-Hilfe (https://support.google.com/analytics/answer/6004245?hl=de).
ii) Google Adwords Conversion Tracking
Um die Nutzung unserer Webseite statistisch zu erfassen und zum Zwecke der Optimierung unserer Website für Sie auszuwerten, nutzen wir ferner das Google Conversion Tracking. Dabei wird von Google Adwords ein Cookie (siehe Ziffer 4) auf Ihrem Rechner gesetzt, sofern Sie über eine Google-Anzeige auf unsere Webseite gelangt sind. Diese Cookies verlieren nach 30 Tagen ihre Gültigkeit und dienen nicht der persönlichen Identifizierung. Besucht der Nutzer bestimmte Seiten der Webseite des Adwords-Kunden und das Cookie ist noch nicht abgelaufen, können Google und der Kunde erkennen, dass der Nutzer auf die Anzeige geklickt hat und zu dieser Seite weitergeleitet wurde. Jeder Adwords-Kunde erhält ein anderes Cookie. Cookies können somit nicht über die Webseiten von Adwords-Kunden nachverfolgt werden. Die mithilfe des Conversion-Cookies eingeholten Informationen dienen dazu, Conversion-Statistiken für Adwords-Kunden zu erstellen, die sich für Conversion-Tracking entschieden haben. Die Adwords-Kunden erfahren die Gesamtanzahl der Nutzer, die auf ihre Anzeige geklickt haben und zu einer mit einem Conversion-Tracking-Tag versehenen Seite weitergeleitet wurden. Sie erhalten jedoch keine Informationen, mit denen sich Nutzer persönlich identifizieren lassen. Wenn Sie nicht an dem Tracking-Verfahren teilnehmen möchten, können Sie auch das hierfür erforderliche Setzen eines Cookies ablehnen – etwa per Browser-Einstellung, die das automatische Setzen von Cookies generell deaktiviert. Sie können Cookies für Conversion-Tracking auch deaktivieren, indem Sie Ihren Browser so einstellen, dass Cookies von der Domain „www.googleadservices.com“ blockiert werden. Googles Datenschutzbelehrung zum Conversion-Tracking finden Sie hier (https://services.google.com/sitestats/de.html).

6. Social Media Plug-ins
Wir setzen auf unserer Website auf Grundlage des Art. 6 Abs. 1 S. 1 lit. f DSGVO Social Plug-ins der sozialen Netzwerke Facebook, Twitter und Instagram ein. Der dahinterstehende werbliche Zweck ist als berechtigtes Interesse im Sinne der DSGVO anzusehen. Die Verantwortung für den datenschutzkonformen Betrieb ist durch deren jeweiligen Anbieter zu gewährleisten. Die Einbindung dieser Plug-ins durch uns erfolgt im Wege der sogenannten Zwei-Klick-Methode um Besucher unserer Webseite bestmöglich zu schützen.

a) Facebook
Auf unserer Website kommen Social-Media Plugins von Facebook zum Einsatz, um deren Nutzung persönlicher zu gestalten. Hierfür nutzen wir den „LIKE“ oder „TEILEN“-Button. Es handelt sich dabei um ein Angebot von Facebook. Wenn Sie eine Seite unseres Webauftritts aufrufen, die ein solches Plugin enthält, baut Ihr Browser eine direkte Verbindung mit den Servern von Facebook auf. Der Inhalt des Plugins wird von Facebook direkt an Ihren Browser übermittelt und von diesem in die Webseite eingebunden. Durch die Einbindung der Plugins erhält Facebook die Information, dass Ihr Browser die entsprechende Seite unseres Webauftritts aufgerufen hat, auch wenn Sie kein Facebook-Konto besitzen oder gerade nicht bei Facebook eingeloggt sind. Diese Information (einschließlich Ihrer IP-Adresse) wird von Ihrem Browser direkt an einen Server von Facebook in den USA übermittelt und dort gespeichert. Sind Sie bei Facebook eingeloggt, kann Facebook den Besuch unserer Website Ihrem Facebook-Konto direkt zuordnen. Wenn Sie mit den Plugins interagieren, zum Beispiel den „LIKE“ oder „TEILEN“-Button betätigen, wird die entsprechende Information ebenfalls direkt an einen Server von Facebook übermittelt und dort gespeichert. Die Informationen werden zudem auf Facebook veröffentlicht und Ihren Facebook-Freunden angezeigt. Facebook kann diese Informationen zum Zwecke der Werbung, Marktforschung und bedarfsgerechten Gestaltung der Facebook-Seiten benutzen. Hierzu werden von Facebook Nutzungs-, Interessen- und Beziehungsprofile erstellt, z. B. um Ihre Nutzung unserer Website im Hinblick auf die Ihnen bei Facebook eingeblendeten Werbeanzeigen auszuwerten, andere Facebook-Nutzer über Ihre Aktivitäten auf unserer Website zu informieren und um weitere mit der Nutzung von Facebook verbundene Dienstleistungen zu erbringen. Wenn Sie nicht möchten, dass Facebook die über unseren Webauftritt gesammelten Daten Ihrem Facebook-Konto zuordnet, müssen Sie sich vor Ihrem Besuch unserer Website bei Facebook ausloggen. Zweck und Umfang der Datenerhebung und die weitere Verarbeitung und Nutzung der Daten durch Facebook sowie Ihre diesbezüglichen Rechte und Einstellungsmöglichkeiten zum Schutz Ihrer Privatsphäre entnehmen Sie bitte den Datenschutzhinweisen (https://www.facebook.com/about/privacy/) von Facebook.

b) Twitter
Auf unseren Internetseiten sind Plugins des Kurznachrichtennetzwerks der Twitter Inc. (Twitter) integriert. Die Twitter-Plugins (tweet-Button) erkennen Sie an dem Twitter-Logo auf unserer Seite. Eine Übersicht über tweet-Buttons finden Sie hier (https://about.twitter.com/resources/buttons). Wenn Sie eine Seite unseres Webauftritts aufrufen, die ein solches Plugin enthält, wird eine direkte Verbindung zwischen Ihrem Browser und dem Twitter-Server hergestellt. Twitter erhält dadurch die Information, dass Sie mit Ihrer IP-Adresse unsere Seite besucht haben. Wenn Sie den Twitter „tweet-Button“ anklicken, während Sie in Ihrem Twitter-Account eingeloggt sind, können Sie die Inhalte unserer Seiten auf Ihrem Twitter-Profil verlinken. Dadurch kann Twitter den Besuch unserer Seiten Ihrem Benutzerkonto zuordnen. Wir weisen darauf hin, dass wir als Anbieter der Seiten keine Kenntnis vom Inhalt der übermittelten Daten sowie deren Nutzung durch Twitter erhalten. Wenn Sie nicht wünschen, dass Twitter den Besuch unserer Seiten zuordnen kann, loggen Sie sich bitte aus Ihrem Twitter-Benutzerkonto aus. Weitere Informationen hierzu finden Sie in der Datenschutzerklärung von Twitter (https://twitter.com/privacy).

7. Betroffenenrechte
Sie haben das Recht:
  • gemäß Art. 15 DSGVO Auskunft über Ihre von uns verarbeiteten personenbezogenen Daten zu verlangen. Insbesondere können Sie Auskunft über die Verarbeitungszwecke, die Kategorie der personenbezogenen Daten, die Kategorien von Empfängern, gegenüber denen Ihre Daten offengelegt wurden oder werden, die geplante Speicherdauer, das Bestehen eines Rechts auf Berichtigung, Löschung, Einschränkung der Verarbeitung oder Widerspruch, das Bestehen eines Beschwerderechts, die Herkunft ihrer Daten, sofern diese nicht bei uns erhoben wurden, sowie über das Bestehen einer automatisierten Entscheidungsfindung einschließlich Profiling und ggf. aussagekräftigen Informationen zu deren Einzelheiten verlangen;
  • gemäß Art. 16 DSGVO unverzüglich die Berichtigung unrichtiger oder Vervollständigung Ihrer bei uns gespeicherten personenbezogenen Daten zu verlangen;
  • gemäß Art. 17 DSGVO die Löschung Ihrer bei uns gespeicherten personenbezogenen Daten zu verlangen, soweit nicht die Verarbeitung zur Ausübung des Rechts auf freie Meinungsäußerung und Information, zur Erfüllung einer rechtlichen Verpflichtung, aus Gründen des öffentlichen Interesses oder zur Geltendmachung, Ausübung oder Verteidigung von Rechtsansprüchen erforderlich ist;
  • gemäß Art. 18 DSGVO die Einschränkung der Verarbeitung Ihrer personenbezogenen Daten zu verlangen, soweit die Richtigkeit der Daten von Ihnen bestritten wird, die Verarbeitung unrechtmäßig ist, Sie aber deren Löschung ablehnen und wir die Daten nicht mehr benötigen, Sie jedoch diese zur Geltendmachung, Ausübung oder Verteidigung von Rechtsansprüchen benötigen oder Sie gemäß Art. 21 DSGVO Widerspruch gegen die Verarbeitung eingelegt haben;
  • gemäß Art. 20 DSGVO Ihre personenbezogenen Daten, die Sie uns bereitgestellt haben, in einem strukturierten, gängigen und maschinenlesebaren Format zu erhalten oder die Übermittlung an einen anderen Verantwortlichen zu verlangen;
  • gemäß Art. 7 Abs. 3 DSGVO Ihre einmal erteilte Einwilligung jederzeit gegenüber uns zu widerrufen. Dies hat zur Folge, dass wir die Datenverarbeitung, die auf dieser Einwilligung beruhte, für die Zukunft nicht mehr fortführen dürfen und
  • gemäß Art. 77 DSGVO sich bei einer Aufsichtsbehörde zu beschweren. In der Regel können Sie sich hierfür an die Aufsichtsbehörde Ihres üblichen Aufenthaltsortes oder Arbeitsplatzes wenden.

8. Widerspruchsrecht
Sofern Ihre personenbezogenen Daten auf Grundlage von berechtigten Interessen gemäß Art. 6 Abs. 1 S. 1 lit. f DSGVO verarbeitet werden, haben Sie das Recht, gemäß Art. 21 DSGVO Widerspruch gegen die Verarbeitung Ihrer personenbezogenen Daten einzulegen, soweit dafür Gründe vorliegen, die sich aus Ihrer besonderen Situation ergeben oder sich der Widerspruch gegen Direktwerbung richtet. Im letzteren Fall haben Sie ein generelles Widerspruchsrecht, das ohne Angabe einer besonderen Situation von uns umgesetzt wird.

Möchten Sie von Ihrem Widerrufs- oder Widerspruchsrecht Gebrauch machen, genügt eine E-Mail an info@sn-media.com

9. Datensicherheit
Wir verwenden innerhalb des Website-Besuchs das verbreitete SSL-Verfahren (Secure Socket Layer) in Verbindung mit der jeweils höchsten Verschlüsselungsstufe, die von Ihrem Browser unterstützt wird. In der Regel handelt es sich dabei um eine 256 Bit Verschlüsselung. Falls Ihr Browser keine 256-Bit Verschlüsselung unterstützt, greifen wir stattdessen auf 128-Bit v3 Technologie zurück. Ob eine einzelne Seite unseres Internetauftrittes verschlüsselt übertragen wird, erkennen Sie an der geschlossenen Darstellung des Schüssel- beziehungsweise Schloss-Symbols in der unteren Statusleiste Ihres Browsers. Wir bedienen uns im Übrigen geeigneter technischer und organisatorischer Sicherheitsmaßnahmen, um Ihre Daten gegen zufällige oder vorsätzliche Manipulationen, teilweisen oder vollständigen Verlust, Zerstörung oder gegen den unbefugten Zugriff Dritter zu schützen. Unsere Sicherheitsmaßnahmen werden entsprechend der technologischen Entwicklung fortlaufend verbessert.

10. Aktualität und Änderung dieser Datenschutzerklärung
Diese Datenschutzerklärung ist aktuell gültig und hat den Stand Mai 2018.
Durch die Weiterentwicklung unserer Website und Angebote darüber oder aufgrund geänderter gesetzlicher beziehungsweise behördlicher Vorgaben kann es notwendig werden, diese Datenschutzerklärung zu ändern. Die jeweils aktuelle Datenschutzerklärung kann jederzeit auf der Website unter http://www.sn-media.com von Ihnen abgerufen und ausgedruckt werden.