March 28, 2008

Server Core

In this video, I'm going to explain one of the key features of Microsoft Windows Server 2008, which helps to minimize the installation footprint - Server Core. Server Core helps to install ONLY required files and server roles on the system, which ultimately enhances performance and security of the server. Watch this video for more information.


Happy Coding - Networking :)

March 21, 2008

Windows Mobile Development Basics

Many developers and students asked me some basic questions related to Windows Mobile development. So I thought I should record one screen cast on it. So, here it is.

In this video, I'll explain some of the basics of Windows Mobile Development. This includes, how developers can deploy the .NET Compact Framework and SQL Server Compact on Windows Mobile Devices. Also, I'll show you about, how to connect to Internet using Windows Mobile emulators.

Namaste... Happy Coding :)

March 18, 2008

Windows Mobility Smackdown

Every 6 months, Microsoft holds an internal-only conference called TechReady for our technical team in the field.  It's an amazing convergence of people from all over the world coming together to learn about our technologies directly from the product teams as well as to give feedback about what customers are saying.  In fact, it is not uncommon to see a product manager and a technology specialist getting into a heated debate about what's working, what's not, and where things should go in the future.

For more information click here. Thanks to Channel 8

March 17, 2008

Language Enhancements In C# 3.0 and VB 9

There are so many new features added as Language Enhancement for C# 3.0 and VB 9.0 in Visual Studio 2008 (along with .NET Framework 3.5). Here, I'm compiling a quick list of important ones and will share some resources from where you can learn more about the same.

  1. Local Type Inference
    Visual Studio uses type inference to determine the data types of local variables declared without data-type. The compiler infers the type of the variable from the type of the initialization expression. This enables you to declare variables without explicitly stating a type, as shown in the following example.
    String str1 = "Mayur Tendulkar";
    var str2 = "Mayur Tendulkar";
    For more information visit following links:
  2. Object and Collection Initializers
    Object and Collection Initializers let you assign values to any accessible fields or properties of an object at creation time without having to explicitly invoke a constructor
    class Person
    String Name { get; set; }
    String EMailID { get; set; }
    class PersonImplementation
    static void CreatePerson()
    //Object Initializer Used
    Person p = new Person { Name = "Mayur Tendulkar", EMailID = "" };
    //Collection Initializer (with Object Initializer) Used
    List<Person> per = new List<Person>
    new Person() { Name = "ABC", EMailID = ""},
    new Person() { Name = "XYZ", EMailID = ""}
    For more information, visit following link:
  3. Anonymous Types
    Anonymous types enable you to create objects without writing a class definition for the data type. Instead, the compiler generates a class for you. The class has no usable name, inherits directly from Object, and contains the properties you specify in declaring the object. Because the name of the data type is not specified, it is referred to as an anonymous type.
    var Student = new { Name = "Mayur", LastName = "Tendulkar"};
    For more information, visit following link:
  4. Auto Implemented Properties
    Auto-implemented properties make property-declaration more concise when no additional logic is required in the property accessors. When you declare a property as shown in the following example, the compiler creates a private, anonymous backing field can only be accessed through the property's get and set accessors.
    class Female
    string Name { get; set; }
    int Age { private get; set; } //Write only
    int Mobile { get; private set; } //Read only
    For more information visit following link:
  5. Partial Method
    Partial methods enable the implementer of one part of a class to define a method, similar to an event. The implementer of the other part of the class can decide whether to implement the method or not. If the method is not implemented, then the compiler removes the method signature and all calls to the method. Therefore, any code in the partial class can freely use a partial method, even if the implementation is not supplied. No compile-time or run-time errors will result if the method is called but not implemented.
    // Definition in file1.cs
    partial void onNameChanged();

    // Implementation in file2.cs
    partial void onNameChanged()
    // method body
    For more information visit following link:

In this blog post we seen 5 new concepts that are included in VS2008 (.NET 3.5) and in next post, we'll see some more of them.

March 7, 2008

WiMo Development Overview

In this video, I'll be showing you, how developers can build simple applications for Microsoft Windows Mobile platform. This is a basic introductory video, but in coming videos, I'll add more stuff depending on your feedback.

Happy Coding :)