Saturday Splash

To continue from the Super Tuesday post – here are some more highlights from this week:

First off, let’s get things started right… today is the best football game of the year – Ohio State vs. Michigan


OH!  IO!   Go Bucks  🙂

Value Objects Presentation

Dan Bergh Johnsson gives an enlightening presentation on ‘value objects’.  Sounds… boring… ?  Not at all.  This is a real eye opener.  I had to sigh a few times as he spoke thinking ‘I need to go start refactoring some code!’.

Give your programming career a favor and watch his presentation over at InfoQ.

Dan Bergh Johnsson refreshes the listeners’ memory on using value objects showing by example how their good use can revolutionize a program’s architecture, simplifying it, making it more readable and testable, in a word, better.

Chrome OS:

Been following the news on Chrome OS ??? Well, it’s all very interesting!  Here are some favorite links:

Help Build Chrome OS:


Google OS Concept Video :

My take on this new Operating System:

1. “Just” Chrome… hmmm… not sure about this value.

2. Android + Chrome ?  Now we’re talking.  This is the way they should proceed IMO.  Android would add value.


UPDATE: Looks like my #2 is right on target….read about ..converge…  :) 

Google’s co-founder, Sergey Brin…said "Android and Chrome are likely to converge over time."

ASP.NET MVC 2 Beta Released:

My favorite .NET web framework has been updated to version 2 beta. From Phil Haack’s link above:

Here are some highlights of what’s new in ASP.NET MVC 2.

  • RenderAction (and Action)
  • AsyncController
  • Expression Based Helpers (TextBoxFor, TextAreaFor, etc.)
  • Client Validation Improvements (validation summary)
  • Add Area Dialog
  • Empty Project Template
  • And More!
Go Live

ASP.NET MVC 2 Beta also includes an explicit go-live clause within the EULA.

To go along with this release is a good write up custom validation in mvc 2.  A snippet of what this post covers:

cover building a custom validation attribute using the base classes available in System.ComponentModel.DataAnnotations. ASP.NET MVC 2 has built-in support for data annotation validation attributes for doing validation on a server. For details on how data annotations work with ASP.NET MVC 2, check out Brad’s blog post.

Great stuff Phil! This is a 3rd part of Phil Haack’s series on mvc beta 2.  This team continues to impress me on their progress.  As David Hayden has said ‘"hopefully you have spent the past year learning and mastering the ASP.NET MVC Framework, because Webforms is officially dead"’  :)  (LOL)

P&P Web Client Developer Guidance

I’m going to start following the Web Client guidance project from the Patterns and Practices team.  Some of their ‘anticipated benefits’ (from CodePlex site) include:

      • Provides infrastructure for developing and maintaining ASP.NET and AJAX applications
      • Provides guidance on MVC 2, jQuery, and AJAX library
      • Unit testing for ASP.NET and JavaScript client applications
      • Responsive applications
      • Flexible architecture that allows change
      • Separated presentation including unit testing view logic
      • Application modules are developed, tested and deployed separately
      • User Interface components are dynamically composed
      • Guidance on how to improve Web client security
      • Allows incremental adoption of the components

This is a bold list, but a good list of future features.  I’m going to urge this team to make these a reality.  As some know from my past post, I consider ‘Grails’ to be the defacto standard right now for a web application framework.  That said, personally I’d like to see this team start to take on their model of convention over configuration, etc… and provide guidance that implements practices – such as IoC for injecting services into the controllers, a loosely coupled architecture, testing structures created – build/test routines, ease of switching back and forth from test/dev/production in builds – simplified setups for developers with consistent project layouts.  I think their list again, is bold, but good.  I look forward to seeing this progress.


Chrome Frame:

Yes… I actually used this – and it worked out well.  We enjoy the benefits of Chrome, and a customer that uses IE.  Where it helped was we are using Reporting Services in certain pages.  These pages did not include the frame to get the printing functionality of IE.  Meanwhile, the rest of the application enjoyed the Chrome features, all looking as if it’s in IE.  (Note: this was an intranet web app)


Davey Brion’s Introducing the ‘Agatha’ Project

What is Agatha ?  Agatha is a new ‘Response/Request Service Layer’  RRSL.

These are the posts that this series consists of:

  1. Requests And Responses
  2. Processing Requests
  3. Handling Requests
  4. Exposing The Service Layer Through WCF
  5. Synchronous Client-Side Usage
  6. Testing Synchronous Client-Side Usage
  7. Asynchronous Client-Side Usage
  8. Testing Asynchronous Client-Side Usage
  9. Conclusions

This is an open source project.  He summarized a list of items in his concluding post. 


Udi Dahan (NServiceBus) on Search and Messaging:

One question that I get asked about quite a bit with relation to messaging is about search. Isn’t search inherently request/response? Doesn’t it have to return immediately? Wouldn’t messaging in this case hurt our performance?

Learn more about Search and Messaging – as I lean toward SOA/EDM/ESB architecture, these are critical pieces to understand, in particular the Command/Query pattern:

See Udi’s post on ‘Command Query Separation and SOA’.

Steve Sanderson on ‘Selective Unit Testing – Costs and Benefits’

Steve Sanderson, author of my favorite ASP.NET MVC Framework book has a good article on ‘selective-unit costs & benefits.

Here is a snippet to get you started:

So why am I writing this? Two reasons:

  1. Because I think we can go further and understand the underlying forces that make unit testing worthwhile (or not) for any given unit of code.
  2. Because a minority of developers still believes that they should aim for 100% unit test coverage, and that if they don’t follow the TDD code-first process, then they’ve failed as a professional. I’m not satisfied with that view.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s