Posts

2019

Default Interface Members, What Are They Good For?

Default Interface Members and Inheritance

Some Thoughts On Feelings In Open Source

2018

Announcing AzurePipelines.TestLogger

An Azure Pipelines logger extension for the Visual Studio Test Platform

Code From Your Phone

How I achieved mobile development nirvana.

Pushing Packages From Azure Pipelines To Azure Artifacts Using Cake

The Bleeding Edge Of Razor

Using the Razor view engine in your own code.

MSBuild Loggers And Logging Events

How to easily write cross platform MSBuild loggers.

Announcing Discover .NET

Awesome .NET open source and community resources.

Blazor, Razor, WebAssembly, and Mono

How the pieces fit together.

2017 In Review

A look back.

2017

Announcing NetlifySharp

A .NET API client for Netlify.

Using ASP.NET ModelState With Vue.js

Creating A One-Page GitHub Profile With Wyam

Running A Design-Time Build With MSBuild APIs

Getting source files, references, and build properties without invoking the compiler.

Wyam 1.0

Over two years in the making.

Using The Same Object For Server And Client View Models

Using Expression Trees To Get Class And Member Names

Microsoft Build, RevolutionConf, and .NET Fringe Retrospective

Building A Cloud-Based Web App From Scratch, Part 2

Setting up Azure Functions and Azure App Services

Building A Cloud-Based Web App From Scratch, Part 1

Azure Cosmos DB + Azure Functions + Vue.js = Awesome

Enabling Application Insights for Static Sites

What Makes A Static Site?

Exploring the differences between static and dynamic web sites.

Publishing To Azure Using Cake And Web Deploy

Scripted deployment synchronization for static sites

Development On The Go

The iOS tools I use to make the most of every minute of downtime.

Synchronizing Files With Azure Web Apps Over FTP

Easy deployment to Azure using FTP or FTPS

Announcing A New Documentation Experience

Easy to customize API, content/wiki pages, and blog posts in the new Wyam Docs recipe.

Roslyn-Based DSLs vs. Standard C# Scripts

Examining the advantages of each and when you'd want to use them.

2016 In Review

A look back.

2016

Moving To Netlify

Why I'm moving my blog and other sites to Netlify.

Syntax Highlighting In Wyam

How to make your code look pretty.

Supercharge Your Enums

It's easy with this one little trick!

Integrating Wyam Into An ASP.NET MVC Site

I heard you like static sites, so I put some static site in your dynamic site

Exploring the NuGet v3 Libraries, Part 3

Installing packages

Announcing Scripty

An alternative to T4 for compile-time code generation using the power of Roslyn scripting

Exploring the NuGet v3 Libraries, Part 2

Searching for packages

Exploring the NuGet v3 Libraries, Part 1

Introduction and concepts

Capturing Standard Input in C#

My experience resolving a surprisingly tricky problem

Some Thoughts on Microdependencies, NPM, and Node

What can we learn from left-pad gate?

A Simple ConcurrentHashSet Implementation

Computed Properties and Entity Framework (Revisited)

Another way to use your computed properties in predicates and projections.

NuGet API Survey

What projects are using the NuGet API?

2015 In Review

A personal look back (and an important announcement).

2015

WrappingStringBuilder

A small utility class for wrapping strings at predefined points based on line length.

Announcing @dotnetissues

A Twitter bot to keep you up to date with important .NET repositories.

Multiple String Replacement

Strings are hard.

LINQPad.CodeAnalysis Is Now Part Of LINQPad

Streaming LINQ-Based Text Search and Replace

Easy Performance and Query Logging in ASP.NET with Serilog and MiniProfiler

Serving Extensionless URLs with OWIN

My first OWIN middleware.

Converting My Blog to Wyam

How I went from compiled to static in less than a day.

Announcing Wyam

A modular static content generator built on Roslyn, Razor, and rainbows.

Using the .NET Compiler Platform in T4 Templates

Metaprogramming with Roslyn.

Identity Crisis

Changing your name in the digital age.

Announcing LINQPad.CodeAnalysis

.NET Compiler Platform helpers and utilities for LINQPad.

Introduction to Scripting with the .NET Compiler Platform (Roslyn)

So easy a caveman can do it.

Random Polygon Page Backgrounds

My god, it's full of triangles.

A Tale of Two APIs

A strategy for dealing with multiple public interfaces for libraries.

Debugging Stack Overflows on IIS

1990 called and they want their debugger back.

Eliminating Magic Strings in ASP.NET MVC

One man's quest to get rid of quotes.

2014

Automatic Retry for LINQ to SQL

A new library that makes retrying transient failures in LINQ to SQL easier.

Computed Properties and Entity Framework

How to use your computed properties in predicates and projections.

Open Source Obligations

What is required from creators, contributors, consumers, and coders?

Introducing FluentBootstrap

Extensions, helper classes, and other goodies to help you use the Bootstrap CSS framework.

How To Value Creative Work In The New Economy?

What To Do When Supply, Demand, and the Middle-Man Aren't In Sync?

A T4 Template To Get All CSS Class Names

Metaprogramming For Fun And Profit

A Survey of .NET Static Site Generators

Fun With Fizz Buzz

Announcing RazorDatabase

An in-memory collection populated by Razor views and custom metadata.

Deploying a Public NuGet.org Package From Scratch

With Continuous Integration Using GitHub and AppVeyor

Simple Row Coloring in a KendoUI Grid

New Blog

Look, Ma, no database!

Method Chaining, Fluent Interfaces, and the Finishing Problem

Or Why You Can't Have Your Cake And Eat It Too

Brace Style Convention

Or Why I Prefer My Braces On Their Own Line

Using ASP.NET MVC and Razor To Generate PDF Files

How I Export Kendo Grids to Excel (or CSV)

How to Post Data (Including Checkboxes) in a KendoUI Grid back to an ASP.NET MVC Action

Strongly Typed Icon Fonts in ASP.NET MVC

2013

Round Robin Row Selection From SQL Server

Quick and Dirty Multiple Value Dictionary Using Extension Methods

Custom Entity Type Configurations in Entity Framework Code First (Part 2)

Custom Entity Type Configurations in Entity Framework Code First (Part 1)

Automatically Generating Column Titles For A KendoUI MVC Grid

2012

Getting an HtmlHelper for an Alternate Model Type

Object Persistence In Nxdb

Introducing Nxdb

A high-performance embedded XML database for .NET.

Introducing NiceThreads

A threading utility library designed to make different threading primitives easier to use.

2010

XQuery Function To Get The Number Of Week/Work Days

Nested Grabs In GtkSharp

Right-Click Context Menus In GtkSharp

Exporting a GtkSharp TreeView to CSV

All packaged up in nice little utility methods.