Simon Ince's Blog

Ramblings of a gadget freak

Browse by Tags

Tagged Content List
  • Blog Post: View Model versus Domain Entity Validation with MVC

    I blogged way back in January about what I see as the three variants of View Model usage in ASP.NET MVC. If you’ve not read that post, check it out here and report back! The Problem What I’ve started to see is that many other developers like my approach of defaulting to Variant 2 (a container view model...
  • Blog Post: Different Routes for Different Hosts Using Constraints

    I had the pleasure of visiting some guys in Munich this week to talk about ASP.NET MVC. Well, the time with them was a pleasure, but I did have two awful airport experiences due to snow in 48 hours! Something we discussed that I’ve come across before is using different routes depending upon the domain...
  • Blog Post: Offline Data Cache in Windows Phone 7

    I’ve been building a Windows Phone 7 application that basically lets a user create records offline, and then pushes those up to a cloud service when network connectivity is available. These offline records are not as offline as I would like though – it’s never that simple is it? The records contain data...
  • Blog Post: Bubbling PropertyChanged Events in Silverlight

    I’ve been working with Silverlight (specifically for Windows Phone 7) recently and something I’ve found useful is the ability to “bubble” PropertyChanged event up. So for example; 1: public class MainPageViewModel : INotifyPropertyChanged 2: { 3: public ObservableCollection<Person> People...
  • Blog Post: Controller Action Design in MVC

    Validate, Act, Translate, and Respond. That’s about it. I’ve been trying to come up with a nice acronym for how to structure code in Actions for some time now, and this is the best I have managed. I wish it spelt a nice word – so if you’ve a better suggestion shout up. What...
  • Blog Post: Client Script Patterns: Predictive Fetch

    Why do you write JavaScript? It's probably for one of two major reasons – Responsiveness or Richness. Richness we know about – it's the flying, sliding, flashing, and sometimes annoying UI features we see J But Responsiveness is much less tangible – it's about how an application feels to use. Does...
  • Blog Post: jQuery + MVC = Progressive Enhancement

    If you write a lot of JavaScript, you really should consider adopting Progressive Enhancement as the standard way that you work. This is basically whereby you write a web site without script, and then enhance it with script. The result is a site that does not rely on JavaScript (and hence works with...
  • Blog Post: View Models in ASP.NET MVC

    Q : Should I have a view Model in my ASP.NET MVC architecture? A : Yes. Well, that was a short post! J Being more serious, this is an interesting topic that the advisors and p&p team discussed a few times while they were building the Reference Implementation for the soon-to-be-complete Web...
  • Blog Post: Check out the Web Client Guidance

    If you've not come across the Web Client Guidance that patterns & practices have been working on, now is the time to head on over to their CodePlex site; http://webclientguidance.codeplex.com/ The team have been really busy pulling together resources, advice, and guidance on a lot of topics...
  • Blog Post: Closure Exposure: A JavaScript Scope Trick

    You might have seen some JavaScript is wrapped up in funny looking functions, such as this screen shot, and wondered why – even parts of the Microsoft Ajax Framework previews use such an approach. At first it can seem very strange, but don't worry – it's actually very simple, and equally useful. ...
  • Blog Post: Do you need web client development help?

    Then tell us what you need! Blaine has blogged a link to a survey that patterns & practices will use to help them understand what challenges that are affecting you the most... so that they can choose the right areas to focus effort in providing guidance. If you’ve got a couple of minutes spare...
  • Blog Post: Enforcing Unobtrusive JavaScript

    Unobtrusive JavaScript is a concept that’s been around for quite a while, but it’s now finally starting to make its way into the mainstream. The basic idea is that you should separate your JavaScript from your HTML – so instead of; < a href ="Default.aspx" onclick ="alert('Sorry, that is unavailable...
  • Blog Post: String.Unformat: I've created a monster

    I don’t know if you’re the same, but when coding away I often find myself wishing for a String.Unformat function – call it the evil twin of String.Format . With String.Format I can build up strings like this; var result = String .Format( "http://{0}:{1}/{2}" , "localhost" , "12345" , ...
  • Blog Post: foreach keyword or ForEach<T> extension method?

    Is this a question of taste, or something more serious? [ Warning : this post won’t change your life J ] I found myself writing the following extension method yet again the other day; public static void ForEach<T>( this IEnumerable <T> source, Action <T> action) { ...
  • Blog Post: Types of Auditing

    Auditing almost means something different to everyone I speak to... just a few things people mean when they say “our system has auditing” to me are; Business Operation Auditing . This is recording when a business operation is performed, such as “Hire Employee”. They usually signify that a whole lot...
  • Blog Post: Procedural versus Set-Based SQL

    During my day job I come across customers that are struggling to make a system perform to the expectations of their users, and they often see this as a SQL Server problem. This post is designed to demonstrate how much of a difference your approach to SQL tasks can make to the performance and scalability...
  • Blog Post: Are you using the WCSF?

    Have you been using the Web Client Software Factory ? Or have you tried it and not adopted it? Or have you used some of the bundle content but not the whole factory? Michael Puleio has just started a thread on codeplex requesting feedback on who is using the factory , and talks about it briefly in...
  • Blog Post: AJAX Script Patterns: Service Agent

    I’ve been thinking for a while about how people tend to build AJAX applications, as there seems to be something a lot of people have forgotten. This post examines how applying a pattern you probably know very well to AJAX could help – and leaves it to you to decide whether this is useful. Let me know...
  • Blog Post: Sufficient Architecture

    “Sufficient Architecture? What does that mean?!”, I hear you say!! Bear with me. Over a beer this week I had a good conversation with a colleague about the principles of architecture and design, and as a result I feel compelled to recount something that I have tried to adhere to for a long time. I...
  • Blog Post: Lamba Expressions to the Rescue!

    Maybe I’m biased because he’s on the same team as me (ahem, sorry for the plug J ), but I really liked Stuart Leeks ’ post on improving the “Include” method on ObjectQuery<T>. It’s another example, like the MVC Framework he mentions, of how lamba expressions can be used in the real world to...
  • Blog Post: p&p Sharepoint Guidance

    Via Blaine’s post (that gives quite a lot of information on what is included and what their plans are), the patterns & practices Sharepoint Guidance is starting to take shape, with a drop to codeplex having arrived this week . Be sure to check it out – this is an area that is becoming more and more...
  • Blog Post: The “Service Interface” Pattern

    I am constantly surprised when speaking with people how few have heard of or use the “Service Interface” pattern. It is actually a very straightforward pattern, is very little work to use, but brings such practical, quantifiable, visible, benefits I think it has to be one of my all time favourites. The...
  • Blog Post: Strongly Typed Primitives

    No, I’m not talking about NEANDERTHALS (there’s a joke in there somewhere), but rather a technique that a colleague of mine, Josh Twist , has recently blogged about – “ Avoiding Primitive Obsession to tip developers into the pit of success ”. I’d always seen a pit as symbolic of failure, so I’m pretty...
  • Blog Post: WCSF Application Architecture 7: Remote Logic with WCF Services

    This article is part of a series; · WCSF Application Architecture 1: Introduction · WCSF Application Architecture 2: Application Controller · WCSF Application Architecture 3: Model View Presenter · WCSF Application Architecture 4: Environment Abstraction · WCSF Application Architecture...
  • Blog Post: WCSF Application Architecture 6: Structuring Modules

    This article is part of a series; · WCSF Application Architecture 1: Introduction · WCSF Application Architecture 2: Application Controller · WCSF Application Architecture 3: Model View Presenter · WCSF Application Architecture 4: Environment Abstraction · WCSF Application Architecture...
Page 1 of 2 (38 items) 12