Duncan Mackenzie

Duncan Mackenzie Duncanma "yeah that's awful close, but that's not why I'm so hard done by"

Niner since 2006

Developer for the Channel 9 team, formerly worked on MSDN as a developer, content strategist and author.

See more posts…

  • GoingNative 2012: All Sessions are now available On-Demand!

    @happycoder: that seems like overkill when you can just right click on the individual video links to the right of the video and download them right from in your browser

  • New feature: your own personal video queue

    @DBNickel: We are looking at that as a future feature... but it raises the complexity significantly as we'd go from just adding to a data store based on user action to reacting to all newly published items, checking a 'subscription' list then adding to the queue... definitely something we'd like to see though!

  • Visual Studio Achievements in 60 seconds

    @SpeckOps_: Hey SpeckOps_, the underscore in your name was causing an issue... but if you update to the latest version of the extension (using the 'Extension Manager' option under the Tools menu, then clicking in the 'Updates' area on the left side) and, once you are running version 1.1 or higher, go to 'Tools | Options', find Visual Studio Achievements in the tree view on the left side, click 'Change User' and you'll be asked to connect up to Channel 9 again... and then all will be well!

  • Visual Studio Toolbox: Visual Studio Achievements

    @Stephen: No code is sent to the server, we only send information about the achievement itself (progress made, achievement unlocked, etc...)

    As far as a performance hit, there is some impact when your code is scanned, which happens after a build event, but we haven't really noticed any major slow down. The larger the project(s) the more you are likely to notice it though.

  • Visual Studio Toolbox: Visual Studio Achievements

    @JasonBub_Nielsen: this is do to how we are looking at the code, we aren't watching you type, but instead just doing a pass over the whole project. Obviously this creates a few 'false positives', like when I received the achievement for using GOTO, when I've never used that command in C# in my life (I didn't actually realize it existed), but a project that we have in our solution does use it.

    At the moment though, we don't see any easy way to avoid this issue. On a positive note, it does mean that you will get achievements for code that you wrote in the past (assuming you are still loading and building it), not just code written after installing this add-in.

  • Visual Studio Toolbox: Visual Studio Achievements

    @JasonBub_Nielsen: Hey Jason, there is a bug with how achievements works with a username with underscore(s) in it. For now there is a work around here: http://channel9.msdn.com/Blogs/C9Team/Announcing-Visual-Studio-Achievements#c634625600690810633 if you don't want to wait until we get the fix deployed

  • Announcing Visual Studio Achievements Beta

    @JiggleBop: One thing to note is that for 'progress' based achievements (like the 'close all but this' example) we only count a maximum of one per minute, no matter how many you actually do. If you are performing the action(s) as a normal part of your work with Visual Studio I suspect you'll just unlock the achievement naturally in time.

  • Announcing Visual Studio Achievements Beta

    @D_K: @Duncan_McGregor: Hey folks, we are looking into this issue right now, so hopefully we'll get it resolved in the near future.

  • Working with Collections - 21

    for those that are interested, the two lines produce the same IL (intermediate language, the code that C# is compiled into so that the .NET runtime can execute it)

      IL_0001:  newobj     instance void ConsoleApplication1.Car::.ctor()
      IL_0006:  stloc.2
      IL_0007:  ldloc.2
      IL_0008:  ldstr      "red"
      IL_000d:  stfld      string ConsoleApplication1.Car::color
      IL_0012:  ldloc.2
      IL_0013:  stloc.0
    
    
      IL_0014:  newobj     instance void ConsoleApplication1.Car::.ctor()
      IL_0019:  stloc.3
      IL_001a:  ldloc.3
      IL_001b:  ldstr      "red"
      IL_0020:  stfld      string ConsoleApplication1.Car::color
      IL_0025:  ldloc.3
      IL_0026:  stloc.1
    

  • Working with Collections - 21

    @MihaiMorariu: Mihai, this is just a syntax difference and is really personal preference. When you create an object and pass in a list of initial values, the parantheses can be skipped and they are assumed. So

                Car car = new Car() {color = "red"};
    

     

    and

     

                Car car = new Car {color = "red"};
    

    are functionally equivalent. Personally I use the first, because the second looks odd to me (and apparently to you as well Smiley ), but either will work. You can see this on MSDN at http://msdn.microsoft.com/en-us/library/bb384062.aspx and if you look at the various code samples you will see that they use both forms.

See more comments…