Beta

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

The Pragmatic Programmers Interviewed

Hemos posted more than 10 years ago | from the position-yourself-as-well dept.

Programming 162

jpkunst writes "An interesting interview at the O'Reilly Network with Andy Hunt and Dave Thomas, authors of The Pragmatic Programmer, who recently started their own publishing company. Many topics are covered. Dave has this to say about outsourcing: 'To get job security, developers need to position themselves as highly effective business-value generators, working with the rest of the company to solve common goals. If you sit in your cube waiting for a spec to be thrown over the wall, then you may be in for a wait -- that spec might be in an envelope on its way to Bangalore'"

cancel ×

162 comments

Sorry! There are no comments related to the filter you selected.

outsourcing (1, Interesting)

Joceyln Parfitt (756037) | more than 10 years ago | (#9537756)

is overrated, the only jobs that get outsourced is tech support, because after they sell you the product they don't really care if you get good support or not (and many times you actually get good support from outsourced companies)

there's so much hype going on, but the fact is that only some 0.01% of all jobs are being outsourced and the chance that you'll loose your job over it are practically nil. you're more likely to loose it by being incompetent (this is pretty common these days.)

Re:outsourcing (2, Funny)

Anonymous Coward | more than 10 years ago | (#9537762)

you'll loose your job

as apposed to tighten it ?

Re:outsourcing (2, Funny)

Anonymous Coward | more than 10 years ago | (#9538080)

as apposed to tighten it ?

As opposed to "opposed"?

Re:outsourcing (-1, Offtopic)

Anonymous Coward | more than 10 years ago | (#9537791)

Newcomer Lynndie England in the sequel to Lynndie Does Baghdad:

Iraqui Investigations (2004)

featuring:

Lynndie England as Private Plowme

Dick "Head" Cheyney as General Boner
Filthy towelheads as gay niggers

DVD-Rip [ed2k]

--

Comments about Lynndie's performance:

Abu Ghraib "victim" Lynndie England's defense is getting shaky. Congress just saw a bunch of photos of Private England, ass-naked, having sex with a wide assortment of unusually desperate or possibly blind GI's. Guess we can dismiss her wide-eyed "I was forced to pose" exclamations. Congress may be stupid enough to believe your superiors forced you to humiliate Iraqis. I doubt they will believe you if you claim you were ordered to pose cracking for your coworkers.

Call me cynical, Private England, but a critical person could conceivably conclude that you're a disgusting piece of white trash with the morals of a goat in heat.

In fact, Private England's new photos cast doubt on claims that her intentions toward the Iraqi prisoners were always hostile. The new material shows her making the beast with two backs (or in her case, the beast with one and a half brains) in front of her charges. It's starting to look like at least part of the time, this little slut was trying to entertain the prisoners. So maybe we shouldn't think of Private England as a sadist. Maybe, in her own little way, she thought of herself as a humanitarian. While the rest of the military went after the Iraqis' hearts and minds, Private England made a play for their willies.

I really don't get it. Generally, it's not hard for women--even homely ones--to get laid. Ordinarily, they don't have to join the Army and fly to Iraq to get action. It's a simple matter of walking from your trailer to the nearest roadhouse. Or in the case of people with Private England's level of class, to your brother's bedroom.

What a funny time we live in, when skeezes have such power over international affairs. Supposedly, the fat, vacuous Monica Lewinsky was indirectly responsible for a bombing campaign. Now a uniformed tramp threatens to take down the Secretary of Defense and give the Muslim world an excuse to unleash its poorly concealed hatred of the West.

Neither one of these women have the brains God gave a goose, but look at their influence on the world. I suppose in a way, it's a lesson for people who say the sexual morality of public servants is irrelevant to their fitness for duty.

This pig needs a stretch in Leavenworth, and so do the men who posed with her. And just to be safe, they should put a combination lock on her pants so she can't do for Leavenworth what she did for Abu Ghraib.

Re:outsourcing (1)

arhar (773548) | more than 10 years ago | (#9540065)

only some 0.01% of all jobs are being outsourced and the chance that you'll loose your job over it are practically nil

Are you kidding me? What planet are you from? You wouldn't possibly be talking about USA, right? If you are, might I inquire where you got that stats?

The Pragmatic Programmer (0)

Anonymous Coward | more than 10 years ago | (#9537760)

is unemployed and stocking shelves at Wal-Mart

so he's stocking shelves for free? (0)

Anonymous Coward | more than 10 years ago | (#9537763)

eh?

Re:so he's stocking shelves for free? (0)

Anonymous Coward | more than 10 years ago | (#9537795)


compared to the CEO's financial recompence, yes he works for free

ever heard of a wage slave ?

I am a sysadmin (3, Insightful)

ObviousGuy (578567) | more than 10 years ago | (#9537766)

Let's see him try to send that spec through email. hehehe.

But seriously. System adminstrators seem to be about the only job you can't send overseas. The real programming jobs are all done in India these days, with planning and scheduling handled to a lesser extent in the U.S. since the collapse of the dot.com boom.

I don't begrudge the engineers in India, I actually think they are doing a very huge favor for most of us left in the U.S. They are relieving us of the cost of developing simple UIs and basic programmatic functionality while allowing us here at home the ability to spend time designing instead of coding. We can then send our designs overseas to the programmers in Inida for implementation.

But system administration still can't be outsourced. Programming can be, but sysadmin'ing and program designing (what's the right word??) can't be done by foreigners. It's got to be done right here at home by people whom we trust implicitly.

In other words (1)

persaud (304710) | more than 10 years ago | (#9537792)

Trust can't be outsourced.

(applies to sysadmins and more).

Re:In other words (0)

Anonymous Coward | more than 10 years ago | (#9537896)

Yeah, you need to be able to trust your sysadmin to set-up software securely, so we can't have those untrustworthy Indians doing that. Luckily though, it is impossible to WRITE software insecurely so we can have those devious Indians write it for us!

You guys are idiots.

Re:In other words (1)

persaud (304710) | more than 10 years ago | (#9539097)

Trust is not about Indians, but the consquences of poor sourcing and process control. Farming out work to a Tahitian subsidiary is very different from farming out work to an Tahitian contractor (reputation investment by Tahitian contractor not withstanding). Better standards and process regulation (not specification) will increase remote (in or out) sourcing

"The real programming jobs done in India these day (1)

FatSean (18753) | more than 10 years ago | (#9537903)

Are you serious? All the real programming jobs are done in India? Hahahah...you have no fucking clue at all. The only things outsourced are yet-another-web-app that can be done with templates. the REAL innovation is still done at home. So you gotta trust your sysadmin for security but it's ok to outsource the programs which handle the precious data to foreigners? hahahah!

You really don't know shit. Are you even a real sysadmin? If so I hope you don't work for my company. I successfully sysadmined machines 1/2 a world a way back in 1998...didn't need no local sysadmins except when you had to cycle the power or replace dead hardware...which is quite simple.
Anything can be outsourced.

I was a sysadmin (0)

Anonymous Coward | more than 10 years ago | (#9538028)

and on my last job all of the system administration was done remotely. I wasn't physically at any of the sites I administered. The only people on site were operators and cable monkeys. And the only reason the sites were where they were was for bandwidth reasons. They could have been anywhere, really.

Re:I am a sysadmin (5, Insightful)

sql*kitten (1359) | more than 10 years ago | (#9538047)

But system administration still can't be outsourced.

You think?

What if the data centre itself moves to India? What if all your desktop users run all their apps via Citrix, with the server farm in India? Sure someone has to physically set up a network in your office, but then all the routers and switches can be remotely administered.

Unless by "system administration" you mean changing toner cartridges and cleaning sticky mice. Yeah, that can't be outsourced.

It's got to be done right here at home by people whom we trust implicitly.

You trust your bank, right? Their call centre is probably in India by now. Very very few jobs can't be outsourced in one way or another.

Except for management, you might think. Well, you'd be wrong. Managers in the US have this dream where all their work will be done at low cost offshore, and they'll rake in the profits at home. What happens when the offshore companies realize, hey, we know everything we need to about the business now, we've done all the work - why do we need management over in the US to cream off the profits? Already there are Indian companies like Tata and Wipro doing an end-run around US-based consultancies and pitching direct to customers. Won't be long before there are actual Indian investment banks, telco equipment manufacturers, accountancy firms, competing directly with US-based firms who now have no staff of their own.

The US in particular and the West in general doesn't realize that it's simultaneously educating its competitors and losing the skills needed to compete. In 10 years, all those hollow management-only companies will totally implode.

Re:I am a sysadmin (0)

Anonymous Coward | more than 10 years ago | (#9539529)

This happened in almost exactly the way you describe to older segments of the electronics industry, like television manufacturers.

Obviously, the electronics industry shares many features in common with IT.

Re:I am a sysadmin (0)

Anonymous Coward | more than 10 years ago | (#9539698)

In 10 years, all those hollow management-only companies will totally implode.

Fug, got to wait that long, never mind, what is is

Re:I am a sysadmin (1)

smurf975 (632127) | more than 10 years ago | (#9539921)

Your explanation of management and what they want sounds a lot like the automation of IT.

Instead of robots doing repetitive jobs you have Indians doing it. This is only because there are no AI's and robots able to do coding.

Re:I am a sysadmin (2, Insightful)

garyok (218493) | more than 10 years ago | (#9540088)

The US in particular and the West in general doesn't realize that it's simultaneously educating its competitors and losing the skills needed to compete. In 10 years, all those hollow management-only companies will totally implode.

Yeah, but those new Indian start-ups will be funded by venture capital from the same people that created the investment banks and had seed money for IT companies, telecos, etc. here in the West. The same people, families, whatever, will be getting richer, the Indians will have a great time thinking they've got the tiger economy until it's rug-pulling time. The economic powerhouses seem to have been emigrating east since the industrial revolution: Britain and Europe, then the USA, then Japan, then Taiwan and Singapore, now India. Maybe some lucky Ethiopians are in for a shitload of IT contracts round about 2050.

The folks with the big money do this to stop everyone else having the werewithall to match their power (economic and otherwise) but still allowing people to delude themselves into thinking it something special about them, about their nation, that's allowing them to prosper. And they'll do this to the next round of dummies in about 20 years time again.

My only gripe about the way this stuff happens is that there should be more turnover at the top - you notice rich families aren't sending their sons and daughters to war now, what with death duties and all.

Re:I am a sysadmin (1)

garyok (218493) | more than 10 years ago | (#9540098)

Except for the Queen. Prince Andrew did plenty of active service in the Falklands (in the HMS Brazen's helicopter, the Brazen Hussy). She's OK. A bit too rich maybe, but still OK.

Re:I am a sysadmin (1)

nten (709128) | more than 10 years ago | (#9538127)

I'm not too worried about my position being outsourced either. Working defense for almost any country requires that you be a citizen of that country. My main worry is that Kerry will be elected and cancel the oh so cool plane I'm writing code for.

But I do have to agree that, most programmers in medium to large corporations become paralyzed without a spec, and they shouldn't. Requirements are always late, you have to accept that and get involved in making the requirements, and talking to the decision makers and customers (if possible) as you create your at-risk software. If the in-work requirements change, your software will need a rewrite, but at least you are already familiar with the problem space. You were probably the one who drove the changes anyway, by discovering something the designers hadn't thought about while writing code.

Being active in the spec making process can mean the difference between being an under-appreciated, under-paid programmer, and being layed off from a failed/cancelled project.

Re:I am a sysadmin - can be outsourced (0)

Anonymous Coward | more than 10 years ago | (#9538268)

An SA role CAN and are being outsourced. Via the road, my work is 1682 miles away on a border is inbetween. I only need an operator who knows how to plug the power into a wall socket and occassionally hit a powr switch.

I actually like living where I want and working where I am needed. And the two do not need be the same places.

Enjoy your false sense of confort.

Re:I am a sysadmin (Sun "offshoring") (0)

Anonymous Coward | more than 10 years ago | (#9538886)

After Sun Microsystems canned several
software lab support groups in Santa Clara and
Menlo Park a couple years back, they actually
had the temerity to fly in sysadmin people from
Bangalore to keep some servers/routers
functioning on a regular basis.

Even with expensive planefare, the labor arbitrage
made this an economic win -- this all despite a
concurrent and very public H1B-related employment
discrimination lawsuit by Guy Santiglia,
a laid-off Sun/California system administrator.

silicon valley (0)

Anonymous Coward | more than 10 years ago | (#9537772)

whether its silicon valley or bangalore,how pro-active you are counts not the "waiting for specs" thats counts at the end.

Corporate Speak (1)

orangeguru (411012) | more than 10 years ago | (#9537777)

highly effective business-value generators, working with the rest of the company to solve common goals

Be a good drone - that will solve all your problems with the rest of the money herd.

Re:Corporate Speak (1)

TheRagingTowel (724266) | more than 10 years ago | (#9538007)

You missed the point entirely.
Valuable programmers don't just sit down and code specs, there are planty of people who are willing to do just that.
Good programmers are people who can design and solve problems out of their cubicle's boundries.

Re:Corporate Speak (1)

orangeguru (411012) | more than 10 years ago | (#9538245)

Really?!

My sarcastical point was rather based on corporate speak. If the book uses that kind of speach pattern it just brainwashes you into business confirmity - and that's not exactly out of the box thinking - or is it?

In my 16 years of freelancing have a lot of c-speak - which sometimes carries some weight, BUT it never impressed anyone in the long run and it never finished any projects on time.

And all these nice business books and seminars etc. - they are also no substitute for hard work (on your projects and yourself) plus social networking.

This sounds familiar... (2, Funny)

Sanity (1431) | more than 10 years ago | (#9537779)

...developers need to position themselves as
highly effective business-value generators...
Were either of these guy's Dilbert's boss in a past life?

Dogbert (1)

mfh (56) | more than 10 years ago | (#9537872)

> Were either of these guy's Dilbert's boss in a past life?

Either that, or they were neatly combed by Dogbert as interns for a while.

Death of the Middle Class (0)

Anonymous Coward | more than 10 years ago | (#9537780)



CEO's earn billions ripping off the middle classes that is until there none left to steal/con from

i hear there are still openings in car cleaning and burger flipping though, so its not all bad

Dave Thomas R.I.P. (1, Funny)

Anonymous Coward | more than 10 years ago | (#9537782)

Thanks for many a damn fine hamburgers...and also a software best practices book apparently.

The man is so right! (3, Insightful)

Qbertino (265505) | more than 10 years ago | (#9537785)

'To get job security, developers need to position themselves as highly effective business-value generators, working with the rest of the company to solve common goals. If you sit in your cube waiting for a spec to be thrown over the wall, then you may be in for a wait -- that spec might be in an envelope on its way to Bangalore'

The man is so right on. I went freelancer a year ago myself. I have to stick right to the processes and problems in order for my IT stuff to deliver results that count. That's when IT work starts to be fun, actually has a meaning, produces happy customers and - on top of that - brings in the cash. I can only second what he says.

Specs (4, Insightful)

haystor (102186) | more than 10 years ago | (#9537802)

Anyone notice that in their efforts to use outsourcing, companies are willing to commit themselves to levels of specifications that are just insane? I'm doing this right now. I'm writing up specifications that are so detailed it would be just as easy to write the code. Of course, if I was writing the code I would be discovering bugs at the same time and problems would be corrected sooner. I figure the number of our analysts is equal to the number of analysts and coders we'd have needed for a similar local project. All the money spent on outsourcing could have just been spent on documentation.

Outsourcing in my limited (just this 1 project) seems to be a good way for consultants to draw a fat fee while they manage the outsourced project. It is like watching someone buy something expensive but they're happy because they saved 20%. Not posting anon just in case this will get me fired and force me to move on.

Re:Specs (4, Insightful)

ObviousGuy (578567) | more than 10 years ago | (#9537844)

A couple of things.

1) If you were as good as you say you are, wouldn't you be able to find problems with the spec at the outset rather than at the implementation level?

Most serious specifications (which apparently you seem to be working on) get their spec bugs worked out right at the beginning, finding places where the spec simply contradicts itself or leaves gaping holes.

Implementation-level bugs, with a proper specification, are usually the coder's fault and not a problem with the spec.

Surely you aren't trying to 'dive into the code' before the specification is complete? But hell, I've known programmers just like that...

2) Do you think you can do a better job writing "for (int i=0; iMAX_LEN; i++)" better than anyone else? Do you really think that coding is the most important part of program design?

God help us if we base our economy on such shortsightedness. Frankly, it baffles me that we continue to think that brown people can't code as well or better than us here in the U.S. Fact is, coding is nothing special. Coding is what you get when you feed a set of commands through an interpreter. Sure the interpreter is trained, but it doesn't mean that the message is any better.

Concetrate on making the message (program) better, and then pass it along to cheap coders. You will do your company a huge favor in cost savings, and you will see your product finished with the least amount of hassles (because the complaints are being made 1,000 miles away).

Re:Specs (4, Insightful)

haystor (102186) | more than 10 years ago | (#9537950)

We have higher level of design done. We've got all the patterns nailed down. We're sending specifications to them at the class level.

You're right. Coding is nothing special. In fact, it's a very small part of doing the job. It's roughly 20% maybe? I won't dispute programmers are roughly the same everywhere but if we hire 3 more analysts because the programmers won't be local, we could have just hired 4-5 local programmers instead.

The benefits to hiring a local programmer are many. You can start them when you need them. You can have them work on ancillary tasks much easier to fill time (this becomes a problem when you've scheduled offshore resources and you can't deliver tasks for them for whatever reason, you still owe them). The turnaround time for resolving an issue is nearly immediate compared to the day long delay caused by time zones working with India.

Don't get me wrong. I'm sure there are projects where it's wortwhile. Especially projects that already know everything about the product. I just can't get over the feeling that I'm part of (and beneficiary of) a conspiracy to use offshore work to actually produce *more total revenue* for the consulting firm than the client would be willing to pay for locally. Again, this is why I hate my job.

Re:Specs (1)

Fearless Freep (94727) | more than 10 years ago | (#9537962)

[i]2) Do you think you can do a better job writing "for (int i=0; iMAX_LEN; i++)" better than anyone else? Do you really think that coding is the most important part of program design?[/i]

That's not the point. The problem is that where it used to take one person to figure out "the code needs to loop from 0 to MAXLEN " and then write it, it now takes 2 people. One to say "the code needs.." who then ships that overseas for someone else to write. Not that he can do it any better than someone else but simply that by the time th specs are ready to detail needed, the code is practically written anyway and it's inefficient to pack that up and send it over for someone else to do that last bit.

Re:Specs (1)

MooseGuy529 (578473) | more than 10 years ago | (#9539737)

[i]...[/i]

This is not {v|b}bCode... you can use real HTML.

Re:Specs (2, Insightful)

Anonymous Coward | more than 10 years ago | (#9538203)

>1) If you were as good as you say you are,
>wouldn't you be able to find problems with the
>spec at the outset rather than at the
>implementation level?

If you were as good as you think you are, you would have known the answer (hint: the answer is not "YES"). Why? Because in a lot of cases you can not know that something is inconvenient for the user until you actually start using it (this applies to GUIs, APIs, CLIs, nearly anything). With a LOT of foresight and experience you can foresee many things but not all and not always..

Same thing with any performance problems, in many cases you won't know which part of your design may affect performance in what ways until you actually start using the software.

And of course your requirements are going to change making big parts of your design meaningless.

>Surely you aren't trying to 'dive into the code'
>before the specification is complete? But hell,
>I've known programmers just like that...

Hell, I have known projects which have never got to the coding stage! (b/c they got boggled in design). I have also known projects which spent enormous time on design, did write the code, which had to be rewritten a month later b/c code turned out to be unmaintainable, slow, etc

>2) Do you think you can do a better job writing
>"for (int i=0; iMAX_LEN; i++)" better than anyone
>else? ...Fact is, coding is nothing special.

Are you by any chance implying that everyone's code is similar in quality? Then I am afraid you simply don't have enough coding experience.
Coding quality varies ENORMOUSLY from coder to coder. Why does it matter? Simple, the code will have to be maintained. The best code btw is almost universally the code written by people who also designed this particular piece of software.

To summarize: every project requires its own amount of upfront design. For most business project out there the right amount of upfront design is quite small (5%-50% coverage of the problem). And if you do more upfront design than needed you will make your project more expensive So the original poster was very right: having to do 100% of design/specs upfront is likely to make his project much more expensive and more likely to fail/produce irrelevant code than mixing coding and design...

Re:Specs (1, Interesting)

Anonymous Coward | more than 10 years ago | (#9538438)

You my friend are a moron. You clearly have little or no experience in serious software development. Many problems can be found during design and spec time however doing so typically requires that you have a large amount of experience implementing similar systems. This is a luxury most comapnies don't have when creating a new system. And even those that do will not find all of the problems.

It is very easy to over invest in design. You say 'surely you aren't trying to dive into the code before the design is complete', but I ask you how do you know when the design is complete? If your coders are in the same office helping with the design it may be 'complete' (meaning it has reached a point where further investment will not increase the likelihood of sucess of the project, and will simply waste money) much sooner than it will be 'complete' if you are shipping it off over seas to people who will have to deal with a language barrier and a day long delay in communications.

Spending the extra time to make the spec usuable under these circumstances is extremely likely to cost more than what you are saving by outsourcing development. Outsourcing will only really become cost effective when design is outsourced along with coding. Seperating design and implementation completely is fools errand.

And in response to 2), if you have class diagrams and a list of the specific methods to implement and all input/output from each then perhaps one persons code will be close to the others, but you still have issues of inproper formatting, odd local variable names, no commenting, etc. All of these have a huge effect on the cost of a project long term. And if you don't have design down the the class diagram, function description levels before you start coding then the quality of the code will be completely dependant on the quality of the developer as he makes these decisions himself. If I tell two coders I want a for loop from i to MAX_LEN, then yes they probably will write equally good/bad code. But if I tell two developers we need a class to represent this business object that needs to have these types of actions taken on it, then I will get very, very different code from each. One is likely to be much better than the other. Knowing you have a GOOD coder gives you the luxury of not having to design down to the finest detail for him. A good developer should be involved in design as he implements and will save the company time and money because a seperate designer didn't have to do everything for him.

Maybe you would argue you should always have this level of design, but the fact is if you have GOOD developers, who are LOCAL, and in constant COMMUNICATION with the CUSTOMER then you can save an enourmous amount of money by not taking design to this level before beginning to code. Overdone design is useful to make an incompetant programmer still manage to write something functional. But it is a complete waste of money if you have good developers.

Most companies stand to save money by doing LESS design because they have GOOD programmers. I'm willing to bet that for 80%+ of projects inverting this and doing MORE design to make up for BAD programmers will cost more.

Re:Specs (1)

jb_nizet (98713) | more than 10 years ago | (#9539342)

Surely you aren't trying to 'dive into the code' before the specification is complete? But hell, I've known programmers just like that...

Now you've lost all your credibility. Have you ever heard of iterative development? Waiting for a spec to be complete before diving into the code is never a good idea, and every professional in the IT industry should know that by now.

Re:Specs (2, Insightful)

jhoger (519683) | more than 10 years ago | (#9540034)

The mistake you make is thinking that everything that can be coded must go through a long drawn out design phase. For all code that doesn't, which I'd wager is most software that gets created on a daily basis, it is enough to know in broad strokes know what the problem is and get to work producing something that does what you want. That doesn't necessarily mean coding, but it could very well all be done by one good programmer.

The thought that the waterfall method of hashing a spec and design out for months before any development can begin only comes from those in involved in larger projects... > 50,000 SLOCs... that are created in a herculean effort to produce a mammoth piece of software which must perform to a rigid set of specifications.

Even in large projects, rigid adherence to waterfall method has never worked. You always wished you had spent some time prototyping (read: designing and coding) to figure out the problems you only discover after you get into implementation phase and realize there are problems with the spec.

Good coding does require skill, that's a fact but the skill doesn't take more than 2 years to acquire, I think. Design is a more significant skill and the best programmers bring the skills of a designer to the table as well.

The fact is that most of the time rough design and coding is done by the same person: the programmer. In such cases it rarely makes sense to spec and design then farm it out.

If you're actually going to specify design and validate things to a degree that the only errors that are possible (a herculean feat beyond anyone's imagination) are coding errors, why bother even farming it out at that point? If the task you have created for the outsourced coder is just translating spec to code, there's barely even a task there. How many lines a day can you type when you don't have to think about it? I can code a couple of thousand lines a day if the thing is already design.

That said I have found that corporations are on a kick that they don't want to shrink their in-house development staffs. This doesn't automatically translate to "outsource to India" which is a very big step even for large corporations. Rather they tend to rely on local software contractors.

Save money by not offshoring (5, Interesting)

ph1ll (587130) | more than 10 years ago | (#9538473)

I absolutely agree because something similar is happening to me at the moment.

We hired some chimps from a huge international consultancy. The document they produced is so piss-poor we are on our sixth draft. In the time this has taken (2 months) with two very expensive consultants working full time and two in-house developers checking their work part-time, we have

  • spent a fortune,
  • do not have a document that's of sufficent quality to give the outsource providor
  • and not got a single line of code written.

The threat of offshoring has been massively over stated. More and more companies are seeing that this process (send the requirement to India) is simply not cost-effective. It may take some time for all PHBs to see this but it will happen. That's business.

There is (hopefully) a happy ending. The outsource providers tendering for this gig are charging in the region of 700UKP/day (about $1200/day) for a Java programmer with about 3 years experience (I'm not making this up). Most say that they can cut that cost by about a third if we offshored. Well, gee, that's still more expensive than hiring some local contractor with 7 years experience who can sit down and talk to the business people. We're getting "buy-in" from management to save money and not offshore. We'll have a decision soon and it looks good.

Agile methodologies will be the saviour of the Western programmer.

haha (2, Interesting)

stroustrup (712004) | more than 10 years ago | (#9537812)

To get job security, developers need to position themselves as highly effective business-value generators, working with the rest of the company to solve common goals.

In other words, developers must try to become gods.

F*ck programmers (-1, Flamebait)

Anonymous Coward | more than 10 years ago | (#9537821)

I don't want to answer the phone.

Customers are idiots.

I don't wan't to talk to customers.

Documentation is for Lusers.

Supporting my software is beneath me.

This development environment sucks.

Management are idiots.

Sales are idiots.

--
Invaluable programmers become great leaders, consultants and mentors. All of this occurs when you dump the crap additude a gain some maturity.

Re:F*ck programmers (0)

Anonymous Coward | more than 10 years ago | (#9537895)

Preach on brotha, those fucking customers need to go fuck themselves. I programmed the shit, that's good enough. If they find a bug that means they broke it and it's their own fucking fault. Managers are guys that couldn't do anything right except annoy the shit out of other people, they need to be chained to the bottom of the ocean.

Suckups :P (2, Interesting)

XeRXeS-TCN (788834) | more than 10 years ago | (#9537824)

"Andy Hunt and Dave Thomas are The Pragmatic Programmers, two experienced and intelligent software developers with impressive experience, including the authoring of the popular The Pragmatic Programmer and the well-regarded Programming Ruby."

Wow, they certainly give a complimentary introduction! "Experienced and *intelligent* software developers" seems to be more on the opinion side, rather than a standard background introduction.

With that said though, it's an interesting enough article, and a few interesting points are raised, if a few do state the obvious a little. The interview focuses on technical issues covered in the book, as well as the publishing firm itself, so it is quite broad in scope.

fuck value-added (2, Insightful)

Anonymous Coward | more than 10 years ago | (#9537851)

My company has cut back on my health benifits, increased my personal contribution toward them, withheld raises and bonuses the last four years, restructured a thousand times until it's hard to know which way is up in our organization (or which organiation we're even in at a moment) and are constantly putting us under the moral-degrading "layoffs may be pending" glass.

Exactly why should I feel motivated to add value to a company that is taking value away from my employment?

Re:fuck value-added (2, Informative)

smack.addict (116174) | more than 10 years ago | (#9537878)

You get paid, don't you?

And I assume you would like to motivate them to continue paying you?

Or do you think you automatically should be paid for your glowing charm?

Economy is on the rise (2, Insightful)

melted (227442) | more than 10 years ago | (#9537929)

And guess what will happen to his company when there are enough IT jobs around. They'll go titsup very quickly, because mistreated "business value generators" will simply throw in the towel.

Re:Economy is on the rise (1)

ichimunki (194887) | more than 10 years ago | (#9539127)

It's a two-way street. Prima donna programmers and cheap-ass management just don't mix.

Re:fuck value-added (0)

Anonymous Coward | more than 10 years ago | (#9538198)

glowing charm

lol, I know you were being sarcastic, but I've only met one programmer with any kind of charm at all, and he was gay. glowing charm indeed....

Re:fuck value-added (1, Insightful)

Anonymous Coward | more than 10 years ago | (#9537920)

Start up a union in the shop. Get everyone that does the work in your company to agree to strike. It's tough to get someone to train his replacement when everyone in the shop is on strike. They can shut down the whole shop, or listen to your demands. The difficult part is getting the union formed before your bosses find out and sack your ass for trying to ruin their profit margins.

Only rich people can get any traction in the capitalist world we live in. Unions are the little guy's way of creating a rich person front to deal with other rich people.

Re:fuck value-added (0)

Anonymous Coward | more than 10 years ago | (#9538459)

Because it's your fucking job. If you don't want it to be your job then leave. If you want to keep your job then you are going to have to put in an effort.

Things are rough all over... (1)

Big Sean O (317186) | more than 10 years ago | (#9538869)

You want job security? Look at the US Government. Many of the original IT geeks are retiring and the federal workforce is aging.

Granted, salary doesn't keep up with the private sector, but the Civil Service GS system gives you regular step increases, COLA, and locality adjustments.

But you're the one who is saying 'fuck value-added', so I'm guessing you're three steps away from being a civil servant anyway...

Is there ANY help for this ? (-1, Offtopic)

Anonymous Coward | more than 10 years ago | (#9537882)


Middle Class Squeezed in Bush Economy, Democratic Senate Candidate Tells Radio Audience

The Associated Press

WASHINGTON June 26, 2004 -- The Democratic nominee for the Senate from Illinois took the Bush administration to task Saturday for celebrating improving economic statistics while middle-class Americans are getting squeezed.

Barack Obama, a state senator from Chicago, said in the Democrats' weekly radio address that his experience on the campaign trail shows him that ordinary citizens are measuring the health of the economy differently than President Bush.

"The new jobs being created in Illinois pay an average of $15,000 less than the jobs that we've lost and fewer offer real benefits," he said. "Health insurance premiums and the cost of a college education have skyrocketed since the beginning of the Bush administration."

Obama cited the examples of a couple in Galesburg, Ill., who lost their jobs at a Maytag plant that is relocating to Mexico, and that of an another couple from Alton, Ill., who will soon lose their jobs because Hawk Motors is moving overseas.

"Now, it wouldn't be fair or accurate to blame all of this on the Bush administration," he said. "It is fair, however, to say that they haven't done much to help."

Obama said the administration pushed through tax cuts that have been of little help to the middle class, while adding much to the federal debt, and it has supported tax breaks for corporations that export jobs overseas and failed to enforce trade agreements against countries engaging in unfair trade practices.

Obama's remarks came a week after Bush, in his own weekly radio address, said the economy is growing stronger and more jobs are being created despite Democrats' claim that he presided over a downturn for the country.

Bush noted that 1.4 million new jobs have been created since last August and said many came in industries that pay above-average wages, such as construction.

Obama recorded his address Friday the same day his expected Republican opponent in November, Jack Ryan, dropped out after a furor over details of a custody battle with his former wife were revealed.

They included allegations by Jeri Ryan that her husband took her to kinky sex clubs and tried to get her to perform sex acts with him while others watched. Jack Ryan disputed that.

The Senate seat is being vacated by the retirement of Republican Peter Fitzgerald.

Re:Is there ANY help for this ? (0)

Anonymous Coward | more than 10 years ago | (#9537949)

To answer your question: no, there is not.

Job security? LOL (4, Insightful)

cubicledrone (681598) | more than 10 years ago | (#9537883)

To get job security, developers need to position themselves as highly effective business-value generators,

..and since nobody knows what the (*&%#)@$ that means, it provides every company with an automatic, built-in excuse to fire anyone, anytime, for any reason.

Business 1
Employees 0

working with the rest of the company to solve common goals.

Goal of the company: fire everyone as quickly as possible to save money so we can afford extra buffalo wings with our catered lunch.

Goal of the employee: to try and stretch seven weeks of stagnant, inadequate wages to pay for 12 months of rent, since ain't no FUCKING WAY this job is going to last two months.

Companies and employees no longer have common goals because middle management has put a great deal of thought and effort into making the workplace a toxic, hostile, adversarial environment which makes it much easier to keep the Just-In-Time-Fired(tm) policy generating quarterly revenue savings and bonus checks.

Working 80 hour weeks for piss-wages in a 19th century management structure is way way WAY past obsolete, and the workplace is a festering sphincter of liars, cheats and misery. Let's talk about fixing it instead of trying to be a "team player." We could start by replacing office politics with something that doesn't actively and constantly diminish good ideas and positive thinking.

Oh, and yes, I'm bitter.

I'm also right.

Re:Job security? LOL (1, Insightful)

Anonymous Coward | more than 10 years ago | (#9538174)

and since nobody knows what the (*&%#)@$ that means, it provides every company with an automatic, built-in excuse to fire anyone, anytime, for any reason.

Umm, it means that you need to earn the company more than you cost it.

Re:Job security? LOL (2, Insightful)

cubicledrone (681598) | more than 10 years ago | (#9538202)

Umm, it means that you need to earn the company more than you cost it.

Umm, no. It means you get down on your knees and beg for your job on a daily basis.

And no company will EVER honestly state what an employee "earns" for them.

Re:Job security? LOL (0)

Anonymous Coward | more than 10 years ago | (#9538560)

I've never had to beg for a job in the past 6 years. Of course they won't state it... the company's financials are not the business of an IT worker, but if you are making the company money, they have no reason to fire you. If you are draining the companies money, why do you expect to stay employed?

Re:Job security? LOL (2, Insightful)

cubicledrone (681598) | more than 10 years ago | (#9538593)

they have no reason to fire you.

They don't need a reason.

If you are draining the companies money, why do you expect to stay employed?

I don't expect to stay employed, regardless of how much I'm earning/spending. That's the point.

Re:Job security? LOL (0)

Anonymous Coward | more than 10 years ago | (#9539720)

They don't need a reason.

Of course they do. They might not tell you what it is, or write it down anywhere, but there's going to be something in their head that makes them decide who it is that needs to go. And if the person making the decision is (a) an honest person, or (b) owns a sufficient amount of stock in the company as to have a vested interest in its wellbeing, that reason will have to do with whether having you there is, in their view, beneficial to the company as a whole. (Managers who act contrary to the interest of the company are a completely different issue -- but, having been working for startups and small businesses for the last five years, I haven't dealt with many of them). So -- you do your best to make the company money, and they'll do their best to make the company money. If they think firing you is part of what they need to do to best earn the company money, then that's exactly what they can and should do -- but if you can produce sufficient value, then doing something like that would be counterproductive, and (worse!) reduce the likely future value of the stock they own.

Re:Job security? LOL (1)

cubicledrone (681598) | more than 10 years ago | (#9539807)

They might not tell you what it is, or write it down anywhere, but there's going to be something in their head that makes them decide who it is that needs to go.

...and it's usually something arbitrary, having absolutely nothing to do with that employee's qualifications or experience.

If they think firing you is part of what they need to do to best earn the company money, then that's exactly what they can and should do

...and middle management took all the money home. What a sad, sad world.

Re:Job security? LOL (0)

Anonymous Coward | more than 10 years ago | (#9539885)

This is not insightful, IT centres are most often ranked as costs, not revenue generators, it depends on the type of business, if you are selling IT, ok you are making the company money. If you aren't you are part of the operating cost... you can never "earn the company more than you cost it".

you wouldn't know what positive thinking is (1, Insightful)

Anonymous Coward | more than 10 years ago | (#9538413)

You write this message full of vitrol and then dare to complain that office politics diminish positive thinking?

Go to Europe. They have job security there.

Here, you are expected to make something for yourself if you have good ideas. Start your own company or go to one that appreciates you.

Might I ask what kind of job made you bitter like this? Where did you work, what did you do?

Re:you wouldn't know what positive thinking is (2, Insightful)

cubicledrone (681598) | more than 10 years ago | (#9538490)

You write this message full of vitrol and then dare to complain that office politics diminish positive thinking?

Office politics don't diminish positive thinking. Office politics make positive thinking impossible. There's nothing political about what I wrote. I'm not trying to destroy other people's careers. Like it or not, it's reality for the overwhelming majority of employees in this economy.

I'm a great positive thinker. Item one for positive thinking: properly explain the problem. The problem is office politics.

Here, you are expected to make something for yourself if you have good ideas.

I did.

Here you are expected to make something for yourself, and then not complain when MIDDLE MANAGEMENT STEALS IT FROM YOU.

Start your own company

With what capital?

or go to one that appreciates you.

No such thing.

Might I ask what kind of job made you bitter like this?

The kind of job where I was lied to, repeatedly. Cheated, repeatedly. Fired, repeatedly, for no good reason.

Where did you work, what did you do?

I was a programmer, like most of the other people here. I was very good at my job, and very knowledgeable. I contributed a great deal, I worked extra hours constantly, and I completed numerous valuable projects.

I got fired anyway. It was then I realized that just about everything I had been told about hard work, education, etc. was a big, fragrant sack of shit.

I went to school. I got an education, and I worked hard.

I got

fired.

anyway.

But I'm still a positive thinker. I just don't pretend that the workplace is a productive place for a career.

Re:you wouldn't know what positive thinking is (1, Interesting)

Anonymous Coward | more than 10 years ago | (#9538583)

I just don't pretend that the workplace is a productive place for a career.

Based on that sentence, I can only assume that you don't know the definition of the words that you are using. Where do you intend to work, if not in the workplace?

Re:you wouldn't know what positive thinking is (1)

cubicledrone (681598) | more than 10 years ago | (#9538612)

Where do you intend to work, if not in the workplace?

And that's all? Out of eleven paragraphs?

The "workplace" is a colloquial term for "W-4 employment"

Re:you wouldn't know what positive thinking is (1)

aricusmaximus (300760) | more than 10 years ago | (#9539458)

You have every right to be bitter and angry.

But that does not mean you are right to jump to conclusions that every workplace experience is like yours.

There are awful managers and there are great managers. There are horrible places to work and awesome places to work.

Stop being angry and bitter and start getting smart.

If office politics are the problem then start learning how office politics work. Learn how to cover your ass, document your work, and acquire friends and allies.

Good at software engineering? Great - now you need to work on your social and business skills.

Be smart, learn what your weaknesses are, and solve the problem. Don't be a victim.

Can't get past your anger to work on a solution? Then go find a good friend or get a good therapist. Get it all out, and then move on.

This is a life experience. Use it or be destroyed by it.

Re:you wouldn't know what positive thinking is (2, Interesting)

cubicledrone (681598) | more than 10 years ago | (#9539634)

If office politics are the problem then start learning how office politics work.

I already know how office politics work:

Day one: New employee is hired and is viewed with some combination of envy and ambivalence by the smiling co-workers in the nearby cubicles.

Day Four: New employee dares to open their mouth in a meeting, offering a new idea for some problem the current workers haven't been able to solve. Management idiot nods his fat head. Co-workers' envy turns to burning hatred and hostility while their smiles grow ever-wider.

Day Five: Co-workers begin to plot eventual firing of new employee, constructing an elaborate campaign of complaints, both formal and informal, political backbiting and openly challenging the new employees' ideas in meetings.

New employee is a) powerless to stop the inevitable, because they have no friends at the company yet or b) hopelessly naive, believing the liar cheat fuck bastards who smile and invite them to lunch at the local yuppie grill, where they will feign interest in the rest of the new employees' worthless ideas.

Day Eight: Constant complaints have begun. New employee becomes isolated and useless, since nobody will work with them. Management begins to complain. The words "team player" are slowly beginning to slither into conversations, like wet submerged shit.

Day Eleven: Lunch invitations have ceased. New employee is no longer invited to meetings. HR begins to complain about the new employee having shown a "continuing pattern of lateness to work" (a pattern somehow established in only ten days) while ignoring the average 75-hour workweeks the new employee is working. Management is now showing open contempt for the new employee, while offering no suggestions other than "please show up on time." Co-workers refuse to speak at all.

Day Fifteen: At 8:07AM, new employee is greeted by no fewer than three security guards at their "desk" which has been dismantled completely (to enhance the indignity, of course). They are hurriedly forced to gather whatever meager posessions they have (being instructed in writing, nobody speaks to them at all), they are escorted to the door and physically shoved into the parking lot.

Four months later, they are mailed their only paycheck.

This was a company of several hundred people and a department of more than 70. I saw this happen to THREE people before I quit. One of those fired had just closed escrow on a new house.

That is office politics, and there is no way I would ever participate in it.

Re:you wouldn't know what positive thinking is (0)

Anonymous Coward | more than 10 years ago | (#9540013)

The original poster was correct. All you Marie Antenettes sound like corporate cheerleaders. Always the brown nosing supporter. GROW UP ASSHOLES! If you can't deal with the reality that the job market isn't war, you should work to be the prison bitch of your boss and plead for continued employment.
I hear this all the time: Arrogant fuckwit engineers gloating about how skilled they are - they won't get fired because they're so special. Guess what? I'm still employed, they are working at Walmart - why? Because I like the original poster recognize the REALITY of the situation and deal with it on REAL TERMS: not this dumbass fantasy world of the "positive attitude" jerks! Your employer cares if you can solve his problems not how much of a "smiling sally" you are. All you can do is try to make yourself more valuable then the lame-ass thirdworld coding monkeys.

Re:you wouldn't know what positive thinking is (1)

jb_nizet (98713) | more than 10 years ago | (#9539354)

Go to Europe. They have job security there.
If only it was true!

Re:Job security? LOL (4, Insightful)

Fished (574624) | more than 10 years ago | (#9539562)

Oh, and yes, I'm bitter. I'm also right.
The first is self-evident, the second is quite improbable.

Look, you sound like a kid I used to know (me) so let me offer you some helpful advice. This whole thing about "business value generation" is why you have a job in the first place, and until you understand it you're going to spend the rest of your life going from one de-.com-posed job to another. The days when companies would keep people around on the theory that they would somehow, someday make the company money are long since gone. On the other hand, if you really, consistently, solve your bosses' (note the plural) problems, you will never lack for work and never get fired.

I speak from experience. In 1998-2000, I was a consultant (UNIX systems, Networks, perl programmming.) In 2000, I read the tea-leaves, looked at the business cycle (you know, the thing Clinton claimed to have defeated) and came to the conclusion that it would be a good time to work for a major corporation who /might/ keep paying me through the recession. So, I looked at my clients - people who knew and would appreciate my abilities and compensate appropriately - and picked one to go to work at. Had no problem getting a job there, even though I suspect I was the highest salary in my group.

Unfortunately, the company I chose was WorldCom. I spent two years looking over my shoulder, waiting for the axe to fall, while it hit people all around me. But I also spent that two years fixing the problems that my bosses' wanted fixed -- and making sure that when I had an initiative or something I wanted to do, I explained it to them in terms of /their/ problems, not mine. So, it wasn't "this mail server setup is a huge kludge and I'm sick of messing with it and its obsolete and I want to replace it with something better" but "I'm fixing this mail server now, but we could've prevented this crash with a small investment of hardware and free software, thereby avoiding client downtime." At the end of the day, I was one of the lucky few who kept their jobs.

Why did I keep my job? Because, in the minds of my management and their management, I was a "highly effective business value generator." The people who lost their jobs didn't necessarily have fewer technical skills than me (although, frankly, a lot of them actually needed to go), and they certainly weren't disliked or unloved. What they didn't know was how to connect their job to the interests of the corporation. (N.B. Don't stab people in the back trying to get noticed. In fact, you should try to make them look good just as hard as you try to make you look good.)

So learn this lesson and learn it well: despite what 100 years of syndicalism, liberalism, socialism, and -- dare I say it -- labor unions may have led you to expect, your job as an employee is to produce business value that can ultimately be translated into money. The company does not exist for the purpose of caring for its employees or establishing a social safety net - it exists for the purpose of increasing shareholder value. If you can do that - increase shareholder value and make sure your boss knows you do it - you will /always/ land on your feet, even if you do happen to lose your job for a while.

That's part one of getting rich. Part 2 is "always saved 20% of your gross income in quality stocks." Part 3 is "don't be a jerk. Take care of people and they'll take care of you." Part 4 is, "have fun, whatever you do, because nobody likes a whiner."

Re:Job security? LOL (4, Insightful)

cubicledrone (681598) | more than 10 years ago | (#9539755)

I'm fixing this mail server now, but we could've prevented this crash with a small investment of hardware and free software, thereby avoiding client downtime

No, you aren't, because a) you don't have the authority b) the person who does have the authority won't approve it and c) the suggestion causes several people to complain that you aren't being a team player because everyone else in the department agrees that management was brilliant for approving the current mail server.

I've spent a few minutes in the cubicles. I know the basics.

If you can do that - increase shareholder value and make sure your boss knows you do it - you will /always/ land on your feet, even if you do happen to lose your job for a while.

I automated a job that saved our company about 2,000 man-hours once. The resulting shitstorm of office politics led to one of the managers screaming hysterically at us in a five-hour process improvement meeting saying that if we ever made the management team look stupid again they would dock our paychecks.

The controversy continued for four months. The database team decided my idea was good enough to include in the next set of test procedures. The other teams all disagreed. Upper management had to be called in from their golf games. My guess is that half a million dollars was spent in meetings and overtime over those four months.

It was later explained to me, two of my co-workers and the entire database team (in a very slow, politically-correct voice) by an HR representative (unspoken threat: open your mouth again, and you're fired) that we should write a memo explaining our idea and send it to our immediate supervisor for approval before starting any new work.

We later found out that the Department Director (a Senior VP) with the unanimous approval of the entire senior management committee and several members of the BOARD OF DIRECTORS SPECIFICALLY ORDERED all of the group managers to ignore all such requests no matter how simple or worthwhile they may be. Those who made more than three suggestions in a month were told, in writing, to stop "wasting time on non-core projects" or re-assigned.

Two dozen people quit. Five were repeatedly threatened with their jobs, one to the point of having to go on disability for depression. Everyone else just kept quiet. The atmosphere in the office from that point forward was indescribably gloomy.

That was one of my few successful attempts to really do anything useful at a large company, or "increase shareholder value." I personally saved the company about $100,000. The company spent over half a million $ arguing about it and treating us all like idiots.

It is just further proof that competent, smart, skilled employees are not welcome in the workplace.

Re:Job security? LOL (0)

Anonymous Coward | more than 10 years ago | (#9540140)

Jesus man, what company did you work for? Can you reply or e-mail its name so will never buy anything from them or apply for a job with them?

kirillstp (at) hotmail

Thanks

The problem is that the decison to oursource (2, Insightful)

RLiegh (247921) | more than 10 years ago | (#9537889)

generally isn't made on the basis of skill or knowledge but on the basis of how much they want to spend for a certain task.

All the training in the world will not matter if someone is bangladesh is able to work for what would be starvation wages in your country.

Advice: go get some non-programming biz experience (5, Insightful)

Anonymous Coward | more than 10 years ago | (#9537890)

I am a programmer, but my main value to employers is that I spent ten years working in other capacities: management, sales, construction grunt work, you name it. As a result, I usually don't *need* specs from analysts or product managers, because I usually have more business experience than most of them and can figure it out for myself.

Most of the programmers I've worked with lack this experience, and as a result end up having to be told what to do because they don't understand the full context of the problem they're being asked to solve. They often come up with elegant solutions to the wrong problem...

Re:Advice: go get some non-programming biz experie (1)

Umrick (151871) | more than 10 years ago | (#9538297)

Have to agree with parent. Even experience in other fields of computing (networking, sysadmin, building even) is a big win. I've been in consulting jobs working with other programmers (Indian and American), and the problem with most was their focus only on programming. They just didn't have any other experience to draw from.

Re:Advice: go get some non-programming biz experie (4, Insightful)

Brettt_Maverick (780722) | more than 10 years ago | (#9538800)

Completely right! Fact is, maybe 5% of professional coding is done in a 'pure' CompSci atmosphere. The other 95% reflects the true nature of computers and software - a tool to get some job done. And there is one metric hell of a lot of jobs.

Coders in banks need to learn about interest and amortization, coders in nuclear facilities need to learn about half-lives and gamma rays, coders for phone companies need to learn about telephony, coders for mom and pop stores need to know about mom's left-hand arthritus (so avoid F1-F8).

Not only is it relevant or valuable for coders to understand the context of the business they are in, it's vital. In fact, code-sense should take backseat to business-sense (although informed by coder-logic). Too often a tech solution will be shoehorned in when a practical solution based on knowing the business will do.

One time I stopped a restaurant manager from uprooting and reconfiguring all of his networked terminals and printers the day before a national holdiay in favour of a solution involving no more than a sideways abacus sitting on the bar. It wasn't a technology problem, it was an information problem. For that day, and that day only, blender drinks were being made at the beer tub, not at the bar. Problem was, orders for blender drinks were printed out at the bar, not the beer tub. The plan was to rejig all the printers and terminals so that the beer tub would have a printer, and then to reconfigure the POS software to route blender drinks to the beer tub. This sounded like a lot of hassle for one day, and knowing the 'stability' of the POS system, it was a recipe for disaster. The beer tub was in clear view of the bar. All the person there needed to know was how many of 3-4 different blender drinks to make. My solution was this: get a colourful child's abacus and mount it horizontally, so the beads slide from left-to-right. Each row represents a different drink (yellow=pina colada, red=strawberry daiquiri, etc). When an order comes up in the bar, the bartender slides the appropriate bead(s) over. The person at the beer tent can see this, and make the drinks. The server collects the drinks and slides the bead back. At any time, the person in the beer tub knows how many of what kind of drinks to make, and nothing had to be rewired or reconfigured or coded. And it worked like a charm.

Of course, over the years I've come up with a lot of elegant solutions to a lot of wrong problems, but never regretted it once. Usually, a good solution to the wrong problem is about 70% of the solution to the right problem, and even if it's not it invariably ends up being the crucual 30% of some yet unforseen problem. Software's cool that way.

One problem that comes of being a competent and experienced coder is that managers assume you know everything and assume that they don't have to know anything, rendering them (more) useless.

The question I always ask myself before starting any coding is: "Is this going to let the user go home early? Or work late?"

Highly effective business generators (2, Informative)

Timesprout (579035) | more than 10 years ago | (#9537906)

Actually thats the role of the Company, thats what its there for, to be in business. Its up to the developers to fulfill the requirements of the specs. I'm not saying developers cant be more pro-active in pushing technology and solutions and helping to pitch for solutions but ultimately the budget and PHB's constain what is and is not possible. I work hard for my clients but I am under no illusion that I am a comodity and despite good working realtionships the rug can be pulled from under me at any time. As I tell most of my clients, if I do my job properly they wont need me after the project anyway.

In other words (4, Insightful)

melted (227442) | more than 10 years ago | (#9537915)

>> position themselves as highly effective business-value
>> generators

Yeah, just like our bosses, let's talk about how "highly effective" we are and how much "business value" we generate. Let's do it INSTEAD of work, because that's what management seems to have been doing very successfully for the last decade.

How about BETTER MANAGEMENT? How about managers who, in fact, know what the fuck they're doing and have come from the very bottom, not straight from some stupid MBA program. Where the heck are you going to get them if all your "very bottom" is in India? Do you seriously think that folks who have no idea how software is built can successfully manage Indian technies? Think again then, "highly effective business value generator".

It's inspirational... (3, Interesting)

veritron (637136) | more than 10 years ago | (#9537954)

It's inspirational to realize that software consultants actually do what they do for money.

"Don't repeat yourself"

Durr.

"Think about the kind of work that can be effectively outsourced (where "effectively" is used in the context of some manager's opinion). Can they ship stuff offshore that can be specified down to some fine level of detail? Yup! Can they send repetitive, rule-based, highly constrained stuff overseas? You bet! The stuff that will stay is the stuff that involves more intuition, and more interaction. To get job security, developers need to position themselves as highly effective business-value generators, working with the rest of the company to solve common goals. If you sit in your cube waiting for a spec to be thrown over the wall, then you may be in for a wait -- that spec might be in an envelope on its way to Bangalore."

It's fun maintaining code from India. It's also fun to tell your customers and your boss what the program should do. You should try both sometime.

"Explain how agile processes can reduce risk. Explain how lightweight approaches can earn value faster. And explain how they should outsource the mundane stuff, and leave their talented pool of in-house developers free to work on the next revolutionary change to the company's business."

These are the same people that advocate nightly builds and all that other crap that just gets in the way. All you have to do to make a software project successful is have at least two people who don't suck at life working on it, and have them delegate the boring work to the people who thought going into computers would make them rich - all consultants do is take common sense and dress it up so it sounds good to management, and in turn, management gives them a shitload of money. I've never heard of a software house suddenly turning around and not sucking because "we hired a consultant, and his strategy was fricking awesome, and suddenly we were making products that like didn't suck, and it was pretty cool." Managers only hire consulants if their teams aren't making the numbers they should, so they can therefore justify the lower productivitivy of their teams by saying that they're "adapting to the new vision/strategy/paradigm," and that's usually enough to buy them a year of suckage until upper management wises up - and knowing upper management, that rarely ever happens.

Performance really doesn't play an issue in outshoring to India - if your job's so simple a monkey could do it, your job's going to get outsourced, regardless of your performance. You can't really match cost efficiency of someone who lives in a country with 1/10 the per capita income. All you have to do is pray for the language barrier and hope the companies who are employing offshoring all get burned when they need to maintain the code - I think it's a fad, but I've been wrong before.

Re:It's inspirational... (0)

Anonymous Coward | more than 10 years ago | (#9538595)

if your job's so simple a monkey could do it...[snip]...All you have to do is pray for the language barrier and hope the companies who are employing offshoring all get burned when they need to maintain the code

Or you could raise your skills above that of a monkey?

It's good to be the top engineer... (2, Insightful)

Theovon (109752) | more than 10 years ago | (#9537955)

It's amazing the things you can get away with when you're one of the top contributing engineers at your company.

Not to say that what I "get away with" is anything more severe than coming in late a lot, but still...

Also, when you're a top engineer, you can do stuff like yell at the boss and tell the CEO when you think one of his ideas is stupid or something like that.

Anyone else read it as... (3, Funny)

natefanaro (304646) | more than 10 years ago | (#9537969)

problematic programmer? I thought maybe they interviewed someone from Microsoft!

Absolutely right (4, Insightful)

ceswiedler (165311) | more than 10 years ago | (#9538277)

I work in an IT department of a large company. The reason I'm confident that I can't be outsourced is because I'm not just a programmer. I do design and business analysis as well, meaning that I use technical tools to solve problems for the business. You cannot outsource problem-solving, because it requires communication with and knowledge of the business and its problems.

Even if 100% of programming were outsourced, application design and specification will always be done on-site. If businesses go this route, then what will happen is a meta-programming specification language will emerge. On-site 'analysts' will produce a 'document' in this specification language, and this will contain around 50% of the complexity of the finished application, which is why it will need to be in a very precise and well-defined language.

In order to communicate with a computer, you need to be extremely precise and know what you're doing. There's a complexity of information problem, because a computer can be told to do basically anything. I can't type one line and get a complex program. In the same way, I can't just tell a programmer 'write me a database app which does our accounting' either. I have to communicate my knowledge and requirements to the person. Depending on their prior understanding of the problem, that will be anywhere from 25% to 75% of the information in the finished program. You save a little because humans are (variously) intelligent, but really, you have the same problem--communicate the rules and behaviour of the application.

I like programming computers because it's an interesting way to solve problems. But it's my problem-solving ability which gives value to my company, not my ability to type in C.

Re:Absolutely right (0)

Anonymous Coward | more than 10 years ago | (#9538684)

Amen

Re:Absolutely right (1)

killjoe (766577) | more than 10 years ago | (#9538970)

"Even if 100% of programming were outsourced, application design and specification will always be done on-site."

Nah. It could be done by consultant who come in, examine the situation, go away to write a spec, and hand the spec over to mgmt who ships it to vietnam.

See ya.

Re:Absolutely right (1)

ceswiedler (165311) | more than 10 years ago | (#9539744)

Yes, but the consultant will be on-site. Consulting isn't the same as outsourcing. Consultants get paid big bucks to do exactly what you say (examine the situation and understand the problem), outsourcing is done so you can pay someone off-site to do grunt work for cheap.

Anyone can lose their job to a consultant. The upside of that is that anyone who's competent can generally go become a consultant. You can't really go 'become' cheap outsourced labor.

POD==vaporware, free digital books==cool (2, Informative)

bcrowell (177657) | more than 10 years ago | (#9538409)

It was interesting to see their response to this question:
A recent weblog entitled Why Do We Need Publishers? pointed out that print-on-demand (POD) makes small print runs more affordable and more profitable than cultivating a relationship with a professional publisher.

From the authors' response, it sounds like they actually have a fairly traditional publishing arrangement, where they print books in quantity, and distribute them through O'Reilly. The question is also kind of a non-sequitur, because they say "POD" and "small print runs" in the same breath -- POD was supposed to be a technology for printing copies for individual readers on demand. Printing short press runs isn't a new idea. The whole POD thing was one of those things that really got oversold in the 90's. The fact was that the technology and business aspects never really made sense.

What is really cool, and really makes sense, and is really practical technologically, is what they're doing by making their book free [rubycentral.com] in digital form but also available in print.

Egos vs. programmers (0, Flamebait)

heroine (1220) | more than 10 years ago | (#9538410)

> To get job security, developers need to position
> themselves as highly effective business-value
> generators, working with the rest of the company
> to solve common goals.

So to live in the US, you need to have a huge ego, tell everyone else they're idiots, and hold up the entire operation so you can be the funnel through which everything must go. If it doesn't go through you, you have to call the person who bypassed you an idiot.

That seems to be the modus operandi of the guys with the most interaction with the entire company. It's an ego sport.

Re:Egos vs. programmers (0)

Anonymous Coward | more than 10 years ago | (#9538884)

If the only way to have programmer job security is to "position yourself" as THE go-to person in your company, then my advice is to find another profession that has sensible career prospects. I would never advise a student to aspire to a software development job or an engineering design job. Why? because its only good for a 15 year career, and after that, you're on the downward slope and by the age of 45, your toast, no one will hire you then (if you get laid off, which is 90% likely to happen by that age).

Go for other professions where your knowledge increases your value over time, don't waste time chasing the 'high tech' gold ring, its not a good use of your time, energy and money.

Re:Egos vs. programmers (0, Flamebait)

spiritgreywolf (683532) | more than 10 years ago | (#9539390)

" To get job security, developers need to position themselves as highly effective business-value generators, working with the rest of the company to solve common goals."

No, it's not simply ego. It's people in the trenches actually taking the time to stick their head out of the average gopher hole and look around to see what the fuck is going on.

As a medical integration consultant, more than 90% of the people I'm called in to deal are full of the "Not My Job" syndrome. These NMJ's are of course the first whiny bastards that bitch, moan and complain about what stupid job management is doing. How many times do you hear ANYONE bitch, but offer any well-thought out solutions to go with it? Exactly.

Of course many of these "movers" have ego's. They HAVE to in order to manipulate, bypass or utterly CRUSH the sycophantic-retards in middle management that have their own little empires to worry about without focusing on growing the company.

Okay, so the "consultant-speak" at the start of the article was bit over the top. However the whiny bastards that choose to bitch someone out over the phone and only says "You give me the specs, that's not my job" like some pirate's parrot deserve exactly WTF they get.

Christ, just lose all the consultant blather and repeat after me, "Grow A Pair of Balls, Grow the Company."

I've never been wasted politically for doing what's right and what's in the best interest of the company. And yes, you NEED to grow an ego or some sycophantic little opportunistic weasel will take your ideas AND the credit. Don't like it? get a job at Mc-Jobs and focus on the fries.

Toot your own horn... You might make more money.

Re:Egos vs. programmers (0)

Anonymous Coward | more than 10 years ago | (#9539574)

Spoken like a true American.

"God bless".

Re:Egos vs. programmers (0)

Anonymous Coward | more than 10 years ago | (#9540081)

... "Grow A Pair of Balls, Grow the Company."

So women don't belong in the workplace, is that what you are getting at?

Dave Thomas (1)

sydbarrett74 (74307) | more than 10 years ago | (#9538455)

Ahhhh....so the maker of thick, juicy hamburgers and frosties didn't die -- he just became a coder. Whew, I was sad for a while there.

Natural Development (0)

Anonymous Coward | more than 10 years ago | (#9539202)

I view outsourcing as a natural development and inevitable. Its been happening in manufacturing throughout history, i mean look at the industrial revolution - Britain gets a head start and is a market leader, then everyone else wants a bit of the pie. And fair enough

One thing to realise is that a lot of software is aimed at a worldmarket, so it shouldnt matter where its developed. The advantage of building it in India for instance is that you can open its accessability to bigger markets because the cost per unit is reduced.

At the end of the day i dont regard IT as a lifetime career anymore. Im glad for it too because i want to do other things - and thats the opportunity in the market

Words, empty words. (1)

12357bd (686909) | more than 10 years ago | (#9539733)

I've read the interview, but I could not find a single idea about programming...
well, except the tipical 'metaprogramimg' misconception (pretending 'meta' is something different to 'programming'), but nothing more, did I miss the line?

Look what we got here! (0)

Anonymous Coward | more than 10 years ago | (#9540131)

Another elitist fancy pants spews the same old obvious, self indulgent dry heave we have been hearing for years.

"Want to keep your job? Just be perfect like us. Oh yeah, and dont't write any more crappy code."
Load More Comments
Slashdot Login

Need an Account?

Forgot your password?
or Connect with...

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>