Being Cellfish
Stuff I wished I've found in some blog (and sometimes did)
Task-based Asynchronous Pattern - PauseToken and common problems
I just wanted to make sure you did not miss this article describing a mechanism to pause...
Author: Emil Gustafsson Date: 01/31/2013
Reactive Extensions Reminder
It's been a while since I last looked at Rx and I must confess that my first impression was that the...
Author: Emil Gustafsson Date: 01/24/2013
TestInitialize execution order
This was brought to my attention and I was blown away by the fact that somebody would mark classes...
Author: Emil Gustafsson Date: 01/14/2013
Task-based Asynchronous Pattern - WaitAsync
Recently I was asked about a specific scenario when some code was being converted into using TAP and...
Author: Emil Gustafsson Date: 01/07/2013
2012 statistics
Time for my 2012 according to this blog's statistics. As last year we'll start of with the five most...
Author: Emil Gustafsson Date: 01/01/2013
Type casting with extension methods
Once in a while I need to convert one object from one type to another because they represent...
Author: Emil Gustafsson Date: 12/17/2012
How Spotify Works
While I wish I could write a long article on how Spotify works technically this is not what I want...
Author: Emil Gustafsson Date: 11/22/2012
HTTP Keep-Alive is not always your friend - but math is!
In HTTP 1.1 connections are reused by default. This means that if you make two HTTP requests after...
Author: Emil Gustafsson Date: 11/08/2012
The tale of an UnobservedTaskException
Last week I helped a colleague who was experiencing UnobservedTaskExceptions I his code. The problem...
Author: Emil Gustafsson Date: 10/18/2012
Lean processes explained with LEGO
I read this interesting article that illustrated the difference between processes optimized for flow...
Author: Emil Gustafsson Date: 10/15/2012
How Do Software Engineers Understand Code Changes?
Some researchers from MSR have published a paper on how do software engineers understand code...
Author: Emil Gustafsson Date: 10/11/2012
Task-based Asynchronous Pattern - WithCancellation again!
Last week Stephen Toub covered WithCancellation in a more thorough way than I did. You should read...
Author: Emil Gustafsson Date: 10/08/2012
XCOM interactive trailer
I loved the original XCOM game (and terror from the deep was OK). Will definitely play this new game...
Author: Emil Gustafsson Date: 10/04/2012
Task-based Asynchronous Pattern - WhenAllOrErrorBatched
This is a variant of WhenAllorError that a colleague asked me about. His scenario was that he had a...
Author: Emil Gustafsson Date: 10/01/2012
One way to make management understand development
I spent the weekend catching up on my RSS feeds and read this interesting story on how to explain...
Author: Emil Gustafsson Date: 09/24/2012
Writing legacy code on purpose
Earlier this week I was working on a feature where I was using a specific framework and I got...
Author: Emil Gustafsson Date: 09/20/2012
Task-based Asynchronous Pattern - WhenSome
I don't think this is the most common case, but sometimes you have a large number of tasks and...
Author: Emil Gustafsson Date: 09/17/2012
Task-based Asynchronous Pattern - WhenAllOrError
A very common scenario when you scatter and gather, i.e. start a number or parallell tasks and then...
Author: Emil Gustafsson Date: 09/13/2012
Task-based Asynchronous Pattern - WithCancellation
if you're working with a Task based API that does not follow the TAP rules and hence does not expose...
Author: Emil Gustafsson Date: 09/10/2012
Task-based Asynchronous Pattern - WithTimeout
The same way we in CCR sometimes wanted to add a timeout to an existing "task" you probably want to...
Author: Emil Gustafsson Date: 09/06/2012
Task-based Asynchronous Pattern - Introduction
With .Net 4.5 and async/await we have yet another pattern for asynchronous programming and it's time...
Author: Emil Gustafsson Date: 09/03/2012
Adopt a chaos monkey
Remember the Netflix Chaos Monkey? Last week they released the source code for it. maybe we'll see a...
Author: Emil Gustafsson Date: 08/09/2012
ShimNotSupportedException when using ReSharper unit test runner
I recently did some work using the VS 2012 RC together with R# 7. I needed to use the shim...
Author: Emil Gustafsson Date: 08/06/2012
The smart trash can
When I think of robots I think about autonomous robots. Robots that move around on their own and...
Author: Emil Gustafsson Date: 08/02/2012
Working with threads
I co-worker of mine stumbled over a nice collection of helpful information when working with threads...
Author: Emil Gustafsson Date: 07/26/2012
Ten Commandments of Egoless Programming
I recently saw this post with ten tips on how to be a better developer. It made me think of the...
Author: Emil Gustafsson Date: 07/23/2012
Listening to port 80 without being admin
If you're writing integration or so called end-to-end tests for web services you typically need to...
Author: Emil Gustafsson Date: 07/19/2012
Stress testing with Fiddler
If you're developing REST based services, Fiddler should not be news to you. But there might be a...
Author: Emil Gustafsson Date: 07/16/2012
Netflix's new take on APi design
The Netflix blog recently had an interesting post on how they are transitioning into a new approach...
Author: Emil Gustafsson Date: 07/12/2012
Evolution of a hand rolled fake - part 4
Another hard problem when it comes to creating fakes is when the interface contain overloads (i.e....
Author: Emil Gustafsson Date: 07/09/2012
Evolution of a hand rolled fake - part 3
So how do I fake an interface with properties? 1: interface IAnotherInterface 2: { 3: int...
Author: Emil Gustafsson Date: 07/05/2012
Evolution of a hand rolled fake - part 2B
While the last version I showed is very flexible I have experimented a little more. Why would you...
Author: Emil Gustafsson Date: 07/02/2012
Evolution of a hand rolled fake - part 2
In a recent discussion at work I realized that the main reason I started with the constructor based...
Author: Emil Gustafsson Date: 06/29/2012
Adding a timout to a task
Remember how I added a timeout to an existing Choice in CCR? Well with the new Task based world in...
Author: Emil Gustafsson Date: 06/27/2012
Identifying IIS worker processes
The other day I had to debug a running IIS process. There was a nifty little command to figure out...
Author: Emil Gustafsson Date: 06/15/2012
Federated login relies on target site to be secure
I attended an interesting talk in the last week that was based on a paper from MSR. It was...
Author: Emil Gustafsson Date: 05/14/2012
Office pranks
One thing that happens more or less often when somebody is on vacation at Microsoft is that their...
Author: Emil Gustafsson Date: 05/03/2012
Lego Robots revisited
About a year ago (when I was still on the robotics team) I got a good work assignment; build and...
Author: Emil Gustafsson Date: 05/01/2012
Should idempotency be extended to include return codes?
A couple of weeks ago we had in interesting discussion at work. The topic was what a delete on a...
Author: Emil Gustafsson Date: 04/02/2012
Configuration in code
For quite some time I've used a pattern when it comes to configuration to hide it behind some...
Author: Emil Gustafsson Date: 03/10/2012
Object pooling vs creating lots of them
If you, like me, have a background in C programming it's a spine reaction to avoid lots of memory...
Author: Emil Gustafsson Date: 02/22/2012
Deployment specific azure config
I've earlier described a simple way to deal with development specific config but the larger your...
Author: Emil Gustafsson Date: 01/30/2012
Repetitive Lazy to the rescue
The other day I was doing my usual double check locking when a co-worker pointed out that without a...
Author: Emil Gustafsson Date: 01/25/2012
Visual studio achievements
I guess this plugin for Visual Studio should be mandatory from now on...
Author: Emil Gustafsson Date: 01/21/2012
Avoid timeout when uploading large blobs to Azure
If you're uploading (and I guess downloading) large blobs to Azure you might hit a timeout...
Author: Emil Gustafsson Date: 01/18/2012
Evolution of a hand rolled fake
I usually hand roll my own fake objects for my tests. They have always looked a lot like what Stubs...
Author: Emil Gustafsson Date: 01/16/2012