(Pi ist überall) Über Google erfährt man bekanntlich so manches, was man vorher nicht wusste. Zum Beispiel, dass der 14.3 der Pi-Tag ist (eigentlich auch logisch). Kann und sollte man für eine harmlose Zahl einen Gedenktag einrichten? Ich denke schon, da es kaum etwas gibt (was mir spontan einfallen würde), das in allen Kulturen gleichermaßen geschätzt wird, das von keiner Ideologie umklammert ist, und um das noch keine Kriege geführt wurden. Pi ist vor allem ein besonderer Tag für die sog. Nerds. Wie man als typischer Nerd (oder Geek, wobei ich den Unterschied zwischen den beiden soziologisch-kulturellen Minderheiten nicht in 1-2 Sätzen beschreiben könnte - ich vermute, Geeks pflegen häufiger soziale Kontakte) den "Pie-Day" am besten begehen kann erfährt man hier: http://www.wikihow.com/Celebrate-Pi-Day Da es in diesem Blog hin und wieder auch um Visual Basic gehen soll, im folgenden eine kleine Console-App, die die Kreiszahl über eine einfache Reihenentwicklung annähert(zur Abwechslung einmal ohne LINQ&Lambdas): ' Berechnet Pi über eine einfache Annäherung Module Module1
Private RecurseLimit As Byte = 60 Private PiOffiziell As String = "3.1415926535897932384626433832795028841971693993751"
Sub Main() Console.Title = "Anhäherung an Pi" Console.ForegroundColor = ConsoleColor.Green Dim PiZahl As Double = 2 * CalculatePI(1) Console.WriteLine("Die Annährung: {0:N20}", PiZahl) Console.WriteLine("Math.PI: {0:N20}", Math.PI) Console.WriteLine("Das Original: {0:N50}", PiOffiziell) Console.ReadLine() End Sub
Private Function CalculatePI(ByVal i As Integer) As Double If i > RecurseLimit Then Return i Else Return 1 + (i / (1 + (2 * i))) * CalculatePI(i + 1) End If End Function
End Module Im Rahmen der Double-Genauigkeit ist das Ergebnis nicht schlecht und entspricht ziemlich genau dem, was auch Math.Pi liefert. Natürlich ist es kein Vergleich zur offiziellen Zahl, die inzwischen auf etwa 2 Trillionen Ziffern genau berechnet wurde (bekanntlich ist Pi eine unendliche Zahl), oder zu jener Kurzvarianten, die man (als echter Geek bzw. Nerd) eigentlich auswendig aufsagen können sollte (der Weltrekord liegt laut Wikipedia bei 100.000 Stellen, aufgestellt von Akira Haraguchi, der für das Aufzählen einen Tag benötigte): 3.1415926535897932384626433832795028841971693993751 Wer viel Zeit hat und gerne einmal eine "State of the Art"-Variante kennenlernen möchte, sollte sich den folgenden Text zu Gemüte führen, der zeigt, wie sich Pi mit Hilfe der Grafikkarten-CPU (GPU) und F# berechnen lässt: http://tomasp.net/articles/accelerator-intro.aspx
(auf der Gegenfahrbahn den Stau überholen - die Maßnahme 'A' macht's möglich) Letzte Woche fand in Hannover traditionell wieder einmal die CeBit statt, die "weltgrößte Computermesse" (wie es in den Radionachrichten seit Jahren heißt und wo das Wort "Computer" mit der Betonung auf dem "u" immer so betont wird als wäre das noch ein exotisches Thema - dabei verfügt ein modernes Handy vermutlich über mehr Rechenleistung als die meisten Mainframes der 70er Jahre). Die Cebit ist auch keine Computermesse, sondern eher eine Bühne für die gesamte Palette an IT-Dienstleistungen, insbesondere deutscher Firmen. Wer die "neusten Modelle" sehen möchte wird vermutlich genauso enttäuscht sein wie jemand, der von den ganzen Thematik keine Ahnung hat und endlich einmal aus nächster Nähe erleben möchte, wie Computerfreaks, Programmierer oder Hacker aussehen. Die Cebit ist insgesamt eine relativ unspektakuläre Angelegenheit und man muss bereits genauer hinschauen und Hunderte von Metern durch die großen Hallen zurücklegen, um echte Innovationen zu erleben (aber es gibt sie natürlich). Aber die CeBit besitzt nach wie vor ihre speziellen Reize, für die es sich lohnt am Messebahnhof Laatzen auszusteigen (der Umstand, dass der ICE während der CeBit-Woche kurz vor Hannover einen Zwischenhalt einlegt macht die Messe gerade für Tagesbesucher leicht erreichbar). Branchengrößen wie Adobe oder Apple sind seit Jahre nicht mehr auf der CeBit vertreten (dafür war Dell nach Jahren der Abstinenz wieder mit einem eigenen Stand dabei) genauso wenig wie es den Flair der Anfangsjahre mit Firmen wie Commodore, Schneider, Micrografx oder Borland noch nicht. Dafür war Google erstmals (?) mit einem eigenen Stand vertreten, der aber lediglich aus einer schlichten Bühne bestand, auf dre drei StreetView-Cars platziert wurden mit denen Google die flächendeckende Erfassung von Straßen und Häusern durchführt (theoretisch soll jeder Quadratmeter in Deutschland erfasst werden, was enorme Eingriffe in die Privatsphäre zur Folge hat - in einer Image-Broschüre, die am Stand ausgelegt wurde, und in der sich das alles relativ harmlos anhört, findet man auch eine Hinweis darauf, dass theoretisch jeder Einspruch dagegen erheben kann, dass z.B. das eigene Haus "identifizierbar" wird (mehr dazu z.B. hier). Ein wenig seltsam war, dass sich scheinbar kein Google-Mitarbeiter am Stand aufhielt (oder ich war einfach am falschen Stand gewesen;). (demnächst womöglich vor Ihrer Haustür - ein StreetView-Car von Google) Die CeBit kommt in der Fachpresse seit Jahren eher schlecht weg, ganz zu Unrecht wie ich finde. Natürlich sind die Zeiten vorbei, in denen auf der CeBit irgendwelche bedeutenden "Ankündigungen" gemacht wurden. Auch der Umstand, dass viele wichtige Unternehmen nicht mehr dabei sind kann man der Firma mit dem wohlklingenden Namen "Deutsche Messe", die die CeBit seit Jahren nicht nur in Deutschland durchführt, nur indirekt vorwerfen. Die Branche, sofern man sie überhaupt noch als Ganzes erfassen kann, ist dazu einfach zu vielfältig geworden, als dass sich alles in einer Messe unterbringen ließe. Und: Innovationen, mit denen sich "Experten" beeindrucken ließen sind seltener geworden, da Quantensprünge nicht in Intervallen von Jahren, sondern Jahrzehnten stattfinden und es dann noch einmal ein "paar Jahre" dauert bis sie kommerziell eine Rolle spielen (die CeBit ist zudem keine Innovationsschau, sondern in erster Linie eine Produkt- und Handelsmesse). Man kann dem CeBit-Veranstalter auch nicht vorwerfen, sich nicht etwas einfallen lassen zu haben, um dem Besucherschwund entgegenzuwirken. Letztes Jahr erhielten eine Reihe von Open Source-Projekte (kostenlose) Standflächen, dieses Jahr wurde mit der CeBit Sounds und der Spielhalle mit den "Intel Extreme Masters" gezielt das jüngere Publikum angesprochen. Für Innovationen ist traditionell die Halle 9 mit ihrem "Future Parc" zuständig, in der sich (in Bundesländer unterteilt) Universitäten und Forschungseinrichtungen präsentieren, aber auch Firmen mit kommerziellen Produkten. Besonders beeindruckt hat mich der Eye-Tracking-Scanner der Firma Tobii, der auf die Pupillen-Bewegung reagiert und dadurch z.B. erkennen kann, wie lange der Betrachter auf bestimmten Stellen des Bildschirms verweilt. Ich habe es problemlos geschafft, einen Text mit dem zu scrollen, was ganz neue Möglichkeiten eröffnet wie sich z.B. eBooks lesen lassen. Natürlich gab es noch eine Reihe weiterer echter Innovationen bzw. interessanter Produkte - die folgende Aufstellung erhebt natürlich keinen Anspruch auf Vollständigkeit: - Das LTE-Connected Car bei Alcatel Lucent (LTE ist der "Nachfolger" von UTMS und verspricht DSL-Geschwindigkeit beim mobilen Internet-Zugang - ich fahre zwar relativ wenig Auto, doch zeigt die Entwicklung eindrucksvoll, dass Breitband in ein paar Jahren als gegeben vorausgesetzt werden kann).
- 3D HD-Beamer von LG (klingt im Moment noch etwas exotisch, wird in ein paar Jahren sicher Standard sein).
- Ein "Brain Computer-Interface", mit dem sich ein Computer durch Gehirnaktivitäten steuern lässt (so etwas kann natürlich nur aus Österreich kommen;)
- Eine vom Fraunhofer Institut in Erlangen entwickelte Software mit dem Namen Shore, die Mimik und Gemütszustand erkennen kann (und die es auch zum Download gibt).
- Ein schicker eBook-Reader von Asus
- 3D-Fernsehen in verschiedenen Ausprägungen
- Einige Computerbuchverlage (Pearson, Gallielo) sind wieder zurück (nicht erst seit diesem Jahr)
Einen unterhaltsamen Überblick vermittelt das c't-TV-Magazin mit Georg Schnurrer's Messerundgang: http://www.heise.de/ct-tv/artikel/Video-Was-gibt-s-denn-hier-zu-sehen-938339.html Auch Microsoft war natürlich wieder in Halle 4 mit einem bunten Themenmix vertreten bestehend aus Themen wie Cloud Computing (Frank Fischer hielt einen guten Vortrag, bei dem er den Übergang von der Anwendung, die auf eigenen Servern des Unternehmens läuft, auf das Hosting in der Cloud mit einem "jetzt machen wir das Kabel einfach etwas länger" umschrieb - eindrucksvoll war auch sein Zahlenvergleich - der größte Hoster in Europa hat nach seinen Worten ca. 25.000 Server "im Keller" stehen - "soviel bauen wir jeden Monat in unsere DataCenter ein"), Business Intelligence, Windows 7, das neue Arbeiten, Office 2010 oder das digitale Klassenzimmer. Entwicklerthemen spielen leider kaum noch eine Rolle und reduzieren sich im Wesentlichen auf Übersichtsvorträge im MSDN-Kino und einer unscheinbaren Informationstheke, an der man theoretisch Fragen stellen kann (Tobias Weltner war mit seinem beinahe schon traditionellen PowerShell-Vortrag dieses Jahr leider nicht dabei). Es gab genau einen PC, auf dem Visual 2010 Studio gezeigt wurde, allerdings war das ein Partnerstand. Für mich ganz klar die falsche Schwerpunktsetzung. Die Hotelpreise lagen auch 2010 deutlich über dem Durchschnitt (die astronomischen Preise, bei denen ein Hotelzimmer, das außerhalb der CeBit für 90€ zu haben ist, auf einmal 300 bis 400€ kostet, gab es auch dieses Jahr), aber es nicht mehr so, dass Hannover komplett ausgebucht wäre und es unmöglich wäre, kurzfristig ein (bezahlbares) Hotelzimmer zu finden (mein Tipp: das B&B-Hotel an der Autobahnraststätte Garbsen;). Auch die Maßnahme "A" (wie Anfahrt) wurde noch nicht abgeschafft. Sollte es sie eines Tages nicht mehr geben, würde ich mir über die Zukunft der CeBit ernsthaft Gedanken machen. (auch wenn es im Pressezentrum deutlich ruhiger zugeht als früher, die CeBit ist immer noch einen Besuch wert)
(es geht nichts über ein kleines Erfolgserlebnis) SharePoint ist ein interessantes Produkt auch wenn es praktisch ausschließlich bei größeren Organisationen ein Thema sein dürfte. Seit November gibt es die erste offizielle Beta von SharePoint 2010. Für Entwickler ist SharePoint insofern interessant, da das kommende VS 2010 endlich Vorlagen (insgesamt ein Dutzend) für die wichtigsten "SharePoint-Artefakte" wie WebParts oder Listendefinitionen oder Sitedefinitionen enthalten wird. Die SharePoint-Entwicklung wird damit auf eine einheitliche Grundlage gestellt. Interessant ist auch, dass man künftig SharePoint 2010 auch unter Vista und Windows 7 installieren kann, beide aber nur in der 64-Bit-Version. SharePoint 2010 auszuprobieren setzt daher den Umstieg auf 64-Bit voraus, was aber grundsätzlich kein Problem sein sollte, da die meisten modernen CPUs inzwischen 64-Bit-CPUs sind (mich wundert allerdings, warum das scheinbar nirgendwo explizit erwähnt wird). Die Installation von SharePoint 2010 ist relativ einfach - ich habe es vor kurzem unter Windows Server 2008 R2 probiert und bin, wie anscheinend viele andere auch, an einem lästigen Installationsbug hängen geblieben, der erst im Anschluss an die Installation beim Konfigurationsassistenten auftritt. Dort wiederum genau bei Schritt 5 und dort wiederum genau dann, wenn der Search-Dienst bereitgestellt werden soll - der Assistent wartet an dieser Stelle eine "halbe Ewigkeit" und bricht irgendwann die komplette Installation ab, was natürlich etwas frustrierend ist (vor allem, nachdem alles so verheißungsvoll begonnen hat). Die Lösung, die mir geholfen hat, bestand darin, während der Konfigurationsassistent auf irgendetwas scheinbar "ewig" wartet, über Start|Ausführen und Eingabe von "Services.msc" die Dienstekonsole zu starten, dort den "SharePoint Server Search 14"-Dienst zu lokalisieren und in seinen Eigenschaften im Register Anmelden bei Dieses Konto "Lokaler Dienst" einzutragen und den Dienst dann neu zu starten. Danach sollte der Konfigurationsassistent durchlaufen. Das Ganze wird hier beschrieben: http://social.technet.microsoft.com/Forums/en/sharepoint2010setup/thread/080317ee-c726-4b3a-b208-e7e5121bc395 Ein anderer Tipp besteht darin, einen bestimmten Registry-Key zu löschen, der ebenfalls etwas mit dem Search-Dienst zu tun hat: http://blog.davidyack.com/journal/2009/12/6/working-around-a-sharepoint-2010-install-bug.html Ich habe den Key zwar gelöscht, kann mir aber vorstellen, dass das nicht unbedingt notwendig war. Es werden in verschiedenen Blogs noch eine Reihe weiterer Tipps (wie die Installation eines Hotfixes für Windows Server 2008 R2 -danach ist ein Neustart erforderlich) empfohlen, die aber alle recht speziell zu sein scheinen als dass sie mit dem oben beschriebenen Problem etwas zu tun haben könnte. Am Montag (8.2) soll es übrigens den RC von Visual Studio 2010 geben.
(auch 2010 noch faszinierend - ein RayTracer, insbesondere, wenn er Parallel LINQ verwendet) Der parallelen Programmierung gehört die Zukunft. Wenn immer mehr PCs zwei oder mehr Kerne besitzen, kann man das Software-Entwickler nur schwerlich ignorieren (ein wenig erinnert mich das an die Zeit, wo PCs bereits 4 MByte Arbeitsspeicher besassen, DOS aber nur 640 KByte ansprechen konnte). Doch paralleler Programmierung haftet nicht zu unrecht der Ruf an, kompliziert zu sein. Als großer Anhänger der bewährten "Lernen an Beispielen"-Methode freut es mich daher, dass Microsoft schon vor einiger Zeit eine Sammlung von "Parallel Samples" für .NET und Visual Studio 2010 zusammengestellt. Einige der knapp über 20 Beispiele sind wirklich faszinierend, wie z.B. ein Ray Tracer oder ein paralleles Game of Life, das mit einem extrem großen Populationsfeld arbeitet. Die Beispiele laufen natürlich auch auf einem PC, dessen CPU nur einen Kern besitzt;) Die meisten Beispiele liegen zweisprachig vor, einige wenige gibt es nur in einer C#-Fassung und für ein Beispiel gibt es auch eine F#-Variante. Auch wer sich im Moment vielleicht noch nicht so sehr für parallele Programmierung interessiert, sollte sich die Beispiele herunterladen und sich mit ihnen eine Weile beschäftigen, da man nebenbei einiges über die moderne Programmierung mit C# und Visual Basic lernt. Die Beispiele gibt es hier.
(wieder einmal die Zukunft) Der guten Tradition halber an dieser Stelle ein paar (eher harmlose) Prognosen für das aktuelle Jahr, das immerhin den Beginn des zweiten Jahrzehnts des 21. Jahrhundert markiert (in diesem Jahr spielt bekanntlich der 2. Teil von Arthur C. Clarke's Odyssey im Weltraum - die Gegenwart hat die Zukunft wieder einmal überholt). 2010 wird, zu mindestens was das Thema Microsoft angeht, wieder einmal ein Jahr der großen Releases sein. In diesem Jahr kommen unter anderem: - Visual Studio 2010
- F# 1.0
- .NET Framework 4.0
- SharePoint 2010
- Office 2010
- Die Office WebApps
- Silverlight 4
- Windows Mobile 7.0
Eine beeindruckende Liste. Dennoch wird sich keines dieser Releases sehr stark auf aktuelle Projekte auswirken oder gar zu einem der vielzierten "Paradigmenwechsel" führen, da nüchtern betrachtet einige Neuerungen lediglich Antworten auf Fragen sind, die bislang nur wenige Entwickler gestellt haben. Das beste Beispiel ist für mich die Möglichkeit Programmcode parallel auszuführen zu können, die mit .NET 4.0 Realität werden wird. Diese Herausforderung existiert nicht erst seit dem es Multicore-CPUs bei Aldi&Co gibt, sondern (mindestens) bereits seit Mitte der Achtziger Jahre (Stichwort: Transputer und Occam). Theoretisch ist die parallele Ausführung aus Performance-Gründen eine wünschenswerte Verbesserung, für die Mehrheit der Anwendungen, die heutzutage unter .NET umgesetzt werden, dürfte dieser Aspekt aber noch keine Rolle spielen. Aus diesem Grund ist es zwar wichtig, dass es (endlich) eine entsprechende Unterstützung gibt, Code parallel auszuführen zu können, es wird aber Jahre dauern bis die Mehrheit der .NET-Entwickler das für ihre eigene Anwendungen nutzt (von der Möglichkeit, LINQ-Abfragen parallel auszuführen zu können einmal abgesehen). Cloud-Computing? Die Branche braucht bekanntlich ihre Buzz-Wörter. Aktuell ist Cloud-Computing Buzz-Wort Nr. 1. Am 1.1.2010 ging Microsoft Azure offiziell an den Start - die ersten 4 Wochen sind kostenlos, danach wird jeder CPU-Takt und jede Speicherzelle, die die eigene Anwendung in der Wolke verbrät, abgerechnet. Aber, Azure ist Realität und jeder kann seine Anwendung in der Wolke hosten. Wie es Don Box und Chris Anderson auf der PDC 09 in einer netten Demo (etwa ab 1:05:30 - ansonsten wird man noch mit Bob Muglia konfrontiert;) während der Keynote des 1. Tages gezeigt haben, kann dies sogar ein C++-Programm sein. PHP ist ebenfalls Willkommen. "Love all, serve all" ist das neue Motto bei Microsoft. Auch wenn Microsoft irrsinnige Summen in die Infrastruktur investiert (alleine das erste DataCenter in Chicago kann über 200.000 Server aufnehmen) wird sich das Thema nur langsam entwickeln, da es viele der Anwendungen noch gar nicht gibt, die von einer frei skalierbaren Rechenleistung profitieren können und der Sicherheitsaspekt gerade in Deutschland noch viele Verantwortliche davon abhält über diese Option überhaupt nachzudenken. 64 Bit? Wird 2010 das Jahr für den Wechsel auf 64 Bit? Sicher nicht. Es gab eine Zeit, da stand 16 Bit in der Computerszene für Fortschritt und Aufbruchstimmung, ähnlich Web 2.0 (es gab in den guten, alten 80ern sogar eine Band, die so hieß;). Heutzutage dürften selbst viele Entwickler nicht genau wissen, ob ihr PC über eine 32- oder 64-Bit-CPU verfügt. Dazu ein kurzer Exkurs. Der folgende PowerShell-Befehl findet es über eine WMI-Abfrage heraus: (Gwmi win32_processor | Select description) -match "x64" Diese Abfrage liefert auf meinem ThinkPad X300 übrigens ein $true, so dass ich offenbar ebenfalls glücklicher Besitzer einer 64-Bit-CPU bin. Zwar macht Microsoft mit seiner Ankündigung ernst, dass es künftige Server-Versionen nur als 64 Bit-Versionen geben wird (bzw. bereits gibt), doch solange es keine 64-Bit-Version von Visual Studio gibt, wird auch das Thema 32/64-Bit für Entwickler keine allzu große Rolle spielen. Touch und Surface? Während also im Bereich der (.NET-) Entwicklung in diesem Jahr vermutlich keine sensationellen neuen Trends entstehen werden, sieht es im Hardwarebereich ganz anders aus, wo nicht zuletzt dank Windows 7, aber auch der rasanten Entwicklung bei den mobilen Geräten wieder eine richtige Aufbruchstimmung zu spüren ist. 2010 könnte den Durchbruch für TouchDisplays bedeuten(natürlich ist auch diese Technik alles andere als neu, selbst für den legendären C64 gab es damals eine Art mit Sensoren ausgestattete Folie zu kaufen, die man auf den 12"-Bildschirm kleben musste). Mir gefällt die Auswahl per Fingerdruck und vor allem Fingerbewegung (etwa auf meinem iPod Touch) deutlich besser als die per Maus. Ich kann mir einige Anwendungen vorstellen, die sich mit den Fingern deutlich angenehmer bedienen lassen als mit der Maus. Wer einmal eine Weile mit einem Microsoft Surface-Gerät gespielt hat, sieht die Beschränkheiten der modernen Benutzeroberflächen auf einmal sehr klar und entdeckt völlig neue Möglichkeiten der Benutzerinteraktion. Da steckt großes Potential dahinter (sehr empfehlenswert ist ein Vortrag auf der PDC 09 zu diesem Thema - alleine wegen der Demo, wo jemand ein Glas auf eine Surface-Oberfläche stellt und das Programm erkennen kann, ob das Glas oder leer ist - was das alleine in der Gastronomie für Möglichkeiten eröffnet:). Programmiert werden Touch- und Surface-Oberflächen (natürlich) mit WPF. WPF! Alleine aus diesem Grund wird 2010 für mich das Jahr von WPF. WPF ist nicht ganz einfach zu erlernen und erfordert gerade für erfahrene WinForms-Entwickler eine gewisse "Leidensfähigkeit", da man sich so manches Mal fragt, ob das wirklich die Zukunft ist (ich sitze gerade an meinem Visual Basic 2010-Kompendium, in es natürlich zu 100% um WPF gehen wird, und habe entsprechende "Leidensstrecken" hinter mir und sicher noch etliche vor mir). Auch wenn WPF 4.0 gegenüber WPF 3.51 nicht allzu viel Neues bringt und viele Entwickler noch Vorbehalte haben dürften, hier gilt wieder einmal das Motto: Wer jetzt noch wartet, verliert ganz einfach kostbare Zeit. Dazu ein Tipp: Auf der Basta! Spring wird es auf den Visual Basic Days wieder ein paar sehr gute Vorträge zu diesem Thema geben. Insgesamt wird 2010 für die IT-Branche, insbesondere für Entwickler, ein gutes Jahr werden. Insbesondere für jene, die bereits vor 2-3 Jahren auf die richtigen Themen gesetzt haben. Vorauszuschauend zu planen ist daher meine Empfehlung nicht nur für dieses Jahr.
(leider bei den Express Editionen nicht dabei - VS2008Imagelib.zip) Nachdem ich in den letzten Tagen gleich zwei Leser-Mails mit der Frage nach der VS2008Imagelib.zip-Datei in der Visual Basic Express Edition erhalten hatte (in meinem Buch "Jetzt lerne ich Visual Basic 2008" hatte ich leider vergessen darauf hinzuweisen, dass es die Images nicht bei der Express Edition gibt - ansonsten ist sie im Ordner %Programfiles%\Microsoft Visual Studio 9.0\Common7\VS2008ImageLibrary\1031 zu finden) habe ich mich selber auf die Suche gemacht mit folgendem Resultat: VS2008ImageLib.zip gibt es nicht als freien Download von Microsoft. Fazit: Es gibt leider keinen direkten Ersatz für die Icons und Bitmaps, was schade ist, da man ohne sie Menüs und Toolbars nicht mit eigenen Icons ausstatten kann (interessanterweise funktioniert der Befehl Standardelemente einfügen im Kontextmenü einer Menü- und Symbolleiste auch in der Express Edition - ein paar Icons gibt es also doch). Hier sind ein paar Links, auf die ich bei einer kurzen Webrecherche gestoßen bin (alle Angaben natürlich ohne Gewähr, insbesondere was die Lizenzbedingungen angeht - es sieht aber so als wären die folgenden beiden kleinen Icon-Libraries frei verfügbar): http://famfamfam.com/lab/icons/mini/ (hier gibt es 144 Standardicons, vor allem mit typischen Symbolleisten-Icons, allerdings im Gif-Format, was jedoch kein Problem ist, da sie sich z.B. mit IrfanView konvertieren lassen). http://famfamfam.com/lab/icons/flags/ (hier gibt es die 247 Flaggen der Welt) Die Frage "Angenommen, ein Bekannter hat VS 2008 Professional installiert - darf er mir dann die VS2008ImageLib.zip-Datei kopieren?" lässt sich mit Sicherheit relativ einfach beantworten - offiziell darf er es (natürlich) nicht, denn auch die Bitmaps gehören Microsoft. Allerdings sollte es im Interesse von Microsoft sein, dass möglichst viele Entwickler in ihren Anwendungen die Standardicons verwenden. Es wäre daher sehr schön, wenn es eine Lösung für die Anwender der Express Editionen geben würde. Dann gibt es als letzten Rettungsanker noch die 90-Tage-Testversion von VS 2008 Professional (der Download ist mit ca. 3.5 GByte aber nicht gerade ein Leichtgewicht). Die spannende Frage ist natürlich, ob VS2008ImageLib.zip hier enthalten ist? Und wie kann man es herausfinden, ohne die Version komplett installieren zu müssen? Zum einen mit Hilfe eines der zahlreichen Tools, über die sich eine Iso-Datei wie ein Laufwerk ansprechen lässt (z.B. Magic ISO Maker). Zum anderen kann man die Installation bis zum Auswahldialog der Komponenten laufen lassen und nachsehen, ob die Grafikbibliothek unter "Tools für das Verteilen von Anwendungen" anwählbar ist. Und das ist der Fall, so das der Download der Testversion eine Art vorübergehende Alternative ist (ob man allerdings 3.5 GByte herunterladen und 2.5 Gbyte installieren sollte - die Minimalkofiguration von VS 2008, um eine knapp 10 MByte große Datei zu bekommen ist eine andere Frage). In jedem Fall erlischt nach 90 Tagen die Lizenz für Visual Studio und damit auch die für die Bitmaps, womit wir wieder fast am Anfang stünden.
(wer zu spät kommt...) Dieser Beitrag hat zur Abwechslung nichts mit einem Entwicklerthema zu tun, aber doch erstaunlich (oder erschreckend) viel mit dem Wandel, der durch das Internet in immer mehr Bereiche des täglichen Lebens einzieht, und den wir als Programmierer, Web-Designer, Entscheider in IT-Projekten oder einfach nur als IT-Begeisterte zu einem zwar extrem geringen, aber doch vorhandenen Teil mit vorantreiben. Vor allem geht es um ein Thema, das mir zunehmend Sorgen bereitet, da der Wandel, der durch das Internet immer mehr beschleunigt wird, sich nicht nur auf Versandhaus-Dinosaurier und Kaufhäuser beschränken wird, sondern in naher Zukunft auch andere Bereiche des wirtschaftlichen Lebens betreffen wird (z.B. Verlage). Und wenn einem heutzutage etwas Sorgen bereitet (und es nicht gerade private Themen sind) bloggt man eben darüber. Wozu gibt es schließlich das Internet? Mit der Verschwinden von Quelle verschwindet ein Teil des deutschen Alltagsleben. Viele Tausend Arbeitsplätze (nicht nur in Deutschland, sondern u.a. auch in Österreich) werden praktisch über Nacht vernichtet, was für die Betroffenen und ihre Familien Unsicherheit, Verbitterung, Zukunftsängste und spürbare Einschränkungen im täglichen Leben zur Folge haben wird, vor allem aber auch das Gefühl von einen Tag auf den anderen nicht mehr gebraucht zu werden. Fürth und Quelle mögen für die meisten weit weg sein, aber es gibt sicher bei jedem in der Region ein Beispiel, wo der "Strukturwandel" auf ähnliche Weise sichtbar wird (bei mir vor der sprichwörtlichen Haustür ist es z.B. die Auto-Industrie). Natürlich gibt es Gründe für diese wirtschaftliche Katastrophe. Ich bin mit Quelle, Privileg und Universum zwar aufgewachsen, doch war seit geschätzten 20 Jahren nicht mehr in einem Quelle-Laden gewesen und wäre in den letzten Jahren nie auf die Idee gekommen, z-B. eine Digitalkamera über den Quelle-Katalog zu bestellen. Man ändert einfach sein Konsumverhalten, wozu natürlich Amazon&Co, "Geiz ist geil" usw. dazu beigetragen haben. Natürlich muss man nach den Verantwortlichen fragen, wobei die Frage relativ einfach zu beantworten sein dürfte. Ohne irgendwelche Details zu kennen tippe ich auf das Management des Versandhauses, das sich als komplett unfähig erwiesen hat, offensichtliche Veränderungen im Kaufverhalten der meisten Deutschen zu erkennen und darauf entsprechend zu reagieren. Amazon ist nicht erst seit gestern in Deutschland vertreten und wenn einem selber nichts einfällt, kopiert man ein erfolgreiches Konzept (das hat bei verschiedenen "Sozial-Networking"-Plattformen in Deutschland offenbar ganz gut funktioniert). Tchibo, in den 70er Jahren noch eine eher etwas biedere und "langweilige" Kaffehauskette hat es offenbar erfolgreich geschafft, sich an das Internet-Zeitalter anzupassen (mit 3.65 Milliarden € liegt der Jahresumsatz in Deutschland um einiges höher als z.B. der von Amazon in Deutschland). Eine Teilschuld trägt für mich auch die Politik. Nicht, weil sie bei Quelle nicht mit Staatshilfen wie bei diversen Banken eingesprungen ist, was zwar einen gewissen Beruhigungseffekt (vor allem vor (!) einer Wahl) gehabt, aber an der generellen Situation natürlich nicht das Geringste geändert und das Problem zu Lasten der Steuerzahler einfach nur verschoben hätte. Die Politiker (in diesem Fall jene in Bayern) hätten bereits vor Jahren auf den erkennbaren und voraussehbaren Wandel reagieren und auf einer Art regionaler oder überregionaler "Zukunftskonferenz" mit Unternehmen und Betroffenen über Strategien diskutieren können, wie man auf den durch Globalisierung (mit der die Deutschen generell ihre Probleme haben) und das Internet ausgelösten bevorstehenden Wandel in Deutschland reagieren kann (wozu warb man in Bayern zur Stoiber-Ära noch mit der unwiderstehlichen Kombination aus Laptop und Lederhose?). Zu diskutieren sichert zwar keine Arbeitsplätze, aber es sensibilisiert die Beteiligten und vermittelt das Gefühl handeln zu können und einer Entwicklung nicht ausgeliefert zu sein. Außerdem hätte man etwas mehr Druck auf die Verantwortlichen in potentiell gefährdeten Unternehmen ausüben können auf die bevorstehenden Änderungen zu reagieren. Etwa: Muss man im Jahre 2009 einen 1.500-Seiten Katalog mit 70.000 Artikel an mehrere Millionen Haushalte versenden, wenn mehr und mehr Menschen über das Internet bestellen. In der Autobranche (Stichwort: Klimawandel, C02-Reduzierung, Trend zu erneuerbaren Energien usw.) scheint diese vorausschauende Planung zu funktionieren (bzw. hier ist es so offensichtlich wie nirgendwo anders, dass es dazu keine Alternative gibt). Das bittere an dem Ende von Quelle ist, dass das Unternehmen nicht daran gescheitert ist, dass seine Dienstleistung nicht mehr gefragt ist. Der Versandhandel hat in Deutschland 2008 28.6 Milliarden € umgesetzt und hat (laut Statistik) einen Anteil von 7% am Einzelhandelsumsatz erreicht. Davon fällt auf die Versender mit Katalog- und Internet-Einsatz 16.6 Milliarden €, auf die reinen Internet-Versender stolze 4.5 Milliarden € (die Zahlen stammen vom Bundesverband des deutschen Versandhandels). Die Nachfrage ist also da und wird in den kommenden Jahren mit Sicherheit nicht wesentlich nachlassen. Bei einem entsprechenden Geschäftsmodell hätte sogar die Kombination aus Internet-Bestellplattform mit einem engmaschigen Filialnetz (bekanntlich gibt es in jedem "Kuhdorf" einen Quelle-Shop) ein entscheidender Wettbewerbsvorteil gegenüber reinen Internet-Versendern sein können. Nur hätte diese Entwicklung vor 5 Jahren eingeleitet werden müssen als bereits abzusehen war, dass der Internet-Handel irgendwann in nächsten Jahren den traditionellen Katalogversand verdrängen wird. Quelle wird leider nicht das letzte Opfer des Wandels gewesen sein. Es ist erschreckend (und gleichzeitig auch faszinierend) wie z.B. Google dabei ist, nach und nach ganze Branchen zu marginalisieren (dass sich Herausgeber von Stadtplänen etwas einfallen müssen ist schon länger klar, aber dass z.B. die Hersteller von Navigationsgeräten in naher Zukunft ein Problem bekommen könnten weil praktisch die komplette Funktionalität eines Navi bei einem Android Handy mit dabei ist, ist eine Entwicklung, die zwar ebenfalls irgendwie vorhersehbar war, aber trotzdem überraschend kommt). Als einzelner kann man relativ wenig tun, die Entwicklung zu beeinflussen, aber es gibt Möglichkeiten: Ich werde in Zukunft private Dinge wieder per Brief verschicken (und nicht mehr per Mail, was gleich mehrere Vorteile hat -Stichwort: Privatsphäre - auch die Post hat massiv mit dem durch Mail und SMS veränderten Kommunikationsverhalten zu kämpfen) und Bücher nicht reflexartig beim Online-Kaufhaus bestellen, sondern beim lokalen Buchhändler (von denen die meisten auch eigene Bestellseiten im Internet offerieren). Das bedeutet zwar, dass das Buch eventuell nicht mehr am übernächsten Tag ins Haus geliefert wird (wenngleich jede Buchhandlung damit wirbt, praktisch jedes Buch auf den nächsten Tag bestellen zu können), aber Bequemlichkeit ist generell eine schlechte Ausrede (die Logistikunternehmen müssen sich um ihre Zukunft hoffentlich keine Sorgen machen, wenn mehrere Dutzend Bücher im Jahr nicht per ausgeliefert werden;). Das alles wird weder die Milliardenverluste der Post AG auffangen, noch die nächste Buchhandlung vor einer Insolvenz retten, aber es ist zu mindestens eine symbolische Aktion, die Wirkung zeigen könnte. Ich vertraue hier auf den "Schmetterlingseffekt". Wenn viele das Richtige tun hat das Tun, auch wenn es nur eine Kleinigkeit ist, auch eine Wirkung. die zu einer positiven Veränderung führen kann.
(VB 2010 - ein neues Logo gibt es auch) Seit Mitte Oktober steht die (lang erwartete) Beta 2 von VS 2010 und .NET Framework 4 als Download für alle zur Verfügung (nach der CTP-Preview und der Beta 1 ist dies die dritte Vorabverion, die Microsoft zur Verfügung stellt - am 22. März 2010 soll es angeblich die finale Version geben). Mit dabei ist auch die erste Vorabversion der Express Editionen zu C# und VB.NET (zu F# wird es dieses Mal noch keine Express Edition geben, was nicht bedeutet, dass man VS 2010 Professional kaufen muss, da man es in der "freien" VS 2008-Shell installieren kann und es mit Sharp Develop eine gute Alternative gibt). Nachdem ich in der Vergangenheit mit Vorabversionen von Visual Studio gemischte Erfahrungen gemacht hatte, war ich bei der Beta 2 entsprechend skeptisch. Um so erfreuter war ich daher, dass mein erster Eindruck von VB 2010 Express durchweg positiv ist (wenngleich ich nur die üblichen kleinen Beispielprojekt ausprobiert habe): >Die Installation verlief (unter Vista SP1) per Web-Installation angenehm schnell und problemlos. >Die IDE macht einen aufgeräumten und einladenden Eindruck. Die Umstellung auf WPF hat der IDE gut getan. Optisch wirkt alles ein wenig moderner, ansprechender und entspannter. Die Befehlsauswahllisten wurden gegenüber VS 2008 weiter verbessert, was sich beim Codieren angenehm bemerkbar macht. Ein Problem ist natürlich, dass WPF deutlich höhere Ansprüche an die Grafikhardware stellt (die "Horrorszenarien", über die einigen Blogs berichtet wurde, nach denen alles so langsam wird, dass der Mauszeiger praktisch einfriert, kan ich zum Glück nicht bestätigen). >Im Unterschied zu früheren Express Editionen sind die 2010er Expresss Editionen erweiterbar. Allerdings nicht über klassische Add-Ins, die Erweiterungen basieren auf einem neuen Erweiterungsmodell mit dem Namen "Managed Extensibility Framework" (MEF), mit dem vor allem der Code-Editor erweitert werden kann. >Die Funktionalität der IDE wurde ansonsten kaum erweitert, was ich eher für positiv halte (die zahlreichen Erweiterungen, die es für den Code-Editor bereits gibt und vor allem in Zukunft geben wird, werden zum Glück nicht automatisch geladen). Bei der Programmiersprache Visual Basic 10 gibt es nur wenige Neuerungen, was ich ebenfalls für positiv halte, da die Mehrheit der VB.NET-Entwickler noch ein gewisses Defizit besitzen dürfte was die mit Version 9.0 eingeführten Neuerungen (Stichwort: Lambdas) angeht. Dass sich Lambdas jetzt über mehrere Zeilen erstrecken und aus beliebigen Functions/Subs bestehen dürfen klingt zunächst unspektakulär, ist aber eine geniale Erweiterung in Richtung funktionaler Programmierung. Dass was bei C# 2.0 die anonymen Methoden sind, gibt es endlich auch bei VB.NET, aber in der Visual Basic typischen Syntax. Das folgende Beispiel zeigt eine einfache Methode zur Berechnung der Primzahlen: Dim AnzahlPrims = 0 Dim Prims = Enumerable.Range(3, 100).Where(Function(x) For n = 2 To Math.Sqrt(x) If x Mod n = 0 Then Return False End If Next AnzahlPrims += 1 Return True End Function) ' Wird erst mit dem For Each ausgeführt ' Console.WriteLine("{0} Prims gefunden...", AnzahlPrims) For Each z In Prims Console.WriteLine(z) Next Console.WriteLine("{0} Prims gefunden...", AnzahlPrims) Es ist wirklich toll, dass der Where-Methode eine mehrzeilige Inline-Funktion übergeben werden kann (der Zeilenfortführungsoperator ist ebenfalls nicht mehr erforderlich). Eine Kleinigkeit kann man ebenfalls schnell übersehen, Collections besitzen ab .NET 4.0 eine AsParallel-Erweiterung, durch die Abfragen gegen die Collection "parallel" (also auf die zur Verfügung stehende Kerne verteilt) ausgeführt wird. Insgesamt macht die Beta von VB 2010 einen guten Eindruck. VB.NET 10 rundet die mit der Version 9.0 eingeführten Spracherweiterungen sinnvoll ab. Gegenüber C# hat VB.NET was die Attraktivität der Sprache angeht aufgeholt, was nicht unbedingt zu erwarten gewesen wäre. Wer was die moderne VB-Programmierung angeht auf dem Laufenden bleiben möchte und mit funktionaler Programmierung oder gar paralleler Programmierung beginnen möchte, sollte gleich mit der Beta 2 loslegen.
|