Archive for April, 2010

Tweet

As of right now, Twitter in my industry sphere is going mad over not just the iPhone OS 4.0 annoucement, but as part of it Apple’s revision to their developer license agreement. Apple now insists that any applications allowed in the AppStore must henceforth be written in coding languages stipulated by Apple, and they cannot be produced in a third-party application which translates other code to those languages.

There are many points around whether or not this harms competition, but I don’t want to dwell on that here. My point is a little different: Apple just pulled the rug from under a valuable media partner in Condé Nast US. Why? Because Apple’s announcement not only scuppers the likes of MonoTouch, but it derails Adobe’s upcoming release of Flash Pro CS5 too, with its much-vaunted compile-to-iPhone functionality. It’s this media angle which I think is a particularly repulsive part of their move, because it’s not just ‘pesky Flash developers’ who want easier access to write apps for the iPhone and iPad. It’s publishers, too.

Nearly two months ago Condé Nast US went public with a (rather cringeworthy) video of their iPad plans. The article states “tablet”, but make no mistake – check the URL – this was iPad through and through. I should know; I used to work there. Despite its clear naivities in effective finger-based navigation as so deftly pointed out in the Engadget coverage, and whether or not you agree with the timing, Condé Nast announced that day not only a clear and sensible strategy but a key partnership in their adoption of Steve Jobs’ magic pill: joining with Adobe to write the application in AIR, meaning they could publish to the iPad as well as other formats – without wasting investment on two identical products for competing devices being made and filled with content every month.

The saviour of media?

With typical aplomb, Apple has pitched itself recently as the champion of publishers whose traditions are vested mainly in print. For a long time many of these publishers – typically now some of the most entrenched and embattled – have been bourgeois Gentleman’s clubs accustomed to having their pockets lined by the hard work of unpaid interns, with magazines flying off the shelf and a queue of fresh blood to keep the seats warm if any staff should decide they want a fair salary. But as has been documented well, best in fact by some of the nimbler online publicitions, that position has become threatened in the past five years. Headcounts have had to be frozen; great and under-paid journalists have been made redundant. Largely to protect the salaries of the upper management from dipping below £500k, sure, but it’s enough for them to have been chilled into some form of reaction.

Earlier this year Steve Jobs went on a crusade to win them over; a mission to convince them that he could show them how they could make up for time and all their missed opportunities. “Music labels love iTunes, I can do the same for you!” et cetera, et cetera. The likes of the NYT and Wall Street Journal, even the AP, have clearly seen promise and have welcomed their new partner. He’s convinced them that he has the iPad-shaped key to save their content business.

After all, content is king, no? Well as this deftly-hidden, unannounced aspect to their latest fanfare shows, actually it’s Jobs who is King. He may make a few publishers a bit of cash on the side, but in his personal crusade against a lumbering Adobe, he just cost one very important media partner a lot of money in wasted effort.

We can only hope that the attention drawn by the Emperor’s new clothes doesn’t convince some of our great institutions to make their swan song an iTunes exclusive.


Tweet

Getting a development machine set up is a fine art of patience and a good memory. I personally recommend Ninite which is frankly awesome, followed by Visual Studio in its various flavours, followed by the Web Platform Installer.

However, with so many tools, frameworks, patches and add-ons to install it can be easy to miss something.

Even more frustrating, sometimes it can even be easy to install things in the wrong order.

Silverlight debugging: Get the right Tools

Specifically for Silverlight, it can appear as if you have all the necessary pre-requisites to create and debug Silverlight applications in Visual Studio 2008 SP1, but in fact your breakpoints are never hit.

You have the Silverlight project templates installed, you’re happily mixing and matching Visual Studio and Expression access to your project tree, but when compiling and running your project, Visual Studio either flatly ignores your breakpoints or reports that the symbols haven’t been loaded and that the breakpoints won’t be hit.

Some standard solutions

A lot of Googling takes you to answers around the following, none of which have actually applied to me recently:

  • Ensure you are running from a http:// address rather than a file:// address
    • In summary, do this by creating a separate Web application in your solution and then adding a link from it to your Silverlight project to ensure VS launches your browser pointing at a web server rather than the filesystem.
    • Debugging is disabled by default when going to local filesystem-based URLs.
  • Ensure “Silverlight” debugging option in your website project Properties > Web tab is checked
    • Some solutions even point to unchecking, then rechecking the option in order to kick VS into recognising the breakpoints.
  • Manually attach to the browser process, since VS may have attached to the wrong instance.
    • This especially seems to hit IE8 users where Silverlight apps are reputedly launched in a separate process to the main HTML.
  • Ensure you have “Silverlight” attachment type listed in the “Attach to process…” dialog box and that it is selected.
    • For example, attaching to iexplore.exe but selecting “T-SQL” as your attachment type will obviously not let you hit any Silverlight breakpoints.

One other solution: install Silverlight Tools for Visual Studio 2008 SP1 (again)

For me, the biggest single problem is flatly ensuring you have installed the Silverlight Tools installed after everything else.

With all the various installers, it’s actually possible to end-up with a fully functional Silverlight development environment, including all the GUI clues, but with debugging being an impossibility. How to diagnose it? Check if you have the Silverlight option in the debugging types:

Without this type listed in the “Attach to process…” dialog, Visual Studio will give you no other clue that it won’t be able to hit breakpoints – even if you have “Silverlight” listed as a debugging option in the website properties.

Installing the Silverlight Tools for Visual Studio SP1 ensures this is in place. Then you can go back through the other items in the checklist ;)

Some useful related links:

  • Silverlight Tools for Visual Studio SP1 mentioned above (http://go.microsoft.com/fwlink/?LinkID=143571)
    • Alternatively you can download the standalone Silverlight SDK from http://go.microsoft.com/fwlink/?LinkID=157102.
  • Silverlight Toolkit (http://silverlight.codeplex.com)
    • Not to be confused with the required developer tools, this is an awesome open-source set of examples to get your started with Silverlight.
  • Silverlight + WCF RIA Services (http://www.silverlight.net/riaservices/)
  • The “Getting Started” page from Microsoft (http://www.silverlight.net/getstarted/)