Build 2014 – My Impressions Part II

6 באפריל 2014

tags: , , ,
no comments
On board flight back to Israel, it's time to sum up the Build experience.
All in all it was a solid conference, good content, pretty light sessions, not very technical mostly.
In the previous post I've mostly talked about the Windows platforms, this time I will talk mostly about c# and Azure Mobile Services.
Windows Azure Mobile Services or WAMS for short, road-map and intentions has bee kept close to the chest till Build, there are new features, but I believe the thing the team has worked on the most is the enabling of c# development on both ends of the pipe vs to the fact you could only use JavaScript before to write your server side scripts, The reason for that was, well it ran on node.js. WAMS was and I suspect still is, the best infrastructure (at least on the MS stack) to bootstrap fast apps and create in no time a working, scalable, multi-platform support for a backend, in other words, the ideal hackaton deal.
While I'm not sure what the team had to do to enable c#, I suspect they are now working on a dual model, node.js for JS and ASP.NET for c#, it does mean we might get a feature partition between those, cause I know for a fact you are able to use certain npm packages with WAMS, how will they cope with that, it is still unknown.
Feature wise, we got cool new features, the first is really awesome, we are able to use mongodb instead of Azure SQL, this fit so well with the JSON format WAMS has been using extensively.  More notable new features are Active Directory authentication support, enabling WAMS to support scenarios for enterprise apps, also ServiceBus relays will help with firewalls, etc. Furthermore it has now support for occasionally connected apps with the ability to persist data locally and handle automatic synchronization of the data when there is a connection (currently only on Windows/WP platforms), of course allowing you to cope with any conflicts those scenarios are likely to arise.
Bottom line WAMS is here to stay, it had matured and it is now less "hipster" project of "renegade" microsofties that work on Macs and use node.js, enterprise features and c# support make it a great candidate to most apps developers, the addition of Xamarin make it available to the most used platforms today.
The next step of the .NET languages is tight directly with the project Roslyn, which after 4 years in development looks like it is passed another important milestone, there is enough meat already that the team had made it available as an open source project, so features in c# which were hard to implement with the old compiler are now possible with much more ease. Project Roslyn is offering even more then that, Visual Studio editing experience is getting better with smart previews, things that were possible with the power of R# before for example.
Even if you are not a plugin developer, or if you can admit, not writing compilers by night, you can still find ways to use Roslyn directly, for example use the compiler to enforce custom coding rules, which are important to you, your team or your organization.
So what about those c# features, I can hear you say?
So c# gets much needed syntax to clean up some of the annoying parts, for example you can't use await inside finally or catch, or simpler usage of out parameters, today you must define them as a variable, the next version of c# will allow much cleaner way of defining those.
Another major feature is better support of immutable types, today we can't use read only auto properties, it make sense cause if you don't really have a way to initialize it like that.

public class Customer
public string First { get; } = "Jane";
public string Last { get; } = "Doe";

And primary constructor:

public class Customer(string first, string last)
public string First { get; } = first;
public string Last { get; } = last;

Many more are to come!



Build has also got a plentiful of other great stuff for Azure users for example, I will not iterate those, cause I don't have a personal stand about them or the rest of cool new stuff that is coming out.
Add comment
facebook linkedin twitter email

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>