Die Lieblings-Apps der Deutschen

am 26 Nov 2017 in Aktuelles von
Bisher unkommentiert »

Egal ob in der Schlange beim Bäcker, morgens in der U-Bahn oder daheim auf dem Sofa…. Überall ist bei vielen Deutschen das Smartphone mit dabei. Und das nicht nur in der Tasche, sodass man keinen dringenden Anruf verpasst. Nein, ich sehe immer mehr Menschen die dieses (mehr oder weniger) kleine Gerät in der Hand halten, wie wild darauf herum tippen und mit gesenktem Kopf durch die Welt gehen. Doch womit beschäftigt sich der deutsche Durchschnittsbürger, wenn er auf sein Smartphone schaut?

Deutsche nutzen am liebsten Apps zur Kommunikation. Ihre liebsten App-Anwendungen sind daher im Bereich Social und Messaging. 2016 nutzten User diese Apps fast doppelt so häufig wie noch im Jahr zuvor.
Beliebt sind Social- und Messaging-Apps in Deutschland vor allem wegen des Trends zum “Communitainment” – also dem Teilen unterhaltsamer Inhalte mit Freunden oder Bekannten. Außerdem werden über die gängigen Chat-Apps vermehrt Sprach- und Videoanrufe geführt.

Whatsapp steht so mit großem Abstand auf Platz 1 der deutschen Lieblingsapps. Bis 2015 hatten schon fast 25 Mio. Menschen in Deutschland diese Messenger-App auf ihrem Gerät installiert. Aber auch Facebook und der dazugehörige Facebook-Messenger standen hoch im Kurs.
Weitere Social Apps wie Twitter, Instagram, Snapchat oder Youtube sind ebenfalls sehr beliebt bei Deutschen sowie internationalen Usern – liegen aber im Ranking hinter Whatsapp und Facebook.

Whatsapp steht so mit großem Abstand auf Platz 1 der deutschen Lieblingsapps. Bis 2015 hatten schon fast 25 Mio. Menschen in Deutschland diese Massenger-App auf ihrem Gerät installiert. Aber auch Facebook und der dazugehörige Facebook-Messanger stehten hoch im Kurs.
Weitere Social Apps wie Twitter, Instagram, Snapchat oder Youtube sind ebenfalls sehr beliebt bei deutschen sowie internationalen Usern – liegen aber im Ranking hinter Whatsapp und Facebook.

In ganz Europa werden auch vermehrt Business- und Finanz-Apps verwendet. In Deutschland liegen diese Apps im Ranking direkt hinter Social- und Messeging-Apps und hatten im letzten Jahr ein Wachstum von 69 Prozent.

Unabhängig vom Anwendungsgebiet mögen die Deutschen am liebesten kostenlose Apps. Alle Apps, die sich in den Top 20 der Downloadzahlen befinden, können von Smartphone- und Tablet-Besitzern kostenlos herunterladen werden.

Das lässt darauf schließen, dass der praktische Nutzen der Apps klar im Vordergrund liegt. So sind auch Wetter– oder Taschenrechner-Apps bei den Deutschen sehr beliebt.

Interessant ist, dass es Spiele-Apps trotz großer Beliebtheit (vor allem bei Kindern und Jugendlichen) nicht in die Top 10 geschafft haben. Nach einem kurzen Trend nimmt die Nutzung und damit auch die Downloadzahlen der Apps wieder stark ab. AngryBirds liegt im Downloadranking bei Android immerhin noch auf Platz 13, kann aber mit den Apps anderer Kategorien nicht mithalten. Auch das Beispiel der Spiele-App „Pokemon go“ zeigt, dass ein Trend im Bereich der Spiele oft nur von kurzer Dauer ist.

Auch Wissens-Apps sind bei den Deutschen beliebt. Ein Beispiel dafür ist der Übersetzungs-Anbieter LEO, der zwischen verschiedenen Sprachen ganz einfach Wörter übersetzen lässt. Gerade bei alltäglichen Sprachproblemen kann eine solche App hilfreich sein und Pannen vermeiden.

Immer mehr Verkehrsbünde bieten Informations- und Auskunftsapps für ihre Region an. In diesen Apps können dann Fahrplane, Wegbeschreibungen oder aktuelle Verbindungen für die öffentlichen Verkehrsmittel (Bus, Zug, S-Bahn, U-Bahn,…) eingesehen werden. Auch aktuelle Informationen wie Zugausfälle, Bauarbeiten oder Gleisstörungen können den Nutzern problemlos angezeigt werden.
Neben den Apps der deutschen Bahn ist für diese Art der Apps der Verkehrsbund in München (MVV) ein vorbildliches Beispiel. Sie bieten ihren Kunden verschiedene Apps, die auf die einzelnen Bedürfnisse angepasst sind. So ist mit diesen Apps selbst das Fahrscheinlösen direkt vor Ort über das Smartphone längt zum Alltag geworden.

Auch Schnäppchenjäger kommen auf ihre Kosten. Immer mehr Apps bieten mit günstigen Angeboten Käufern und Verkäufern einen unkomplizierten Prozess an. kaufDA ist ein Besipiel für eine App, mit der Angebote schnell gefunden werden können, sodass bei einem Kauf möglichst viel Geld gespart werden kann. Aber auch „Vermittlungs“- Apps wie Sphock, Ebay oder Kleiderkreisel sind bei den Deutschen immer beliebter.

Quellen

https://netzoekonom.de/2015/12/28/die-lieblings-apps-der-deutschen-facebook-fuehrt-klar-vor-google-und-apple/
http://www.focus.de/digital/multimedia/focus-studie-zeigt-die-lieblingsapps-der-deutschen_aid_838504.html
https://www.wuv.de/digital/diese_apps_nutzen_die_deutschen_am_liebsten
https://www.android-user.de/lieblings-apps-der-android-user-redaktion/

FloNET – evolutionäres Lernen

am 26 Nov 2017 in Aktuelles, Tech von
Bisher unkommentiert »

Vor ca. Einem Jahr beschloss ich, herauszufinden wie man Neurale Netzwerke benutzt um Intelligente Programme programmieren zu können. Das Thema künstliche Intelligenz ist ein Thema, das in Zukunft immer mehr Teil unseres täglichen Lebens wird, daher ist es sicher kein Fehler, etwas Wissen in diesem Gebiet zu haben. Umso erfreuter war ich, als ich ein Video mit dem Titel “Deep Learning without an PhD” fand, anscheinend eine einfache Anleitung als Videoform. Als ich jedoch bereits nach wenigen Minuten gar nichts mehr verstand, stellte ich das Thema Neurale Netzwerke ersteinmal hinten an. Etwas später fand ich diesen Artikel (Den Blog kann ich übrigens nur wärmstens empfehlen!). Dort wird auch unter anderem beschrieben, wie ein Gehirn grundsätzlich funktioniert. Auf Basis von diesem Wissen konnte ich dann eine eigene Version eines Neuralen Netzwerks programmieren.

Funktionsweise

Die Funktionsweise meiner Version ähnelt teilweise verbreiteten Methoden, jedoch gibt es auch einige Unterschiede. Ich werde im Folgenden meine Version beschreiben, doch der Grundgedanke eines Neuralen Netzwerks ist überall der selbe.

Das Neuron

Ein Neuron ist der kleinste Teil eines Neuralen Netzwerks, und damit auch von unserem Gehirn. Ob ein Neuron ein Signal weitergibt, das es erhalten hat, hängt davon ab wie stark es aktiviert wurde. Wurde das Neuron oft genug und mit genug Energie aktiviert, gibt es irgendwann einen Impuls an weitere Neuronen weiter.

In diesem Bild ist ein Neuron dargestellt, wie ich es in meiner Implementierung benutze. Von der vorherigen Schicht übergibt ein Neuron in diesem Beispiel einen Wert von 1.3 an das Neuron. Dieses würde nun null weitergeben, da der Threshold-Wert von 2.1 nicht überschritten wurde. Jedoch übergibt ein zweites vorheriges Neuron zusätzlich noch den Wert 1.8. Das Neuron addiert alle Werte, die es bekommt, und vergleicht es mit seinem Threshold Wert. In diesem Fall wurde er überschritten, weshalb das Neuron seinen festgelegten Outputwert weiterreicht. Dieser ist für jedes Neuron individuell, genau wie sein Threshold-Wert. Durch diese parametergesteuerte Interaktion können einfache Logikoperationen ausgeführt werden.

Das Netz

Das Netz besteht aus vielen verbundenen Neuronen, wie es oben beschrieben wurde. In diesem Beispiel besitzt das Netz 3 Inputfelder/Neuronen. Diese Werte werden von dort an die erste Reihe an Neuronen weitergeleitet. Dieses Netz besitzt 3 sogenannte “hidden layers”. Diese sind für die Berechnung der Outputwerte zuständig, in diesem Fall sind es 2. Alle Parameter können frei gewählt werden, und an das jeweilige Szenario angepasst werden.

Wie geeignet, oder “intelligent”, ein Netz ist, hängt davon ab, wie die Parameter der einzelnen Neuronen gewählt werden. Dann sind gängige Machine Learning Aufgaben wie Bild- oder Spracherkennung möglich. Auch wenn diese modellhaften Netze nicht exakt dem eines Gehirns nachempfunden sind, sind sie doch recht ähnlich. Das heißt, mit den richtigen Parametern müssen sehr intelligente Systeme möglich sein, da uns das biologische Vorbild beweist, was mit einfacher Signalübergabe möglich ist.
Doch diese Parameter des Netzes müssen erst einmal bestimmt werden. Mit zufälligen Parametern wird das Netz nur zufällige Ausgaben machen, die niemandem etwas Nützen. Die größten Unterschiede zwischen verschiedenen Machine Learning Methoden liegen genau hier, bei dem kritischen Teil. Komplexe Methoden, versuchen zum Beispiel, zu analysieren, welche Parameter besser zum Ziel verholfen haben, und welche nicht, und passt diese entsprechend an. Dies ist jedoch mathematisch sehr komplex, weshalb ich mich für eine andere Methode entschied:

Evolution

Ich verwende Auslese und Mutation, wie sie aus der Darwinistischen Evolutionstheorie stammt, um die Fitness meiner Netze zu steigern. Zu Beginn generiere ich eine festgelegte Anzahl an Netzen. Die Netze sind in ihren Netzeigenschaften gleich, jedoch werden alle Parameter der Neuronen zufällig bestimmt. Dazu gehören die Parameter maxX, outX und welche Neuronen miteinander verbunden sind. Zu diesem Zeitpunkt wird mit sehr hoher Wahrscheinlichkeit kein Netz ansatzweise einen Zweck erfüllen. Jedoch teste ich trotzdem jedes Netz, und bestimme einen Fitness-Wert. Dieser sagt aus, wie gut das Netz abgeschnitten hat. Habe ich zu jedem Netz eine Bewertung, kann ich beginnen, die nächste Generation vorzubereiten. Dafür sind 3 Schritte notwendig:

  1. Auslese
    Die Netze, die in der Rangliste in der unteren hälfte sind, werden gelöscht. (Das Gegenstück in der Realität wäre einen Darwin-Award zu gewinnen)
  2. Mutation
    Die Plätze, die durch die Auslese frei geworden sind, werden ersetzt durch neue Netze. Diese sind mutierte Versionen der Netze, die in der Rangliste die obere Hälfte besetzen. Bei einem Mutationsvorgang werden die Parameter der Neuronen leicht abgewandelt. So entsteht ein Netz, das teilweise neue Eigenschaften besitzt, zum Größten Teil jedoch noch dem Vorfahren-Netz entspricht. Die Mutation findet unter bestimmten Parametern statt, die angeben wie wahrscheinlich eine Mutation ist, und wie stark sich diese Auswirkt.
  3. Frisches Genmaterial
    Da die Netze mit jeder Generation ähnlicher werden, kann es sein dass sie sich in eine bestimmte Richtung entwickeln, von wo keine Möglichkeit zu einer Lösungsfindung vorhanden ist. Deshalb werden mit jeder Generation wenige Verlierer ersetzt durch komplett neu zufällig generierte Netze.

Löst ein Netz eine Aufgabe besonders gut, wird es auch in der nächsten Generation vorhanden sein. Es wird erst aussortiert werden, wenn es von vielen anderen Netzen in der Fitness überholt wurde, Zum Beispiel durch Mutationen von sich selbst, die kleine Verbesserungen aufweisen. Auf diese Weise werden die Parameter immer besser gewählt. Dieser Evolutionäre Lernvorgang wird dann beendet, wenn die Ergebnisse zufriedenstellend sind. Das Gewinner Netz der letzten Generation kann nun alleine verwendet werden, um Aufgaben zu lösen. Da die Rechnung, die in einem Netzwerk passiert auf einfachen Rechnungen basiert, ist die Endlösung auch relativ performant.

Diese Art des Lernens ist im Vergleich mit anderen Lernmethoden nicht sehr elegant, da es zum Großteil auf Zufall und “trial and error” basiert.

Implementierung: Autonomes Fahren

Um FloNET zu testen habe ich in Unity eine Umgebung gebaut, in der Fahrzeuge durch Hindernisparcours navigieren können. Jedes Fahrzeug besitzt fünf Sensoren, die in Unterschiedlichen Winkeln den Abstand zu einer Wand angeben. Diese fünf Abstände werden an das Neurale Netz weitergegeben, das dem Fahrzeug zugeordnet ist. Das Netz bestimmt basierend darauf den Wert, der das Fahrzeug steuert (Lenkung) Dafür wählte ich Netze mit drei hidden layers, sechs Neuronen in einem layer, fünf Inputs und einem Output. Jede Generation besteht aus 20 Fahrzeugen, die gleichzeitig Gegeneinander antreten. Kollidiert ein Fahrzeug mit einer Absperrung, bleibt es stehen. Ist die Zeit des Testlaufs um, wird die nächste Generation generiert. Als Fitnesswert wird die gefahrene Distanz der Fahrzeuge benutzt.

In dem Video ist ein Lernvorgang zu sehen, wie diese Fahrzeuge über mehrere Generationen immer weniger kollidieren, bis sie irgendwann die Teststrecke komplett durchqueren können.
Leider ist das Interface sehr unübersichtlich, doch manche Bezeichnungen solltest du aus dem vorherigen Text wiedererkennen können. Ab 1:20 sind die fühlerartigen Abstandssensoren als rote Linien zu erkennen.
In diesem Versuch ist es bereits nach zwölf Generationen gelungen, ein paar Netze zu erzeugen, die die Teststrecke durchqueren können. In diesem Fall war sehr früh ein Netz dabei, das bereits in den Grundzügen die Fähigkeit besaß, Hindernissen auszuweichen. Dies bringt die Evolution schneller voran. Doch auch mit weniger Glück sind die Netze spätestens nach 20 Generationen in der Lage, sicher zu navigieren.

Fazit

Der Ansatz über Evolution intelligente Systeme zu schaffen, halte ich für sehr vielversprechend, da wir Menschen auch ein Produkt der Evolution sind. FloNET ist in seiner Funktionalität sehr eingeschränkt, außerdem ist es mit PHP als Sprache nicht sehr performant. Ein großer Teil der außerdem noch zum biologischen Vorbild fehlt, ist die Fähigkeit, dass sich das Netz selbst anpassen kann. Die hier generierten Netze lernen nicht mehr, sobald sie eingesetzt werden.

Das Konzept von evolutionärem Lernen ist nicht neu, wie ich später feststellen musste. Es gibt bereits viele Beispiele im Internet. Dort habe ich mir dann auch die Idee abgeschaut, Fahrzeuge selbstständig fahren zu lassen.
Ich denke jedoch, dass es eine gute Demonstration ist, wie mächtig evolutionäre Algorithmen sein können. Ich denke dass es nicht die Lösung für Künstliche Intelligenz ist, jedoch glaube ich, dass es als Werkzeug sehr nützlich sein kann. So könnte man zum Beispiel spezielle Netze, die eigene Neuronenverbindungen herstellen können, nach ihrer Lernfähigkeit bewerten und evolutionär verbessern.

Falls du Interesse hast, FloNET zu benutzen, kannst du das gerne tun. Alle PHP Scripte findest du in dem Repository.

Die dunkle Seite des Internets

am 26 Nov 2017 in Aktuelles von
Bisher unkommentiert »

Wir schreiben Freitag, den 22.07.2016. Eine schreckliche Tragödie ereignet sich am Münchner Olympia-Einkaufszentrum. Der 18-jährige Schüler David S. schießt mit einer Pistole um sich und tötet neun Menschen. Nun stellt man sich die Frage: Wie ist es möglich, dass ein 18-Jähriger an eine Pistole kommt? Nach umfangreichen Ermittlungen stellte sich heraus, dass David S. seine Pistole ohne Weiteres aus dem Darknet erwerben konnte.

Was ist das Darknet?

Das Darknet, auch “deep web” genannt, ist ein Teil des Internets, welches jedoch nur über spezielle Software, wie z. B. dem Tor-Browser-Paket erreichbar ist. Das wichtigste Merkmal, was das Darknet von dem konventionellen Internet unterscheidet, ist die Anonymität. So ist es im “open web” kaum möglich komplett anonym zu surfen, da die IP-Adressen der User von allen Webseiten auf direktem Weg einem Standort zugeordnet werden können. Im Darknet hingegen gibt es keine direkten Verbindungen, denn das Darknet ist als sog. “Peer-to-Peer”-Netzwerk aufgebaut – das heißt, dass das Netzwerk zwischen einzelnen Nutzern besteht, also nicht zentralisiert ist. Das ganze funktioniert nach dem Zwiebelprinzip: Jede Verbindung geht über mindestens drei Knotenpunkte, wobei keiner der Server feststellen kann, woher die Anfrage kommt, wie sie Aussieht und wohin die Anfrage geht. Dieses Schichtenprinzip macht es quasi unmöglich den User zurückzuverfolgen und seine Aktionen nachzuvollziehen. Ein weiteres Merkmal des Darknets sind die URLs der Seiten, diese sind nicht so einfach aufgebaut wie im open web (Beispiel: http://onlinemedien.blog/), sondern sie bestehen aus zusammenhanglosen Buchstaben-Zahlen-Abfolgen (Beispiel: http://qzbkwswfv5k2oj5d.onion), damit die Seiten von anderen Usern nicht ohne Probleme gefunden werden können.

Wie ist es sonst möglich die Seiten im “deep web” zu finden?

Die meisten relevanten Seiten im Darknet sind in einer Linkliste, dem sog. “HiddenWiki” gesammelt. Das HiddenWiki sieht im Aufbau dem bekannten Wikipedia sehr ähnlich, enthält jedoch nur URLs von Seiten im Darknet. Einige Seiten sind jedoch nicht über das HiddenWiki erreichbar, sie sind nur nach Kontakt mit den Betreibern erreichbar, was es fremden Personen zusätzlich erschwert unbefugten Zugriff zu erhalten.

Wie kam David S. an die Waffe?

Die Anonymität, die das Darknet verspricht, machen sich viele Kriminelle zunutze, indem sie Seiten betreiben, auf denen illegale Güter und sogar illegale Dienstleistungen erwerbbar sind. So existieren im Darknet sogar Seiten, die sich mit Menschenhandel – also mit dem Handel lebendiger Menschen – befassen. Es ist auch möglich Falschgeld, Drogen und Waffen aller Art im Darknet zu kaufen.
Die zweite Hürde neben der Seitenfindung ist die Bezahlung im Darknet. Im Gegensatz zum herkömmlichen Bezahlprozess im Internet, ist es im “deep web” nicht möglich, über gängige Bezahlmethoden, wie PayPal oder Überweisung, zu bezahlen. Bezahlt wird mit Bitcoins, einer Onlinewährung, welche unter bestimmten Umständen, einen hohen Grad an Anonymität verspricht.

Der Amokläufer David S. kam über das Darknet schnell mit einem Waffenhändler aus Marburg in Kontakt. Dort trafen sich die Beiden nach kurzer Zeit für den Waffenhandel. Für 4000 € konnte sich David S. eine Pistole vom Typ Glock 17 mit dazugehöriger Munition kaufen, welche die Tatwaffe des Münchener Amoklaufs vom 22.07.2016 war.

Ist das Darknet deshalb böse?

Diese Frage ist nicht leicht zu beantworten, denn im Darknet existieren nicht nur Seiten mit illegalen Inhalten. Laut einer Statistik von Statista aus dem Jahre 2017 (siehe Abbildung 1) behandeln über ein Drittel der Seiten des “deep web” legale Themen.

Das hört sich im ersten Moment wenig an, jedoch ist es wichtig zu wissen, worum es sich bei diesen Seiten handelt. In totalitären Staaten, in denen es durch die Regierung verboten ist offen zu kommunizieren und seine Meinung zu äußern, bietet das Darknet ein Sprachrohr für die anonyme interne und externe Kommunikation. Gerade dieser Kanal ist unabdingbar für etliche Freiheitsbewegungen. Auch Whistleblower wie Edward Snowden kommunizierten über das Darknet mit den Medien. Das Schützen von Dissidenten war der ursprüngliche Gedanke des Darknets, der bis heute ein wichtiger Bestandteil geblieben ist.

Der Mensch macht den Unterschied

Letzten Endes muss jeder Mensch für sich entscheiden, wofür er das Darknet verwendet, jedoch ist diese Entscheidung mit Bedacht zu treffen, denn das Darknet ist keine gesetzesfreie Zone. Weltweit gibt es Ermittlungen gegen kriminelle Aktivitäten im Darknet – zum Teil mit Erfolg. Seit 2013 wurden international schon über 30 illegale Marktplätze zerschlagen und die Betreiber strafrechtlich verfolgt.

Auch Philipp K., der Waffenhändler, der David S. die Amokwaffe verkaufte, wurde von den Behörden verhaftet, nachdem diese Interesse an einem Waffenkauf vorgetäuscht haben und ihm anschließend mit einem Spezialkommando auflauerten. Angeklagt wurde Philipp K. wegen fahrlässiger Tötung und Waffendelikten. Hier hat die technische Anonymität, die ihm das Darknet verschaffte nicht weiterhelfen können, da er einen menschlichen Fehler beging und damit die Anonymität im Darknet aufgehebelt hat.

Quellen

Zollfahnder hatten Chatkontakt zu Münchner Amokläufer
Der Nazi aus dem Darknet
Was ist eigentlich das Darknet?
Wie funktioniert das Darknet?
Das TOR-Netzwerk nach Kategorien

Kollaboration über Microsoft Sharepoint

am 26 Nov 2017 in Aktuelles, Tech von
Bisher unkommentiert »

Sharepoint ist eine “Enterprise-Platform” von Microsoft, welche für Geschäftsanwendungen entwickelt wurde. Es bietet ein breites Portfolio an nützlichen und produktivitätssteigernden Funktionen für große und kleine Unternehmen.

Die Vorzüge von Sharepoint

Verbesserung der Teamproduktivität

Sharepoint beinhaltet viele Anwendungen innerhalb eines Systems, darunter zählen unter anderem Teamsites für die Kollaboration innerhalb eines Teams, eine umfangreiche Funktion zur Dokumentenablage und -organisation, sowie Benachrichtigungsfunktionen für Inhalte etc.

Umfangreiche Berechtigungsstruktur

Innerhalb von Sharepoint gibt es die Möglichkeit, die Berechtigungen nach Belieben anzupassen. So beschränken sich die Berechtigungsstufen nicht nur auf das Lesen, Schreiben und Löschen, sondern es sind sogar komplett eigene Berechtigungen einstellbar. Hierbei können die Berechtigungen vom Elternobjekt auf alle Subsites vererbt werden, oder, je nach Bedarf, auf einzelne Listen und Dokumenten spezifizierte Berechtigungen vergeben werden. Es ist auch möglich User-Gruppen zu erstellen (z. B. Abteilung, Team, Projektverantwortliche etc.).

Projektmanagement ohne Umwege

Durch sog. “Project Sites” hat man bereits wichtige Tools für das Projektmanagement auf einem Blick. Durch Features wie die Timeline, die einem die wichtigen Termine im Projektverlauf grafisch darstellt, kann es den Benutzern vereinfacht werden, das ganze Projekt im Überblick zu behalten. Die benutzerdefinierten Listen besitzen ein quasi unbegrenztes Potential für mögliche Projektmanagement-Maßnahmen.

Firmenweite Suchfunktion

Gerade bei großen Unternehmen ist es oft schwierig, bestimmte Dokumente zu finden, was zum Teil mit einem recht großen Zeitaufwand in Verbindung steht. Sharepoint bietet eine umfassende Suchfunktion, die – wenn sie richtig kalibriert ist – die Suchzeit auf ein Minimum reduziert.

Exzellente Dokumentenablage

Sharepoint ist eine hervorragende Plattform um Dokumente abzulegen und ist Netzwerklaufwerken überlegen. So kann man innerhalb einer Sharepoint Teamsite Dokumente jeglicher Art ablegen und kategorisieren. Ein besonderes Augenmerk wird hierbei auf Dateien aus Microsoft-Programmen gelegt (Word, Excel etc.). Diese sind direkt bearbeitbar und es besteht sogar die Möglichkeit Dokumente auszuchecken und zu versionieren, was die Kollaboration vereinfacht.

Möglichkeiten für ein Social Intranet

Da Sharepoint ein Web Content Management System ist, ist es damit ohne Weiteres möglich, ein Intranet innerhalb des Systems zu erstellen. Es gibt bei Sharepoint keinen vorgegebenen Seitenaufbau, denn das Layout aller Sites ist frei anpassbar. Durch einige soziale Funktionen, wie einer eigenen Profilseite (sog. “MySite”), sowie Likes und Kommentarfunktionen bietet Sharepoint eine optimale Basis für Firmenintranets. Durch die Anbindung an das Microsoft Active Directory, einem Nutzer-Verwaltungssystem, das mit Windows zu einem System mit einem Single-Sign-On kombiniert werden kann, werden Zugriffsprobleme ausgeschlossen.

Einfache Handhabung für Anwender

Microsoft Sharepoint hält sich an das Microsoft-typische Oberflächendesign, welches man bereits von Software wie Microsoft Word oder Microsoft PowerPoint kennt. Selbst für User, die mit Microsoft-Software nicht vertraut sind, bietet Sharepoint durch das minimalistische Design für den Endanwender dennoch eine hohe Benutzerfreundlichkeit. Nachdem eine Teamsite in Sharepoint angelegt wurde, besteht kaum Verwaltungsaufwand, was der Produktivität zugute kommt.

Anwendung von Geschäftsprozessen

Über Sharepoint ist es möglich, Geschäftsprozessen eine Form zu geben. Es gibt z. B. Möglichkeiten, Mitarbeiterbefragungen durchzuführen, was nur eine von vielen Anwendungen ist. Auch Aufgaben wie das Darstellen der Urlaubsplanung sind in Sharepoint mit Listen oder Zeitleisten durchführbar. Durch individuelle Workflows und Freigabeprozesse sind auch zusammenhängende Tätigkeiten standardisiert anlegbar. Ein Beispiel hierfür wäre die Anlage von neuen Mitarbeitern, welches mehrere Schritte beinhaltet (Mitarbeiter im HR anlegen, Hardware-Ausstattung, Zugänge anlegen etc.) und sich deshalb über mehrere Abteilungen erstreckt.

Hackerangriffe auf Fahrzeuge

am 22 Nov 2017 in Aktuelles von
Bisher unkommentiert »

Dass Computer, Smartphones oder auch Smart-TVs gehackt werden können ist nichts
Neues. Wie schaut es jedoch bei Autos aus?

Datenerhebung in Fahrzeugen

Autonom fahrende Autos nehmen eine Schlüsselrolle in der Zukunft der Mobilität ein,
doch auch heutzutage sind Autos schon rollende Computer. Bis zu 80 datenerhebende
Geräte arbeiten mittlerweile in einem modernen Auto, von denen viele bereits auch über
einen Internetzugang verfügen. Die Datenerhebung war ursprünglich zur Diagnose in
Werkstätten gedacht, mittlerweile verbauen jedoch auch KFZ-Versicherungen
sogenannte „Telematik-Boxen“, welche zahlreiche Daten erheben und an die
Versicherung übermitteln. Neben der Box kann auch ein entsprechendes Gerät an die
OBD-Schnittstelle (OBD = On-Board-Diagnose; Fahrzeugdiagnosesystem)
angeschlossen werden. Diese Systeme übermitteln Daten wie das Bremsverhalten, die
Geschwindigkeit oder die Position des Autos, sodass das Fahrverhalten beurteilt und
der Versicherungsbeitrag dynamisch angepasst werden kann.
Nachträglich installierte Smart-Dongles ermöglichen auch in älteren Fahrzeugen eine
Datenübertragung per WLAN oder SIM-Card, womit sich beispielsweise ein
elektronisches Fahrtenbuch führen lässt. Der Schutz von außen ist bei Dongles häufig
sehr mangelhaft, manche besitzen sogar sind nicht einmal einen Passwortschutz.

Erhebliche Sicherheitslücken mit lebensgefährlichen Auswirkungen

Dass all diese neuen Technologien potentielle Gefahren mit sich bringen, sollte klar
sein. Ein Hackerangriff auf ein Smartphone oder einen Computer ist für den Betroffenen
oft sehr ärgerlich und kann auch wirtschaftliche Folgen haben. Ein Hackerangriff auf ein
Fahrzeug kann jedoch auch lebensbedrohliche Auswirkung haben, wenn beispielsweise
Fahrassistenzsysteme beeinflusst werden.
Große Cyberattacken auf Fahrzeuge sind bislang nicht bekannt. Fakt ist aber, dass es
bereits im Jahr 2015 zwei amerikanischen Sicherheitsexperten gelungen ist, sich in das
Infotainmentsystem eines fahrenden Jeep Cherokee einzuhacken. Sie nutzten dafür die
Internetverbindung des Fahrzeugs und schleusten so einen Virus ein, mit dem sie auf
die Steuerung des Radios, der Klimaanlage, der Geschwindigkeit oder auch die
Bremsen zugreifen konnten. Der Hersteller benötigte acht Monate um die
Sicherheitslücke zu beheben – betroffen waren 1,4 Millionen Fahrzeuge. Dem Hack
gingen aber auch mehrere Monate Programmierarbeit voraus.
Fahrzeuge der Marke BMW konnten lange Zeit mit verhältnismäßig einfachen Mitteln
über das Mobilfunknetz entriegelt werden. Betroffen waren hier mehr als 2,2 Millionen
Autos, die mit dem Vernetzungssystem „ConnectedDrive“ ausgestattet waren und ab
März 2010 ausgeliefert wurden. Grund hierfür war eine Sicherheitslücke, auf die der
ADAC zufällig gestoßen ist.

Ausblick

Ob es solche Sicherheitslücken auch bei anderen Herstellern gibt ist völlig unklar.
Dennoch steht die Automobilindustrie in der Pflicht sichere Systeme zu entwickeln und
vor allem eine IT-Architektur zu schaffen, die es heutigen Autos ermöglicht, auch noch in
10 oder 20 Jahren sicherheitstechnisch optimal geschützt zu sein. Durch die immer
stärkere Vernetzung steigen auch die Möglichkeiten für kriminelle Aktivitäten, da neue
Systeme auch neue Sicherheitslücken mit sich bringen.

Quellen:

http://www.faz.net/aktuell/wirtschaft/unternehmen/allianz-warnt-vor-hackerangriffen-aufautos-
15251834.html

http://www.handelsblatt.com/auto/test-technik/heikle-datenstroeme-im-fahrzeug-84-
prozent-fuerchten- hacker-angriffe-im-auto/9547924-2.html

http://www.faz.net/aktuell/wirtschaft/netzwirtschaft/wikileaks-enthuellungen-ist-einhackerangriff-auf-
ein-auto-moeglich-14916347.html

https://blog.lapid.de/der-richtige-fahrstil-machts-telematik-tarife-von-versicherungen
http://www.focus.de/digital/computer/auto-hacker-angriff-auf-auto-hersteller-luecke-nurbei-us-
jeep_id_4832650.html

React

am 16 Nov 2017 in Aktuelles von
Bisher unkommentiert »

Was ist der Grund für das Bestehen von ReactJs neben anderen großen Frameworks wie Angular, Ember, Backbone, Vue und all den anderen? Was unterscheidet das Framework von den anderen erwähnten, was ist JSX und wie funktionieren hier Komponenten?
Diesen Fragen möchten wir in diesem Blog-Artikel auf den Grund gehen. Doch zuvor sollten wir klären, worum es sich bei ReactJs überhaupt handelt.

Was ist ReactJS?

In vielen Internetforen streiten sich zahlreiche Entwickler darum,
welches das bessere Framework ist. Dabei wird ReactJs mit
AngularJs oder VueJs verglichen. Doch dabei wird leider ein sehr
wichtiger und großer Unterscheid von ReactJs zu den meisten
anderen Frameworks übersehen oder vielleicht auch nur ignoriert.
ReactJs ist kein komplettes Frontend-Framework wie zum
Beispiel Angular. Während Angular ein Full-Stack-Frontend-
Framework ist, beschreibt React bei dem bekannten Model-View-
Controller-Modell (MVC-Modell) hauptsächlich das „V“, also die
View.

Das ist ein Unterschied, welchen viele Entwickler nicht verstehen.
React gibt dir lediglich eine Template-Sprache und einige dazugehörige Funktionen, um HTML zu rendern. Als nicht mehr und nicht weniger versteht React seine Aufgabe. React ist nur ein Framework, um Komponenten, welche mit HTML und JavaScript erstellt werden, zu generieren und diese mit ihren verschiedenen Status im Browser als HTML anzuzeigen.

Alleine mit React können daher auch keine voll funktionsfähigen, dynamischen Anwendungen erstellt werden.

Vorteile von React

Virtual DOM

Ein großer Vorteil von React ist der sogenannte virtual DOM. Hier benutzt React nicht den normalen Browser DOM, sondern pflegt seinen eigenen DOM. Dadurch kann ReactJS bei einer
Änderung einer Komponente genau prüfen, was sich visuell geändert hat, und kann dann nur diesen Teil der Anwendung aktualisieren.

JSX

Auch die „eigene“ Templatesprache JSX ist ein großer Vorteil von ReactJs. Mittels dieser Syntax können ganz einfach HTML und JavaScript vermischt werden. Hier kann dann ähnlich wie bei Templatesprachen wie TWIG oder JADE ganz einfach ein Template mit JavaScript-Variablen erstellt werden, welche sich dynamisch ändern.

Serverseitiges Rendern

Auch die Tatsache, dass React auf dem Server zu HTML gerendert werden kann, ist ein riesiger Vorteil von ReactJs. Denn dadurch erhöht sich die SEO wesentlich im Vergleich zu anderen JavaScript Frameworks.

UI-Tests

Auch lassen sich mit React sehr einfach und intuitiv UI-Tests integrieren. Dadurch kann die Funktionsfähigkeit von Anwendungsoberflächen garantiert werden, und es unterstützt das Test-Driven Developement!

Nachteile von React

Doch React hat nicht nur Vorteile, was es zu einem alternativlosen Framework machen würde, sondern hat auch ein paar Nachteile verglichen mit anderen Frameworks.

Nur View-Ebene

Wie bereits erwähnt, bedient React nur das „V“ vom Model-View-Controller-Modell. Was es einerseits einfacher macht, ist andererseits ein Nachteil. Denn man hat mit ReactJs nicht eine All-in-one-Lösung, sondern benötigt für die anderen Teile des MVC-Modells andere Frameworks oder Lösungen.

Kein Event-System

Auch bietet ReactJs kein eigenes Event-System, das einige Arbeiten erleichtert, sondern es muss auf andere Alternativen oder Lösungen zurückgegriffen werden.

Relativ schwieriger Einstieg

Ein weiterer Minuspunkt für ReactJs ist die relativ flache Lernkurve. Es ist schwierig, in die Welt von React einzusteigen. Wenn jedoch erst mal die Grundlagen gelernt sind, lassen sich sehr schnell sehr schöne Anwendungen erstellen.

Wann sollte React verwendet werden und wann nicht?

Es hängt von den Anforderungen an die Website ab, ob React eingesetzt werden sollte oder nicht. Wenn jedoch eine große Anwendung mit vielen verschiedenen Komponenten und vielen verschiedenen Interfaces erstellt werden soll, kann ReactJs eine gute Lösung sein. Nicht umsonst nutzen sehr viele Seiten im Internet React. So wird React beispielsweise bei Facebook, Instagram oder auch bei der Webversion von WhatsApp verwendet.
Um noch mehr über React zu erfahren und einen kleinen Einstieg in das Programmieren mit ReactJs zu erhalten, empfehle ich dir dieses Video.

http://www.pro-tekconsulting.com/blog/advantages-disadvantages-of-react-js/
https://blog.andrewray.me/reactjs-for-stupid-people/
https://www.quora.com/What-are-the-advantages-of-using-React-js-for-an-application-instead-of-Angular-js-and-Ember-js
https://stories.jotform.com/7-reasons-why-you-should-use-react-ad420c634247
https://www.reddit.com/r/reactjs/comments/4edsvi/does_facebook_use_react_on_facebookcom/
https://upload.wikimedia.org/wikipedia/commons/thumb/a/a0/MVC-Process.svg/436px-MVC-Process.svg.png
https://www.pexels.com/photo/access-app-application-apps-267399/