jaredpar's WebLog

Code, rants and ramblings of a programmer.
Posts
  • jaredpar's WebLog

    Blog Moving

    • 1 Comments
    As you may have noticed my blog has been a little stale over the last few years. A large part of that is simply a result in my job change 4 years ago. My daily developer life in Visual Studio always served as inspiration for posts: visual Studio is public...
  • jaredpar's WebLog

    Interviewing College Candidates

    • 2 Comments
    Lately I’ve been reading a lot about peoples interview processes and it inspired me to share my process for interviewing college candidates. I’ve been doing interviews at Microsoft for ~10 years now and developed this process over that time...
  • jaredpar's WebLog

    Round tripping a VSIX project

    • 1 Comments
    Visual Studio 2012 introduced project file round tripping feature.  This lets developers edit the same project in Visual Studio 2010, 2012 and 2013 without the need to upgrade the project file or modify it in any way.  This was a highly requested...
  • jaredpar's WebLog

    Immutable isn’t just for parallel code

    • 5 Comments
    For the last 6 months the BCL team has been hard at work shipping an out of band release of immutable collections for .Net. Most recently delivering an efficient implementation of ImmutableArray<T> http://blogs.msdn.com/b/dotnet/archive/2013...
  • jaredpar's WebLog

    Don’t mix await and compound assignment

    • 7 Comments
    The 5.0 release of C# introduced the await keyword which makes it extremely easy to use Task<T> in a non-blocking fashion.  This allows developers to replace either blocking calls to Task.Wait() or complicated combinations of ContinueWith and...
  • jaredpar's WebLog

    Not all “true” are created equal

    • 8 Comments
      During a review of some low level bit manipulation logic a developer raised a question about the correctness of a piece of code which allowed any arbitrary byte to be seen as a bool.  No one could recall if true was defined as not 0 or simply...
  • jaredpar's WebLog

    Authoring a Utility Library for Visual Studio

    • 2 Comments
    As I’ve developed VsVim over the years I’ve authored quite a few reusable Visual Studio components. For the last 6 months I’ve had many of these factored out to a separate utility library and this last week I decided to publish them...
  • jaredpar's WebLog

    VsVim 1.0 Released

    • 9 Comments
    I just released an update to VsVim for Visual Studio 2010.  This is available on the extension manager in Visual Studio or can be downloaded directly at the following link.  [1] Link: http://visualstudiogallery.msdn.microsoft.com/en-us/59ca71b3...
  • jaredpar's WebLog

    DebuggerDisplay attribute best practices

    • 1 Comments
    The DebuggerDisplayAttribute is a powerful way to customize the way values are displayed at debug time.  Instead of getting a simple type name display, interesting fields, properties or even custom strings can be surfaced to the user in useful combinations...
  • jaredpar's WebLog

    VsVim Update Released (Version 0.9.5)

    • 12 Comments
    I just released an update to VsVim for Visual Studio 2010.  This is available on the extension manager in Visual Studio or can be downloaded directly at the following link. Link: http://visualstudiogallery.msdn.microsoft.com/en-us/59ca71b3-a4a3-46ca...
  • jaredpar's WebLog

    Yet another way to defeat C++ const

    • 2 Comments
    One of my favorite C++ features, and one I feel is terribly underutilized in many code bases, is the const mechanism.  It’s a great mechanism for defining dual roles for the same object type: a mutable and (ideally) non-mutable one.  But as...
  • jaredpar's WebLog

    Interesting Late Binding Scenario with ToString

    • 4 Comments
    Not to long ago I received an email from a customer who wanted to report a bug in the VB.Net debugger.  They believed that there was a bug invoking ToString on Integer types in the immediate window and provided the following sample as evidence i...
  • jaredpar's WebLog

    VsVim Update Released (Version 0.9.4)

    • 3 Comments
    I just released an update to VsVim for Visual Studio 2010.  This is available on the extension manager in Visual Studio or can be downloaded directly at the following link. Link: http://visualstudiogallery.msdn.microsoft.com/en-us/59ca71b3-a4a3-46ca...
  • jaredpar's WebLog

    Why the debugging difference between C# and VB.Net return values?

    • 0 Comments
    A feature which seems to be getting more requests recently is support for seeing the return value of a function in the debugger without the need to assign it into a temporary. C++’s had this feature for some time but it’s been lacking in managed...
  • jaredpar's WebLog

    VsVim Update Released (Version 0.9.3)

    • 9 Comments
    I just released an update to VsVim for Visual Studio 2010.  This is available on the extension manager in Visual Studio or can be downloaded directly at the following link. Link: http://visualstudiogallery.msdn.microsoft.com/en-us/59ca71b3-a4a3-46ca...
  • jaredpar's WebLog

    Discriminated Unions in C++

    • 4 Comments
    Earlier this week I started writing a function which needed to represent three states in the return value, two of which had an associated value. In my mind I immediately came to the following solution type BuildAction = | Reset | LinkOneWithNext...
  • jaredpar's WebLog

    Automatically loading DLL’s in the debugger

    • 2 Comments
    In a recent post I discussed the apparent flakiness of extension methods and the debugger being a result of whether or not the DLL containing the extension methods were loaded into the debugee process.  Several users asked in the comment section...
  • jaredpar's WebLog

    VsVim Update Released (Version 0.9.2)

    • 2 Comments
    I just released an update to VsVim for Visual Studio 2010. This is available on the extension manager in Visual Studio or can be downloaded directly at the following link. Link: http://visualstudiogallery.msdn.microsoft.com/en-us/59ca71b3-a4a3-46ca...
  • jaredpar's WebLog

    Improving the display of F# seq<T>’s in the debugger

    • 0 Comments
    F#’s seq<T> expressions are a frustrating item to inspect at debug time.  A seq<T> value is a collection and when users inspect such a value at debug time they want to see the contents of the collection.  Instead they are often presented...
  • jaredpar's WebLog

    Converting System.Func<T1..TN> to FSharpFunc<T,TResult>

    • 3 Comments
    Interop of delegate style types between F# and other .Net languages is a pain point that results from a fundamental difference in how delegates are represented in the F# language.  Typical .Net languages like C# see a delegate as taking 0 to N parameters...
  • jaredpar's WebLog

    Advanced Multitargeting in VB.Net

    • 0 Comments
    Multi-targeting is a feature introduced in Visual Studio 2008 which allows developers to use new versions of Visual Studio to target earlier versions of the .Net platform.  It allowed users to target both the new 3.5 and 3.0 and the previous 2.0...
  • jaredpar's WebLog

    Extension Methods and the Debugger

    • 6 Comments
    One source of confusion I find myself clearing up a lot is the use of evaluating extension methods in the debugger windows.  Users report evaluation as working sometimes but not others for the exact same piece of code.  Such flaky behavior can...
  • jaredpar's WebLog

    Disable copy construction when the type is not copy safe

    • 5 Comments
    A couple of days ago I finished coding up a feature in our C++ code base, hit F5 and was met with a nasty memory corruption debugger dialog. After about an hour of investigation it appeared one of my types was living past the lifetime of it’s owning...
  • jaredpar's WebLog

    VsVim Update Released (Version 0.8.2)

    • 2 Comments
    I just released an update to VsVim for Visual Studio 2010.  This is available on the extension manager in Visual Studio or can be downloaded directly at the following link. Link: http://visualstudiogallery.msdn.microsoft.com/en-us/59ca71b3-a4a3-46ca...
  • jaredpar's WebLog

    Do not throw a NullReferenceException when validing “this” in an extension method

    • 3 Comments
    One pattern I’ve started running into is developers explicitly throwing a NullReferenceException when validating the “this” parameter of an extension method. public static void ForEach<T>( this IEnumerable <T> enumerable, Action <T>...
Page 1 of 13 (321 items) 12345»