Schlagwort-Archive: Software

Wie konnte Facebook so schnell wachsen – Crowd Development

Free FacebookDie deutschen Informatiker schauen  an die US West Coast und wundern sich, wie schnell dort Ideen (meist sogar ziemlich alte) in erfolgreiche neue Produkte umgesetzt werden. Das Geheimnis liegt in der unkonventionellen Art wie die Produkte entwickelt werden. Jenseits des „offiziellen“ Management Sprechs beschreibt der Entwickler Ben Blumenfeld, wie in den ersten fünf Jahren bei Facebook entwickelt wurde. Anstatt den von deutschen Informatikern und deren Managern geforderten geordnetem Entwicklungsablauf  mit Marktanalyse, Anforderungen, Entwurf, Codierung und Test verlief die Entwicklung extrem chaotisch. Gruppen von Entwicklern taten sich zusammen und entwickelten, was sie für notwendig hielten. Die Methoden wurden flexibel gemäß den Anforderungen und den Kenntnissen und der Erfahrung der Entwickler gewählt. Irgendwann tauchten diese Projekte dann auf dem Bildschirm von Mark Zuckerberg auf und wurden dann offiziell. Manche Projekte, die nicht auf der offiziellen Linie lagen, mussten geheim durchgeführt werden. Das Management versuchte nicht, die Arbeitszeit jedes Mitarbeiters zu kontrollieren. Zur gewissen Zeitpunkten tauchten diese Projekte dann auf und wurden entweder fortgeführt oder aufgegeben.

Mit dem Anwachsen der Benutzerzahlen mussten natürlich offizielle Prozesse für  Integration, Test und Release eingeführt werden. Der Schwerpunkt lag am Anfang aber auf der Implementierung neuer Ideen. So ähnlich lief am Anfang auch die Entwicklung bei Microsoft, Apple, Amazon u.a., die heute Marktführer sind. Zum Teil gelingen solche Projekte auch in etablierten Firmen wie SAP (Hana) oder IBM (Watson) wenn man wenigstens einer kleinen Gruppe von Entwicklern in der Firma Freiheiten gewährt und sich das Management wenigstens ein bischen etwas zutraut.

Für diese Art der Entwicklung braucht man viele eigenständige und kreative Entwickler, die für erfolgreiche Arbeit nicht nach Tarif, sondern mit einigen Millionen $ belohnt werden. Mit einer Herde von Lämmern und Hasenfüßen kann man solche Projekte natürlich nicht durchführen. Anstatt Start Up Unternehmen  bekommt man dann Shut Down Landschaften.

Advertisements

Ein Alptraum – das autonome Auto

Benz AutomobilAnspruch und Wirklichkeit der IT klaffen bei der deutschen Automobilindustrie weit auseinander.

Die deutsche Automobilindustrie fährt zur Zeit eine große Aktion zur Ablenkung ihrer Kunden von den eigentlichen Problemen der Industrie. Für viele Autofahrer wird es immer unattraktiver in stundenlangen Staus in und um die Großstädte zu stehen. Viele längere Fahrten dauern doppelt so lange als die elektronischen Helfer anzeigen. Selbst das modernste Navi kann keine „Schleichwege“ für verstopfte deutsche Autobahnen finden, da es entweder keine Schleichwege gibt oder diese noch schlimmer verstopft sind als die Autobahnen. Selbst im Autoland Deutschland sind nur wenige Kunden bereit für angeblich „grüne“ Autos überhöhte Preise zu bezahlen. Da kommt der Hype um das autonome Automobil gerade recht. Die deutschen Autofreaks sollen plötzlich viel Geld für Zusatzausrüstung in der Oberklasse ausgeben, damit sie nicht mehr rasen können. Auf den Highways in USA ist man dem autonomen Fahren weit näher. Ein einfaches generelles Tempolimit (da braucht man nicht einmal Schilder aufzustellen) reicht aus, um den Verkehr ruhig fließen zu lassen. Wer da ausschert kann leicht vom Hubschrauber identifiziert werden. Hier kann man sich vorstellen, dass man die Fahrt weitgehend automatisieren kann. Autofahren ist in USA anders als in Deutschland kein Abenteuer sondern eine lästige Tätigkeit. In China fährt man in der Oberklasse schon heute autonom – mit Chauffeur.

Die Automatisierung der Steuerung von LKWs ist wohl wenig wirtschaftlich. Die Löhne der LKW Fahrer sind bereits so niedrig (speziell aus dem EU Ausland), dass man eigentlich nicht viel sparen aber viele Arbeitsplätze im Niedriglohnsektor vernichten kann.

Geradezu lebensgefährlich wird es wenn die Bosse der deutschen Autofirmen über digitale Systeme schwadronieren. Das Knowhow für sichere Hardware, Software und Systemmangement ist weder in der Belegschaft noch im Management auf einem Niveau, das beim Kunden Vertrauen in eine neue Technologie schaffen könnte. Der Großkonzern VW ist nicht einmal in der Lage die Software zur Steuerung des Motors (und der Abgase) selbst zu entwickeln. Man ist auf die Hilfe des Zulieferers Bosch angewiesen, der seine Software natürlich ohne Gewähr anliefert. Die Mannschaften der Hersteller, die für die Sicherheit der IT zuständig sind haben allenfalls das Niveau von Junior Hackern erreicht. Das Management hat von systematischer Entwicklung hochzuverlässiger Software und Softwaremanagement wenig oder gar keine Ahnung. Dafür klebt man sich die höheren Manager bei VW die Pläne des 16 Zylinders Bugatti Motors an die Wand. Bei der Hardware sieht es noch viel schlimmer aus. Nur Bosch hat noch eine Hableiterfabrik in der zumindest Sensoren und Komponenten der Leistungselektronik hergestellt werden. Komponenten der Consumer-Elektronik können im Auto in der Regel nicht verwendet werden. Die gesamte Codebasis vom Betriebssystem bis zu den Anwendungen ist für hochzuverlässigen Betrieb in Millionen von Fahrzeugen nicht geeignet. Man verwendet gerne Open Source Code, weil man selbst weder das Knowhow im Hause hat noch die Entwicklung bezahlen will. Es gibt auch keine Konzepte wie hoch komplexe Hardware und Software über die Betriebsdauer des Fahrzeugs gewartet und nachgebessert werden kann. Von den Smartphones und PCs weiß man ja inzwischen daß man mit einem Update zig Millionen von Geräten stören kann.

Fast jeder Autofahrer hat schon die Erfahrung gemacht, dass Fehler gar nicht von der Elektronik und der Software erfasst werden (da lesen wir mal den Bordcomputer aus) oder Fehler durch Update der Software behoben werden müssen. So manches Auto bleibt bereits heute schon wegen der Software zum Teil sogar auf der Autobahn stehen. Selbst Flugzeuge sind heute nicht so zuverlässig, dass sie für automatischen Betrieb geeignet wären. So konnte z.B. die Kanzlerin für ihren Flug nach Indien die offizielle Maschine nicht benutzen – diese war trotz immensem Wartungsaufwand defekt.

Ähnlich wie bei CO2 Verbrauch und Abgasen lässt sich die Politik von den Automobilherstellern benutzen. Schaut man sich das Video von Herrn Bernhard (Daimler LKW) und von Herrn Kretschmann (grüner Ministerpräsident B-W) im autonomen LKW an, kann einem schon Angst werden. Digitale Naive am Steuer von Großunternehmen und Staat sind für die Bürger gefährlich. Zum Glück ist das nur eine PR Aktion um von den Problemen mit den Abgasen abzulenken. Vielleicht sollten sich die Herren einmal mit ein paar LKW Fahrern unterhalten um zu erfahren, welche realen Probleme im Verkehr und bei der Infrastruktur in Deutschland vorrangig gelöst werden müssen.

 

 

Auch Daten, Software und Hardware sterben – IBM, INTEL, MICROSOFT

Der größte Teil der Benutzer von IT glaubt den Werbesprüchen wie „Das Internet vergisst nichts“ oder glauben, dass sie in 50 Jahren ihre Timeline Daten bei Facebook finden und ihren Enkeln zeigen können. Wir können uns auch daran gewöhnt, dass wir mit unseren Daten und Programmen relativ problemlos  auf neue Hardware migrieren können. Allenfalls regen sich kleine Zweifel wenn man mal von einem Hersteller und Betriebssystem zu einem anderen wechselt. Auch im Internet werden Daten nicht ewig gespeichert. Sobald der Benutzer die Miete für seinen Server oder Services nicht bezahlt sind die Daten schnell verschwunden. Davon zeugen die vielen toten Links, die man auf den Webseiten findet. Firmen wie IBM, INTEL  und Microsoft haben es geschafft, ihren Kunden über viele Jahre kompatible Hardware und Software zu liefern. Dagegen hat z.B. Google gezeigt, daß laufend nicht kompatible Softwaresysteme entwickelt und den Kunden angeboten werden. Nicht erfolgreiche Systeme werden schnell wieder eingestellt und die Daten der Kunden verschwinden.

IBM feiert gerade das 50 jährige Jubiläum ihrer /360 (später /370, /390 und Z Systeme) Hardware- und Softwarearchitektur (später /370, /390 und Z Systeme) . IBM schuf eine Architektur für Hardware, Betriebssystem, Software und Betrieb einer kompletten  IT Anlage mit kleinen und großen Einheiten. Damit konnte der Kunde wachsen ohne immer wieder seine Software neu zu schreiben. Er musste nur neue IBM Maschinen kaufen. Das war damals wirklich innovativ und die Firma IBM hat über 50 Jahre von dieser genialen Produktidee gelebt. Der kleinste Prozessor der /360 Serie wurde übrigens im IBM Labor Böblingen von zwei Entwicklern entworfen!

Dieses Prinzip der durchgängigen Architektur wurde auch auf den IBM PC übetragen, für den INTEL die mitwachsenden Prozessor lieferte. INTEL produziert seit 42 Jahren die Prozessoren für kleine Systeme und PCs. Das Bezriebssystem kam aber schon von Microsoft, weil IBM die Investitionen in ein Betriebssystem für PCs nicht machen wollte um sich keine Konkurrenz für die Großsysteme zu schaffen.

Ähnlich wie IBM hat Microsoft auch über viele Jahre abwärtskompatible Betriebssysteme geliefert. Beim Upgrade auf neuere Versionen gab es zwar immer wieder Probleme. Die Benutzer hatten aber meist keine größeren Probleme bei der Umstellung. Nun unterstützt MICROSOFT aber das Betriebssystem Windows XP nicht mehr. Das betrifft nicht nur PCs sondern viele kleinere Systeme und Steuerungen, die mit XP Fileformaten und Programmen zur Wartung und Auswertung arbeiten.

Man muss sich also an den Gedanken gewöhnen, dass Daten und Programme auf Windows XP Basis in naher Zukunft nicht mehr genutzt werden können. Ähnlich wird es den Windows Folgeprodukten ergehen. Die Kunden sollen in die nue Cloud Welt migrieren.

Viel schlimmer sieht es bei der Hardware aus. IBM entläßt zur Zeit massiv Mitarbeiter in der Hardware Entwicklung. Etwa 25% der Mitarbeiter sollen entlassen werden. So ähnlich hat es bei SUN auch angefangen. Man kann also annehmen, dass die IBM  Hardwareentwicklung mittel- bis langfristig reduziert oder verkauft wird (ähnlich wie das PC Geschäft an Lenovo verkauft wurde). Die IBM Kunden können nicht darauf bauen, dass ihre alten Systeme unbegrenzt weiter gebaut werden, da das Geschäft langfristig nicht profitabel ist.

Ähnlich düster sieht es bei INTEL aus. Das Geschäft mit Prozessoren für PCs geht zurück. Für die meisten Anwender genügt heute schon ein Smartphone oder ein PAD und Software in der Cloud. In Arizona stehen zwar schon die Gebäude für eine neue hochmoderne INTEL Halbleiterfabrik – die für die Fertigung notwendigen Geräte werden aber nicht gekauft. Offensichtlich lohnt sich das INTEL Prozessoren Geschäft langfristig auch nicht.

Auch Microsoft wird bei Rückgang der Umsätze mit PC Software die Betreibssysteme und Anwendungsprogramme nicht so lange unterstützen wie bisher.

Professionelle Anwender, Betriebe und Behörden sollten sich bereits jetzt Gedanken machen, wie sie sich an die weniger schöne neuen IT Welt anpassen. Die Wolke (Cloud) bietet da auch keine überzeugenden Perspektiven. Selbst in klassischen Industrieländern wie USA, England und Deutschland wird es in den nächsten 10 Jahren kein schnelles Internet für die Nutzung von Cloud Anwendungen geben. Mit 1 Mbit/sec im Upload kann man keine anspruchsvollen IT Anwendungen betreiben.

Der Cloud Super GAU – neue Software Version

Allenthalben werden jetzt Services im Web als Lösung aller Benutzer Probleme angeboten. Es ist ja auch zu verlockend ein System nur zu nutzen und einem professionellen Anbieter den ganzen Ärger mit der Hardware- und Software Infrastruktur zu überlassen. Zunächst ist die Begeisterung groß und man packt immer mehr Anwendungen in die Cloud. Bei seriösen Anwendern sind die Anwendungen recht benutzerfreundlich und auch stabil. Der Verwaltungsaufwand ist wirklich minimal und die Anwendungen sind verglichen mit dem Betreiben eines eigenen Servers mit eigener Software sehr billig.

Schwierig wird es allerdings dann, wenn eines Tages eine eMail des Hosters im Briefkasten landet, in der angekündigt wird, dass demnächst eine tolle neue Version der Software installiert wird und sich gleichzeitig einiges am Sicherheitskonzept und bei den Geschäftsbedingungen ändert. Freundliche Hoster lassen dann dem Benutzer 2 Monate Zeit, die Umstellung zu bewerkstelligen. Andere wie zum Beispiel Google  bei der Anwendung Google Spaces teilen ihren Anwendern kurz mit, dass die Software geändert wurde und alte Anwendungen nicht mehr laufen. Freundlicherweise wird eventuell noch eine Datenkonversion alt nach neu angeboten, die aber meist nicht richtig funktioniert. Für die Benutzer bedeutet das, dass sie ihre Anwendung von Hand neu aufbauen und meist auch neu strukturieren müssen. Im Fall von Google kann sich der Benutzer nicht einmal beklagen, da die Anwendungen in den ersten Jahren meist als BETA (keine Garantie) bezeichnet werden und Google sich ausdrücklich das Recht vorbehält, Dienste (Service) jederzeit zu beenden. Nachdem ich eine Vereins Website mit Google Spaces beim Erscheinen der neuen Software Version komplett neu machen musste, hält sich meine Begeisterung für Google Services in Grenzen. Die Google Services sind ja ganz nett, können aber nur für Dinge benutzt werden, die man jederzeit wieder aufgeben kann.

Wer glaubt diese Sachlage würde sich ändern, wenn man für die Google Services bezahlt, sollte mal die Verträge von Google genau ansehen. Software Entwickler, die nie gelernt haben wie man Software baut, die über Jahrzehnte betrieben werden kann (wie bei den IBM Großsystemen bisher üblich) , können das auch nicht wenn die Marketing Abteilung die Services aggressiv verkauft. Für Privatanwender mit kleinen Applikationen mag das fehlende Versionsmanagement von Internet Anwendungen ja sehr ärgerlich sein, für Firmen, deren Geschäft von solchen Systemen abhängt, kann eine nicht geplante neue Version der Cloud Software sogar zum Zusammenbruch der Firma führen. Dieses Problem ist keineswegs nur auf Google beschränkt. Selbst erfahrene Software Hersteller wie Microsoft können ihre Cloud Produkte wie z.B. Sharepoint nicht managen. Das ist auch extrem schwierig, weil man ja neue Funktionen anbieten will, die über das bereits bestehende Angebot hinausgehen und die Anwender bewegen sollen, die neue Software zu kaufen.

Andere Hoster lassen einfach veraltete Software weiter laufen, was dann dazu führt, dass man dann keinen Support mehr bei Fehlern erhält und z.B. neue Betriebssysteme, Hardware  oder Anwendungssysteme nicht unterstützt werden. In der Regel ist das auch keine sehr gute Alternative.

Auf alle Fälle sollten Cloud Anwender folgende Szenarien durchspielen, bevor sie signifikante Mengen an Zeit und Geld investieren:

  1. Was muss ich tun wenn der Cloud Betreiber kurzfristig oder generell seinen Dienst einstellt? (oder seine Preise wesentlich erhöht)
  2. Was muss ich tun wenn eine Cloud Anwendung komplett eingestellt wird? (Hoster geht Pleite)
  3. Was muss ich tun wenn eine Cloud Anwendung nicht mehr weiter entwickelt wird?

Eine ganz wichtige Funktion jeder Cloud Anwendung ist das Auslesen und Speichern der Benutzerdaten aus der Cloud und Konversion in ein bearbeitbares Format. Ein ganz wesentlicher Grund dafür, dass ich WORDPRESS als Blog Plattform benutze, ist die No Lock In Funktion, mit der man alle Benutzerdaten in ein strukturiertes XML Dokument exportieren kann.  Diese Daten kann man dann mit einfacher Software z.B. in Word Dateien umwandeln und so auch ausserhalb des WORDPRESS Hostings verfügbar machen. Ein gutes Zeichen ist es z.B. wenn der Cloud Anbeiter bereits mehrere neue Software Versionen heraus gebracht hat ohne die Benutzer wesentlich zu stören. Das deutet auf ein kompetentes Entwicklungsteam hin.

Es lohnt sich auch ab und zu im Web nachzuschauen, ob das verwendete Cloud System gute Kritiken erhält und die Zahl der Benutzer wächst und nicht zurückgeht. Ist ein konkurrierendes System wesentlich erfolgreicher, wird das benutzte System wohl nicht lange Bestand haben (the winner takes it all). Besondere Vorsicht ist bei Apple und Microsoft Services angebracht, da diese Firmen ganz bewusst eigene Standards bei Datenformaten, Anwendungs- und Programmiersystemen bevorzugen. Davon wegzukommen ist extrem schwierig.

Mit Audacity MIDI Files in MP3 umwandeln

Audacity ist zur Zeit wohl der beste freie Audio Editor. Man kann damit Tonaufnahmen machen und editieren und daraus Dateien für CD (.wav) oder MP3 Dateien erstellen. Audacity hat auch eine MIDI Import Funktion. Damit kann man aber MIDI Dateien nur ansehen – also z.B. in Relation zu einer WAV Datei. Um eine MIDI Datei in eine MP3 Datei umzuwandeln, muss man zuerst eine „klingende“ WAV Datei erstellen. Man spielt hierfür einfach eine MIDI Datei auf dem PC ab und nimmt das Ausgangsignal mit Audacity auf ganz ähnlich wie man mit dem Mikrofon eine Audio Aufnahme macht. So geht’s:
  1. Audacity downloaden, installieren und starten    
  2. Im Ausgangsfeld wird Waveausg.-Mix angezeigt. Der Schieberegler für das Mikrofon (Aufnahme) links davon sollte etwa in der Mitte stehen.
  3. Mono oder Stereo Ausgabe einstellen -> Bearbeiten -> Einstellungen -> Kanäle  1 oder 2  einstellen  
  4. Auf den runden, roten Aufnahme Button klicken
  5. Jetzt das Midi File abspielen z.B. mit Windows Media Player. Bei Audacity werden nun Signale in den Eingangsfeldern dynamisch angezeigt.
  6. Am Ende der Wiedergabe auf den gelben Audacity Stop Botton klicken.
  7. Eventuell am Anfang und Ende des Audio Files „stumme“ Teile entfernen wenn man bei Start und Stop nicht besonders schnell war. Eventuell kann man die Audio Daten mit Audacity noch bearbeiten z.B. Bässe verstärken usw
  8. Audacity Datei exportieren -> Datei Exportieren als MP3 …

In einer typischen Anwendung komponiert man z.B. ein Stück mit einem Kompositionsprogramm z.B. Finale, Encore, Sibelius etc und generiert daraus ein MP3 File zum Üben, als Begleitmusik oder Klingelton. Bei den meisten kann Programmen kann man klingende MP3 Files direkt exportieren und braucht nicht den Umweg über ein MIDI File gehen.