- Polymorphic Podcast: 2007.04.26 Model View * Design Patterns - FAQs and Video Review
- New York Times: Tech Talk for 06/08/2007
- Virtual Tech Ed: TechNet Webcast: "The Network is Slow": Identifying the Cause of Slow Network Communications (Level 200)
- SYS-CON.TV: Open Source Java Framework Spring
- Dot Net Rocks: Introducing Acropolis
- Dot Net Rocks: Mark Pollack on Spring.NET
- Arcast: ARCast.net - Bridging The Gap from C++ to C#
- Hanselminutes: Orcas Overview
- ARCast.net - Getting Agile in Dublin
- Interview with Timothy Ferriss of The Four Hour Workweek
Tuesday, 12 June 2007
Currently listening to...
Saturday, 9 June 2007
Friday: Mark Russinovich explains UAC
- in Vista some actions that used to require admin privileges now don't (for instance looking at the system clock or changing the time zone can now be done by standard users.)
- admins behave most of the time as standard users and become admins only when clicking Yes in the elevation dialog.
- ISVs will be encouraged to avoid coding actions that require admin privs.
He explained what virtualization was (nothing to do with VMWare by the way) and how to figure out if an app runs with virtualization enabled or not. Virtualization is a backward compatibility mechanism that automatically redirects a legacy app trying to write to a system folder when running as standard user. I have a feeling this will confuse programmers for years to come or at least until all legacy apps disappear...
Thursday, 7 June 2007
Thursday: Next Generation Cryptography (NGC)
Another brilliant talk:
DEV307 - New Cryptography: Algorithms, APIs, and Architecture Thursday, June 7 9:45 AM - 11:00 AM, S220 E Speaker(s): Rafal Lukawiecki
Rafal enumerated past and current cryptography algorithms, giving an opinionated (but very funny) overview of mechanisms available to date. He completed his presentation with the description of the Microsoft implementation of NSA Suite-B in Vista: the NGC API. He gave a Win32 demo of how to encrypt with the NGC API. It was very dense, packed with information but went down quite well because he managed to keep the audience laughing every 3 minutes.
According to Rafal,
- If you're not using Vista, you should use:
- AES128 - resists to power analysis (cracking a code by measuring energy consumption of the CPU).
- RSA2048 (although slow for key generation)
- Avoid:
- DES. unless it is for Obfuscation.
- Triple DES: sounds better but is not. It is slow.
- IDEA
- RCU and RC5 (Ron Rivest)
- Blowfish, Twofish – ok but not a standard · CAST and GOST.
- Advice for developers:
- Rely on cryptosystems, do not write it yourself.
- Never write a loop that encrypts and encrypts: this can be cracked.
- Do not download libraries.
- Within the Microsoft OS: use CAPI 2.0 (CAPI 1.0 is deprecated). The .NET Framework wraps around CAPI.
- NSA Suite-B is supposed to replace all other algorithms.
- It will be available for military as well as civil use.
- Available in Windows Vista and Server 2008 as part of the NGC API.
- It is an Open API (which means you can plug-in more implementations)
- Works in kernel-mode (better performance).
- 2 Flavours: a B-API where key crypto is done by OS, N-API where crypto is done by a smartcard.
Sessions I've Missed
- DAT315R Be More Productive with Microsoft SQL Server 2005 Tools
- DEV346 Microsoft Visual C# Under the Covers: An In-Depth Look at C# 3.0
- DAT318 Applied ADO.NET Entities: How to Leverage the Entity Framework in Your Application
- DEV313 Improving Code Performance with Microsoft Visual Studio Team System
Wednesday: Visual Studio Component Round-Up
- DevExpress (reporting)
- ComponentOne (Office 2007-style ribbons and appointment controls)
- DevCentral (deployment)
Wednesday, 6 June 2007
Wednesday: Unit-Testing and Test-Driven Development
- Unit-tests are a “living document” that reflects the intended use of the software.
- Advantage of many small unit-tests: allows you to narrow down the scope of failure upon change.
- A unit-test cares about its class only.
- You typically have more lines of UT code than actual code.
- TDD is ATRIP:
- Automatic,
- Thorough,
- Repeatable (doesn’t depend on dynamic data),
- Independent (one class only),
- Professional (well written, commented, easy to maintain).
- VS2008 Professional will include Unit-Testing (This one triggered a round of aplause).
- Test-driven development: Red, Green,Refactor.
- Red: make it fail. Ensure the test fails with a method that's not yet implemented.
- Green: make it work. Code the minimum to satisfy the test (even if the code is crap).
- Refactor: make it better. Improve the code, make it easier to maintain.
- TDD requires discipline (no kidding).
Pair programming: one writes the unit-tests, the other writes the implementation.
Tuesday: Jam Sessions
Tuesday: TLC about Types of Objects
"Software re-use is not a goal but a side-effect of refactoring. The consequence of re-use is tight coupling, and you don't want that."
hee hee...
Tuesday: Linq and ASP.NET
DEV324 - The .NET Language Integrated Query (LINQ) Framework
Tuesday, June 5 8:30 AM - 9:45 AM, N320 A
Speaker(s): Luca Bolognese
Luca delivered a lively talk where he demonstrated the elegance of writing queries in LINQ. From C# you can now write code that looks very similar to a SQL query where the 'FROM table' is an object implementing IEnumerable
It works with SQL Server for the moment and could work with Oracle whenever Oracle releases a provider for it.
If LINQ worked with Oracle, this could be a nice way to code business rules in C# instead of PL/SQL stored procedures (IDE support for PL/SQL is very crude) or nHibernate (I'm afraid of ORM complexity from a debugging perspective).
Luca's blog: http://blogs.msdn.com/lucabol/
WEB305 - Building a Complete Web Application Using ASP.NET "Orcas" and Microsoft Visual Studio Code Name "Orcas" (Part 1 of 2)
Tuesday, June 5 10:15 AM - 11:30 AM, S230 E
Speaker(s): Scott Guthrie
Attended both sessions by Scott. What I'll remember:
- Visual Studio 2008 will support multi-targeting. That means when you create a project you can say whether you want to use .NET Framework 2.0, 3.0 or 3.5.
- The HTML designer in Visual Studio is getting serious (same engine as Expression), although not as powerful as Dreamweaver, it's getting there: fast source switching, split design/code views...
- CSS support: you select an HTML element and see what CSS rules apply to it or select a CSS rule and see all HTML elements it applies to. You can also change the CSS properties in one window and immediately see the results in the other window.
- LINQ: when running a link query the VS debugger shows the SQL query that was generated by LINQ. It also shows the data retured by the query. Very cool, lots of clapping in the audience when Scott demonstrated that.
- VS2008 supports Javascript debugging (breakpoints, step by step) as well as intellisense. Again the audience loved it.
Tuesday, 5 June 2007
Tech Ed Shopping List
My shopping list:
- Get my Office T-shirt scanned (TLC green area)
- Decide whether or not to buy the HP Tx1000z
- Have a look at the demos for each 3rd party .NET controls libraries: VS components round-up. 12pm to 1.45pm N310A on Wednesday.
- Watch a demo of Visual Studio 2008
- Go through the hands-on labs I selected.
- Fill out the evals.
Tools and SDKs I must check out before I die
- Devexpress (refactoring tools)
- Infragistics
- Telerik (cool controls)
- BT's Web21C SDK: set up calls between phones with very little code.
- Visual Studio Extensibility Toolkit
Monday: Brain Freeze
Monday, 4 June 2007
Sunday: Party with Palermo
Sunday, 3 June 2007
Sunday: registration
Landed in Orlando
I'm staying at the Holiday Inn, between Universal Boulevard and International Drive. Big room with safe, large TV, desk and free broadband internet. International Drive has plenty of places to eat and I'll investigate that tonight.LNC01 - How to Get Published: What it Takes to Become a Technical Author on Microsoft Technologies Monday, June 4 12:00 PM - 1:00 PM, N220 A Speaker(s): Martin DelRe, Linda Engelman, Ken Jones Microsoft Press publishes a large variety of technical books for IT Professionals, Developers, and the home audience. And we’re always looking for good authors! If you’ve ever thought of turning your subject matter expertise and hard-earned knowledge into a book, this could be a great start! In this panel discussion, learn how to write a proposal, what we look for in deciding whether to publish your book, and how you can help sell your book once it’s on the market.