Tim Ng

F# for the masses

Blog - About

About Tim Ng

I'm from Toronto, Ontario - graduated from the University of Waterloo in 2003, and have been working at Microsoft since then. I interned twice on the Visual Studio for Devices team, and started my full time job there as well. I also worked on the VS Core team briefly, before joining on the VB team, where I am now.

On the Device team, I worked on the native debugger; specifically, I worked on the expression evaluation piece (if you interact with the debugger by inspecting values and changing values, you interact with the expression evaluator). I also worked on some of the high-level communication between the debugger and the device, as well as some other random tasks.

On the Visual Basic team now, I work on the compiler team. We are focused mainly on LINQ, but we are also working on other things such as improving performance and stability of the compiler.

  • Tim Ng

    Where do you use F#?

    • 0 Comments
    Recently on StackOverflow there was a question asked about “ what areas might the use of F# would be more appropriate then C# ”. Some of the answers are very insightful – take a look and see if you agree or disagree! You’ll notice that my good friend...
  • Tim Ng

    VS2010 + VIM

    • 0 Comments
    As you may know, I am a diehard VIM user. Thankfully, Jared , a big F# fan (Jared and I used to work on VB together), has written a plug-in for VS2010 called VsVim which supports VIM emulation in VS2010. If you are a VIM user, this plug-in is essential...
  • Tim Ng

    F# + WPF + Events

    • 0 Comments
    I recently had to do some travelling for the VS launch event in Las Vegas and QCON event in Beijing. One of the things thats nice about travelling is that it gives you time to do some things you may not otherwise do - in my case, I had a chance to try...
  • Tim Ng

    QCON 2010 Presentation Sample

    • 0 Comments
    I’ve posted the QCON 2010 F# presentation sample on my code gallery page. The QCON experience was very positive for me, and I had a great time both at QCON and hanging out with the MS MVPs in Beijing. Looking forward to the next time I can visit!
  • Tim Ng

    QCon 2010 Beijing and Chinese F# Blogs

    • 0 Comments
    I’m currently in Beijing, China attending the QCON conference and giving a presentation on F#. It has been a blast so far! Jeff has been a great host and he is an avid F# enthusiast in China – he has a blog (in Chinese) - http://blog.zhaojie.me . In addition...
  • Tim Ng

    F# Channel 9 at Visual Studio 2010 Launch Event

    • 0 Comments
    Channel9 will be doing interviews throughout the Visual Studio 2010 Launch Event at Las Vegas, and at 11:30 AM PDT the Visual Studio Managed Language Team will be on the air! If you want to ask us any questions, send a tweet to @ch9live and watch it here...
  • Tim Ng

    F# Released!

    • 0 Comments
    Just a few moments ago, Bob Muglia announced the general availability of Visual Studio 2010 at the launch event at Las Vegas. I am extremely proud to say that this event also means that the official release of F# is now released! Our team has worked extremely...
  • Tim Ng

    F# Quick Guides: Object Oriented Programming

    • 0 Comments
    Hello! As I mentioned in my earlier post, the F# team is tremendously proud of being a part of Visual Studio 2010. We have worked long and hard to get to this point, and we are very excited with the release of the first fully supported F# language. ...
  • Tim Ng

    SIGCSE 2010 and F#

    • 0 Comments
    This past week I had the chance to attend SIGCSE 2010 and present a session on F#. It was a ton of fun and it was great to talk to many people about F# and how we on the team believe that investing in F#, both professionally and academically, is a fantastic...
  • Tim Ng

    Contract Position On the F# Team

    • 0 Comments
    The F# team is looking for a contractor to work out of the Cambridge UK office with Don Syme! It will be a great opportunity if you can make the location work – check out Don’s post here: http://blogs.msdn.com/dsyme/archive/2010/03/10/contract-position...
  • Tim Ng

    F#/VS2010 RC Released

    • 0 Comments
    Last Wednesday we released VS2010 RC, and with it, the RC update for F#! The team has been hard at work getting the RC to ship-quality, and we hope that you like what you see. Don’s blog has more info on the RC. You can also check out the F# Dev Center...
  • Tim Ng

    F# Beta 2

    • 0 Comments
    I am excited to say that today we have released F#beta 2 (part of the Visual Studio 2010 beta 2 release). Not only that, but we are also releasing a corresponding update to our CTP for Visual Studio 2008. Check it out at http://www.fsharp.net ! The team...
  • Tim Ng

    F# Beta 1 Release

    • 1 Comments
    F# beta 1 is now live! See Don and Brian’s blog post for lots more information. In particular, on the F# team, we have worked really hard to bring not one but two releases! We are releasing a fully integrated F# experience into Visual Studio 2010 targeting...
  • Tim Ng

    Critical Pause in Hyper V

    • 1 Comments
    Just posting this because I ran into this problem today and searching Google/Live didn’t help (returned a site where you have to pay to get answers? I guess the http://www.stackoverflow.com model doesn’t work for them :) In any case, the problem I ran...
  • Tim Ng

    Happy New Year! And a small change for me

    • 1 Comments
    Happy New Year! 2008 just flew by for me. And looking forward, there's a small change I wanted to let you guys know about. As many of you know, I've been the dev lead for the VB compiler team since Visual Studio 2008. A few months ago, I decided to try...
  • Tim Ng

    SVC CodeCamp F# Talk

    • 2 Comments
    Over the weekend, I had a chance to go to the SVC codecamp and give a couple talks. Codecamp was fun, and it was great to meet many of you that I had a chance to talk to. Feel free to email me if you have any questions about any of the things I presented...
  • Tim Ng

    Silicon Valley Code Camp

    • 1 Comments
    It's been a long time since I've posted : we've been very busy working hard on the next version of Visual Basic (the next version of Visual Studio will officially be called Visual Studio 2010 ). I'm really excited about the work we've done, and can't...
  • Tim Ng

    VB expression trees - coalesce operator

    • 4 Comments
    Hey there! In this post, I'll continue describing some of the things that are interesting about the VB compiler, especially related to expression trees and the consumption of expression trees in your LINQ provider. Again, this may not be too interesting...
  • Tim Ng

    Checking generic parameters for Nothing/null

    • 1 Comments
    Consider the following code fragment: Module Module1 Sub Foo(Of T)( ByVal x As T) If x Is Nothing Then End If End Sub Sub Main() Foo(10) End Sub End Module The first thing you might ask is : "hey, how come the compiler allows me to check for Nothing...
  • Tim Ng

    Immutability

    • 2 Comments
    There has been quite a few discussions on immutability lately. Patrick has written an excellent blog post summarizing some of the various thoughts on immutability along with a cool feature in NDepend to do immutable queries. The only thing that I would...
  • Tim Ng

    Using the .ToDictionary() Extension Method

    • 1 Comments
    Last time, I showed how you can use the Cast() extension method defined on IEnumerable/IEnumerable(Of T) to do an element conversion for a sequence that implements one of the enumerable interfaces. Today I want to talk about the ToDictionary extension...
  • Tim Ng

    Using the .Cast() Extension Method

    • 1 Comments
    If you take a look at the set of extension methods offered on IEnumerable (and IEnumerable(Of T)), you'll find that there are plenty of very interesting extension methods. One of them is the Cast() extension method. What does this extension method do...
  • Tim Ng

    Understanding LINQ

    • 1 Comments
    Note : I plan to post this blog on the VB team blog eventually. However, because of the length and complexity, I'm posting this up on my blog for now to hopefully get some eyes on it so that I won't make a fool of myself on the team blog :) Please feel...
  • Tim Ng

    Creating a class that has an anonymous type as a field

    • 3 Comments
    Here's another way to use the generic parameter trick to get an anonymous type as a field. The other day, I was trying to store the result of a lambda expression in a field, but the lambda was typed as Func(Of <anonymoustype>) and since there is...
  • Tim Ng

    New England Code Camp

    • 1 Comments
    It's official - I'll be going to the New England Code Camp this weekend and presenting two talks on LINQ features and Visual Basic. I hope that it will be a blast, and if you're around the New England area, I hope you drop by! The two talks I have planned...
Page 1 of 3 (68 items) 123