Gambling, Shopping, Fine Dining, and Entertainment

Las Vegas on Ulitzer

Subscribe to Las Vegas on Ulitzer: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get Las Vegas on Ulitzer: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Las Vegas Authors: Lori MacVittie, David H Deans

Related Topics: Facebook on Ulitzer, Las Vegas on Ulitzer

Facebook: Article

Silverlight and Moonlight

Microsoft has a new set of technologies called Silverlight that are meant to bring rich multimedia to browsers

Microsoft has a new set of technologies called Silverlight that are meant to bring rich multimedia to browsers and portable devices. They have released two versions: a full release of version 1.0 and a beta version of 1.1. Version 1.0 is not very interesting, but the 1.1 beta is totally different and is making a big splash.

It is .NET based, and of course Mono is working furiously on it. In fact, after Miguel saw Silverlight for the first time at the Microsoft MIX 07 conference in Las Vegas and was offered the chance to demo Moonlight (the Mono version of Silverlight) at Microsoft Re-MIX 07 in Paris in 21 days, the whole Mono team started on a 21-day death march to implement Moonlight in time to demo it in Paris. After which, Miguel said

"The past 21 days have been some of the most intense hacking days that I have ever had and the same goes for my team that worked 12 to 16 hours per day every single day -including weekends - to implement Silverlight for Linux in record time."

I know the long hard days Miguel and the Mono team typically work, and when he starts talking about "the most intense hacking days" he has ever had, part of me wishes I had been part of it, and part of me is glad I wasn't.

What can a bunch of monkeys banging on a bunch of typewriters for 21 days create? The complete works of Shakespeare? Nope. Check out Figure 1.

Joshua Allen from Microsoft was impressed with the Mono hack-a-thon and blogged about it a bit at (see the June 21 entry). Note that Mono has not completed implementing the entire Silverlight suit, but the screenshots show how much progress was made in just 21 days.

For more screenshots, see If you go to the bottom of the page and scroll up, you can see how Moonlight progressed. The Moonlight homepage is at, and the Silverlight homepages are at and You can also see video of Moonlight animation and video capture on Miguel's blog at (see the June 24 entries). Moonlight is being developed as part of the Mono Olive Project (the Mono implementation of .NET 3.0). The implementation is now being discussed at

There are a number of parts that combine to form Silverlight, including a new security model (see a good whitepaper at, video codecs, and a new version of the .NET libraries labeled .NET 2.1 (aka WPF/E). .NET 2.1 is both a subset (similar to, but different from, the compact framework), and a super set (adds libraries to support the new functionality); don't even get me started on how it relates to .NET 3.0 and 3.5.

Mono continues to work on C#3.0 and this month brings full support for the specification for implicitly typed local variables and implicitly typed arrays. I added "for the specification" because the specification does not support implicitly typed multidimensional arrays, but the Microsoft C# 3.0 compiler does support them; it is not clear if this is an enhancement or a bug; once this is decided, the Mono team will code accordingly.

Google Summer of Code
Students involved with the Google Summer of Code, including those working on Mono, are making lots of progress. Google is having a major impact not only on these students' lives, but also on the many projects they are working on. I would like to tell you all the cool things the students are doing just in the Mono project, but I don't even have time for the highlights this month. Go check them out at and

MonoDevelop, the SharpDevelop fork for Mono, has released version 0.14. The MonoDevelop team has made a lot of progress on this release, and they now plan to make two more big releases in the next three months, and then do a feature freeze to prepare for the big version 1.0 release. This release includes a subversion add-in, refactoring, smart C# indenting, and importing/exporting Visual Studio 2005. The next releases are planned to include key binding, improved ASP.NET support, and, from the Summer of Code students, C/C++ support and improved make file integration. Full release notes are at

Tyler has posted information on how to use Mono to create Facebook applications; see his Weather# application example at

Odds and Ends
Also Marcos Cobena (a summer of code student) has described how to compile Olive (.NET 3.0) on Mono at

Banshee, the music player, now runs on Windows (screenshot at

Mono has a list of what is needed to have complete .NET 2.0 compatibility at; currently the list is about 214 items long.

Autosize is coming to System.Windows.Forms. This is one of the biggest missing pieces left in Winforms; if you look through the Moma reports, it appears very often, because VisualStudio sets it for most controls (to true or false depending on the control).

Also mojoPortal has been released, and Mono is again being built from the same source code, but with a switch that turns off WebParts; see more at

Brian Nickels shows how to make any application a Web server at

The last few columns have been so packed that I have neglected to mention that the March issue began my fifth year of writing "Monkey Business" for .NET Developer's Journal.

More Stories By Dennis Hayes

Dennis Hayes is a programmer at Georgia Tech in Atlanta Georgia where he writes software for the Adult Cognition Lab in the Psychology Department. He has been involved with the Mono project for over six years, and has been writing the Monkey Business column for over five years.

Comments (1)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.