ASP.NET Core - The future of Microsoft's Web platform

22 January 2017

In June 2016, Microsoft released asp.net core 1.0, the biggest revision of their framework for web development since 2002 - the year when Microsoft went from classic ASP and VBScript to asp.net and C# and Visual Basic dot net.

asp.net core is a completely rewritten framework, but it still uses C# and .net runtime - Visual Basic will probably not be supported anymore. The rewrite was necessary as the framework had problems with:

  • Poor Performance
  • Not portable to other operating systems such as Mac and Linux
  • Worked exclusively with the web server IIS, if it is to be portable so it must work with other Web servers, such as nginx and appache

Performance problems in old asp.net

Performance problems in old asp.net

The performance of the old framework was too low compared with the competing frameworks. C# and the .NET runtime was not the performance bottleneck,the problem was the asp.net framework's architecture. The rewrite of the asp.net to the new core asp.net 1.0 version improved performance; below is an old picture showing how performance improvements during the development period; from about 40,000 request / second to over 1.1 million request / second. The latest figures is 6 million request / sec, ie 150 times faster!

 

Today asp.net core performance has caught up with its competitors and sometimes even surpassed them. Below is a specific testcase the performance of web-frameworks.
https://www.techempower.com/benchmarks/#section=data-r13&hw=ph&test=plaintext

 

In the above chart asp.net core is placed at 10. However, one should bear in mind that the fastest frameworks are likely to be niche framework for special areas on the web development. Comparing asp.net core with other popular frameworks in the market, you get these figures:

NamnPrestanda
asp.net Core48.9%
django2.3%
php1.2%
Ruby On Rail26.6%
Spring (Java)3.5%
Node.js12.5%

 

We are agile! therefore we don't worship Scrum

06 December 2016

My thoughts of Agile development is: flexibility aproach with customers / product owners, tools and work-processes to achieve the best possible results.

By this we mean that Weboholics are flexible and we adapt our working practices to existing realities in projects - sometimes this means that methodologies such as Scrum or Extreme Programming is not optimal for all projects or phases in a project.

We like Scrum but its not always the right tool for every task. Mature products / markets and projects with poor requirement-leadership / product owners are examples where a Scrum  approach can lead to costly failures. Substandard requirement-leadership in combination with Scrum can result in development time waste with expensive and frequent code refactoring before the real problems can be identified.

With mature products / markets the Scrum process (sprint planning, etc.) will often add unnecessary activities and improper focus of the work.

 

We do use Extreme Programming - pair programming. This agile methodology is about working in pairs to improved quality of code is written. This Methodology is very usfull for us when we are in need new techniques and technologies that we have never used before. This approach makes it possible for Weboholics to use and develop advanced technological solutions with good quality - this would be much harder to achieve with many other methodologies. 

At the same time Extreme Programming is twice as expensive while doing routine activities and only leads to minimal quality improvements. So when we do normal development and maintenance, we tend to not use Extreme programming

 

Completed a website and startet on new assignment

29 November 2016

Two days with PostgreSQL

23 November 2016

We conducted education for Newton this fall with courses in advanced database, Java programming and Web development. The web development course included elements of database usage; one of the requirements was that the database should be Open Source. We chose PostgreSQL 9.6 which was released recently. With this new version, they included a new administration tool for PostgreSQL - pgAdmin 4.0.

It worked out well and the user interface in pgAdmin 4.0 has seen much improvements and was very intuitive. It worked well to use PosgreSQL in asp.net 1.0 core together with the popular ORM framework Dapper.

 

 

 

 

wEngine 2.0

10 October 2016

wengineWelcome to the new version of Weboholics.se / Weboholics.com that is based on the newly released version 2.0 of our wEngine.

wEngine 2.0 uses the newest version of Microsoft asp.net framework - ASP.NET Core 1.0, which is the largest and greatest update that Microsoft has made to its web-platform since 2002