Visual Studio “15”

Visual Studio is not a light IDE

I cannot say that I don't complain about Visual Studio 2015 these days.

Having to run large software projects in VS 2015 is not a pleasant thing to do. Load time when you start VS 2015 is not that good... and loading large solution files is pretty bad as well. 

Microsoft should really think about breaking down a lot of features of Visual Studio and let you decide on what you would like to install.

VS 15 - performance boost

Check out the Video here showing the loading of the not 20, not 50 but... 152 projects inside the Roslyn compiler solution.

152 and VS 15 loads in 20 seconds. It takes about 1 min to load it with VS 2015... wow, now that's nice.

The trick here is enabling a setting called “Lightweight Solution Load” that will lazy load the projects in your solution.

What I want from VS 15

Is that Microsoft let's us choose what features we want in VS 15 and get rid of the rest (by the way seems Microsoft doesn't care about creating a naming confusion madness again).

What I want from Visual Studio is for it to run at least half as fast as VS Code.


ASP NET Core - Where it stands in 2016

Intro to ASP.NET Core

ASP.NET is almost 15 years old - with it's initial release in January 2002 according to Wikipedia. 

ASP.NET core is branded as a redesign of ASP.NET, with 6 major features:
  • Built on .NET Core, it runs cross-platform
  • It is open-sourced on Github
  • It's packaged in more modular components (no longer based on System.Web.dll)
  • New Middleware concept to construct your request pipelines
  • Easier configuration using JSON files
  • Highly increased performance

The naming madness

As we all know Microsoft was never really good at naming things and ASP.NET Core had to suffer from this as well.

So it had beautiful names like: ASP.NET 5, ASP.NET vNext and Project K.

All this naming confusion was stopped and can be read in Scott Hanselman's blog post here.

ASP Net Core - The changes

No more System.Web.dll - the dll that occupies 2.6Mb and had to be loaded on each page request is no longer needed. 

This leads to great RPS increase. 2300% more requests served per second.

I think this could be achieved mainly because of the modularity of the packages that you include in your project. But of course this leads to an overhead of knowing exactly what you need on a finer level when developing. 

Age of Ascent - 50 000 players in the same battle 

Thanks to Illyriad we have a proof of concept of the potential of the platform, check more about this project here.

Prefix - really cool tool for .NET Web Devs

What's Prefix

Prefix is a cool tool for monitoring what happens at a server side level with your Web Application, and much more. 

And the really nice thing is that for now it's free.

Why Prefix

While there are tools out there for profiling applications, like the simplest method of doing it is in your browser by pressing F12, or using another cool tool called Fiddler... but this will only give you a client side view of what is happening. 

The cool thing about Prefix is that it will show you what is happening Server side, showing you things like: 
  • call stacks for errors
  • type of requests 
  • profile Entity Framework generated SQL
  • how different components including framework components are initialized
  • duration of code execution
  • ..and much more

All of this aside, what made me use it at least for now, but I think I'll keep it in my arsenal is the really nice Web Interface.

How to set up

You just download the installer from here, after install you will have it available at http://localhost:2012/.

For me the profiler only worked after PC restart. 

If you want more in depth info about prefix check out this blog post, or watch this presentation on Prefix on youtube:

Happy profiling!