Tuesday, December 18, 2007

MVC Framework versus WCSF's MVP

Last Friday, I gave a talk on the P&P software factories at the December edition of the Software Developers Event in Ede. As can be expected from an enthusiastic audience, somebody asked me about the comparison/positioning of the Web Client Guidance Bundle's Model in relation to the new MVC Framework.

In response to that, check out the somewhat older announcement made by Glenn Block, product manager for the factory over here. For a comparison between the two patterns, check out these two excellent posts: The ASP.NET MVC framework, using the WCSF as a yardstick! and Interactive Application Architecture Patterns.

Friday, December 07, 2007

Slides from Visual Studio 2008 and Design Patterns sessions

As promised, please find the corresponding Powerpoint slides from my last two technology sessions. I still have to clean-up the sources for the design pattern examples, so that may take a while. But I'll make sure to post these as well.

Wednesday, November 21, 2007

Visual Studio 2008 and the .NET Framework 3.5 has been released

I assume all of you know by now that Microsoft has released Visual Studio 2008 and the .NET Framework 3.5 to manufactoring. If you don't, you must be living in a cave or something. Nevertheless, if you want, you can download trial versions from here. If you have an MSDN Premium subscription, then you can download the full Team Suite edition directly from MSDN Subscriptions.

Since there have been so many different posts on this on the web, I've collected some of the more interesting ones right here.

  • If you still have beta 2 or a previous build installed, check out this post. It helps you uninstall any residual leftovers.
  • Daniel Moth is well-known for providing very detailed info on what's new in Visual Studio 2008 and the .NET Framework 3.5. He has been my primary source for learning the nitty gritty.
  • Although the Team Foundation Server version you can download from MSDN is a 90-day trial, it is safe to upgrade your existing servers. Upgrading to the retail version is just a matter of entering the appropriate license key. No reinstall necessary.
  • An important license change (one which my current customer will be very happy with), is that you don't need a Client Access Licence (CAL) if you only use TFS for tracking defects.
  • Brian Harry has blogged about planned upgrades for the TFS Power Tools and the TFS Web Access upgrades here. If you can't wait, the current CTP will work with the RTM version.
  • Jeff Beehler has compiled a comprehensive list of what's new in TFS 2008 over here.
  • The people responsible for the AJAX Control Toolkit have also releases a new version compatible with the final version of the .NET Framework. Download it from here.
  • The Visual Studio 2008 SDK has been shipped as well. Those who have been building custom DSL-based solutions, can now upgrade as well.
  • The plan is to port the Web Service Software Factory : Modeling Edition to Visual Studio 2008 and release it before the end of February 2008. However, Don Smith expects to have a CTP available before the end of the year, and maybe an alpha drop a bit earlier.
  • Glenn Block, the product planner for the Web Client Software Factory told me that they plan to have a version in the beginning of next year. There is an article though that should allow you to modify the factory manually, but I haven't tried that yet.

Friday, November 09, 2007

TechSessie over Visual Studio 2008 en C# 3.0 op 29 november

Op de TechEd in Barcelona heeft Microsoft de afgelopen week aangekondigd dat de RTM versie van Visual Studio 2008 nog voor het einde van de maand beschikbaar komt. Het zal je dan ook niet verbazen dat er veel te horen en te zien was over alle nieuwe mogelijkheden en handigheidjes die Microsoft's belangrijkste ontwikkelomgeving te bieden heeft.

Wil jij ook weten wat Nested Master Pages zijn of hoe je met LINQ-to-SQL je database object-georienteerd kunt benaderen? Of wil je graag zien welke productiviteitsverbetering de ASP.NET designer je biedt? Kom dan op 29 november naar de interactieve presentatie van Dennis. Hij zal je aan de hand van voorbeelden en demo's laten zien wat hij allemaal op de TechEd geleerd heeft.

Gewenste voorkennis
Kennis van C# 2.0 en Visual Studio 2005 is gewenst.

Over Dennis
Dennis is een software architect met 11 jaar ervaring waarvan de laatste 6 jaar vooral met de focus op .NET, architectuur en OO. De laatste twee jaar is Dennis (mede)verantwoordelijk geweest voor het ontwerpen, bouwen, en uitrollen van ontwikkelstraten gebaseerd op .NET 2.0 en 3.0 en de zo vaak genoemde DSL tools. Inmiddels maakt hij voornamelijk gebruik van de standaard software factories en applications blocks van Microsoft's Patterns & Practices groep. Dennis is sinds maart dit jaar tevens Expert Advisor voor Microsoft rondom de nieuwe Web Service Software Factory : Modeling Edition.

Aanvang
Om 18:00 uur staat de pizza klaar, om ca 18:45 start de sessie. De sessie duurt uiterlijk tot 21:00 uur.

Aanmelden & Lokatie & contactpersoon
Wil je deze sessie bijwonen laat het ons weten. Stuur je mail naar info@aviva-it.nl. Je krijgt dan een bevestiging van ons.

Aviva .Net Engineers, Roy Oude Weernink
Haagse Schouwweg 8
2332 KG  Leiden
071-5351730

Voor meer informatie over ons en de routebeschrijving kijk op onze website www.avivasolutions.nl

Thursday, November 08, 2007

Web Service Software Factory : Modeling Edition is live!

This must be the first time I've actually been a witness of a Microsoft product being released while sitting next to the guy who did it. So it's done! The final bits of the new Web Service Software Factory : Modeling Edition have been release by Don Smith, the product planner from P&P, right from the TechEd Barcelona 2007.

I've already tried it on our running project, and all models opened up properly. Apparently, no changes were made to the internal structure of the models. If you are still using the pre-CTP version, this post may help you convert your existing models to the CTP version.

I'll go through the issues and problems I have found in earlier versions and update the corresponding CodePlex items along with it.

An awesome experience

Yesterday was my big day. I finally got a chance to present some of my experiences working with the P&P software factories and factories in general next to Mister Software Factory Don Smith and Mister Enterprise Library Olaf Conijn. In the morning I did actually attend a session (not worth mentioning), but I've used the remainder of the day to visit Don and Olaf's session on the Service Factory : Modeling Edition, and to prepare our big session in the afternoon. The original plan was to have only a maximum of 15 minutes of speaking time, but Don thought I would be much more interesting to actually be there for the entire session and adding my personal experiences to all his sheets! Well, that was risky but very cool.

image

While approaching the session start time, I became more nervous by the minute. But after I finally climbed on the stage, I started to feel more relaxed. We all thought that the session went great and the interaction between me and Don appeared to go smoothly. Unfortunately, the ratings did not entirely correspond to that feeling. The 500 attendees had some trouble coping with three speakers in one session and did not really like the demos. Apparently they were expecting more personal experiences and process related aspects of software factories (which we have a lot of to share). Ironically, the TechEd organisation urged us to have a lot of demos. Well...what the heck... it is not happening every day that somebody gets to have his first public tech talk at the auditorium of the European TechEd!!

My colleague Arnold-Jan recorded the introduction on video. Check it out here (it's about 18 MB, so beware).

At the auditorium

Check out the picture below. It's me, Don Smith and Olaf Conijn speaking at the auditorium of the Barcelona TechEd 2007. Check out the full story at our Aviva blog.

Wednesday, November 07, 2007

Day 2

Well, it was a very difficult morning indeed. Last night, we went to Olaf Conijn's party at the beach of Montgat and met with him, his twin sister Judith and Don Smith, Product Manager of P&P. Each of us brought some drinks and snacks and we had a great time talking about lots of useless stuff. I think I went to bed between 4:00 and 4:30 in the morning.

But, here we are, at the first session of the day presented by Simon Guest. As was promised in his summary, I was expecting a kind of framework that should help architects defining a system that better suits their customer's needs. But even though he is a reasonable speaker, his presentation was a bit of an open book. Nevertheless, he did show us a nice tool that helps choosing between the many technologies Microsoft has to offer. By adjusting sliders representing aspects such as the amount of interaction needed, required performance, offline/online dependency et al, it shows you the best combination possible.

The second show of the day was hosted by Luca Bolognese, the Product Lead for LINQ, which was suffering from an extremely heavy Italian accent (or pretending to have one). He presented us with a great code-only demonstration of LINQ-to-SQL, the types of LINQ queries available, and the resulting SQL queries executed. Quite powerful indeed. I think there must have been over 2000 attendees, but he didn't seem to bother at all.

The fourth presentation was much more interesting. Shanku Niyogi (Microsoft) demonstrated the new ASP.NET MVC Framework and a whole bunch of new dynamic controls. These dynamic controls allow you to build a data-intensive web site using simple page templates for lists, details, edit, etc. They basically created what many IT shops have been creating themselves. The first CTP of it will be available soon.

The formal part of the day was completed with a presentation on ASP.NET AJAX. Since most of this stuff is already available on www.asp.net/ajax I didn't pay a lot of attention there. Obviously, the lack of sleep was not really helping either.

In the evening, I had diner with Don and Olaf to discuss the contents and the slides of our presentation on Wednesday. We had lots of discussions on what may work and what may not, especially because there will be three people on the stage. Olaf will do the demos, Don will guide the audience through the slides, and I will try to provide comments and additions from my own experiences. The presentation will be held at the auditorium so it is well possible that we will be talking to 1000-2000 people! Hmmm, I need to get a decent sleep to relax now...

Tuesday, November 06, 2007

First day at the TechEd Developer 2007

In contrast to last year's TechEd, the first day is not a pre-conference day, but starts with the traditional keynote. However, we did not know that it would not start until 14:00. So we used the morning to do some shopping and getting ourselves a nice (but cheap) breakfast in the sun. I finally convinced Arnold Jan to buy a decent jacket and drop his Aviva Solutions jacket. I'd rather not walk around next to a walking billboard. Sorry Bart :-)

Since we already registrered ourselves before the 1st of July, we were entitled as Early Birds. In addition to an ugly baseball cap we were allowed to sit in the front of the keynote session. I typically don't really care about keynotes, but the techno music was great. Check out the picture with the two of us below...and notice the smiles...without any alcohol (yet).

Unfortunately, the organization has not learned from last year. Soma Somasegar may be the corporate vice president and from what I've heard he is a nice guy, but he is definitely not the best speaker. Nevertheless, one of his product managers gave a great demo showing the full potential of Visual Studio 2008 and .NET 3.5. And after making an important announcement (see the post of Arnold Jan van der Berg), they played a very funny demo highlighting some of the way Microsoft works internally.

The first real presentation today was done by Daniel Moth. I've been following his blog very closely because he is one of the few who has been posting a lot (and with a lot, I mean a lot (!)) about Visual Studio 2008 and the .NET Framework 3.5. It appeared that he is a gifted speaker as well. One of the great things I learned today is that many of the new C# 3.0 features are also available to .NET Framework 2.0 applications. In fact, all new IDE features are as well (such as Javascript Intellisense and debugging and the new ASP.NET features). Make sure you check out his blog as well.

The second presentation was held by Roy Osherove and dealt with the various aspects of Agile development and the way Team System facilitates that. Since it did not know much of Scrum, it was interesting to see how you can make other Agile methodologies work with VSTS. Other than highlighting some very recognizing project management challenges, he actually played a piece of music on his guitar. And I must say, not bad at all. This session lasted until 19:00 and concluded the first day. Now we need to get ready for Olaf Conijn's birthday party.

Monday, November 05, 2007

Arrived at Barcelona

Yesterday, after a reasonably short flight, we arrived at a sunny Barcelona. Even though Transavia is not famous for their luxurious seats, Internet check-in allows choosing your own seats 24 hours up-front, so picking the ones near the emergency exists was easy. I arrived at Schiphol Airport at around 10:15 and we dumped our luggage at the Best Western Regina at around 15:00. It was funny to observe my traveling companion and colleague Arnold Jan engaging in long discussions with the taxi driver. Since I don't speak a word of Spanish, I tried to enjoy the landscape :-)

The remainder of our day consisted of exploring Barcelona, finding the good spots for diner or a nice cold beer, and enjoying a genuine American style muffin at one of the many local Starbucks. Since TechED registration starts on Sunday, we decided to try Barcelona's public transport to register ourselves. But looking at the many people walking around with the famous TechED goody bag, we were not the only one who thought about that.

Thursday, November 01, 2007

Aviva Solutions at the TechED Developer Europe 2007

Well, not entirely true, but this year, I have been working closely with the Service Factory team of Microsoft's Patterns & Practices lead by Don Smith.

At the beginning of this year, they've started development on a new generation of their famous Web Service Software Factory: Modeling Edition. Since their early drops were very promising, I decided to include it in a major web project. Over the last months, we have been in close contact with Don and his team and have been trying to use the new factory to its fullest potential.

Don was scheduled to provide a few talks at this year's TechED Developer and I suggested that it may be fun to share some of my experiences with the audience. Well, they had to fight to find some room in one of the P&P talks, but finally, the plan is that I'll get something like 15 minutes. When? On Wednesday in his Build Your Own Software Factory (ARC301) talk.
Oh, in addition to my own humble addition, two other Dutch speakers will be speaking this year: Dennis Vroegop (chairman of the Dutch DotNED user group) and not to forget, Olaf Conijn.

Saturday, September 29, 2007

Design Patterns session on October 11th and 25th

Architecture, software factories, frameworks; terms you may have heard of quite often these days. It is expected that any serious software developer knows exactly what they mean. But many forget that all of these concepts are based on the foundations provided by well-known patterns. These patterns, commonly referred to as Design Patterns, have been written down by gurus like Martin Fowler and Eric Gamma.

Most developers will be able to tell you what a Singleton is, and the Factory pattern shouldn't pose a real problem either. But what do we mean with Separation of Concerns or Dependency Injection? And what about patterns like Command, Bridge, Adapter or Chain of Command.

Want to know more? Then subscribe for the technology session on either the 11th or 25th of October hosted by Dennis Doomen. Using a lot of examples in C#, he will show the purpose of many common patterns, and explain how these are used in many modern frameworks and software factories.

Prerequisites
Experience with C# 2.0 and thorough understanding of the object-oriented principles inheritance, polymorphism and encapsulation.

Registration and location
To register, send a mail to Barbara Buitenhuis at barbara@aviva-it.nl. The evening will start at 18:00 with pizza and end around 21:00. It will be held at our office in Leiden:
Haagse Schouwweg 8
2332 KG Leiden
071-5351730

Friday, September 21, 2007

Technology session on P&P Software Factories on september 27th

Maybe a bit late, but next Thursday, September 27th, I'll be presenting an open whiteboard session about the Patterns & Practices software factories I've been using in my current customer project. Check out the invitation at DotNED. The invitation is in Dutch, but the presentation will be either in Dutch or English, depending on the audience. This is the same presentation I gave on September 7th and then we had about 20 people. Initially it was meant as an internal presentation, but we got some requests from other developers also. So we decided to open it up.

Wednesday, September 05, 2007

NHibernate vs Entity Framework

Although Microsoft claims that the new Entity Framework is really not an OR/M product, if you look closely at the examples and the whitepapers, you'll agree with me that they are very similar. Nhibernate is an awesome product, and I've been using it for a long time now, but it currently has two major drawbacks. First, there are no serious GUI tools assisting in the creation of mapping files and/or business classes. Second, various rumours indicate that further development (other than bugfixes) is uncertain at this time. Well, if you tried the new Entity Framework tools for Visual Studio 2008, you must love the integrated environment. And obviously, LINQ is much better than NHibernate's expression object model and HQL language. Nevertheless, until we have support for the major important database vendors, the EF is no real competiter yet. Luckely, there is good news on the horizon.

PS. If you have problems trying to get the CTP tools to work, see this post. It might help.

Wednesday, August 15, 2007

Web Service Softwary Factory v3 drop 117 available

It has been more than six weeks since the last drop of the next generation service factory was released. Since this is way more than the usual two-week schedule, you may wonder what has been going on...well...a lot!

After going through the pain of migrating our existing models (the internal XML format has changed considerably), we (me and three other developers) have been using this build for the entire day. These are our first experiences:

Improvements

  • An installer that saves you from having to build everything yourself (although the source code is installed as a .msi file). However, you can't create your own installer yet, but P&P is working on that.
  • Support for GAX 1.3 (although building your own version of the factory from the source code does require some manual changes).
  • Primitive members of a Data Contract support a CollectionType property. Message Contract members will get similar support in the next drop.
  • Primitive members of a Message Contract support an IsNullable property.
  • Models open up much quickly than before.
  • You can force generating code to a dedicated code folder of the implementation project (e.g. GeneratedCode)
  • The Create Translator recipe from the v2 factory has been added.
  • There are new recipes for creating the implementation projects with one click of a button
Bugfixes
  • The model project can be placed anywhere in the solution, for instance, as a sibling of the target projects such as is so common in the v2-style Service Interfaces solution folder.
  • Specifying the XmlSerializer as the SerializerType now generates proper code
  • Visual Studio no longer attempts to check out model files when opening from source control
  • You can now add empty Message Contracts without causing validation errors. This allows adding unforeseen new members to a request message without breaking existing clients.

Issues

  • The Order property of a Data Contract attribute must be unique. But a new recipe is under development to ease the effort of ensuring uniqueness.
  • Can't select an existing service contract from the deployment designer.
  • Can't add a new model project to an existing solution (although a workaround exists).
  • Unexpected attempts to save the Data Contract model upon building the project (causing check-out requests).

Friday, August 03, 2007

.NET community news 2007 issue 1

On a daily basis, I try to keep track of what's going on at the .NET community by reading blog entries, articles and stuff I ran into myself. I decided to compile the most important facts into a regular post here.

  • Microsoft released a whitepaper on the most important features of Visual Studio 2008.
  • The Wayward Weblog has published an extensive four-part walkthrough on how to write your own LINQ-compatible data provider. I wonder when Oracle will create a provider so that we can use the new Entity Framework with their database.
  • You may recall that Microsoft bought the company that created the Team System Web Access Client a little while ago. Since then it was downloadable free of charge. They've now released a re-branded version of it which includes quite a list of fixes and improvements.
  • It was already announced a while ago, but GAX/GAT July 2007 (1.3) has been released with support for Visual Studio 2005, 2008 Beta 1 and 2008 Beta 2. It should work with your own custom guidance packages, but will not help you running the Patterns & Practices software factories. I've already posted these questions on the corresponding CodePlex forums.
  • As you know, Team Foundation Server v1 uses Windows Sharepoint Services 2.0. Many have requested support for the new WSS 3.0 so that the team sites gain the extra features so common to Sharepoint 2007 users. Microsoft has released proper instructions (including a hotfix) for supporting this scenario.
  • The next version of the AJAX Control Toolkit will be released around August 24th and be labelled 10824.
  • If you've been developing Domain Specific Languages with the Visual Studio SDK, you may be happy to know that a CTP version has been made available for Visual Studio 2008 Beta 2.
  • One of the new C# 3.0 features that did not get much attention is called partial methods. Huh, I hear you asking? Check out this short explanation.
  • Some Visual Studio 2008 Beta 2 posts that may help you while switching to Visual Studio 2005.
    • TFS 2008 Build agent configuration options
    • Using VS 2008 to target ASP.NET AJAX 1.0
    • Upgrading ASP.NET AJAX 1.0 Websites and Web Applications to .NET Framework 3.5
    • Workaround: Beta 2 not showing your JavaScript Intellisense / Intellicode / Syntax Highlighting? 
    • New TFS offline support in Beta 2
    • ReadMe's for VS, Express, .NET Framework and MSDN Available Online

Wednesday, August 01, 2007

Barbara turned 29!

Last Tuesday, my girlfriend Barbara turned 29. Initially she didn't really want to celebrate this milestone, but at the end of last week she decided to invite some friends after all. Trying to get a just a few agendas aligned is extremely difficult. But somehow, this time everybody accepted the invitation. The result? Almost 20 people in our apartment!

We had barely enough soup for everyone, but we compensated that with a lot of snacks, cookies and other small appetizers. The only miscalculation we made was that we expected them to drink more wine and less soda. Obviously, you can't expect people to drink that much during a normal weekday. Oh well, we still had a great evening.

The most noticeable gift she got, she got from Raymond and Chantal. Alongside our front door we have two flower pots from which the original plants died within a few months after we bought our apartment. And while lacking green fingers, I have never bothered buying some new plants. Fortunately, after two years of having a dull entrance, they brought us two nice flowery plants including the necessary potting soil. In fact, Raymond even put everything in the jar for us. Great isn't it!?

You can find the remainder of the pictures (some taken with my Samsung U600) here.

Friday, July 27, 2007

Visual Studio 2008 Beta 2 is here!

The signs have been very clear during the last couple of days, but it is finally official. Beta 2, which is 99% feature complete is there and can be downloaded immediately.

Monday, July 16, 2007

About free cocktails, dolphins and lots of fun

We are already back for three weeks, but until now, I have not found the time yet to report on our great holiday.

Including traveling time, the holiday lasted only ten days, which is way too short for fully enjoying the awesome Sandos Caracol Beach Resort. Since taking the car to Schiphol is too cumbersome, in the early morning of Thursday June 22th we left home by train. Martinair, a Dutch airline, was chartered to bring us to Mexico. We booked Comfort Class because it add about 10cm more room for your legs and a personal video player. Unfortunately, I already saw all of the ten available movies so I had to kill time by watching some documentaries and sitcoms.

According to the weather forecasts, it was supposed to be around 30 degrees Celsius. Usually this is a great temperature, but I forgot that the humidity in Mexico is about 80%. Even after a week, I still had not fully adapted (looking at the pearls of drops while carrying around our luggage). The resort was amazing and very clean and organized. Even the lawns between the buildings are constantly monitored and neatly cut. The airconditioned apartment was spacious and we had our own Jacuzzi (in addition to a separate shower) and a minibar.

The resort has three buffet restaurants (international, Italian and Mexican) and three a-la-carte restaurants (a steak house,  Mediterranean and Asian). Moreover, they serve warm snacks (like hamburgers, tacos, and hot dogs) virtually around the clock. We skipped the Mediterranean restaurant since we are not really fond of fish. But the restaurants offered so much variety, we never felt like we were eating the same things every day. Although tempting, I actually managed to restrain myself from eating too much.

Many people have asked me if we've seen anything of Mexico. To be honest, not much. I usually bring a few books and magazines to read while enjoying the beach all day. But the resort's animation team really makes an effort to ensure that there are plenty of activities. To name a few: water-polo, aqua-jogging, volleyball, soccer, bingo, dancing lessons, Spanish lessons, scuba-diving trial, and even taking a small 2-4 person catamaran is included. And if that isn't enough for you, they also organize a dancing/music show each night. And not to forget, on Thursday we had an awesome beach party.

Although it may not seem so, we actually did leave the resort a few times. On one trip we took a cab to downtown Playa del Carmen after we took a high-speed boat to the island of Cozumel. From there, we took a two-hour snorkeling trip with a small glass-bottom-boat. Since we were accompanied by Marcello (an LAPD officer) and Grace, a couple from Los Angeles, it also allowed me to practice my English a bit more.

 

On the day before we left, we enlisted for a day trip with a big catamaran. On the way over there, we met the Mason's from Littleton, Colorado with which we hung out for the remainder of the day. The trip included snorkeling, shopping on a nearby island, eating on a beach and enjoying lots and lots of cervezas (beers). Even worse, after the lunch, the crew started to poor Tequilla and rum-punches. As I'm not accustomed to drinking a lot anymore (no, not even if it's all-inclusive :-)), you can picture the effect on me. Nevertheless, this trip was the absolute highlight of my holiday. I had so much fun talking to Dean and his family that I did not notice that I was getting drunk more quickly than I wished.

 

As many do when they go to Mexico, we also went swimming with dolphins. Unlike my girlfriend Barbara, I did not really care about it upfront, but many people said that I would regret skipping this trip. Well, for me, it was not worth the 130 dollars (per person). You get to swim with the dolphins for about 30 minutes, but don't expect to be allowed to swim around freelly. Everything is fully choreographed! We were with a group of 10 people and each couple gets a chance to do things like a footpush, swim-by, kiss and some other small activities. And what's more? You're not allowed to take your own camera because they want to charge you with 12 dollars a picture or 50 dollars for a DVD of the entire group.

It's not a secret that I like cars, so I thought lets share some of my observations here. First of all, the amount of European cars easily surpasses the amount of traditional American cars. In fact, I have never seen that many Volkswagen Jettas (Bora in Europe) in my life. Moreover, in Mexico you see a lot of common small European cars such as the Renault Clio, Opel Corsa or Volkswagen Pola. But somehow they feel the urge attach an ugly trunk to these cars (a.k.a. a sedan or saloon). I also noticed an Opel Astra with a Chevrolet sign. At first, I thought the owner was simply addicted to the Chevrolet brand, but then I noticed that all cars known as Opel had a Chevrolet sign. It seems Opel is an European brand only, but at the end, both Chevrolet and Opel are part of the General Motors brand.

In the afternoon of Friday, June 29th, we returned to the airport to get our flight back. Unfortunately, the flight was overbooked and people were asked to stay one night longer in exchange for a free hotel and 300 dollars each. Luckely some people were willing to accept that offer, regardless of the fact that they have been waiting in the queue for over an hour already. Anyway, the flight was okay but a bit borring because they showed the same movies as on the way to Mexico.

This concludes probably my best holiday ever. And not to forget, it was a pleasure to chat with Marcello and Grace from L.A., Dean Mason and his family from Colorado, Chuck from Texas, the forget-their-name couple from Munchen Germany and of course Akash from Canada (a.k.a the cashman) and Josh from London.

For the ones amongst you who want to see all the other pictures we've made, I've uploaded them to a web album on Google's Picasa Web. Check them out here.

Thursday, July 12, 2007

What's new in .NET 3.5 and Visual Studio 2008

Update July 25th: Huge signs that beta 2 will arrive THIS week.

Update July 16th: There are some 'signs' that beta 2 will arrive really soon

Most of the community information on Visual Studio 2008 has been focussing on the Language INtegrated Query (LINQ) features of C# 3.0, but in fact, there's a lot more in stock for us. I've compiled a list of links that elaborate a bit more on all the other features Visual Studio 2008 will bring us at the official launch in Los Angeles on February 27th 2008. Since official launches typically occur a month or so before the RTM version shipped, it may well be possible that the RTM will ship around Christmas, but who will know... Anyway, many of the links originate from Daniel Moth's blog, since he has been posting a lot of really interesting stuff recently.

  • First, check out this article and this post to find out how .NET Framework 3.5 relates to 3.0 and 2.0 from a compatibility standpoint, and how they relate to the Visual Studio versions. 
  • Then you'll be happy to know that Visual Studio 2008 will completely replace Visual Studio 2005. It's new multi-targetting features allow developing .NET 2.0 and 3.0 applications without the risk of introducing .NET 3.5 or C# 3.0 dependencies.
  • Finally! Javascript intellisense for both ASP.NET AJAX libraries as well as your own script libraries. Some additional examples can be found here.
  • WCF has been extended to add support for JSON web services that are compatible with ASP.NET AJAX, support for exposing services as RSS feeds, and support for new protocol versions (OASIS WS-AtomicTransaction 1.1, WS-ReliableMessaging 1.1, WS-SecureConversion 1.1. Expose Workflows as WCF services).  
  • The WPF designer has been enhanced and integrated into the IDE, WPF performance has been improvement in general, and support for SilverLight is part of it as well.
  • Support for nested master pages.
  • The ASP.NET webforms designer has been redesigned, including support for split views, faster design/source switching, enhanced support for stylesheet, and support for AJAX.
  • DLINQ (LINQ to SQL) should not be forgotten of course. 
  • XLINQ (LINQ to XML) may potentially make the XmlDocument and XmlReader classes obsolete.
  • Closely related to LINQ is the new Entity Framework, which is, from my point of view, a major competitor of the awasome NHibernate object-relational mapper. 
  • Although not integrated in Visual Studio 2008, Microsoft's Patterns & Practices team expects to ship the next generation of the Service Factory at the same time. There are already some great alpha drops available (which work great in a production environment).
  • Peer-to-peer classes that allow you to build applications that use technologies like People-Near-Me or instant messaging systems.
  • Client Application Services that allow you to use the same authentication and profile services available in ASP.NET AJAX in a Windows application.
  • Strong Active Directory support.
  • A new set of classes that can help you to add add-in support to yoru applications. 
  • Code Name Astoria is a set of classes for exposing very lightweight XML or JSON based data services over HTTP. It is specifically targetted at rich client technologies such as ASP.NET AJAX and Silverlight.
  • If you already know the Smart Client Software Factory, you will recognize many of the concepts and patterns used in Code Name Acropolis. It provides a flexible architecture for building Windows applications using Windows Presentation Foundation. The first CTP bits are already available.

If you want to read a great article that explains the troubles and challenges of a Pakeflages-kind of site using ASP.NET 2.0 AJAX, the AJAX Control Toolkit, Windows Workflow Foundation, and DLINQ, read this.

Tuesday, July 03, 2007

Guidance Automation Extensions 1.3 is coming...

A very short blog entry that triggered me. Hopefully, it will arrive soon, since that makes it potentially possible to use the Web Client Software Factory on a Visual Studio 2008 (Orcas) environment. For those guys that also use the V3 alpha drops of the Service Software Factory, be patient. P&P is planning to internally move to VS2008 somewhere in July, and deliver a proper VS2008 version in August or September.

Monday, June 18, 2007

Mexico, here we come...

In just two days of working, our holiday starts. Me and my girlfriend Barbara have been considering taking our new Volvo and driving off to the south of France again. We enjoyed that holiday a lot last year, but we thought that we'll have plenty of opportunities for such a holiday as soon as we have kids. Instead, we decided to go for two weeks of pure relaxation at the Sandos Caracol Beach Resort. Oooh, I can't wait...

Wednesday, June 13, 2007

Having fun while doing my job

Recently, I've been giving presentations on topics such as C# 2.0 and ASP.NET 2.0 to some of the coworkers of Aviva .NET Professionals (a partner of Aviva Solutions). Usually that is not something worth blogging about. But yesterday evening's group was so full of enthousiasme, I couldn't resist sharing the enjoyment that I had while driving home. The picture is a bit blurry (and the powercable of the beamer is clearly visible), but you should be able to see the grin on my face (the guy with the blue-and-red shirt).

Saturday, June 09, 2007

Great fun 'im Schweizerhaus'

Although I lived most of my life in Nijmegen (in the east of the Netherlands), I also lived for about four years in a little village near the German border which is called Millingen aan de Rijn. Although this village is quite busy on itself (it is a very popular place for both German and Dutch bicycle tourists), we usually went to the many clubs and bars Germany has to offer. These included E-Dry in Geldern, Empire in Weeze, World Centre in Kleve, and even Tor 3 in Dusseldorf. Among the few close friends that are still left after moving to The Hague area, some of my closest friends are from that timeframe.

When one of them asked me to join him and some old friends with an old-school evening somewhere in Kleve, I could not reject. So last weekend, we met in Millingen and started the evening with a few drinks at a local bar, after which we took a cab to Kleve. Since it appeared that all those old bars have disappeared or replaced by some other obscure joint, the only fun place we could remember from those old days was the Schweizerhaus.

Ten years ago, the Schweizerhaus was really the kind of bar where you find a lot of older women and everlasting singles trying to find a mate for life (or just that evening). Most of the time, it was just incredibly funny observing the audience. And although the Cha Cha and the Jive have became popular again due to television programs such as Dancing with the Stars, in the Schweizerhaus it never lost popularity at all. Well, being there in 2007, I can only conclude that time has simply stand still over there! Just imagine, where can you get 5 beer (of 0.5 liter) for just 10 euros these days?

Anyway, luckily for us, they've introduced a completely new club in the basement called the Swisshouse. And even though we were too old for the new part and too young for the old part, we had a great time (partly facilitated by the beers). We came home at about 4:30 in the morning, which by itself was a miracle looking at the speed the German cab drove us home. Will be repeated again...

Tuesday, June 05, 2007

Visual Studio "Orcas"...2007...2008

If you have been reading the many posts about this week's TechED that is going on in Orlando, you may have noticed the references to Visual Studio 2008 (a.k.a.) and SQL Server 2008 (a.k.a. Katmai). I'm not sure if I've been been paying attention or not, but I don't remember any formal announcement on this name-change. In fact, the April CTP still mentioned Visual Studio 2007 in its setup. Nonetheless, it does fit nicely in the pattern that has been used for all editions of Visual Studio.

June 6 Update: It is now official...see here.

June 7 Update: There is FAQ explaining how Visual Studio 2005 and 2008 co-exist with eachother.

Thursday, May 31, 2007

Windows Live Writer Beta 2 and Sharepoint 2007 Blogs

I've been using Windows Live Writer for a while now, but somehow it never worked properly from behind a firewall. Moreover, Aviva Solution's weblog is based on Sharepoint 2007, and WLW did not support this type of blog, up until now...

The Live! team has released beta 2 of Windows Live Writer. And obviously, this post has been written with this new beta from behind a firewall! I haven't been able to test with the MOSS blog (because WLW doesn't seem to like an ISA server in between), but I'm sure going to try real soon.

The original article that pointed me to this new beta also mentions a soon-to-arrive add-on that adds additional blogging features to MOSS 2007.

You can download beta 2 here. A note to the Dutch readers, make sure you tweak your IE language settings in such a way that the English language is on top the list. If you don't, you'll end up at the Dutch version of writer.live.com which does not host the new WLV version.

Thursday, May 24, 2007

SilverLight 1.1 Developer Reference poster

I haven't had a lot of time to investigate SilverLight yet, but if you haven't heard of it, I'm afraid you've been living in a cave for the last couple of months. Anyway, check out this great poster (click here get a full-size version).

Monday, April 23, 2007

Visual Studio "Orcas" Beta 1 - First impressions

It arrived sooner than expected, but still, I'm glad to see Microsoft has made such an amount of progress. Last weekend I downloaded the Professional Edition and the Team Foundation Server bits and got started. My main interest is to see if it is good enough for production development. We use the GAX/GAT stuff to exploit the Web Client and Service software factories, and I'd love to get Javascript debugging, better Web development and of course, C# 3.0.

Notice that before I installed Orcas on my Vista Business setup, I first deinstalled all the VS 2005 add-ons (such as GAX, GAT, software factories, AJAX, and the WCF/WF/WPF extensions), but I did not uninstall VS 2005 itself.

  • The installation of .NET 3.5 fails almost immediately. It seems that the Visual Studio setup uses the wrong command-line arguments, since I got a pop-up similarly to what you get when you add -? Or -h to a command-line tool. I had to manually install the 3.5 bits. After that, installation went fine.
  • I also installed the Team Explorer parts from the Team Foundation Server folder. I'm happy to inform you that I managed to succesfully connect to an existing TFS server and get all my sources. So no need to change your TFS v1 installation.
  • I then installed the Visual Studio Orcas SDK (Feb 2007 preview) and the Feb 2007 versions of GAX and GAT. However, the Guidance Package Manager did not appear in Orcas (but did in VS2005). This basically renders Orcas unusable for production development until somebody figures out the required registry changes.
  • I also reinstalled Enterprise Library 3.0.
  • Orcas contains a different version of the System.Web.Extensions AJAX assembly. The stuff you can download from http://ajax.asp.net/ is version 1.0.61025.0, but the Orcas version is 2.0.0.0.
  • I couldn't find the WCF Configuration Editor you get when you install the WCF Extensions for Visual Studio 2005. I expected it to be a built-in part of Orcas by now.
  • Opening existing projects and solutions will trigger a conversion wizard. They must have changed the project format once again.
  • The first console application I tried to compile resulted in a "Required file 'alink.dll with IALink3' could not be found'. I fixed it by manually reinstalling Windows6.0-KB110806-x86 from the WCU folder. This article refers to this problem in more detail.
  • Obviously, Resharper will not install on Orcas. But looking through their roadmap for version 3.0 shows their plans for including it. We'll just have to wait.
  • The Web Service Software Factory-based solution runs fine, but the ASP.NET 2.0 website does not. According to the designer there is a problem with the master pages. Investigating...

Wednesday, April 18, 2007

NHibernate 1.2 best practices

One of my former collegues pointed me at a great article by Billy McCafferty which will be one of my classics. It deals with many great design and architectural patterns and the tools available to implement those patterns in a real-live production-ready enterprise solution. It's a great document for enjoying a afternoon full of architectural discussions with your coworkers...

Configuring TFS with WSS 3.0

It seems that Microsoft has finally acknowledged the sheer amount of requests for supporting WSS 3.0 in Team Foundation Services. I've always found it a huge issue that we have a great portal environment such as MOSS 2007 on one end, and an out-of-date TFS team site based on WSS 2.0. There have been some great community efforts that seem to work okay, but basically rendered the installation useless when upgrading to newer versions.

Well, in the approach to Visual Studio "Orcas", they've released a document that should provide decent guidance on upgrading to WSS 3.0. If I can find the time, I'm going to try it out and report on it through this blog.

Monday, March 26, 2007

Playing in the snow

The holiday is over and the snow is gone. The rain is back and the job is waiting. Ah well, I really do like my job, but it was so nice to clear my mind while descending from a shiny white slope starting at the top of a mountain.

Anyhow, last weekend I returned from a week of skiing in La Toussuire, part of the French Alpes' Les Sybelles area. Me, my girlfriend and a group of eight other friends and acquaintances stayed in a nice chalet directly at the slopes and ski-lifts. Apparently, La Toussuire is a very quiet and boring little village, but we brought enough supplies (and booze) to make sure that we were going to have a great time.

It was very warm over there and unfortunately, no new snow fell during our stay. Still, there was enough for me to ski for about 4-5 hours per day (including my daily 2,5 hour lessons). You had to get up early because the snow in the valley did melt quite a lot during the after-noon. At one point, we measured a temperature of 25 degrees Celcius in the sun. Yet, even though the weather conditions were barely good enough for skiing, they were great for enjoying a nice cold beer. I can really recommend a local beverage called Monaco, a mixture of beer, 7-Up and grenadine juice.

Half of the group preferred snowboarding and of the people who ski, only me and our friend Chantal took lessons. We initially enlisted for level 1, but soon ended up in level 3, including lots of jumping, off-piste, and a real slalom race on Thursday. I'm definitely going to continue taking lessons next year, because the amount of progress in technique and confidence you make in such a short week is impressive.

We had a lot of fun during our stay there, but somehow, seven people (including my girlfriend) managed to get caught by a stomach flu. I managed to fight it off for almost the entire week, but during the trip back, it caught up with me after all. Luckily, it was only a mild version of it, but it did keep me at home for two more days.

Anyway, it was great fun, and I won't hesitate when we're invited again next year…

Free web-based interface for TFS available now!

This is certainly incredible. One day after I blogged about my complaints on Team Foundation Server (especially its lack of a web-based interface), Microsoft announced that they've acquired DevBiz Business Solutions, the creators of TeamPlain, the best commercial TFS-based product available. And what's best, you can download it for free starting right now! I'm sure going to try it first thing in the morning.

Oh yes, and not to forget, Microsoft released a new roadmap for Visual Studio Team System, including the post-"Orcas" product, codenamed Rosario.

Saturday, March 24, 2007

What's not in Team Foundation Server

Being a great improvement over tools such as SourceSafe and alike, I've been using the Team System products for over a year now. Microsoft has always been very good in delivering an integrated experience. Still, I do miss some essential features that should have been part of the product from the start (or at least made available since its introduction). Some of these items have already been mentioned in the Visual Studio Orcas roadmap, but that one is not expected to arrive before the end of 2007.

  • I'd like to differentiate between a work item that has been assigned to somebody and one that that person has actually picked up. The Agile process template does not support this. Not sure if this also applies to the CMMI process template though.
  • TFS supports linking work items to eachother. I'd love to get a hierarchical view from within the Team Explorer such as a list of all active scenarios and their corresponding tasks for instance.
  • It is very difficult to move work items between projects out-of-the-box. Fortunately, a community effort, the TFS Work Item Utility, allows you to do just that.
  • No rich editing support in the work item description; it seems the editor does support it (just cut-and-paste something from Word), but TFS removes the formatting upon the next save. The editor for adding comments does support it though. Just make sure you enable the Formatting toolbar. Now that I think of it, maybe its just a bug (although I'm using service pack 1).
  • TFS does not provide a web-based interface for managing work items. The WSS team site is there, and already provides several features of the Visual Studio Team Explorer. It is one of the most missed features that our customers complain about, so why not add work item management as well? And what about alternatives?
  • There is a free ASP.NET example project that you can get from CodeProject that provides basic work item viewing and creation.
  • A commercial solution is available by means of a product called TeamPlain Web Access. It really covers all the aspects you may wish. In fact, this is how Microsoft should have made it from the beginning.
  • Continuous Integration; although not supported out-of-the-box (yet, see Orcas roadmap), several rather succesful attempts have been made in the TFS community using the web service notification mechanism provided by TFS.
  • TFS has limited support for email notifications. For instance, project managers would like to receive notifications whenever a work item changes. And developers wish to receive an email when a work item is assigned to them. Since TFS supports an extensive notification API (based on web services and the infamous BisSubscribe command line tool), the limitation is really a GUI problem.
  • A very popular ready-to-use notification web service is available that will send an email to whoever gets a work item assigned to him.
  • The TFS Event Subscription Tool provides a decent amount of help on configuring the TFS notification database. However, the filters needed to properly limit the amount of notifications are still a challenge.
  • There is a notification web service template for Visual Studio that you can use to create your own notification service.
  • No integration with Windows Sharepoint Services 3.0; This is a major issue for me. Just imagine: on one side you have MOSS 2007 (based on WSS 3.0) which allows you to set-up many great portals for your Internet and Intranet publishing, and even some advanced team sites for your projects. And then, on the other side, you have a TFS team site, based on an outdated WSS 2.0, that basically allows you to do…barely anything. According to Microsoft they are planning this for the next version of TFS, but there's an unofficial guide on how to migrate to WSS 3.0. I haven't tried it myself, but it seems to work with just a few minor limitations.

Friday, March 23, 2007

NHibernate best practices

As I'm in the process of introducing NHibernate into a reusable architecture based on Microsoft's Web Client and Web Service Software Factories, I've been struggling with several decisions. Should I encapsulate access to NHibernate classes in some data access layer? Where do I keep its ISessionFactory instance in a IIS-hosted WCF service? Should I have default transactions for each service interface request? Who is responsible for committing or rolling back the transaction?

Anyway, while looking for best practices, I ran into a great article by Billy McCafferty that not only covers many of my issues, it also presents some great design patterns and ideas that I've been adapting since then. Notice that his article mentions NHibernate getting support for C# Generics and Nullables soon.
Well, I have been using version 1.2.0 RC1 for a few weeks now, and it works like a charm. You can now define associations as ISet, IList or any of the other generic collections, and using types like int? or float? is a natural choice as well.

Saturday, February 24, 2007

Addicted to Sudoku

I've never understood the hype around the Sudoku puzzles, or maybe I simple never paid attention to it. But recently, while visiting my parents, my father told me about his newest addiction. Due to his enthousiasm, I've tried one myself. It's a bit getting used to, but eventually it worked for me as well. In the mean time, we bought a whole pocket bock full of Sudoku puzzels at some kiosk ranging from 1 to 4 stars.

Well, I'm officially addicted now. I've started with a few 1-star puzzles but worked myself up to the 4-star ones. Since these are usually too difficult to solve without making a lot of notes, I was looking for some nice Sudoku templates that have a bit more space.

My search completed with a great article by Michael Mepham about several advanced techniques for solving a Sudoku. And his articles provides some great worksheets as well. I suppose you can call somebody who performs research on how to solve Sudokus addicted, shouldn't I?

Update 28-02: Check out this link. It's an online Sudoku game that you abuse for solving your paper-based Sudoku's as well.

Thursday, February 22, 2007

Printing a Compiled Help File (.CHM)

Many SDKs ship with a huge .CHM file that includes the documentation and often a class library reference. Also, many books are available as .CHM files as well. But since I prefer to read those books off-line, I often try to print out topics. Since the introduction of Internet Explorer 7, this has become quite problematic. IE has a new Shrink-to-Fit setting that is enabled by default. Due to that, printing a .CHM often results in an unreadable small font. Using IE's Print Preview option you can choose the exact scaling settings, but unfortunately, this setting is not available from the Html Help Viewer. To work around this limitation do the following:

  1. Open up the CHM file in the Html Help viewer
  2. Select the topic you want to print and choose Print... from the context menu
  3. From the dialog box, select Print the Selected Heading and all Topics.
  4. Wait for the Print dialog to appear. Now look behind that dialog for another window called HTML Help. The help viewer basically renders all those topics into one big .htm for printing.
  5. Select Properties from that window's context menu and copy the URL pointing at a local .htm file. DO NOT CLOSE THE HTML HELP WINDOW.
  6. Now open up that URL in a new IE window.
  7. Choose Print Preview and change the scaling setting to whatever suits you and print...

Wednesday, February 21, 2007

Virtual PC 2007 available for free

I have been using Virtual PC 2007 since its first beta. Well, not voluntarily though, but simply because the 2004 version did not run properly on Windows Vista. Nevertheless, it has run like a charm since the very beginning. I've been using it to still do some leftover developments in Visual Studio 2003 on my laptop. No crashes, no strange lock-ups, no nothing. Well, yesterday, Microsoft finally released version 1.0. And the best thing of it all? It's free! Apparently, Microsoft is trying to gain some market space from its competitors.

An evening with IKEA

Yesterday, I finally convinced my girlfriend Barbara to join me in an effort to pick up a new desk for my desktop system. I wanted a desk with a nice curve in the corner and a dark color that fits the rest of our interior.

Because of major redesigns, the IKEA in Delft is currently one big construction yard, so I was very happy to find a parking space in the vicinity of the building exit. Since we left directly after work, we quickly consumed an Ikea-style Tortellini with 15 (!) Swedish meatballs. And that is just the normal menu...

I already had a brochure for the Galant-series with me, but to reach the self-service warehouse, you have to take the entire tour throughout the store. Unfortunately, after arriving in the huge warehouse, one of the employees explained us that we had to go back to the shop and let one of his colleagues prepare an order. Due to the construction activities, they had to move a part of their stock to another warehouse somewhere else in Delft. Gee, would have loved to know that before...

Well, after taking the reverse tour back to the shop, we finally were ready to pick up the packages at the warehouse. But somehow, I expected that my 2006 Volkswagen Passat would be large enough to fit a 120 cm by 160 cm desk easily. How ignorant was I... the damn thing did not fit at all. You should have seen the angry face of my girlfriend (and my own stupid face) :-)

Fortunately, we were able to pick up my girlfriend's father's Renault Scenic. With a bit of squeezing and pushing it just fitted. But since the door didn't close completely, we had to use a rope to keep it closed. I don't recall having driven as slow as 80 km/hour on a high-way...

We arrived home at about 21:15. Since we left at 18:30 you can genuinely call it an evening with IKEA...

Tuesday, February 20, 2007

Aviva Solutions Weblog

As of last week, Aviva Solutions now has its own weblog. I will cross-post most of my technical stuff both on this blog as well as the new company weblog. The great thing about this weblog is that is had been created using the Weblog template of Microsoft Office Sharepoint Server 2007. I was surprised how easy it is to tweak the look-and-feel of a MOSS site (also refered to as customization).

Tuesday, February 13, 2007

Team Foundation Server setup experiences...

During the last couple of days, I've been busy completing an installation of Team Foundation Server on a fresh Windows 2003 Enterprise Edition install and make it accessible through the internet. While doing so, I ran into a few challanges for which I though they might be useful to remember the next time you try something similar. 

  • Before you start doing anything, make sure you download the most recent versions of the installation and the administration guides!
  • While going through the pages and pages of the installation guide, you'll eventually end up at the SQL Server 2005 setup wizard. I have already installed SQL Server a few times in my life, but I never bothered digging in the mysteries behind those collation settings. Unfortunately, accepting the default settings did not make TFS very happy. After searching through several articles and newsgroup discussions, I finally discovered that choosing Latin1_General with Accent Sensitive is the best option.
  • After installing Service Pack 1, I started receiving TD30059 errors while connecting to the TFS server. Fortunately, ThinkTecture's Neno Loje already discovered this little flaw in the sp1 installation and found a solution
  • A very well known issue when accessing TFS from outside the domain realm, is that the Documents and Reports appear in the Team Explorer with a red cross. Usually this is caused by the fact that the corresponding URLs include the NETBIOS name of the server instead of the fully qualified domain name. You can fix that using the following article.
  • By default, TFS uses port 80 (or 443 if you use SSL) for the Windows Sharepoint Services website and the SQL Server Reporting Services, and it uses port 8080 (8081) for the TFS web services. Although we do want to allow access to our TFS server from the Internet, we prefer not to open up port 8080 or 8081. So with the help of this article and the administration guide, I've tried to assign two different DNS names both using port 80. However, whatever I tried, I could not get that scenario to work. I've been Googling my ..ss off, but none helped me with that problem. Officially, Microsoft does not support this scenario until the next installment of TFS (part of codename "Orcas").
  • One of the pains of administering a TFS installation is that adding/removing groups and users involves making subtle changes to TFS, Windows Sharepoint Services and SQL Reporting Services. Some of that pain can be resolved with cleverly chosen AD groups, but nothing can compare with the ease introduced by the newest Visual Studio PowerToy: the TFS Administration Tool. Simple assign a TFS role to a (newly added) user and changes are applied to all three platforms. The only requirements is that the system from which you are making changes is part of the same domain as the TFS installation.
  • In pre-service pack 1 versions of TFS, the only way to allow access to your TFS installation from the internet is to allow Windows Authentication through your firewall. Since sp1, TFS also supports basic and digest authentication. Well, basic authentication combined with SSL works like a charm! Check the latest version of the administration guide to find out how to get things configured correctly.

Monday, February 12, 2007

About maintainable code

As a coding standard evangelist, I've published standards for C# 1.0 and C# 2.0 while working for my former employers. Moreover, I'm also somebody who tries to apply and share good design guidelines and principles. As part of that interest, obviously, I've read many books and articles on that subject. A former collegue of mine, ran into two great articles written by Jeremy D. Miller which I could not resist sharing with you. The first one, On Maintainable Code, shows some real-world examples on the subtle issues around this. The other one, Orthogonal Code, focusses on some very essential design principles that everybody should use at all times.

Tuesday, February 06, 2007

CSS Reference Chart for SharePoint 2007

During the last couple of days, I've been trying to customize a MOSS 2007 blog site to match the Aviva look-and-feel. Since I'm more a Windows developer, these CSS styles are causing me a pain in the ass. Fortunately, the Internet Explorer Developer Toolbar really helps to figure out what particular CSS class is effecting which part of your site. And if you then add Heather Solomon's excellent CSS Reference Chart for Sharepoint 2007, a web developer's life gets better and better. The new Aviva Solutions weblog is not quite operational yet, but as soon as it is, I'll let you know...

Friday, January 26, 2007

A new challenge...a new job...

I have been working for Ordina for more than two years now, and looking at the many great and challenging projects I have participated in, I was planning to continue with that for a long time. Moreover, Ordina has been investing a lot of time and resources in the development of their new .NET 3.0 and DSL based software factory. Several projects have been completed with it, and even more are about to start. And the best thing of it, is that I have had a decent  part in its success. For instance, I got a chance to show off this factory at this year's TechED together with Tom Hollander, and I had many great things on the horizon. And last but not least, I have many fine and great collegues. So, you can safely conclude that I had no reason to change that...but I will...

Quite recently, I have been contacted by a little company called Aviva Solutions. They primarily focus on providing consultancy services on enterprise solutions and e-commerce. Also, many of their consultants and architects dedicate their efforts on assisting customers with strategic choices on the architecture, the process, the infrastructure and the tools they use for building new systems.

After many sleepless nights, I have decided to join Aviva Solutions in these efforts. Looking at the stuff I wrote above, you can imagine that this was a really difficult decision for me. Nevertheless, somehow, I really felt like this is something I must do.

Thursday, January 18, 2007

Visual Studio "Orcas" is Visual Studio 2007??

While installing the January 2007 CTP of Visual Studio Codename Orcas, the next installment in the Visual Studio suites, I noticed something peculiar in the setup window.

Is it really going to be called Visual Studio 2007? I do like the sound of it though. Unfortunately, installing this CTP on Windows Vista failed for me. I don't know why, but it continuously complains that a restart is needed before the setup continues. Uninstalling does not work either... to be continued..

Thursday, January 11, 2007

The origins of the Composite Application Block

Last year, during our visit to the Microsoft campus in Redmond, I got a chance to talk to Brenton Webster, a solutions architect of Microsoft Austrialia. He told us about a great project they've been doing for the Austrialian Commonwealth Back of Australia (CBA) based on Smart Clients and many back-office systems.

The cool thing about this project is that it involved creating a lot of framework development. Amongst them is an idea that eventually resulted in something what we now all know as the Composite User Interface Application Block.

At that time he told me that his team was working on a white paper about this project, its architecture and the technical solutions. Well, it took almost a year to complete this paper, but last month, the complete story has been release as a case study. Make sure you check it out (there's a PDF version as well). It's full of great ideas. 

Update: By the way, if you live in the Netherlands, and you're subscibed to the Dutch version of the .NET Magazine, my collegue Jonne Kats wrote a great introduction to CAB and the Smart Client Software Factory.

Wednesday, January 10, 2007

Under the hood of ASP.NET AJAX

You've probably heard of ASP.NET AJAX already and its potential for changing the balance between Web and Windows applicaties. This article explains how you can call ASMX web services from your Javascript code without any pain. Moreover, it also explains how that is accomplished under the hood.

Monday, January 08, 2007

Virtual PC 2007 Release Candidate 1

If you have, like me, been participating in the beta tests of the 2007 edition of Microsoft's Virtual PC, you should check out the Microsoft Connect site. They've released release candidate 1 (build 6.0.142) and it runs very smoothly under Vista on my HP laptop. Since I've been beta testing, I have not found any real problems while running it under Vista, but somehow, this new build made everything flow a little bit better.