views:

42

answers:

3

When given a new task/challenge/application to build, do you always use the same framework, for example spring / struts? Or do you try something new that you haven't used before, such as GWT?

What makes you return to the same technology stack? Is it good to be advanced at particular technologies, or to have a broad understanding?

+2  A: 

If you work for a company, there is likely the tools and technologies you can use are prescribed to you.

For your personal developments, you are free to choose whatever you wish.

It is generally a good idea to be familiar with many things, while you definitely should have a mass center with something in particular where you would become a specialist.

Also there is the understanding that the job picks up technology, not the other way around. So next time you are challenged with something, could be just the time to learn something new.

Developer Art
+2  A: 

Depends on the situation. Here is my check list (of 2 items) for using a technology I already know.

  1. Is it the right technology for the job?
  2. Timeline... how long do I have?

If its a side project, I am more likely to use as many new technologies as possible to help further my knowledge. However, if it is for work, and has a strict timeline, and the current technology works well (or even well enough), then I would use what I know.

I think its good to see what else is out there, as a bigger tool box will always make you more rounded. But industry experience tells me, good enough on time, is always better than perfect too late.

Zoidberg
Good one, I should remember this slogan: "good enough on time is better than perfect too late". Brilliant, +1.
Patrick
A: 

Richard Campbell, Greg Hughes, and Buck Woody tackled this question in Episode #111 of RunAs Radio.

I think the consensus opinion was:

In this day in age, and especially during this economic downturn, generalists generally have more job security, while specialists can often command higher billing rates for shorter durations of time.

Jim G.