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)

December 2007 Blog Posts

Merry Christmas and Happy New Year

Last year I wished an Happy Christmas kiwi style, and this year it will be:

santa-claus-mac

MERRY CHRISTMAS AND HAPPY NEW YEAR!!!

I'll be going ice climbing for this Christmas Holidays, so... see you next year.

.NET Ajax Survey results

A few days ago Ajaxian published the results of a survey about the usage of Ajax among web developers, but since it was too generic for my taste I decided to make one targeted only to .NET developers.
I got a bit more than 1000 responses in less that 2 days, and since the results were starting to stabilize (and the response rate was very low compared to the 50 responses per hour of the first day), this morning I decided to close the survey and then analyze the data and publish the results.

The results

Top10 But let's have a quick look at the results and later do some more thoughts: among the 95% of the .NET developers that said they are using some flavor of Ajax either in production, development or prototype, the most used Ajax toolkit is ASP.NET Ajax, with 73,7%, followed by the Ajax Control Toolkit which is used by almost half of the .NET developer that are using Ajax.
And the second most used framework after the Microsoft one are Michael Schwarz's Ajax.NET Professional and jQuery, both used by 13,3% of the users.

And guess what? The most used toolkit for building web applications is ASP.NET Webforms, used by 97% of the developers, and 90 percentage points behind, with 7,6%, is the second most used toolkit: ASP.NET MVC.

Let's now have a look in detail at the data collected, doing some more analysis.

ASP.NET Ajax and Ajax Control Toolkit

First I want to point out one strange result: I would have expected that people using the Ajax Control Toolkit also checked the ASP.NET Ajax box. But this didn't happen, probably because some didn't take into account that the Control Toolkit is an abstraction above the core ASP.NET Ajax library. Adding to the ranks of the ASP.NET Ajax users also the ones that only checked the Control Toolkit, the final percentage grows to 84%: this means that 8 out of 10 .NET developers use ASP.NET Ajax.

Partial Rendering vs Core ASP.NET library usage

Option Response %
Partial Rendering / Update Panel 91,8%
Ajax Library 53%

This is quite an impressive result: only 8% of the ASP.NET Ajax users don't use the partial rendering trick. Even though it's just a trick that, technically speaking, doesn't have anything to do with "real" Ajax, most of the developers used this quick approach to built Web2.0-like applications.

But half of them also used the core library. In my opinion this validates the design decision made by Microsoft with their ASP.NET Ajax library: it allows easy and quick implementation of simple things or when performance and optimization are not a issue, but it also enables developers to go beyond the surface, to use a more pure development paradigm and to leverage the core library to do more advanced or when there is the need to optimize things.

Commercial tools

Compared to results of the Ajax survey made by Ajaxian, where almost nobody reported using commercial libraries, in the .NET space the 5th most used library is a commercial toolkit: Telerik RadControls, used by 11,7% of the developers.

But they are not alone, as you can see from the following list

Option Response %
Telerik RadControls 11,7%
Infragistics 4,9%
ComponentArt 3,6%
DevExpress 0,7%
ESRI Web ADF 0,3%
Backbase 0,1%

And what if you are not using ASP.NET Ajax?

Looking only at the 13,4% that is not using ASP.NET Ajax, the most popular library is Ajax.NET Pro (33,1%), but almost 1 out of 4 still believes that hand coding Ajax request is the best way to go.
But if we exclude Ajax.NET Pro, the results are similar to the ones of Ajaxian's survey: Prototype, jQuery and Script.aculo.us are the preferred options.

Option Response %
Ajax.NET Professional 33,1%
Raw Ajax 24,4%
Prototype 23,6%
jQuery 21,3%
Script.aculo.us 15%
Telerik radControls 12,6%
Ext JS - JavaScript Library 12,6%

The hard core developers

If 97% of the developers is using Webforms, it also means that 3% of them is not using it.
What are these hard core developers using?

Option Response %
ASP.NET MVC 45,5%
MonoRail 27,3%
SubSonic 13%
WCSF 9%

These ALT guys (2,3% of the total) are also using ASP.NET Ajax (40%), but jQuery is closer with 36,4% and then comes Prototype (27,3%).

Worth noting is that there are more people out there doing some kind of development with the CTP of the MVC framework for ASP.NET then people using MonoRail or SubSonic.

The vintage developers

There is still one category of developers: the ones doing only ASP Classic development. They are only 7 (0,7%) and are mostly using hand coded Ajax calls (60%).

Diving deeper into the data

What about the ones that are using Subsonic but not using jQuery?
And the ones using YUI in conjunction with Script.aculo.us?
Surveymonkey, the tool I used for the survey, provides a powerful filtering engine, so if you want to dive deeper into the data and do your own data mining, you can look at the results online and even download all the 1011 responses in a DB-like format so you can do some SQL queries yourself.

Wrapping up

After all this talking is time for some conclusions. From these data it seems like ASP.NET Ajax is in the toolbox of almost all the .NET developers out there, and that only 1 out of 10 tried different approaches using jQuery, Prototype and other server agnostic libraries.

And, the preferred web toolkit is ASP.NET Webforms, but the ASP.NET MVC seems to be seen as a very good alternative by many people.

Last thought, almost all the ASP.NET Ajax developers are using the partial rendering trick.

I want to thank Steve, Brad, Wally, Scott, Michael and anyone else that published a link to this survey.

And now, back to my new Mac smile_regular.

kick it on DotNetKicks.com

Technorati tags: , ,

Cinema Display + MacBook = coolest desk ever

2123745830_ef0b35bd69

This is how I spent the evening: unboxing the boxes, cleaning up the mess on my desk, connecting all cables and looking for a good position for the display and the MacBook.

I also took some pictures of the whole unboxing process: you can have a look at the pics on my flickr account: MacBook unpacking set.

Technorati tags: , , ,

Who said IE doesn't support Acid2?

Someone filed a formal complaint to the EU because IE didn't support the web standard, in particular didn't pass the Acid2 test.

Drum roll please.... IE8 change num 149329 now renders the Acid2 face.

More info on the official announcement on IE blog: Internet Explorer 8 and Acid2: A Milestone

You can also watch a movie on Channel9: IE 8: On the Path to Web Standards Compliance - ACID 2 Test Pass Complete

Technorati tags: ,

MacBook unpacking: -1

Yesterday evening, after work, I went to the Apple store in Milano to buy the 20" Cinema Display, the USB keyboard and the wireless mouse, and today, just before going to work, the TNT delivery man gave me the MacBook I ordered almost 2 weeks ago.

IMGP1978

IMGP1975 IMGP1976

This evening will be unpacking and setup time!!!

Technorati tags: , ,

Ajax usage among .NET developers

UPDATE: The survey is closed and I just published the results of the survey: .NET Ajax Survey results.

Given the results of Ajaxian's survey about the state of the usage in the web development community, I decided to make a new survey, but this time only focused on .NET developers.

Please click here to take the survey.

I'll collect the results and then make some more stats.

The questions are the same as the Ajaxian's one:

  1. Are you using Ajax in production, development, proof of concept or not using it at all?
  2. Which web framework are you using (ASP.NET WebForms, Monorail, ASP Classic)?
  3. Which JS library or Ajax framework are you using?
  4. If you are using ASP.NET Ajax, are you using the partial rendering or only the Ajax library?

I included all the frameworks and libraries that had more than 2% share on the other survey, but just in case I forgot something, please add it.

UPDATE: Just some partial stats before going to bed at 2AM: 415 responses, ASP.NET Ajax leads with 80% and second is AJAX Control toolkit (17% but those are all included inside ASP.NET Ajax). Then comes jQuery with 13% and raw Ajax with 12%.

UPDATE 2: 24 hours after the beginning of this survey there have been 715 responses, with ASP.NET Ajax going a bit down to 75%, Ajax Control toolkit climbing up to 40%. Then Ajax.NET Pro, jQuery, Prototype, Telerik radControls and raw Ajax all around 11%. I'll keep the survey open till tonight (Italian time) and then tomorrow I'll post the results.

kick it on DotNetKicks.com

Technorati Tag: ,,

ASP.NET Ajax usage floats around 35%

UPDATE: I setup a survey focused only on .NET development here.

Ajaxian, blog focused on everything related to Ajax development and JS libraries, last week announced a survey about the state of Ajax usage among developers and in the enterprise. The questions were simple:

  1. Are you currently using Ajax?
  2. Which programming language/web framework are you using Ajax in conjunction with?
  3. Which Ajax toolkit, framework or JS library are you using?

Yesterday they published the results of the survey, which has been answered by 2618 people.

dec2007top10_2 Before giving some thoughts on the data collected we just have to remember that the survey has been mainly advertised on the Ajaxian website so might be a bit biased toward the usage of Ajax and toward PHP/Java developers (46% the firsts, almost 30% the seconds).

Richard Monson-Haefel of the Burton Group, the one that set up the survey, also wrote some thoughts on the data.

Among the most used libraries are still Prototype and Script.aculo.us, which maintain the lead over the past three years, but more libraries are gained market share only the last year (jQuery and Ext JS).

It's interesting to notice that the 4 more used libraries are separated by less that 12 percentage points, which means that there is not a clear winner yet.

Another interesting thing to notice is that the usage of raw Ajax felt down from almost 40% of 2 years ago to just 13% of 2007.

But I wanted to analyze the data about what I care the most, which is the MS development world: only 14,6% of the people that answered the survey use ASP.NET. So I dove into the survey's results and worked to produce some stats.

Among the 381 ASP.NET developers that answered the survey the results are as follows:

Library used

%

ASP.NET Ajax + Atlas 36,3
Prototype 34,6
jQuery 34,4
Ext JS 29,7
Script.aculo.us 23,4
Raw Ajax 21,3
Mootools 19,2
YUI 15,5
JSON 14,2
Ajax.NET Professional 11,3

What does this mean? That ASP.NET Ajax is the most used Ajax/JS library in ASP.NET development, but a considerable amount of these developers use also server agnostic JS libraries. Again, I just want to remember that this survey has been announced mainly on Ajaxian, so probably the users, even the ones that use ASP.NET, are leaning more toward the usage of pure JS libraries compared to the standard ASP.NET developers: which, in my opinion, means that probably among the majority of ASP.NET developers the usage of the MS ASP.NET Ajax framework is even higher. Also, 35% of these developers also used PHP and 14% used Java, so the figures above might include libraries they used in conjunction with those other server side frameworks.

I setup a survey on the state of Ajax only in the .NET space here.

kick it on DotNetKicks.com

Sick of Opera

I never really understood the business model behind Opera, a company that is selling a browser when everybody else in the World is giving it for free, both because it's included in the OS (IE and Safari) or because it's an OpenSource project (Firefox, Mozilla).

Now Opera, probably because is seeing that his business model was wrong, has filed a formal complaint to the European Union. Then his CTO wrote an open letter to the web community. And in doing this, in my opinion, they showed they real intents:

  • in the formal complaint, the one that the European Commission will have to evaluate, they asked "to obligate Microsoft to unbundle Internet Explorer from Windows and/or carry alternative browsers pre-installed on the desktop" and then asked to obligate IE to comply to the web standards
  • in the open letter they cite the formal complaint saying that they asked the EU "to force Microsoft to support open Web standards in its Web browser, Internet Explorer" (and second "that Microsoft frees Internet Explorer from the Windows platform")

Why is the official document about the anti-trust complaint while the open letter is about the Web Standards? This is being manipulative.

Also other important person in the web community are sharing my thoughts: Eric Meyer said,

It’s the wrong move at the wrong time, sending precisely the wrong signal to Microsoft about the importance of participating in development and support of open standards, and I can only hope that it comes to a quiet and unheralded end.

Molly E Holzschlag, now part of the IE team, is worried that now Microsoft could end the very good feedback process they started with the web community:

What does anyone do when they’re threatened? Usually shut down all communication. Which is exactly what we as developers and designers of the Web are largely advocating MUST END.

And another "important" person in the Web community, Andy Clark, part of the W3C's CSS working group, is also worried about what could happen to the CSS standardization process at W3C:

What I am concerned about is how Opera's action will further destabilize the W3C's CSS Working Group of which both Opera and Microsoft post representatives. I am concerned that this action will irrevocably damage the promise and progress of CSS3. Not for the first time, Opera's action also calls into question whether we, as web designers and developers, can trust the W3C and their corporate participants with the development of our future tools.

And also reminds us that:

But let's not forget that Opera is a software development company that earns its living from making software that is deployed across a variety of devices. Their implementation of CSS and other standardized web technologies may come in part from their passion for standards, but it also comes from their need to make a product that they can sell to the likes of Nokia and Nintendo. Let's not kid ourselves, Opera is as much a commercially driven organization as Microsoft.

Let's see what is going to happen, but to me, now, Opera lost all my respect.

UPDATE: Asa Dotzler from Mozilla corp collected quite a few articles, mostly with bad comments against this action by Opera: opera calls for ec investigation of microsoft.

Note: Emphasis is mine

kick it on DotNetKicks.com

Technorati Tag: ,,,

One year of blogging

A friend just made me notice that yesterday it was exactly one year from my first real post on Codeclimber. With all the excitement for tomorrow event and for the new Mac I missed this important day.

I'm not going to do a detailed analysis of what happened during this year of blogging as the one I did in July, but I only want to share with you a few numbers.

The number of subscribers to the RSS feed is steadily growing at the rate of 100 new subscribers every 2 months (actually a bit more than 2 months), and now I'm floating around 500 feed subscribers, which is something that is well above my last year expectations.

feedstats

Then comes the number page views which are around 400-450 views per day (during the week, in the weekends the number falls down to 150-200).

stats

I usually don't have a plan behind the topics of my posts as I usually write things that I came across while coding both for job and for fun, but given the fact that I'm mainly a web oriented developer, you might start to see more posts about Silverlight and ASP.NET Ajax. And also my experiences developing .NET on the Mac smile_regular. And, hopefully, about what's going on with Subtext.

Technorati tags: , , , , ,

Web Development Workshop 2008

Tomorrow I'm going at the first meeting organized by the Italian .NET UserGroup UGIdotNET since I came back to Italy this August, and I'm super excited about this:

I hope I can get to the Microsoft auditorium since these days there a nasty truck driver's strike in Italy, and all petrol station ran out of gasoline, and my Vespa is almost empty.

How to install ASP.NET 3.5 Extensions Preview

If you are like me, and don't read the instructions and the readme files, you might encounter a few problems in getting the ADO.NET designer to work.

To enable the ADO.NET designer you need to install the ADO.NET EF Tools. But in order to install it correctly you have to install also the ADO.NET EF beta 3 and a cryptic XML Editor QFE in the right order.

So the correct installation order is:

  1. Visual Studio 2008
  2. XML Editor QFE
  3. ADO.NET EF Beta 3
  4. ADO.NET EF Tools (Dec 07 CTP)
  5. ASP.NET 3.5 Extensions Preview

And last you might want to download the MVC Toolkit, which includes some rendering helpers and dynamic data support.

Hope this helps.

kick it on DotNetKicks.com

How to install a Windows Mobile emulator

This might seem a bit old topic, but every time I set up a new machine for developing for windows mobile I always forget where to find the emulator, which one to choose and how to set it up.

Today I found an article which explains everything you need to do to test you mobile applications without using the real device.

First you need to install the latest version of ActiveSync (which, at the time of writing is 4.5) and then install the SDK for the platform of your choice:

The article can be found here: Using the Windows Mobile 5.0 Emulators in Visual Studio 2005 and, as the title says, it's about Windows Mobile 5 and Visual Studio 2005.

If you want to test your applications on the latest version of Windows Mobile 6 the difference is that you have to download the SDK for Windows Mobile 6, keeping mind that the names of the version has changed and that now there are 3 flavors of Windows Mobile:

  • Windows Mobile Standard (which was Windows Mobile for Smartphone)
  • Windows Mobile Classic (which was Windows Mobile for Pocket PC)
  • Windows Mobile Professional (which was Windows Mobile for Pocket PC Phone Edition)

For the first version you need to download the Standard SDK, while for the other 2 versions you need the Professional SDK.

Both the versions can be downloaded from Microsoft Download site: Windows Mobile 6 Professional and Standard Software Development Kits Refresh

Technorati tags: , ,

IronRuby book by Ivan Porto Carrero

I thought I already mentioned it previously, but probably the things that happened to me in the last month made me forget to mention it.

But going to the point, my Belgian Kiwi friend Ivan is starting to write a book about IronRuby. Congratulations Ivan!!

Technorati tags: , ,

My definitive color VS color schema

I spent some time in the last months playing around with various color schema and finally decided that the original port of the Vibrant Ink schema to VS is still the one that most appeal to my eyes. The one made by Rob Conery is a bit too little contrasted for me.

So here is my VS2008 with the latest version of Vibrant Ink for VS2008 made by John "DLR" Lam.

vscolorschema

Here you can download it. Just remember that this vssetting file include also the other personalization of John, so just import the "Options>Environment>Fonts and Colors" branch of the settings.

UseHttpGet needs you to enable HttpGet in the web.config

If you want to access a web service from an ASP.NET Ajax page or from a Silverlight 2.0 app, you have to decorate it with the ScriptService attribute. This will enable the creation of a JavaScript proxy to call the web service using the JSON notation.

The generated proxy will call the web service using the HTTP POST method. But what if you want to use the GET method? There is another attribute that you can specify to fine tune the response of a single method: ScriptMethod.

Among the possible tuning, you can specify that you want to use GET by setting the UseHttpGet property to true:

[WebMethod]
[ScriptMethod(UseHttpGet = true)]
public string EchoInput(string input)
{
    return "You entered " + input;
}

But this is not enough since be default webservices will not listen for GET, and will raise a "method not supported" error if called with the GET verb.

In order to enable the GET you also have to make a few changes inside the web.config file of your web application (like the ones to enable HTTP POST):

<system.web>
    ...
    <webServices>
        <protocols>
              <add name="HttpGet"/>
        </protocols>
    </webServices>
    ...
</system.web>

But be careful when using the GET verb to call a web service: use it only for safe operations, don't expose sensitive data and only for retrieval operations.

Lorenzo aka eldalie aka Feanor is blogging in English

He made the step and now he has his English only blog, hosted on the MyOpera community site: Lorenzo was the co-founder of the company I worked for before going to in New Zealand. I worked with him for around 5 years: I owe him a lot of my knowledge about web site design and general web development.

He might not be a developer, but he is a geek, one of the best web designer I ever worked with, and his blog is full of interesting posts. And he even started blogging a few months before me, in Sept 2004.

Check it out, I'm pretty sure you will like it:

Technorati tags: , ,