﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Ayende @ Rahien</title><link>http://ayende.com</link><description>Ayende @ Rahien</description><copyright>Copyright (C) Ayende Rahien  2004 - 2021 (c) 2026</copyright><ttl>60</ttl><item><title>BarryH commented on Random thoughts in a vacum</title><description>I agree. Exactly the point I was trying to make in the last paragraph.
</description><link>http://ayende.com/2411/random-thoughts-in-a-vacum#comment9</link><guid>http://ayende.com/2411/random-thoughts-in-a-vacum#comment9</guid><pubDate>Mon, 28 May 2007 12:48:13 GMT</pubDate></item><item><title>Ayende Rahien commented on Random thoughts in a vacum</title><description>Barry, you make good points, but the complexity in the framework is not something that I can about. It is complexity _exposed to the user_ that I care deeply about.
  
With NHibernate, if I don't need a feature, I literally have no need to pay for it. That isn't the say with the P&amp;P, where I may not need stuff, but I have no way of avoiding it.
</description><link>http://ayende.com/2411/random-thoughts-in-a-vacum#comment8</link><guid>http://ayende.com/2411/random-thoughts-in-a-vacum#comment8</guid><pubDate>Mon, 28 May 2007 04:40:04 GMT</pubDate></item><item><title>BarryH commented on Random thoughts in a vacum</title><description>First of all let me day that I agree that the P&amp;P stuff is heavily bloated. (Though I have looked into several of the products only in passing and I have not implemented any yet.)
  
  
I have a markedly Agile mentality, even if I have yet to work on a team that that uses any of the agile approaches. And if I were to pick a side, it would definitely not be with the more Agile approach – its nice to see MS moving that direction no matter how little or how poorly implemented we may believe they are doing it. The fact that they are showing some movement is a victory in the legitimacy of the approach.
  
  
But, let me play devils advocate and turn the table. There are a couple of other frameworks out there that the same argument may be applied to. For example, why use NHibernate? Many of the features may never be used in a project, so why not apply YAGNI and (re)write these features it as you need them? 
  
  
I guess what I’m saying is that bloat is not necessarily the main thing that is wrong with a given framework. If the bloat is well thought out and useful, and more importantly, if the client implementation of the framework allows you to use just what you need in an appropriate manner (simple implementation, simple API, and quick learning curve;  more complicated implementation, more complicated API, and quick learning curve), then use the framework – be it an MS framework or OSS.
  
</description><link>http://ayende.com/2411/random-thoughts-in-a-vacum#comment7</link><guid>http://ayende.com/2411/random-thoughts-in-a-vacum#comment7</guid><pubDate>Mon, 28 May 2007 04:06:42 GMT</pubDate></item><item><title>Adi commented on Random thoughts in a vacum</title><description>Postback from http://dotmad.blogspot.com/2007/05/reinventing-wheel.html
</description><link>http://ayende.com/2411/random-thoughts-in-a-vacum#comment6</link><guid>http://ayende.com/2411/random-thoughts-in-a-vacum#comment6</guid><pubDate>Mon, 21 May 2007 18:24:07 GMT</pubDate></item><item><title>Casey commented on Random thoughts in a vacum</title><description>Totally agree ... the EAAB/P&amp;P stuff is heavily bloated.
  
  
The few good nuggets in it, unfortunately tend to get swamped by the other parts, which managers have a nasty habit of 'standardising' on after they see how good the DAAB is ...
  
  
</description><link>http://ayende.com/2411/random-thoughts-in-a-vacum#comment5</link><guid>http://ayende.com/2411/random-thoughts-in-a-vacum#comment5</guid><pubDate>Mon, 21 May 2007 14:07:36 GMT</pubDate></item><item><title>Shaun Cartwright commented on Random thoughts in a vacum</title><description>I have attempted to use CAB as an architect at the company I work for was advocating that we all use it.
  
  
Within 1/2 hour I concluded that I couldn't understand what problems it was trying to solve or indeed how I could use it to solve the problems I wanted to solve, so instead of solving my problem, I spent time trying to understand CAB when really writing my own framework using passive view and WinForms really was the way to go.
  
  
Together with solving the actual problem and building up a UI framework from the bottom up, using passive view, nUnit and Rhino Mocks, since then I haven't looked back. I previously put everything in the Form/UserControl, but now I have presenter logic classes everywhere and the QA dept struggle to find bugs...
</description><link>http://ayende.com/2411/random-thoughts-in-a-vacum#comment4</link><guid>http://ayende.com/2411/random-thoughts-in-a-vacum#comment4</guid><pubDate>Mon, 21 May 2007 12:24:42 GMT</pubDate></item><item><title>Ayende Rahien commented on Random thoughts in a vacum</title><description>Jay,
  
You have expressed my thoughts so much better than I could have. I didn't invoke either of them because the terms didn't occur to me.
</description><link>http://ayende.com/2411/random-thoughts-in-a-vacum#comment3</link><guid>http://ayende.com/2411/random-thoughts-in-a-vacum#comment3</guid><pubDate>Sun, 20 May 2007 14:38:00 GMT</pubDate></item><item><title>Jay Flowers commented on Random thoughts in a vacum</title><description>I am surprised that you did not invoke YAGNI or KISS.  Why didn't you?
  
  
I mean this in reference to both the time it took them to use CAB from learning to complete product as well as the grow it yourself approach.
  
The had to spend time learning how to use the overly complex CAB as well as then write code against it took X amount of time.  If they had written a framework themselves for just what they needed it would have taken Y amount of time.  Y will be less than X if they adhere to YAGNI and KISS in the creation of their framework.
  
  
The KISS and YAGNI approach to selecting a framework is how I see what you are advocating.  So when looking for a framework to enable you to meet customer demands look for one that does just what you actually NEED in a simple way.  Restrain yourself from the allure that all those other features cause in you.
  
  
This whole thing seems an awful lot like Samsara: http://en.wikipedia.org/wiki/Samsara_(Buddhism).
  
  
1. You are suffering (struggling to make a product for the customer).
  
2. You grasp at what you think will ease or heal the suffering (start using CAB)
  
3. The thing you are grasping, as well as the grasping itself, are what cause so much of your suffering (CAB is making things more difficult than they have to be, as well your desire to use all the shiny new features)
  
4. You repeat the cycle on the next project
  
  
I think one of the biggest distinctions that people miss here is the difference between need and want.
</description><link>http://ayende.com/2411/random-thoughts-in-a-vacum#comment2</link><guid>http://ayende.com/2411/random-thoughts-in-a-vacum#comment2</guid><pubDate>Sun, 20 May 2007 14:33:06 GMT</pubDate></item><item><title>Steve commented on Random thoughts in a vacum</title><description>On 'cobble'
  
  
I as well have heard this idea twice.  In Bill's response, he gives the same idea, like you have to piecemeal things together.
  
  
This goes back to MS's idea that they have to be the 'all in all' for everything.
  
  
I totally disagree.  But this is the idea they preach to the choir boys.
  
  
But, again, this is MS's way of eliminating tools the community builds.  They can try to deny it, but it's evident in how they build software.  MSUnit is the classic example.
  
  
I was a 100% fanboy of MS, but over the last year I've started to see how they produce alot of tools half-baked in attempt to be the sole provider.  
  
  
I don't think their 'dominance' approach is healthy for the .net community.
</description><link>http://ayende.com/2411/random-thoughts-in-a-vacum#comment1</link><guid>http://ayende.com/2411/random-thoughts-in-a-vacum#comment1</guid><pubDate>Sun, 20 May 2007 12:27:55 GMT</pubDate></item></channel></rss>