Do you agree with this email?

Do you agree with this email?

Old forum URL: forums.lhotka.net/forums/t/2109.aspx


rhinoishere posted on Wednesday, January 10, 2007

I am working part-time in the evenings for an upstart company still trying to get off the ground.  I've been doing development for them using the CSLA framework.  The boss emailed me to get my thoughts on him hiring another programmer to handle some extra work requirements.  Below is a copy of some of my reply to him. Do you agree with the points made (especially the bolded part)?  Just curious. 

thanks

--------------

Just a warning... one of the main things you try to accomplish by using a framework like CSLA is consistency in the code. At my day job there have been a gazillion developers (some just contractors who were here for a few weeks or months) that all had different ideas on how to do things.  I can't tell you how much time is wasted just wading through code trying to figure out what in the HELL is going on (The developer sitting next to me that has now been here 2 years bitches nearly every day about how hard  it is to program against our code base and often will spend WEEKS just researching existing code before he starts new development).  Most of the time you realize that whoever wrote that code was very impressed with himself and wanted to see how complex he could make it.  It takes YEARS before you start to feel comfortable with the code base.  That situation is exactly what I am trying to avoid (for you). 
 
So here is what I've learned over the past year or so.  When a business uses something like CSLA, it may require some training when a new developer is hired, but at least the developer CAN be trained. In contrast, at my day job, there is no way to train a new developer.  So you basically say good luck, throw them into the fire and watch them flail about for the next couple years.  And guess what... through no fault of their own they usually just end up making the situation even worse. 
 
Here is the point of this long-winded tanget: at some point a choice will have to be made to either stick with CSLA or just let programmers come in and do their own thing.  For example, there would be nothing stopping a new developer from coming in right now and simply side stepping CSLA.  He could add his own custom business objects to the Library dll (which at this point is composed 100% of business objects built using the CSLA framework) and continue with no problems. Once you allow that though, you might as well forget about CSLA.  It's pretty much an all or nothing type of thing.  
 
I say all this fully knowing that it is hard, especially at this point in your business, to tell a developer that he must use a certain framework when developing for you.  However, I also say it fully knowing that if this was my business, that is exactly what I would do.

ajj3085 replied on Wednesday, January 10, 2007

Well, your message is out of context for us.  Was this company going to hire someone that didn't know Csla?  Or didn't want to use it?  Is it a temporary position or perminate?  If its temporary and the person doesn't know Csla, it may be that its not worth bringing them on.  A perminate employee though would have to come up to speed if they aren't already, but that's probably a worthwhile investment of time.

Beyond that, I'm not sure what else I can say about your email.. I don't know the context at all or how familiar you are with the employer.

rhinoishere replied on Wednesday, January 10, 2007

Sorry, you're probably right. I paused before posting it.  Not sure what I was looking for.  Just thougts/opinions/similar experiences I guess.  :)

The email is probably a good example of a relative newbie to CSLA trying to sell it as something that should be stuck to.

I don't know yet if the guy he is thinking of hiring has any experience with CSLA, but regardless, we'll have to face this issue in the future.

 

SonOfPirate replied on Wednesday, January 10, 2007

Depending on the nature of the business, you may be able to appeal to his knowledge in other areas.  Adopting a framework like Csla for development is no different than defining a set of engineering standards or many quality control processes that revolve around standardization.  Whether Csla is the right choice or not is a different issue - and a different sell.  But, most experienced business owners in a technical industry have to deal with standards in one form or another.  Csla (and other frameworks) allow developers to follow a standard approach to development.  As a result, all of your points regarding the learning curve, debug time and maintanance are correct.  Drawing the comparison to other business functions that "the boss" may be more familiar with may help make the benefits more tangible to him.

One other thought - I hope you know "the boss" on a personal level that makes the profanity acceptable; otherwise, I'd get rid of it.  Not very professional.  But, if it's a buddy and he's used to it...

HTH

 

rhinoishere replied on Wednesday, January 10, 2007

SonOfPirate:

Depending on the nature of the business, you may be able to appeal to his knowledge in other areas.  Adopting a framework like Csla for development is no different than defining a set of engineering standards or many quality control processes that revolve around standardization. 

I like that, it's a good way to approach it. Thanks!

SonOfPirate:

One other thought - I hope you know "the boss" on a personal level that makes the profanity acceptable; otherwise, I'd get rid of it.  Not very professional.  But, if it's a buddy and he's used to it...

ha, yes, 'the boss' is a friend and we often talk pretty loosely.  I would agree it would otherwise not be very professional. In fact, even with him being a friend I still probably should have left that out!  ;)  ah well.

DansDreams replied on Wednesday, January 10, 2007

I think the point (the bolded part) is a good one, regardless.  In my prior life I was stuck trying to work with a group of developers that claimed to be building a CSLA-based application but had all kinds of SQL queries in the UI and whatever other shortcuts they wanted when they didn't understand CSLA or weren't disciplined enough.  Frankly, it made matters worse because there were no standards whatsoever.

Copyright (c) Marimer LLC