New and Notable 270

Agile/Software Development/ALT.NET

ASP.NET MVC

ADO.NET Data Services (Astoria)

WCF/SOA

New and Notable 269

SOA/REST/WOA

Technorati Tags: ,,
Thoughts on Evolutionary Design

Jeremy, as always, has a lot of interesting things to say in his latest Train of Thought. I agree with most of what he said, in particular with evolutionary design, as Steve Eichert and I practiced it at Algo. It is important to not "allow your design thinking and abstractions get ahead of your development and requirements." It also important to postpone technical decisions until you actually need to make them,  The Last Responsible Moment. It's ok to rewrite and refactor and evolve the design. It's a natural cycle that matches how we learn the domain, as a team, together with Business.

That being said, all environments are not the same, and we did get in a position at Algo where we were doing so much evolutionary design and still a lot of things were missing due to constant reprioritization - the "tech" and "infrastructure" stories would always get postponed and never scheduled until we had to break me off from the team to handle them.

This all ties in with my friend Jim Shore's Design Maps and The Other Side of Design. There are two sides to the coin, Predictive Design and Reflective. Predictive is given a bad name as Reflective is the analyze existing code, find flaws, and refactor cycle, but as Jim shows with his Design Maps, neither approach is necessarily better than the other for all things. Successful systems *do* get built every day with Predictive Design as well as many fail. The important thing is to find *your* Design Map and work with  your team to find your team's map and use an appropriate mixture of design taxonomies for what you are doing.

New and Notable 268

Visual Studio

SaaS/Cloud Computing/REST/WCF

New and Notable 267 - ASP.NET MVC

ASP.NET MVC

  • Lots of activity on the  http://www.ASP.net/mvc website. First, I heard from Scott Hanselman on Twitter, about the 5 free chapters to 5 new MVC books
  • Then, via Steven, the addition of 15 new ASP.NET MVC videos and tutorials. Of special interest, is his pairing with Charlie Poole to use TDD to develop a complete simple application
Technorati Tags: ,
The Return of the CLR

Otherwise known, as "Return of the Giant Hogweed"

Once upon a time, .NET was so new that there wasn't a Visual Studio .NET yet (the beta crashed every 5 minutes so you couldn't use it even if you wanted to), no books, few blogs and one had to use things like the Shared Source CLI or Rotor to figure out things in .NET along with command lines and notepad (some of us actually yearn for those days in some ways). In those days, I learned a lot about CLR Internals by going to the source Luke as shown in this post on 7/1/2002 on how to use Rotor (Here is the one I did for the MAC). The constant companion was my well-worn book Shared Source CLI Internals. I read this book so many times it was torn apart. For years, I gave a very popular CLR Internals talk at DevTeach and elsewhere.

Then it grew quiet. The .NET scene exploded but most people could care less about the "internals" like those in the early days. Rotor did get a V2 but few people cared again. People went on to drag data grids, .NET development was co-opted by the ALT.NET revolutionaries ("Did you declare a spike for that?") and it grew quiet for CLR wonks. .NET got no CLR changes after 2.0 until recently. Some CLR innovation did occur, especially in the area of cross-platform support, with Silverlight.

I am glad to see Joel announce a V2 draft of the Shared Source CLI Internals, along with Ted. I am super exited!!!!

The second part of the great CLR news is that there are finally some CLR changes in 3.5 SP1 to dig into. In the upcoming timeframe, you are going to see some new renewed focus from me on the basics and the CLR internals in this blog. In the meantime, I leave you with this re-creation of that magical night of 7/1/2002 with Vista. Long Live MSCOREE!

New and Notable 266

Enterprise Architecture

ASP.NET

  • In his latest tip, Steve demonstrates how to unit test the LINQ to SQL DataContext by using a Fake DataObject. Isn't that a mock?

WPF

  • Christopher has started a Building a WPF Application series with Part 0, Part 1, and Part 2

CLR/.NET Framework

New and Notable 265

A quick one while I am on vacation.

.NET 3.5 SP1

IronRuby/Ruby

Software Architecture/RIAs

Screencast - Creating your First WCF Service

As Cliff announces, CSD is partnering up with my friends Aaron and the PluralSight folks on a new  weekly .NET developer screencast series to show how to accomplish tasks in WF/WCF 3.5 and Visual Studio 2008. This week, for the inaugural screencast, CSD MVP Aaron Skonnard walks you through how to create your first WCF Service. The screencast guides the viewer through creating the service from scratch in VS2008 - defining a data contract, a service contract, and testing/hosting the service in VS2008. Cool!

WCF, WS-* and REST in .NET 3.5 SP1

As I listed in this post on the .NET Framework 3.5 SP1, there are a bunch of significant additions to WCF in SP1. The list looks pretty focused towards REST services and the Web. It's no secret that many developers are looking to REST and the simpler programming model for Web applications. In this regard, Microsoft is perhaps playing catch up here adding first-class REST features alongside the premier WS-* features. With WCF being extensible this has been fairly simple and has resulted in a single framework for building services that allows us developers to target both SOAP and REST based services. I think the really cool thing, is that since a WCF Service can expose multiple endpoints, its a snap to expose both a SOAP/WS-* endpoint and a REST endpoint. In other words, the same service functionality over both endpoints. This is low cost and itterative way to get into REST. You don't have to fight between the two, Indigo lets you use both with much of the same concepts you have already learned.

If you want to truly understand all this, you will want to get Jon Flander's RESTful .NET book when it ships. I have been working as a tech reviewer on the book and its going to rock!

And They Say Its Just a Service Pack

Patrick uses the awesome power of the assembly comparison feature of the tool NDepend to show exactly how much more there is in .NET Framework 3.5 SP1:

Summary:

# Assemblies    112
# Namespaces    919 to 935      (+16   +1.7%)
# Types    39 988 to 40 513      (+525   +1.3%)
# Methods    387 421 to 386 790      (-631   -0.2%)
# Fields    241 567 to 246 795      (+5 228   +2.2%)
# IL instructions    8 598 933 to 8 620 940      (+22 007   +0.3%)

Yah, sure. It's just a service pack :)

Alienware Repave Clean Image Install List

I already did my "Inessential List of Tools" back some time ago but yesterday, in the attempted install of the new VS2008 SP1, I found that the so-called Hotfix Cleanup Utility would not work for me. Nothing was really working to remove the Beta 1 bits including manual registry methods, so I decided to repave the Alienware. Several people thought this would be worth posting as to what I installed and what order, so here goes.

  1. Vista Ultimate + patches
  2. Vista SP1
  3. Visual Studio 2008 Team Suite
  4. Live Mesh (holding files from old image)
  5. Reflector plus SysInternals stuff
  6. Visual Studio 2008 SP1/.NET Framework 3.5 SP1
  7. SQL Server 2008 Standard Edition
  8. Silverlight Beta 2 released yesterday
  9. PowerShell
  10. Resharper 4.0
  11. E Text Editor
  12. Office 2007 Ultimate
  13. Zune software
  14. Nunit, MbUnit, XUnit, TDD.NET
  15. Plaxco and Xonbi

Those are the major items, most of the rest can be found on Scott's list or mine.

New and Notable 264 - Visual Studio 2008 SP1 and .NET Framework 3.5 SP1 RTM!

Of course, this is so much more than a Service Pack with the release now of ADO.NET Data Services (Astoria) and the Entity Framework among others. In my area of interest, CSD, there are some significant changes for REST programming (1st class citizen now) as well as some other additions:

There were several enhancements to WCF in .NET Framework SP1 that make it easier for developers to build and deploy a broader, more scalable set of Web Services:

  • Improvements in writing REST based services ranging from easily supporting ServiceDocuments publication and consumption to providing greater control and usability of UriTemplate.
  • Expanding the reach of the DataContract Serializer by relaxing the need of having [DataContract]/ [DataMember] on types and by supporting an interoperable mechanism for dealing with object references
  • Support for ADO.NET Entity Framework types in WCF contracts
  • Scalability increases of 5X - 10X are available for WCF services hosted in IIS7-integrated mode.
  • Improvements to the tools for developing, testing, and hosting Web services.
  • Improved Partial Trust Debugging Experience with support for writing to the Event Log.

If you previously installed a Visual Studio 2008 Hotfix, you must run the Hotfix Cleanup Utility before installing Visual Studio 2008 SP1. For more information, see Visual Studio 2008 Hotfix Cleanup Utility for Installing Visual Studio 2008 SP1.

Visual Studio 2008 Express Editions with Service Pack 1 (Bootstrappers)
http://go.microsoft.com/fwlink/?LinkId=123679

Visual Studio 2008 Express Editions with Service Pack 1 (iso)
http://go.microsoft.com/fwlink/?LinkId=123680

Visual Studio 2008 Service Pack 1 (Bootstrapper)
http://go.microsoft.com/fwlink/?LinkId=122094

Visual Studio 2008 Service Pack 1 (iso)
http://go.microsoft.com/fwlink/?LinkId=122095

Visual Studio  Team System 2008 Team Foundation Server Service Pack 1
http://go.microsoft.com/fwlink/?LinkId=124829

.NET Framework 3.5 Service Pack 1
http://go.microsoft.com/fwlink/?LinkId=124150

New and Notable 263

CSD/WF/WCF/Oslo

.NET Community

  • Justin provides a Codestock in Knoxville Tennessee report. Looks like a lot of people had a great experience

CLR

Silverlight

  • Dave continues his long running Silverlight Creme series with 341, 342, and 343.
New and Notable 262

ASP.NET

ALT.NET/Software Architecture

More Posts Next page »

Search

Go

This Blog

News

    The content of this site are my own personal opinions and do not represent my employer's view in anyway.

    Profile for SamGentile

MVP

Blog Information Profile for SamGentile

Tags

Archives

Syndication