Student Challenge – Coding Choices.


I spent most of Friday talking to each of the 30 Student Challenge teams, all of the teams needed to build/code their solution using a custom Windows CE operating system image – all teams had the choice of programming language/tools for their project – the choice comes down to native (C++, Win32, MFC, ATL) or managed (C# or Visual Basic).


Assuming that you were starting a new Windows CE Embedded project, would you code using C#, VB, or C/C++ ? – Out of 30 teams taking part in the ChallengE I only talked to three teams that coded their applications in C++, no teams used Visual Basic, all the other teams used C# – pretty interesting, eh !


I asked why the teams used C# – the most common answer was that C# and the .NET Compact Framework was super easy to develop against, provided a great set of class libraries to make it easy to focus on the application rather than the underlying operating system.


Interestingly, one team that used C++ suggested that they loved to do pointer manipulation !


If you’re not currently coding using the .NET Compact Framework then I would suggest you start looking at managed application development, especially with .NET CF 2.0 coming out soon…


– Mike


Comments (1)

  1. Shaswata Jash says:

    I was one of the competitors in WESC 2005. I learned C# just to code for WESC. So i haven’t any prior knowledge on .net. But stiil we had a descent learning on C# just within 4-5 days. Surprising? i would say why and how?

    We were doing already coding in J2SE. Transition from J2SE to C# was very smooth. Both had just similar kind of concepts, though i like to add .net framework has its own charm and superiority.

    I have done progamming in J2ME( Java2 Micro edition). And any one who has developped in j2me know that its API , Midlet concepts are completely different from j2se. But for .net, only change what you need to do for developping application for mobile device is just select smartdevice project at beginning of starting new project. APIs are just same.

    Also Mike has written about choices among VC++ and C#. Ok, i have done programming in VC++ too. But for all those VC++ fan, i want to ask how easy it is in VC++ to convert a integer to its string form. I think i have to write my own function to do that. And if you are doing network or database programming, these type of conversion remain essential. Now just look to .net and go through its Convert class. That itself will say ease of application development in C#.

    Also those persons who want to have the contol over every aspect of your program, in VC++ we hardly can catch hold the winmain function. What we are exposed to , is the CChildView or mainframe class. But using C#, we can trace the complete flow right from beginning – public static void Main().

    So we loved to program in C# and and probably it will increase more.