Changing of the Guard
It has been a busy eight months since I rejoined the team to see if I could contribute to getting some wind back in the NETMF sails. Since then we have started participating in conferences again (Build and Maker Faire among others), we have planned and demo'd major portions of version 4.4 which will be out in beta in a few weeks with a full release later this summer, and we have started work on the new architecture. There has been a great deal of discussion on various forums about how to address several issues with the current product - specifically the lack of current language support, the performance of the interpreter, and the footprint of even simple applications. We have been working quietly on an 'ahead of time ' (AOT) compilation model. In the current model we take C# and create IL that is deployed to the device and executed by the interpreter. In the AOT model we are taking C# and compiling it to native code which is executed directly. While this sounds simple enough, there are a number of challenges to this including optimizing the output of the compilation process to remove all to the C# overhead that is not needed. At this point we have the new architecture building applications and the results are very gratifying. The full language support is in, the performance is comparable with or better than C++ options on the platforms we are targeting, and even without all the optimizations in place, the resulting apps are in the 10s of K range. There is still lots to do but at this point we are confident in the direction that we have taken. It will still be a while before the system will see broad availability so version 4.4 is still an important release for us.
Another thing that has happened in the last eight months is that we have built the team back up to levels that we have not seen in years. This includes bringing Lorenzo Tessiore back on the development side as the technical lead for the project. For those who don't know, Lorenzo has been with the project since its inception.
All this brings us to a point where I can complete my plans that I put off to spend this period back on NETMF. Today is my last day at Microsoft as I move into retirement. This product has allowed me to work on great projects with great people both inside and outside of Microsoft. I have been blessed with a great career in the industry and working on small devices has been the best part of it all. I'll turn this blog over to Lorenzo who will follow up with more info on version 4.4 and the AOT project and what the timing on that will be.
Best of luck to all of you.