Screenshots von Snapchat Bildern machen

Ihr kennt bestimmt Snapchat. Das ist eine App, mit der man Bilder verschicken kann, welche dann durch Drücken ein paar Sekunden beim Gegenüber angezeigt werden und danach für immer verschwinden. Ideal für.. ihr wisst schon was. Ich persönlich hielt die App bisher immer für maximal bescheuert, weil man ja ganz einfach einen Screenshot des Fotos machen kann und voilà, der Drops ist gelutscht. Früher schien das auch zu funktionieren, mittlerweile jedoch nicht mehr. Wird ein Screenshot erstellt, bekommt die gegnerische Seite nämlich eine Benachrichtigung à la "XYZ took a screenshot". Ich verwende die App nicht, daher ist mir das auch ziemlich egal, ich war jedoch - als ich heute morgen von dem Feature gehört habe - von dem technischen Aspekt angetan. Wie erkennt Snapchat unter iOS, dass ein Screenshot erstellt wurde, wo die API doch sehr eingeschränkt ist. Eine kurze Befragung meiner Lieblingssuchmaschine ergab, dass das ganze in der Tat nicht so einfach ist.

Es gab zwei Wege, wie man als App-Entwickler diese Events abfangen kann. Der eine Weg ist wohl, dass der Digitizer kurz den Fokus verliert, wenn man mit dem Finger auf dem Bildschirm ist und einen Screenshot macht. Da man bei Snapchat bekanntlich den Finger auf dem Bild halten muss, bis der Timer abgelaufen ist, ist das also ideal. Jedoch scheint diese Technik nicht unter iOS 7 (zumindest in/ab der Beta 2) zu funktionieren. Das konnte ich nicht überprüfen, da ich aktuell die iOS 8 Beta 2 laufen habe. Aufgrund des Ausschlussverfahrens muss es also entweder wieder aktiviert worden sein oder es gibt eine dritte Methode. Aber kommen wir erst zur zweiten Idee:

Hat eine App Zugriff auf die Galerie, so ist es möglich einfach das letzte Bild zu analysieren. Erscheint plötzlich ein Bild in der Galerie, dessen Maße mit der des Displays übereinstimmen, ist es sehr wahrscheinlich, dass gerade ein Screenshot erstellt wurde. Da Snapchat bei mir allerdings keinen Zugriff auf die Galerie hatte (ich habe das überprüft, und ja: Kamera ist nicht gleich Galerie), muss es entweder Methode 1 oder eben Methode 3 sein, welche bei Snapchat verwendet wird.

Aber genug des Nerdgeschwafels. Ich habe durch ein wenig Experimentieren einen Weg gefunden, wie man trotz Schutzmechanismus - zumindest unter iOS - mit der Snapchat-Version 7.0.4 (die aktuellste bei Erscheinen des Blogposts), einen Screenshot erstellen kann, ohne dass der Partner dies mitbekommt:

  1. Ist ein Snap angekommen, wird er sofort heruntergeladen. Man kann vor dem Ansehen also den Flugzeugmodus aktivieren.
  2. Nun sieht man sich das Bild an (Finger auf dem Bildschirm halten) und macht dabei einen Screenshot (Power + Home-Button). Der Finger bleibt dabei natürlich auf dem Display.
  3. Bevor der Timer abläuft, muss die App nun beendet werden. Ein Doppelklick auf den Home-Button öffnet den App Switcher. Auch, wenn der App-Switcher offen ist, muss der Finger auf dem Display bleiben.
  4. Mit der zweiten Hand zieht man nun die Snapchat-App nach oben weg, um die App zu beenden. Der andere Finger muss bis die App beendet wurde auf dem Display bleiben.
  5. Jetzt deaktiviert man den Flugzeugmodus, öffnet die App wie gewohnt und sieht sich das Bild noch einmal an ohne einen Screenshot zu machen. Der Timer beginnt dabei noch einmal von vorne.
Ich bitte euch diesen Hack nicht zu verwenden, wenn eure Gegenseite nichts davon weiß. Ich schreibe trotz alle dem einen Blogpost darüber, in der Hoffnung, dass Snapchat selbst das ganze mitbekommt und diesen Bug rauspatcht.

Happy Snapping! (Ich finde die App immer noch unsinnig.)

YaCy - P2P Suchmaschine

YaCy_logoYaCy ist eine alternative Suchmaschine, die ein etwas anderes Konzept verfolgt, als Google, Bing, DuckDuckGo und co. YaCy setzt auf ein dezentrales Peer-to-Peer Netzwerk. Das bedeutet es gibt keine Serverfarm, die von einem Anbieter gestellt wird, sondern jeder Client trägt seinen Teil bei. Die Suche im Netz setzt also eine auf dem PC installierte Software voraus. Ist die Anwendung einmal installiert, funktioniert sie folgendermaßen:

Im Hintergrund wird ein Webserver gestartet, der die Suche hostet. Anschließen kann im Browser über http://localhost:8090 auf die Suche zugegriffen werden. Startet man nun eine Suchanfrage, so kontaktiert YaCy andere Rechner, die ebenfalls die Software installiert haben, sich als Seeder (also als Server) anbieten und einen Teil der indexierten Daten lokal gespeichert haben, und fragt sie nach Resultaten. Diese werden dann in der Suchmaske ausgegeben.

Der Vorteil an diesem System liegt auf der Hand: Nicht nur ist es sehr anonym und frei von der Möglichkeit Seiten aus dem Index zu entfernen, es ist außerdem auch sehr kostengünstig. Es gibt keinen Dienstleister, der eine Infrastruktur zur Verfügung stellen muss. Es muss nur genug Leute geben, die diesen Service ebenfalls nutzen. Diese Leute können dann einen großen Index bieten und selbst Seiten indexieren (crawlen).

Damit dieses System allerdings funktioniert, müssen einige Voraussetzungen erfüllt sein. Zunächst einmal muss dem Entwicklerteam klar sein, dass das Internet zum größten Teil nicht aus Leuten wie ihnen besteht - den Freaks - sondern aus 0815-Nutzern, die wissen, wie man den Internet Explorer öffnet und wie man dieses Googel bedient. Und genau hier sehe ich das Problem bei YaCy. Mal davon abgesehen, dass es bei meinen Tests regelmäßig abgestürzt ist und sehr langsam war, ist es einfach viel zu komplex. Niemand will sich Stundenlang mit einer Suchmaschine beschäftigen müssen.

Das ganze fängt schon auf der Website des Projekts an. Man wird direkt auf der Startseite mit viel Text konfrontiert. Das ist wohl gute Schule bei Open Source Projekten, schreckt jedoch den Laien eher ab. Was fehlt ist eine Demonstration des Dienstes - Sprich: die Suche. Natürlich ist das Ziel der Download der Software um das Projekt voran zu treiben, trotzdem sollte der Hauptaugenmerk nicht darauf gerichtet sein. Gefällt einem Nutzer das Projekt, so wird er von alleine versuchen, den Dienst zu unterstützen. Und wenn man dafür nur eine kostenlose Datei runterladen muss, warum denn nicht.

Update 26. November: Ich habe eine Demo gefunden! Keine Ahnung, ob sie schon immer da war, gut sichtbar ist sie allerdings nicht. Unter dem Menüpunkt "Search Portal" findet man letztendlich einen Link zur Demo. Dort wird dann auch noch einmal hervorgehoben wie wichtig es ist, dass man doch den Client herunterlädt. Und auf viele Nutzer scheint die Demo wohl auch nicht ausgelegt zu sein. Ich bekomme zumindest manchmal einen 503-Error. Das ist natürlich optimal für eine Demonstration.

Und hier setzt schon der zweite Punkt an: Der Download-Button ist zwar ganz oben, jedoch in der Sidebar und nicht vom Rest des Contents abgehoben. Ich habe beispielsweise mehrere Sekunden gebraucht, bis ich den Button gefunden habe. Das klingt erst einmal nicht tragisch, macht aber trotzdem etwas aus. Das nächste Problem ist dann die Auswahl des Betriebssystems. Jedem ist klar, welches System er drauf hat, oder? Falsch. Anhand des User Agents sollte der Download für das aktuell installierte Betriebssystem deutlich hervorgehoben werden. So verhindert man, dass sich der Nutzer denkt: "Das ist mir eh zu kompliziert. Was ist überhaupt dieses GNU/Linux?"

Screen Shot 2014-05-27 at 17.30.44 Gut finde ich, dass sowohl Webserver als auch Datenbank bereits in YaCy integriert sind. Das sorgt für eine schnelle und reibungslose Installation. Dass das ganze auf localhost unter Port 8090 läuft, ist nicht gerade schön, ich bin mir allerdings nicht sicher, ob man das so einfach umgehen kann. (Kann man die hosts-Datei unter Windows einfach so erweitern? Oder nimmt man eine "Jumppage", der auf localhost:8090 weiterleitet, wenn dieser erreichbar ist?)

Pflücken wir doch mal das Interface auseinander. Die Suchmaske sieht schön und aufgeräumt aus. Bis man dann auf "Search" drückt. Die Resultate scheinen nicht im Mittelpunkt zu stehen, da der Filterbereich links sehr dominant ist. Zudem werden sie nicht übersichtlich präsentiert. Meistens erscheint nur der Seitentitel ohne einen Textausschnitt, die Keywords werden nicht hervorgehoben, das Design sieht "hingefrickelt" und überladen aus und ist allgemein nicht sehr ansprechend gestaltet. Will man eine neue Suche starten, indem man auf das YaCy-Logo oben links drückt, kommt man nicht wie erwartet auf die Eingabemaske, sondern auf die Startseite des Projekts. Dieser Link ist wohl absolut fehl am Platz.

yace

Auch die Bildersuche ist nicht sonderlich ansprechend. Man bekommt bei einem Mouseover keine weiterführenden Informationen (erst nach einem Klick - und dann auch nur unzureichend), die Navigation unten ist nicht vom Inhalt gelöst, die Bilder werden immer gestreckt und gestaucht, egal welches Format sie haben und einige Elemente überlappen andere. Es macht also nicht wirklich Spaß damit zu suchen. Mal ganz davon abgesehen, dass wohl noch keine wirklich brauchbaren Suchergebnisse erscheinen. Da es das Projekt allerdings schon seit 2005 gibt, würde ich bessere Ergebnisse erwarten.

yaceKommen wir nun zum Administrations-Interface. Auch das ist vollkommen überladen und erschlägt einen regelrecht mit Informationen. Doch darauf möchte ich hier nicht eingehen. In der Standard-Konfiguration ist YaCy so konfiguriert, dass es nur als Client arbeitet. Es verbindet sich also mit anderen Rechnern und sucht dort. Das ließe sich auch - wie vorher schon angemerkt - über eine Website realisieren. Zwar versucht die Software (vermutlich per UPnP) das benötigte Port-Forwarding zu konfigurieren, damit es auch als Server arbeiten kann, doch das ist allgemein der falsche Weg (vor allem, weil es von den meisten Heimroutern unterbunden wird). Es existieren genug alternative Konzepte, die ohne Port-Forwarding auskommen und das sollte schnellstens in YaCy implementiert werden. Das ganze bringt nunmal nichts, wenn man die User zwar Clients installieren lässt, diese aber keinen Mehrwert für die Community haben. Dann kann man gleich einen Webservice anbieten und muss den Nutzer keine Software installieren lassen.

Auch sollte YaCy mehr Wert auf den Crawler legen. Dieser springt aktuell nur an, wenn man ihm sagt "Crawle mal diese Domain". Das kann bei einer Suchmaschine nicht die einzige Möglichkeit sein. Ich verstehe, dass man bei einem Client nicht standardmäßig einen aggressiven Crawler laufen lassen kann, der das ganze Internet nach dubiosen Websites absucht, trotzdem sollte man dem User die Möglichkeit geben seinen PC als Crawler zur Verfügung zu stellen. Ich stelle mir das so vor, dass es eine globale Crawl-Liste gibt, die dann von beliebigen Clients abgearbeitet werden kann. Dort sollte auch berücksichtigt werden, dass Websites aktuell gehalten werden müssen. Momentan funktioniert das ganze nämlich eher weniger.

Mein Fazit: Die Idee ist wundervoll. Wie so oft bei Projekten, die nicht von einer Firma geleitet werden, bin ich aber von der Umsetzung enttäuscht. Auch hier kann man ganz klar die Vor- und Nachteile von Open Source sehen. Wenn YaCy erfolg haben möchte, sollten sie einige Punkte noch einmal überdenken. Natürlich habe auch ich die Weisheit nicht mit dem Löffel gegessen, trotzdem glaube ich, dass die Behebung der oben genannten Punkte das Projekt um einiges weiterbringen würden.

Eine Kamera-App unter Windows 8

Ich besitze ein Tablet mit Windows 8. Nun wollte ich eine ganz einfache Aufgabe damit erledigen. Ich wollte ein Video mit der integrierten Kamera machen und dabei im Internet surfen. Unter OS X und Linux ist das ja kein Problem. Unter Android und iOS nicht möglich. Da Windows 8 ein vollwertiges 64bit Desktop-Betriebssystem ist, ging ich also davon aus, dass das nicht so schwer sei.

Ich starte die ab Werk mitgelieferte Windows 8 Modern-UI Kamera-App, drücke auf den "Video aufnehmen"-Knopf und zack, das Video nimmt auf. Jetzt drücke ich den Windows-Button um in den Browser zu wechseln und plötzlich hört die Kamera auf zu filmen.

"Dann probier ich halt eine andere App." Windows Store geöffnet, andere Kamera-App ausgesucht (die nebenbei nie mehr als 3 Sterne haben), installiert - selbes Problem. Scheint wohl mit den Modern-UI-Apps nicht zu funktionieren. Dann halt zurück zu den Grundlagen und eine Windows 7 Anwendung installieren. Ein wenig googeln hat mir den Free Webcam Recorder  vorgeschlagen. Ich lade ihn also runter und bekomme: einen Downloader.

Dieser Downloader will mir sage und schreibe vier - ich wiederhole: vier - andere Programme unterschieben, die ich mal eben installiere, wenn ich auf accept drücke. Da ich nicht gerade neu in der Windows-Welt bin weiß ich, dass ich auf "Ablehnen" drücken muss, um zur eigentlichen Anwendung zu kommen. Nach 4 Ablehnungen öffnet sich dann endlich der Downloader, der mir den Installer downloaded. Anschließend öffnet sich der Installer. Und wieder werde ich 4x aufgefordert Software zu installieren, die ich nicht möchte. Schadsoftware, die meine Standard-Suchmaschine umbiegt, Add-Ons und Toolbars installiert. Ich habe nun also 8x auf Ablehnen gedrückt und die gewünschte Software nach einer gefühlten Ewigkeit erfolgreich installiert.

Doppelklick.

an-app-on-your-pc-needs-the-following-windows-feature-.net-framework-3.5-includes-.net-2.0-and-3.0

Ich bin dann mal auf ubuntu.com.

Wer die Distro nutzt, der ist selbst schuld.

Nein.   Am liebsten würde ich den Blogpost so stehen lassen. Ich finde das "Nein." sagt alles darüber aus. Aber dann könnte ich mir das ganze hier auch schenken. Also, worum geht es? Unter GNU/Linux gibt es ja bekanntlich irrsinnig viele Distributionen - kurz: Distros - welche alle unterschiedliche Eigenschaften und Basis-Systeme haben. Der gemeinsame Nenner: Der Linux-Kernel. Möchte man nun ein System aufsetzen, muss man eine Entscheidung treffen. Bin ich ein Anfänger oder bin ich fortgeschritten? Nutze ich lieber RPM, DEB oder bin ich ein Hipster, der lieber selbst compiled? Brauche ich eine GUI? Wenn ja, nehme ich KDE, GNOME, MATE, Xfce, awesome, i3? Kurz: Es gibt unendlich viele Möglichkeiten. Ist alles schön und gut. Nur stellt sich mir da die Frage: Brauch ich das? Die Antwort ist für mich ganz klar: Nicht wirklich. Natürlich ist es nice to have, wenn da nicht die ganzen Minuspunkte wären. Der große Minuspunkt von Open Source: Jeder kann mitmachen. Ich mein, versteh mich nicht falsch, das ist wunderbar, nur hat es eben auch diverse Nachteile. Viele verzichten auf QA, also die Qualitätssicherung. Man muss also bei jedem Update Angst haben, dass es einem das komplette System zerschießt. Natürlich kann man das als Linux-Profi locker wieder beheben, aber sind wir mal ehrlich: Das ist doch scheiße. Und ja, das ist mir schon oft passiert. Ein weiterer Nachteil von Open Source ist, dass man alles forken kann. Forken bedeutet, dass man ein Projekt kopiert und es getrennt weiterentwickelt. Es entstehen also zwei Versionen eines Projektes. Beide mit kleinen Anpassungen. Auch das ist toll, nur kostet es unnötig Ressourcen. Anstatt also an einem Projekt so lange zu arbeiten, bis es gut wird, entscheiden sich die meisten einfach: "Lass uns unser eigenes Projekt starten." Das Resultat: Ein Fork mit einem Bugfix, welcher es vermutlich nie in das ursprüngliche Projekt schafft. Der Fork wird dann noch kurz weiterentwickelt oder bleibt ein Randprodukt mit ein paar mehr Features, die irgendwie nur 5 Leute auf diesem Planeten brauchen. Bestes Beispiel: Desktopumgebungen. Da gibt es z.B. GNOME 2. Aus dieser Version ist nicht nur GNOME 3 hervorgegangen, sondern auch die GNOME Shell, Cinnamon, MATE und garantiert noch eine Handvoll kleinerer Projekte. Warum? Weil alle etwas eigenes, cooles machen wollten und sich keiner einig war, wie es jetzt weiter gehen soll. Was haben wir jetzt? Vier Desktopumgebungen, welche alle nur halbwegs gut funktionieren, weil es der einen an Grafikern fehlt, der anderen an Programmierern und wieder andere haben einfach zu viele Bugs. Was wäre wohl, wenn wir statt vier Umgebungen nur eine oder vielleicht zwei hätten? Ganz genau. Wir hätten gebündelte Manpower, die ein Projekt ordentlich fertig bringt. GNU_Linux_distro_timelineDieses Konzept lässt sich auch auf Distributionen anwenden. Es gibt eine sehr schöne Übersicht aller etwas größeren Linuxdistributionen und deren Herkunft. Guck dir die Grafik links an. Da kann mir kein Mensch sagen, dass das sinnvoll ist. Das ist einfach nur noch Quatsch. Es macht Sinn ein paar Basissysteme zu haben, zwischen denen man wählen kann. Aber diese Fülle an Distributionen ist absoluter Quatsch und komplett unsinnig. Das Grundproblem von GNU/Linux ist also die Freiheit. Das, was Linux ausmacht. Deswegen ist das Betriebssystem in meinen Augen perfekt für Server, weil dort genug Geld fließt um Qualitätskontrolle zu bieten und stabile und sichere Systeme zu erstellen. Red Hat, SUSE (und Debian) zeigen, dass das möglich ist. Für den Desktop ist GNU/Linux jedoch nichts. Die alltäglichen Anwendungen laufen nur bedingt (Beispiel Photoshop. Wer hier ankommt mit "GIMP ist eine Alternative", der hat noch nie wirklich mit Photoshop gearbeitet. Gleiches gilt für Videoschnitt und co.) und gerade die GUIs sind was die Optik und die Usability angeht schrecklich, da es zu wenig Designer und UX-Freaks in der Community gibt. screenshot43Ich selbst arbeite gefühlt länger daran meine Systeme am Funktionieren zu halten als an meiner eigentlichen Arbeit. Auch hier habe ich natürlich ein Beispiel parat (siehe Bild rechts). Ich wollte auf meinem openSUSE 13.1 die Entwicklungsumgebung für Java - kurz JDK - installieren um meine Java-Anwendung zu kompilieren. Geht ja ganz einfach per Paketmanager. Das openJDK (nächstes Thema: Lizenzen. Aber damit will ich erst gar nicht anfangen) ausgewählt und installiert. Funktioniert super. Nur leider ist nicht drin, was drauf steht. In dem Paket enthalten ist nur die JRE. JRE ist nur die Laufzeitumgebung, entwickeln kann man mit ihr nicht. Was tun? Das dazugehörige Devel-Paket installieren. Macht ja Sinn, oder? Genau. Machts nicht. Und selbst wenn man dann beide Pakete installiert, meckert javac, dass ihm die JRE fehlt. So macht Arbeiten Spaß. Jetzt kann man natürlich argumentieren: Ja, selbst schuld, wenn du openSUSE benutzt. Verwende halt [hier beliebige Distro einfügen]. Das hab ich dann auch getan. Drei Jahre hab ich jede erdenkliche Distribution ausprobiert und bin zu dem Entschluss gekommen: Es ist schlicht egal. Jede Distro hat irgendwo irgendwelche exorbitant peinlichen Probleme, welche bei der Größe des jeweiligen Projektes nicht auftreten dürften.

Okay Google Now!

Das Motorola Moto X ist das in der Leitung von Google entstandene Mittelklassesmartphone, in dem sie neue Features testen wollten, welche nicht direkt in die Nexus-Serie einfließen sollten. So kommt das Moto X mit einer besonderen CPU, bei der die 4 Kerne wie folgt aufgeteilt werden: Zwei der Kerne sind für die tägliche Nutzung des Smartphones und machen all das, was sonst keiner übernehmen will. Ein weiterer Kern ist nur darauf spezialisiert den Bewegungssensor des Smartphones zu kontrollieren. Und weil er nur das macht, ist er relativ Stromsparend. Das hat zum Vorteil, dass ohne hohen Energieaufwand erkannt wird, ob das Handy geschüttelt wird (dann startet nämlich die Kamera) oder ob es aus der Hosentasche geholt wird (dann wird eine minimalistische Nachrichtenanzeige auf das Display geschalten (s. Bild), welche ebenso fast keinen Strom verbraucht, da bei AMOLED nur die Pixel aktiviert werden, welche auch wirklich etwas anzeigen). Der vierte und letzte Kern sorgt für Stimmerkennung. Das Mikrofon lauscht also immer - auch, wenn das Handy im Standby ist - mit, und filtert die Wortfolge "Okay Google Now" heraus. Wird das ausgesprochen, so hört das Handy auf weitere Sprachbefehle.

SONY DSCUnd um eben dieses Thema wird sich der Blogpost drehen. So super ich das Konzept auch finde, so schwierig ist es auch umzusetzen. Während das Feature in allen Reviews hoch gelobt wird, möchte ich es hier ganz nüchtern mit allen Stärken und Schwächen betrachten. Versteh mich nicht falsch, das Handy ist super und für den Preis optimal, ich werde es auch weiter behalten und die aktive Spracherkennung ist cool, aber sie ist definitiv verbesserungsfähig.

Fangen wir mit dem Aktivieren des Zuhör-Modus' an. Das geht mit der Wortfolge "Okay Google Now" - und auch nur mit der. Vor der initialen Verwendung muss man drei mal die magischen Worte einsprechen, damit es nur auf die eigene Stimme hört. Spricht man andere Worte ein, werden sie nicht erkannt. Schade eigentlich, ein "Okay, du alter Lappen" wär bestimmt lustig geworden. Und das mit der eigenen Stimme klappt auch nur bedingt. Haben zwei Personen ähnliche Stimmen, so lässt sich das Handy auch von der anderen Person aktivieren. Ich stelle mir das im Klassensaal der Zukunft wie folgt vor: Der Lehrer kommt rein, schreit einmal "Okay Google Now!" und los geht das "pling-pling" bei 50% der Schüler. Denn ja, auch in der Hosentasche lässt sich Google Now (manchmal) aktivieren. Und ja, auch im lautlosen Modus bekommt man eine akustische Bestätigung, nachdem die Worte ausgesprochen wurde. Und nein, das lässt sich nicht anpassen. Wenigstens aktiviert es sich nicht, wenn man ähnliche Kombinationen sagt. Es muss schon sehr danach klingen. Mit "Okay Google Frau" klappt es allerdings auch.

Ist das Handy also einmal in den Zuhör-Modus gewechselt, was relativ zuverlässig - aber nie, wenn man es demonstrieren will - funktioniert, so kann man sprechen. Wenn man nah genug an dem Gerät dran ist. Kann ja sein, dass ich vor mich hin nuschle, aber auch, wenn mein Moto X auf das "Okay Google Now" reagiert, wenn ich am anderen Ende des Raumes bin, so ignoriert es alles, was folgt, sehr gekonnt. Meiner Vermutung nach liegt das daran, dass es etwas falsch konfiguriert ist und dank der aktiven Geräuschunterdrückung einfach mal alles als Störgeräusch rausfiltert, da es nicht direkt von vorne kommt. Der Im-Bett-Liegen-Und-Eben-Mal-Nach-Der-Uhrzeit-Fragen-Usecase fällt somit also flach, sofern man nicht direkt mit dem Mund am Nachttisch liegt.

Apropos nach der Uhrzeit fragen. Das - und vieles mehr - funktioniert nur, wenn man die Touchless Control-App von Motorola NACHINSTALLIERT. Pluspunkt: Das funktioniert nur auf Englisch, Spanisch, Französisch und Portugiesisch. Möchte man Google Now also sinnvoll nutzen, so muss man es auf Englisch stellen. Anderenfalls hat man anschließen in seiner Google-Search-History Dinge wie folgt stehen:

Screen Shot 2014-03-08 at 21.31.10

 

Gut, mal davon abgesehen. Wir nutzen Google Now nun also auf Englisch. Ein Screenshot zeigt das Ergebnis:

BiOu_6fIAAATtKBCool, das klappt gut! "remind me to take the trash out tomorrow" hat ohne Probleme funktioniert. Die Felder wurden ausgefüllt und die Erinnerung kann gesetzt werden. Moment. Kann? Ja! Einfach nur noch auf "Remind me at this time" drücken und schon ist der Reminder gesetzt.

Ja. Wirklich. Ich muss einen Button drücken. Da gibt es kein Timeout oder so etwas, wie es z.B. beim Stellen des Weckers der Fall ist. Wenn ich erinnert werden möchte, muss ich einen Button drücken. Warum? Das macht das gesamte Konzept einer Sprachsteuerung kaputt. Ich sitz im Auto und will mich erinnern lassen. Ich muss einen Button drücken. Ich hab das Handy in der Tasche und will mich erinnern lassen. Ich muss einen Button drücken. Klar erspar ich mir das Entsperren und das Tippen, trotzdem ist das einfach absoluter Quatsch.

Wer hat sich das ausgedacht?

Naja, gut. Also: Fazit. Das Konzept ist wirklich hervorragend und die Anwendung wird aktiv weiterentwickelt, so ist vor einem Tag z.B. eine Funktion dazu gekommen, welche mir nach einem einfachen "Okay Google Now, what's up?" die Uhrzeit und alle Benachrichtigungen vorliest. Super praktisch! Ich hoffe daher, dass so kleine Malheurchen wie das Erkennen der Stimme aus weiter Entfernung oder das Drücken des Buttons bald behoben werden. Alternativ könnte man sich auch mit Tasker eine andere Spracherkennungsapp davor packen, aber ich will nicht schon wieder anfangen mein Smartphone bis ins kleinste Detail zu modden. Von daher: Wer gerne bastelt und gerne Bleeding Edge ist, der sollte auf jeden Fall zuschlagen. Alle anderen: Lieber erstmal das Nexus 5.

Google baut Trojaner für Windows 8 und das Internet bekommt ein Update

Zugegeben, das mit dem Internet-Update steht so nicht da, aber der Rest stimmt. Die Welt - eine Tageszeitung der Axel Springer AG - hat mal wieder bestätigt: Internet ist für uns alle Neuland und der Durchschnittsbürger ist BILD-Leser. Konkret geht es um folgenden Artikel: Google schleust trojanisches Pferd in Windows 8 ein

Jeder, der weiß, was der Unterschied zwischen dem Internet und einem Browser ist, der weiß auch, dass die Überschrift kompletter Bullshit ist. Gucken wir uns doch mal die Definition für "Trojanisches Pferd" an:

Als Trojanisches Pferd, im EDV-Jargon auch kurz Trojaner genannt, bezeichnet man ein Computerprogramm, das als nützliche Anwendung getarnt ist, im Hintergrund aber ohne Wissen des Anwenders eine andere Funktion erfüllt. Wikipedia
Liest man sich nun den Artikel aufmerksam durch, stellt man fest, dass damit der ChromeOS-Mode gemeint ist, den Google in der neuen Chrome-Version integriert hat. Genauer geht es darum, dass Chrome mittlerweile als Windows 8-App gestartet werden kann und das UI von Chrome OS mitliefert. Sieht dann so aus:

Google

Fährt man wie bei Windows 8-Apps üblich an einen der Ränder, so kommt man zurück zum Modern UI-Launcher. Alles in allem lässt sich also sagen: Google hat Chrome der Windows 8 Designrichtlinie angepasst. So eine Frechheit!!1 Ein Trojanisches Pferd haben sie in den Windows 8-Kernel eingeschleust, der direkt bei der Installation von Windows 8 im Hintergrund ausgeführt wird!!!!

Die Autoren J. Kupillas und L. Winckler sollten sich schämen, so einen Unsinn zu verbreiten. Als optimistischer Mensch ging ich dann davon aus, dass wenigstens in den Kommentaren ein Shitstorm gegen die nicht vorhandene Kompetenz der Autoren eingeletet wurde. Ja, weit gefehlt.

menschheit_in_einem_bild

Ich bin dann mal weg.

Hardwarebasierte Fernwartung

Immer wieder gibt es das Problem, dass man auf seinen Rechner aus der Ferne zugreifen möchte, wenn dieser nicht gebootet ist. Dann gibt es entweder die Möglichkeit über Umwege den Rechner mit einem WOL-Request zu starten oder ihn.. naja.. nicht auszuschalten. Was aber, wenn der Rechner dauerhaft dem physikalischen Zugriff entzogen ist und man das System neu aufsetzen möchte? Ohne entsprechendes Recovery-System oder einen Depp-Vom-Dienst-Der-Knöpfe-Drücken-Darf-Service wird man dann nicht weit kommen. Klar, Fernwartungssoftware gibt es zu genüge und auch bei virtualisierten Systemen ist das alles kein Problem, doch gibt es immer noch genug Systeme, die allein aus Performance-Gründen auf dem Host laufen müssen und bei denen eine Einbuße der Rechenleistung durch Aufnahme und Übertragung des Bildschirminhaltes eher suboptimal wäre.

Warum also keine hardwarebasierte Fernwartung? Intel bietet mittlerweile eine KVM-Remote-Technik an, welche theoretisch genau das macht, was ich mir vorstelle, nur gibt es dort zwei Schwachpunkte:

  1. Es braucht wieder eine Person, die ein Passwort angibt. Eine vorkonfigurierte Fernwartung ist also nicht möglich.*
  2. Die CPU sowie das Mainboard müssen diese Technologie unterstützen. Und damit sind sie raus.
Das Konzept

Ähnlich einem KVM-Switch werden Tastatur, Maus, Netzwerk und Video gesplittet und einmal an einen Minicomputer übertragen, welcher später die Fernwartung übernimmt, sowie an die eigentlichen Geräte weitergeleitet. Der Nutzer kann also problemlos weiter auf seinen Monitor starren, sein Internet benutzen und mit Maus und Tastatur Eingaben tätigen. Der Minicomputer nimmt wenn nötig das Bildschirmsignal auf und leitet es über einen per Internet erreichbaren "Proxy"-Server an den Client weiter, andersrum nimmt dieser Maus- und Tastatur-Eingaben von dem entfernten Rechner entgegen und leitet sie weiter an den Endrechner. Somit ist es einem möglich den Rechner vom BIOS an zu steuern und das ganz ohne, dass das System zusätzliche Rechenaufgaben erledigen muss.

Die theoretische Umsetzung

Voraussetzungen:

  • USB-Switch, der es ermöglicht zwei Peripheriegeräte (Maus und Tastatur) von zwei Hosts an einen weiterzuleiten
  • (Ethernet-Switch, der sowohl dem Host als auch dem Minicomputer einen Netzwerk-Port bereitstellt)
  • HDMI-Splitter, der ein HDMI-Signal auf zwei Ausgänge aufteilt
  • HDMI-Capture-Modul, das das HDMI-Signal interpretieren und als Stream wiedergeben kann
  • Minicomputer, der mit dem Rechner, dem Switch und dem Server kommuniziert
  • Proxy-Server, der von beiden Seiten erreichbar ist (erspart Port forwarding)
  • Client-, Proxy- und Server-Software
Steckt man all das elegant zusammen, so bekommt man ein fertiges Produkt, das man als fertigen Service anbieten kann. Die Switches, der Splitter, das Aufnahmegerät und der Minicomputer sind alle in einem kompakten Gerät enthalten, welches der Anwender letzten Endes nur noch zwischen PC und Ein-/Ausgabegeräte stecken muss. Sobald der Minicomputer eine Netzwerkverbindung bezogen hat, kann er sich anhand seiner Seriennummer beim zentralen Server melden und wird dann einem Useraccount fest zugewiesen, welcher nur noch den Client auf einem entfernten Rechner installieren muss. Damit nicht jeder, der das Passwort hat einfach so auf den Bildschirm gucken kann, gibt es natürlich viele Möglichkeiten. Eine wäre, eine Two-Factor Authentication, bei der der Nutzer die Fernwartung erst per Code bestätigen muss oder eine einfache Leuchtdiode, welche anfängt zu blinken, sobald gestreamt wird.

Die Vorteile, die sich mir bei diesem Konzept erschließen sind denke ich mal klar ersichtlich: Wer diese Hardware hat, kann sie garantiert auch nutzen. Wenn also Omi oder Mutti ständig ein Problem mit dem Rechner hat, kann man ihr schnell eine solche Box dazwischen schalten (welche denke ich für 30-40 Euro bei Massenproduktion verkauft werden kann) und muss sich nie wieder Sorgen um den PC machen. Ebenso kann man seine eigenen Systeme fernwarten, selbst wenn der VPN mal wieder ausfällt, weil die FritzBox vergessen hat dem dynamischen DNS-Server ihre neue IP mitzuteilen.

Nachteil: Kostet.

 

*vielleicht lässt sich das aber konfigurieren, wovon ich jedoch nicht ausgehe, da das eine Sicherheitslücke für Unternehmen darstellen würde.

Warum HTC pleite geht

Dass es HTC, dem Smartphonehersteller, nicht gerade gut geht, ist keine weltbewegende Neuheit. Samsung verdrängt nahezu alle Konkurrenten komplett und wer keinen Rückenwind bekommt (wie z.B. LG und Motorola von Google oder Nokia von Microsoft), der hat ein echt schweres Leben. Aus diesem Grund wird es nicht mehr all zu lange dauern, bis HTC nicht mehr unter uns weilen wird. Das wäre enorm schade, da ich deren Smartphones eigentlich immer sehr bevorzugt habe, auch, wenn das HTC One ein Reinfall war.

Was macht HTC so besonders? Nun, HTC ist neben Apple die einzige Marke, die Wert auf das Äußere legt. Während Samsung, LG und co. möglichst praktische und billige Gehäuse aus Plastik bauen, priorisiert HTC hochwertigere Materialien und bessere Verarbeitung. Außerdem setzt HTC auf Innovation und überlegt sich, welche Features den Nutzern gefallen könnten. Dadurch bekommen Smartphones dann beispielsweise eine Infrarot-Fernbedienung und HTC Sense spendiert. Doch auch die inneren Werte sind HTC nicht egal. Bei den Premium-Smartphones ist stets die aktuellste Hardware verbaut.

Aber all das kostet Geld. Um das auszugleichen fährt HTC jedoch eine falsche Strategie. Während sie versuchen mit ihren High-Class-Geräten eine Konkurrenz zu Apple zu bieten, bauen sie nebenher Smartphones wie das Wildfire, welche billig in der Produktion sind und an die nicht so anspruchsvolle Kundschaft rausgehen um die High-Class-Entwicklung zu finanzieren. Ein gewaltiger Fehler.

Viele tasten sich langsam an die Smartphone-Welt heran. Oft hört man "zum Einstieg ist mir ein gutes Smartphone nicht wichtig, deswegen habe ich mir das XYZ vom Noname-Hersteller Soundso gekauft". Viele kaufen auch als erstes Smartphone ein billiges HTC-Phone, da es.. naja.. billig ist. Die meisten Anwender sind mit diesem Billigphone aber nicht ansatzweise zufrieden, da es langsam ist, nicht genug Speicher hat, eine alte Android-Version installiert hat, der Akku nicht lange hält, etc. pp. Die Liste ist endlos weiterzuführen. In diesem Moment steht immer jemand neben einem, der ein iPhone oder ein Samsung Galaxy Sx hat, der dann sagt "ja, ich hab das Problem nicht. Meins funktioniert". Ist ja auch ganz logisch. Er hat das Doppelte wenn nicht sogar das Dreifache dafür bezahlt. Doch das geht im Gespräch unter. Das Fazit, das diese Person dann zieht, ist: "HTC ist scheiße. Das nächste Handy wird ein Samsung." Das Problem hierbei ist, dass der normale Anwender nicht zwischen Modell und Hersteller differenziert. Achte mal darauf, wenn du bei Gesprächen zuhörst. Wenn jemand fragt, was man für ein Handy hat, kommt als Antwort entweder "ein iPhone", "ein Galaxy Sx" (hier wird interessanterweise differenziert), "ein Samsung", "ein HTC" oder "ein Huawei".

Der nächste Punkt, den HTC - aber auch Samsung - falsch machen: Es gibt unendlich viele Versionen mit unendlich vielen Features. Guckt man sich mal die Modelle an, die es allein zum HTC One gibt, dann sind das: HTC One, HTC One Vanilla, HTC One Mini, HTC One Max, HTC One SV, HTC One XL, HTC One S, HTC One V, HTC One X.. hab ich irgendeins vergessen? Kommt schon HTC. Ist das euer Ernst? Wer blickt da noch durch? Wenn du nicht gerade in einem entsprechenden Fachgeschäft arbeitest oder es nicht dein Hobby ist, alle Smartphones zu kennen, bin ich mir sicher, dass niemand, aber auch gar niemand in der Lage ist, die Smartphones einzuordnen.

Ein weiteres Problem ist HTC Sense. Die Features sind ja alle schön und gut, aber warum muss dadurch das gesamte OS verunstaltet werden, und vor allem: warum muss das ruckeln? Wenn ihr schon unbedingt ein angepasstes OS liefern müsst um ein größeres Featureset zu haben, dann macht es möglichst unabhängig vom Core-System oder bietet wenigstens die Möglichkeit das Standard-System wiederherzustellen. Das hilft erstens bei der Usability, da jeder, der schon einmal ein Android-Smartphone in der Hand hatte mit HTC klarkommen würde, andererseits auch bei der Performance sowie beim Update-Support. Ich kann mir vorstellen, dass es nicht gerade Spaß macht jedes Update komplett durchzupatchen und zu testen, damit es bei jedem Smartphone funktioniert.

Und das ist der nächste und letzte Punkt: Quality Assurance. Das, was fast nirgends gut läuft. Auch bei mir nicht. Trotzdem ist es essenziell. Was bei Apple dank Steve Jobs immer wunderbar funktioniert hat und jetzt (siehe iOS 7) sehr nachgelassen hat, ist die Qualitätssicherung. Alles, was nicht idiotensicher war und nicht zu 99% fehlerfrei und innovativ war (egal ob die Innovation jetzt geklaut wurde oder nicht), wurde eingestampft oder angepasst, bis das Endresultat nahezu perfekt war. Das funktioniert bei Samsung was die Software angeht sehr gut. Samsungs TouchWiz bietet wesentlich weniger Fehler als beispielsweise HTC Sense.

Die wichtigsten Punkte noch einmal zusammengefasst: Wenn HTC erfolg haben möchte, müssen sie die billigen Smartphones einstellen und sich ausschließlich auf Premium-Hardware konzentrieren, die Auswahl der Telefone filtern und nur vollendete Systeme anbieten, das Betriebssystem nicht zu arg entfremden und zu guter Letzt die Hard- und Software intensiv testen.

Was ist deine Meinung zu diesen Punkten? Worauf legst du bei Smartphones wert? Und was glaubst du, wie HTC in Zukunft aussehen wird?

Coin

Am 29.02.2012 21:35, schrieb Karim Geiger:
Hi *,

ich hab mich heute über die vielen unterschiedlichen Karten im Geldbeutel aufgeregt, die ja doch einiges an Platz wegnehmen und immer mehr werden: Kreditkarte, EC-Karte, BahnCard, Busfahrkarte, ADAC-Karte, Versicherung, etc...

Warum gibt es nicht eine universelle Karte, auf der die ganzen Daten (elektronisch) gespeichert werden - vielleicht sogar mit Minidisplay oder soetwas.

Wenn es einen Hardware-Switcher o.ä. an der Karte gibt, der immer nur eine gespeicherte Karte an das System raus gibt, fällt das kollektive Sammeln von Kartendaten doch auch weg, oder? So kann man dann zwischen Kreditkarte 1 und Kreditkarte 2 beispielsweise wechseln.

Diese Mail ging am 29.02.2012 an eine firmeninterne Mailingliste. Die Antworten darauf waren entweder "braucht doch keiner", "läuft in Zukunft alles über das Telefon" oder "ist zu unsicher".

Aufgrund des großen Anklangs und dem vergleichbar hohen Aufwand habe ich die Idee natürlich sofort wieder verworfen, bis mir vor kurzem jemand den Link zu Coin geschickt hat. Das in 2014 startende Projekt ist eine exakte 1 zu 1-Kopie meiner Idee: Eine Verknüpfung von beliebig vielen Karten, welche per Hardwarebutton und Minidisplay gewechselt werden können. Zugegeben, das Feature, dass die Karte via Bluetooth meckert, wenn sie vom Smartphone entfernt wird, ist neu, aber die Grundidee ist exakt die selbe.

Theoretisch könnte ich also mittlerweile auf der faulen Haut liegen und meine Millionen zählen, die ich dank der Umsetzung der Idee gemacht hätte. Wär ja nicht das erste mal, dass Ideen von mir, die erst für sinnlos oder unnütz gehalten werden, umgesetzt werden. Ärgerlich. Mal gucken, welche Idee als nächstes umgesetzt wird. Auf meiner Liste stehen noch ein paar.

Von MPEG-4/H.264, WebM/VP8 und OggTheora

Es ist 4 Uhr und ich sitze seit knapp 3 Stunden daran, ein Video auf meine Website zu stellen. Ist ja eigentlich nicht schwer. Hochladen, entsprechenden Player finden und einbinden, fertig. Theoretisch. Das Tolle ist, dass ich natürlich alle Browser unterstützen möchte, eine Allergie gegen Flash habe und Wert auf Qualität lege. Mit diesen drei meiner Meinung nach absolut nachvollziehbaren und nicht zu viel verlangten Punkten ist es aber nahezu unmöglich eine Lösung zu finden.

Wir leben im 21. Jahrhundert, dem Zeitalter der Medien. Da möchte man doch meinen, dass es schon die ein oder andere Person vor mir gab, die versucht hat ein FullHD-Video auf einer ganz normalen Website einzubinden. Auch möchte man meinen, dass es kein all zu großes Hexenwerk ist, diese einfache Aufgabe zu erledigen. Leider leben wir aber auch im Zeitalter der Patentkriege und des Wettstreits. So haben es die großen Browserhersteller noch immer nicht geschafft etwas derartiges auf die Beine zu stellen.

In dieser Tabelle ist schön übersichtlich aufgezeigt, welcher Browser was nicht kann. Die einzigen zwei Videoformate, die von allen Browsern (Internet Explorer ist kein Browser) unterstützt werden, sind das neue WebM von Google und das freie Ogg. So weit so gut. Ein Standard. Ich werd verrückt, ist ja wunderbar! Gleich mal das 1080p-Video in die beiden Formate konvertieren und gucken, welches die bessere Qualität hat.

Gesagt, getan. Alle Videos miteinander verglichen und - heilige Scheiße. Dass die sich überhaupt trauen mit so etwas an die Öffentlichkeit zu gehen.. das ist doch peinlich. Weder das ganz neue und gehypte ach so tolle WebM noch Ogg haben auch nur annähernd ein klares Bild. Die Datei ist zwar schön klein, aber man kann sogar die Pixel zählen. Für mein altes Sony Ericsson CyberShot-Handy mit einem 1,9 Zoll-Bildschirm sieht das bestimmt wunderschön aus, aber an einem Computerbildschirm mit einer höheren Auflösung als 1024x768 Pixeln ist so ein Video ein Graus. Von HD keine Spur. Du glaubst mir nicht? Sieh selbst (ein Klick vergrößert):

Gut, WebM und Ogg sind also raus. Bleibt noch MP4. Laut Tabelle wird das ja von allen bis auf Opera unterstützt. Wait, what? Oh. Kleingedrucktes: Chromium kanns nicht und bei Firefox steht etwas von "Partial". Etwas herunter gescrollt sieht man, was das Partial bedeutet: Windows kanns, OS X nicht und von Linux ist keine Spur. Aber Hauptsache Firefox OS steht mit auf der Liste.

Ich stehe nun also vor folgendem Problem: Einen Tod muss ich sterben. Doch welchen?

  1. Ich supporte nicht alle Browser. - Inakzeptabel. Ich denke da muss man nicht groß drüber reden.
  2. Ich mache Abstriche in der Qualität. - Klar. Retina gibts ja noch nicht und FullHD wird auch überbewertet. Das ist also auch inakzeptabel.
  3. Ich nutze Flash. Flash kann - warum auch immer - mit allen Formaten umgehen. Und jeder Browser kann Flash. Abgesehen von den mobilen Browsern. Da muss wieder eine HTML5-Version her. Ist das nicht super?
Also, meine Damen und Herren: IST ES DENN SO SCHWER EINEN EINHEITLICHEN CODEC ZU HABEN, DER MIT ALLEN BROWSERN AUF ALLEN SYSTEMEN IN ANGEMESSENER QUALITÄT FUNKTIONIERT? Krass.

Update 4. November 2013: Ich fange noch an an Wunder zu glauben. Oder der Cisco CEO liest meinen Blog, kann natürlich auch sein. Auf jeden Fall hat Cisco gerade bekannt gegeben, dass sie den H264 Codec unter Open Source Lizenz stellen werden. Das löst von heute auf morgen all meine Probleme, da nun der Mozilla Firefox vollen Support anbieten wird und auch Opera das Format (da Open Source) integrieren wird. GEIL!