Sunday, July 31, 2011

Autorenwettbewerb bei Eleboo

Eleboo startet mit dem 2. Autorenwettbewerb. Dieses Mal geht es um Kurzgeschichten. Autoren haben die Wahl zwischen den Themen Mein Nachbar – ein Killer" oder Achmed! Mein deutscher Nachbar". Die Kurzgeschichten müssen bis zum 30.September 2011 eingereicht werden, um dann von einer Jury bewertet zu werden. Zudem fließen die Leserbewertungen mit in den Juryentscheid ein. Dem Gewinner wird eines seiner Werke professionell lektoriert und den zahlreichen Partnerverlagen der OstseeMedia zur Publikation angeboten. Hierbei handelt es sich nicht um Druckkostenzuschussverlage. Genauere Infos zum Ablauf des Wettbewerbs unter http://www.eleboo.de/ebook-blog/42-eleboo-news.html    

Saturday, July 23, 2011

Zeitung zensiert Kommentar zum Osloer Attentat, weil islamistischer Hintergrund vermutet wird.

Ganz schlechte Strategie: Die Fuldaer Nachrichten liesen offensichtlich einen Kommentar zum Osloer Attentat online gehen, in dem ein Herr Schermer gleich wieder den üblichen islamistischen HIntergrund hinter den Vorfällen vermutet. Als nun in verschiedenen Plattformen und Blogs dieser Artikel hämisch diskutiert wurde, hat die Redaktion die schlechteste aller Notbremsen gezogen, und den Artikel aus dem Auftritt entfernt: Aber das Netz vergisst nicht und so ist der Inhalt des Artikels längst in diversen Blogs und Konten gesichert. Auch der Google Cache kennt den Artikel noch: Tja, man sollte sich vielleicht auch mal informieren. Denn von den http://derstandard.at/1302745612607/249-Terroranschlaege-im-Jahr-2010 249 Terroranschlägen im Jahr 2010 hatten LEDIGLICH 3 einen islamistischen Hintergrund.

Buchrezension von Peter Märkerts Ruhrgebietskrimi "Jeder Einzelne"

[caption id="" align="alignleft" width="126" caption="Peter Märkert, Jeder Einzelne - Ein Ruhrgebietskrimi. Erschienen im Brockmeyer Verlag"][/caption] Ein Ruhrgebietskrimi, Aus einem mir unbekanntenVerlag und von einem mir unbekannten Autor. Quasi in gewissem Sinne ein doppeltes Wagnis, da ich für gewöhnlich kein typischer Krimileser bin und auch mit Büchern nichts anfangen kann, die zu sehr dem Lokalkolorit verhaftet sind. Insofern lass ich die ersten Seiten von "Jeder Einzelne" mit einer recht kritischen Grundhaltung.   Auch der Stil war für mich am Anfang ungewohnt. Der Erzähler nutzt die Gegenwartsform, berichtet jeweils aus der Sicht des handelnden Hauptprotagonisten der Szene. Doch nach einigen Seiten fällt dies nicht mehr auf, fügt sich sogar recht gut in die gesamte Erzählung. Man bekommt den Eindruck, Auszüge aus den Tagebüchern der Beteiligten zu lesen. Quasi wirklich live beim Geschehen dabei zu sein. Die zu Grunde liegende Geschichte ist wohl am besten mit dem beschreibenden Text des Verlages abgedeckt: Zitat: "Nichts geschieht ohne Grund, sagt Lucas in der Untersuchungshaft. Es ist immer nur ein Kreis, der sich schließt. Wer trägt die Verantwortung an Christinas Tod? Wer hat ihr die K.-o.-Tropfen gegeben? Sie nackt in die Ruhr geworfen? Die Justiz verdächtigt ihren Freund Marco Kröner. Er brachte Christina in der fraglichen Zeit von Köln nach Bochum. Bei ihm wurde das Fläschchen mit Liquid Ecstasy gefunden, das ihren Tod verursachte. Der Richter verhängt Untersuchungshaft, der Pflichtverteidiger verspricht eine milde Strafe, wenn Marco gesteht. Nur seine Schwester und Lena glauben an seine Unschuld, verdächtigen Rainer Dahlke, der sich in der Nacht mit Christina treffen wollte, und Olaf Klein, Marcos seltsamen Nachbarn. Lena erhofft sich Hinweise von Alessa Hauser, der besten Freundin der Toten. Besucht sie in einer Drogenklinik und spürt, dass Alessa mehr weiß, als sie sagt. Bei einem späteren Anruf in der Klinik erfährt sie, dass Alessa nach dem Besuch aus der Klinik entwich. Um den Mörder zu treffen?..." Interessant ist nicht nur die Erzählform. In einer Melange aus Ermittlungen des Freundeskreises von Marco und dem Blick Marcos auf die Geschehnisse selbst, deckt sich im ersten Teil des Buches, den ich grob über das erste Drittel verorten würde langsam das wahre Geschehen auf. Dann werden verschiedene potentielle Täter eingeführt und zum Schluss, abgedeckt vor allem durch die Gerichtsszene der wahre Mörder vorgeführt. Hier greife ich sicher nicht vor, wenn ich sage, das Marco nicht der Täter ist. Aber wer nun wirklich zur Rechenschaft gezogen wird, erfährt der wache Leser bereits nach knapp zwei Dritteln des Buches. Sehr gut gelungen aber, wie dann die Spannung bis fast zur letzten Seite aufrecht erhalten wird und man dennoch mit dem Hauptprotagonisten mitfiebert. Stilistisch ist das Buch wie bereits erwähnt in der Gegenwartsform geschrieben: "......"So plötzlich" Kramer lacht auf. Schulz mischt sich ein, sagt langsam und betont..." Diese Erzählform ist sonst nicht ganz so mein Geschmack, lässt sich aber hier mit der Dynamik und der Authentizität der Story recht gut rechtfertigen. Kurze Sätze, teilweise bewußt gewählte Wiederholungen des Satzbaus um Geschwindigkeit, ja Hast zu vermitteln, geben der Geschichte eine Geschwindigkeit, die einen spätestens nach Eintritt des Anwalts Dr. Baum in die Erzählung und erste Spuren bei den Ermittlungen durch Lena in das Geschehen zieht. Der 220 Seiten starke Roman ist ein handwerklich sehr gut gemachter, dynamischer Krimi, der zwar aus der Region kommt aber sich nicht im reinen Zelebrieren des regionalen gefällt. Im Zentrum steht das klassische Who done it eines Krimis, gepaart mit den zum Teil sehr besonderen Lebensgeschichten der Beteiligten. Für mich ein sehr empfehlenswerter Krimi, wenn ich auch da ich mich nicht ganz mit der Gegenwartsform als Erzählmittel anfreunden konnte nur 4 von 5 Sternen bekommt. Dies aber auch aus meinem persönlichen Geschmack heraus. Also: [xrr rating=4/5] für "Jeder Einzelne" von Peter Märkert. Erschienen ist "Jeder Einzelne" von Peter Märkert im Brockmeyer Verlag. Das Taschenbuch kostet 12,90€. ISBN 978-3-8196-0752-3. Mein Dank gilt auch diesmal www.bloggdeinbuch.de für die Plattform und die Auswahl des Verlags und dem Brockmeyer Verlag für das Vertrauen in mein Blog.

Thursday, July 21, 2011

Lenovo stellt Android Tablets mit Android 3.1 vor.

So muss ein Tablet aussehen, das mir gefallen könnte. Speziell die Hülle/Tastatur-Lösung und die Dockingstation finde ich ausgesprochen gelungen. Aber seht selbst. (Ist die Businessausführung für um die 600 Euro) Und ein zweites Tablet seht ihr hier im Unboxing: (Quasi die Consumer Version) Preis voraussichtlich 399 Euro.

Sunday, July 17, 2011

Etwas, das ich einfach teilen muss...."Gotta Share"

Und nein, das Publikum hatte keine Ahnung.

Mein Fundstück der Woche Wall-E funktionsfähig aus Lego

So etwas finde ich einfach genial. Auf der Brickworld wurde ein funktionsfähiger Wall-E in "vermutlicher" Originalgrösse vorgestellt, der über Lego Mindstorms Module voll funktionsfähig und steuerbar ist.

Saturday, July 16, 2011

Das Internet macht dumm, nicht dumm, dumm, nicht dumm

 
"Internet macht vielleicht doch nicht dumm!" schreibt die ZEIT. Ach, natürlich nicht! Eine Technik an sich kann weder dumm, noch schlau machen. Wenn überhaupt, dann ihre Anwendung. Und warum um Himmels Willen sollte das Internet dumm machen? Der Mensch hat in der Geschichte schon mal eine Kulturtechnik entwickelt, die Wissen aus seinem Kopf auslagerte. Man nannte und nennt das Buch. Und offensichtlich sind wir wirklich dümmer geworden, haben keine neuen Erfindungen gemacht, sind nicht zum Mond geflogen, haben keine Computer entwickelt. Es geht nie darum, ob eine Technologie verdummt, es geht darum, ob der Mensch Wissen intelligent anwendet, ob er schlussfolgern und intelligente Schlüsse ziehen kann. Ich erinnere mich an mein Studium und die Hilflosigkeit der Studenten, die mit ihren super Zeugnissen plötzlich vor einer Wand standen. Sie konnten nicht mehr einfach auswendiglernen, bekamen den Stoff nicht zum Auswendiglernen vorgelegt, sondern sollten sich Wissen erarbeiten. Damit hatte ich überhaupt keine Probleme, weil das für mich schon immer das Spannendste war. Aber so mancher Einser Kandidat wollte schier daran verzweifeln. Meiner Ansicht nach ist dieses Gerede vom Verdummen des Internets eine Schutzbehauptung all jener, die schon immer Schwierigkeiten mit neuem hatten, die sich nicht wirklich gerne verändern, die ihr Weltbild möglichst lange aufrechterhalten wollen. Sonst müsste ja eigentlich auch jeder Brockhaus zur Verdummung der Menschheit geführt haben. Ich verdumme nur dann, wenn ich mich entscheide, mich nicht mehr weiterentwickeln zu wollen. Für mich ist aber gerade das Netz und die IT die grösste neue Möglichkeit, mich weiterzubilden. Ich habe Zugriff auf riesige Datenmengen, die für mich extern gespeichert sind, die ich nicht mehr memorieren muss, aus denen ich aber Schlüsse ziehen, Erkenntnis gewinnen kann. All ihr Kulturpessimisten, wettert nur weiter gegen das Internet. Wir nutzen es derweil, um uns weiterzuentwickeln und intelligenter zu handeln. Oder wie ein altes chinesisches Sprichwort sagt: Es gibt Menschen, die Fische fangen, und solche, die nur das Wasser trüben. Lasst uns Fische fangen, während die ganzen Kritiker immer noch mit Wasser trüben beschäftigt sind.  


Monday, July 11, 2011

Von missionarischem Eifer und der Gefahr der Vorverurteilung

Tja, gestern gab es ja einen grossen Aufruf wegen zweier Plugins für Google+, die im Verdacht standen, Malware einzuschleusen. Das hat sich nun nach einer Stellungnahme der Entwickler als Fehlalarm herausgestellt: Auch ich hatte nachdem ich die ersten Warnungen gelesen hatte meinerseits vor den Plugisn gewarnt. Aber ich werde mich hier entschuldigen, denn wie ich jetzt dank der Stellungnahme erfahren habe, hat der scheinbare "Aufdecker der Gefahr" dies zuerst ins Netz posaunt, und sich gar nicht mit den Entwicklern in Verbindung gesetzt. Sowas geht nun gar nicht, denn damit kann man einem Startup ganz schnell das Genick brechen. Und die Faktenlage, wie sie sich mir jetzt darstellt lautet. Gut, unsauber in Teilen programmiert. Aber ohne böse Absicht und vor allem. Die Schlagzeilen Richtung Malware sind hoffnungslos überzogen und so nicht akzeptabel! Bitte, wenn man schon Sicherheitslücken aufdeckt, dann zunächst direkt an die Entwickler wenden. Nur wenn die nicht reagieren ist eine Warnung von solcher Tragweite gerechtfertigt. Und ich muss mir auch an die eigene Nase fassen. Weil mir die Sicherheit meiner Leser am Herzen lag, hab ich da auch "überreagiert". Es hätte gereicht, den Link zunächst zu deaktivieren, bis der Malware Vorwurf verifiziert ist.

Sunday, July 10, 2011

ACHTUNG: Vorwarnung wegen Google+Facebook und vermutlich auch +Twitter Plugin für Chrome

Ich hatte ja in einem früheren Artikel zwei Plugins empfohlen, die Facebook und Twitter in Google+ integrieren. www.stadt-bremerhaven.de meldet jetzt, dass das Facebook Plugin unter dem Verdacht steht Schadcode enthälten zu können. Genauer gesagt lädt das Plugin offensichtlich ein Javascript von einem anderen Server nach. Weitere Infos findet ihr bei http://spam.tamagothi.de/2011/07/10/dringende-warnung-vor-googlefacebook/ . So lange hier die Sachlage nicht geklärt ist, empfehle ich dringend, beide Plugins zu deaktivieren! Wenn es weitere Infos gibt, werde ich zeitnah informieren.  

Saturday, July 9, 2011

Und noch ein Google+ Fundstück: Surplus Popup Alarme für Google+

Wer die Popups von Tweetdeck vermisst, sobald eine Aktion auf Google+ geschieht, in die man involviert ist wie z.B. die Aufnahme in einen Circle oder die Weiterleitung eines eigenen Beitrags sollte sich Surplus ansehen.

Ist diese Erweiterung aktiv, erscheint auf dem Desktop ein Popup, sobald eine Aktion mit eigener Beteiligung geschieht und auf Wunsch ertönt auch ein akustisches Signal.    

So integriert man Facebook und Twitter in Google+ mit Google Chrome

Eigentlich ganz simpel. Man muss nur die beiden Plugins : Google+Tweet und Google+Facebook in Chrome, (beides Erweiterungen) und schon sieht die Google+ Seite etwas anders aus:         Damit hat man jetzt zwei neue Reiter für die Streams von Twitter und Facebook. Elegant, einfach und spart den dauernden Wechsel.

Google+ als Facebook Killer? Das ist zu kurz gegriffen. Ich nutze die "Datenkrake" gern

Google der Facebook Killer? Mag sein, dass viele von Facebook zu Google abwandern werden. Aber Google ist für mein Gefühl weit mehr. Geht man den Migrationsweg zu Google+ konsequent, und vergisst man zunächst mal die Bedenkenträger mit ihrer Datensammelpsychose, so ist für mich Google+ wieder zu einer zentralen Einstiegsstelle und zu meiner Arbeitsplattform im Netz geworden. Schon lange nutze ich Google Reader, um mich über die aktuellen Themen des Netzes auf dem Laufenden zu halten, arbeite intensiv mit Google Docs und Google Mail und jetzt migriert mein soziales Netz, und auch wenn das etwas überheblich klinge mag, vor allem die "wertvollen Kontakte" zu Google+. Dank des Google+Twitter und Google+Facebook Plugins für Chrome, bleibe ich dennoch auch über meine Communities auf Facebook und Twitter auf dem Laufenden. Dank Android und dessen Synchronisationsmöglichkeiten habe ich meine Terminplanung komplett auf Google Calendar umgestellt, so daß meine Familie immer weiß, wo ich wann beruflich erreichbar bin und wir private und berufliche Termine perfekt koordinieren können. Und ein Backup unserer wichtigen Familienfotos liegt als privates Album bei Picasa. [caption id="attachment_2701" align="alignleft" width="300" caption="Mein Büro liegt schon seit längerem in der (Google-) cloud."][/caption]   Warum ich alles so zentralisiere? Warum ich mich in die "Fänge" von Google begebe? Weil ich Service erwarte, und zwar für all meine Bedürfnisse. So umfassend, wie das Google jetzt dank Google+ als weitere Erweiterung schafft, finde ich das nirgendwo sonst im Netz. Und wer mich jetzt dafür verdammt, der sollte mal hinterfragen, ob nicht jeder Microsoft Nutzer sich auch "in die Fänge" von Microsoft, jeder Apple Nutzer nicht in die Klauen von Steve begibt? Ich denke, das tun wir nicht. Stets habe ich auch lokale Backups auf Festplatte, so daß ich, sollte mir der Dienst doch zu bedenklich erscheinen, dort weg. (Wer seine Daten nicht selbstverantwortlich sichert, hat meiner Ansicht nach sowieso noch nicht begriffen, wie man sicher und datenerhaltend im Netz arbeitet) [caption id="attachment_2588" align="alignleft" width="179" caption="Selbst mein WLan ist mobil."][/caption] Aber ich sage, Google hat dasselbe Problem wie McDonalds. Alle schimpfen, aber wegen der hohen öffentlichen Aufmerksamkeit kann sich Google viel weniger schwerwiegende Fehler leisten, als andere Dienste. Ich für meinen Teil habe dank der Dienste von Google viele  Aspekte meiner Arbeit im Netz optimiert, verbringe paradoxerweise oft gar weniger Zeit im Netz, weil ich mit den diversen Tools verschiedenste Prozesse automatisieren kann. Google+ ist ein weiterer Teil, der für mich die Arbeit im Netz extrem erleichtert. Sollten die vermuteten Businessfunktionen wie Dashboard etc. tatsächlich kommen, dann noch einen Tick mehr. Sorry, wenn ich nicht auf Google die Datenkrake bashe. Für mich stellt Google Dienste zur Verfügung, die meine Arbeit erleichtern. That's what counts for me.

Thursday, July 7, 2011

Javaforum Stuttgart 2011 #jfs2011 Live Blogging Vortrag 6

Vortrag 6: Restful API design Warum REST mehr als HTTP mit XML ist Als Beispiel wird "ein Büchershop (guess which one)" genutzt. Das ganze soll jetzt auf Mobile Endgeräte, "wir brauchen eine App" Also braucht man eine Api. die zu implementierenden Schnittstellen sind aus dem "Legacy" System vorgegeben. REST möchte:   Für eine Web API http bewusst nutzen Bedenken, das Web ist ein verteiltes Medium Vorkenntnisse über APIs sollten minimiert werden (einfache Einarbeitung). 1 Methode ergibt eine REssource also Buch Nr Buch-ID ----> http://site/api/book/book-id 2 Methoden, eine Ressource addToCart getCartInfo http://site/api/cart/cart-id Man muss sich immer die Frage stellen, was kommt in die URI, was in die Parameter Alles was ein "Ding" ist in die Uri, der Rest in die Parameter Aktionen entsprechen Methoden Aktionen auf Ressourcen sind nicht Teil der URI sondern http-Methoden Dies ist später in der API Doku zu beschreiben Übliche Verhaltensmuster sind GET->Anzeigen Post Anlegen oder Ergänzen PUT Anlegen oder Schreiben Es sind pro Entity mehrere URI möglich Http Möglichkeiten nutzen, Error Meldungen, Last Sharing etc. Caching kann im Header eingestellt werden, also nutzen, gerade auch für mobile Geräte.  

Javaforum Stuttgart 2011 #jfs2011 Live Blogging Vortrag 5

[caption id="attachment_2950" align="alignleft" width="224" caption="@elektrojunge on stage"][/caption] Es gibt Dinge zu beachten, die nur für mobile Endgeräte gelten. Android ist strukturiert wie ein Orchester mit vielen "Spielern", verschiedensten Komponenten, die erst zur Laufzeit miteinander verknüpft durch die "Intents" die Messengerkomponenten. Wie kann ich nun diese Komponenten absichern, wenn Intents schief laufen. Das grobgranulare Sicherheitsmodell basierend auf der Sicherheit des Linux Kernels, der die Prozesse isoliert. Desktop hat Single UID Android hat UID per Application Applikationen, die mit dem gleichen Schlüssel signiert sind, können mit der gleichen UID laufen. Die Kommunikation zwischen Apps läuft über eine Binder IPC Weiterer Schutz->Sandboxing von Applikationen Ich kann nur meine eigenen Ressourcen ansprechen. Jede App läuft in einer eigenen Instanz der Dalvik VM. Kommunikation über spezielle Interfaces. Weiterer Sicherheitsmechanismus Signieren von Applikationen Verantwortlich für die Signatur ist der Entwickler Zertifizierung durch Entwickler und in Verantwortung des Entwicklers Vertrauen in Entwickler durch Erstellung guter Anwendungen Daneben Feingranulares Sicherheitskonzept Basier auf Permissions Permissions schränken die Möglichkeiten ein, was Prozesse tun können. Benutzer erkennt das an den angegebenen Rechten, die die App bei der Installation fordert. Es gibt: System permissions Erlaubnis auf Systemdienste zuzugreifen (z.B) Kalender oder Adressbuch Custom permissions Permission groups Permission trees Definiert werden die Permissions im Android Manifest. Informationen über Apps und laufende Prozesse kann über PackageManager oder ActivityManager PackageManager -> Installierte Programme ActivityManager -> Laufende Programme Wo sind die Verantwortlichkeiten des Entwicklers? Per Default kann eine App vom "Umfeld" nichts sehen. Component wird exportiert durch android:exported im Intentsfilter Intents sind vergleichbar mit Messengerobjekten Niemals sensitive Daten in einen Intent Ebenso von Anfang an angeben, wer den Intent sehen können soll. Intentfilter filtern keine schädlichen Intents! Ein Angreifer kann die Priorität seiner Intentfilter erhöhen. Bei Intentfiltern spezifische Aktionen und Kategorien angeben und Datenfilter Activities Benuten von Activity android:permissions = "de.otw.android.HARM_USER_DATA"/> Die Permissions werden in startActivity() bzw. startActivityforResult() geprüft. Services Client-> Intent.setComponent() um den Service eindeutig zu identifizieren. Achtung bei der Verwendung von Binder Interface. Genehmigung für ServiceConnection im Package Manager prüfen, vor dem Austausch sensitiver Daten. Server: Genehmigung mit erzwingen Feingranularere Zugriffskontrolle durch Verwendung von Binder und Context Hilfsfunktionen Broadcast Receiver Receiver: Wiederum eine Genehmigung erzwingen Sender: Immer darüber nachdenken, wer den Intent empfangen können soll. Also einfordern einer Permission und Definieren des Empfängers des Intents. Don't user sticky broadcasts for sensitive data! ContentProvider Achtung, beim Verwenden eines ContentProvider intern, android:exported="false" explizit setzen. Lese und Schreibrechte trennen android:readPermission android;writePermission TAg schränkt zur Compiletime uri Zugriffe ein. Mitkönne erlaubte Pfade für uri Zugriffe angegeben werden. Tips: Jegliche empfangene Daten aus einem Intent prüfen SQL Statement und Daten die es enthält klar trennen. Selection fields final machen um Kontaminierung aus Zufall zu vermeiden Selektionen komplett vermeiden, Content_uris verwenden. File I/O Files, DB und geteilte Preferenzen könne mit Berechtigung installiert werden Bei Zugriffsberechtigungen auf Datenbanken immer an die Konsequenzen denken und immer den User fragen. Daten auf SD Karte NIE unverschlüsselt ablegen. IMMER DRAN DENKEN Nutzerdaten SICHER speichern. So wenig Permissions wie möglich, anstelle einer Permission manchmal besser ein Dialog.

Javaforum Stuttgart 2011 #jfs2011 Live Blogging Vortrag 4

Vortrag 4: Java in der Cloud - Aktuelle Möglichkeiten und Entwicklungen Was ist die Cloud? Infrastructure as Service Virtuelle Server, vergleichbar mit Virtualisierung Manage Everything yourself Player sind z.B. Amazon Webservices VMWare Platform as a Service Virtual App Server werden meist von den Providern gemanagt. Skalierung wird vom Anbieter gemanagt. Beispiele Cloudfoundry oder Google App Engine Software as a service Software aus der Cloud meist ebenso relevant für User wie Entwickler Beispiele: Salesforce Google Mail Cloud Modelle: Public -> Für die Öffentlichkeit verfügbar Private -> Nur für eine Organisation verfügbar Community -> Für mehrere Organisationen verfügbar Hybrid -> Kombination verschiedener Modelle Warum Cloud überhaupt machen Public Cloud: Zahl nur, was du brauchst Billige Art, Lastspitzen zu behandeln Transparentes Kostenmodell Private Cloud: Besser Verwendung der Ressourcen Kosten können abgerechnet werden Der nächste Schritt nach der Virtualisierung Business Agility Deployment von Anwendungen per Maus Klick Testumgebungen sehr einfach und günstig. Zahlen nur beim Testen. Die Anwendung skaliert automatisch Werner Vogels (CTO Amazon) sagt: Ihre Ingenieure brauchen 70% der Zeit für Skalierbarkeit und Technologie-> Deshalb Cloud Plattform der Zukunft Ausfallsicherheit, Automatische Verteilung, neue Computer einzurichten wird trivial Günstige Systeme mit hoher Verfügbarkeit und Datenhaltungssicherheit Sieht so aus wie Google, Amazon, Facebook Wie sieht das für den Java Entwickler aus Wie gehe ich mit Lastspitzen um? Ich brauche mehr App Server Instancen Nach dem Peak müssen sie auch wieder gestoppt werden Elastic Scaling als Stichwort Was der Entwickler am Ende hat: Eine Werkzeug, das eine Anwendung nimmt und daraus eine VM erzugt, mit der gesamten nötigen Infrastruktur. Diese kann dynamisch hoch und runter skalieren. Wir benötigen Werkzeuge zur Installation der Software Die Infrastruktur verwalten Benutzer einrichten Tools sind z.B. Puppet, Chef etc. Quasi eine Factory für VMs Für lokale Installationen existiert "Vagrant" Vorteile: Sehr flexibel Arbeitet für jetwede Infrastruktur und Anwendung Arbeitet auf komplexen Installationen mit versch. Komponenten Verschiedene Anwendungen können auf verschiedene Knoten deployt werden. Aber noch besser geht es: Anwendung auf einer PaaS Umgebung also Plattform as a Service deployen Vorteil: Nützlicher, da ein Server sowieso installiert werden müssten Automatische Skalierung Zusätzliche Dienste im Angebot Aber: Weniger flexibel Vordefiniertes Entwicklungsmodell Lernkurve für das Programmiermodell Existierender Code ggf. schwer zu migrieren. Mogliche PaaS Plattformen Google App Engine Java Unterstützung aber sehr restriktive Umgebung mit Java Classes White List Fokus auf NoSQL Begrenzung der startbaren Applikationen Limit auf Antwortzeit (30sec) Kein Zugriff auf OS oder Server Daher wurden spezielle Frameworks entwickelt (Gaelyk for Groovy) Aber besser laut Vortragendem Amazon Elastic Beanstalk Basierend auf der EC2 Infrastruktur plus Auto Scaling und S3 Dazu Linux, OpenJDK und Tomcat Zur Zeit im Betatest im Osten der USA Es gibt Eclipse Plugin Es unterstützt Versionsverwaltung für Applications, sowie Elastic Scaling Einfaches Monitoring ist eingebaut Detailierte Kontrolle über die Umgebung ist möglich. Zugang aufs OS und Tomcat Logs Spring basierte Demoanwendung ist vorhanden und es existiert ein Relational Database Service (RDS) für enterprise scale MySQL und andere Amazon Web Services Skalierungseinheit 1 VM = 1 Server Weiterer Ansatz VMWare Cloud Foundry Open Source Projekt bei GitHub unter der Apache2 Lizenz Sehr neu, noch ohne kommerzielle Angebote Kann Ruby, Java und Node.js laufen lassen Verschiedene Frameworks werden unterstützt Kann überall gehostet werden, wird von der Community erweitert, z.B. Support für Erlang, PHP, Python Es existiert ein Eclipse Plugin Es unterstützt elastic scaling.... Ok, man kann es bauen. Aehnlich normalen EJB Umgebungen mit Tomcat und MySQL Läuft auf ubuntu es teilen sich n Server eine virtuelle Maschine, damit geht die Skalierung feingranularer. Angebotene Dienste sind RDB Service Key Value Store Document Store Messaging Service Mehr kommt Es gibt auch eine API zum Erstellen der eigenen Services Zusammenfassend Cloud wird aus drei Gründen kommen: Kosten, Business Agility, Platform of the Future Google App Engine Pionier aber veraltet Amazon Beanstalks: Standing on the shoulde of Giants Cloudbees: Für Entwickler Spannend scheint CloudFoundry: Open Source mit einer grossen aktiven Community, lauffähig auf ubuntu!

Javaforum Stuttgart 2011 #jsf2011 Live Blogging Vortrag 3

Vortrag 3: Das nächste große Ding Programmiersprachen für die JVM Java ist in gewissem Sinne bereits Legacy. Was ist eine große Programmiersprache? C, C++, Java sind groß -> Pascal eher nicht, Modula auch nicht Große Sprachen erlauben große Projekte Sprachen, die sich modernisieren werden nicht zwangsweise besser, eher komplexer. Eine große Sprache ist wichtig, weit verbreitet, berufsentscheidend und etabliert. Es kommt aber NICHT auf die Syntax an. Wichtig ist auch die Community! Das nächste große Ding läuft vermutlich auf der JVM. Konkurriert mit Java. Und ersetzt Java und macht möglicherweise noch andere überflüssig. Die guten Seiten von Java sind heute nicht mehr relevant. Objektorientierung, Threads, Packages, Sandbox etc. sind zwar gut aber "old school". Bestimmte Probleme lassen sich mit Objektorientierung sehr gut lösen, aber nur die. Mit einem Löffel kann man auch eine Baugrube ausheben. Auch sonst gute Aspekte wie: kein goto, Kein Überladen von Operatoren, kein typedef, kein Präprozessor Schönes Zitat: "Die jungen Leute kennen keine Pointer mehr" Technologie-Sprung NICHT alles ist aber ein Objekt. Dinge, die wir für alle Datentypen machen müssen, müssen wir auch für alle Datentypen tun. Die primäre Weisung es muss rückwärtskompatibel sein Sekundäre Weisung Das Java "Feeling" sichern Die konzeptuelle Integrität sichern. Java hat Probleme mit Generics und Closures Anderungswünsche foreach auch für Maps Switch-break-fix Abfangen von unmoglichen Checked Exceptions und diverse moderne Elemente anderer Sprachen. Die Frage ist nicht die Menge an zu schreibendem Code, sondern wie lesbar ist der Code der "zukünftigen" Sprache. gewünscht: Sprachorientierte Programmierung Unveränderlichkeit Funktionale Programmierung Nebenläufigkeit und Parallelität Auf jeden Fall eine Art Paradigmenwechsel

Javaforum Stuttgart 2011 #jsf2011 Live Blogging Vortrag 2

Vortrag 2: Funktionieren agile und dynamische Entwicklungsprozesse nur in dynamischen und agilen Unternehmen? Entwicklungsprozess funktionieren, wenn die Ziele erreicht werden, das berühmte Dreieck Qualität, Kosten und Termin wird präsentiert. Der Prozess bei Gebit ist iterativ, inkrementell, mehrfach paralleler Entwicklungsprozess, also Modell-Driven Interpreter Framework, kein Generatorenframework, also interpretieren des Modells zur Laufzeit. Gebit setzt agile Methoden wie Parrprogrammierung, Testgetriebene Entwicklung und Refactoring Auch hier fällt das Stichwort Continous Integration wieder. Erstes Fallbeispiel: Projekt Entwicklung Kassensystem, Ablösung von Standardsoftware mit zahlreichen Schnittstellen zu Backend Systemen. Bei GEBIT lag auch die Testverantwortung. Die Beauftragung erfolgte immer in Monatssteps->Gefiel das Ergebnis bis dann->Nächster Step. Die Entwicklung erfolgte alleine durch GEBIT. Insgesamt 15 Monate bis zu ersten produktiven Implementierung. Schlüssel zum Erfolg: -Paarweise Spezifikation -Volle Konzentration von Auftraggeber und Nehmer auf das Projekt -Eskalierte Themen wurden ernst genommen -Betroffene zu Beteiligten machen. Zweites Fallbeispiel: Sachbearbeiteranwendung in einer Behörde. Ablösung von 2 Altverfahren, 12,3kg Specs von mehr als 50 Autoren (Projekt lief bereits lange) Testautomatisierung in hohem Mß durch MA des Kunden Problem bei diesem Projekt, keine wirklichen ITler in der IT Abteilung der Behörde Keine Projektleitung beim Kunden, da Mitarbeiter maximal 20-30% der Zeit für Projektleitung Projekt für Einführung und Betrieb fehlte aber völlig. Keiner der beteiligten Mitarbeiter war Vollzeit im Projekt, maximale Zuordnung war 50% im Projekt. D.h. Oft laufen IT Projekte in IT fernen Unternehmen, ohne das Bewußtsein für die Bedürfnisse eines IT-Projektes. Herausforderungen: Agile Methoden waren gesetzt Es wurde sich am V-Modell orientiert Umfangreiche Mitwirkungsleistungen des Auftraggebers wegen Budget Hoher Headcount auf Kundenseite aber Teilzeitkräfte, Tagesgeschäft, Altverfahren Projektteams ohne Projekterfahrung. Das ist oft ein grosse Problem. Order by Mufti funktioniert hier nicht. Die IT Affinität fehlte bei 90% des Projektteams, auch keine Seltenheit, leider oft sogar eine gewisse versteckte Aversion. Es gab oft Spannungen zwischen den Linientätigkeiten und dem Projekt, oder wie ich immer sage, ENTWEDER Projekt ODER Linie, beides GEHT NICHT! (Sorry, hier muss ich schreien) Es wurde nur verwaltet, nicht proaktiv gesteuert. Auch dies kein seltenes Phänomen, meist wird mehr Wert auf Excel Schlachten und Statusberichte gelegt, als auf die aktive in Angriff Nahme der Entwicklungsherausforderungen. Der Entwickler ist meist das kleinste Rädchen, das das ganze einfache Programmierzeugs macht. Hierarchische Strukturen fressen gerade in grossen IT Projekten oft wichtige PT und Ressourcen. Hier wurde die Agilität "ausgelagert" zu den GEBIT Entwicklern. Das Kernteam war mit dem Projektverlauf sehr zufrieden, aber die Mitwirkungsleistungen waren nicht in time. Es gibt immer noch Aufgaben, obwohl das Projekt zu Ende ist. Kein Vorgehensmodell kann einen Erfolg erzwingen. Auch das Umfeld muss stimmen. Und da krankt es meist. IT Projekte ohne Mitarbeiter mit "Lust an der IT" werden grausam! Lessons learned: Veränderung der Kommunikationskultur schwierig Prozesse in Behörde dauern länger als lange. Steuerung des Projektes notwendig Spezifikationsänderungen nachvollziehbar dokumentieren Stimmige Chemie kompensiert vieles Betroffene zu Beteiligten machen Spannungsfeld Fakten und Zahlen < -> Zweckoptimismus

Javaforum Stuttgart 2011 #jsf2011 Live Blogging

Vortrag 1: Top 10 Tools für mehr Spass beim Entwickeln Inhaltlich ein Querschnitt über die Tools aus der Community für Clean Code, mehr Spass bei der Arbeit (Dilbert, Comics Fun bei der Arbeit), das sind Punkte, die zwar in freien Arbeitsenvironments sinnvoll sind, dann aber verlangen, dass der Entwickler selbstgesteuert arbeiten darf. Oft ist dies in grossen Unternehmen aber nicht möglich. Auch die Tools sind eher dann realistisch, wenn man als Entwickler die Freiheit hat, Tools, die man selbst schätzt zu installieren. Auch dies ist in den typischen Grossunternehmen mit angehängter IT Abteilung nur bedingt realistisch. Spannend, Eclipse Mousefeed-Plugin empfiehlt passende Tastenkürzel Weiteres Werkzeug-> Continous Integration, da sind wir gerade dran, also auf einem guten Weg. Phyllis ist als Testtool interessant um Regressiontests zu automatisieren. Auch in diesem Vortrag zeigt sich wieder, Gamification muss nicht auf das Alltagsleben und die Freizeit beschränkt sein. Auch in der Arbeitswelt kann ein gewisses Maß an Gamification die Motivation, speziell in den kreativen und den wissenbasierten Jobs erhöhen. Stichwort z.B. TDGotchi um die Testerstellungsmotivation zu erhöhen. Und letztlich, aber wirklich nicht sehr überraschend. Weiterbildung auf allen Kanälen. Hackathons/Hackergarten, Blogs etc. Wir müssen offener sein, mehr berücksichtigen, dass nicht alle gleich arbeiten. Gute Arbeit hat auch sehr viel mit einem guten Arbeitsumfeld zu tun.

Saturday, July 2, 2011

Facebook oder Google+, ein ungleiches Rennen mit einem überraschenden Favoriten

Also was mir bei den ersten Experimenten mit Google+ aufgefallen ist, es besteht sehr hohes Interesse in meinem Netzwerk nach Einladungen zu Google+. Und die Features von Google+ gerade im Hinblick auf die "Circles" kommen ausgesprochen gut an. Es hängt wohl auch davon ab, wie schnell Google seine Api freigibt und es erste Lösungen gibt, die parallele Postings auf Google+ UND Facebook ermöglichen. Wie schnell eine Userbase abwandern kann, konnte man an MySpace ja live erleben, und je mehr Facebook sich mit Clickjacking und spammenden Apps herumschlagen muss, um so grösser die Chance für Google, hier zu punkten. Außerdem darf man die Möglichkeiten der "All in One" Lösung Google+ nicht vernachlässigen. Das bedenkt das Apple affine Universum oft. Potentiell hat Google jetzt schon sehr viele Google+ Nutzer, nämliche jeden, der einen der bisherigen Dienste nutzt. Denn sie alle sind über das gemeinsame Frontend quasi mit Google+ integriert. Somit habe ich eine zentrale Anlaufstelle für Mail, Docs, News, Reader UND Social Networking. Für mich sehr elegant und angenehm.

Friday, July 1, 2011

Mein Fundstück der Woche:So postet man gleichzeitig auf Google+ und Facebook

Google hat Google+ gestartet. Bis vor kurzem konnte man noch über einen Trick Freunde einladen, dieser Weg ist jetzt aber wohl auch versperrt. Dafür habe ich jetzt für Google Chrome, meinen Browser Nummer eins ein Plugin gefunden, das es ermöglicht, neben Google+ auch gleich noch in Facebook und Twitter zu posten. Einfach unter der Adresse: https://chrome.google.com/webstore/detail/oenpjldbckebacipkfbcoppmiflglnib das Plugin  installieren. Danach werden alle Postings in Google+ um den Menüpunkt "send to" ergänzt. Damit lassen sich die Artikel gleich noch auf Facebook und Twitter posten. Meine Meinung zu Google+ bislang. Sehr vielversprechend. Vor allem das Konzept der Circles überzeugt mich. So kann ich Gruppen eröffnen und selektieren, wer was von mir lesen kann. Naheliegenste Gruppen: Freunde, Beruf, Privat   Es wird spannend sein, zu sehen, wie Google+ angenommen wird. Von heute morgen bis gerade eben hat sich die Zahl meiner Kontakte in Google+ von 0 auf knapp 30 erhöht. Es gibt also schon eine gewisse Wanderungsbewegung.