I’ve been knee deep in Mono for the past month or so, and I’m very impressed with its features and compatibility with Microsoft’s version. I like the idea of my C# skills being transferrable to a whole new set of operating systems, but I’m still a bit uneasy about the combination of open source with Microsoft-based technologies. While C# and the CLI are now industry-accepted standards, other core-.NET technologies like ADO.NET and ASP.NET are not. Both ADO.NET and ASP.NET have been ported to Mono, but I wonder how long Microsoft will put up with their proprietary technologies being freely used on non-Windows systems where they get no monetary reward. Maybe the number of Mono installations will never reach critical mass so it won’t be a issue, but I wonder.