Kirill Osenkov
Visual Studio Team, Roslyn Services QA
Kirill's Blog
Microsoft is making some changes to this blogging platform and I decided it's time to move this blog...
Date: 06/16/2019
Announcing MSBuild Structured Log: record and visualize your builds
I’ve just published a new tool: https://github.com/KirillOsenkov/MSBuildStructuredLog It is an...
Date: 05/13/2016
Where to Download WPF Performance Suite? (Perforator, Visual Profiler)
I was having trouble finding the WPF performance tools mentioned in this blog:...
Date: 04/05/2016
Added ContentSync command line arguments
I’ve added various command line arguments to the tool I blogged about the last time. The new release...
Date: 01/23/2016
EnableVSIPLogging to show VS command info
Found an interesting trick here:...
Date: 01/19/2016
ContentSync – a content-based file copy tool
Suppose you need to sync the contents of two large folders, Source and Destination. Normally...
Date: 01/09/2016
Live Writer is open source!
All blog posts in this blog have been posted using Live Writer, a great blogging tool we’ve had for...
Date: 12/09/2015
An open-source full-fidelity XML parser
A while back I needed to understand XML at a low-level, including whitespace, line breaks and...
Date: 08/25/2015
Why is Environment.CurrentDirectory bad?
It is bad in general for various reasons, but it’s especially bad in build tools and related space...
Date: 06/16/2015
MSBuild: unnecessary rebuilds because of generated AssemblyAttributes.cs
A surprisingly common cause for unnecessary rebuilds of C# MSBuild projects is an unfortunate design...
Date: 05/12/2015
How to have a Project Reference without referencing the actual binary
Sometimes you want a project reference from project B to project A to indicate a build-time...
Date: 04/04/2015
Using a common intermediate and output directory for your solution
By default each project in a VS solution has its output directory set to bin and its intermediate...
Date: 04/04/2015
MSBuildDumper
I published a tool to print out the evaluated values of properties and items in an MSBuild project:...
Date: 04/04/2015
How to investigate Rebuilding in Visual Studio when nothing has changed
In some managed projects there’s this unfortunate behavior: you press F5 in VS, run your app, stop,...
Date: 08/04/2014
Get most duplicated strings from a heap dump using ClrMD
ClrMD is an awesome managed API to inspect managed processes and dump files. To use it, just add a...
Date: 07/05/2014
sn.exe cheat sheet
I don’t find sn.exe command line arguments particularly intuitive, and the fact they’re case...
Date: 03/25/2014
Creating an instance of an open generic type without specifying a type argument
My fellow Roslyn tester @vreshetnikov has found not one, but two ways to do the impossible: 1: using...
Date: 01/08/2014
Saving Regedit Favorites in a .reg file
Regedit.exe has a useful feature – Favorites menu, you can add an often used registry location to...
Date: 01/08/2014
Registry keys to configure Watson and automatically save full dumps locally
You might have noticed that after installing Visual Studio the behavior of crashing programs changes...
Date: 12/18/2013
Circular assembly references in the .NET framework
It was a surprise to me when I discovered that a lot of assemblies in the .NET BCL reference each...
Date: 11/23/2013
Dump MSBuild properties and items for a project
Sometimes when you’re reading a .csproj file you encounter properties like $(TargetDir) and wonder...
Date: 07/09/2013
Naming Roslyn concepts
We have a rather central component in Roslyn and we’re looking how to name it best. I’d like to...
Date: 01/21/2013
Tips on building a modern silent desktop PC?
For many years I’ve been a happy user of completely silent desktop PCs at home. I hate noise...
Date: 11/19/2012
Roslyn Code Quoter updated to work with September 2012 CTP
I’ve blogged before about the tool called Quoter that shows how to use the Roslyn Syntax APIs...
Date: 11/05/2012
Split an imagestrip into individual images/icons
If you have a large horizontal image Nx16 and you’d like to split it into individual 16x16 icons,...
Date: 10/08/2012
Roslyn September 2012 CTP is out!
You can download it here. Just like the previous CTPs, the setup is fairly non-intrusive and should...
Date: 09/17/2012
Roslyn Code Quoter tool – generating syntax API calls to generate any C# program
Whether you’ve played with the Roslyn CTP or are planning to do so in the future, chances are that...
Date: 07/22/2012
Windows Explorer Preview Pane for .vb files
I love using the Preview Pane in Windows Explorer to quickly preview file contents: Usually, to...
Date: 05/29/2012
High accuracy DateTime.UtcNow
Update: in the original version of this post I’ve jumped to an incorrect conclusion that the timer...
Date: 05/16/2012
A list of common HRESULT error codes
I was looking for error code –2146232797 (hex 0x80131623, which turned out to be what is...
Date: 05/14/2012
A Google Group for Augmented Programming
Josh Marinacci (from https://joshondesign.com) recently sparked a discussion about structured...
Date: 05/10/2012
Your Feedback about the Roslyn CTP NuGet Package?
As part of the Roslyn CTP in October 2011 we’ve published the core compiler and services binaries as...
Date: 04/15/2012
My Alma mater – BTU Cottbus in Germany
For my regular readers – this is a non-technical, non-work related post about my university BTU...
Date: 03/23/2012
New Tabula video
For those of you who follow me because of my interest in geometry, NumeracyWorks has released a new...
Date: 03/08/2012
Found my 1000th bug in Roslyn!
This might not seem like a big deal, but... Knowing that you guys won’t be seeing any of these bugs...
Date: 03/08/2012
How to change the default command prompt color on Vista and above
If you like me don’t like the default green on black in the command prompt, you can change the...
Date: 02/24/2012
VS hangs for 1 minute on start debugging? Check for dead symbol paths!
I’ve just hit this again so I decided to share the solution in case anyone else hits this. Symptom:...
Date: 01/11/2012
DateTime.UtcNow is generally preferable to DateTime.Now
This seems to be commonly known and accepted best practice to use DateTime.UtcNow for non-user...
Date: 01/10/2012
Install-Package Roslyn
I am happy to announce that the core C# and VB compiler assemblies from our first Roslyn CTP are now...
Date: 12/13/2011
Roslyn CTP
For the past year and a half or so I’ve been working on the QA team for the Roslyn project. The goal...
Date: 10/18/2011
How to get DTE from Visual Studio process ID?
DTE is an automation framework that is used to programmatically control Visual Studio, often from...
Date: 08/10/2011
How Microsoft Names Releases… And What You Can Do About It
Microsoft® SQL Server® 2008 R2 SP1 Feature Pack CTP1. Scott Hanselman wrote a blog post called...
Date: 07/28/2011
In ngen’ed assemblies, static field initializers don’t run until the field is first accessed
Interesting fact that I discovered today: usually, static field initializers run whenever the parent...
Date: 07/14/2011
Tabula
Another announcement for geometry enthusiasts today. David Hartmann, an experienced math teacher and...
Date: 05/02/2011
Live Geometry for Windows Phone 7
I was really curious to try to write an app for WP7, but I didn’t have a whole lot of ideas. It’s...
Date: 04/25/2011
Improved HTML Copy in the latest Productivity Power Tools
Executive summary: HTML Copy is an extension for Visual Studio 2010 (part of Productivity Power...
Date: 03/27/2011
Running .NET applications in-process using AppDomains
When testing a compiler for a managed language a very convenient end-to-end testing technique is to...
Date: 02/13/2011
Fix available for the VS 2010 context menu scrolling issue
Date: 10/14/2010