Fog Creek Software
Discussion Board




If you're good, don't worry: 12 Reasons

Mid and upper level developers needn't worry long term.  Here's why:

1.  The software world is getting bigger.  More software is going to be needed.  Probably the same proportion of quality will be needed in the future.  80% crap for internal use; the rest needs to be "good".  That 20% will continue to grow at roughly the pace of industry growth.

2.  Not that many years ago, systems level knowledge was needed to do much of anything.  Now, one can make a good living as a developer without knowing what a pointer is.  I firmly believe this to be a good thing, but wonder if it means that there will be fewer systems guys "in the pipeline"; just because they don't have to learn that stuff.  I still feel these are valuable skills needed for development that don't involve dropping DB fields on a web form.

3.  Really, development is getting more complex.  1 tier begat 2 tier begat 3 tier, etc.  Hey, I thought DOS development was _easy_.  One thread, no messaging, a lot of waitkeys().  I think we're shortchanging the complexity of modern development.

4.  Interestingly, "cutting-edge" bandwidth has remained relatively constant.  Original ethernet, 1 Mbps, low latentcy.  Modems, 56K, high latency.  Now, wireless, with low Kbps & unbelievable latentcy.  Development is hard when you can't go a "SELECT *" at will from the client.  I don't think the "want fries with that" developer will be able to batch up requests, thread long execution paths, etc.  You don't need a pHD to do these things, but you need to have attended the school of hard design knocks.

5.  Development may involve solving fewer technical problems in the future and more time spent stepping back to say "what are we really trying to do here".  A good developer is always doing this.  A bad developer just wants to write code.  One of the real advantages of experience isn't that it's done right; it's that it's done right without 3 painful iterations.

6.  Business integration stuff, which seems to be the next "big thing", even if boring, involves more communication, customer contact, and database modeling.  I don't think this gets outsourced to India as easily as people think.  By the time you've got the spec, you're most of the way there.

7.  I'm walking on eggshells with this one, but I believe there is really only a small percentage of the population that have their brains wired for software development.  Even fewer for managing the endeavor.  It takes a perfectionist mindset and the ability to drop the expectation that things work the 1st, 2nd, or 100th time you try them.  Look, I'll never be an artist and my artist friends will never develop software.  I'm jealous of them; they're jealous of me.  But we are who we are.

8.  The career lifespan of a programmer is often rather short.  I think this profession has some room to expand and contract with changing economic needs.

9.  Long term, the "we'll save money by hiring incompetant people" attitude often doesn't work.  It seemed to work in some modern big-box retail stores, but that's a commodity.  I can go into Sears and talk to the immensely knowledable salesperson and walk across to Appliance Depot and buy my washer/dryer set for $20 less.  Expensive developers save more money than they cost.  The market will realize this eventually.  It long since has for salespeople.

10.  Technologies are filled with false promises.  XML is going to allow seamless integration across all systems on all platforms with minimal developer intervention.  Sure.  We've been hearing "last call for software developers" for a long time.  Java was supposed to make internet development a no-brainer.  Has it helped?  Yes, but it's still hard.  OOP/components were supposed to allow so much code reuse that there just wouldn't be much work anymore.

11.  People like working with pleasant people who blend with "the team" and know their stuff.  Being a good chap, respecting others, showing humility, and helping out.  These are valuable skills that carry an extra price tag.  Other than cleaning sewers or doing construction on the 50 floor of an unfinished building, what jobs pay well, but don't require interpersonal skill?  Not many.  This industry is going to have to get used to that.

12.  Other industries that are similar to software development haven't collapsed (building architecture, mechanical engineering, business plan consulting).  Why aren't these done in India?  Why do these people make good money?  These industries have ebb and flow, but they've stood the test of time.  Nobody wants Chuck from down the street that took wood shop and built a shed in his back yard to design their new office building.  It may work that way in software right now, but that can't last.

In summary, if you're making $80K USD dropping fields from Access onto a VB form, be afraid.  You are valuable, but supply and demand may catch up with you.  If you know how to build great software consistently, don't be afraid, as supply and demand will catch up with you as well.

The glory days of the programmer are growing dim.  The days of the software engineer are just beginning.

Comments?

Bill Carlson
Monday, September 16, 2002

"Employment of programmers, however, is expected to grow much slower than that of other computer specialists. With the rapid gains in technology, sophisticated computer software now has the capability to write basic code, eliminating the need for more programmers to do this routine work. The consolidation and centralization of systems and applications, developments in packaged software, advanced programming languages and tools, and the growing ability of users to design, write, and implement more of their own programs means more of the programming functions can be transferred to other types of workers. As the level of technological innovation and sophistication increases, programmers should continue to face increasing competition from programming businesses overseas where much routine work can be contracted out at a lower cost. "

http://www.bls.gov/oco/ocos110.htm#outlook

How many business programmers lost work because of excel?  I'm a C/C++/Unix/Data processing/Systems specialist, and I feel like my time is about up.

bls junky
Monday, September 16, 2002

Informative link, BLS.  One theory is that we're entering stage three of the following progression:

1.  All info is paper.  Office worker opens the filing cabinet and looks something up.

2.  Same info is in computers, but said office worker can't get at it easily.  High demand for data retreival programmers.

3.  Info still in computers, but the brighter office workers can now use Excel/Crystal.  Less demand for programmers to do "easy" data retrieval.

I think we need to keep our chins up.  The "good" news is that there are lots of _really_ bad in house apps, that cost companies money.  When times are tight, it's a better deal to eat that money short term, rather than embark on a long and possibly unsuccessful replacement.  Times will get better.

In my experience, the lessons of "good development" transcend technologies (within reason).  You don't learn these lessons in school.

Best of luck in your upcoming career troubleshooting handcoded reports in ASP.NET!

Bill Carlson
Monday, September 16, 2002

Similar to BLS's link;

http://www.bls.gov/oco/ocos267.htm#outlook

reiterates the point of Bills comparision of today's programmer vs. tomorrow's software engineer

apw
Monday, September 16, 2002

Bill, I know it was a joke, but data processing isn't the same as a sql monkey.  Think algorithms, data structures, network programming, threading, etc... 

A much better one, IMO, would have been "Enjoy your future job selling cars!".

bls junky
Monday, September 16, 2002

I bet a good car salesman makes much more than the average programmer.  Especially if you sell high end cars. 

Bella
Monday, September 16, 2002

Oh ya.  Sales/Marketing is where it's at if you're after the money.  Of course, the top finance people also make more than the top IT people.

semi
Monday, September 16, 2002

Excellent post!!!

>>2. Not that many years ago, systems level knowledge was needed to do much of anything. Now, one can make a good living as a developer without knowing what a pointer is.

It turns out, that in fact things have become *very* complex today. I remember when I used FoxPro to develop applications. Real simple...real easy. When windows stuff came along, and especially a lot of client server stuff, I know a LOT of FoxPro/Dbase developers simply gave up, and left the industry. (that was 10 years ago). The main reason why these people left the industry was things started to get complex (that was also during the change from green screen to a GUI “event” driven system).

In fact, as each new technology comes along...I see more people leaving!

Hence, while our tools get better, the problems we now tackle are MUCH more difficult.

10 years ago I had work writing and putting together mailing list for companies. Those same companies today demand that the application talk to the database server, have email integration. I also must pull data from the contract manger (another ODBC connection to btrive etc etc.).

I now have to know sql, VB,  com objects, creating of objects, ADO, DAO, setting up DSN, Excel, Word, setup ODBC......it is overwhelming. This to me is *exactly* why a lot of developers I know left the industry...it has become *very* complex today! (for me...I love this stuff...!!).

However, what has not changed from day one is good database design skills. I have from day one in my career always been database orientated. I wrote my first commercial applications for business in UCSD Pascal on a AppleII, and boy what great system that was. (I did some in Apple basic also..but not much). (it was a Canadian payroll system if you are wondering!).

So, while new tools make things easier...the amount of things I have to know now...is way greater than it was 10 years ago. Things *are* more complex to day. I don’t mind this at all!

Albert D. Kallal
Edmonton, Alberta Canada
Kallal@msn.com

Albert D. Kallal
Monday, September 16, 2002

My take is that things have indeed gotten more complex, but needlessly so.  A fella used to be able to whip up an app in a couple of days using foxpro.  Now the same app needs a team of programmers utilizing SQL Server, Enterprise JavaBeans, the latest GUI tool, COM for the middle tier, and of course XML all over the place.  No added functionality, but lots more overhead.

still kickin' it w/foxpro
Monday, September 16, 2002

I agree: Where are the new technologies that boast simplicity as a feature?!?

It seems that a new technology can't survive unless it supports a mountain of legacy infrastructure and protocols. Thus there are few opportunities to make a clean break from our complicated, messy past.

REBOL ("reble" http://www.rebol.com ) is one of the few new tools I've used that cuts out a lot of the bloated crap we've grown accustomed to. I've been using a lot lately, mainly as a sanity check to prove I can still write clean, small programs that are unencumbered by history.

on some lonely, god-forsaken coast
Tuesday, September 17, 2002

>> I now have to know sql, VB, com objects, creating of objects, ADO, DAO, setting up DSN, Excel, Word, setup ODBC......it is overwhelming.

True, like trying to meorize the local dry cleaner's laundry list for the day.  Daunting, yet useless.

To remain professionally competetive can be a challenge.  You have to find ways of working on projects which add skills sets to your tool box that are useful, portable and durable.  Not some alphabet soup of planned obsolescence wrapped in the guise of "technology" (how I have come to despise that word, and its usage over the last 5 years).

Might be a good time for a new thread: "fundamentals of computer science".  What's important, what's fodder.  For some other time.

Nat Ersoz
Tuesday, September 17, 2002

Many years ago there was a quote about pogramming becoming "dog work", parallel to fastfood. "Computers will write the programs".

That was at least 10 years ago.  When my computer starts writing the code for me, I'll just sit back and take the credit until my boss figures it out. Then I'll retire and go play piano at a rum bar on a tropical beach.

"Hey man, how long did you watch the  computer write the code before they canned you man?"

"18 months...but I really like my new office"

I think doctors, lawyers, engineers and hey why not even "artists" (yech - I hate that word) should all be just as worried as us.

Back to my plastic surgery malpractice automation code.

Dan Sickles
Tuesday, September 17, 2002

I remember worrying about 4GL removing the need for programmers in the late 80s when I was starting out.

My dad, who is an Electrical Engineer, told me about the first new invention he heard about that was supposed to do away with the need for programmers.

It was called "Assembly Language".  So much easier than raw machine code.

Rod Martens
Tuesday, September 17, 2002

And all those other compilers just don't generate great code without a little human intervention somewhere up the line. ...or at least some input.

When will intel build a processor that doesn't need any programming to do useful things.

It's a COMPUTER...it should just know all this stuff.

We have to get rid of them programmers. That's the success criteria of the IT industry. No more coders = no more bad code.

Google is still the best code generator that I know of.

Dan Sickles
Tuesday, September 17, 2002

I think that the amount that a good developer has to know since the Internet boom has increased dramatically.  In 1994, you could create a client/server app in MFC with C++ and you'd have to know MFC (which wasn't an easy task to REALLY understand it), C++ and how Windows works.  Today, you need to know SQL, Database design, network administration, Web server configuration, DB replication, COM, COM+, multithreading, sockets, performance tuning, all on top of these languages: VB, Perl, C++, VB.NET, C#, Java, T-SQL, PL-SQL, etc.  Seriously, I'm starting to mix syntax between languages, and it is screwing me up.  If you stick with one technology, you are obsolete in 2 years.  If you learn a little bit about each, you are a jack of all trades yet master of none.  I guess just pick a few, concentrate on these and hope things work out.

Tim
Tuesday, September 17, 2002

"Look, I'll never be an artist and my artist friends will never develop software."

Umm, what about those thousands of artists that believed programming was too hard and now are pounding out Actionscript in Flash (which is programming)

Artists do program

Visa Versa, if you check the number of 3D artists that used to be programmers at places like Pixar, Sony Imageworks, Rythym and Hues etc I think you'd be surprised.  The percentage is quite high.  Probably because using 3D software is still too complicated for many artists and modeling in 3D does not require the special artist way seeing 3D things in 2D like painting or drawing does.

Gregg Tavares
Wednesday, September 18, 2002

Point taken, Gregg.  However, ActionScript is not C++.  An artist's soul would die if they had to do what we do.  Their "technical problem" is expression of emotion; the tool or medium is unimportant to their essence of their art.

Most people don't have it to be an artist.  It's a special way of ordering your life's collection of thoughts in a way that spills out on to a page and speaks to people.  I can't do this and I'm in awe of those that do.  It doesn't mean my UI's have to suck, though.

Most people don't have it to do software engineering.  It's a different set of brain patterns, mental discipline, organization, etc.  I believe it to be an almost organic or genetic trait.  Modern life demands a certain level of sequencing ability.  Deposit check, pay bills, go to the ATM, then the store, etc.  This is often on the same order of magnitude as very basic "single threaded" programming.  Designing a 100,000 line app from scratch and managing it through its lifecycle is a different beast, however.

This is just my opinion:  90% of people plucked off the street would be miserable engineers and be miserable doing it.  Whether you count our membership in the 10% as a blessing or a disease could be debated.  Similar ratios hold for artists, teachers, salespeople, etc.  If someone is good at everything, bully for them.  But one specialty is enough.

Anyway, back on topic...

Bill Carlson
Wednesday, September 18, 2002

> Most people don't have it to be an artist.

Artistry just requires practice. To be a writer, you just have to write. A random pull from the street won't net a high proportion of experienced programmers, but if these people had ever practiced...

Christopher Wells
Wednesday, September 18, 2002

>Artistry just requires practice...

This is so ridiculously incorrect that I assume you're being a smart-ass trolling for reaction.

SM
Wednesday, September 18, 2002

> This is so ridiculously incorrect that I assume you're being
> a smart-ass trolling for reaction.

He could be confusing artist with performer. The latter requires little more than study and practice.

I've met many of these, when I was into guitar playing. They could play incredibly difficult pieces accurately, and had enough technique to play almost anything you threw at them, but when you asked them for something original, usually what you'd get would be some rehashed idea that you'd recognize as coming from their favorite band/composer/whatever.

Some would even setup their rack in order to get the "exact same sound that Satriani gts on his latest album". I wonder if they ever realized that whatever they did would like Satriani?

Great performers, but lousy creators.

Suravye ninto manshima taishite ("Peace favor your sword")

Paulo Caetano
Wednesday, September 18, 2002

"whatever they did would like Satriani?"

Meaning "whatever they did would sound like Satriani?"

Damn, even writing slow I get all these errors!

Suravye ninto manshima taishite ("Peace favor your sword")

Paulo Caetano
Wednesday, September 18, 2002

Bill Carlson wrote:
Other industries that are similar to software development haven't collapsed (building architecture, mechanical engineering, business plan consulting). Why aren't these done in India? Why do these people make good money? These industries have ebb and flow, but they've stood the test of time. Nobody wants Chuck from down the street that took wood shop and built a shed in his back yard to design their new office building. It may work that way in software right now, but that can't last.

My god !!!He sounds racists. Do you think more routine and less brainy work gets transferred to india? Building architecture , mechanical engineering are not transferred to india b'cause they are not developed in India.
India has more SEI-CMM-5 level companies than US itself.The Work force here may be young but is as talented as any other country.  Indian Computer industry is just 7 years old. It will continue to grow and get mature.One day you will find Indian Companies outsourcing their work to US( Infosys already employes local australian work force in their australian offices).
Companies like MS, Oracle, Intel have opened their India developement centers.
Indian companies do as quality and as complex work as their US Counterparts( numbers may be less, work may be less ..it will eventually grow)

Let their be work for everybody and let everybody be happy.

Sachin Joshi
Wednesday, September 18, 2002

You should be careful about casually throwing about labels like 'racist'.

Nothing he said need be construed that way, and the comment was in keeping with the tone of earlier threads.  Aggressive political correctness tends to stifle useful dialogue, so a fair bit of latitude is expected here.

This is an open forum, and it requires an open mind. 

Dunno Wair
Wednesday, September 18, 2002

Okay, Sachin, I'll take the troll bait.  I believe there is nothing inherently inferior about foreign talent.  In fact, it can be refreshing to see the lack of feelings of "entitlement" that plague some American engineers.

My point is that the world has become much smaller over the years, but it has not yet reached the point where distance/culture/time zone factors are completely irrelevant.  These factors will become smaller over time, of course.

One of the larger points of this thread was that "speced out" work is becoming less improtant.  The ability to solve business problems is starting to have less and less to do with technical ability and more to do with contact with the core business and knowledge of the customer.  For U.S. businesses, it's difficult to impart the ability to do these things to someone 10,000 miles away.  A better system for long term international relationships (>10 years) between companies would aid this problem.

Many mid and high level engineers have developed intimate knowledge of the business problems at hand as well as the customers needs and wants.  These are absolutely critical skills and feed the point of this thread, which is that they don't need to feel threatened long term by a raw-as-sushi code jock.

Bill Carlson
Wednesday, September 18, 2002

> Infosys already employs local australian work force in their australian offices

sachin, the thrust of your comment is not true. Infosys has just caused a big storm in Australia by revealing that it will be importing Indian programmers to fill most of the programming roles in a new centre in Australia.

http://australianit.news.com.au/articles/0,7204,5022300%5E15306%5E%5Enbv%5E,00.html

echidna
Wednesday, September 18, 2002

> Great performers, but lousy creators.

Writing user manuals - is that 'creative'? Learning to read and write, that's practice. Transforming requirements into specs into code into product - you see how someone else does it, you do it yourself a few times, that's practice too. Talking with people is a more 'artistic' endeavour than developing software.

Christopher Wells
Wednesday, September 18, 2002

"The software world is getting bigger. "

The software world actually just got a lot smaller.  More software was being created at the height of the bubble than there is now or will be in the foreseeable future.  There will still be a need for software, and I believe we will achieve a healthy growth. But not like in the past.

"Now, one can make a good living as a developer without knowing what a pointer is. "

I guess it depends on what you mean by 'If you're good, don't worry'.  When I see programming being made easier, it concerns me somewhat.  I know the systems level stuff, and that used to make me more marketable.  Now, like you said, you don't need to know how to manage your own memory to get a job or get real work done.  I don't consider a lower barrier to entry to be a good thing though, because I like higher salaries.  I'm torn.  I want my job to be easier, but I don't want just any 'ole Joe Schmoe to be able to do it.  I wonder if excel has created more jobs than it destroyed?

"...there is really only a small percentage of the population that have their brains wired for software development."

I'll go back to the Excel example.  Is using Excel the same as programming?  I think its only a matter of time before the tools are easy enough to be used by the larger percentage of the population. 

"Expensive developers save more money than they cost. The market will realize this eventually. It long since has for salespeople."

I don't know about that.  If we save more money than we cost, then up to a point we're leaving money on the table.  Salespeople can see this easily because they are the ones that close the deals.  They know what's on the table for the taking.  Also, the history of the marketplace is filled with examples where the market didn't do what everyone thought was the 'rational' thing.  Our recent bubble, for example.

"Other industries that are similar to software development haven't collapsed (building architecture, mechanical engineering, business plan consulting). Why aren't these done in India? Why do these people make good money? "

Mechanical engineering isn't done in India?!  (Note to self:  start ME outsourcing firm).  As for the other fields, only the very best make any money.  Maybe that is your point?

Model: 6035LG4 ATX
Wednesday, September 18, 2002

As a lead programmer of a small software company, I agree that programming has gotten very complex - even with all the newer and cooler tools; Good programmers (with background in older systems) will always be needed. There are the spots when the guy who knows the pointer understands some new technology much better than the guy who doesn't. Historical trends and the big market - both already pointed out - also prove this (Mid and upper level developers needn't worry long term) I think.

But one point I would like to add is that programming needs some very fundemental philosphical changes! The tools are getting better, so are the designs, UIs, integrations - all getting much better. (Compare WinXP with Win95 with Win3.1 in the emphasis on the details, for example). And everyone seems to be working their asses off in the industry - but software still doesn't feel 'safe'.

I mean, I can trust the old water-cooler in our building (with it's ancient technology) much more than any peice of software any of our programmers writes. I can trust it to both work and fail as expected!

My grandpa once told me that, if your trying to open up some box or gadget or the like -  and your using much force or time but with out success... most probably your using the wrong tool and approach... That's how I feel about software - all this energy, yet not the results you would expect. To make it short, I guess that in addition to good developers, software programming needs great new thinkers too!

Finding those smarter solutions (which I hope would also lessen the work-hour burden on developers too) needs smart, experienced, people wanting to tackle the bigger image. No automatic application tool or junior programmer can fill in those roles.


One last point - I beleive that implementing an idea correctly (in all aspects - the ease of use, it's place in the overall picture, the time-rightness for marketing) is much more important than doing it first, just faster, just cheaper, or putting lots of hype behind it. At least that's what our team has been betting on for the past two years, entering a market that's not that big, and has one big established player and two smaller ones in it already... We just think we get it better. I hope were not wrong :D

Hadi A
Thursday, September 19, 2002

> Writing user manuals - is that 'creative'? Learning to read
> and write, that's practice.

In you earlier post, you said "Artistry just requires practice". I don't agree with this, but we're all entitled to our opinions.

Now, you say that practice is one thing, and creativity is another. Here, I do agree. So, are you saying that artists are not creative?

I know there are many people making money in the "arts industry" without any creativity, but an artist, by definition, is creative. The Spice Girls are not creative, ergo, are not artists. Led Zeppelin were creative, therefore, they were artists (even though I don't appreciate their music).

The method you describe as "you see how someone else does it, you do it yourself a few times" can be applied to anything I can think of, including talking to people. We all tend to be "wired" to follow some basic models, and there are very few that stray from that path. Those we call oddballs. Or artists ;)

Suravye ninto manshima taishite ("Peace favor your sword")

Paulo Caetano
Thursday, September 19, 2002

> We all tend to be "wired" to follow some basic models, and there are very few that stray from that path.

Led Zepellin asserted that there is more than one path that you can go by, and that there is still time to change the road you're on -- when I think of "art" in the context of software development, I think of "artisan" instead of "artist".

Kiserai ti wansho ("glory to the builders ")

Christopher Wells
Thursday, September 19, 2002

Getting back to the "If your good dont worry" theme, I hope you are right, I've got a lot of development experience and for the first time in my 15 year career I found myself without work for two months of this year which was OK but certainly had me worried in the long term, the irony was that I knew some real boneheads who were still working and knew some really good developers who were out of work, even now I work in an IT department of about 10 people nearly all of who just dont "get it", I find myself explaining simple tasks in baby language and trying to get some decent work underway, but unfortunately just rubbish is all that mostly comes out and I end up doing anything remotely difficult myself.
I think my point is that I'm not too confidant about the "if your good dont worry" theme, perhaps it should be "if your good and you've got a job dont worry". Big companies dont get rid of the non performers because they have no efficient way of knowing who's good and who's not.

Alberto
Thursday, September 19, 2002

Oh and Christopher,

Maybe the whole IT industry is going through a spring clean and theres a bustle in the hedgerow but we should'nt be alarmed now.

:-)

Alberto
Thursday, September 19, 2002

If the industry gets cleared of the 90-day-wonder tech-school MCSE and VB weenie, then it's probably a good thing.  It takes a long time to learn how to be a good developer, but if you can get out of a short certification course and BS your way through an interview by knowing which dialogs to load and which buttons to click, it makes it hard for the non-technical manager to know which one knows their ass from a hole in the ground.

Holden McGroyne
Thursday, September 19, 2002

> Big companies dont get rid of the non performers because they have no efficient way of knowing who's good and who's not.

A corollary to that would be that big companies go bankrupt, or lay off entire products and divisions. Little surprise then when they say that most new jobs are created by *small* businesses.

Christopher Wells
Thursday, September 19, 2002

Bill,
You make two points which are entirely orthogonal to each other
a. The competent surviving and the incompetent failing.
b. Outsourcing to India

I pretty much agree with all your points regarding point a., but it is a qualified agreement. There are umpteen instances of the incompetent surviving, nay, thriving. (Just look at your manager ;-). Also, "comptence" as you define it, is not how the market perceives it. If there are more system programmers than the market wants, those guys will be unemployed.

On the second point, I would say you are a little confused. Inspite of what you may think, the market works as much in India as it does in the United States and elsewhere :-). The bad (read, where supply outstrips demand) programmers are getting canned and are jobless here too. Now, if a programmer in India wishes to survive and grow in the software industry, he better become "better" (read, go where the demand is higher).

There was (and arguably still continues) a demand for "bad" prgrammers in the past. The kind, as you say, that churns out a DB field on a web form. For these, the body shops from India catered very well indeed. But for skills like these, the guys from India will get the ax last (if at all) purely due to their lower cost.

What you, and other "good" guys need to be worried about is, when you start having "good" Indian programmers (or software engineers as you call them) . When the Indian software shops turn out work that is as good as would be turned out in any American shop, then the cost advantage will play there too. And it will happen sooner than you think, if not from India, then from China and Phillipines. This is purely because there is a need and there are enough smart people outside of the US

So, Good Engineers will thrive and Bad ones will be out, irrespective of whether its in India or in the United States.

As we say here in India

Karmanye vaadi karasya Maa phaleshu kadachana (Do your duty, do not dwell on the fruits of your action)

Cheers
Rajesh

Rajesh Jayaraman
Monday, September 30, 2002

Rajesh,

I agree with your points.  The issue to some extent is "competance" vs. "perceived competance".  The natural course of capitalism is to have a strong coorelation here - eventually.  My point is that companies where there is no coorelation will have problems.  This is not unique to software engineering.  Many companies have grown so fast or have weak middle management that there isn't an opportunity for this relationship to play out.

I am "worried" about foreign outsourcing - to an extent.  However, most development, as expressed in total man-hours, goes to solve "regional business problems".  The primary goal is not technical - it is about gathering business rules, clarifying them, drafting a plan for how each employee in an organization will use the system.  Add in training, etc. and that's a lot of work that is difficult to export.  There is value in proximity, both as a function of distance and of closeness to the business.

Anyway, you make some good points.  Hopefully others are still reading this thread!

Bill Carlson
Monday, September 30, 2002

> However, most development, as expressed in total man-hours, goes to solve "regional business problems".

I would be very interested in reading more about this assertion: what is its basis? Do you have a reference that quantifies (by manhours) the different types of software development?

Christopher Wells
Monday, September 30, 2002

"Regional Business Problems" was a poor choice of words.  I was basically talking about "in house apps".

I do not have any empirical evidence to say "in house development" is "most" development.  Just a hunch, based on talking with recruiters, reading newsgroups, or whatever.  The lines get blured, obviously, but it's the best guess I can make with the experience I have.

Do you have any numbers or hunches either way?  I'd venture another guess that a lot of horizontal market stuff got axed during the dot-com & retail consumer software (except games) crashes, which, in turn, push up the other categories.

Shrinkwrap developers may often be doing more technical things than "in house" people and may spring up more and be more visible in online discussions.  Another hunch.

Who knows.  People do all kinds of stuff.  Perhaps someone has a pie chart out there.  Until then, we can guess.  Cheers...

Bill Carlson
Tuesday, October 01, 2002

*  Recent Topics

*  Fog Creek Home