Don’t use viewstate compression! Use http compression instead!

Just google a bit with the keywords compression plus viewstate and lots of articles are to be found about this subject like this one. The problem is that in most situations programmers are doing something that the webserver already can do for you. Not only does it compress the viewstate, it compresses all (dynamic ) documents that you configure it do to. It becomes even worse when the webapplication compresses its viewstate and the webserver compresses the rendered page output *again*. Seems a bit inefficient to me 🙂

So let the webserver do in what it is good at. Serving/streaming rendered documents to the browser in the most efficient manner. Just configure it so that it is also compresses dynamic pages. If you dont know how to do this then just google on http compression iss and lots of articles that explain how to achieve this. It really doesn’t need an extra article from my hand 😉

One situation in which it could be of interest is when an http 1.0 browser performs a request which does not support gzip compression. This way you can achieve nice results by compressing the viewstate. But in the article mentioned at the beginning of the page can be read that the viewstate would sometimes be larger then 1 megabyte. Well if that is occuring in your application then the viewstate data must be *really* expensive to calculate or read from a store must it be that important to add as viewstate data. In most application retrieving data from a data source actually performs very well although it always depends on the total count of page request, the total amount of webservers in a farm and the number of databases as is the kind of state required for some functionality.

The && and the & operators

Today a collegue had me flabbergasted by using the & operator in a boolean comparison like the following example.


return x & y;


Both x and y were booleans and I said “Hey you just forgot an &! A single & is a bitwise operator.”. And he responded that this would work but that the behaviour of a single & is that it is not lazy evaluated (short-circuiting).


My knowledge about the csharp language is quite good as is my knowledge of the .net framework so this was quite a surprise!


The funny thing is that the msdn documentation about the & operator doesn’t say anything about lazy evaluation while the documentation about the && operator also mentiones the & operator with boolean operands.

Failed for 70-300 exam

I failed for the Microsoft 70-300 examen this afternoon. I am disappointed in the result because I expected to pass. When I saw the score it felt very weird to see I had failed. I really don’t have a clue which questions I did wrong…. so it is almost impossible to improve my knowledge for the next attemp.

The exam had three cases and each case had eleven questions. The cases itself were very easy and were interviews of people in a certain role.

The hardest part in this exam was the english language I think. I had several questions that I could anwser but I just didn’t see the (multiple) options I expected. I chatted with some collegues afterwards and that told me that had the exact same problem and succeeded at the second attemp without studying just by getting other cases.

Too bad I did not have the time to give it a second go :-). I started at 13:00 and was finished two hours later. Too late for our office hours.

Game studio express and XNA

Yesterday I posted about a news scoop at Ars-Technica referring Game studio express. Microsoft already posted a press bulletin about this at their site (here). But I wasn’t aware of this.

Rob Tillie mentioned in the comments that he doesn’t think that this is the successor.

I don’t think it has anything todo with KPL, it’s just VS with a couple of addons, so I guess we can write our new block buster xbox 360 game (which runs fine too on vista) in C# 🙂

Well this is sort of the mission statement that the KPL team had when they were thinking about the next version because the current KPL is too restricted in it’s IDE when you want to take it a step further.

XNA brings xbox360 technology available on XP(+) and in a managed way. Previously we had Managed DirectX on top of DirectX but this isn’t really supported anymore AFAIK. We cannot use it for xbox360 development either because it lacks the xbox feature set. Although you could argue for hours about this :-).

So now we have XNA! A neat and nice managed environment but we don’t have the support from it from within Visual Studio. So Microsoft developed an extension called ‘Game Studio Express’ and not only does it support XNA it seemes that it also comes with some cool tooling like a modeller (why else would Autodesk be part of this). My guess is that is also has the nice high-level framework just like the KPL has to create tile based (horizontal/vertical scrollers) and (as Dennis said) simple 3d games with build-in physics which can be seen at the XNA Team Blog. The example at their site shows some sort of Marble Madness (a mid 80’s game classis) on steriods.

So I will download the bits on august 30 because the beta will then be available according the press item.

Kids programming language becomes game studio express?

I just read an article about a new product at Ars-Technica called Game Studio Express that Microsoft is planning to launch.

Microsoft has a product called KPL (Kids Programming Language) to easily create nice graphical applications in minutes. It lacks features in the IDE when you want to get deeper into certain stuff but it is a nice environment to learn basic programming skills. KPL is based on .net 1.1 and I think that KPL has now evolved in a more professional/mature product. I will read the Microsoft Express page more often now because there isn’t any information about Game Studio Express at this moment.

  • Recent Posts
  • Recent Comments
  • Archives
  • Categories
  • Meta