Goodbye Wordpress Hello Snow

Posted by Filip Ekberg on 21 May 2014

As per my previous post I've moved to Azure and this has been a really interesting experience so far. Not only did it force me to learn more about the offerings of Microsoft Azure, but I also came to the conclusion that moving away, as far as possible, from Wordpress was about time. [...]

Moving to Microsoft Azure

Posted by Filip Ekberg on 20 May 2014

For a very long time this blog has been running on a Swedish ISP, Glesys. I've been extremely happy with their customer service, their reliability and their speed. However, it comes with a cost, thus I've decided to move to Microsoft Azure!. [...]

Universal Windows and Windows Phone Apps

Posted by Filip Ekberg on 29 Apr 2014

As I'm down in Melbourne for a Readify Dev Breakfast Xamarin talk, why not visit the local .NET User Group and have a chat about Universal Apps for Windows and Windows Phone?

With the new possibilities of sharing code between our Windows and Windows Phone applications, there is no longer a reason not to target all the platforms! We are looking at what this new development model looks like, how to make our first universal app and or course, how to communicate with the cloud! [...]

Xamarin and REST APIs

Posted by Filip Ekberg on 11 Apr 2014

I was invited to the Brisbane C# Mobile Developers by Glenn, a tutor I met during my first Xamarin University course. He's a great tutor and the Xamarin University lectures are of really high quality, if you can I'd really advice you to join the program!

In this talk I go into, in short, what Xamarin is, how to use a REST API from your applications and what kind of code sharing strategies there are. Sit back, enjoy and don't forget to pop some popcorn! [...]

Cross-platform development using C# and Xamarin Studio Australia Tour

Posted by Filip Ekberg on 04 Apr 2014

XamarinAre you keen to learn more about Cross-platform development using C# and Xamarin Studio? I have had a lot of interest in my Xamarin Introduction video, which was released in March, and I am very happy to announce that I will be doing a Xamarin tour in Australia!

These events are organized and hosted by my employer Readify. [...]

Microsoft Open Sources C# Compiler

Posted by Filip Ekberg on 04 Apr 2014

VS2013LogoThis is truly an extremely exciting time, Microsoft is Open Sourcing the C# Compiler (Roslyn). Even without being open source, the new C# (and VB) compiler have had some proven potential. We have seen some exciting things such as semantic merge and powerful plugins for Visual Studio.

Now that the source is out there and they are accepting contributions - where do you think this will end? Personally, I cannot even imagine what the community will come up with.

C# Compiler Source Code Available Here. [...]

Xamarin Introduction

Posted by Filip Ekberg on 26 Mar 2014

Do you struggle with cross-platform development? Should we just use html and JavaScript? Should we write once for every platform? Enough with that. Come along and get an introduction to Xamarin's unique approach on how to solve the headaches of cross-platform development.

This talk was performed at the Sydney Mobile Development Meetup Group. [...]

Reliable and fast applications by introducing parallel and async

Posted by Filip Ekberg on 04 Mar 2014

In this breakfast event that I spoke at which my employer Readify organizes, I talked about Parallel and Asynchronous applications. The idea here is to talk about what makes an application fast and reliable. Then we talk about different concepts and how to apply these in small isolated code snippets to make use of some really powerful stuff we have to our disposal.

This talk is aimed towards C# developers, but the parallel and asynchronous information applies to more than just the .NET family. [...]

Understanding Sorting

Posted by Filip Ekberg on 24 Feb 2014

This is the third piece in the back to basics series that I've been doing and this time we're looking at one of the most fundamental algorithms out there. Arguably one of the first one you'd learn in school; sorting. There's a huge variety of sorting algorithms ranging from bubble sort, insertion sort, selection sort, merge sort, quick sort among many others. Most of them have their perfect use case, in the case of bubble sort, it's a great algorithm to get started with to understand how to re-position things in an array. However, bubble sort is a O(n^2) algorithm which means that it will grow quadratic as n grows. If you want to win a free digital copy of my book C# Smorgasbord, continue reading and leave a comment with an optimized version of the merge and merge sort functions! [...]

Calculating Document Distance

Posted by Filip Ekberg on 17 Feb 2014

Previously we looked at the first part in my Back to Basics series where we understood and implemented Peak-Finding. This time we are going to talk about something slightly different; Calculating Document Distance. I really recommend you to take a look at the MIT course on Introduction to Algorithms, for this post I really recommend watching the part about document distance. [...]

Understanding Peak-Finding

Posted by Filip Ekberg on 10 Feb 2014

No matter how far we are in our careers as professional developers, it's great to freshen up on our fundamentals. Be it the importance of Memory Access Patterns or algorithms in general, it's really beneficial. I find it quiet interesting that it's been a pretty long time since I sat in the algorithms and data structures course on my technical institute and I tend to understand it completely different now. [...]

Test Automation for Web Applications

Posted by Filip Ekberg on 30 Jan 2014

If you're a web developer, I am sure you can relate to the feeling where you over and over again start up your web application, navigate to the local instance and try the same feature over and over again where you just thought you had fixed all the bugs. I'm sorry to tell you this, but you'll most likely be starting it up and navigating to that same page a couple of more times. Both in my book and countless times on this blog I've said: If you do something over and over again – automate it! [...]

Developing Good Software is Damn Hard

Posted by Filip Ekberg on 29 Jan 2014

architectSince I first set my foot in the "Software Architecture" class back at the technical institute it feels like I've taken things for granted. Over the years I have seen myself as a pretty good software engineer, a programmer with many hats be it developing in C#, Java, Python, PHP, Objective-C, and I’ve tackled lots of different problems. It just hit me though developing good software is damn hard.

I've been working for a bunch of different companies now and been on lots of different projects all teaching me different things along the way. It wasn't until recently though when I got onto a project where everything was, sort of, by the book. As I mentioned, I've seen myself as a senior developer for a long time now and in many projects where I've been that has been the case. Starting on this project though has in a way opened my eyes again and I see that I still have so much to learn. [...]

2013 was an amazing year, here's a summary!

Posted by Filip Ekberg on 01 Jan 2014

KangarooAnother year has gone by and it's the third yearly summary that I'm writing, hopefully not the last one! I began the previous one that I wrote in the end of 2012 by stating that "Saying that a lot happened in 2012 is probably an understatement.", I'd like to start this summary similarly. However it hit me that each time I do look back at what I've done the previous year, it's always going to be packed with a lot of great stuff. I like challenging myself both professionally and personally, my friends and co-workers most likely see this in me regularly. [...]

Hello Nancy

Posted by Filip Ekberg on 19 Dec 2013

nancy-logoHave you had a chance to play with Nancy yet? Nancy is a way for us to experience the web in a lightweight way, without relying on ASP.NET or ASP.NET MVC. I'm not saying that Nancy is replacing any of those, but it is here as an alternative. Let's look at some examples of what a Nancy demo application might look like, to give you an idea of how easy it is. [...]

Making sound using C#

Posted by Filip Ekberg on 16 Dec 2013

Back in the mid-90s when I first was introduced to the concept of programming the only thing that I could really do that I found funny was to have the computer BEEP at me. At this time of course I didn't have anything as fancy as Visual Studio or C# to work with, it was just me and my QBasic editor. Basically an application back then looked something like this (syntax may or may not be correct) [...]

Download C# Smorgasbord Chapter 1 For Free!

Posted by Filip Ekberg on 06 Dec 2013

I'm happy to announce an early Christmas present for you all; I am giving away a free sample of my book, you can now download Chapter 1 completely free!

The chapter is called Introduction to Parallel Extensions and it talks about parallel programming, LINQ/PLINQ and Egg Boiling. I really hope you enjoy this free sample so much that you want to read the rest of the book as well! Don't forget to tell your friends to download it.

DownloadNow [...]

Debugging Asynchronous Code in Visual Studio 2013

Posted by Filip Ekberg on 15 Nov 2013

With Visual Studio 2013 being publicly released I think it's time I show off one nice improvements in Visual Studio 2013.tudio 2013. There are in fact a lot of nice improvements in Visual Studio 2013 and one of my favourite ones, actually two of my favourite ones are the debugging improvements of asynchronous code and the information that we are given about for instance how many references there are to our method(s). [...]

Advanced Async talk from ALT.NET

Posted by Filip Ekberg on 29 Oct 2013

As you might know there's a chapter in my book C# Smorgasbord that introduces you to asynchronous programming in .NET using Async & Await. However in this talk I dig deeper and talk about what happens inside the state machine that is generated by the compiler. [...]

The Perfect Developer Laptop

Posted by Filip Ekberg on 25 Sep 2013

Intel HaswellI have been struggling with selecting the perfect developer laptop (in my eyes) for a couple of months now as I have been waiting for ultrabooks with the latest Haswell technology. Now I'd like to share what I ended up getting and what I ended up returning back to the store as it was just not good enough. [...]

Do I Need To Understand Low Level Programming And Memory Management?

Posted by Filip Ekberg on 03 Sep 2013

There's been some radio silence here recently, sorry about that but everything is literally upside down at the moment; hence I moved to the other side of the world! So let's break this radio silence by touching something rather interesting and quite frequently discussed; Do I Need To Understand Low Level Programming And Memory Management? [...]

MSIL for the C# Developer Preview

Posted by Filip Ekberg on 07 Aug 2013

Almost two months ago I got my first course published on Pluralsight and I've received a lot of great feedback since! I'm happy to share a 10 minute preview from the course with you all, enjoy! [...]

One Year As A Self-Published Author

Posted by Filip Ekberg on 30 Jul 2013

Filip Ekberg showing C# SmorgasbordWow -- It has already been one year since C# Smorgasbord was released and I've since then written about the way to getting it published here and tried to market it as much as possible. As for marketing I had raffles, did more user-group meetings and sent away some free books; even did some online marketing using Ads but that ended up costing me more money than it gave back.

Writing the book has been one of the best things that I've done in a long time. It helped me understand all the steps necessary to make a book and also forced me to dig deeper into some very interesting technical topics.

When I started writing the book I never imagined that I would sell more than 100 books; to my surprise though I sold much more than that. [...]

Pluralsight Summer Watch List

Posted by Filip Ekberg on 23 Jul 2013

I'd like to share the list of courses on Pluralsight that I'd like to watch during this summer. It's always great to refresh your mind and skills! If you don't know what Pluralsight is and if you don't have an account head over to and get a free trial! [...]

This Is My Story - Part 3

Posted by Filip Ekberg on 22 Jul 2013

You just got your degree? You’re a junior developer.

The demand from my employee were too damn high, after just a month or so I had to go to the emergency ward because I almost fainted. I’ve heard people say that there’s no such thing as hitting the wall; you should just push harder and you’ll get pass that. People that say that have clearly not worked 24/7. At this time in my life I was in a new city, I still had my own business and I was a full time employee in a company that demanded me to stay at work until I had finished the bugs, without even offering me something to eat or drink. [...]

This Is My Story - Part 2

Posted by Filip Ekberg on 17 Jul 2013

Turn off the lights

The last year in high school we had a course that focused on you creating a bigger project. You had to show a time plan, requirement specification and all that necessary to solve a project. I of course decided to do something in regards of programming. I didn’t know what though but I got some help from the school principal that was really interested in programming and electricity. He saw that I had potential so he offered to spend the weekends working with me on my project. [...]

This Is My Story - Part 1

Posted by Filip Ekberg on 15 Jul 2013

Stay a while and listen

1I was born in 1987 and I’m fairly certain that there’s something genetically programmed in my DNA that says whenever there’s something that is powered by electricity I need to play with it and understand it. I can somewhat recall my siblings playing with an old Commodore 64 but as my parents noticed that I had a huge love for everything involving technology even before I could walk; when I was about three years old they gave me a Sega Mega drive. My father and I played a lot of Sonic which I will forever remember and hold dear. [...]

Are You Serving Files Insecurely in ASP.NET

Posted by Filip Ekberg on 12 Jul 2013

I recently came across something quite interesting when it comes to serving files from your application. In theory what will be discussed here applies to all programming languages that you use for web programming and not only ASP.NET. However the examples used below will be targeted at ASP.NET developers. [...]

MSIL for the C# Developer - My First Pluralsight Course Released!

Posted by Filip Ekberg on 02 Jul 2013

I'm very happy to tell you all that my first course on Pluralsight MSIL for the C# Developer has been out for about 2 weeks and is doing great! I've received great feedback on the content and I'm really looking forward to start working on my next courses. [...]

Memory access pattern matters

Posted by Filip Ekberg on 01 Jul 2013

ignorance-is-blissLast week on BUILD there was a talk on Native Code Performance and Memory: The Elephant in the CPU, even though I didn't attend BUILD this year I watched it on Channel9 and I'd like to recap something from it that I find interesting. In many cases I think that we ignore the fact that we need to handle performance optimizations ourselves, we can't hide behind the CLR and the compiler all the time now, can we? [...]