﻿<?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>tokes commented on A maintainable environment - anti corruption as a way of life</title><description>Interesting post but it made me think there's got to be a better way. Surely the great minds that make up the development community can create technology that is both architecturally sound (follows best practice etc) AND is understandable to even the most junior of developers without a "long education period". I expand a bit on this thought here, http://andrewtokeley.net/archive/2008/03/24/building-a-maintainable-environment.aspx
  
</description><link>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment12</link><guid>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment12</guid><pubDate>Mon, 24 Mar 2008 07:26:02 GMT</pubDate></item><item><title>Alan Buck commented on A maintainable environment - anti corruption as a way of life</title><description>I work with senior developers and we have only one that is under two years of experience. On top of that many of us have worked together for over 15 years so we are well acquired with each others strengths and weaknesses. And we each have our own unique take on how things should be done.
  
  
What we do all agree on is that we need an infrastructure that isolates the business domain from the complexity so that we concentrate on the business problems. A couple of us work in the core infrastructure components but most of the rest of the team uses them. The core is fairly stable and works well enough that we don't have to spend a lot of time maintaining or enhancing it.
  
  
Recently I looked into moving to MS MVC. However, I'm pushing back on this because of the paradigm shift that it would take moving from the event driven web forms to the REST approach. There is no doubt that the members of the team could make the shift but I'm not sure about the time it would take.
  
  
The point I'm making is that I agree that you shouldn't 'dumb down' the infrastructure but sometimes you have choose to not make a change that adds to the complexity either in the infrastructure or the way to code the solution. However, I am still in discussion with another member and we may still decide to make the move. If not now maybe later in the year.
</description><link>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment11</link><guid>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment11</guid><pubDate>Sun, 23 Mar 2008 06:14:09 GMT</pubDate></item><item><title>Bruno commented on A maintainable environment - anti corruption as a way of life</title><description>  
I like the dynamism of software development, it produces a lot of creative work, but sometimes the lack of well documented standard pratices bring us to real political discussions, "religous wars" and things like that.
  
  
You can say DDD is the key, but our coleage (a "best-country-university" graduate), 
  
eventually don´t know it and here comes the "social skills" to "encourage" people and "sell" the idea.
  
  
Acctually I don´t like to pratice theses "social skills". To address these issues the alt.net community could encourage some key pratices in a more explicity way.
  
  
I agree, there are a lot of motivated people, and I  believe motivation is the key.
  
</description><link>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment10</link><guid>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment10</guid><pubDate>Sun, 23 Mar 2008 03:13:18 GMT</pubDate></item><item><title>Steve commented on A maintainable environment - anti corruption as a way of life</title><description>I hear you loud and clear Bruno :  I see this as well.
  
  
The cost of that is tremendous as well.
  
  
The hard part is creating an environment of developers that share these quality traits.
  
  
In my most successful teams, we had guys that spoke in terms of OO principles in an agile environment.  It was a real eye opener for me.
</description><link>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment9</link><guid>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment9</guid><pubDate>Sun, 23 Mar 2008 02:39:48 GMT</pubDate></item><item><title>typeof.net commented on A maintainable environment - anti corruption as a way of life</title><description>I agree with Bruno, it's pain to work with that 'it just works so WTF' guys, in past few years I realized that I never can win a war against the army of ignorants..
  
On the other side, there are a lot of people 'who cares' and that's great and motivate me to stay in this business.
</description><link>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment8</link><guid>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment8</guid><pubDate>Sun, 23 Mar 2008 02:34:48 GMT</pubDate></item><item><title>Bruno commented on A maintainable environment - anti corruption as a way of life</title><description>  
I´m working with motivated people in my current project. These people are learning from me great things that I´m learning from some key books and blogs like this, but I´ve worked with developers that [conciously just want to do drag´n drop and fill events with some dataBind code and a manager that only cares only 
  
system screens working]. 
  
  
There are a lot of people sharing this mindset. They just don´t care about internal quality, future maintenance, etc.
  
  
Their objective is to relesase it soon, the second release is "future" problem...
  
</description><link>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment7</link><guid>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment7</guid><pubDate>Sun, 23 Mar 2008 01:06:24 GMT</pubDate></item><item><title>Bruno commented on A maintainable environment - anti corruption as a way of life</title><description>  
There are other issues, beyond technology. If you are a company´s developer aiming to apply alt.net, not a lead or manager, you may find some difficulty to introduce more "advanced" or "new" pratices.
  
  
Sometimes social skills are required to encourage people to try new approaches...
  
  
You know the benefits, but you need some tact to sell the idea.
  
</description><link>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment6</link><guid>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment6</guid><pubDate>Sun, 23 Mar 2008 00:47:07 GMT</pubDate></item><item><title>jdn commented on A maintainable environment - anti corruption as a way of life</title><description>Cool.
  
  
One of the things that I felt good about when managing/mentoring other developers was when they said "I feel like I've learned from you" and were able to go to other companies and be successful.
  
  
As I introduce more 'advanced' things like IoC and ORM, I wonder if it is better to give them a crash course at the start, or get them to start working and then get into the details.  I feel an obligation to make any of them able to advance their careers without tying them into whatever quirks exist in my environment.
  
  
I mean, there are always job specific details, but I want to make sure that anytime I introduce 'advanced' things, that I don't hamper them.
  
  
If you know what I mean.
</description><link>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment5</link><guid>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment5</guid><pubDate>Sun, 23 Mar 2008 00:19:50 GMT</pubDate></item><item><title>Ayende Rahien commented on A maintainable environment - anti corruption as a way of life</title><description>Oh, yeah.
  
In my case, I usually paired with them to get a particular piece of the infrastructure reworked on 
  
We also built it from scratch a few times, to show how things where put together.
  
That was _during_ the project, when they already had a feeling for how it works.
  
I wouldn't say that they all the members of the team could go and write a similar system without doing more research on it, but I tried to give them the required background and reasoning.
  
  
The few project that were spun off since then were using the similar approaches
</description><link>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment4</link><guid>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment4</guid><pubDate>Sun, 23 Mar 2008 00:03:28 GMT</pubDate></item><item><title>jdn commented on A maintainable environment - anti corruption as a way of life</title><description>So then the concepts were exposed to them?
  
  
Not say the first day (so they could hit the ground running with productive development), but as time went on?
  
  
I'm asking because of the obvious problem if they never learn it.  Then they can't move on and be productive.
  
  
Thanks.
</description><link>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment3</link><guid>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment3</guid><pubDate>Sat, 22 Mar 2008 23:57:31 GMT</pubDate></item><item><title>Ayende Rahien commented on A maintainable environment - anti corruption as a way of life</title><description>Jdn,
  
Would they be able to do this without me?
  
Yes. Maybe not using the approach (or the same tooling), but using the overall strategy.
  
Just before I left we had another similar project there, and the team lead decided that he wasn't going to deal with my infrastructure, so they took the overall idea and built a simpler version.
  
  
For the guys in _my_ team, not at first, probably, but after a month or so of working wtih this? Yeah, they could do that.
  
I know that people off my team went on to other project using the same approach and tooling there as well.
  
  
As I said, if you just abstract it out and doesn't educate people, it is a big problem. The team should be able to understand what is going on. It is just not mandatory to deal with it all the time
  
  
</description><link>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment2</link><guid>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment2</guid><pubDate>Sat, 22 Mar 2008 23:51:24 GMT</pubDate></item><item><title>jdn commented on A maintainable environment - anti corruption as a way of life</title><description>Hey Ayende, can you clarify something about this:
  
  
"I based that system on IoC, NHibernate and WCF. None of this concepts was exposed to the other developers."
  
  
If one of the other developers were to leave and go to another company, would they be able to implement IoC and NHibernate and WCF?  If not, aren't those developers going to be a bit at a loss?
  
  
That is, if they are 'sped-up' within your environment by you 'hiding' the implementation details, won't they be a bit behind in another environment?
  
  
jdn
</description><link>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment1</link><guid>http://ayende.com/3203/a-maintainable-environment-anti-corruption-as-a-way-of-life#comment1</guid><pubDate>Sat, 22 Mar 2008 23:40:51 GMT</pubDate></item></channel></rss>