All posts by onlyconnect

Scott Guthrie on .NET futures

I’ve posted my interview with Scott Guthrie, from the UK Mix07. It covers topics including LINQ, Silverlight, the work with Novell/Mono on Moonlight (Silverlight for Linux), ASP.NET futures including MVC, and offline web applications.

Guthrie is a General Manager at Microsoft, responsible for most of the development teams working on .NET. He did some excellent presentations at the UK Mix, intermingling live coding and demos with slides, talk, and dealing with ad-hoc questions – not an easy task.

There were several things I found interesting in his answers to my questions. On a technical level, the way Microsoft’s various implementations of the Common Language Runtime share code is intriguing. In particular, I was fascinated to learn that Silverlight and the desktop CLR are built from the same code tree. There is a second code tree for the CLR, but it is for the Compact Framework, not for Silverlight. The implication is that the performance of Silverlight and its compatibility with other .NET code should be pretty good.

How then is Silverlight much smaller than the desktop CLR? The reason is that most of the Framework library is missing. That’s the trade-off.

Another point of interest is the strength of Guthrie’s reaction when I asked about offline web applications, and Microsoft’s platform versus other approaches such as Google Gears and Adobe AIR. When a spokesperson takes the trouble to trash the competition, it is often a sign of concern.

CodeGear’s Ruby on Rails IDE is released

CodeGear has released its IDE for Ruby on Rails. Called 3rdRail, it installs an instant Ruby on Rails environment, and features code completion, project management, refactoring and integrated debugging. The Eclipse-based IDE runs on Windows, Mac and Linux, and a 30 day trial is available. I’m downloading it now.

Technorati tags: , , , ,

Want a job? Learn Silverlight, not WPF

I keep an occasional watch on technology trends in the UK by the haphazard technique of browsing to Jobserve.com, bashing in some developer platforms, and seeing how many vacancies come up. I last blogged about this in August 2006, and before that in January 2006, March 2005, and August 2004.

Real-world job vacancies trail the conversation we have about cutting-edge web platforms by some margin. To give you an idea, in March 2002, three months after the first official release of C#, Jobserve had just 153 vacancies for C# developers, compared to 1894 for VB and 2092 for Java. Today, C# has 2933, VB and VB.NET 1906, Java 3741.

But that’s not what caught my eye when I looked this morning. I searched first for WPF, and then for Silverlight. WPF went final in November 2006, at about the same time as Vista was released to manufacturing. That’s nine months ago, but Jobserve has only 28 jobs which specifically mention WPF.

Silverlight 1.0 was released earlier this month. It’s a great video player, but many developers are waiting for Silverlight 1.1, due sometime in 2008, which supports .NET programming as well as multimedia. Component vendor Infragistics told me at the UK Mix07 that it is not bothering to release components for Silverlight 1.0, but has lots in the pipeline for 1.1. Keen to work with Silverlight in the UK? Jobserve has just 30 jobs to choose from.

The numbers are tiny (thought let me note, even CodeGear’s long-established Delphi can only muster 93 jobs), but I’m intrigued that Silverlight is actually a hair ahead of WPF in this context. Tomorrow it may be different; but it accords with my own assessment. I like WPF; it’s a better API than Win32 for coding a GUI. But it is a hard sell to developers of those boring business apps that make up the bulk of software development today. Unless you are making big use of visualization, it’s likely you will be more productive with tried-and-tested Windows Forms, or native Win32 code.

Silverlight is different. It is an immediate win if you have desktop .NET apps which you would like to convert to web applications, or ASP.NET apps for which you would like a richer client. Why Silverlight and not WPF? For one thing, cross-platform, essential for public web applications and very useful internally as well, with all those Mac-using designers (and now the CEO wants a Mac too). For another thing, lightweight deployment. When you install or upgrade the .NET runtime on a Windows box, you hold your breath as it updates a gazillion system components and hope that no bizarre error code appears. When you install Silverlight, you just click OK to a browser dialog, and it works.

The contradiction in the title of this post is that both Silverlight and WPF use XAML, so in learning one you are to some extent learning the other. Nevertheless, I now believe that Silverlight will be a more significant platform than WPF, and I’ll be interested to see if future job vacancies back up that prediction.

Update: Ryan Stewart has some US figures which are more positive for WPF, though again the absolute numbers are small. Interesting to watch.

iPod database successfully hacked – for now

A couple of days ago I blogged about the database hash in new iPods, which prevents their use with song management software other than iTunes. There is no iTunes for Linux.

The good news is that apparently the hash has been cracked, “using a debugger on Windows.”

Miguel de Icaza goes on to observe:

Breaking the hash is not really a long-term solution, as they can keep making the process harder every time. The long-term solution is for iPods to have a standard interface that third parties can communicate with.

Indeed. Of course, if iTunes and iPod communicated through a standard API, and if Apple would license its DRM or support alternatives, then any hardware vendor could sell iPod-compatible hardware, any software vendor could come up with substitutes for iTunes, and any online music store could compete with Apple’s official one.

Commoditization. Something Apple will do anything to avoid.

Technorati tags: , , , , ,

New iPod locked more tightly to iTunes, will not work with Linux

Apple has apparently made some changes to the iPod that make it increasingly difficult to use with anything other than iTunes. Since iTunes does not run on Linux, this affects Linux users more than anyone.

I wrote a piece a while back on Linux multimedia, and was impressed at how well my old iPod Photo works with Amarok on Linux. I have this iPod formatted for the Mac, since iTunes seems to work better on OS X. The only change I needed was to turn off journalling on the HFS+ file system. So what’s happened now?

According to this post, Apple has encrypted the iPod’s database. If you write to the database other than with iTunes, the iPod firmware will report that it is empty.

How about replacing the firmware completely, say with Linux? Bad news there as well – Apple has encrypted the firmware too. See ipodlinux.org for more details. In consequence, you can only hack the firmware on older models.

The change to the song database is more significant. Only a tiny geek minority would be willing to replace their firmware, but there are more people who like the the iPod but not iTunes. This may be damaging for third parties like J River, which offers iPod-compatible media center software.

See also Mike Elgan’s article on Is Apple the New Microsoft; and also note how the piece has over 1000 “Do not Recommend this story” votes from enraged Apple enthusiasts.

There is also a discussion on slashdot.

Update: more commentary from Miguel de Icaza (of GNOME, Mono fame) and Cory Doctorow – the usual suspects, I guess. “This has nothing to do with preventing piracy — this is about preventing competition with the iTunes Store,” says Doctorow.

Technorati tags: , , , , ,

Tried Vista speech recognition yet?

I had not, but gave it a try today. It is almost a hidden feature, but if you go into Control Panel and double-click Speech Recognition Options, it all starts happening.

I have a few advantages. My microphone is of high quality, I use an external mic preamp, and my office is relatively quiet. After half an hour of so going through the tutorial (which also does basic voice training), I was ready to go. I have no complaints about the ease of setup. Once speech recognition was enabled, I simply opened Word and started dictating.

There are two ways to look at speech recognition. You can consider it an accessibility feature for users who prefer not to type, for whatever reason. For example, RSI is a common problem for writers and computer programmers. Alternatively, you can consider it as better way of entering text. After all, most of us can speak faster than we can type. Ideally I would like to use it to assist with transcribing interviews.

I had a simple question. Can I get a chunk of text into Word more quickly with speech recognition than with typing? To try this out, I used a few lines that are indelibly imprinted into my brain, since they make up the first stanza of Wordsworth’s poem Daffodils which I learned at school.

The test

First, I typed it. It took me about 25 seconds, which means I type at over 50 wpm (about 70 wpm according to this test).

Next, I tried speech recognition. I tried it several times, to give it the best possible chance. I found I could do the initial text entry in around 15 seconds, but correcting errors took longer. The best I managed for the entire stanza was about a minute – twice as long as typing.

The problem is that certain words and phrases seem to be difficult for speech recognition to get right, and correcting these takes so long that it wipes out any gains from the easy ones. In my case, the line that Vista struggled with most was this one:

That floats on high o’er dales and hills

As I repeated the experiment, I got different variations:

That floats on high powered tables and hills

That floats on high on the walls and hills

That floats on high ideals and hills

The speech engine will always try to make sense of what you say using its dictionary and who-knows-what clever algorithms, but this can work against you. In this case, it is really just the the word “o’er” that trips up the engine. If I dictate instead:

That floats on high over dales and hills

it usually transcribes perfectly. Unfortunately, in trying to make sense of “o’er”, it usually messes up several other words as well.

Does this mean that a poem with elided text is just a difficult case? Possibly, but unfortunately technical writing seems to pose the same kinds of problems. Everything is fine for a line or two, and then a difficult word or phrase causes garbage to be inserted into your text. Speech correction in Vista is nicely implemented and works well, but it takes time.

Pros and cons

I don’t mean to put you off. I’m actually impressed with Vista’s speech recognition, though it is early days and I’m not sure how well it compares to alternatives like Dragon NaturallySpeaking. I could definitely get some work done, and considered as an accessibility feature, it seems pretty good. Unfortunately, it doesn’t seem quite good enough to be useful even to a proficient typist – at least, not without more time spent voice training and learning to get the best out of it.

Technorati tags:

LiveStation uses peer-to-peer, Silverlight for live TV

My final report from the UK Mix07 “Sneak peeks.” We were shown LiveStation, a Silverlight application which uses peer-to-peer technology developed by Microsoft Research to show live TV in a desktop application. Desktop and Silverlight? Yes, the app we say uses browser hosting to transform Silverlight into a desktop runtime. This is not too good for the cross-platform aspect, though it would seem possible to do the same thing with say WebKit (Safari as a component) on the Mac.

The broadcast quality was adequate for casual viewing but not great. However the player does look hassle-free to operate. Unlike the BBC’s troublesome iPlayer, this is for live TV rather than playback of previous broadcasts. Still, with both Silverlight and Flash supporting high quality video codecs, running cross-platform, and offering smooth installation with plenty of scope for interactivity, it looks like the BBC has some good options if it decides to re-examine its iPlayer technology.

The company behind LiveStation is Skinkers, which acquired peer-to-peer technology from Microsoft in exchange for a minority equity stake.

Technorati tags: , , , , , ,

Transactional memory draws applause at Mix07 UK

Simon Peyton-Jones from Microsoft Research in Cambridge enthused about transactional memory during the “Sneak Peeks” session at Mix07 in the UK.

I have mentioned this before on this blog; it is also favoured by Herb Sutter as a better way to do concurrent programming.

Peyton-Jones says it will eliminate a whole class of bugs from our code; perhaps this was one reason for the warm reception for his presentation.

He is a Haskell fan, and says this is best way to experiment with transactional memory now. It is not something that can easily be introduced into other languages, but will require some radical re-engineering.

Technorati tags: , , , , ,

Microsoft to support PHP in Expression Web 2.0

The closing session of UK Mix07 was a “Sneak peeks” in which we were shown a variety of snippets of varying degrees of interest. One was a brief glimpse of Expression Web 2.0, Microsoft’s web design tool, showing “PHP script” on the File – New menu.

The extent of this support was not discussed. The minimum would be some level of syntax highlighting, which would be trivial to implement, so this may not amount to much. Still, it is interesting as a sign of the times. When I spoke to some folk from Zend a couple of months ago, they emphasised their IIS support and good relationship with Microsoft, so it looks as if both sides want to play nicely together.