Mono has always been developed on mailing lists like pretty
much every other classic open source project. But many of
our younger or migrating users are more used to Web-based
forums and have always wanted to have a forum-like interface
for the Mono mailing lists.

Thomas Wiest and Joseph Hill have just finished the
integration Nabble into the Mono web site. Now people can
access all of the
Mono mailing lists with a Forums UI.

Messages posted in the forum will go to the appropriate
mailing list (either hosted at lists.ximian.com or
groups.google.com), and messages posted on the mailing lists
get reflected on the forums.

I have done my best in the past year to increasing
BestBuy and Game Stop share holder value by dumping thousands
of dollars in my quest to be entertained by video games.

The games that I actuall enjoyed playing are very few:

Wii Sports, but the fun fades away after a couple
of months.

Metroid Prime 3, on the Wii, fantastic controls.

Ratchet and Clank on the PS3, incredibly fun.

Bioshock on the xbox360, by far, my favorite
game.

Ratchet and Clank on the PSP, just because I love
the PS3 version so much.

Sudoku on the DS.

Update: I forgot the incredibly fun
Simpsons game.

I continue to refuse to play propaganda games and do not
enjoy sport games, racing games or fantasy games. I could not
get into the games in the Orange Box, even if everyone loves
it (Portal was ok). And I have not tried Rock Band or Guitar
Hero because I do not want to have a drumset ont he living
room.

I guess I like games that have a developing story and are
not very repetitive.

Silverlight's 2.0 deployment model changed significantly
from the 1.1 alpha model. In the past you would load a XAML
file, and then on demand load any managed libraries referenced
from the XAML file before parsing could continue.

With Silverlight 2.0 the model has changed. One of the
downsides is that now you deploy things as a ZIP file with a
manifest file which feels obnoxious. On the upside, the loop
"try-to-parse-or-keep-requesting-files-from-the-browser-until-all-dependencies-are-downloaded"
is now gone. Now you get a zip file asynchronously, unpack
it, load all the assemblies in the zip file, create an
instance of the class specified as the entry point, and off
you go. No more latency.

This hopefully also solves an obnoxious pattern that was
common in 1.1: calling createFromXaml from Javascript could
hang execution while Moonlight waited for the browser to fetch
a missing assembly.

This week Silverlight 2.0 said hello in Linux:

This corresponds to the standard template with the content
of the user control set to a TextBlock.

There are some peculiar patterns in Silverlight 2.0
instantiation model. Instead of creating objects from a XAML
description, an object of a known-type is first created, and
then the object is initialized from a XAML file. Your object
is supposed to call LoadComponent ("my-xaml-definition") to
initialize itself.

A few months ago, am not sure how, but Nat talked me into
getting a widescreen laptop. I no longer remember what were
the touted benefits of it, but this warpig of a machine is
both buggy
and heavy.

Since the warpig is just too heavy to carry home every day
(and also requires a base station hooked up to high-def output
to stay at 2.4 GHz of speed) I just leave it at work and use
my five year old computer at home to surf the internets. When
I bought the machine I remember distinctively describing it to
friends as "a silent computer". Five years later every time I
load a new web page the fans make as much noise as the
construction site across the street. Was I deaf back then, or
did the fans become dirty and loud?

I am a fan of Google
IG, and recently I discovered that they have a tiny IDE
that you can add to your Google IG page. So I decided to try
to write a Silverlight Sudoku application entirely using that
tiny editor in my old computer at home:

I actually cheated a little and used Emacs here and there
every once in a while.

But I ended up with this cute Sudoku/Silverlight
application that has exactly one puzzle:

I am very proud of my one-puzzle Sudoku because it has some
of the features that I like from Big Bang's Sudoku (click to
flag, double click to set the value, hints) and some cute
and simple animations that I wrote in xaml and shows my
allegiance to the clean and simple configuration religion:

I published it on IG as "Moonlight Sudoku". To add it to
your IG home page,
go here
and click "Add to Google".

Now the only problem with it is that it seems to work just
fine with Firefox but seems to have problems with IE and
Safari. I must be doing something wrong with Javascript, but
I have no idea what it could be. If you can find the bug, let
me know so I can make it work on other browser.

My toy sudoku only has one puzzle, this is clearly a design
decision to prevent people from becoming addicted to Moonlight
Sudoku. But if you know of a source of http-fetchable Sudoku
puzzles, let me know, as I might want to revisit this design
decision to include more puzzles.

You can download the self-contained module (ig + html +
xaml + js)
from here.
You might also need
the Silverlight.js
file.

In clear violation of David Mamet's advise to the aspiring
actor, I am now going to act surprised:

We are now API complete, which means that our
public API is exactly the same as .Net's (all 12,776
methods).

The first check-in to our current Winforms
implementation was on July 8th, 2004. It took 4
years to get here, and 6,434 individual SVN commits.

The toolkit is made up of 115k lines of code.

Also:

We currently have three backends: X11, OSX and
Win32.

There is a Google Summer of Code effort to improve
our theming and OS integration this summer.

Winforms 2.0 will also debut support for XIM to
allow input for CJK character sets.

We have a nice binding to Gecko as our
implementation for WebControl which we started last
year (currently we are limited to Gecko on X11 though,
no Mac support yet for this WebControl).

The Desktop team at Novell is adding UI Automation
and accessibility support to Windows.Forms
integrating it with Gnome's ATK. They have a full
team dedicated to that goal.

R-to-L support: It is not an priority for us at
this point, but it would be nice if someone with RtoL
needs were to complete the work that Sebastien did
last year
to use
Pango inside GDI+.

Winforms 2.0 was the last piece of code holding off the
Mono 2.0 release. We anticipate that there will be bugs, so
we want to encourage folks to
submit their bug
reports and to evaluate the portability of their sofwtare
using our Mono
Migration Analyzer tool.

Congratulations to the Winforms team, and everyone that
provided bug reports, test cases, contributed code, tested and
worked with us to bring it to where it is today.

Today we are making the first public release of Moonlight,
supporting the Silverlight 1.0 profile for Linux. The release
comes in two forms:

No-media codecs supported, but easy to install:
head
to http://www.go-mono.com/moonlight
and click on the cute installer for Moonlight. This
currently hosts builds for Linux x86 and x86-64 for
Firefox.

Update: I apologize for the confussion; This is not
Moonlight 1.0, this is the first source code release
that we are making of Moonlight for interested contributors
and developers. This release is not even a Beta release, as
we are not yet feature complete (missing components in
media codecs, the media pipeline, as well as fixing about 70
known bugs). Apologies for any confussion.

Although Moonlight works on Firefox 2 and Firefox 3, recent
changes in Firefox 3 prevent Silverlight and Moonlight from working (For
details
see #432371,
#430965).
There is
a user
contributed Greasemonkey script that will work around this
bug for some sites (requires Greasemonkey).

Windowless: Moonlight supports "windowless" mode, a
mechanism that allows Silverlight content to blend with other
HTML ements on a page. This is only supported by Firefox 3,
users of older versions of Firefox might run into Silverlight
applications and web sites that do not work correctly as many
Silverlight applications depend on this functionality (Flash
sites have the same problem with Firefox 2).

1.1 and 2.0 support: This release only supports the
Silverlight 1.0 profile. The 1.1 support is no longer
maintained and the release happened at the time when we are
transitioning the APIs to 2.0.

His solution is a Windows.Forms application that hosts a
Windows.Forms.WebControl and inside the WebControl he hosts
Silverlight.

Unlike my
proposal for standalone Silverlight Applications that is
currently Moonlight-specific (and currently limited to
Linux/X11) this approach works on Windows with .NET and with
Linux using Mono and Moonlight:

Left side: .NET hosting WebControl and Silverlight on
Windows; Right side: Mono hosting WebControl and Moonlight
running on Linux.

In addition to hosting the WebControl for hosting
Silverlight, a thread is running to dispatch http requests
locally using HttpListener. HttpListener is an embeddable
HTTP server that is part of the class libraries, and exposes a
very limited API. You can host ASP.NET with HttpListener by
doing the bindings by hand, or you could use our
Mono.WebServer library (part of our XSP/mod_mono
distribution) to allow your applications to have a fully
hosted ASP.NET server.

Mono.WebServer is
what iFolder uses to
embed the ASP.NET server to expose SOAP-based WebServices to
clients.

Of course, this currently does not work on MacOS X as we do
have no implementation of WebControl for Windows.Forms on OSX,
something that a contributor might want to look into.

We are looking for consultants to work on a six to nine
month project at Novell to write a prototype for a Visual
Studio addin in C# or C++ that will connect Visual Studio and
its debugging infrastructure to a remote Linux machine running
Mono and the Mono Debugger.

If you are interested in working with us in this project,
you must have good C# and C++ skills, experience with
networking and protocol design, knowledge of COM and assembly
language programming are pluses.

We are looking to bring two consultants for the duration of
this project. If you are interested, please
click
this link and attach your resume, pointers to some
existing projects of yours and so on.