Archive for October, 2005

Recommended Version Control Solutions

October 21, 2005
In this day and age, all shops should be using atomic check-in version control solutions.
Subversion is the pioneer of atomic check-ins.

Subversion is a great solution. However, the new “must-have” version control feature is shelving.

Microsoft will be releasing a completely new Version Control solution in January 06.

It is called Team Foundation (TF) Version Control which is part of the Team Foundation Server product.

Team Foundation is better than Subversion because of its rich Atomic Check-in and Shelveset features.

Here is my ranking of Version Control Solutions.
  1. Team Foundation Version Control
  2. Subversion
  3. CVS
  4. VSS

Please see this snapshot view of Team Foundation’s Source Code Explorer.

TFS Version Control


Microsoft’s LINQ will be a Productivity Boon

October 13, 2005
There is much to be said about Microsoft’s new LINQ technology.
LINQ stands for Language Integrated Query.
I will be blogging more about the details in the future.
However, the big advantage for most developers will be:
  1. conciseness of the code (less code to write, less code to test)
  2. compile time checking
Here’s an example of data access today versus data access with LINQ.
It’s a case of 10 lines versus 5 lines.
Accessing Data Today
Line #
1.  SqlConnection c = new SqlConnection(…);
2.  c.Open();
3.  SqlCommand cmd = new SqlCommand(
       @"SELECT c.Name, c.Phone    // 1. Queries in quotes
            FROM Customers c
            WHERE c.City = @p0");  // 2. Loosely bound arguments
4.  cmd.Parameters.AddWithValue("@p0", "London");
5.  DataReader dr = c.Execute(cmd);
6.  while (dr.Read()) 
7.    string name = dr.GetString(0);
                                 // 3. Loosely typed result sets
8.    string phone = dr.GetString(1);

9.    DateTime date = dr.GetDateTime(2);

                                 // 4. No compile time checks 
10. dr.Close();
Accessing Data with LINQ
Line #
1.  public class Customer { … }  // 1. Classes describe data
2.  public class Northwind: DataContext
3.    public Table<Customer> Customers;
                             // 2. Tables are like collections
4.  Northwind db = new Northwind(…);
                            // 3. Strongly typed connection
5.  var contacts =
        from c in db.Customers
        where c.City == "London"
                            // 4. Integrated query syntax
        select new { c.Name, c.Phone };
                            // 5. Strongly typed results

Lack of Xbox360 Games by Launch Date? Hogwash!

October 5, 2005
The NY Times printed an article yesterday regarding an impending dearth of Xbox 360 games by the time the console launches on Tuesday, November 22nd.
The article is here.
I did my own research and at this point, I see the following:
– Number of games being released on launch date is 18.
– Total number of games being released by December 25th is 31.
– Number of game vendors working on the 31 titles is 18.

Here is the breakdown by vendor.
Games being released on November 22nd:
1. Call of Duty® 2             (Activision Inc.)
2. Test Drive Unlimited        (Atari Inc.)
3. Dead Rising                 (Capcom)
4. Need for Speed: Most Wanted (Electronic Arts, Inc.)
5. FIFA 06: Road to World Cup  (Electronic Arts, Inc.)
6. Madden NFL 06               (Electronic Arts, Inc.)
7. NBA Live 06                 (Electronic Arts, Inc.)
8. Tiger Woods PGA Tour 06     (Electronic Arts, Inc.)
9. (eM)-eNCHANT-arM            (FromSoftware Inc.)
10. Dynasty Warriors 5 Special  (Koei Co. Ltd.)
11. Everyparty                  (Microsoft Game Studios)
12. Kameo: Elements of Power    (Microsoft Game Studios)
13. NINETY-NINE NIGHTS          (Microsoft Game Studios)
14. Ridge Racer 6               (Namco)
15. CHROMEHOUNDS                (Sega)
16. FINAL FANTASY XI            (Square Enix Co. Ltd.)
17. World Air Force             (Taito Corp.)
18. Wrestle Kingdom             (Yuke’s Co. Ltd.)
Games being released by December 25th
19. Mobile Suit Gundam          (Bandai Co. Ltd.)
20. Resident Evil 5             (Capcom)
21. Shutoku Battle              (Genki Co. Ltd.)
22. Bomberman – Act Zero        (Hudson Soft Co. Ltd.)
23. Far East of Eden – Ziria    (Hudson Soft Co. Ltd.)
24. Rumble Roses XX             (Konami)
25. Gears of War                (Microsoft Game Studios)
26. Project Gotham Racing® 3    (Microsoft Game Studios)
27. Frame City Killer           (Namco)
28. Sonic the Hedgehog          (Sega)
29. The Outfit                  (THQ)
30. Saint’s Row                 (THQ)
31. Tom Clancy’s Ghost Recon    (Ubisoft Entertainment)