Dienstag, November 07, 2006

OFF202 Windows SharePoint Services v3 and Office SharePoint Servers 2007 as a Development Platform

David Gristwood
Abstract:
Windows SharePoint Services v3 and Office SharePoint Servers 2007 as a Development Platform (a.k.a. "7 Reasons why Developers Will Love SharePoint"). Based on ASP.NET 2.0, SharePoint v3 and Office SharePoint Server 2007 are a great platform for developing a wide range of solutions. This session explores the overall architecture of SharePoint v3 and Office SharePoint Servers 2007, and covers 7 reasons why developers should be looking at SharePoint, including Web Parts, Workflow, Excel Services, Business Data Catlog, etc
.

Hmm, die Session beginnt nicht wirklich interressant. Sind es doch die selben Folien, welche ich bereits im Februar verwendete für meine Präsentation. Mal schauen, ob was "neues" kommt.
Es ist wirklich so, dass ich hier falsch am Platz bin. Er zeigt, wie man WebParts platziert, wie man diese Customized etc. Leider nicht wirklich spannend.
Nun sind Content Types, Features etc. dran… Naja, wie ich zu beginn bereits befürchted hatte.

Also grosse Neuigkeit sind InfoPath Forms angekündigt, welche sich im Browser bearbeiten lassen ;-)
Er klickt sich ein einfaches InfoPath Formular zusammen, Deployed es und… es gibt Applaus… Was wüden die wohl sagen, wenn ich jetzt unseren Laufzettel oder das Incident Formular zeigen würde. He, dass sind alles professionelle Developer die da sitzen, und sind von diesem einfachen Beispiel begeistert. Wenn ich an die Begeisterung bei unseren Präsentationen denke, da merke ich einfach, dass "unsere" Leute nicht abschätzen können, wie weit wir "ahead of the game" sind ;-)
Weitere Infos in meinem Office Blog vom März.
Ich verlasse die Session, so dass ich endlich Zeit und Ruhe habe, die ersten Session-Blog Einträge zu posten….(Wifi funkionierte gestern nicht im Hotel )

KEY001 LAUNCH: Windows Vista, the 2007 Office System and AJAX



Eric Rudder
Abstract:
Windows Vista and the 2007 Office System provide a wealth of new capabilities that enable you to build dynamic solutions more productively. AJAX technologies will help you build visually compelling Web sites. With these updates to the Microsoft application platform, you will enjoy productive and familiar tools for building a breadth of Windows, Web, and business solutions on a secure and dependable environment. This keynote session will provide you with an overview of these latest advances for building modern applications and reveal several new tools for helping you get your job done faster.



Ich war leider 5 Minuten zu spät, es hatte sooo viele Leute, und bis ich endlich im Auditorium sass, war ich ein wenig zu spät. Ich habe aber zum Glück nichts verpasst.
Sie erzählen von einem kleinem Mädchen, dass vor ca. 1 Jahr aufgefallen war, als sie den MCP für Visual Studio und C# machte. Damals war das Mädchen 9(!)
Danach holt er sie auf die Bühne, lässt sie ein wenig erzählen was sie alles machen will in ihrem Leben und lässt sie dann eines Ihrer Programme zeigen. Ok, ein Calculator, nichts spektakuläres. Als sie dann aber den Code erklärt, bin ich erstaunt. Sie hat das Ding mit -net 3.0, Also WPF und und WCF gebaut. Nicht schlecht für dieses Alter…Fand ich irgendwie eine witzige Einlage.



Nun wird verkündet, dass Gestern um 6.00 Uhr (Pacific Time) war der RTM von Office… ASP.net AJAX soll heute kommen und innert kürze via MSDN verfügbar sein (inkl. VISTA)
Der altbekannte Eric Lee kommt wieder einmal auf die Bühne… er zeigt die KPI WebParts in Sharepoint…. Klickt auf die Details eines KPI Wertes und wir erhalten Sensationelle Graphiken… Hier werde ich nachaken müssen, was dies für WebParts sind. Denn wenn unsere Reports so aussehen würden...
Danach zeigt er den WF, der dahinter steht… er erklärt einiges über den WF und dessen Designer, brauch ich hier nicht weiter auszuführen. Danach fügt er ein Sendmail Activity hinzu, interressant an diesem ist, dass Exchange 2007 via Webservice ansprechbar ist..
Nun kommt das WPF (Windows Presntation Foundation) zur Erklärung Er zeigt eine Design Applikation, so ne Modell - Designer Software, sehr sehr schön, mit 3 d- Modellen…. Sieht einfach suuper aus ! Innerhalb der Designer Software kann er nun diverse Modells auswählen, denen verschieden Kleider aus einem Katalog anziehen und sie dann auch virtuell sich bewegen lassen, drehen etc. Ich glaub es hat allen gefallen, gab es doch so einige solche Pfiffe, welche schöne Frauen bei einigen Typen auslösen ;-)



Eric (lee)erklärt nun das "People near me" API in Vista. Innerhalb der Software (nachdem er gezeigt hat, wie er im Source Code das API anspricht, sucht er sich Eric (Rudder)aus, klickt auf ihn. Nun wird via Secure Pipe zu Eric connected, sie arbeiten fortan in der selben Applikation mit dem selben Bild. Via Communication Server reden sie miteinander, während sie immer das selbe sehen. Beide können innerhalb der Software interagieren.
Nun kommt eine Office Demo, wie man Excel 2007 erweitern kann. Er zeigt eine Applikation, die in der Tabelle bei angeklicktem Item immer den Besten Preis und die Händler sucht, welche die besten Preise haben. Nun kann ich via Funktion berechnen, was wäre wenn, wenn ich alle Item's von dem Selben Händler nehmen würde und was es kosten würde. Ich kann auch sagen, dass ich einfach für jeden Artikel den günstigsten will. Oder ich kann mir den Lieferant anzeigen lassen, der am günstigsten ist, wenn ich alle Artikelo von einem Hersteller möchte. Die Übersicht sieht wieder einmal fantastisch aus. !
Der nächste Schritt ist, die Designer Software im Browser laufen zu lassen. ASP.net AjAX on Server… wow… sieht fast so aus wie in der WPF Applikation. Er zeigt, dass wenn ich etwas ändere, immer ein kompletttes Postback geschieht. Nun fügt er Code hinzu, und zeigt, dass nun via AJAX nur noch das geänderte Bild ändert und ersetzt wird ohne kompletten Postback. Intressant ist auch, dass sogar das "Drag and drop" von Kleidern auf den Modells im Browser funkioniert… und das sehr schnell.
Danach kommt ein Video vom Otto Versand. … hier wird die vorhin gezeigte Software anscheinen bereits genutzt und auch für den neuen Webshop genutzt.
Nun erfolgt ein Ausblick auf die nächsten Tools, Orcas etc. und die vielen schönen neuen Plugins… Wer die Roadmap kennt… Kann hier nicht alles vorstellen.
Am Schluss war das Thema noch LINQ (.net Language integrated Query) . Dazu ev. später mehr.

Interessant Key Note !

PRE008-4 Session 4: Advanced Customization Topics, Persistence and Designer Hosting


Christian Weyer , Ingo Rammer

Abstract: Das selbe wie in der vorhergegangenen Session !


Dies ist die letzte Session für heute.. Puh, bin froh. Ich hab das Gefühl, mein Fieber ist wieder gestiegen und ich bin ziemlich schlapp. Ich werde auf dem nach-Hause weg eine Apotheke suchen, mich ins Hotel begeben, diese Blog Artikel bearbeiten und dann nur noch schlafen… Aber nun zurück zur Session:
Ingo zeigt nun den State Machine Workflow, den er dem Titel nach bei der letzten Session hätte zeigen sollen… egal. Nun sind wir bei unserem Incident Management ;-)
Seine State Machine hat folgende States:

○ Initial State
○ Accepted
○ Declined
○ Manager Approval
○ Completed


Natürlich nichts neues für mich, jedoch bin ich gespannt, ob ich diverse Fragen beantwortet bekomme oder ob sie auf uns bekannte Probleme bezug nehmen. Nun werden die einzelnen Activitys, welche während dem ganzen Tag entstanden sind, kombiniert. D.h, unsere State Machine ist nun voll mit Sequentiellen WF's , resp. Activitys. (z.B. callExternalMethodActivity) Nun zeigt er, wie man von aussen den WF jederzeit fragen kann, in welchem State er ist. Ausserdem zeigt er, dass man den WF fragen kann, auf welche Events er wartet und dass man sie von aussen beantworten oder "feuern" kann. Somit kann ich jederzeit einen WF weitertreiben. Hier ist eine Frage: Kann ich einen WF, der Completed ist, wieder reaktivieren. Die Antwort von Ingo ist, Nein. Es mache keinen Sinn… Zudem werde im Persistance Layer jeder WF "normalerweise" beim completen gelöscht.
Nun werden die FaultHandlersActivitys gezeigt. (Dies sind eigentlich Try Catch Blocks). Global Event Handler.
Nun zeigt er die Cancellation View. Darin kann man Cancellation Activity definieren. Es kann ja durchaus sein, dass ich in jedem Step den Workflow Canceln kann. Damit kann ich dann die Activitys verwenden, um zu Entscheiden, was nun geschehen soll. Dies sind wiederum nur Try Catch Blöcke.
Nun zeigen sie ein Beispiel mit dem FilePersistence Service. Damit kann ich WF's in Files speichern und wieder laden. Im Beispiel zeigen sie, wie der Worflow wenn er Idle ist, einem WebService übergeben wird und auf einem Server gespeichert wird. Was hier nicht funkioniert ist dies: Wenn der WF gespeichert wird, so wird er ja aus dem Memory gelöscht. Nun wird geschaut, ob es noch irgendwelche Timers gibt auf dem WF.Wenn ja, dann werden System.Threading.Timers erzeugt. Dies funktioniert dann auch, ausser man bootet das System. Nach dem Booten kann ich jederzeit meinen WF wieder zum Leben erwecken, aber meine Timers sind weg.
Nun kommt er zum Thema des Designer hosting. Den Designer selber zu hosten ist dafür gedacht, wenn ich in meiner Applikation den Designer verwenden will oder durch eine eigene Applikation meine WF's umkonfigurieren will. Natürlich kann ich dies alles im Visual Studio, aber ich möchte ja ev. dass jemand aus meiner Applikation, welche selber WF's benötigt, der Benutzer den WF auch ändern kann (Grafisch, resp. wir sprechen nur vom Designer) .

Die Pre-Conference ist nun beendet. Ich habe mich nach der ersten Session dazu entschieden, weder den Architekten Track noch den SharePoint Track zu besuchen. Der SharePoint Track war "aufgwärmtes" (ok, der WF auch, aber wesentlich interessanter präsentiert und mit viel mehr Tipps und Tricks gespickt. Deshalb blieb ich auf diesem Track...

PRE008-3 Session 3: State Machine Workflows and Custom Activities


Christian Weyer , Ingo Rammer
Abstract: Das selbe wie in der vorhergegangenen Session !

Diese Session baut auf der letzten auf. Nun geht es um State Machines, welches für uns natürlich noch interessanter ist.
Ingo hat gerade erwähnt, dass dies ein Sample sein wird, welches download -bar sein wird… klau schau wem ;-)) http://www.thinktecture.com
Ingo will nun erklären, wie man ein custom Activity macht. Natürlich ist alles für uns auch nicht neu, aber es gibt auch hier immer wieder interessante Bemerkungen oder Hinweise ;-) .
Er bringt ein Beispiel, wie man einen Eskalations Support in seinen Workflow bringt. Er macht in seinem Workflow ein parallelActivity. Auf der einen Seite ruft er das callExternelMethodActivity auf, auf der anderen Seite nimmt er das . Nachdem er die OOB Activity vorgestellt hat, erklärt er noch kurz, dass dies wirklich nur "baseline" sind.
Nun folgt ein Step by Step, wie man ein Custom Activity macht. Glaube nicht, dass ich dies hier aufschreiben muss, da es vermutlich nicht alle interessiert, zum anderen diejenigen, welche wissen müssen wie dies geht, es bereits wissen ;-) Interessant ist aber sein Activity trotzdem… Er macht ein eigenes Send E-Mail Activity.
Nun erfolgt eine ausführliche Erklärung über dependencies properties. D.h. properties abhängig machen von properties aus andern Workflows oder Activities.
Nun haben wir ein eigenes Activity. Was etwas verwirrend ist, dass alle Activitys gleich aussehen. Nun wird dem Activity noch ein eigener Designer hinzugefügt, so dass ich meine Activitys auch gleich im Designer ersehen kann. Diese Möglichkeit lässt sich natürlich bis zum Exzess treiben… und macht durchaus Sinn, wenn jemand von Euch sich daran machen will, eigene Activitys zu builden und diese kommerziell zu vermarkten.
Die nächste Demo geht darum, dass natürlich auch in Activitys die regular Expressions nutzen lassen. Diese werden nun geprüft, ob es sich tatsächlich um eine e-Mail Adresse handelt. Die RegEx lassen sich verwenden wie überall in .net.

PRE008-2 Session 2: Communication Inside and Outside of Workflows, Dynamic Workflow Changes




Christian Weyer , Ingo Rammer
Abstract:
The Microsoft Windows Workflow Foundation (WF) is an extensible framework for developing workflow solutions on the Windows platform. WF will be available as a free part of .NET Framework 3.0 which will run on Windows Server 2003, Windows XP SP2 and Windows Vista. It allows you to embed crucial workflow capabilities directly into your applications (and, yes, this includes graphical workflow designers for end-users).

This set of runtime, APIs and tools allows you (and your users and system administrators) to properly map and implement business-related workflows and its bits and bytes. Developing this kind of applications will really be easier!


In this full-day tutorial, Ingo and Christian show you how to use the workflow foundation's single, unified model to create end-to-end solutions that span different categories of applications, including human workflow and application-based workflow. After this day, you will know how you can leverage Windows Workflow Foundation in your own applications. See and experience the different facets of workflows as well as how to extend and augment the features and tools that are already there.


Christian beginnt damit, dass er erklärt, dass noch nicht wirklich alles ausgeschöpft ist, was die externe Kommunikation von WF's betrifft. So ist z.B die Kommunikation mit WCF noch nicht vollständig implementiert. Es zeigt das Activity handleExternalEvent ( Sven ?) (nach dem CallexternalMethodActivity) und zeigt auf einer Grafik, wie dies "shematisch" abläuft. Nun wird das Activity mit Code befüllt. Das Beispiel der externen Kommunikation wird mit einer DLL gemacht, welche er auch gleich buildet. Zuerst muss in der DLL ein Communication Contract gemacht werden. ( marked as [ExternalDataExchange] ). Es muss ein public interface sein und es muss ein event deklariert werden. Er macht 2 events, eine approved und ein rejected. Beim CallExternalMethod Activity gibt er nun den Interface Type an (in den Propertys) , also unser zufor erstelltes interface. (Er macht nun eine kleine Exkursion in die WinWF "Logik". Ein WF ist ein Activity, ein WF ist die Menge von Activitys und kann beliebig verschachtelt werden. In der kleinen WF Exkursion kommt auch gleich wieder einmal die Bestätigung, dass Sequentiell WF's nicht geeignet sind, um in einen vorherigen Zustand zu gelangen. Also so wie wir im Incident Mngt. = State Machine ).
Was jetzt noch fehlt, ist die Definition eines ExternalDataExchangeService. Dies kann aber auch via config File geschehen. Nun wird im Worklfow (natürlich nur in einem Bestimmten Zustand) eine DLL aufgerufen, welche wiederum eine MSGBOX aufruft und den Benutzer rückfragt. Die Antwort (simple YESNO MsgBox) wird via Events dem WF mitgeteilt.
Nun wird dem ganzen der Persistence Layer "zugeschaltet". Er zeigt, dass wenn Workflows ja die meiste Zeit idle sind (also warten, eben z.B auf externe Events) Er fügt ein paar Events hinzu, um zu zeigen, dass der WF dehydriert wird etc. Er zeigt auch, wo und was nun im SQL Server in der Persistance DB steht.
Nun folgt noch , dass er den Tracking Service zu unserem WF hinzufügt. Nun startet er den WF Monitor, (Sample vom SDK um einen Monitoring Application zu bauen. ) Der WF Monitor kann sehr interressant sein ! Ich werde mich da wohl noch etwas genauer einlesen (kenne ihn ja schon lange, habe ihn aber noch nie so "mächtig" gesehen . )
Die ganze Präsentation ist ohne Slides, alles auf Demo Basis. Ansonsten würde sich diese Session sehr gut für uns eignen ! Da beide kein MS Speaker sind, nehme ich nicht an, dass es dies irgendwie als Hands-On Lab oder so was geben wird…. Leider. Ich werde aber schauen, dass ich an mehr infos komme, weil viele Sachen gezeigt wurden, mit dem bei uns schon gekämpft wurde.

PRE003-1 Session 1: WSS 3.0 Architecture

Ted Pattison , Patrick Tisseghem

Abstract:
The first session explores how WSS 3.0 integrates with IIS and ASP.NET 2.0 significantly improving the routing architecture from the previous version of SharePoint Products and Technologies. You will see how WSS interacts with SQL Server to process page requests and to allow for page and list customization.


Also ehrlich gesagt, wusste ich nicht, welche Session ich zuerst besuchen soll. Es sind alles einzelne Tracks für die Pre-Converence. Alle Tracks haben 4 Session, und natürlich beginnen alle von "vorne". Das schöne zuerst: Die Pre-Converence ist noch sehr beschaulich und die Sessions sind im "kleinen" Rahen. Mehr als 30 Geeks hats hier nicht an einer Session.
Leider ist oder sind dies wirklich die Einstiegs Session… also nichts neues, eher schon SharePoint V3 Marketing. Sehr viele Demos, was gut ist. Jedoch hoffe ich schwer, dass das Level noch steigt. Heisst doch der Slogan in diesem Jahr: "GET AHEAD OF THE GAME". Also in dieser Session ist das "Game" hinter uns….
Dies meine ich nicht einmal Qualitativ… aber wir sind wirklich schon sehr weit… Tedd Pattison erklärt aber sehr ausführlich, witzig und sehr verständlich. Er geht auf die Veränderungen ein, welche seit V2 geschehen sind. Er erklärt die Begriffe der Application Sides, Content Databases, Site Collections and Sites, The SPVirtualPathProvider, die System Application Pages und die Site Definitions.
Es gäbe da noch einen Track, der sich nur um "Architekten krims krams" kümmert. Ich habe mir die Letzte Session für heute mal vorgemerkt… Und mich am Ende entschieden, heute den Track WinWF zu machen.

Montag, November 06, 2006

Anreise und erste Eindrücke

Da ich ja bereits Montags an der Pre-Conference teilnehme, bin ich bereits Sonntags angereist. Die Reise ging gut, dieses mal gab es keine Probleme -- ;-) Der Nachteil war, dass ich Sonntags Abend zwar noch Leute von der Tech Ed Organisation gefunden habe am Flughafen, jeoch keine Shuttle Buse mehr gefahren sind. Diese sind erst Montag Morgen früh organisiert. Also habe ich ein Taxi genommen.
Meine Taxi - Chauffeuse war ziemlich funny. Sie hat zwar relativ schnell gemerkt, dass ich kein Spanisch kann.. .Aber während der ganzen Fahrt hat sie trotzdem gequasselt und gequasselt…. Hab nur immer Bahnhof verstanden … und sie fand das irgendwie lustig ;-)
Leider habe ich in der ersten Nacht nicht wirklich gut geschlafen… zuerst einmal hörte ich jede Metro die vorbei fuhr, zum anderen habe ich die ganze Nacht geschlottert. Irgendwo muss ich mich ziemlich erkältet haben… zumindest bin ich am Morgen mit laufender Nase und leichtem Fieber an die TechEd.
Das ganze ist wie immer gut organisiert, da gibt es nichts zu meckern. Im Gegensatz zu anderen Veranstaltungen wird nun aber am Transport gespart. Anders als an anderen Orten oder Jahren, gibt es diesesmal einfach ein Mehrfahrtenkarte, die für 10 Mal Metro reicht. Früher war es ein Wochenticket oder es standen Gratis - Busse bereit. So , nun aber geht’s los ...

Montag, Oktober 30, 2006

Die nächste Tech-Ed Developers rückt näher !!




Ja, mich gibt es noch...
Ich weiss, auf keinem meiner blogs war während den letzten 11 Monate irgendwas los..eventuell gibt es ja noch menschen, welche eine RSS feed auf irgend ein blog von mir haben ;-) Nö,da glaub ich nicht dran ...
Aber, jetzt gehts wirklich wieder los. Ich werde vom 5.11 - 10.11 in Barcelona weilen, und euch natürlich herzlich gerne von der Tech Ed Developers (Ja so heisst das Teil neu) berichten.
Dieses Jahr, wen wunderts wer mich kennt, werde ich den Schwerpunkt auf Office Systems 2007(including Search) und Vista legen. (Ich werde die Pre-Confernece zum Thema Moss2007 besuchen).
Falls ihr Fragen oder spezielle Anregungen habt, Dinge die ich eine Product Manager oder sonst jemand fragen soll, dann postet oder mailt mir dies !


Freitag, Juli 08, 2005

Generelles Fazit





Ich möchte Euch natürlich meine pers.Eindrücke von der TechEd schildern. Die Sessions habe ich ja bereits die meisten kommentiert.
Leider war der Anflug nicht so angenehm. Wir hatten fast 2 Stunden Verspätung und jede menge Turbulenzen. Aber ich habs ja dann geschafft. Das Wetter war,bis auf Donnerstag, ziemlich kalt und nass. Aber ich war ja nicht da, um Ferien zu machen.
Die Leute scheinen so ziemlich die selben zu sein, wie vor 2 Jahren in Barcelona. Soger der Guy mit dem Irokesen Schnitt und dem Windows Tatoo lief wieder herum ;-)
Ich muss Euch leider enttäuschen, ich werde Euch keine Gadgets heimbringen können. Ich war zwar 2 mal kurz in der Austellerhalle, aber es hatte sooo viele Leute und es war so ein riesen Gedränge, das ich keine Lust hatte, für ein T-Shirt oder sonst was, mir die Rippen mit den Elbogen von wildfremden Leuten massieren zu lassen. Es war grundsätzlich schwieriger als vor 2 Jahren, ich hatte auch den Eindruck, das sparsamer mit den Giveaways umgegangen wurde. Zudem musste man überall irgendein Spiel machen oder zuerst ne Show anschauen etc. was sehr Zeitintensiv ist. Da ich alleine da war, habe ich eher geschaut, alles Sessions, die mich interressieren, zu sehen. Und das war nicht einfach, da es doch mehrer Tracks gab, die mich wirklich interressiert hätten. Ich habe meinen Fokus auf das VSTS gelegt, denke auch, das dies noch am ehsten etwas ist, was wir in der RTC einsetzen bzw. als nächstes sehen werden.(Ok, SMS sind wir noch lange nicht soweit und WSUS steht eh vor der Tür. Zudem waren die Sessions über SharePoint und InfoPath IHMO auf einem Level, den wir bereits heute erreicht haben)


Die Organisation des Events war wiederum nahzu perfekt. Einziger Nachteil gegenüber Barcelona war, das man am morgen mit dem ÖV aufs Gelände musste. Dies aber nur deshalb, weil die Trams immer so überfüllt waren, dass es beinahe unmöglich war, Platzt zu finden. In Barcelona war ja noch ein Shuttle Dienst organisiert worden. Dies war aber wohl eher aus dem Grund, weil in Barca der Öv nicht so zentral vor das Ausstellungszentrum fuhr, wie hier.
Wireless Access war zwar überall möglich, aber funktionieren tat es eigentlich nur am frühen Morgen oder späteren Abend. Denke, dass das Netz einfach über belastet war. Das ständige Connection verlieren und wieder Netzt suchen ...verbinden etc. war sehr mühsam, und ich hatte so sogar einige Datenverluste. (Wenn du am bloggen bist, und beim publishen eines Eintrages die Connection weg geht, kann dies vorkommen) .
Microsoft legte an dieser TechEd den Fokus ganz klar auf:

SystemCenter 2005 (War überall präsent, nur nicht so in den Sessions)
SQL2005
Visual Studio Team System and Foundation Server
Indigo

Des weiteren wurden gewisse Begriffe gepusht. So war das SDM (System Definition Model) und DSI (Dynamic System Iniative) immer und immer Thema oder wurde angesprochen.

Tech Ed Party (Studio7)




Die Party war, wie nicht anders zu erwarten, DER HAMMER. Es war aber auch wieder einfach gut gemachte Werbung, und das können Sie definitiv. Wer schon mal an einer TechEd Party war, weiss was ich meine. Diesemal fand ich die Party allerdings nicht so gut wie in Barcelona, vermutlich war es aber darauf zurückzuführen, das ich 1. Alleine war und 2. wusste was mich erwartet. Gegessen wird sicherlich jeder Besucher genügend, gab es doch auch wieder reichlich Auswahl und Mengen, die sicherlich nicht gesund sind ;-)

Dieses Mal waren 2 Live Bands auf der Bühne. Die ScizzlerSisters und die Band NU2. Die Sister waren gut, brachten shon ziemlich Stimmung in die Halle. Bei der 2.Band handelt es sich um eine U2 Coverband. (holändisch N = sprich neuw) . Diese spielte sehr gut, sogar der Sänger sah beinhahe wie Bono aus.






Es gab noch 2 Lounges, die Scizzlers Lounge und die Vertigo Lounge. (Für jede Band eine).In der Scizzlers gab es verschiedene Shots aus dem Reagenzglas, in der Vertigo gab es Wodka und sonstig hartes Zeug in Eis Form. War sehr süss und lecker. Stellt euch eine Glaceverpackung vor, die man oben aufreissen kann. Es befindet sich kein Stil in der Verpackung sondern einfach Eis, das man dann durch die Öffnung in den Mund drückt. Den Alkohol merkte man aber überhaupt nicht, sondern es war einfach sehr süss.

Lustig war auch die Karaoke Ecke und sehr lustig, wie sich mancher im Singen versuchte. Interressant, zu was sich so seriöse IT Hoschis hinreissen lassen, wenn man ihnen 2 , 3 Heinekens gibt. Dann gab es noch einen "Echten" Töggelikasten. In diesem Standen anstelle der "Töggel" dann einfach echte Jungs. War lustig zum zuschauen.



Ach ja, ein Kino hatte es auch noch, aber Sie zeigten leider Movies die ich schon gesehen habe. Ich ging dann relativ bald ins Hotel zurück, hatte ja noch was zum schreibe. (unter Anderem dieser Bericht).
Am Freitag morgen waren dann wieder aufällig wenig Leute an den Sessions.....

Hands-On VSTS

Am Freitag wollte ich noch ein sog.Hands-On Lab machen. Ehrlich gesagt habe ich eine Stunde rumgeklickt,hab ganz tolle Sachen gemacht mit dem neuen Studio....
Ich kann und will hier eigentlich nicht mehr schreiben... Ich bin kein wirklicher Freund dieser Labs, weil man einfach nach Anleitung arbeitet, und eigentlich nie weiss, weshalb man was macht. Jetzt klicke hier und mache dies, dann tu dies etc. Weshalb das man dies tut, ist schwierig zu ergründen. Somit hält sich dann auch der Lernprozess in Grenzen, zum. bei mir.

DEV466 Microsoft Visual Studio 2005 Team System: Enterprise-Class Source Control

Brian A. Randell, Ashwin Karuhatty

So, und nun die letzte Session... wieder über das neue Studio, jetzt geht es aber nur um Source Control. Dies ist ein Thema, das mich brennend interressiert, hatten wir in der Vergangenheit mit dem Vorgänger Source Safe schon unsere einschlägigem Erfahrungen gemacht.
Der Zufall wollte es, das sich neben mich Eric Lee setzte... cool guy !
Mit Source Control seien der Check-in über das internet mögliche, und es werde nie korrupte Files geben.
Natürlich kommt jetzt der geschichtliche Abriss ,und der Hinweis, das Source Safe nicht sehr gut war. (Wem sagen sie das...) Dies war auch Grund, nun was "richtiges" zu machen. Es braucht nicht das Studio um Files einzchecken zu können, es gibt ein seperates Program. Nun erklären sie, was sie unter Team Foundation verstehen.

Es geht im Workflow und die Prozesse, welche in einem Software Lifecycle vorhanden sind. Die Build Automation war das Hauptaugenmerk bei der Entwicklung.Jedes Projekt hat eine SharePoint Portal Seite und die Zugriffe können sehr granular gestaltet werden. Jetzt kommt die Aussage: SOURCE SAFE IS DEAD !! und dafür erhalten sie tosenden Applaus.
Das neue Source Control ist von Grundauf neu entwickelt worden. Es können auch WorkItems , Tasks etc. mit eingecheckt werden. Das Source Control ist eine 3-tier Applikation, basierend auf SQL2005, und einem ASP - Web Service. Visual Studio 2005 enthält alle Tools, so auch den Source Control Explorer. Wer Studio hat, braucht keine zus.Tools. Ziel war es auch, das Team Orientiert gearbeitet werden kann. Das Visual Studio Team Foundation Team braucht intern seit Januar das Source Control, das seien 700 Programmierer...und nicht selbstverständlich, das M$ ihre Tools brauche. Bis Ende Jahr werden bei M$ alle Produkte Teams mit dem Foundation Server und Source COntrol arbeiten (+20'000 People (!)) . Der Key - Feature Support sei: Atomic Check-In, Work Item Integration, Checkin Policies (also Enterprise Policies), Shelving, Delta File Storage, Delta Binary File Storagem, Large File Support (>4GB), Distributed Team Support, E-Mail Checkin Notification, Non-Windows Support, Shared Checkout, VS2003 Integration (!). Pinning is not Supported.
Pinning is eval ... und werde nicht benötigt, so wie Sie es danach in der Demo beweisen werde. Foundation Server habe besser Lösungen zu bieten.Nun erklären Sie, wie die Check-in Policies funktionieren. Der Policies check geschieht auf dem Client und dem Server, und man kann konfigurieren, was wo gecheckt wird. Die Policies lassen sich via policy plug-ins erweitern. Der Compiler macht eigentlich schon den check, ob sich was kompilieren lässt. Aber es gibt eine Menge andere Sachen, die via Policies gesteuert werden müssen bzw. können. (Formatierung, Casing,Naming etc.)
Nun folgt eine Demo des Check-In Prozesses. Beim Checkin wird der gesamte Code, Zeile für Zeile gescannt.Sie zeigen, wo und wie man die Policies aktivieren kann. (Auch für den Project Manager, der diese natürlich global setzten kann.) Sie zeigen die Dialoge, welche erscheinen, wenn man den checkin machen will. Es erscheinen Fehler etc, wenn zb. die Policy nicht "trifft".

Sahred checkout... derjenige der auscheckt, kann entscheiden, ob es sich um ein Shared Checkout oder Exclusive Checkout handelt. Default ist Shared Checkout. Natürlich lässt sich dies auch wieder enterprise-wide Regeln. Sie zeigen wie man definiert, das .jpg und bmp files nur exclusiv ausgecheckt werden dürfen. Wie ein File ausgecheckt wurde, ist im Source Explorer jederzeit anhand verschiedener Icons ersichtlich. Es sind für jedes File beliebig viele Workspaces(!) definierbar. Nun ändert er ein File, und die Änderung ist nur in diesem File für diesen Workspace erfolgt. Ich kann ein File nur für diesen Workspace einchecken. Wenn das File im Studio offen ist, kann oben jederzeit der Workspace geändert werden, und ich habe das selbe File im Projekt in versschieden Versionen. Wenn ich jetzt das File bzw. die Version einchecken will, welche nicht gändert wurde, kommt eine Warnung. Ich kann nun Resolve Conflicts klicken, und ein neuer Dialog erscheint, wo ich die Files sehe und was geändert hat wo und wann, von wem etc...
Branches...pooh, ziemlich komplexe Geschichte.Das Promotion Modell erlaubt, nur spezielle Änderungen un den Build einfliessen zu lassen. Ich kann nun Weiterentwickeln. Bei einem Patch kann nun gesagt werden, das in diesem File nur die Änderung xxx in die Build Version einfliesst. Bsp: Wir entwickeln weiter am Release 5.08. Im August müssen wir einen Patch liefern. Die Änderung wird getätigt, der Build basiert jetzt aber auf 5.07 mit der Patch Änderung. Dies obwohl das gesamte File Weiterentickelt wurde.M$ nennt die Branches, Producion, Test , Developer Branch etc. Ich kann jederzeit schauen, was wie wo anders ist in den verschiedenen Branches.
File Storage. Die Original Files und das letzte eingecheckte File werden komplett gespeichert. Die Files werden beim einchecken komprimiert. Jede Nacht läuft ein "Deltafier", der nach den Deltas sucht ... . Aussage: Diese Art des Speicherns spart ca 70% File Space gegenüber den "herkömmlichen" Speicherarten von Source Controls. Beim Auschecken wird zuerst geschaut welche Version des Files bereits lokal liegt, und nur das Delta kommt auf den Client. So seien auch grosse Files via Internet ein und auszuchecken ohne Probleme und riesen Bandbreite.Dazu kann ein Source Control Proxy eingesetzt werden. Nun zeigen Sie, wie der Proxy funktioniert und was dieser für ein "Performance boost" bringe.

Es gibt wieder ein Command Line Tool. Der Automated Build lässt sich aber nun auch via Gui steuern. Es wird Unix,Linux und Mac OS Supported. Nun zeigen sie eine Demo auf einem Linux Client. Dies natürlich nicht ohne markante Sprüche zu machen... Lustig, wie sie mühe haben, das File auf der Platte zu finden. So oft arbeiten sie bestimmt nicht mit Linux.Sie ändern das File, checken es wieder ein und zeigen dan auf dem XP Client, das die Änderung selbstverständlich nachvollzogen wird. Ziel sei es, das an einem Projekt mehre Leute mit verschieden OS arbeiten. Es soll so möglich sein, auch gleich Cross-Platform Entwicklungen und Tests mit Source COntrol zu machen.
Nun folgt die Übersicht, wie momentan das Foundation Team arbeitet bzw. die aktuellen Zahlen über die Benutzter von Source Control.

Sehr interressante Session, ich freue mich jetzt schon darauf, wenn wir bei uns Source Control einstzen werden... und hier noch das blog, werde ich selbst sicherlich nachlesen.. http://www.mcwtech.com/cs/blogs/brianr/

Donnerstag, Juli 07, 2005

DEV341 What's New in the Visual C# 2005 IDE


Juval Lowy

Neun sind die Property "Tab" viewed. Die neue IDE buildet immer Code für das 2.0 Framweork.Das Formatieren des Codes kann automatisiert werden und wird einmal pro sprache definiert. Nicht jedesmal einrücken und umformatieren, einmal einstellen sollte genügen. Auch die Naming Conventions und so weiter können global definiert werden. Es kann ein checker laufen gelassen werden, der dann anhand einer Art Tasklist die Fehlerhaften Namings etc. zeigt. Es gibt einen Settings Editor, welcher die Einstellungen um App.Config speichert. Die Einstellungen könnn Importier und exportiert werden. So kann für die ganze Firma einmal definiert werden, wie die Einstellungen sind, das Naming, wie editiert wird...etc, Natürlich lassen sich diese Einstellungen auch auf dem Foundation Server legen. Im Studio kam früher im die "Start" HTML Page. Neu kann pro project eine Start Seite definiert werden. (Zum Beispiel das Projekt Portal, Google oder was immer) .
Er zeigt, das die Bedienung verbesset wurde. Wenn ich zum Beispiel 1000 tabs offen habe, und nur noch eines möchte, musste ich mühsam alle anderen schliessen. Neu klickt man auf das Tab was man noch will und klickt, close all but this. Oder ich kann auf das Tab klicken und sagen "open the location folder". So ist gleich der explorer offen mit den Files. Wenn ich früher was finden wollte, machti ich "Find in Files". Neu kann ich auf ein Object klicke, kann ich rechte Maustaste macheun und sagen, Show all References.

Cool, es kommen wirklich nur die Referenzierten, nicht auch noch jene die gleich heissen etc. Ich muss auch nicht mehr sagen, go to reference, go to reference go to reference. Ich kann einach alles auf einmal anzeigen. Scheint wirklich nützlich zu sein.
Wie schaue ich heute ein Array an ? Meistens doch wie "Add watch" or "Quick Watch". Neu einfach das Array markiern und IntelliSense zeigt mir die Werte gleich für alle Werte. Dies funktioniere wirklich mit allem.Genau so geht es auch mit einem DataSet. Intellisense, ich kann mich durchklicken, bis ich beim Attribute oder der Variable bin, dess Wert ich wissem will. Wenn ich über dem DataSet bin mit der Maus, kommt eine kleine Lupe, die ich anklicken kann . Klicke ich auf diese, geht ein Fenster auf wo ich das gesamte DataSet sehe mit allen Rows und Tables.Natülich mit den aktuellen Werten. Ich kann dieses Fenster offen lassen während die Applikation weiterläuft.Die Wertr ind der DataSet ansicht ändern dann auch bzw. sind dynamisch. Sehr cool zum Debuggen. Sieht sehr intuitiv aus !
Eigene Visualizer sollen sehr schnell und einfach zu erstellen sein. "Peace of cake" .... Als demo zeigt er einen Image Visualizer...er klickt auf das Bitmap Object und die Lupe und schon wird beim Debuggen das wirkliche JPG oder BMP oder was auch immer zeigen. Als nächstes zeigt man einen Visualizer für Audio Datein und Video Dateien. WOW !

Neu ist auch das Change Tracking. Wenn ich wärend dem Debuggen Code änder oder hinzufüge, ist dieser Gelb. Will heissen, Never compiled @ this moment. Es gibt auch Rot und Blau und Grün ... aber ich mag nicht alle Bedeutungen aufschreiben.
Beim Debuggen kommt z.b die Form viel schneller hoch als früher. Es muss nicht mer die CLR gestartet werden, code compiliert werden etc. Neu läuft der VS Host. Dieser Host kann man als Assemblie auch sonst Benutzen.

Nun geht es um Code Refactoring. Was ist Refactoring ? Refactoring means, das mann die Code-Struktur ändert ohne zu ändern, was der Code tut. Neu kann ich zum Beispiel auf Form1 klickn, wähle Refactoring, Rename und gib der Form einen neuen Namen. Überall wo die Form1 benötigt wurde, wird dies automatisch angepasst. Dies für ALLE Projekte innerhalb der geöffneten Solution .
Nun geht es um das Remaining. Ich mache es mir einfacher und kopiere die Argumente von der TechEd Website:

Intelligent renaming
Unlike search-and-replace
Namespaces, types, variables, methods, properties, parameters
Including overloaded methods
Available from the menu and the context menu
Can select occurrences to exclude




Very smart finde ich die Method Extraction. Ich kann code markieren und sagen, extract Method. Die Methoden, die sich dahinter befinde, werden extrahiert und können so "umgebaut" werden. Dies geht natürlich auch mit Methods, die "ausserhalb" liegen. Dies Funktioniert auch mit Interface. -> Kein Markieren, kopieren, einfügen mehr. Einfach extract.

Am Schluss kommt Juwal wieder einmal auf die Code Snippets zu sprechen. Ich sage wiedermal, weil ich dies schon in Barcelona öfters gehört habe. Die Funktion bzw. die Verwendung hat sich nicht verändert, ist jedoch intuitiver geworden. Ich kann das schlecht nachvollziehen, weil ich nie mit den Code Snippets gearbeitet habe...


So, das wars vom Donnerstag, jetzt gehts zum Club 7 (7.7). Die diesjährige TechEd Party steht unter dem Motto der 70's ... Ich werde sicherlich auch davon noch berichten.

Key Note 002 Future of Software



David Vaskevitch, Microsoft CTO (Chief Technical Officer) (and Senior Vice President)
... will share his ideas on how computing and software will evolve over the next decade impacting the way business is done and bringing computing to the very center of our


Er erzählte den geschichtlichen Ablauf..und wie sehr sich die IT in den Letzten Jahren gewandelt hat...Zuerst erzählt er von sich und das er 1966 das erste Programm geschrieben hätte.

Danach kommt die Überleitung mit der geschichte von M$. 1975 hatte M$ die Vision:

"A Computer for every home and desk"

(1974 hatten unter 30% der Büros einen Computer. ) Heute haben in den USA60 % einen Computer zuhause, in Europa 30%. (Indien ist unter 2%;Russland unter 5%)
Er erklärt, das dies noch extrem zulegen kann, so wie der mobile (handy) Markt in den letzten Jahren. Er erklärt, das die Bedürnisse des Menschen sich nicht ändern, sondern die Mittel mit denen er sie "befriedigt".
Computer haben einen riesen Wandel durchgemacht, heute in 2005 ist alles ein Computer, Handy, Tv, etc. Wenn man die Autoindustrie anschaue, dann sei die Computerindustrie heute da, wo die Autoindustrie in den frühen 30 Jahren war. Heute baue man Autos, bei denen ein Service Intervall von 80'000 km normal sei.
Danach die Vision 2005 von M$:

"Bringing Computers and People together" .

Danach erzählte er von seinen Dreams:
Redefining Personal Entertainment. ( Es braucht selbstinstallierende PC, Booten ohne Zeit, "unwiderstehliche Geräte" (wie ipod oder some phones)
Your Life:Beiing in control ( Wer alles braucht heute noch an einer Sitzung einen block... wer glaubt das ein tablet alles tun kann was ein block kann... )
Achievieng The Digital nervous System.
The new world of work:

Unified communication
Optimizing supply chains
Team collaboration
Finding the right information
Spotting trends and getting insight
Engaging in business process
Improving Customer interaction
Personal productivity


Das ganze nennt er dann Rewired Economy

The Rewired Economy
Will create more winners and losers than ever
Permanently change the expectations of consumers (self service)
Permanently change the economics of most businesses (integrated partners)
Truly move computers closer to the center of our lives – at home and at work


Rewiring The Implications
Nobody is there today
Everybody will (have to) get there
Requirement: deeper and broader process automation and integration
First time: integrated automation has major bottom line benefits



Grundsätzlich ginge es darum, das niemand genau sagen kann, wie die IT in den nächsten 30 Jahren aussehen wird. Er zeigte eine Slide aus dem Jahre 1998, die er damals an einer PDC zeigte. Diese Art Roadmap der Software sei auch heute noch gültig und Microsoft is "on the way" Das meiste sei schon mit dem .net Framework abgedeckt worden, zusätzliches komme jetzt mit der Version 2.0 und dann mit Indigo sei dies dann vollständig. Eins war klar, Microsoft hat noch Visionen und Ziele...
Er ging noch kurz auf WinFS ein, sagte das es nun wirklich nicht in Longhorn sein werde, aber irgendwann werde es nachgereicht. WinFS sei auf dem Weg und werde ganz sicher kommen, gute Dinge bräuchten eben ihre Zeit...
Grundaussage, was ein Pc können muss in Zukunft und so auch deren Software.

Self installing
Self healing
Keine Bootzeiten
...und die Geräte müssen den "must have" Faktor bekommen.
Eine Interressante KeyNote , sehr visionär und manchmal (für mich) nicht ganz so nachvollziebar...Aber er sprach ja auch von den nächsten 30 Jahren.

DEV461 Microsoft Visual Studio 2005 Team System: Advanced Project Management and Reporting


Eric Lee

...und noch eine Session mit Eric über Team System. Diesemal über das Project Management and Reporting, wie der Titel bereits sagt... ich hatte wirklich die qual der wahl, weil jetzt im Moment laufen diese Sessions:

CTS448 Optimizing Scalability, Performance and Availability with Systems Built on the .NET Framework
DEV340 Microsoft Visual C#: Introducing C# 2.0
SEC390 Best Practices for a Secure PKI Deployment
WCD323 Windows Forms: How to build Windows Forms Applications Today That Will Interoperate Well with "Avalon"
WEB350 Hacked! How Evildoers Attack ASP.NET Web Sites (and What You Can Do About It)


hmm, und da ich Erics Session zuvor sehr gut fand, und ich der Meinung bin, das wir um das TeamSystem bei uns nicht herumkommen werden... habe ich mich für diese Session entschieden.Eric erzählt wie immer sehr detailiert aus seinem Alltag, und was das die Bewegründe für gewisse Features waren. Er führt auf, das heute immernoch nur 30 % aller Software Projekte "succesfull" sind. Alle anderen scheitern oder sind nicht zufriedenstellend. Die Frage stellte sich M$ nun, wie kann man mit einem Tool diesen Prozentsatz erhöhen. Interressant fand ich die Vorstellung der Faktoren, welche ein Projekt erfolgreich machen:

Danach holt er ein wenig aus und erzählt, wer alles in ein Software Projekt Team gehört und weshalb. Ich bin ja parallel mich am vorbereiten auf die Prüfung "Analyzing Requierments for .net Enterprise Application", was nichts anderes ist, als das MSF etwas erweitert. Deshalb kommen mir die Folien und Argumente vermutlich sehr bekannt vor. Ist doch Team System auf die Umetzung der Prozesse aus dem MSF 4.0 ausgelegt....
Nun folgt eine Demo, wo man den PRogress des Projektes sehen kann....es handelt sich um Reports, Reports, Reports. Einen Menge von Reports werde im Final mit ausglefiert. Es lassen sich aber mit einer Query-Script Language "easy" eigene Reports erstellen. Leider habe ich den Namen der Script Sprache nicht verstanden...
Danach Öffnet er als Projektleiter MS Project und sagt im Add-In Team System das er das Software Project xxx sehen will...Wir haben nun einen "normalen" Projektplan in Project mit den Bugs welche gefunden wurden und bis wann sie behoben sein sollten etc. Der Projektleiter erfasst nun im Project einen neuen Milestone, gibt an wer diesen zu erledigen hat... Im VSTS hat der Developer nun diese Task erhalten. Er gibt in den Properties nun an, das er mehr als die 200 Stunden benötige (Hatte der Projektleiter angegeben im Project) gibt an 400 Stunden und das er bereits 90 verbraucht habe. Wenn der ProjektLeiter nun im Project "Refresh" macht, ist die PRojekt Überischt bereits angepasst. Ob es sich um eine Task handelt oder sonst was, spielt keine Rolle. M$ spricht immer von Work Items. Der Fluss, also der Workflow, lässt sich via XML File steuern....

Er spielte dann noch ziemlich lange mit den Files herum, um zu zeigen, was sich da so alles verändern und erweitern lässt. Ich finde wichtig, dass man was ändern kann, was alles kann ich mir sowieso nicht merken bis ich es dann mal müsste.

CTS467 "Indigo" Under the Hood



Clemens Vasters, Steve Swartz

Under the hood, "Indigo" has two layers: a messaging framework layer and a programming model layer. The "Indigo" messaging framework layer API supports the exchange of XML messages using an extensible set of transports, encoders, and protocols. While at minimum the architecture only requires a commitment to HTTP and XML, the implementation features support for SOAP, WSDL, UDDI, and the WS-* protocols over TCP, HTTP, Windows named pipes, and MSMQ. The "Indigo" programming model layer sits on top of the messaging layer. It pulls messages out of the lower layers, pushes them through a rich extensible pipeline, and then applies them to the application code in the form of a method call. The entire "Indigo" programming model is built on top of the extensibility points in the lower layers. This session will explain the messaging framework and programming model layers in the context of a variety of extensions.

Zuerst ist der Fokus der Messaging Layer.
Clemens erklärt, das der programmatische zugriff auf indigo nur auf .net ausgelegt sein wird. Er erklärt, das ein Indigo Message eine CLR Representation eines SOAP INfoset .sei. Der Message Transport basiert auf "Channels" . Channels sind Stacks und Channels haben Factorys. Und dann gibt es die Transport Channels...TCPIP, Named Pipes ..alles was man sich wünscht. Es wird nun ausführlich erklärt, wie das Messaging funktioniert. Sehr interresant, doch würde ich gerne ab und zu sagen...ääh, halt, wieso ist das so...oder, könnten sie dies für mich versuchen, nochmals anders zu erklären...;-) Nun folgt eine Demo, wo das ganze codiert wird. Interressant, die gesamten Indigo geschichten sind Assemblies, und die Gesamten Channels etc. lassen sich via namespace einbinden.

In der Demo wird gezeigt, wie schnell und einfach sich Channels bilden lassen und zwischen 2 Progis Messages austauschen, Interressant,bis jedoch dies in die aktuelle Programmierung einfliesst, wird es sicherlich noche eine Weile dauern. (Zumindest bei uns).
Es wird nun erklärt, das die gesamte IIS 7.0(kommt mit Langnase)Kommunikation via diese Channels verläuft. Eine sehr sehr theoretische Session. Ich glaub ich hab verstanden, was sie vermitteln wollten. Weiss nur nicht genau, wie ich dies jetzt wiedergeben kann....

New Impressions






MGT-IL04 Deploying OS images with Systems Management Server (SMS) 2003

Wally Mead, Martin Dey

Nachdem ich gestern von der SMS Präsentation enttäuscht war, habe ich mir diese 1. Session heute morgen geschenkt. Ich habe mir die Slides vorher angeschaut, und ich kann dazu genau dasselbe sagen wie gestern. Nichts neues, bzw. nichts was wir nicht schon wissen oder "gesteckt" bekommen haben. Andrew Read hat uns diese Infos eigentlich alle schon gegeben.
So hatte ich jetzt zeit, das Blog einwenig auf Vordermann zu bringen.

Es ist ein bischen verhext. Die ersten Session haben mich nicht wirklich interressiert (ausser die SMS) . Nun aber (10.00) sind gleich wieder 4 Stück die ich sehen möchte...hmmm. Indigo, Windows 2003 Server R2,Avalon ... .net 2.0 ... Denke ich werde die Indigo besuchen, schon deshalb, weil ich es gestern nicht ganz verstanden hab. Ich geb mir noch ne chance... ;-)

Mittwoch, Juli 06, 2005

...SORRY...

...eigentlich habe ich noch screenshots von den einzelnen sessions...aber momentan funktioniert das bloggen von photos irgendwie nicht. Ich kämpfe auch mit dem WLAN, ständig Unterbruch, Datenverlust. Ist sehr mühsam...ich werde das "nachposten", sobald es wieder funktioniert.....


... eine nacht später gehts ja wieder...heute morgen hat es auffällig wenie geeks hier... sind wohl alle am auschlafen, gesterm waren ja die Country Partys...und heute ist die grosse TechEd Party. Ich für meinen Teil bin ins Hotel zurück nach der C++ Session. War müde, und musste ja noch ein wenig Berichte schreiben für Euch ;-) Zudem habe ich mir gestern den Fuss "verknackst", jetzt ist er einwenig geschwollen und das rumlaufen macht nicht mehr so viel spass. Also suche ich mir die Sessions, welche nahe beieinander liegen ;-)

..nochmals ein Edit am 8.7 ....

: Image-uploading was briefly down due to a bug, which has now been fixed.

erklärt nun doch alles..und ich dachte ich sei der DOEDL

DEV331 Visual C++ and .NET: Great Performance, Full Access and Easy Migration of Existing Code


Ronald Laeremans


Nun noch die Session, auf die ich heute den ganzen Tag gewartet habe,. Hoffe, das ich noch aufnahmefähig bin... die Session begann um 19.30 ...
In VS 205 C++ ist eine .net first-class language. (Juhu)
Mit dem neuen VS kommt für C++ auch eine neue Syntax, welche besser lesbar sein soll und "natürlicher" sei. Sie soll so ausgelegt sein, dass der Umstieg auf eine andere .net first class language nicht schwer sein soll. Die neue Syntax ersetzt die Managed Extensions. Es sei so nicht mehr nötig, C# oder VB.net zu lernen... Toll, das sagen Sie mir erst jetzt ;-) wenn ich das gewusst hätte....
Neu ist der volle VS Support (Designer etc.) für C++ verfügbar, genau gleich wie für die anderen Sprachen. Wichtig ist die Aussage, das der bestehende Code nicht zwingend geändert werden muss. Es ändert sich einfach nichts, will heissen, das man weiterhin mit COM etc. arbeitet. Natürlich es es dann auch nicht möglich, auf das Framwork 2.0 zuzugreifen. In C++ 2005 ist der selbe Support vorhanden wie in C#.(exakt der selbe) Auch neu ist das Verwenden der #using direktive. (und #import und #inlcude).(Analog C#)
"Managed assemblies describe themselves with metadata ,used instead of header files or type libraries"
Es gibt neue Type Categories. Dies sei zwingend gewesen für die interoperation mit den anderen Sprachen. Die Typen werden deklariert mit "spaced keywords"

class N { /*…*/ }; // native
ref class R { /*…*/ }; // CLR reference type
value class V { /*…*/ }; // CLR value type
interface class I { /*…*/ }; // CLR interface type
enum class E { /*…*/ }; // CLR enumeration type


Properties sind neu "Elegant and intuitiv"

// Visual C++ 2003

// get_Full
__property int get_Full(void)
{
return full;
}

// set_Full
__property void set_Full(int value)
{
full = value;
}



// Visual C++ 2005

property int Full
{
int get( void )
{
return full;
}
void set( int value )
{
full = value;
}
}
// Compiler generated
property int Simple;




Neu sind auch die Specifiers ..
"Can qualify override behaviour for derivation"

abstract class or function is abstract
sealed class or function cannot be a base
override function must override base version
new function is not an override of base

Neu gibt es einen Handle OPerator ^ . Dieser sei gleichzusetzten zum Pointer *.
Der C++ Destruktor "maps to the CLR Dispose". Will heissen, das man zukünftig anstelle des Destructors einfach ein xxx.Dispose() macht...

Er zeigte dann noch ein paar Code-Snippets...ehrlich gesagt wird es zukünftig relativ schwer, C# code von managed bzw. C++ 2005 Code unterscheiden kann.....