﻿<?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>Petar Repac commented on What are you in for?</title><description>from Greg Young's Blog
http://goodenoughsoftware.net/2012/03/02/cqrs/

CQRS

CQRS is not a silver bullet
CQRS is not a top level architecture
CQRS is not new
CQRS is not shiny
CQRS will not make your jump shot any better
CQRS is not intrinsically linked to DDD
CQRS is not Event Sourcing
CQRS does not require a message bus
CQRS is not a guiding principle / CQS is
CQRS is not a good wife
CQRS is learnable in 5 minutes

CQRS is a small tactical pattern

CQRS can open many doors.

And yes you can support RFC 2549 using CQRS</description><link>http://ayende.com/153377/what-are-you-in-for#comment9</link><guid>http://ayende.com/153377/what-are-you-in-for#comment9</guid><pubDate>Fri, 02 Mar 2012 14:08:40 GMT</pubDate></item><item><title>Wayne M commented on What are you in for?</title><description>It's not even so much that, it's the fact everything is so tightly coupled that even getting to the point where we **could** write tests is at least six months or more of work.  Practically every single class in the application would have to be redone or heavily refactored (which would in turn hit every other class) to even *support* testing because it's a mess of copy/paste code (seriously, I once counted four different classes in a particular area that each had almost the same methods/properties, copied and pasted from each other, and each class was used in a different part of the application).

The worst part of all is that management doesn't see this as a problem, but they do see wanting to freeze development to fix things as a big no no.</description><link>http://ayende.com/153377/what-are-you-in-for#comment8</link><guid>http://ayende.com/153377/what-are-you-in-for#comment8</guid><pubDate>Thu, 01 Mar 2012 18:34:12 GMT</pubDate></item><item><title>João Bragança commented on What are you in for?</title><description>Wayne I feel for you. Being told not to write tests is probably the most infuriating thing a developer can hear. </description><link>http://ayende.com/153377/what-are-you-in-for#comment7</link><guid>http://ayende.com/153377/what-are-you-in-for#comment7</guid><pubDate>Thu, 01 Mar 2012 18:18:32 GMT</pubDate></item><item><title>Wayne M commented on What are you in for?</title><description>IMO there has to be a strong balance between the two.  You can't jump on the bandwagon for every new thing that comes down the pipe, but any sane business with longterm plans (as opposed to a fly-by-night, get rich quick scam business) needs to have SOME kind of upgrade plan to avoid being left behind.  Nobody wants to come and work for a company stuck in the dark ages with zero plans to move forward.

Take my current job for instance.  We are using .NET 3.5 in theory but it's all legacy junk from the 1.1/2.0 days.  No ORM.  No design patterns.  No architecture.  Just a collection of web pages with some classes that return DataSets filled via Stored Procedures.  The code is a complete mess, and even beginning to refactor parts of the app to even attempt to use things like tests, to say nothing of an ORM or ASP.NET MVC, is a herculean effort in and of itself.  Yet management remains totally clueless as to why this is a good thing and even goes far enough to forbid us to make these refactorings as it would take away from "adding value" (read: adding useless features that are just eye candy and marketing buzzwords).  

A place like this is in a perpetual downward spiral as you can't easily improve things to even an average standard, but because of that it's insanely hard to find and retain good developers as nobody wants to be stuck writing stored procedures and dealing with raw untyped DataSets in 2012 when there are better alternatives that have been in wide use for half a decade now.</description><link>http://ayende.com/153377/what-are-you-in-for#comment6</link><guid>http://ayende.com/153377/what-are-you-in-for#comment6</guid><pubDate>Thu, 01 Mar 2012 13:21:11 GMT</pubDate></item><item><title>Kurt commented on What are you in for?</title><description>I find to get talented developers you have to take the age of the technology into account.  No one wants to work in a tech that won't be in high demand a year from now.  This might be a circular problem: we go for the latest technology to attract developers, and developers are constantly looking to learn new technology to stay competitive in the market.</description><link>http://ayende.com/153377/what-are-you-in-for#comment5</link><guid>http://ayende.com/153377/what-are-you-in-for#comment5</guid><pubDate>Thu, 01 Mar 2012 12:22:01 GMT</pubDate></item><item><title>Jean commented on What are you in for?</title><description>As you noted the client and the developer don't share the same concerns. The client just want to know when it is ready and how much it is going to cost. The developer has to think where he wants the project to go and assess if the current design can cope with the future changes and what can improve the development speed.

Last year I was working on a web project where I wanted to add a much better user experience. With jQuery and jQuery UI alone, the client side development was taking too long and was quite repetitive. I then heard about jsKnockout 
and how easy it was to add new UI behaviour. There was a small learning curve but I still do believe it was worth it.

Now, as you said, adding a new technology without knowing if the user will benefit from it in the long term is obviously not very wise. </description><link>http://ayende.com/153377/what-are-you-in-for#comment4</link><guid>http://ayende.com/153377/what-are-you-in-for#comment4</guid><pubDate>Wed, 29 Feb 2012 22:06:59 GMT</pubDate></item><item><title>Jean commented on What are you in for?</title><description>As you noted the client and the developer don't share the same concerns. The client just want to know when it is ready and how much it is going to cost. The developer has to think where he wants the project to go and assess if the current design can cope with the future changes and what can improve the development speed.

Last year I was working on a web project where I wanted to add a much better user experience. With jQuery and jQuery UI alone, the client side development was taking too long and was quite repetitive. I then heard about jsKnockout 
and how easy it was to add new UI behaviour. There was a small learning curve but I still do believe it was worth it.

Now, as you said, adding a new technology without knowing if the user will benefit from it in the long term it is obviously not very wise. 
</description><link>http://ayende.com/153377/what-are-you-in-for#comment3</link><guid>http://ayende.com/153377/what-are-you-in-for#comment3</guid><pubDate>Wed, 29 Feb 2012 22:04:39 GMT</pubDate></item><item><title>Thiago commented on What are you in for?</title><description>Very nice post as always. I think that sometimes it has to do with the project scope. The project must have a very well defined scope and you have to stick with it until the end. I find this very hard, so I usually tend to over-engineer my projects, loosing track of the project scope.</description><link>http://ayende.com/153377/what-are-you-in-for#comment2</link><guid>http://ayende.com/153377/what-are-you-in-for#comment2</guid><pubDate>Wed, 29 Feb 2012 19:20:44 GMT</pubDate></item><item><title>Josh commented on What are you in for?</title><description>RavenDB seems to fall in the middle of those 2 scenarios. Cool new technology, but makes development got a lot faster with less friction.

The only issue I've seen is that large companies have huge infrastructures setup for doing deploys, maintenance, etc, and Oracle or possibly SQL Server are allowed. It'll be a good day when companies start having Raven-DBA's on staff. :)</description><link>http://ayende.com/153377/what-are-you-in-for#comment1</link><guid>http://ayende.com/153377/what-are-you-in-for#comment1</guid><pubDate>Wed, 29 Feb 2012 19:00:31 GMT</pubDate></item></channel></rss>