CodeBetter.Com
CodeBetter.Com
RSS 2.0 via Feedburner
           Do you Twitter? Follow us @CodeBetter

Jeremy D. Miller -- The Shade Tree Developer

Under the hood and working with .Net, TDD, Software Design, and Agile Stuff

That's what I meant

I've written a couple posts on teams and the desire for multi-skilled people and eliminating specialists.  I hope I made my case, but it doesn't matter because Tate Stuntz did it for me in fantastic style in The demise of the Gantt Chart in Agile Software Projects.  Please focus on why he says Gantt charts can be rendered unnecessary rather than flying off the handle by saying that Agile projects don't plan.  You can, and have to, change the way you might be working in order to achieve any gains from an Agile process.  The way you write code.  How you divide responsibilities in the team.  When you do certain activities.  How you collaborate.  It all needs to be put up for discussion and analyzed to make a successful shift to working in an Agile manner.



Comments

Craig Bowes said:

I keep hearing this "lack of specializing" argument, and I just don't buy it.  We have a graphic/ui developer that concentrates on making images, writing html, and css.  He does very little asp.net.  What he does, he does very well.  The other  developers are C# server-side developers.  We don't have much interest in tinkering with how it looks or playing Html/CSS games.  We want to get it working and hand it over to him.

This has worked really, really well.  We're not bothered with work that we consider boring, such as static html sites, and the UI guy isn't expected to write optimzed sql statements or create business objects.  

Isn't this part of the reason for seperating presentation code from logic such as you see in asp.net (code behind vs html) or even ROR?  Should us server-side developers be expected to do the grunt work of html/css and the UI person be expected to do C#?  This just doesn't seem optimal.

I'm all for wearing many hats to some extent.  I can do some CSS if i need to, but i'm not great at it.  And if i have to build yet another contact form I'll shoot myself in the head.

# August 8, 2007 12:28 PM

Stu said:

I think using a specialist ui person as an example kind of muddies the argument a bit.

Might as well say having a specialist QA /BA/PM proves the argument wrong.

This argument is against  having _developers_ siloed into certain areas - "Back end", "DB" or "Web" (and by web i mean client applications).  Because you can end up with idle resources that _can_ do a task but aren't allowed to.

To me, a specialist ui person [1] doesn't represent a bottleneck.  Developers should be able to come up with a basic page that implements the required functionality, without waiting for Mr UI to do his thing.  Pure HTML/CSS refactoring and optimisation is largely orthogonal.

[1] ui person - can I say UIP?  :D

# August 10, 2007 11:45 AM

Leave a Comment

(required)  
(optional)
(required)  

Enter the numbers above:
Add

About Jeremy D. Miller

Jeremy began his IT career writing "Shadow IT" applications to automate his engineering documentation, then wandered into software development because it looked like more fun. Jeremy previously worked as a systems architect building mission critical supply chain software for a Fortune 100 company and learned agile development practices as a .Net consultant at ThoughtWorks, one of the pioneers of agile development. Jeremy is the author of the open source StructureMap (http://structuremap.sourceforge.net) tool for Dependency Injection with .Net and the forthcoming StoryTeller (http://storyteller.tigris.org) tool for supercharged FIT testing in .Net. Jeremy's thoughts on just about everything software related can be found on his weblog "The Shade Tree Developer" at http://codebetter.com/blogs/jeremy.miller, part of the popular CodeBetter site. Jeremy is a Microsoft MVP for C#. Check out Devlicio.us!

This Blog

Syndication

News

All opinions expressed here constitute my (Jeremy D. Miller's) personal opinion, and do not necessarily represent the opinion of any other organization or person, including (but not limited to) my fellow employees, my employer, its clients or their agents.

About Me

"Best Of" Compendium

StructureMap (Dependency Injection for .Net)

StoryTeller (Supercharged Fit)

Build your own Cab

TestDriven

MVP