telerik supporting Mono?

Looks like telerik is going to support Mono. This news is certainly interesting for Mono guys as it might give wings to Mono. Which is a good thing, indeed. However, the support (if it is going to happen) will probably be limited to asp.net components - they don't even mention WinForms at this point. I assume that running WinForms controls on Mono is a different story because WinForms controls are still pretty much tied to Windows API for performance reasons. I wonder if the situation will change with adoption of WPF where there is no need to hook into Windows API directly.

UPDATE: This news is not new news but old news (2 years).

HTC is giving a finger to its customers

I already reported about presumably lack of drivers in newer HTC devices. At the time it was all speculation. Now we have an official response from HTC. They are basically saying:

Yes, we advertise the devices as great, the devices have actually great hardware but we don't include proper drivers because it would take time and effort from us. Thus the devices perform worse than years older devices but it is still good for you. We won't provide drivers for actual devices, no, that would take time and effort from us. Instead, since you demand it, we will sell you future devices with such drivers, if you really want it. Maybe.

Now, let's play a couple of analogies. Let's say you bought 64 of the newest top notch graphic card, that features a zillion of pipelines and 64 way SLI. You plug them into your mobo that supports 64 SLI graphic cards and try playing Duke Nuke'm 4 only to find out that graphics perform same as with a single 4 year old graphic card. The reason being drives not included. Nor they are available at all. What? You did assume drivers were there?

Let's see a car analogy. You buy a great car, that includes a turbo charger. Yet, the acceleration and top speed are low. The reason being turbo charger is not working because is not connected. And you can't connect it since nobody is selling connection cables. What? You did assume turbo charger will work?

Now, let me state this clear, as there is some misunderstanding in the air. It is not just about video playback speed and quality. The entire UI is slow. Try running Windows in safe mode with VGA mode enabled and you'll get the point. This lousy UI performance casts a very dark shadow to [MS] Windows Mobile, too - many says that the slowness is because Windows Mobile sucks. Perhaps, but the core reason is the lack of hardware acceleration. No wonder that iPhone had such a success. In this case Apple did an integral product, not just created good hardware and throw it to the customers. No, they actually provide proper software, too. (I am still in favor of Windows Mobile devices though for other reasons, such as programmability). Looks like the Windows Mobile device manufacturers lack of common sense when comes to usability.

So, what does the biggest Windows Mobile device manufacturer do when its customers point out that it is selling an underperfoming device just because lack of proper drivers. Will they rectify the problem and provide proper drivers? Will they provide proper drivers for a small fee? No, HTC shows a proverbial finger at its loyal customers (HTC is also mentioning how much they value their customers in every press release). I only hope that this attitude will backfire on them.

The biggest mystery of this story is, why isn't HTC including these drivers by default. I mean what company wouldn't like to have best performing devices out there? I presume that there are two basic reasons:

  1. They are plain stupid (they don't see why those would be required, even now, with iPhone UI performance out there)
  2. They are cheap. Which is stupid again. Because they won't spend money on better software they'll loose additional customers. But if they did spend it would be certainly an overall profit for them.

I really can't think of other reasons.

So, it is not just about the lack of drivers, what really is sad, is the response and attitude from HTC.

But hey, let's give the finger back - I won't buy a HTC device again and I am sure that many others won't as well.

VS2008 SP1?

I just read an interesting post about debugging enhancement for Visual Studio 2008 SP1. Right, the post isn't interesting just because of new features but also because it actually mentions the existence of SP1. Looks like we might see SP1 earlier then expected :-)

Revolutionary approach to check whether connection to database will work for next command

As we all know, an open connection to database server might drop for a reason or another whenever. And a dead connection is one of the reasons that our command against database server might not succeed - instead we'll get an exception. I mean, you can't know in advance if the command will succeed and connection will hold for the lifetime of the execution. It turns out that all who believed the above were wrong.

You can actually predict the success of command execution. Meet ping pong test:

Dim WithEvents Pong as New Ping() Pong.Send(IPAddress) Private Sub Pong_PingCompleted(ByVal sender As Object, ByVal e As _ PingCompletedEventArgs) Handles Pong.PingCompleted If e.Reply.Status <> IPStatus.Success Then GiveUP() ElseIf e.Reply.RoundtripTime > 750 Then TryAgainLater() End If End Sub

The test above is suggested from a guy in ado.net/vb.net newsgroups. He asserts that based on the ping pong success one can predict whether connection to the database server is good, database server is up and running, will execute our command connection and will hold to the end of our command execution.

If one can extrapolate all that knowledge from a simple ping, perhaps there is even more knowledge in i.e. tracert? Is it possible to extrapolate everything (including future and past) from these simple utilities? Who knows.

Read more in "Checking for table existence" thread.

Disclaimer: This post is not serious. It is just reaction to at least funny and at worst dangerous claims (if one takes them as granted) in the newsgroups. The ping pong test just lets you know that server (not database server) is responding to ping command. Nothing else.

HTC devices and lack of proper drivers

If you are considering to buy a HTC device or already have one then you should definitely visit this website: HTCClassAction.org. IOW a range of HTC devices that have Qualcomm CPU (MSM7200 and MSM7500) lack of proper drivers. I own a TyTN II and I can confirm that UI is really crappy slow while the paper specs looks far better.

Now, why would a manufacturer decide to cripple its devices? My guess: most probably because there are no proper drivers from Qualcomm for Windows Mobile. Yet. So we all have to wait for proper drivers to emerge. And here we get a real problem. HTC is playing dumb, denying the problem and stalling which is a completely wrong attitude from such a company. Instead of saying something like: "Qualcomm screwed us with not providing the drivers, we are pushing them, will update drivers asap (i.e. month/year) and sorry for all the problems" they are playing dumb. "Luckily" the number of angry users is raising, petitions are being signed, news is spreading through online community and lawsuit is being prepared. And perhaps HTC will change the attitude, after all the public image is important and even HTC should understand this.

At the end, even though we might get proper drivers, a black spot will remain on HTC for a long, long time. The fact how they are dealing with the problems might turn away a lot of existing and potential customers. I hope that this will serve them as a lesson where to improve.

A part of .NET Framework Source Code is available for debugging purposes

Great news. [MS] finally released a part of .NET Framework Source Code for debugging purposes. A move that didn't even seem possible a year or so ago. Anyway, these are the assemblies available for inspection. If I understand properly more will follow.

  • Mscorlib.DLL
  • System.DLL
  • System.Data.DLL
  • System.Drawing.DLL
  • System.Web.DLL
  • System.Web.Extensions.DLL
  • System.Windows.Forms.DLL
  • System.XML.DLL
  • WPF (UIAutomation*.dll, System.Windows.DLL, System.Printing.DLL, System.Speech.DLL, WindowsBase.DLL, WindowsFormsIntegration.DLL, Presentation*.dll, some others)
  • Microsoft.VisualBasic.DLL

Read more about how to enable symbol/source code loading in Shawn Burke's post and don't forget to install this Visual Studio 2008 QFE (otherwise you'll be bugged with license agreement windows all the time).

Read also license agreement clarification (from Scott Guthrie's post) about possible concerns:

The .NET Framework source is being released under a read-only reference license. When we announced that we were releasing the source back in October, some people had concerns about the potential impact of their viewing the source. To help clarify and address these concerns, we made a small change to the license to specifically call out that the license does not apply to users developing software for a non-Windows platform that has “the same or substantially the same features or functionality” as the .NET Framework. If the software you are developing is for Windows platforms, you can look at the code, even if that software has "the same or substantially the same features or functionality" as the .NET Framework.

Righthand Dataset Debugger Visualizer goes 2008 and looses expiration restriction at the same time

As a (late) new year gift I've removed annoying expiration restriction from my dataset debugger visualizer. Find the 0.9.12 update here.

I've also rebuilt it for Visual Studio 2008 version which will be the only one supported from now on. Find the 0.9.12 version for 2008 here.

Read more about Righthand Dataset Debugger Visualizer.

A contribution to the Webheads CoP

Saša is doing some online community work for TESOL EVO BaW08 event. A part of her work is to create a nicely formatted weekly digest of forum threads (hosted on Yahoo forums). Nice digest is then published on BaW08 Wiki. Since the work is tedious I've created an application, named Webhead Digest Parser, for her and any other member that will do the same work. Using this application cuts 90% of the copy&paste&format work. Instead the user can focus on organizing the messages and other entities. Once the messages, groups and authors are organized the user can Export the output to clipboard and paste it into their Wiki site. You can read more about in Saša's blog post.

Here is an application screenshot:

shoot

The application is built on .net 3.5 framework and even uses some LINQ stuff.