DCSIMG
November 2008 - Posts - Guy Burstein's Blog

Guy Burstein's Blog

Developer Evangelist @ Microsoft

News

Guy Burstein The Bu

Disclaimer
Postings are provided 'As Is' with no warranties and confer no rights.

Guy Burstein LinkedIn Profile

November 2008 - Posts

Developer Academy 3 Video: Silverlight Affect on Developers

סרטון פרומו ל- Developer Academy 3: השלכות Silverlight על מוחו של מפתח

הרשמה לכנס

Who Tweets the Most About Developer Academy 3?

Who Tweets the Most About Developer Academy 3?

Developer Academy 3 Twitter DevAcademy3Developer Academy 3 Is just around the corner,  and in the last couple of weeks we’ve been updating our Twitters about it, tagging each update with #devacademy3.

Using the Twitter’s API Search capabilities which I wrote about in my last post, I went to check who tweets the most about Developer Academy 3.

The following chart is shown in a Silverlight application using the new Silverlight Toolkit Chart control.

Developer Academy 3 Twitter DevAcademy3 I’ll show this chart in in my Silverlight Session in Developer Academy and give a prize to the person who tweets the most about Developer Academy 3.

Want to get the prize? This is what you should do:

  • Start tweeting about the event and use the #devacademy3 tag.
  • Come to my session…

Who Tweets the Most About Developer Academy 3?

Enjoy!

Twitter API from C#: Searching

Twitter API from C#: Searching

Twitter API from C#: Search API Following my post Twitter API From C#: Getting a User’s Time Line, I’ll talk about how to use the Twitter Search API.

The main difference between this post and the previous one, is that Twitter Search API currently does not support XML response, and supports only atom and json. So, in order to search for specific terms, I’ll have to take another approach than the one I took before.

Performing a Search

To perform a search in the browser for “DevAcademy3”, I can navigate to: http://search.twitter.com/search?q=devacademy3&show-user=true

In order to get the response in a json format, I’ll use: http://search.twitter.com/search.json?q=devacademy3&show-user=true (added “.json” after the work “search”).

Here’s a sample of the result that contains a list of results with 2 items in it:

{"results":

  [

    {"text":"Working on my Silverlight demo for #devacademy3",

    "to_user_id":null,

    "from_user":"bursteg",

    "id":997265406,

    "from_user_id":145367,

    "iso_language_code":"en",

    "profile_image_url":"http:\/\/s3.amazonaws.com\/twitter_production\/profile_images\/30327862\/Guy_Burstein_Small_normal.jpg",

    "created_at":"Sun, 09 Nov 2008 08:06:24 +0000"},

    {"text":"Registration for #devacademy3 should be open this week",

    "to_user_id":null,

    "from_user":"devacademy3",

    "id":996482591,

    "from_user_id":2271567,

    "iso_language_code":"en",

    "profile_image_url":

    "http:\/\/s3.amazonaws.com\/twitter_production\/profile_images\/63650042\/DevAcademy3Logo_-_Copy_normal.jpg",

    "created_at":"Sat, 08 Nov 2008 16:42:48 +0000"}

  ],

  "since_id":0,

  "max_id":998769058,

  "refresh_url":"?since_id=998769058&q=devacademy3",

  "results_per_page":15,

  "page":1,

  "query":

  "devacademy3"

}

Using the DataContract and DataMember Attributes

In order to extract the data of of this result, I created a SearchResult Class, that will represent a single item in the result, decorated with the appropriate DataContract attributes, that indicate from which attribute in the result should the value be taken.

[DataContract]

public class SearchResult

{

  [DataMember(Name = "text", Order = 0)]

  public string Text { get; set; }

  [DataMember(Name = "to_user_id", Order = 1)]

  public int? ToUserId { get; set; }

  [DataMember(Name = "from_user", Order = 2)]

  public string FromUser { get; set; }

  [DataMember(Name = "id", Order = 3)]

  public int Id { get; set; }

  [DataMember(Name = "from_user_id", Order = 4)]

  public int? FromUserId { get; set; }

  [DataMember(Name = "iso_language_code", Order = 5)]

  public string IsoLanguageCode { get; set; }

  [DataMember(Name = "profile_image_url", Order = 6)]

  public string ProfileImageUrl { get; set; }

  [DataMember(Name = "created_at", Order = 7)]

  public string CreatedAt { get; set; }

}

In addition to that, since the items are encapsulated within a list inside an object, I also created the following SearchResults class:

[DataContract]

public class SearchResults

{

  public SearchResults()

  {

    this.Results = new List<SearchResult>();

  }

 

  [DataMember(Name = "results")]

  public List<SearchResult> Results { get; set; }

}

Using the DataContractJsonSerializer to Extract the Data

Using the WebHttpWegRequest (with the Get method I created in my previous post), I received the response as a string.

This is the code I used in order to deserialize the response into SearchReaults objects (using the DataContractJsonSerializer in System.Runtime.Serialization.Json namespace).

string response =
    Get("http://search.twitter.com/search.json?q=devacademy3&show-user=true");

 

byte[] brr = ASCIIEncoding.UTF8.GetBytes(response);

 

StreamReader reader = new StreamReader(new MemoryStream(brr));

DataContractJsonSerializer serializer =
    new DataContractJsonSerializer(typeof(SearchResults));

SearchResults searchResults =
    (SearchResults)serializer.ReadObject(reader.BaseStream);

reader.Close();

Constructing a Meaningful List of Statuses

Now that I have the search results objects, I can construct a meaningful response using the UserStatus class I created in the previous post, and with some transformations and parsing, get the data I wanted to.

List<UserStatus> users =

  (from u in searchResults.Results

  select new UserStatus

  {

    UserName = u.FromUser,

    ProfileImage = u.ProfileImageUrl,

    Status = HttpUtility.HtmlDecode(u.Text),

    StatusDate = DateTimeOffset.Parse(u.CreatedAt).UtcDateTime

  }).ToList();

Notice I used HttpUtility (in System.Web namespace) in order to decode special characters such as &gt to their readable characters.

Wrapping it up...

The final version of the Search method looks like this:

 

public List<UserStatus> Search(string searchTerm)

{

  string url =
    string.Format("http://search.twitter.com/search.json?&q={0}", searchTerm);

  string response = Get(url);

 

  byte[] brr = ASCIIEncoding.UTF8.GetBytes(response);

 

  StreamReader reader = new StreamReader(new MemoryStream(brr));

  DataContractJsonSerializer serializer =
    new DataContractJsonSerializer(typeof(SearchResults));

  SearchResults searchResults =
    (SearchResults)serializer.ReadObject(reader.BaseStream);

  reader.Close();

List<UserStatus> users =

  (from u in searchResults.Results

  select new UserStatus

  {

    UserName = u.FromUser,

    ProfileImage = u.ProfileImageUrl,

    Status = HttpUtility.HtmlDecode(u.Text),

    StatusDate = DateTimeOffset.Parse(u.CreatedAt).UtcDateTime

  }).ToList();

 

  return users;

}

Enjoy Twitter Searching with C#!

Developer Academy 3 – The Schedule

Developer Academy 3 – The Schedule

Developer Academy 3 – The Schedule 

Register here.

Create Code Snippets Add In for Visual Studio 2008

Create Code Snippets Add In for Visual Studio 2008

Create Code Snippets Add In for Visual Studio 2008

Preparing for a technical session with coding demos, makes me think which pieces of code I am going to write during the demo, and which Code Snippets I am going to use. Additionally, If I something happens with code that I have written during the demo and it won’t compile I can also save myself using Code Snippets.

The problem with Code Snippets is that it takes several minutes to create a new one, and the editing experience of them is not so friendly (xml editing).

The good news are that Matthew Manela, has created and released a free tool called the Snippet Designer. His tool is a Visual Studio add-in that allows you to create and edit Code Snippets inside Visual Studio 2008.

 Create Code Snippets Add In for Visual Studio 2008

  • Learn more about the Snippet Designer
  • Download the Snippet Designer.

    Enjoy creating Code Snippets with an Add In for Visual Studio 2008!

  • מאמרי MSDN בעברית

    מאמרי MSDN בעברית

    MSDN לפני מספר חודשים התחלנו לרכז מאמרים בעברית לאתר MSDN, ובלי לשים לב יש כבר כמות מכובדת של תוכן ממיטב היועצים והמומחים בארץ. זאת ההזדמנות להגיד להם תודה על ההשקעה!

    בדף הבית של מאמרי MSDN בעברית תוכלו למצוא את כל המאמרים ובעתיד גם מאמרים חדשים. בקרוב יהיה לנו גם RSS Feed ואז בכלל החיים יהיו יותר יפים.

    מיקרוסופט תמיד מעוניינת בתוכן מקצועי ממפתחים המעוניינים לחלוק את הידע והמקצועיות שלהם עם אחרים. אם חשבת על נושא טכני הקשור לפיתוח בטכנולוגיות מיקרוסופט, אנו מזמינים אותך לשתף אחרים בידע שלך ולכתוב עליו מאמר. תוכל לקרוא עוד על תהליך הגשת הצעה לכתיבת מאמר ולהוריד את ה תבנית לכתיבת מאמר MSDN בעברית.

    תהנו!

    Twitter API From C#: Getting a User’s Time Line

    Twitter API From C#: Getting a User’s Time Line

    Twitter API C#: Getting Time Line From Twitter’s REST API:

    User Timeline:

    Returns the 20 most recent statuses posted from the authenticating user:

    http://twitter.com/statuses/user_timeline.xml

    It's also possible to request another user's timeline. For example:

    http://twitter.com/statuses/user_timeline/bursteg.xml

    Making an HTTP Request

    Since all the API is expressed in REST, I figured out that I need a simple reusable method to perform HTTP requests. This method takes the URL and the method (GET or POST), gets the credentials from the configuration file and makes the request.

    private string PerformRequest(string method, string url)

    {

        string user = ConfigurationManager.AppSettings["user"];

        string password = ConfigurationManager.AppSettings["password"];

     

        HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);

        request.Method = method;

        request.Credentials = new NetworkCredential(user, password);

        WebResponse response = request.GetResponse();

        StreamReader reader = new StreamReader(response.GetResponseStream());

        string responseString = reader.ReadToEnd();

        reader.Close();

        return responseString;

    }

    Just for the simplicity, I also added the following methods:

    private string Post(string url)

    {

        return PerformRequest("POST", url);

    }

     

    private string Get(string url)

    {

        return PerformRequest("GET", url);

    }

    Getting a User’s Time Line from Twitter

    Using the following code, you can get a user’s timeline from twitter in xml  format:

    string url = string.Format("http://twitter.com/statuses/friends/{0}.xml", user);

    string response = Get(url);

    This call returns the following piece of xml:

    <?xml version="1.0" encoding="UTF-8"?>

    <statuses type="array">

      <status>

        <created_at>Sat Nov 15 10:08:15 +0000 2008</created_at>

        <id>1006846483</id>

        <text>Testing &quot;posts&quot; #devacademy3</text>

        <source>web</source>

        <truncated>false</truncated>

        <in_reply_to_status_id></in_reply_to_status_id>

        <in_reply_to_user_id></in_reply_to_user_id>

        <favorited>false</favorited>

        <user>

          <id>6849932</id>

          <name>Guy Burstein</name>

          <screen_name>bursteg</screen_name>

          <location></location>

          <description></description>

          <profile_image_url>http://.../Guy_Burstein_Small_normal.jpg</profile_image_url>

          <url>http://blogs.microsoft.co.il/blogs/bursteg</url>

          <protected>false</protected>

          <followers_count>42</followers_count>

        </user>

      </status>

     

      <status>

        ...

      </status>

    </statuses>

    As we can see, this response is an array of statuses, each contains the details about the user who posted it.

    Extracting the Data

    With my favor to LINQ to XML, I used it to extract the data that I was interested in, and construct CLR objects that I can easily work with.

    XDocument document = XDocument.Parse(response, LoadOptions.None);

     

    var query = from e in document.Root.Descendants("status")

                select new UserStatus

                {

                    UserName = e.Element("user").Element("name").Value,

                    ProfileImage = e.Element("user").Element("profile_image_url").Value,

                    Status = HttpUtility.HtmlDecode(e.Element("text").Value),

                    StatusDate = (e.Element("created_at").Value.ParseDateTime())

                };

    First, I parsed an xml document from the response string. Then, I created a list of UserStatus objects from the contents of the response xml.

    Few things to note about the above code:

    1. HttpUtility.HtmlDecode is being used in order to get a readable text. The response contained text like “Testing &quot;posts&quot; #devacademy3” and this method (in System.Web) converts it to “Testing posts #devacademy3”.

    2. The ParseDateTime() method on the element’s value is an extension method I created in order to parse a DateTime from the special string representation of the time the status was posted:

    Sat Nov 15 10:08:15 +0000 2008

    This method looks like:

    public static class StringExtensions

    {

        public static DateTime ParseDateTime(this string date)

        {

            string dayOfWeek = date.Substring(0, 3).Trim();

            string month = date.Substring(4, 3).Trim();

            string dayInMonth = date.Substring(8, 2).Trim();

            string time = date.Substring(11, 9).Trim();

            string offset = date.Substring(20, 5).Trim();

            string year = date.Substring(25, 5).Trim();

            string dateTime = string.Format("{0}-{1}-{2} {3}", dayInMonth, month, year, time);

            DateTime ret = DateTime.Parse(dateTime);

            return ret;

        }

    }

     

    If you come up with another idea of how to parse this string into a DateTime object, please let me know.

    Wrapping it up...

    The final version of the GetUserTimeLine method looks like this:

    public List<UserStatus> GetUserTimeLine(string user)

    {

        string url = string.Format("http://twitter.com/statuses/user_timeline/{0}.xml", user);

        string response = Get(url);

     

        XDocument document = XDocument.Parse(response, LoadOptions.None);

     

        var query = from e in document.Root.Descendants("status")

                    select new UserStatus

                    {

                        UserName = e.Element("user").Element("name").Value,

                        ProfileImage = e.Element("user").Element("profile_image_url").Value,

                        Status = HttpUtility.HtmlDecode(e.Element("text").Value),

                        StatusDate = (e.Element("created_at").Value.ParseDateTime())

                    };

     

        List<UserStatus> users = (from u in query

                                  where u.Status != ""

                                  orderby u.StatusDate descending

                                  select u).ToList();

     

        return users;

    }

    The techniques I’ve used here can be used in almost all the “get” methods of the REST API of Twitter.

    Enjoy!

    Building a Twitter Client for my Silverlight Session @ Developer Academy 3

    Building a Twitter Client for my Silverlight Session @ Developer Academy 3

    twitter

    On December 15, I will deliver an introductory session about Silverlight 2 in Developer Academy 3. Unlike many other Silverlight sessions I have attended in the past, this will be less-show-off-more-code session. Additionally, in order for it to be a very fun session, I will build a Twitter client application with Silverlight. I’ll use the next few posts to describe the work I’ve been doing in order to build this demo.

    Enjoy!

    Visual Studio 2010 and .NET Framework 4.0 Training Kit - November Preview is now Available

    Visual Studio 2010 and .NET Framework 4.0 Training Kit - November Preview is now Available

    Visual Studio 2010 and .NET Framework 4.0 Training Kit The November preview of the Visual Studio 2010 and .NET Framework 4.0 Training Kit is now available for download.

    This preview includes the following content:

    Presentations

    • Overview of the .NET Framework 4.0
      This presentation goes over the new technologies and enhancements being made in the version 4 release of the .NET Framework.
    • Overview of the Visual Studio 2010
      This presentation covers is a high-level over of the value propositions for Visual Studio 2010 and a walkthrough some of the great features being added to the IDE.

    Hands-on-Labs

    • Visual Studio 2010: Office Programmability
      In this lab you will see how new features in Visual Studio 2010, C# 4.0, and Visual Basic 10 make it easer to develop applications leveraging Microsoft Office. Additionally, you'll see a number of other powerful features which speed other elements of Office development.
    • Visual Studio 2010: Test Driven Development
      Visual Studio 2010 brings with it several enhancements to help cut development friction and enable the developer to focus on the task at hand: writing high-quality code. In the following exercises we'll highlight several of the new features that the TDD developer can use to enhance his/her development cadence. Visual Studio helps your cadence by cutting the number of keystrokes to accomplish frequently performed tasks, speeds navigation through your solution, and enables you to use test frameworks other than MSTest.
    • Parallel Extensions: Building Multicore Applications with .NET
      Microsoft's Parallel Computing Platform (PCP) is providing tools enabling developers to leverage the power of Multicore processors in an efficient, maintainable, and scalable manner. Parallel Extensions to the .NET Framework brings several important concepts into this toolset. In this Hands-On Lab, you will learn how to parallelize an existing algorithm by using the static Parallel helper class, create and run Tasks, use the Future<T> class to create and run Tasks that return a value and use Parallel LINQ (PLINQ) to optimize LINQ queries to exectue in a parallel environment
    • Introduction To Managed Extensibility Framework (MEF)
      The Managed Extensibility Framework (MEF) allows developers to provide hooks into their .NET applications for extensions by first and third parties. MEF can be thought of as a general application extension facility. In this Hands-On Lab, you will learn how to define extensibility points for components, perform conditional binding and component creation and import extended assemblies while an application is running.
    • ASP.NET AJAX
      In this Hands-On Lab, you will learn how to leverage new client-side templates to easily bind data to your UI, use the DataView control to render data on the client, extend the template engine by creating custom Markup Extensions, and declaratively instantiate behaviors and controls
    • ASP.NET Dynamic Data
      ASP.NET Dynamic Data MVC allows developers to create web based applications that dynamically create pages based on the application's data model. ASP.NET Dynamic Data MVC provides scaffolding and templates that are easily customizable and extensible to reflect the custom functionality required for a solution. In this Hands-On Lab, you will learn how to use Dynamic Data MVC to easily render data over forms and then to easily create your own views and enforce data validation.
    • Intro To Project "Velocity"
      In this Hands-On Lab, you will learn how to install and configure Velocity, program against Velocity's API and use Velocity's SessionState provider with ASP.NET.
    • Intro To F#
      This Hands-On Lab is comprised by the following exercises. Examine the basic F# types including tuples and functions. Discover how the "let" keyword allows values to be bound to identifiers. See that in F# funcations are the same as any other value, and are handled the same way. Demonstrate how this allows advanced langage features such as parially-applied or "curried" functions. Discover how F# lists are built and the power that can be achieved by F#'s "Head + Tail" approach. Demonstrate the powerful pattern matching and recusion capabilities of F#. Demonstrate the power and usefulness of discriminated unions in F#.

    Enjoy!

    ההרשמה ל- Developer Academy 3 נפתחה!

    ההרשמה ל- Developer Academy 3 נפתחה!

    Developer Academy 3בשעה טובה פתחנו את ההרשמה ל- Developer Academy 3, כנס המפתחים השנתי, שיתקיים ב- 15.12.2008 ב- Avenue שב- Airport City ליד שדה התעופה.

    בכנס יעבירו מיטב המומחים בארץ כ- 20 הרצאות בנושאי פיתוח מתקדמים (טיוטא ראשונית נמצאת כאן), ביניהם Silverlight 2, WPF, WCF, Windows Azure ו- IE8. בנוסף, לאורך היום יתקיימו מעבדות התנסות במספר טכנולוגיות מרכזיות ויתקיימו פאנלים בנושאים שונים. בקיצור – יהיה שמח מעניין!

    ניתן למצוא פרטים נוספים באתר הכנס: http://www.microsoft.com/israel/msdn/devacademy3, ועדכונים שוטפים ב- Twitter שכתובתו: http://twitter.com/devacademy3

    לאור פידבקים שקיבלנו בשנים הקודמות על סגירת ההרשמה מהר מאד ועל צפיפות יתר בכנס, הכנס השנה יערך בתשלום. ניתן לשלם בכרטיסי אשראי או ע"י טופס התחייבות חובה. אם חברתכם נמצאת בחוזה התקשרות מול MCS, ניתן לשלם בשעות ייעוץ ותמיכה. ובמקביל אנו בודקים אפשרות לשלם גם בשוברי SA, ונעדכן בהתאם בהמשך.

    הרישום לחיילים מבוצע ע”י בית הספר למקצועות המחשב (בסמ”ח) בחלוקה ליחידות צה”ל.

    בנוסף, כדי להקל על העומס בהרצאות, נרצהלחלק את אולמות ההרצאות בהתאם לביקוש. לכן נבקש כחלק מתהליך הרישום, לבחור את ההרצאות בהן תרצו להשתתף (אפשר להכנס להרצאות אחרות ביום האירוע :) ).

    להרשמה לחצו כאן.

    Developer Academy 3 Session List – First Draft

    Developer Academy 3 Session List – First Draft

    ALM301 - Web Sites Testing with Visual Studio Team System (Level 300)

    שי רייטן, יועץ בכיר ומפתח במכללת סלע

    Visual Studio Team System makes your site better and more robust with its Web Testing capabilities. In this session we will see how to test your web application in various ways, how to extend the out-of-the-box rules and how to integrate it in the daily build.

    ALM302 - Implementing Test Driven Development (TDD) with Visual Studio Team System (Level 300)

    אריאל גור-אריה, סמנכ"ל פיתוח, MCD

    Unit Testing assures that your code behaves as it should. In this session we will implement Test Driven Development using Visual Studio and Team System, for the application code and for the Stored Procedures in the database.

    ALM303 - Professional Developer Tools in Visual Studio Team System (Level 300)

    מאור דוד, יועץ בכיר, SRL

    Visual Studio Team System is not all about source control, and contains many tools for the developer. In this demo-driven session we will see tools such as Code Metrics, Hot Pathing, Code Analysis, Performance Run, Schema Compare & more.

    ARC202 - Architecting Real-World Enterprise Application – Considerations and Dilemmas (Level 200)

    ממי לביא, יועץ ארכיטקטורה במיקרוסופט ישראל ומתן עצמון, ראש צוות תשתיות וארכיטקט, צה"ל

    From choosing a Data Access Layer, Caching and Logging, up to Authentication, Offline support and more architectural aspects in a real-world medical application in the IDF.

    ARC301 - Speed it up with Distributed Cache using “Velocity” (Level 300)

    יאיר שיבק, יועץ ומרצה במכללת הי טק

    Make a difference in your projects with a distributed in-memory application cache platform for developing scalable, high-performance applications. Use partitioned and local cache, use various access ways to your data, take advantage of ASP.NET integration and much more…

    DEV301 - HTTP Web Services with Windows Communication Foundation 3.5 (Level 300)

    אייל ורדי, מנכ"ל משותף, E4D Solutions

    In this session we will see how to use WCF 3.5 to build REST Web Services that agents can interact with using simple HTTP verbs. We will also look into how ADO.Net Data Services were implemented.

    DEV302 - Building Your First Great Silverlight 2 Application (Level 300)

    גיא בורשטיין, יועץ טכנולוגיות פיתוח, מיקרוסופט ישראל

    You have seen how exciting Silverlight applications are, now you want to do it yourself. With 50 minutes of demo-time you'll learn how to build Silverlight applications, give them a little style, and connect them to services and their data.

    DEV303 - Integrating Silverlight 2 into Existing Web Sites (Level 300)

    גולש אלכס, יועץ בכיר ומרצה במכללת סלע

    After we have seen how to build a simple standalone Silverlight 2 application we will see how to integrate it into existing sites, and how to communicate with DOM elements and JavaScript functions.

    DEV305 - Leverage SQL Server 2008 in Your .Net Code with Visual Studio 2008 SP1 (Level 300)

    דיויד סקסטין, CTO טכנולוגיות מיקרוסופט פיתוח, ג'ון ברייס הדרכה

    Visual Studio 2008 SP1 lets you leverage the new features in SQL Server 2008 such as Table Valued Parameters, Change Tracking, FILESTREAM and the new Date and Time types. In this session we'll see how easy they are to use, and how you can do it today.

    DEV306 - Windows Azure: Building Web Sites and Services in the Cloud (Level 300)

    יוסי תאגורי, VP R&D, nuconomy

    Learn about the cloud services that enable developers to easily create or extend their applications and services. In this session we take a tour of Windows Azure by building and running a simple service using the platform SDK. This is a demo-heavy session.

    DEV308 - Internet Explorer 8: What's New for Developers? (Level 300)

    גל קוג'מן, יועץ בכיר ומרצה בג'ון ברייס

    Internet Explorer 8 brings new enhancements for the web developer. From CSS standards, through the new development tools and the new features, we will see how you can benefit from them all.

    DEV309 - Building Web Sites with ASP.NET MVC Framework (Level 300)

    נועם קינג, CTO מכללת סלע

    In this session we will introduce another way for building great web applications. We will talk about the new ASP.NET MVC Framework, take a Look at each layer, and the new routing mechanism.

    DEV311 - Building Windows 7 and Windows Vista Compatible Applications (Level 300)

    אלון פליס, CTO קבוצת סלע

    TBD

    DEV312 - Dynamic Languages and the .Net Framework (Level 300)

    שי פרידמן, מפתח בכיר, ActionBase

    Dynamic languages (Python, Ruby, etc.) have been receiving bigger slices of the dev cycle pie. Microsoft joins the ride and future frameworks will incorporate more dynamic capabilities. Come and see how dynamic languages will effect application development in various programming environments.

    DEV313 - Building Composite Applications in WPF (Level 300)

    תומר שמם, יועץ בכיר ומרצה במכלת סלע

    In this session we will talk about the challenges of Composite UI development, and learn how to leverage Composite Application Guidance for WPF on behalf of WPF for implementing modern enterprise applications UI.

    DEV314 - Design Patterns – Learn From the Experience of Others (Level 300)

    אבי רוט, ארכיטקט ראשי, מל"ם-תים

    You don’t want to reinvent the wheel, so you look for design patterns –lessons learnt by those who've faced same software design problems before. In this session we will look at key OO design principles and dive into design patters such as Decorator, Strategy, Façade and others.

    DEV401 - ASP.NET Ajax Internals (Level 400)

    דן אמיגה, יועץ בכירו ומרצה, DevelopMentor

    In this talk we will deep dive into the client side and server side of ASP.NET Ajax, discussing JavaScript extensions, object orientation and code compilation, HTTP modules and handlers that support the partial page rendering and Extender controls.

    DEV402 - Concurrent Programming: From Thread Pool to Parallel Extensions (Level 400)

    סשה גולדשטיין, יועץ בכירו ומרצה במכללת סלע

    We must develop concurrent applications today, but with concurrency come data races, contention and deadlocks. From System.Thread, the thread pool, through the Parallel Extensions for .NET – we will analyze design patterns specific to concurrent applications and learn to avoid common pitfalls.

    DEV403 - A Deep Dive into LINQ (Level 400)

    עומר ון קלוטן, מפתח בכיר, nuconomy

    Many developers already use LINQ on a daily basis, but most only scratch the surface of what’s possible. In this session we will dive more deeply into LINQ and see how it works behind the scenes, share tips, tricks and common pitfalls.

    DEV404 - Hardcore C#: Hidden Power and Flexibility (Level 400)

    פבל יוסיפוביץ', CTO מכללת הי טק

    This almost demo-only session will explore the powerful, but less known capabilities of the C# language. Topics include partial classes & methods, expression trees & lambda expressions, dynamic delegates, extension methods, elegant iterators, anonymous delegates and more advanced stuff. Will be fun!

    Enjoy!

    Download PDC 2008 Sessions and Watch Offline

    Download PDC 2008 Sessions and Watch Offline

    personally prefer watching sessions regardless of my Internet connection status, so I decided to download PDC08 sessions and watch offline.

    download PDC08 sessions and watch offline direct links

    I collected the list of available sessions from PDC 08, and they are easy to download. I personally use Free Download Manager for simultaneous efficient downloads - you can try it yourself. Just select all the text in this post, right click and select “Download Selected with Free Download Manager”.

    For a full list of downloads and links, you can download this excel file that contains all the information.

    KYN01 - Day 1 Morning Keynote
    Ray Ozzie, Amitabh Srivastava, Bob Muglia, David Thompson
    Video

    KYN02 - Day 2 Morning Keynote
    Ray Ozzie, Steven Sinofsky, Scott Guthrie, David Treadwell
    Video

    KYN03 - Day 2 Afternoon Keynote
    Chris Anderson, Don Box
    Video

    KYN04 - Day 3 Morning Keynote
    Rick Rashid
    Video

    BB01 - A Lap Around the Azure Services Platform
    John Shewchuk
    Video PowerPoint

    BB02 - Architecture of the .NET Services
    Dennis Pilarinos, John Shewchuk
    Video PowerPoint

    BB03 - SQL Services : Under the Hood
    Gopal Kakivaya, Tony Petrossian
    Video PowerPoint

    BB04 - Live Services: A Lap around the Live Framework and Mesh Services
    Ori Amiga
    Video PowerPoint

    BB05 - Live Services: Building Applications with the Live Framework
    Raymond Endres
    Video PowerPoint

    BB06 - Live Services: Mesh Services Architecture and Concepts
    Abolade Gbadegesin
    Video PowerPoint

    BB07 - SQL Server 2008: Developing Large Scale Web Applications and Services
    Hala Al-Adwan, Jose Blakeley
    Video PowerPoint

    BB08 - Microsoft Dynamics CRM: The Appealing Business Application
    Humberto Lezama Guadarrama
    Video PowerPoint

    BB09 - Microsoft Office Communications Server and Exchange: Platform Futures
    Chris Mayo, David Ollason
    Video PowerPoint

    BB10 - Live Services: Deep Dive on Microsoft Virtual Earth
    Mark Brown
    Video PowerPoint

    BB11 - Identity Roadmap for Software + Services
    Bertocci Vittorio, Kim Cameron
    Video PowerPoint

    BB12 - .NET Services: Messaging Services - Protocols, Protection, and How We Scale
    Clemens Vasters
    Video PowerPoint

    BB13 - SharePoint 2007: Creating SharePoint Applications with Visual Studio 2008
    Chris Johnson
    Video PowerPoint

    BB14 - SQL Services: Futures
    Patric McElroy
    Video PowerPoint

    BB15 - SQL Server: Database to Data Platform - Road from Server to Devices to the Cloud
    David Campbell, Zach Skyles Owens
    Video PowerPoint

    BB16 - SQL Server 2008: Beyond Relational
    Michael Rys
    Video PowerPoint

    BB18 - "Dublin": Hosting and Managing Workflows and Services in Windows Application Server
    Dan Eshner
    Video PowerPoint

    BB19 - Live Services: Live Framework Programming Model Architecture and Insights
    Ori Amiga
    Video PowerPoint

    BB20 - Live Services: Making your Application More Social
    Angus Logan
    Video PowerPoint

    BB22 - Identity: Live Identity Services Drilldown
    Jorgen Thelin
    Video PowerPoint

    BB23 - A Lap around SQL Services
    Soumitra Sengupta
    Video PowerPoint

    BB24 - SQL Server 2008: Deep Dive into Spatial Data
    Isaac Kunen
    Video PowerPoint

    BB25 - SQL Server 2008: New and Future T-SQL Programmability
    Michael Wang
    Video PowerPoint

    BB26 - SQL Server 2008: Business Intelligence and Data Visualization
    Stella Chan
    Video PowerPoint

    BB27 - .NET Services: Orchestrating Services and Business Processes Using Cloud-Based Workflow
    Moustafa Ahmed
    Video PowerPoint

    BB28 - .NET Services: Access Control Service Drilldown
    Justin Smith
    Video PowerPoint

    BB29 - Identity: Connecting Active Directory to Microsoft Services
    Lynn Ayres, Tore Sundelin
    Video PowerPoint

    BB30 - Live Services: Building Mesh-Enabled Web Applications Using the Live Framework
    Arash Ghanaie-Sichanie
    Video PowerPoint

    BB31 - Live Services: FeedSync and Mesh Synchronization Services
    Steven Lees
    Video PowerPoint

    BB32 - Microsoft Dynamics CRM: Building Line-of-Business Applications
    Andrew Bybee
    Video PowerPoint

    BB33 - Dynamics Online: Building Business Applications with Commerce and Payment APIs
    Adam Wilson
    Video PowerPoint

    BB34 - Live Services: Notifications, Awareness, and Communications
    John Macintyre
    Video PowerPoint

    BB35 - Live Services: The Future of the Device Mesh
    Jeremy Mazner
    Video PowerPoint

    BB36 - FAST: Building Search-Driven Portals with Microsoft Office SharePoint Server 2007 and Microsoft Silverlight
    Jan Helge Sagefl?t, Stein Danielsen
    Video PowerPoint

    BB37 - SQL Server 2008: Developing Secure Applications
    Il-Sung Lee
    Video PowerPoint

    BB38 - .NET Services: Connectivity, Messaging, Events, and Discovery with the Service Bus
    Clemens Vasters
    Video PowerPoint

    BB39 - .NET Services: Logging, Diagnosing, and Troubleshooting Applications Running Live in the Cloud
    Mark Gilbert, Steve Garrity
    Video PowerPoint

    BB40 - Sync Framework: Enterprise Data in the Cloud and on Devices
    Liam Cavanagh
    Video PowerPoint

    BB41 - Live Services: What I Learned Building My First Mesh Application
    Don Gillett
    Video PowerPoint

    BB42 - Identity: "Geneva" Server and Framework Overview
    Caleb Baker, Stuart Kwan
    Video PowerPoint

    BB43 - Identity: "Geneva" Deep Dive
    Jan Alexander
    Video PowerPoint

    BB44 - Identity: Windows CardSpace "Geneva" Under the Hood
    Rich Randall
    Video PowerPoint

    BB45 - Office Communications Server 2007 R2: Enabling Unified Communications
    David Ollason, Oscar Newkerk
    Video PowerPoint

    BB46 - Exchange Web Services Managed API: Unified Communications Development for Exchange
    Jason Henderson
    Video PowerPoint

    BB47 - SharePoint 2007: Advanced Asynchronous Workflow Messaging
    Alex Malek
    Video PowerPoint

    BB48 - Microsoft Advertising Platform: A Lap Around
    Erynn Petersen
    Video PowerPoint

    BB49 - Microsoft Advertising Platform: A Day in the Life of a Click
    Robert Devine
    Video PowerPoint

    BB51 - Live Services: Programming Live Services Using Non-Microsoft Technologies
    Nishant Gupta
    Video PowerPoint

    BB52 - SQL Services: Tips and Tricks for High-Throughput Data-Driven Applications
    David Robinson
    Video PowerPoint

    BB53 - SharePoint Online: Extending Your Service
    Troy Hopwood
    Video PowerPoint

    BB54 - Designing Your Application to Scale
    Max Feingold
    Video PowerPoint

    BB55 - .NET Services: Access Control In Microsoft .NET Services
    Justin Smith
    Video PowerPoint

    BB56 - Showcase: Industry Leaders Moving to the Cloud
    Brandon Watson, Erik Johnson, Jitendra Thethi, Larry Beck
    Video PowerPoint

    BB57 - Microsoft Dynamics AX: Building Business Process into Your Application
    Josh Honeyman
    Video PowerPoint

    BB58 - Case Study: Bridging On-Premises with the Cloud
    David Shutt
    Video PowerPoint

    BB59 - Behind the Scenes: How We Built a Multi-Enterprise Supply Chain Application
    Jack Greenfield, Wade Wegner
    Video PowerPoint

    ES01 - Developing and Deploying Your First Windows Azure Service
    Steve Marx
    Video PowerPoint

    ES02 - Windows Azure: Architecting & Managing Cloud Services
    Yousef Khalidi
    Video PowerPoint

    ES03 - Windows Azure: Cloud Service Development Best Practices
    Sriram Krishnan
    Video PowerPoint

    ES04 - Windows Azure: Essential Cloud Storage Services
    Brad Calder
    Video PowerPoint

    ES06 - Developing with Microsoft .NET and ASP.NET for Server Core
    Andrew Mason, Ian Robinson
    Video PowerPoint

    ES07 - Windows Azure: Modeling Data for Efficient Access at Scale
    Niranjan Nilakantan, Pablo Castro
    Video PowerPoint

    ES09 - Enabling Test Automation Using Windows Server 2008 Hyper-V
    Taylor Brown
    Video PowerPoint

    ES10 - Developing Solutions for Windows Server 2008 Hyper-V Using WMI
    Nihar Shah
    Video PowerPoint

    ES11 - Developing Connected Home Applications and Services for Windows Home Server
    CJ Saretto, Fabian Uhse
    Video PowerPoint

    ES12 - Exposing Connected Home Services to the Internet via Windows Home Server
    Brendan Grant, CJ Saretto
    Video PowerPoint

    ES13 - How to Develop Supercomputer Applications
    Jeff Baxter, Sean Mortazavi
    Video PowerPoint

    ES14 - IIS 7.0 and Beyond: The Microsoft Web Platform Roadmap
    Vijay Sen
    Video PowerPoint

    ES15 - Web Application Packaging and Deployment
    Saad Ladki
    Video PowerPoint

    ES16 - A Lap Around Windows Azure
    Manuvir Das
    Video PowerPoint

    ES17 - Windows Azure: Programming in the Cloud
    Daniel Wang, Stefan Schackow
    Video PowerPoint

    ES19 - Under the Hood: Inside the Windows Azure Hosting Environment
    Chuck Lenzmeier, Frederick Smith
    Video PowerPoint

    ES20 - Developing Applications for More Than 64 Logical Processors in Windows Server 2008 R2
    Arie van der Hoeven
    Video PowerPoint

    ES21 - Windows 7 Presentation Virtualization: Graphics Remoting
    RDP
    Video PowerPoint

    ES22 - Extending Terminal Services and Hyper-V VDI in Windows 7
    Christa Anderson, Niraj Agarwala
    Video PowerPoint

    ES23 - Windows 7: Optimizing Applications for Remote File Services over the WAN
    Mathew George
    Video PowerPoint

    ES24 - PowerShell: Creating Manageable Web Services
    Jeffrey Snover
    Video PowerPoint

    ES25 - Showcase: Windows Azure Enables Live Meeting
    John Shriver-Blake, Michael Conrad
    Video PowerPoint

    ES29 - Showcase: Windows Azure Enables /Nsoftware and Full Armor
    Danny Kim, Gent Hito, Steve Marx
    Video PowerPoint

    ES30 - Datacenters and Resilient Services
    Benjamin Ravani
    Video PowerPoint

    ES31 - Showcase: How HP Built their Magcloud Service on Windows Azure
    Andrew E Fitzhugh, Steve Marx
    Video PowerPoint

    ES32 - Microsoft Application Virtualization 4.5
    Elsie Nallipogu, John Sheehan
    Video PowerPoint

    PC01 - Windows 7: Web Services in Native Code
    Nikola Dudar
    Video PowerPoint

    PC02 - Windows 7: Extending Battery Life with Energy Efficient Applications
    Pat Stemen
    Video PowerPoint

    PC03 - Windows 7: Developing Multi-touch Applications
    Anson Tsao, Reed Townsend
    Video PowerPoint

    PC04 - Windows 7: Writing Your Application to Shine on Modern Graphics Hardware
    Anantha Kancherla
    Video PowerPoint

    PC05 - Windows 7: Unlocking the GPU with Direct3D
    Allison Klein
    Video PowerPoint

    PC06 - Deep Dive: Building an Optimized, Graphics-Intensive Application in Microsoft Silverlight
    Seema Ramchandani
    Video PowerPoint

    PC07 - WPF: Extensible BitmapEffects, Pixel Shaders, and WPF Graphics Futures
    David Teitlebaum
    Video PowerPoint

    PC10 - Microsoft Silverlight 2 for Mobile: Developing for Mobile Devices
    Amit Chopra, Giorgio Sardo
    Video PowerPoint

    PC11 - Microsoft Silverlight Futures: Building Business Focused Applications
    Jamie Cool
    Video PowerPoint

    PC12 - Deep Dive: The New Rendering Engine in Microsoft Internet Explorer 8
    Alex Mogilevsky
    Video PowerPoint

    PC13 - Windows 7: Building Great Audio Communications Applications
    Larry Osterman
    Video PowerPoint

    PC14 - Windows 7 Scenic Ribbon: The next generation user experience for presenting commands in Win32 applications.
    Nicolas Brun
    Video PowerPoint

    PC15 - Windows 7: Benefiting from Documents and Printing Convergence
    Adrian Ford
    Video PowerPoint

    PC16 - Windows 7: Empower users to find, visualize and organize their data with Libraries and the Explorer
    David Washington
    Video PowerPoint

    PC17 - Developing for Microsoft Surface
    Brad Carpenter, Robert Levy
    Video PowerPoint

    PC18 - Windows 7: Introducing Direct2D and DirectWrite
    Kam VedBrat, Leonardo Blanco
    Video PowerPoint

    PC19 - Windows 7: Designing Efficient Background Processes
    Vikram Singh
    Video PowerPoint

    PC20 - ASP.NET 4.0 Roadmap
    Scott Hunter
    Video PowerPoint

    PC21 - ASP.NET MVC: A New Framework for Building Web Applications
    Phil Haack
    Video PowerPoint

    PC22 - Windows 7: Design Principles for Windows 7
    Samuel Moreau
    Video PowerPoint

    PC23 - Windows 7: Integrate with the Windows 7 Desktop
    Rob Jarrett
    Video PowerPoint

    PC24 - Windows 7: Welcome to the Windows 7 Desktop
    Chaitanya Sareen
    Video PowerPoint

    PC25 - Windows 7: The Sensor and Location Platform: Building Context-Aware Applications
    Dan Polivy
    Video PowerPoint

    PC26 - Microsoft Visual Studio: Building Applications with MFC
    Damien Watkins
    Video PowerPoint

    PC27 - Microsoft Silverlight, WPF and the Microsoft .NET Framework: Sharing Skills and Code
    Ian Ellison-Taylor
    Video PowerPoint

    PC29 - Microsoft Silverlight 2: Control Model
    Karen Corby
    Video PowerPoint

    PC30 - ASP.NET Dynamic Data
    Scott Hunter
    Video PowerPoint

    PC31 - ASP.NET and JQuery
    Stephen Walther
    Video PowerPoint

    PC32 - ASP.NET AJAX Futures
    Bertrand Le Roy
    Video PowerPoint

    PC33 - Microsoft Visual Studio: Easing ASP.NET Web Deployment
    Vishal Joshi
    Video PowerPoint

    PC34 - Open XML Format SDK: Developing Open XML Solutions
    Eric White, Zeyad Rajabi
    Video PowerPoint

    PC35 - Silverlight Controls Roadmap
    Shawn Burke
    Video PowerPoint

    PC39 - Inside the Olympics: An Architecture and Development Review
    Eric Schmidt, Jason Suess
    Video PowerPoint

    PC40 - SQL Server Compact: Embedding in Desktop and Device Applications
    Steve Lasker
    Video PowerPoint

    PC41 - ASP.NET: Cache Extensibility
    Stefan Schackow
    Video PowerPoint

    PC42 - Windows 7: Deploying Your Application with Windows Installer
    MSI
    Video PowerPoint

    PC43 - Deep Dive: What's New with user32 and comctl32 in Win32
    Raymond Chen
    Video PowerPoint

    PC44 - Windows 7: Programming Sync Providers That Work Great with Windows
    Jason Roberts, Moe Khosravy
    Video PowerPoint

    PC45 - WPF: Data-centric Applications Using the DataGrid and Ribbon Controls
    Mark Wilson-Thomas, Samantha Durante
    Video PowerPoint

    PC46 - WPF Roadmap
    Anson Tsao, Kevin Gjerstad
    Video PowerPoint

    PC47 - Microsoft Expression Blend: Tips & Tricks
    Douglas Olson, Peter Blois
    Video PowerPoint

    PC48 - Research: Designing the World Wide Telescope
    Jonathan Fay
    Video PowerPoint

    PC49 - Microsoft .NET Framework: CLR Futures
    Ian Carmichael, Joshua Goodman
    Video PowerPoint

    PC50 - Windows 7: Using Instrumentation and Diagnostics to Develop High Quality Software
    Kevin Woley, Ricky Buch
    Video PowerPoint

    PC51 - Windows 7: Best Practices for Developing for Windows Standard User
    Crispin Cowan
    Video PowerPoint

    PC52 - Windows 7: Writing World-Ready Applications
    Erik Fortune, Yaniv Feinberg
    Video PowerPoint

    PC53 - Building High Performance JScript Applications
    Sameer Chabungbam
    Video PowerPoint

    PC54 - Mono and .NET
    Miguel de Icaza
    Video PowerPoint

    PC55 - Oomph: A Microformat Toolkit
    Karsten Januszewski
    Video PowerPoint

    PC56 - Windows Embedded "Quebec": Developing for Devices
    Shabnam Erfani
    Video PowerPoint

    PC58 - Framework Design Guidelines
    Brad Abrams, Krzysztof Cwalina
    Video PowerPoint

    PC59 - Commerce Server "Mojave": Overview
    Kerry Havas, Tom Schultz
    Video PowerPoint

    PC60-V - Driving for software quality through customer feedback
    Kevin Hill
    Video PowerPoint

    PC61-V - Developing compatible applications for Windows
    Uday Shivaswamy
    Video PowerPoint

    PC62-V - Hands On Analysis with Windows Performance Toolkit
    General
    Video PowerPoint

    SYMP01 - Parallel Symposium: Addressing the Hard Problems with Concurrency
    David Callahan, Lynne Hill
    Video PowerPoint

    SYMP02 - Parallel Symposium: Application Opportunities and Architectures
    Jerry Bautista, John Feo
    Video PowerPoint

    SYMP03 - Parallel Symposium: Future of Parallel Computing
    David Detlefs, James Reinders, Niklas Gustafsson, Sean Nordberg, Selena Wilson
    Video PowerPoint

    SYMP04 - Services Symposium: Expanding Applications to the Cloud
    Gianpaolo Carraro, Simon Guest
    Video PowerPoint

    SYMP05 - Services Symposium: Enterprise Grade Cloud Applications
    Eugenio Pace
    Video PowerPoint

    SYMP06 - Services Symposium: Cloud or No Cloud, the Laws of Physics Still Apply
    Gianpaolo Carraro
    Video PowerPoint

    TL01 - Office Business Applications: Enhanced Deployment
    Andrew Whitechapel, Saurabh Bhatia
    Video PowerPoint

    TL02 - Under the Hood: Advances in the .NET Type System
    Andrew Whitechapel, Misha Shneerson
    Video PowerPoint

    TL03 - Microsoft Visual Studio Team System: Software Diagnostics and Quality for Services
    Habib Heydarian, Justin Marks
    Video PowerPoint

    TL04 - Microsoft Visual Studio Team System Team Foundation Server: How We Use It at Microsoft
    Stephanie Saad
    Video PowerPoint

    TL06 - WCF 4.0: Building WCF Services with WF in Microsoft .NET 4.0
    Ed Pinto
    Video PowerPoint

    TL07 - Developing Applications Using Data Services
    Mike Flasko
    Video PowerPoint

    TL08 - Offline-Enabled Data Services and Desktop Applications
    Pablo Castro
    Video PowerPoint

    TL09 - Agile Development with Microsoft Visual Studio
    Lori Lamkin, Sunder Raman
    Video PowerPoint

    TL10 - Deep Dive: Dynamic Languages in Microsoft .NET
    Jim Hugunin
    Video PowerPoint

    TL11 - An Introduction to Microsoft F#
    Luca Bolognese
    Video PowerPoint

    TL12 - Future Directions for Microsoft Visual Basic
    Lucian Wischik, Paul Vick
    Video PowerPoint

    TL13 - Microsoft Visual C++: 10 Is the New 6
    Boris Jabes
    Video PowerPoint

    TL14 - Project "Velocity": A First Look
    Murali Krishnaprasad
    Video PowerPoint

    TL15 - Architecture without Big Design Up Front
    Peter Provost
    Video PowerPoint

    TL16 - The Future of C#
    Anders Hejlsberg
    Video PowerPoint

    TL17 - WF 4.0: A First Look
    Kenny Wolf
    Video PowerPoint

    TL18 - "Oslo": Customizing and Extending the Visual Design Experience
    Don Box, Florian Voss
    Video PowerPoint

    TL19 - Microsoft Visual Studio: Bringing out the Best in Multicore Systems
    Hazim Shafi
    Video PowerPoint

    TL20 - Entity Framework Futures
    Tim Mallalieu
    Video PowerPoint

    TL21 - WF 4.0: Extending with Custom Activities
    Matt Winkler
    Video PowerPoint

    TL22 - Concurrency Runtime Deep Dive: How to Harvest Multicore Computing Resources
    Niklas Gustafsson
    Video PowerPoint

    TL23 - A Lap around "Oslo"
    Douglas Purdy, Vijaye Raji
    Video PowerPoint

    TL24 - Improving .NET Application Performance and Scalability
    Ed Glas, Steve Carroll
    Video PowerPoint

    TL25 - Parallel Programming for C++ Developers in the Next Version of Microsoft Visual Studio
    Rick Molloy
    Video PowerPoint

    TL26 - Parallel Programming for Managed Developers with the Next Version of Microsoft Visual Studio
    Daniel Moth
    Video PowerPoint

    TL27 - "Oslo": The Language
    David Langworthy, Don Box
    Video PowerPoint

    TL28 - "Oslo": Repository and Models
    Chris Sells, Martin Gudgin
    Video PowerPoint

    TL29 - Live Labs Web Sandbox: Securing Mash-ups, Site Extensibility, and Gadgets
    Dragos Manolescu, Scott Isaacs
    Video PowerPoint

    TL30 - Microsoft Sync Framework Advances
    Lev Novik
    Video PowerPoint

    TL31 - "Oslo": Building Textual DSLs
    Chris Anderson, Giovanni Della-Libera
    Video PowerPoint

    TL32 - Microsoft Visual Studio: Customizing and Extending the Development Environment
    Tim Wagner
    Video PowerPoint

    TL33 - Managed Extensibility Framework: Overview
    Glenn Block
    Video PowerPoint

    TL34 - Managed and Native Code Interoperability: Best Practices
    Jesse Kaplan
    Video PowerPoint

    TL35 - WCF: Developing RESTful Services
    Steve Maine
    Video PowerPoint

    TL36 - Microsoft .NET Framework: Declarative Programming Using XAML
    Daniel Roth, Rob Relyea
    Video PowerPoint

    TL37 - Microsoft Visual Studio Team System: Leveraging Virtualization to Improve Code Quality with Team Lab
    Ram Cherala
    Video PowerPoint

    TL38 - WCF: Zen of Performance and Scale
    Nicholas Allen
    Video PowerPoint

    TL39 - Coding4Fun: Windows Presentation Foundation Animation, YouTube, iTunes, Twitter, and Nintendo's Wiimote
    Brian Peek, Clint Rutkas, Dan Fernandez, Scott Hanselman
    Video PowerPoint

    TL40 - "Dublin" and .NET Services: Extending On-Premises Applications to the Cloud
    Jacob Avital
    Video PowerPoint

    TL42 - Microsoft SQL Server 2008: Powering MSDN
    Mark Johnston
    Video PowerPoint

    TL43 - Microsoft XNA Game Studio: An Overview
    Frank Savage
    Video PowerPoint

    TL44 - IronRuby: The Right Language for the Right Job
    John Lam
    Video PowerPoint

    TL45 - Microsoft Visual Studio Team System Database Edition: Overview
    Gert Drapers
    Video PowerPoint

    TL46 - Microsoft Visual C# IDE: Tips and Tricks
    Dustin Campbell
    Video PowerPoint

    TL47 - Microsoft Visual Studio Team System: A Lap Around VSTS 2010
    Cameron Skinner
    Video PowerPoint

    TL48 - Microsoft Visual Studio: Web Development Futures
    Jeff King
    Video PowerPoint

    TL49 - Microsoft .NET Framework: Overview and Applications for Babies
    Scott Hanselman
    Video PowerPoint

    TL50 - Research: BAM, AjaxScope, and Doloto
    Emre Kiciman, Ethan Jackson
    Video PowerPoint

    TL51 - Research: Contract Checking and Automated Test Generation with Pex
    Mike Barnett, Nikolai Tillmann
    Video PowerPoint

    TL52 - Team Foundation Server 2010: Cool New Features
    Brian Harry
    Video PowerPoint

    TL54 - Natural Interop with Silverlight, Office, and Python in Microsoft Visual C# and Microsoft Visual Basic
    Alex Turner
    Video PowerPoint

    TL55 - The Concurrency and Coordination Runtime and Decentralized Software Services Toolkit
    George Chrysanthakopoulos
    Video PowerPoint

    TL56 - Project "Velocity": Under the Hood
    Anil Nori
    Video PowerPoint

    TL57 - Panel: The Future of Programming Languages
    Anders Hejlsberg, Douglas Crockford, Erik Meijer, Gilad Bracha, Jeremy Siek, Wolfram Schulte
    Video PowerPoint

    TL58 - Research: Concurrency Analysis Platform and Tools for Finding Concurrency Bugs
    Madan Musuvathi, Thomas Ball
    Video PowerPoint

    TL59 - Visual Studio Debugger Tips & Tricks
    John Cunningham
    Video PowerPoint

    TL60 - Improving Code Quality with Code Analysis
    Ravs Kaur
    Video PowerPoint

    TL61 - Panel: The Future of Unit Testing
    Euan Garden, Jim Newkirk, Nikolai Tillmann, Peter Provost
    Video PowerPoint

    Enjoy!

    Updates on Developer Academy 3 on Twitter

    Updates on Developer Academy 3 on Twitter

    Developer Academy 3 @devacademy3

    In order to keep your self  updated on Developer Academy 3, you can follow @DevAcademy3 on Twitter, or subscribe to its RSS Feed.

    Enjoy!