It’s probably old news by now; get it here.
Preparing to Flow
Bob Walsh posted an entry on Information Overload and how he combats it with a technique he terms ‘framing’. I like the ‘mis en place’ like process he describes (especially turning off email, messaging software, telephones etc.)
Visual Studio Team System Technotes
The Visual Studio Team System Technotes are:
“short, focused technical articles that explain a specific concept or walk through a particular scenario. TechNotes are intended to supplement the product documentation and technical articles. In addition, we have brought together some
of our very best blog postings in a central location.”
A nice resource for Visual Studio Team System users.
SysInternals Tools at Microsoft TechNet
As you are no doubt aware, Mark Russinovich and Bryce Cogswell joined Microsoft when MS acquired SysInternals, but I think I must have missed the announcement of the SysInternals site becoming part of TechNet. It’s great that Microsoft is continuing to make these tools freely available. FileMon, RegMon and Process Explorer are just a few of the essential debugging and sleuthing tools available in the arsenal.
The Sysinternals Video Library is still available (though it is a fairly expensive) and the “Tour of the Sysinternals Tools” video is free for download.
LINQ Wiki
Frank Arrigo and Nick Randolph have blogged about a new site site: Hooked on LINQ maintained by Troy Magennis.
It’s not hype; LINQ will radically improve the way that data is abstracted and consumed in .NET, not to mention make it easier for developers to create high performance, logically tiered designs.
Vista Anyone?
It’s early days yet, but Vista does not seem to be making many waves.
John Brand, a research director of Sydney-based IT analyst firm HYDRASIGHT, notes that “early analysis, by larger enterprises in Asia/Pacific has been underwhelming in regard to the likely business value from upgrading to Microsoft’s Windows Vista operating system. We believe there is little or no compelling technical or feature/function reason for larger enterprises to upgrade.” He also said the biggest competitor to the adoption of Vista is “Microsoft and the status quo…Previous versions of its own operating systems, as far back as Windows 98 and 2000, dominate the majority of consumer and business PCs – and will continue to do so throughout 2007 and beyond.”
There has been talk that Vista is “more secure” and that alone is a compelling reason to upgrade. Wait a minute, I thought XP SP2 was supposed to be secure!
Dan Appleman as usual gives a lucid and balanced view here: A Developer’s View of Vista
I normally field the odd ‘computer’ question from friends and family, but no one has yet asked me “What is Vista?” let alone “…should I upgrade?”
I think it’s going to take more than a few gadgets to sell Vista. Come on Microsoft, give me something to shout about.
Top 10 Largest Databases in the World
Nice article crunching those large numbers and a topical reminder of climate change (which if you haven’t heard of, you must have been sleeping next to Walt Disney for a while, and congratulations on the medical breakthrough that got you revived…)
I suspect YouTube will be even higher this time next year. Google is at no. 4 and could conceivably be even higher as they guard their data as the article mentions. On the subject of Google watching, there is an article on Sergey Brin here.
.NET Micro Framework 2.0
Several bloggers (James Manning, MikeZeff) have noted the release of the .NET Micro Framework 2.0, whose homepage is here with a wealth of information and resources. There is also an overview of the .NET Micro Framework 2.0 which is primarily targeted at low-power, small, embedded devices (such as the soon to be common Sideshow devices).
Move Over Dolly…
OK, I’m not really a conspiracy theorist but… apparently doing loads of .NET and SQL Server work has a strange transforming effect on those that practice these black arts:
Mark Dunn on DNRTV and Perth local MVP Brian Madsen (hopefully Brian has put his picture back up).
Design Patterns
Nick Malik posted an interesting entry titled What are the top 100 patterns that every developer must know on his “Inside Architecture” blog. His question prompted a few replies including my own, which I’ve edited and reproduced here.
My own thoughts are in line with the comments made by JohnCJ. The common patterns in a particular domain maybe different from those in others, hence the drive behind creating Domain Specific Languages (DSLs). There might only be 10 – 20 truly common patterns, and even those may take different concrete forms depending on their context.
I would be surprised if an ‘average’ programmer (is there such a thing?) could name the ten most common patterns and adequately explain them to someone else, even though they may be familiar with the principles of good design. That is not a bad thing in itself, as developers encountering patterns for the first time are sometimes prone to over use them. Come to think of it can you name and accurately describe the 10 most common non-compound patterns? I struggled to remember these: Factory Method, Abstract Factory, Strategy, Observer, Decorator, Façade, Composite, Singleton, Adaptor, Command, Iterator, Proxy, State. I honestly don’t think I could remember 100 design patterns!
I think a better approach is to teach developers the Object Oriented design principles that underpin the creation of patterns and a few patterns not to use (anti-patterns).
The patterns themselves are not as important as the underlying principles:
- Encapsulate what varies.
- Program to an interface, rather than an implementation.
- Favor composition over inheritance.
- A Class should have only one reason to change (Single Responsibility Principle or SRP).
- Sub-types MUST be substitutable for their base (Liskov Substitution Principle or LSP).
- Classes should be open for extension, but closed for modification (Open Closed Principle or OCP).
The Portland pattern repository: http://c2.com/ppr/ is a good resource, although it can be a little hard to search. If you are interested in learning about Design Patterns you should read Head First Design Patterns by Elizabeth and Eric Freeman.