C# Programming and Microsoft .NET for Non-C Programmers