This is my belated Day Two report from CodeMash held last week in beautiful Sandusky, Ohio.
Some great sessions again today, Starting off strong with
LINQ - Bridging the Object \ Relational Divide
Speaker: Scott Guthrie (keynote)
LINQ introduces new and powerful data manipulation features to the .NET framework. Extremely SQL-like in its syntax LINQ will allow developers to easily access...
DataTable dt = from customer in ProductionDB.custdb where customer.state == "OH" select customer;
NorthwindDataContext db = new NorthwindDataContext(); Supplier supplier = new Supplier(); supplier.CompanyName = "Scott Guthrie"; supplier.HomePage = "http://weblogs.asp.net/scottgu"; db.Suppliers.Add(supplier); db.SubmitChanges();
And not just databases but Objects and XML stores. One of the coolest features is bringing the ability to perform joins with this syntax without regard to the datasource. Meaning one object may be stored as XML the other as an Oracle database table. Scott mentioned that Oracle is working closely with his group to provide dataconnectors to Oracle databases.
The Productive Programmer
Speaker: Neal Ford
Highly informative and highly entertaining. Neal started the session by saying "This is the session your computer doesn't want you to attend" because it's going to do more work for you. He categorized the types of efficiencies into:
- Acceleration (Doing stuff faster)
- Focus (Making the problem smaller)
- Canonicality (Don’t Repeat Yourself)
- Automation (Make you computer do stuff for you)
- Indirection (Make things appear in convenient places)
Geared mainly toward Windows users, Neal, presenting from his Mac, gave several examples of programs and techniques to make your computer do more of the work for you. One suggestion was to start using your mouse with your least favored hand. It will do two things -- make you appreciate how mouse-intensive your apps are and make you want to learn keyboard shortcuts.
Developing Data-Driven Web Applications with LINQ
Speaker: Scott Guthrie
A smaller more detailed and more conversational follow-up to his keynote, Scott fired up his VisualStudio and provided live demonstration of LINQ at work. One selling point for LINQ is that by providing programmers a language to describe what they want rather than how they want it, the compiler, framework, and operating system can work together to take advantage of future multi-core chips on the horizon. I would think the SQL Server folks are already hard at work doing this for our legacy systems already, but perhaps additional benefits may be acheived at compile time.
Overall, for ninety-nine bucks, CodeMash set a new standard of excellence and value for the conferencegoer. My thanks to Milan for his recommendation to attend. And my sincere gratitude to the CodeMash volunteer organizers. Well Done Indeed.