What is it?
Microsoft's
Silverlight is a
.Net-based plug-in for creating rich internet applications (RIAs).
Inevitably dubbed a "Flash killer", Silverlight is promoted by
Microsoft as "cross-browser, cross-platform, and cross-device",
although (like Adobe's
Flash and
Flex ), it contains proprietary elements, and the open sourcing
has been done under Microsoft's own version of the public licence
(MS-PL).
Microsoft itself is responsible for Windows and Mac OS X
versions of Silverlight. Responsibility for Linux has been handed
over to
Novell's Mono project , and within a year, Linux users should
have a feature-equivalent version. Citing precedents such as
Windows Media Player, doubts have been expressed - most
vociferously by Adobe - as to whether Microsoft will stick to its
promise to maintain
parity on all platforms . Microsoft has given assurances that it
will.
For those already committed to .Net languages and development
tools, Silverlight provides a way of creating RIAs without having
to invest in new skills. Microsoft is also funding a project to
integrate Silverlight development capabilities into the Eclipse
IDE, which Microsoft claims "will open Silverlight development to
any Eclipse user and help facilitate the integration of
Silverlight-based applications into Java-based websites and
services".
Where did it originate?
Silverlight's earliest incarnation, Windows Presentation
Foundation Everywhere, was shown in September 2005. Silverlight 1.0
appeared in September 2007, and Silverlight 2.0 - originally 1.1,
the release wise Microsoft users wait for - in October 2008.
What's it for?
Silverlight 2.0 comes with the Silverlight CoreCLR, a version of
the .Net Framework's Common Language Runtime, so that developers
should be able to write Silverlight applications in any .Net
supported language, such as VB, C#, Ruby and Python, as well as
Jscript/JavaScript. There are free downloads such as the
Silverlight SDK, Silverlight tools for Visual Studio 2008, and the
all-free Visual Web Developer Express Edition. Using Microsoft's
Expression Blend 2 , user interfaces can be created that will
run on both web and desktop.
Silverlight uses XAML (extensible application markup language,
which Microsoft first developed for the Windows Presentation
Foundation), as the user interface markup language. XAML has been
optimised for .Net in ways that offer advantages to Visual Studio
and Expression Blend users, but may present difficulties for
non-Microsoft XML tools.
What makes it special?
Silverlight and Microsoft's
ASP.Net Ajax have been designed as complementary technologies,
which simplifies adding RIA features to existing web
applications.
How difficult is it to master?
.Net language developers using
Visual Studio 2008 should be productive with Silverlight almost
immediately.
Where is it used?
Users include EasyJet, BSkyB and the Humana private healthcare
group.
What systems does it run on?
Microsoft has pledged that Silverlight "will support all major
browsers on both Mac OS X,
Linux and on Windows", adding that "particular care is being
taken to account for differences in platform and browser
capabilities to ensure a consistent experience including Firefox,
Safari and Internet Explorer". The Macintosh version of Silverlight
2 has the same feature set as the Windows version. Silverlight is
available or under development for Windows Mobile and Symbian.
However, Silverlight development tools and environments,
including the software development kit (SDK), run only under
Windows Server 2008, XP and Vista.
Rates of pay
C# and ASP.Net web developers with Silverlight £28-40k.
Training
The official
Silverlight site
has a range of tutorials and videos adapted to different skills and
requirements, plus SDK, Expression Blend and Visual Studio tools
downloads.