First time here? You are looking at the most recent posts. You may also want to check out older archives or the tag cloud. Please leave a comment, ask a question and consider subscribing to the latest posts via RSS. Thank you for visiting! (hide this)

February 2008 Blog Posts

Suffering of Pre Mix Envy

Today a new psychological condition is born: Pre Mix Envy.

A new condition for developers who want to be in Vegas but can't.

It was coined by Chris Hayuk, a British .NET developer and Silverlight blogger that can't go to the MIX08 event that is starting in a week in Las Vegas.

I would have been to the event as well, and hear from the mouth of ScottGu all the cool announcements that they are going to make (ASP.NET MVC vNext, Silverlight 2.0, IIS7, IE8 and so on), but I guess I'll have to stay up at night and watch the webcast of the event, and then attend the ReMIX event if they are going to make one as they did last year in Italy. Maybe next year...

Can I write a speculation?
They will announce the release of the Expression Studio for Mac. Well... maybe more an hope than a real possibility.

ASP.NET MVC in Action by Jeffrey Palermo

Yesterday I noticed on Jeffrey's blog that the book he is writing on the ASP.NET MVC framework is available now as Early Access Program.

At the moment the first 4 chapters (first as in first to be written, not first as in the order of the chapters) are available for download (not free, you have to pay for the Early Access, but you will get the book as well, once it is published):

  • Chapter 1 - Getting Started: a nice introduction on the MVC framework (this chapter is free for everyone)
  • Chapter 2 - The Model in depth: quite self explanatory, it's about the M in the MVC
  • Chapter 3 - The Controller in depth: this is more interesting, since the C in the MVC is quite a new concept for people used to "standard" webforms
  • Chapter 5 - Customizing routes: how to design the URI namespace of your application, so that it is SEO friendly, hackable and restful

The books is still full of notes, empty code samples areas, but I guess that reading about the ASP.NET MVC framework from one of the guys that helped shaping it is valuable even if I've to deal with errors and missing code samples.

The book will ship in October 2008 so probably many of the code samples and maybe also some explanations are going to be modified with next iterations of framework, probably starting from the one that will be available at the MIX.

Jeffrey is also building an application to support the samples of the book: CodeCamp Server.

PS: the TOC available on the site is not correct: Chapter 5 is about customizing routes, not about customizing/extending the framework

Technorati Tag: ,,

Italian ALT.NET miniconf: small in size, high in value

Yesterday I went to the first conference of the recent born UGIALT.net usergroup. It was my first time at a OpenSpace conference and I really like it.

ugialtnetconf_3.jpg

We talked about ASP.NET MVC, about UnitTesting, TDD, Mocks, and also about code metrics with NDepend and SourceMonitor.

I was the moderator of the session on the ASP.NET MVC framework, and was nice to see all the other bringing to the table their experiences, especially Gianluca that, for each feature of the ASP.NET MVC, made a comparison with MonoRail. We noticed that ASP.NET MVC lacks of a feature that might be interesting: the possibility to name a field like person.Address.City and have it back in the controller with the Person object initialized with a property named Address that in turn is not a "simple" object but is another custom object with another property named City. I know probably you didn't understand anything from this sentence, so here is a link to a post by Gianluca that explains the problem in detail: the post is in Italian, but the code samples are in English.

I think I prefer this kind of discussion-like meeting than the usual one-way ones, where a "teacher" explains a topic to the audience with little room for discussions.

Here are some pictures I took during the event:

Attendants on the left Attendants on the right

As you can see we were only 10 people, but I guess a good size for the first event of a niche usergroup (and it was also held in Saturday, while all the events in Italy are usually held during the work days).

From the right: Claudio, Emanuele, Roberto, Gianluca, Davide, Matteo, SimoneB, Antonio. Not shown in the pics there were also me (the one taking the pictures) and Alessandro Melchiori which had to leave around midday.

We are now planning another meeting in May/June.

kick it on DotNetKicks.com

European Silverlight Competition: the winners

Last week I announced the winners of the competition I took part in, the Polish competition.

Today I just read about the winners of the continental competition on the INETA website (scroll down for the results).

The winner is a Reversi game developed by Dejan Anevski from Macedonia, then a Google Earth clone made in Germany by Florian Kruesch and, as 3rd, a Silverlight RSS reader developed by Radenko Zec from Bosnia & Herzegovina.

Congratulation to all, and happy MIX-ing to Dejan and Florian, that will be showing their work in a few weeks in Las Vegas.

It was a bit sad to see no competitors from Italy.

Feedburner kills all-time stats... no, wait, it was only an error

This weekend, while checking my RSS stats on FeedBurner I noticed that the "all time" option of RSS subscribers was gone.

This thing raised a nest of hornets, with some bloggers accusing Google not to communicate with users, other looking for alternatives, and yet other offering hacks to download the historical data.

The official forum was full of people asking for an explanation since last Saturday. On Monday Steve Olechowski, Product Manager of FeedBurner, posted a comment saying it was a bug and would have been fixed in the next code update, and the same was done on the forum when the code was "pushed" in production.

C'mon guys, we are all developers, we know anyone can make an error, no reason to look for conspiracy theories everywhere.

Actually the Feedburner team fixed the bug in very short time.

Technorati Tag: ,,

Resharper 4.0 EAP: Are you geek enough?

Ivan just IM-ed me with a link: http://www.jetbrains.net/confluence/display/ReSharper/ReSharper+4.0+Nightly+Builds

I've been waiting for a C# 3.0 compatible version since I installed VS2008 back in December: apparently it has been announced by Ilya Ryzhenkov on his blog yesterday but I didn't get the news till now. Here are the release notes.

I'm going to install it: it will not do much harm and if anything goes wrong I can always turn it off as I'm already doing now with the 3.1 since it marks everything "new" as error. I hope it will support also Silverlight project and will not mark variables defined in the XAML as not defined.

PS: I just noticed that Steve announced this as well.

Silverlight Competition: And the winner is...

A few days ago the list of competitors has been published, and today Marcin published the winners of the Polish Silverlight competition:

  1. Iteration burn-down chart: a burn-down chart with nice animations and good usability
  2. BrickMaster: a kind of Tetris
  3. SilverPostcard: a drawing application

My silverlight prototype arrived 5th, which I think is a good position given the full fledged applications taking part in this competition. But not enough to have a chance to win a ticket for the MIX. Good luck to the 3 winners for the Continental Competition.

Daniela and I are working on a v2 of the visualization, so, stay tuned for more "Sharing some Silverlight's bits" posts.


I'm a (DotNet)Slacker on the ASP.NET MVC Framework

Today my first article on DotNetSlackers just got published. It's an introduction to the ASP.NET MVC framework that was released as part of the ASP.NET 3.5 Extensions Preview: it contains an overview of the MVC pattern and how it is implemented inside the ASP.NET framework.

Check it out: ASP.NET MVC Framework – Part 1.

The second part is already in the works, and it will be about testability.

Technorati Tag: ,,,

When the case matters: VS2008 hot-fix bug

A few days ago I installed the VS 2008 Web Development Hot-Fix Roll-Up but yesterday I found a strange bug: when I wanted to create a "new web site" I had an empty dialog, with no project templates and all the field disabled.

emptynewwebsite

On the original post I found a comment from someone with the same problem and ScottGu told him to send him an email: I did the same, Scott answered in a few hours saying that someone will have handled the issue. A few hours later I got an email from Mikhail Arkhipov from Microsoft that pointed me to a post on the ASP.NET forum:

Apparently vs2008 cares for casing in the file paths. I have exported HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0 before applying the hot fix and after. It appears that the only difference between the two dumps (aside from some uninstall info) is that the latter has most of the file paths starting "c:\\" (lower case) when the former had those in upper case : "C:\\".

To anyone who's experiencing similar problem I'd suggest following steps for installing the hotfix:

  • Follow the steps provided with the hot fix release and install it

  • Open regedit and export HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0 to a .reg file

  • Open the .reg file with a text editor

  • Find-replace all "c:\\" to "C:\\", save.

  • Reapply the .reg file to the registry.

And now I can create websites again. Thank you Mikhail and Scott, and of course to Alex Kartavov for discovering the strange bug.

Technorati Tag: ,,

Silverlight Competition: here are the participants

Even if the Italian edition of the Silverlight INETA challenge was closed for lack of participants I still managed to submit my small Silverlight application: Marcin Celej, the organizer of the Polish edition, invited me to take part in his country's edition, and Jose Luis Latorre, the organizer of the continental competition was very kind to allow this exception to the nationality rule. So I submitted my "proof of concept" to the Polish competition.

Unlike Italy, France and the other so-called Western European countries which showed no or very few participants, the Eastern European countries had a lot of submissions. In Poland there were 15 projects submitted.

The Polish jury installed all the applications and made them available on the site. When I first saw the list of applications I was impressed by the quality and completeness of the submissions, which is higher than what I expected after looking at the projects submitted in the other national competitions: full fledged RIA applications, mediacenter, graph libraries, nothing my small "proof of concept" will be able to compete with.

Here the my running application, which is a graph based visualization, with interconnection between nodes, with zoom and pan with keyboard navigation and zooming also with the mouse wheel.

I'll not end up in the first 3 positions of the competition, but you can download the code of my application and see how I implemented it: the code is available for download on the competition's site.

So cold!!

This winter it's getting too warm and the ice falls are not safe to climb, or at least not as fun. But apparently it's warm only on this side of the Alps: last weekend I went cross-country skiing in Engadine and here is what I saw on my car thermometer as soon as I entered the valley:

Immag006.jpg

I think it's the lowest temperature I ever experienced while not doing iceclimbing or mountaineering.

PS: Pardon the blurriness of the picture, but the display is in the middle of the dashboard, right in the middle of the steering wheel, and I took it with my cellphone camera while driving on a windy road.

New Folder in my feed reader: Computational Art

2216203366_dac1da60e2_m.jpg

Computational Art, also known as Algorithmic Art, is a kind of Generative Art, where the masterpieces, usually images or movies, are generated by algorithms: an example is Fractal Art.

This is an area I'd like to experiment with: I always wanted to do something "creative" but I've always been stopped by my bad sense aesthetics. But maybe I would be able to have an algorithm help me generating some cool randomness or simulation.

The programming language will be Processing, also mentioned a month ago by Jeff Atwood in one of his posts, which is a kind of domain-specific language on top of Java.

In the meantime I want to share with you my list of feeds:

The people I've to blame for showing me this cool stuff are Daniela and her colleague Dario

Win on Mac

It's already almost 2 months since I got my Mac and, while all other switcher installed a virtualization software as first thing, I'm still running on Leopard only. Probably because I still have 2 other laptop running on Windows at home (my old one and my work one).

But sooner or later I've to do it: but I've not decided yet what to install.

I'm leaning a bit toward Fusion. I found a very complete benchmarking that says Parallels is better than Fusion (even though Fusion is faster hosting Vista), but it compared Parallels 3.0 with Fusion 1.0 that didn’t have Unity as the current version 1.1, so the results are totally useless IMO.

In the meanwhile I subscribed to the blogs of both Parallels and Fusion:

Now that I submitted my Silverlight app for the INETA competition I'll have a bit more of spare time, so maybe this weekend I'll install Vista on BootCamp and then try the 2 virtualization solutions.

I'm in the Community Credit Hall of Fame

Community Credit Hall of Famers are those contributors whose reputation precedes them in the development community. They are developers and technology evangelists who have contributed so substantially that they become among the forces that really help the development community thrive.

hallOfFame

I just want to thank David Silverlight (for those who don't know, Microsoft Silverlight is named after him) for including me among the Community Credit members that have been awarded in 2008. And also for the kinds words that he put on the Hall of Fame page.

Simone Chiaretta
Simone has been active in the Development Community in some very unique ways. If you view his profile you will see that he has contributions in over 30 different categories. He is an extremely active blogger, blogging almost on a daily basis. He has also supported Community Credit in some very profound ways, the most notable being the developer of the Community Server Add On for community credit. That contribution is only rivaled by his integration of Community Credit into Subtext. With these integrations, he has helped others to get recognized and truly spread the underlying message of Community Credit.

Now I owe him the development a new version of the Community Server AddOn that works on CS2007 as well.

PS: 7 "famers" out of 17 are from Italy

Technorati tags:

Sharing some Silverlight's bits: Full Screen Mode cannot be changed from HTML

I've been working a bit more on Silverlight so here is another quick tip on it. This time it's about supporting the fullscreen mode of a Silverlight application.

ScottGu wrote about this topic back in early days of Silverlight 1.1 (Tip/Trick: Supporting Full Screen Mode with Silverlight) but I had a few problems implementing it: I tried to send my application in Full Screen mode handling an event raised by a control on my HTML page but the IsFullScreen property didn't want to go to true.

Let's first see how to send a Silverlight application in FullScreen mode:

private void OnFullScreenClicked(object sender, MouseEventArgs e)
{
    BrowserHost.IsFullScreen = true;
}

This code can be called from everywhere: Scott added is as handler for the MouseLeftButtonUp event of Silverlight canvas element:

Canvas fsBox = FindName("fullScreen") as Canvas;
fsBox.MouseLeftButtonUp += OnFullScreenClicked;

while I did the same, but with a HTML button:

HtmlDocument doc = HtmlPage.Document;
HtmlElement btnFs = doc.GetElementByID("btnFullScreen");
btnFs.AttachEvent("onclick", OnFullScreenClicked);

But I found out that my version didn't work: even after having set the true, the IsFullScreen property always stayed false.

After a bit of testing I found out that the Full Screen mode cannot be changed if the event that triggers it comes from the HTML/JavaScript side of the application.

Not sure if this a bug or a security feature, but if you find yourself in the need of send your Silverlight application to Full Screen, do it from a control inside the app.

Technorati Tag: ,