ASP.NET News from Blogger: Eric Gunnersons C# Compendium   Get the feed of: Eric Gunnersons C# Compendium

Total News: 308

Agile and the Theory of Constraints Part 1

I’ve been spending some time over the past few months exploring the lean side of the house and looking for things I can adapt into the agile side of the house. The most interesting thing I found was t...

You Suck at TDD #7 Improvements Phase 2

All changes from this post are in the Improvements Phase 2 repo… Commits that start with “R:” are done through Reshaper. I’ll cluster them together this time. R: Start of Phase 2 Last time, I created ...

You Suck at TDD #6 Improvements Phase 1

Welcome to the first post on improving the yucky code. I have a few points I’d like to cover briefly, and then we’ll dive into the code. First off, I’m going to end up refactoring to a specific endpoi...

The Goal and The Phoenix Project

I have been spending some time looking at how to apply some of the lessons of lean to software development team, and part of that has been catching up on some reading. One of the classics is The Goal ...

Port/Adapter/Simulator: read-only and write-only dependencies

When dealing with many external dependencies, the Port/Adapter/Simulator pattern works great. But what about dependencies that are read-only – such as consuming an information feed from another system...

Port/Adapter/Simulator: read-only and write-only dependencies

When dealing with many external dependencies, the Port/Adapter/Simulator pattern works great. But what about dependencies that are read-only such as consuming an information feed from another syste...

You suck at TDD #3 On Design sensitivity and improvement

Through an above-average display of ineptness, I managed to overwrite my first version of this post with a response I wrote to the comments. Since I'm too lazy to try to reconstruct it, I'm going to g...

Agile Open Northwest 2016 recap

Last week, I spent three days at Agile Open Northwest 2016, a small (300-ish people) agile conference held at the Exhibition Hall at Seattle Center. Well, perhaps 'conference" is the wrong word...

Agile Open Northwest 2016 recap

Last week, I spent three days at Agile Open Northwest 2016, a small (300-ish people) agile conference held at the Exhibition Hall at Seattle Center. Well, perhaps ‘conference" is the wrong word; one ...

You suck at TDD #4 External dependencies

When I started doing TDD, I thought it was pretty clear what to do with external dependencies. If your code writes to a file system for example you just write a file system layer (what would typical...

You suck at TDD #4 External dependencies

When I started doing TDD, I thought it was pretty clear what to do with external dependencies. If your code writes to a file system for example you just write a file system layer (what would typical...

Lean, Toyota, and how it relates to agile.

I like to read non-software-development books from time to time, and during my holiday vacation, I read The Toyota Way to Continuous Improvement: Linking Strategy and Operational Excellence to Achieve...

Lean, Toyota, and how it relates to agile.

I like to read non-software-development books from time to time, and during my holiday vacation, I read The Toyota Way to Continuous Improvement: Linking Strategy and Operational Excellence to Achieve...

Response to comments : You suck at TDD #3Design sensitivity and improvement

I got some great comments on the post, and I answered a few in comments but one started to get very long-winded so I decided to convert my response into a post. Integration tests before refactoring Th...

You suck at TDD #3Design sensitivity and improvement

I'm going to talk a bit about design in this post. More specifically, I'm going to talk about sensitivity to design issues. But, before that, I'd like to start with an exercise. Grab some paper and ...

You suck at TDD #2Mocking libraries

Note: I am focusing only on the design impact of TDD. To better understand the overall impact, see this series of posts by Jay Bazuzi. My first experience with TDD was back in 2002 or so, and it was ...

You suck at TDD #1: Rewrite the steps

I've been paying attention to TDD for the past few years doing it myself, watching others doing it, reading about it, etc. - and I've been seeing a lot of variation in the level of success people are...

Agile Transitions Aren't

A while back I was talking with a team about agile. Rather than give them a typical introduction, I decided to talk about techniques that differentiated more successful agile teams from less successfu...

Agile Transitions Arent

A while back I was talking with a team about agile. Rather than give them a typical introduction, I decided to talk about techniques that differentiated more successful agile teams from less successfu...

Resharper tip #1: Push code into a method / Pull code out of a method

Resharper is a great tool, but many times that operation that I want to perform isnt possible with a single refactoring; you need multiple refactorings to get the result that you want. I did a search ...

Resharper tip #1: Push code into a method / Pull code out of a method

Resharper is a great tool, but many times that operation that I want to perform isnt possible with a single refactoring; you need multiple refactorings to get the result that you want. I did a search ...

Agile team evaluation

Ive been thinking a bit about team evaluation. In the agile world, this is often done by looking at practices is the team doing pairing, are they doing story mapping, how long is their iteration leng...

Agile management

A friend at work posted a link to the following article: Im Sorry, But Agile Wont Fix Your Products and I started to write a quick note but thought it deserved a bigger response +++++++++++++ Okay...

A little something that made me happy

Last week, I was doing some work on a utility I own. It talked to some servers in the background that could be slow at times and there was no way to know what was happening, so I needed to provide som...

What makes a good metric?

I got into a discussion at work today about metrics a discussion about correctness vs utility and I wrote something that I thought would be of general interest. ------ The important feature of met...

Port/Adapter/Simulator and UI

Ive been working on a little utility project, and Ive been using port/adapter/simulator on both the server-side parts and on the UI parts. It has been working nicely, though it took me a while to get ...

The no bugs journey part 3what kind of bug is this?

If you are in a buggy group, you have a lot of bugs. After writing the preceding, Ill endeavor to make the rest of this post slightly less obvious. Anyway, so, you have a lot of bugs, and you need to...

No bugs journey episode 2: Its a matter of values

Read episode 1 first. Here we are at episode 2, and time for another question. Of the three, which one do you value the most? Shipping on schedule Shipping with a given set of features Shipping with ...

No Bugs Journey Episode 1: Inventory

Over the past few years I had the opportunity to work in an environment in which we achieved a significant reduction in bugs and an associated increase in quality and developer satisfaction. This seri...

Unit test success using Ports, Adapters, & Simulatorskata walkthrough

You will probably want to read my conceptual post on this topic before this one. The kata that Im using can be found at github here. My walkthrough is in the EricGuSolution branch, and I checked in w...

Unit Test Success using Ports, Adapters, and Simulators

There is a very cool pattern called Port/Adapter/Simulator that has changed my perspective about unit testing classes with external dependencies significantly and improved the code that Ive written qu...

Tricks you can play on yourself #789Linq

I was profile some code this morning, and came across some interesting behavior. Basically, we had some low level code that looked something like this: IEnumerable<Guid> GetSpecialQuestionI...

Simulators or not?

Ive been spending some time playing with Cockburns hexagonal architecture  (aka ports and adapters), and the extension I learned from Arlo, simulators. Ive found it to be quite useful. I was wri...

Identifying your vertical story skeleton

Ive been leading an agile team for a while now, and I thought I would share some of the things weve learned. This one is about vertical slices, and learning how to do this has made the team more effic...

Rational behavior and the Gilded Rose kata

The following is based on a reply to an internal post that I almost wrote this morning, before I decided that it might be of more general interest. It will take a little time to get to my point so per...

A Programmer's Guide to C# 5.0

My author's copies of the Fourth Edition of my book showed up today: It is significantly updated from the previous version. I especially enjoyed writing the sections on Linq and asynchronous features...

Small in, Big out

Ive come across some code that is using and overusing IEnumerable<T>, and thought it might be of general interest. Consider the following method signatures: IEnumerable<string> Pro...

A Programmers Guide to C# 2012

More months than Id like to think about, I decided to undertake an update of my sorely out-of-date C# book, and Saturday I submitted the last of the chapters for the rewrite. I still have the author ...

A new year and a new group

Im starting off the new year (well, in a few weeks) in a new group. I am leaving the HealthVault team, and moving to an internal Engineering Excellence team where I will be working on making our engin...

Improve HealthVault query efficiency with final transforms

A while back I wrote a post about using the built-in HealthVault transforms to get a different view on your data. That post discusses the mtt, stt, and form transforms. Theres another transform optio...

Mobile HealthVault Apps and Sync

I have been working with some developers working on mobile applications that connect to HealthVault, and the issue of synchronizing data between the mobile device and HealthVault has come up a couple ...

A movie scene

Anybody who has watched movies about software development knows that reality is much different. None of us work with huge screens on the wall, and debugging is a lot of unexciting detective work. Toda...

Dealing with blob data in HealthVault XML

I recently had a request for more information on dealing with blob data using our newly-released Mobile support, which finally got me to write something about low-level blob support. This information...

CHC 2011 HealthVault talk, and what is new for HealthVault this past year

When we were creating our talk, we had a problem. Well, to be fair, we had a few problems, but the problem that I want to talk about is the for more information slide, the one that you put at the end...

Speaking at CHC 2011

I'm in Chicago this week to speak at the Microsoft Connected Health Conference, 2011 edition. It's been nice to get away from the cool and rainy northwest and spend some time in Chicago,where the weat...

Default parameters in C#

From an internal discussion we're having on the advisability of using default parameters in C#: Currently, the pain and limitation of doing overloads forces you to rethink how a method should work. Co...

HealthVault Event Notifications

The HealthVault platform now provides the ability to notify applications when specific conditions are met. A scenario A blood-pressure-tracking application wants to be notified whenever a new blood p...

Writing Tests for HealthVault Applications

We have added some useful new functionality designed to make it easier to test a HealthVault application. The existing HealthVault SDKs didn’t make it easy if you wanted to write isolated (or me...

Naked came the null delegate

I few weeks ago James Curran came up with the idea of a number of .NET bloggers (or, in my case, bloggers who remember vaguely what .NET is about) write a serial story. I, who am easily flattered by t...

HealthVault SDK and Visual Studio 2005

The HealthVault SDK is currently built on top of the .NET 2.0/Visual Studio 2005 toolset. We are thinking about moving forward a few years and switching to the .Net 3.5/Visual Studio 2008 toolset, but...

View Other bloggers