Slashdot Mirror


Does the 'Hacker Ethic' Harm Today's Developers?

snydeq writes "Fatal Exception's Neil McAllister questions whether the 'hacker ethic' synonymous with computer programing in American society is enough for developers to succeed in today's economy. To be sure, self-taught 'cowboy coders' — the hallmark of today's programming generation in America — are technically proficient, McAllister writes, 'but their code is less likely to be maintainable in the long term, and they're less likely to conform to organizational development processes and coding standards.' And though HTC's Vineet Nayar's proclamation that American programmers are 'unemployable' is overblown, there may be wisdom in offering a new kind of computer engineering degree targeted toward the student who is more interested in succeeding in industry than exploring computing theory. 'American software development managers often complain that Indian programmers are too literal-minded,' McAllister writes, but perhaps Americans have swung the pendulum too far in the other direction. In other words, are we 'too in love with the hacker ideal of the 1980s to produce programmers who are truly prepared for today's real-life business environment?'"

436 comments

  1. Software engineering is not a new concept. by Ethanol-fueled · · Score: 5, Informative

    And though HTC's Vineet Nayar's proclamation that American programmers are 'unemployable'...

    Flamebait. The article goes on to say that Americans are all prima donnas who are out of touch with reality and want to start with 80K a year and whatnot. Besides that being a bad stereotype and not always true, and when it is true it also applies to math or engineering or whatever grads whose parents buttercupped them with promises of the American dream when they finished school. It is their fault for not anticipating reality just as it will be the Indians' fault if they refuse to anticipate their jobs going somewhere cheaper.

    there may be wisdom in offering a new kind of computer engineering degree targeted toward the student who is more interested in succeeding in industry than exploring computing theory.

    They're already here, usually called "Software Engineering. The coursework is usually half business, half programming and IT. If you can survive rolling your eyes at all the buzzwords and colored charts, it's decent preparation for becoming a Dilbertian drone. Plus, you won't have to sweat learning the vector calculus you'll never use outside of school.

    1. Re:Software engineering is not a new concept. by mutantSushi · · Score: 5, Insightful

      The entire meme put out by this CEO of Indian software outsourcing company is absurd. What is this guy's area of expertise? Is HTC known for actual innovative work, products that sell themselves, that create new markets around new functionalities? Of course not. They are outsourcing the lowest-end "drone work" from companies like Microsoft. I.e. the most labor-intensive kind of work, i.e. the least lucrative per man-hour, i.e. the kind you don't want to get into if you have any sense. But never mind that, there must be a BIG PROBLEM with Western developers who really should know they need to give up their 100k/year job working with a few guys they get along with writing iPhone software, or working in an environment that is flexible with their lifestyle, and might even provide an outlet for the intellectual curiosity that drew them to the field in the first place. And they really need to cut out that art education in public schools...

    2. Re:Software engineering is not a new concept. by treat · · Score: 1

      And though HTC's Vineet Nayar's proclamation that American programmers are 'unemployable'...

      Flamebait. The article goes on to say that Americans are all prima donnas who are out of touch with reality and want to start with 80K a year and whatnot. Besides that being a bad stereotype and not always true

      That's barely a living wage in most of the cities where a programmer has a likelyhood of making a living. i.e. there are more than a few hundred companies that employ people in software development.

    3. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 4, Insightful

      80K/year is "barely a living wage"? If you want a 4 bedroom house with a three car garage, 2 Hummers, 3 kids, a couple of dogs, and a 2-week overseas vacation every year, maybe. Don't confuse "living wage" with "the American dream". There's a huge difference.

    4. Re:Software engineering is not a new concept. by Geoffrey.landis · · Score: 1

      And though HTC's Vineet Nayar's proclamation that American programmers are 'unemployable'...

      Flamebait.

      The next words in that quote you left unfinished were "is overblown."

      --
      http://www.geoffreylandis.com
    5. Re:Software engineering is not a new concept. by dintech · · Score: 4, Insightful

      Programming has become more of a commodity and so thankfully Computer Science isn't just about programming.

      there may be wisdom in offering a new kind of computer engineering degree targeted toward the student who is more interested in succeeding in industry than exploring computing theory.

      What exactly does this mean? If you want to learn about business, do an MBA. If you want to be a computer programmer, learn it yourself because it's not difficult enough to warrant an entire university degree devoted to it.

      Computer Science gives you a deep understanding not just HOW to use computers but something deeper than that. It's a mixture of the maths, physics and philosophy that underpins the whole concept of computing. Knowing what is possible and how to get there helps create the engineers of tomorrow, not some desk jockeys that solve transient problems and are equally interchangable with counterparts from any country. Most blue chip graduate programmes look for thinkers and creatives - not spare parts for the corporate machine that can be 'sourced' at commodity rates.

    6. Re:Software engineering is not a new concept. by baap · · Score: 1

      Yo you can do nada without bling overloading() - CMMMON...

    7. Re:Software engineering is not a new concept. by Ethanol-fueled · · Score: 2

      Right, because that's what I wanted to debunk. The Slashdotter-friendly summary says that his words are "overblown" but TFA goes on to elaborate independently the bad stereotypes of Vineet Nayar. I am responding to them, not to the submitter.

    8. Re:Software engineering is not a new concept. by dintech · · Score: 5, Insightful

      I work for a top investment bank which employs more than 10,000 developers worldwide. They have recently got rid of all outsourced developers and insourced everything. From the very top level of IT management it was decided that quality is indeed worth it. You can read into this any way you like but the facts speak for themselves and there's nothing Vineet Nayar can say or do about it. I can imagine that any development groups that value the same principles will follow suit eventually.

    9. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 1

      Plus, you won't have to sweat learning the vector calculus you'll never use outside of school.

      The only reason you don't use vector calculus outside of school is you didn't really learn it. If you really understood it, you would use it all the time. Vector calculus is far more than memorizing a few formulas for integration and differentiation. It's about the functions and what the integration and differentiation mean.

      This is really a case of when all you have is a hammer everything looks like a nail. A corollary is that if all you've ever seen is a hammer, it might not occur to you that a screwdriver exists.

      I've seen lots of people in technical fields, including most DBA's, who think they are at the top of their field. What they don't realize is that there is a universe of things they don't know about their field. These people are totally unable to grow, and I do my best to avoid working with them.

    10. Re:Software engineering is not a new concept. by Maxo-Texas · · Score: 4, Insightful

      I could live well on that wage in the middle of the country-- but it would be impossible in the upper east coast or the west coast.

      Consider that it would take the average indian programmer about 70 years to earn as a gross income enough to buy a "middle class" house in California.
      Rathole apartments are $50,000 a year in New York.

      Similar issues would exist in Tokyo.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    11. Re:Software engineering is not a new concept. by molafson · · Score: 1

      Interesting. You can look at it as analogous to the creation of TV cartoons, i.e. the creators are artists who design the story and the key cells. The workers are the ones who ink the cells as per the artists' design (by hand or by computer imaging). The workers are also artists in their own way, but not to the same degree.

    12. Re:Software engineering is not a new concept. by MarcoAtWork · · Score: 1

      I am not sure who modded you up, but try pricing living in an area with a significant concentration of tech jobs (say, SF area) and I am not so sure you can call 80k more than a living wage considering the rents and so on... that or you could have a 2 hour commute each way of course.

      Of course if you are so lucky as to land a great job in the midwest, say, 50k would be plenty, but what happens if you get laid off from your dream job? The odds of finding another tech job in a non-tech-heavy area are very low, hence why people tend to unfortunately have to live in certain very defined (and expensive) locations.

      --
      -- the cake is a lie
    13. Re:Software engineering is not a new concept. by nine-times · · Score: 5, Informative

      it's decent preparation for becoming a Dilbertian drone

      This makes me want to comment on something that may well be a valid point in all of this. I've run into a common problem in lots of companies with lots of workers. I'm not saying that it's limited to Americans or technical people, and I'm American after all, but it can be a problem: everyone wants to be a cowboy, and nobody is willing to be a drone.

      Now lots of people are probably going to get pissed off that I'm claiming that "nobody is willing to be a drone" is a problem, but hear me out because it's not that simple. I'm not saying we need more "mindless drones", but I've seen the cowboy mentality go bad lots of times. People love to be the hero who saves the day, but in lots of real-life work situations, the day only needs saving when someone wasn't following directions in the first place.

      Lots of people are so bored and frustrated with the menial tasks of their everyday work day that they let things slide. Then when all the things they've let slide come to bite them in the ass, they really enjoy the thrill, drama, and glory of pulling a quickie solution out of their asses just in the nick of time. They save the day, feel important, and get to tell the story of how clever and skilled they were right when their skills were most needed. It's very understandable, but it doesn't encourage people to do things right the first time, and so there are a lot more problems than their need to be.

      It'd be really nice if people were willing to document things, make checklists for their regular procedures, and take notes in meetings. It'd be great if people were just thorough and actually paid attention to directions-- things like that. But I don't know if that has anything to do with a "hacker ethic". I'm not sure what the "hacker ethic" is, but the Wikipedia article doesn't make it sound too bad.

    14. Re:Software engineering is not a new concept. by pwizard2 · · Score: 1

      If you want a quality life, it costs money. What you described isn't what every person wants, but I can't blame those who do want that lifestyle for trying. $80K may seem like a lot and more than what the job is worth to some people, but should he be happy to scape by with less? From what I've seen, the name of the game these days is to get all you can out of your employer, because someone else will if you don't.

      --
      "It is a denial of justice not to stretch out a helping hand to the fallen; that is the common right of humanity."
    15. Re:Software engineering is not a new concept. by FuzzyBad-Mofo · · Score: 1

      If you live in a major U.S. city -- New York, Chicago, Los Angeles, etc -- then yes, 80k is barely adequate to own a small condo in the city and perhaps a decent used car. I speak from experience on this.

      80k/year could afford a nice lifestyle in a small town, but for major markets it's not that impressive.

    16. Re:Software engineering is not a new concept. by Lord+Ender · · Score: 5, Insightful

      We outsourced a lot of development and IT to an Indian office, and found the experience to be most similar to managing a workforce composed entirely of interns. Our security group is also terribly concerned with the attitude toward (customer) data security observed in the Indian office.

      I am quite sure some brilliant minds have come from India, but I get the impression they all left for the West where they could make six figures. If you are good with technology, why stick around in a country where half of households don't even have toilets? You just won't get talent for $20k/year, not even in India.

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    17. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      I only have ONE hummer, you insensitive clod!

    18. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 3, Interesting

      My employer's off shore developers generally produce nothing better than "acceptable" and it's generally hard to get them to maintain things. They like to developnew things and don't even like the idea of maintaining their own code.

      But they're dirt cheap. So they have better equipment and more developers than we have in the UK. We're still waiting to get two developers replaced that left. Apparently they think we can replace them without placing adverts.

      To be fair to the off shore guys, the only reason why they develop rubbish (as has been done in the UK too) is that the people coming with the requirements don't have a fucking clue what they're doing. There is a lack of ownership to see the project through once its launched and in general, the low level people have a better idea about technology than management and as a result anyone with any decent skills move on. This goes for the UK and the off shore developers.

    19. Re:Software engineering is not a new concept. by PeanutButterBreath · · Score: 4, Insightful

      Knowing what is possible and how to get there helps create the engineers of tomorrow, not some desk jockeys that solve transient problems and are equally interchangable with counterparts from any country.

      "Solving transient problems" is not necessarily a trivial or commodity skill. Its may not be something that someone with a Computer Science degree wants to spend time on, but it probably isn't something that an MBA or a marginal coder is going to do well either (whether they are trying to come up with a solution or even effectively define the problem). It still takes talent and specific skills that can't necessarily be taught to just anyone who happens to want a desk job with a decent paycheck.

      If you are fascinated by "maths, physics and philosophy that underpins the whole concept of computing", well those are valuable things, but they are not enough anymore. Software has become too broad to be left to either Computer Scientists or cube drones.

    20. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      Where you live has a large say in what kind of life your income can buy you. The point was that 80k a year seems mediocre at best when you're living in the places that attract a hefty chunk of programming talent.

      For an example, run a little search on cost of living in various parts of the country. Look at the kinds of houses available in different locations for the same amount of money. The cash that gets you a humble 800 sq. foot place in Seattle can purchase a veritable mansion in much of the middle of the US, for example. I hear the difference can be larger in areas of California, though I'm not personally interested in that housing market.

    21. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      An 80K/year salary is a great wage in out in the wilds of rural America, but it not going to get you as far in some of the more expensive cities. If I were to move to NYC or LA (from my current semi-rural location), I would likely need almost double my current salary to be able to afford my current standard of living.

      Many people seem to think that 80K is a "lot of money". After taxes, the mortgage, basic utilities, insurance, health care, groceries and a couple of kids, you're left with enough for some creature comforts. It's unlikely you're buying 2 Hummers and an overseas vacation unless you're an idiot, in debt up to your eyeballs.

      Of course, that is pretty much the fashion in America these days...

    22. Re:Software engineering is not a new concept. by Profane+MuthaFucka · · Score: 2

      Obviously you're making something South of 80K a year, and you're fantasizing about how wonderful life would be if you only made that much.

      When you get to 80K a year, you'll see that it ain't crap.

      A more reasonable expectation for life on 80K a year in a typical place (let's pick Dallas Texas) would be a 3 bedroom house of somewhat less than 2000 sq. feet, two car garage with a Honda Civic and a Chevy Malibu in it, one child, one dog, and an overseas vacation once a decade, if that. And you're going to have a lot of trouble educating even that one child, even at a state university.

      If you're in Silicon Valley, forget the cars, and forget the house. You're going to be looking at something with 1 or 2 bedrooms, and 1000 sq. feet or less.

      --
      Fascism trolls keeping me up every night. When I starts a preachin', he HITS ME WITH HIS REICH!
    23. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      Where the hell do you live, Alabama? A 4-bedroom house in the Boston burbs with a three-car garage will cost you at least $600K. Take in all the other expenses you imagined, and your "American dream" would *at a minimum* cost an average salary of $160K. In the burbs of what is probably a top-5 job market for programmers (after SV, NY, Seattle, at least). And you were modded *insightful*?

    24. Re:Software engineering is not a new concept. by cowscows · · Score: 3, Insightful

      I'm not a programmer, but in my field we've got the same basic issue, which can be boiled down to something like this:

      In a given project, for every hour of fun/interesting/challenging work, there's ten hours(at least) of tedious/drone work that needs to be completed.

      It's not an issue specific to programming, or computers, or even technology. It's just a fact of life that will never change.

      --

      One time I threw a brick at a duck.

    25. Re:Software engineering is not a new concept. by element-o.p. · · Score: 1

      80K/year is "barely a living wage"? If you want a 4 bedroom house with a three car garage, 2 Hummers, 3 kids, a couple of dogs, and a 2-week overseas vacation every year, maybe. Don't confuse "living wage" with "the American dream". There's a huge difference.

      Depends on where you live. I used to know a guy who worked for Cisco in San Jose, but wanted to move to Alaska really badly. When he moved to Anchorage (where I live), he used the just the equity he had from his house in San Jose to pay cash for a new house in one of the really nice parts of Anchorage (Hillside). He mentioned once that his bonus at Cisco one year was greater than his entire earnings one year at the company we worked for in Alaska (which was one of the better paying places to work in Anchorage).

      You can be pretty comfortable on 80K/year in Anchorage, but from how my friend described San Jose, it's probably more inline with "barely a living wage" that gpp mentioned.

      --
      MCSE? No, sir...I don't do Windows. Yes, I am an idealist. What's your point?
    26. Re:Software engineering is not a new concept. by LanMan04 · · Score: 1

      Umm no. I made $60K living outside the DC in NoVA suburbs and I got along just fine. WIth $1200/month payment for shitty condo.

      --
      With the first link, the chain is forged.
    27. Re:Software engineering is not a new concept. by Yvanhoe · · Score: 2, Insightful

      I may sound a bit of an anarchist but here I go...
      There is a lot of differences between a hacker and a cowboy. The cowboy want to save the day, the hacker wants to make a shiny piece of thingie that works and does awesome. Not only does he want that, but he alwo wants to get recognition for that. He wants others to use his shiny piece of awesome. Documentations and protocols are a part of the process that is very natural (awesomeness points are awarded for auto-generated usable documentations). The hacker works usually in small teams, most of the time in teams of one. That doesn't change the fact that he is quite able to produce a standard-abiding well-documented thing. Like everyone, he notes in meetings what is important and discards the rest. He mocks regular procedures because if there was an easy procedure for the thing he planned doing, it would lack awesomeness. He will occasionally come up with his own custom-made procedure.

      Yeah, ever since I have been into software industry, open source and hacker spaces, I was surprised how incredibly well anarchy suits product development and yields results arguably better than hierarchical organizations.
      Why be a drone when you can be a hacker ?

      --
      The Wise adapts himself to the world. The Fool adapts the world to himself. Therefore, all progress depends on the Fool.
    28. Re:Software engineering is not a new concept. by PeanutButterBreath · · Score: 5, Insightful

      I hate being a drone. I get bored, frustrated and ultimately wander off, to the betterment of everyone involved.

      That said, I agree. I was once in charge of a 3 person team (non-software-development) and the absolute best guy I ever had working for me just wanted clear instructions, a constant supply of work to apply them too and a place to work without being distracted. The more repetitive the better. He would go into his zone and out-produce everyone else by miles. He seemed to derive personal satisfaction from things like consistency and productivity, rather than expecting a job to be entertainment or a chance to repeatedly demonstrate his individual genius.

      Of course, he was an oddball by the standards of upper management, who were convinced that their company should only employ enthusiastic, young go-getters. These types would get bored within a few weeks and require constant motivation and incentives just to do the bare minimum. Not that I blame them -- I wouldn't have wanted their jobs or their paychecks either. But if I could have split 3 salaries among 2 people who were actually suited to the job, I could have go more work done more consistently and wasted less time listening to gripes and training replacements.

      There are aspects of software design that require creativity. There are aspects that require technical rigor. There are aspects that require procedural diligence. Etc. You are rarely going to get all of these things in a single person, and if you don't match the specific requirements to the strengths of the "programmer" you are likely applying the wrong person to the task.

      At the same time, "programming" in the US tends to attract very smart people, and very smart people often overestimate their capabilities (often by underestimating the significance of things that don't interest them).

    29. Re:Software engineering is not a new concept. by OrangeTide · · Score: 1

      At $80K/yr it is simply impossible for me to afford a house. If I had a wife who also made $80K/yr perhaps it would be a possibility.

      In my area sub-$100k/yr people are renters. About $1200/mo for a very modest 2bd apartment suitable for a family of 3 or 4. Even the local police officers make low six figures in my town, and we're not living high on the hog.

      I do not own a BMW, Mercedes, Plasma TV, Rolex or an Armani suit.

      --
      “Common sense is not so common.” — Voltaire
    30. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      just to play the devil's advocate:

      $80,000
      -25,000 taxes, social security, medicare
      -25,000 mortgage on a $400,000 house
      -25,000 overseas vacations ($175/person/day)
      -40,000 hummer payments ($140,000 financed over 48 months at 8%, excluding insurance)
      -----------
      -35,000

      and that's assuming no one eats.

    31. Re:Software engineering is not a new concept. by kirillian · · Score: 1, Redundant

      Eh...it depends...my boss can get talent for a little more than $20k a year...for me, I just needed a job to help me pay for the final year of my education and I got lucky as my particular area does not have a slew of tech-industry openings - especially programmers. I don't have any clue how my boss managed to get 5 competent programmers in one building, but he somehow did, and, well, I'm still here despite my low wages...maybe the failing economy helped encouraged me to stay put - at least for now. I think the other thing that keeps us here is the fact that all of us have worked with less-competent people before...*cough*the boss's son*cough* (before we rid ourselves of him)...and we, I think appreciate each other for that, and just enjoy working together...needless to say, I think everyone feels a need to push on for higher wages though...

    32. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      not that 80k/yr is chump change, but it's not even close to 2 hummers, a 3 car garage, and 4 bedrooms. I make more than that, and I can't afford those things. (Ok, three bedrooms in *my* house, and my parents never had a basement to speak of, so no crashing there...)

      I guess I could go into serious debt, but I'd rather not, I still owe a brand new cars' worth to my student loans...

      Both sides make broad generalizations like this, and both are kinda retarded. But then again, this is why /. is...

    33. Re:Software engineering is not a new concept. by Darkness404 · · Score: 1

      $400K for a 4 bedroom house?!?! Now I might be wrong about the costs, but here in the midwest even in the larger cities, 400K will get you a huge house where a 4 bedroom house is more like $250K, new.

      --
      Taxation is legalized theft, no more, no less.
    34. Re:Software engineering is not a new concept. by caffeinemessiah · · Score: 3, Interesting

      If you are good with technology, why stick around in a country where half of households don't even have toilets?

      Because it doesn't really matter as long as *your* house has one. Metaphorically speaking, if you have the option of making $40k in India -- which goes a LONG way -- and staying at home, living like a king, keeping your social support system, etc. vs. migrating to the states and starting anew for $80k., then a lot of perfectly rational and obscenely talented people will choose to stay there. Money really isn't everything.

      --
      An old-timer with old-timey ideas.
    35. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      Hear hear. I make 40k in the SJ area. I moved back in the my mother because I couldn't afford $1200/month rent in east San Jose (Equate what you think about Oakland to there, and you got it, only different races, and less respect for other peoples property)

      80k would be barely making it with a 2 bedroom apartment and possibly a car payment.

    36. Re:Software engineering is not a new concept. by phantomfive · · Score: 2, Informative

      I live in the San Francisco area for about $1,500 a month. $2000 if I decide to buy clothes that month. I think I could get it down to $1000, but I would need to sell my car.

      --
      Qxe4
    37. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      I also work for a (different, I assume) top investment bank with lots of staff outsourced to Moscow and I'd like to confirm that, on the whole, they too are inefficient and produce low quality code. I think perhaps it's because they are out of touch with the business they are serving and just produce the minimum code required to tick check-boxed requirements with no look towards future requirements.

    38. Re:Software engineering is not a new concept. by PeanutButterBreath · · Score: 1

      There is a lot of differences between a hacker and a cowboy. The cowboy want to save the day, the hacker wants to make a shiny piece of thingie that works and does awesome. Not only does he want that, but he alwo wants to get recognition for that. He wants others to use his shiny piece of awesome. Documentations and protocols are a part of the process that is very natural (awesomeness points are awarded for auto-generated usable documentations). The hacker works usually in small teams, most of the time in teams of one. That doesn't change the fact that he is quite able to produce a standard-abiding well-documented thing. Like everyone, he notes in meetings what is important and discards the rest. He mocks regular procedures because if there was an easy procedure for the thing he planned doing, it would lack awesomeness. He will occasionally come up with his own custom-made procedure.

      I added bold are attitudes and practices that any competent developer will adhere to, regardless of the environment they work in.

      I added emphasis to attitudes and practices that I feel will detract from their competence (or are evidence that they are fooling themselves with respect to their adhereance to the former set).

    39. Re:Software engineering is not a new concept. by icsEater · · Score: 1

      Umm no. I made $60K living outside the DC in NoVA suburbs and I got along just fine. WIth $1200/month payment for shitty condo.

      I wouldn't count DC as a major US city. That said, I think only NYC, SF, and parts of LA and Chicago have such ridiculous high costs of living to make 80K only marginally above-average pay. I enjoyed a fairly well-off lifestyle in the midwest before moving moving out here to silicon valley. My monthly rent for my tiny hole-in-the-wall apartment is more than my spacious luxurious condo in the Midwest. Add in the utilities and higher cost of groceries, gas, etc, the 30% jump in salary just doesn't cut it.

    40. Re:Software engineering is not a new concept. by Maxo-Texas · · Score: 1

      More power to you... but

      http://www.bankrate.com/calculators/savings/moving-cost-of-living-calculator.aspx

      shows
      $50,000 in Texas requires $92,591.83 in San Francisco to have the same standard of living.
      $50,000 in Texas requires $123,152.79. in New York (Manhattan) to have the same standard of living.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    41. Re:Software engineering is not a new concept. by Maxo-Texas · · Score: 1

      We had a lot of people in 2007 and 2008 moving here and buying frikkin mansions here and still having $200k to $400k left over from selling their houses in California.

      A 1800 square foot house payment is about $400 plus $300 for taxes.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    42. Re:Software engineering is not a new concept. by KasperMeerts · · Score: 1

      You're repeating yourself.

      --
      As long as there are slaughterhouses, there will be battlefields.
    43. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      I don't think many people want to be cowboys either, for exactly the reasons you gave. I think what most people really want is something between a drone and a cowboy, where the work is meaningful but predictable, and they have a certain level of control and ownership of their own work. That's what I get where I work. We have short cycles, so I change my focus every few months. The details of my work are always left up to my discretion, and a reasonable portion of the generalities. Even though the basic concepts never change from project to project, enough does change and I have enough control that I feel very far from a drone, and also very far from a cowboy.

    44. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      The cowboy want to save the day, the hacker wants to make a shiny piece of thingie that works and does awesome.

      That's all well and good provided the thingie is something that does awesome, but lots of software is not awesome from a developer standpoint. Lots of software is rote input data, store/merge and display. This is the kind of software that people with the drone mentality thrive at and people with the hacker streak chafe at. For someone with a hacker mindset, pumping out uninteresting business-driven software is a concession to needing to eat and pay rent. The problem with the drone mindset is that it produces very little creativity and when you're making a product that needs to do awesome, creativity is necessary.

      And it all comes down to how we educate children. If you look at societies that place an emphasis on rote memorization over critical thought, the product contains a higher drone :: hacker ratio. In societies where it's reversed, the ratio is reversed. It's important to state that neither approach is superior to the other. But when you look at which countries/regions produce the most disruptive technologies--stuff that involves a big departure from what previously existed--they almost always come from places where critical thought is the objective of the educational system. And if you look at which countries/regions succeed at refining what already exists into it's optimal form, they're almost always the countries that emphasize rote learning.

      What we need is an educational system that's capable of producing the right balance between creative hacker types and industrious drone types. We need the relatively few hacker types to throw things against the wall and see what sticks. And we need the relatively many drone types to take what sticks to the wall and make lots of copies of it. Neither side works without the other side. Without drones, no one builds boring-but-necessary business software. Without creative types the drones produce a mountain of unmaintainable garbage that eventually falls apart. It may be that many Americans are unemployable at building the kind of thing that some Indian outsourcing company sees. But most of those same Indian developers that he would consider employable are unemployable at the company that created the language they use to build the software.

      Why be a drone when you can be a hacker ?

      For some people, being a hacker is too risky. Both the reward for success and the cost for failure are greater for a hacker. The lone hacker isn't going to out-work the hierarchical drone factory, so his/her product needs to innovate enough to succeed. If that innovation is successful, the product can be a great success. If that innovation isn't successful, he could be out of a job.

      Meanwhile, the drone at the drone factory goes to work each day, collects a paycheck at a regular interval and knows where his mortgage payment will come from and knows he'll have enough to contribute to his 401k and kid's college fund. It's not as exciting as being a hacker, but it's also not as scary.

    45. Re:Software engineering is not a new concept. by networkBoy · · Score: 1

      Here in the sacramento CA area, after the housing crash, $300K+ for that house.

      I make ~$55K/yr and yeah, I can't actually live on that with a wife and two kids, so I do other stuff to shore up the finances (everything from manual labor to custom coding jobs). Putting food on the table is the name of the game, and I do what it takes. My wife and I did a CBA against her working Vs. staying home and it is _cheaper_ for her to not work than it is to pay for daycare.*

      Add to that, most of my additional jobs are under the table and we're ok, but forever renting, not buying a house. Cars are used, and driven till they die, then replaced with another used car.
      -nB

      *My son is a hemophilian, so there is some additional cost for daycare, but even based on normal daycare rates, it's a ton of money.

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    46. Re:Software engineering is not a new concept. by phantomfive · · Score: 1

      You are right, different places have different living standards, and of course I can live cheaper in the country somewhere, but the original topic of discussion was 'living wage,' and then later expanded to 'living well.' I consider that I live well, I can go to restaurants every day of the week if I want to, or I can buy any new gadget that comes out, or whatever I want (except a private jet, but I'm working on that). $40k a year is easily living wage in the San Francisco area.

      --
      Qxe4
    47. Re:Software engineering is not a new concept. by nine-times · · Score: 1

      Yeah, like I said, I'm not trying to apply this to technology or Americans specifically. I've never had a job outside of America, so I can't really compare it to anything else, but I've definitely seen this problem in non-technical situations.

      In fact, what I really had in mind when I wrote this is I once was in charge of a project that had a really simple position. I basically needed someone to hang around for 7 hours a day, 5 days a week, but really there was only ever about 4 hours a day worth of work. Most of it was just to have someone present, in case that person was needed. The work wasn't hard, and it wasn't bad work. It was fairly boring, but there wasn't all that much difficulty in figuring out what you were supposed to do. To be honest, I sometimes wanted to take the job myself. It would have paid less, but it was just so easy and really light on responsibility.

      It was sort of like, "If A happens, do B. If C happens, do D. If anything else happens, let your manager know and he'll tell you what to do." The position even paid fairly well, and all I needed was for the person filling the job to be reliable. The person had to show up on time and follow the simple directions.

      But it was relatively hard to find someone who would do it. One guy was doing it for a while, and he kept complaining about being treated like a "drone". It was the first time someone had complained to me about being treated like a drone instead of me being the one complaining, so it kind of stuck out in my head. He would try to get inventive with his responsibilities, but didn't understand the situation very well and so made lots of mistakes. And then things would pile up, get out of control because he wasn't doing what he was supposed to, and when he barely managed to fix the problems before they became serious, he would go around looking for applause like some kind of conquering hero.

      And then the same guy would look at me like I'm crazy when I made checklists for myself. He thought I was a joke, like making a checklist was a sign you were too stupid to just remember everything. Meanwhile, he'd only have 5 things to get done in a day, and he'd forget 2 of them.

      I'm not in favor of people being mindless. If you see a way in which things could be done better, speak up and let's do it better. But most jobs have a component that's just following procedure, doing what your supposed to, and being a bit of a drone. Failing to do that stuff because your too cool for school doesn't help anybody.

    48. Re:Software engineering is not a new concept. by curunir · · Score: 1

      FWIW, I live in San Francisco proper and pay about $7k/year in rent. I ride my bike to work, so my monthly expenses for are only a couple hundred on top of that. When you add in food and other expenses, I could easily get by on $20k/year. I probably end up living on around $35k, because I like gadgets and eat lunch out with coworkers most days.

      So $80k can definitely be a living wage. That said, I live so frugally and sock away so much of my salary (more 50%) so that I might buy a property in the city at some point in the relatively near future. That this is necessary on a mid-6 figure salary does argue for your point. It all depends on your definition of a living wage. If that means eventually owning a home in SF and having enough to raise kids, then $80k doesn't seem like a whole lot. But for a young renter with no kids, $80k is quite a bit more than is necessary to live comfortably in San Francisco.

      --
      "Don't blame me, I voted for Kodos!"
    49. Re:Software engineering is not a new concept. by macshit · · Score: 2, Informative

      I could live well on that wage in the middle of the country-- but it would be impossible in the upper east coast or the west coast.

      Consider that it would take the average indian programmer about 70 years to earn as a gross income enough to buy a "middle class" house in California. Rathole apartments are $50,000 a year in New York.

      Similar issues would exist in Tokyo.

      I'm not sure what you mean by "issues"... Japanese salaries are on average much lower on average than what you'd make in Silicon Valley or something, but people still do fine. I suppose the crucial point is what you consider "living well" (note: that isn't synonymous with a giant house with a lawn and a three car garage, a lawn holding 2 giant SUVs).

      Tokyo's not cheap, but it's an enormous city with a lot of housing available at all price levels, and the transportation system is good enough that you have a fair bit of choice where to live given a typical commute (and everyone has a commute, unless they get very lucky). The key tradeoff, if you live in Tokyo is space -- if you live like the typical person, you won't have anywhere near as much space as say a family in the suburbs of Buttfuck, Kansas (on the other hand, you get to live in Tokyo, not the suburbs of Buttfuck, Kansas!).

      Anyway, it's not at all hard to live a decent life in Tokyo on an income of say $60,000/year. If you make $30,000, of course, you'll end up living like a student, and if you want the super deluxe and insanely huge expat apartment on the top floor of a skyscraper in the most expensive area of the city then...yeah, then you'll need more.

      --
      We live, as we dream -- alone....
    50. Re:Software engineering is not a new concept. by phantomfive · · Score: 0, Offtopic

      To different people.

      --
      Qxe4
    51. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      That's called a "production artist", FYI.

    52. Re:Software engineering is not a new concept. by samkass · · Score: 1

      From the way I see it, the fundamental problem with outsourcing development is the communication and revision of requirements. Because the outsourced developers are so far removed from the actual users/customers, they have no way of calibrating their internal assumptions about what would make the customer happy. There is little chance for direct iteration or refinement. Thus, requirements must be over-specified and, like an old game of "telephone", what can be misunderstood will be misunderstood. It's not that India doesn't have brilliant developers, they're just too far removed from the battle to be worth what an American programmer is worth.

      The interesting part of that to me is the fact that this is also true in China, however China is rapidly developing a domestic market and many other Pacific rim countries have long-since done so. Thus, it's the American developers who are too far removed from this market. I wonder how that is going to change the outsourcing game. (Note that India is also a whole lot closer to China...)

      --
      E pluribus unum
    53. Re:Software engineering is not a new concept. by TheRaven64 · · Score: 3, Insightful

      Except the option isn't $40K in India, it's more likely $5-10K in India (which is above the average wage). If you go to work in the USA or Europe, you can probably save 2-3x the average wage back home every year. Go back 5-10 years later, and you can have a comfortable lifestyle and never work again.

      If you offer $40k in India, then you are likely to attract some good people, but you will also attract a lot of very poor-quality developers. Do you, as an American or European company, have people in India who can tell you which is which and won't be bribed (after all, if you're paying that much above the market rate, there's a good incentive for someone to pay half of their salary to the recruiter and get fired after a year; they'll still be in a better position than if they'd got a job at the average wage).

      The situation is very different if you are an Indian company with a decent amount of funding. In this case, you can offer a significantly above-average wage, only hire the best people, and still be paying less as wages than your western counterparts.

      --
      I am TheRaven on Soylent News
    54. Re:Software engineering is not a new concept. by rhathar · · Score: 1

      Not that you 'can't live' on $18k, but when I made that much it meant splitting rent in a crappy apartment with people I didn't know, working full-time while I tried to go to school (affording a community college) and driving a crappy car that my parent's paid the insurance on. And I had -no- money left over. And no social life. No parties (that I paid for), no vacation and I pretty much relied on Christmas and my birthday for things like 'new clothes'.

      --
      http://www.chaotickingdoms.com
    55. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 1, Insightful

      People don't realise that facing the tedium of all the menial tasks of all elements of everyday life is actually heroic (work, relationshiops, etc). Those menial tasks are the unavoidable practical application for all the grand ideas we have.

      A master crafstman produces a highly valuable piece of work precisely because he takes the frustrating time to properly apply the grandiosity of his vision. The grandiosity is important, but no-one can benifit from it if the craftsman can't be assed properly comunicating it from his head to others.

    56. Re:Software engineering is not a new concept. by phantomfive · · Score: 1

      Yeah, if I had the extra expense of college, I would be having trouble as well. I wouldn't be happy if I had to share my apartment.

      --
      Qxe4
    57. Re:Software engineering is not a new concept. by CodeBuster · · Score: 1

      and there's nothing Vineet Nayar can say or do about it

      Vineet Nayar and other CEOs of Indian outsourcing companies are hardly disinterested parties when it comes to knocking American developers and IT workers. People have to know that these CEOs are in cahoots with MPs and other high-ups in the Indian Government as part of concerted effort to increase outsourcing no matter what it takes to get that done (truthful and honest or not). If their credibility is not already completely wrecked then in another 10 years it probably will be. If IT is an important part of the business then why put your trust in people like Vineet Nayar? To paraphrase the parent, draw your own conclusions, but don't say that we didn't warn you.

    58. Re:Software engineering is not a new concept. by rhathar · · Score: 1

      Here in Southern California $400k will buy you a 2 bedroom condo that's ~700 sq.ft.

      --
      http://www.chaotickingdoms.com
    59. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 1, Interesting

      More americentric idiocy

      If you are a good Architect, and Master Developer, you do all, including your own "drone work" because you do not see it as beneath you.

      The most spectacular piece of development I ever saw done was by a Pure Mathematician. Peter, later Sir Peter, SwinnertonDyer who wrote, by himself, a compiler for EDSAC Autocode (like FORTRAN 4) in Altas Assembly language for the Titan (atlas 2), it took him 6 dedicated weeks, and had as few bugs as TeX.

      The real truth is that programming is VERYÂHARD and that most patterns, tools, methodologies ... do not really help. I have seen very well structured Assembly, in the Unix .s files in linux and bsd and also in os/360 and massively confused rubbish in C++ and Ruby.

      Note that BCPL, B, C, C++ all came out of Cambridge, England.

    60. Re:Software engineering is not a new concept. by Obfuscant · · Score: 3, Insightful
      Because it doesn't really matter as long as *your* house has [a toilet].

      Uhhh, yeah, it does. Shit has to go somewhere, and if it doesn't go down a sewer it tends to stay above ground. It's so much fun to kick back after a day at the office making your $40k, sipping your imported Coors Light to the smell of the next door neighbors' honey pots.

      Money really isn't everything.

      When you don't have any, yes, it takes on a certain importance.

    61. Re:Software engineering is not a new concept. by Nefarious+Wheel · · Score: 5, Insightful

      We outsourced a lot of development and IT to an Indian office, and found the experience to be most similar to managing a workforce composed entirely of interns

      We've found in our dealings with offshore developers that the Indians are very process minded. Very process minded. It's the superficially attractive "Paper Raj" that kills you. CMM level 5 certification, for example, is absolutely right down their alley.

      Problem is, CMM5 doesn't actually equate to delivery on time and under budget, just that your processes are correct (ref: Capability Maturity Model). For although process methodology and certification is the sort of thing that appeals to your non-tech execs and risk managers, it doesn't provide clue the first toward whether or not the firm can actually build or deliver to your specification.

      To make it work you need to be involved almost to the point of managing it yourself, and it's a fine balance whether the tradeoffs are financially worth it.

      So if you want process, cool, go to India for the job. If you want intelligent and clever design, you need an intelligent and clever person near you. It doesn't matter whether they're Indian or caucasian, M or F or alternative, brains come in all packages. But you need to find that person, yourself. Your outsourcer won't necessarily put the best or right person on the job you need done, they'll fill the spot. The "company full of interns" reference above is spot on and scary.

      --
      Do not mock my vision of impractical footwear
    62. Re:Software engineering is not a new concept. by NoodleSlayer · · Score: 1

      Around San Jose (where a lot of these tech jobs are) the median house price got up to 748k pre-crash, it's down to 550k now, and that'd be most likely for a smallish 2 or 3 bd house, and not in the area with the best schools.

      I just moved to Seattle, another area with a lot of tech jobs thanks to the likes of Microsoft and Amazon, the median peaked out at 391k, just a tad under 400. And most engineers with families are looking for houses that are significantly above the median, more likely in that "75th Percentile" range where the public schools are better. Especially around San Jose where paradoxically the public schools in the nicer parts of town are better at academics, and the private schools are better at sports.

    63. Re:Software engineering is not a new concept. by Trepidity · · Score: 2, Insightful

      Only if you measure "standard of living" purely by some fixed basket of possessions. I live in the SF Bay Area for under $50k, and I live a much nicer life than I did in Texas. Lots more entertainment is free, for example: I spent some time today walking along the cliffs by the ocean, which I live 2 miles away from. In my former subdivision in a Houston suburb, that wasn't an option, so I had to spend a lot more money paying for indoor entertainment. The terrible weather also makes a bigger living space a necessity IMO: a studio that I'm perfectly happy with in a nice climate where I'm a 30-minute walk from the ocean would drive me insane if I was cooped up in a studio like that in 95-degrees-and-humid Houston.

    64. Re:Software engineering is not a new concept. by Maxo-Texas · · Score: 1

      It's not living well.

      $50,000 is not living well in Texas.

      From my experience-- in Texas-- living well starts at about $105k. At that point, you have a good life and about $1k a month to blow while still saving.

      Below that, you can do things- but you have to make hard choices. At $105k+, you can pretty much do what you want. Get the hot tub, big car, pool AND still go skiing and on a trip to Europe while having cable TV and eating out (4,000 restaurants in Houston).

      Housing is a lot cheaper in Texas because there are no artificial land restrictions-- the trade off is that a car is required (which New York does not require). My experience with San Francisco was that a car was needed. But I wasn't there long so maybe I just didn't figure out the ropes.

      My friends who lived in california eventually could not afford a house. And after downsizing living quarters a couple time, they finally left california.

      Not sure if you have a wife, kids, pets. Your costs sound like a bargain if so.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    65. Re:Software engineering is not a new concept. by Trepidity · · Score: 1

      I live in the SF area, and both myself and nearly everyone I know make significantly under $80k. Amazingly enough, we aren't living in boxes or starving, either. Sure, I live in an apartment rather than a house, but I'd say living in an apartment 2 miles from the Pacific Ocean is a better quality of life than a 3000 sq ft house in the Midwest. I'd say my quality of life is pretty good, and I'd feel positively wealthy if I made $80k.

    66. Re:Software engineering is not a new concept. by phantomfive · · Score: 1

      Below that, you can do things- but you have to make hard choices. At $105k+, you can pretty much do what you want.

      You can't buy a private jet. Can't have a chauffeur for your limo. Can't have an American Express black card. 'Living well' is an extremely subjective measurement. I am happy renting, and around here it is a better investment for me at this time, but if you feel the need to buy a house, then you will probably need a much bigger income.

      --
      Qxe4
    67. Re:Software engineering is not a new concept. by Nefarious+Wheel · · Score: 1
      I'm in software engineering and I have a big four-wheel drive! I do. I love it.

      Of course, we have to live in it now...

      --
      Do not mock my vision of impractical footwear
    68. Re:Software engineering is not a new concept. by lgw · · Score: 1

      I work in Silly Valley, and the cost of living depends entirely on whether you feel you must own a house. Housing is still absurd, even after falling by nearly half. I rent a two-bedroom apartment, small by Texas standards but not too bad, with a garage and the like, and my non-capital costs are only about $40K. Taxes are hideous, but $80K would still let you take home enough to save a little, buy a new car occasionally, and so on, if you were single. Certainly not living like a student. OTOH, supporting a family on $80K would make it very hard to save anything.

      --
      Socialism: a lie told by totalitarians and believed by fools.
    69. Re:Software engineering is not a new concept. by Austerity+Empowers · · Score: 1

      Oddly I use vector calculus more in the software I write, than the hardware I design.

    70. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      I could live well on that wage in the middle of the country-- but it would be impossible in the upper east coast or the west coast.

      Consider that it would take the average indian programmer about 70 years to earn as a gross income enough to buy a "middle class" house in California.
      Rathole apartments are $50,000 a year in New York.

      Similar issues would exist in Tokyo.

      As someone who lives in Tokyo, I call BS. 15K a year for a new 50 m^2 apartment 20-30 minutes by train from Shibuya.

      I don't know much about New York, but I suspect your $50,000 figure is for apartments in Manhattan.

    71. Re:Software engineering is not a new concept. by Nefarious+Wheel · · Score: 1

      I don't think many people want to be cowboys either, for exactly the reasons you gave

      Momma, don't let your babies grow up to be cowboys

      Don't let 'em code or treat users too rough

      Let 'em learn process and business and stuff.

      --
      Do not mock my vision of impractical footwear
    72. Re:Software engineering is not a new concept. by Fulcrum+of+Evil · · Score: 2, Interesting

      Last I heard, 30-40k was the average wage for a good developer in india. Perhaps your figure is for call center ops?

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    73. Re:Software engineering is not a new concept. by LeafOnTheWind · · Score: 1

      I completely agree - you are right, software engineering can be difficult. Actually, I would consider professional software development to often be quite hard. Definitely harder than HR or one of the more "customer service" oriented positions.

      However, I think an important distinction needs to be made here. I would rather treat computer science as an academic discipline and software development as a professional one. It's not a perfect analogy, but I tend to think of computer science as the "electrical engineer" to the "electrician." Being an electrician is not easy and there are a number of codes and regulations that you have to follow, etc, etc, but you go to a professional school to be an electrician, not a university. Computer science, much like EE, should more appropriately be considered an academic discipline. A computer scientist can program, yes, but to quote Edsger Dijkstra, "Computer science is as much about computers as astronomy is about telescopes." Computer science teaches you to use programming as a tool to achieve your goal, which should be less about fulfilling a list of requirements and more about designing or architecting a system.

      In essence, pure "software developers" would use a database to store information exactly like it says on his/her spec sheet. The computer scientist would be designing the database.

    74. Re:Software engineering is not a new concept. by sbeckstead · · Score: 1

      Not exactly, right next door to me is a 3 bedroom 1.5 bath 1650 sq foot condo for $249,000 I live 43 miles from downtown Los Angeles but most of the jobs are less than 17 miles away I have a half hour commute and my wife and I make 6 figures. Now if we hadn't been stupid with the credit cards we would be in very good shape but the rent is close to $2000/mo. $400k right now in the San Fernando Valley will get you a nice 1900-2200 sq. ft. 3 or 4 bedroom 2 bath house with a postage stamp yard and maybe a pool. Eleven months ago this same house was going for over $700k and some upwards of $900k. Costs of living are coming down all over the nation. If you want t cheap house, in Detroit you can fine them under $16,000 but where would you work?

    75. Re:Software engineering is not a new concept. by hemp · · Score: 1

      I believe the recent law attached to the bailout bill that specifically limits outsourcing at institutions receiving bailout money many be behind this move.

      --
      Skip ------ See the latest from http://www.anArchyFortWorth.com
    76. Re:Software engineering is not a new concept. by dbIII · · Score: 3, Informative

      We outsourced a lot of development and IT to an Indian office, and found the experience to be most similar to managing a workforce composed entirely of interns

      There's a good reason for that. The most common scam is that as soon as the outsourced staff have learnt as much as they can from you they get reassigned to a more profitable projects and you end up effectively training a new guy for them. As for the attitude to customer data - it's not theirs so they really don't care.

    77. Re:Software engineering is not a new concept. by Fulcrum+of+Evil · · Score: 0, Flamebait

      I made $60K living outside the DC in NoVA suburbs and I got along just fine.

      So did I. In 2000, when you could get a house for under 200k. Good luck with that now.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    78. Re:Software engineering is not a new concept. by Money+for+Nothin' · · Score: 1

      A "a top investment bank which employs more than 10,000 developers worldwide"? There's a small handful of companies likely to fit this profile: MorganStanleySmithBarney (and other names this week?), Goldman Sachs, Merrill Lynch, Bank of Japan...

      I've yet to find an employer that has ever given a damn about quality in practice (even while they may talk a good game about it), and it's making me hate my job as a developer-consultant. I hate the "time-before-quality" mentality I've invariably experienced in the financial and consulting industries. I will have to google more for your firm and hope they are hiring! (In this economy? A financial firm?? Ha!)

    79. Re:Software engineering is not a new concept. by Maxo-Texas · · Score: 1

      $15k a year... so about $1250 a month for 450 square feet?

      Sounds like a nice place for a single person- but for a family and a dog?

      My computer room I'm sitting in is 225 sq' feet. My house is tiny at about 1800 square feet and runs 400 a month + 300 in taxes a year.

      The others make some good points about a good climate meaning you can spend more time outside.

      The heat doesn't bother me (spent 4-5 hours a day this weekend playing disk golf outside) but it does bother a lot of people.
      When I go to places with a "great dry climate", my nose and lips start cracking and bleeding- so I guess it depends on what climate is best suited for you.

      The climate is very nice here 8 to 9 months a year-- just the opposite months of elsewhere. Late september to late may is nice. No real winter.

      As for the rest- I can't vouch for what other people are saving, or doing in addition to having a living space with a pool table, home theatre, etc... A lot of people who I thought were well off turn out to have been overextended now that the economy has retreated.

      http://www.pricechecktokyo.com/housing.html
      Here is the rough idea for Tokyo on the web for rentals...
      Right now it is about 100 yen to the dollar (actually about 95ish) so divide by 100.

              Low end of the rental market
              For ¥35,000 a month, one can rent a 12 square-meters room. Such a room would have a sink inside and perhaps a stove for cooking. It would not have a toilet nor a bathroom. The community Japanese-style toilet (often being referred to as a "hole in the ground") is shared among six or seven people. To take a bath, one must visit the local public bath, at a cost of about ¥700 per use. We can't tell you exactly how many Tokyo residents live in places like these but there are a lot.

              Top end of the rental market
              These are properties geared towards the western expatriate executives. These houses would have American-sized electrical appliances which are too big to fit in most Tokyo apartments. Places like these would be 150 to 300 square-meters in size and the rent would range from ¥1,000,000 to ¥2,500,000 a month.

              Owning a place
              The average-of-the-average Tokyo married-couple may be looking to buy a brand-new 70 square-meters apartment at a cost of ¥45,000,000 and above.

              Notes
              Building standards and architectural designs here is quite different. For example, even for apartments with a floor space of about 100 square-meters, it is rare to find ones with two bathrooms and/or two toilets. That may seem strange to foreigners but the fact that Japanese families tend to share the same tub of water for bathing every night, it is merely practical to have only one bathroom in the house. Moreover, a 70 square-meter apartment would be marketed as a 3-bedroom apartment, i.e. rooms are small.

      My house is 6 miles from downtown-- very good location. Lots of free/low cost shows, concerts but nothing like other cities. A cartel has basically squashed entertainment here. You sign-- or you don't play the clubs they control. As a club, you sign, or you don't get any signed bands.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    80. Re:Software engineering is not a new concept. by ceoyoyo · · Score: 1

      I'm surprised the US hasn't still hasn't done this yet. Lots of other places have computer science degrees, software engineering degrees and even some "programming" or "software development" one or two year certificate and diploma programs at tech schools. As it should be.

    81. Re:Software engineering is not a new concept. by dragonturtle69 · · Score: 1

      But how many dependents on that $1,500 / mo., and is that Net or Gross? I'll guess Net, as Gross would work out to be $9.37/hr on 40 hr weeks, or less than what a team leader makes working fast food. Another view, that's $18,000 / yr, poverty level + 8k.

      I've lived on that, and less, and while more money doesn't equal happiness, it does equal a better overall standard of life for my family.

      --
      "What luck for the rulers that men do not think." - Adolph Hitler
    82. Re:Software engineering is not a new concept. by Quothz · · Score: 1

      I don't know much about New York, but I suspect your $50,000 figure is for apartments in Manhattan.

      A glance at craigslist confirms your skepticism. 50K a year will get a nice three-bedroom apartment in Manhattan; prices are often lower elsewhere.

    83. Re:Software engineering is not a new concept. by Sir_Lewk · · Score: 1

      Bullshit, I live in Philadelphia for *far* less than that, as do thousands of other people.

      --
      "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
    84. Re:Software engineering is not a new concept. by MrCrassic · · Score: 1

      While I love my T-Mobile Dash, as soon as I discovered where the quote stemmed from, I immediately dismissed it. HTC's products are far from the superstars they wish they were.

    85. Re:Software engineering is not a new concept. by Aurisor · · Score: 1

      Rathole apartments are $50,000 a year in New York.

      That's 4166$ / month. You can get a very, very nice apartment, even in Manhattan, for that price.

      Next time you're going to invent facts, don't make them so outrageous that people will go through the trouble of logging in to point out how wrong you are.

    86. Re:Software engineering is not a new concept. by SeanFromIT · · Score: 1

      You're right, that is exactly what Software Engineering is for. But I DID have to sweat 5+ required calculus classes to earn my Bachelor of Science degree in it!

    87. Re:Software engineering is not a new concept. by phantomfive · · Score: 1

      Indeed, you are correct. However, the original post was saying that $80k/year is barely a livable wage, which is silly and I take it to merely mean that he doesn't know how to live on less.

      --
      Qxe4
    88. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      It's not a perfect analogy, but I tend to think of computer science as the "electrical engineer" to the "electrician."

      That is not right. Perhaps you don't appreciate what real engineering is.

      Computer Scientist is closer to Materials Scientist (except we're more liberal artsy instead of physics-based). We figure out how the fundamental technological frontiers can be expanded and sometimes create proof-of-concept demonstrations of new technologies, but we don't really create viable products on our own.

      Software Engineer is closer to Electrical Engineer. They follow disciplined processes (sometimes legally constrained) to produce testable, reliable, and economical products in a commercial setting. Some of these engineers also participate in the legal codification which binds both their own profession and the legal (and safe) use of their products.

      System Administrator is closer to Electrician. They specify, install, and configure products made by engineers according to the instructions set forth by the engineers.

      And I say this as a fellow Computer Scientist, sometimes serving as a software architect in R&D software houses, but realizing I have more in common with a philosopher, inventor, or novelist than with an Engineer of any sort.

    89. Re:Software engineering is not a new concept. by Eli+Gottlieb · · Score: 1

      80K/year is "barely a living wage"? If you want a 4 bedroom house with a three car garage, 2 Hummers, 3 kids, a couple of dogs, and a 2-week overseas vacation every year, maybe.

      As your luck would have it, my family makes just about that much. We indeed have a 4-bedroom house, and 2 dogs. But we can only afford 2 kids, 2 cars (one of which is 12 years old and inherited from a dead relative), and a single week of vacation inside the United States per year.

      I suppose we might be able to "live it up" more if we didn't have to pay my university tuition (and soon my brother's) or save for the future.

      Riches ain't what they used to be. Mind you, we live in the Albany, NY area where a dollar still goes quite far.

    90. Re:Software engineering is not a new concept. by Eli+Gottlieb · · Score: 1

      Yeah, but then you have to put up with being told you're neither a Real Texan nor a Real American ;-).

    91. Re:Software engineering is not a new concept. by Maxo-Texas · · Score: 1

      I googled and got 2 bedroom apartments at $4k very easily.

      however, craigslist probably has more reasonable "working stiff" prices.

      Generally, rooms there vary from $1450 for 1br to $3599 for a "HUGE" 1800 sq foot 3 bedroom apartment (I pay 1/5th that for the same footage not counting a 16x23 added room for storage/fall/winter time).

      There appears to be a real deal for $600 a month at 21 S End Ave.
      Pet friendly-- 1br (fits a queen so 9x9 most likely).

      OTH, the financial district wants $1900 for a 1 bedroom. Prices range from $1600 to $3900 for 1br apartments.

      For $4166 / month, you can get a 4000+ square foot mansion on a a multi acre lot within 30 miles of your work in Texas.
      Or you can get a pretty spectacular apartment/condominium.

      I didn't pull the price out of my ass- it was from comments about housing in movies set in new york plus comments read on "friends" message boards about how ridiculous their apartment was compared to what they would have to have paid for it.

      It's expensive to live in california and new york.

      It's going to be damn hard for programmers there to compete with some guy in india who can live in a mansion with two servants for $15,000 a year.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    92. Re:Software engineering is not a new concept. by Maxo-Texas · · Score: 1

      The figure is probably for manhattan-- is that where friends is set? That's where about 80% of the prices I've seen came from- discussions on friends boards. Others were from movies set in new york or discussions about housing on those movie boards.

      But using craigslist to look around generally

      It looks like new jersey is $1600 to $4000 for 3br's, bronx is $1500 for 2br's, queens is $1500 for 3br's- including a couple very nice looking ones.

      My parent post was responding to this post:
      "80K/year is "barely a living wage"? If you want a 4 bedroom house with a three car garage, 2 Hummers, 3 kids, a couple of dogs, and a 2-week overseas vacation every year, maybe. Don't confuse "living wage" with "the American dream". There's a huge difference."

      $80k a year will not afford that life style in california or new york.
      $80k a year will not afford that life style in texas.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    93. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      It's just that the article is redundant, answering a statement that is also redundant, and using "hacker ethic" incorrectly to imply "cowboy coder".

      In summary:

      Hacker Ethic, good.

      Cowboy Coder, bad.

    94. Re:Software engineering is not a new concept. by Artifakt · · Score: 1

      What you're saying actually fits the concept of scientists in general. Science and Technology are basically very different things throughout human culture, but non-scientists and non-engineers almost never know it, and scientists and engineers themselves sometimes lose sight of it.
            A geologist doesn't get oil to market without a petroleum engineer or two getting involved. A Molecular Biologist doesn't test a potential breakthrough on Humans without MDs first being included.
              The law sets professional standards for MDs, engineers, lawyers and such, codifies ethics, and requires liscenses and performance bonds. Nobody makes a Physicist pass a state board to practice. Governments don't spell out specific ethical requirements for Chemists (much - there's some specifics for scientists who work for governments.).
              Of course there are exceptions. Theoreticians in Astronomy are often assisted by observers who are themselves full fledged Astronomers (but then, Astronomy doesn't produce a lot of technological spinoffs, and seldom indeed does an astronomer propose a new theory that needs an industrial engineer to deal with scaling up a process to commercial size). Architects and Civil Architectural Engineers face most of the same legal requirements whether they work together or separately. And we are just now bringing software engineers into a legal model where they are beginning to be responsible for deaths and massive damage in the way, say, aeronautical engineers are.
            In some ways, Lawyers are the engineer equivalents to legislators and judges. In some ways, the individual sciences aren't professions in the way the engineering branches are (there may be legal professional standards for acting as a scientist, as in how to properly publish or conduct peer review, but how many standards are there specific to some branch of science?). Military Officers would be the approximate equivalent of Engineers to their presumably more scientist-like civilian oversight.

      --
      Who is John Cabal?
    95. Re:Software engineering is not a new concept. by 5865 · · Score: 1

      There's no way for even a good developer to earn 30-40k in US dollars in India.

      The average is 10k for software developers and 20k for project managers.

      Maybe you've mistaken the figures for rupees per month, which also brings up the question why Americans love to quote their wages in per annum figures instead of per month figures.

    96. Re:Software engineering is not a new concept. by mcvos · · Score: 1

      Rathole apartments are $50,000 a year in New York. Similar issues would exist in Tokyo.

      How about working in Amsterdam then? Housing is expensive, but not anywhere close to what you're talking about. There's plenty of demand for programmers here, and co-worker with a rathole apartment dead center down town pays about $1400 a month for 40 m^2. I live within easy cycle distance of the center in a very nice 90 m^2 apartment for the same money. If you're willing to live outside the city (and a lot of people do), you can live a lot cheaper than that.

      The downside is of course that starting programmers don't get paid $80,000. More like $40,000 if you're lucky.

    97. Re:Software engineering is not a new concept. by dodobh · · Score: 1

      The average wage in India is around 20K USD. You may be thinking of managers here (who explicitly do not code).

      --
      I can throw myself at the ground, and miss.
    98. Re:Software engineering is not a new concept. by rhathar · · Score: 1

      I guess 'Here in Southern California' was a little too broad. I live in Santa Barbara, a.k.a the most expensive place in the world.

      --
      http://www.chaotickingdoms.com
    99. Re:Software engineering is not a new concept. by mcvos · · Score: 1

      "80K/year is "barely a living wage"? If you want a 4 bedroom house with a three car garage, 2 Hummers, 3 kids, a couple of dogs, and a 2-week overseas vacation every year, maybe. Don't confuse "living wage" with "the American dream". There's a huge difference."

      Two Hummers is rather extreme. There's no need to burn your money to make a point. Living in a city usually means a small car (or no car at all) is much more attractive. An SUV only makes sense if you live in a place that doesn't have paved roads.

      On the other hand, 2 weeks vacation isn't a lot by European standards. I get the impression we spend more on vacation while you spend more on cars.

    100. Re:Software engineering is not a new concept. by dintech · · Score: 1

      Yes they are hiring. One of the very few. That should narrow the search a bit if you google for news for who is doing well at the moment (vs. their peers).

    101. Re:Software engineering is not a new concept. by dintech · · Score: 1

      This company did not receive any bail-out money and isn't US.

    102. Re:Software engineering is not a new concept. by mcvos · · Score: 1

      $400K for a 4 bedroom house?!?! Now I might be wrong about the costs, but here in the midwest even in the larger cities, 400K will get you a huge house where a 4 bedroom house is more like $250K, new.

      In Amsterdam I paid $400k for a 2 bedroom apartment. Comes down to about $15,000 per year, because of tax benefits for house owners here.

    103. Re:Software engineering is not a new concept. by mcvos · · Score: 1

      Here in Southern California $400k will buy you a 2 bedroom condo that's ~700 sq.ft.

      That's exactly what I got in Amsterdam, although prices can vary quite a lot depending on the neighbourhood you live in. The old center is prohibitively expensive, newer areas are cheaper. I think the area where I live is the sweet spot: nice neighbourhood, not far from the city center, but still somewhat affordable. For us, anyway.

    104. Re:Software engineering is not a new concept. by Bob9113 · · Score: 1

      Computer Science gives you a deep understanding not just HOW to use computers but something deeper than that. It's a mixture of the maths, physics and philosophy that underpins the whole concept of computing. Knowing what is possible and how to get there helps create the engineers of tomorrow, not some desk jockeys that solve transient problems and are equally interchangable with counterparts from any country. Most blue chip graduate programmes look for thinkers and creatives - not spare parts for the corporate machine that can be 'sourced' at commodity rates.

      Witty and incisive. Well done. Keep up the good work -- the world needs more folks like you presenting these sorts of points in such a manner.

      Thanks!

    105. Re:Software engineering is not a new concept. by paganizer · · Score: 1

      Disclaimer: I've been mainly retired since 2004.
      I love the "Paper Raj" comment.
      Gods, I hate process Nazi's. Has anything innovative EVER been done with full process control?

      --
      Why, yes, I AM a Pagan Libertarian.
    106. Re:Software engineering is not a new concept. by drsmithy · · Score: 1

      Maybe you've mistaken the figures for rupees per month, which also brings up the question why Americans love to quote their wages in per annum figures instead of per month figures.

      This is hardly unique to America. It's the typical way to describe salary in (at least) Australia[0] and the UK, as well.

      [0] Wages in Australia are usually paid on a fortnightly basis, so saying you are paid $X per month would generally sound very strange, indeed.

    107. Re:Software engineering is not a new concept. by Yvanhoe · · Score: 1

      I think that you did a very interesting job at separating these two kinds of remarks. The thing you added emphasis on are constraints of the human nature, not very specific to hackers. The bold attitudes are what makes a competent developer. A hacker is a good developer that tries to have fun when developing, so he wants recognition, is lazy for repetitive tasks (documentation, procedures) and want to spend more time coding than managing human problems, hence the one-man team.

      Sorry about the over-romantic tone, but I would say that the hacker is a developer that broke free of the dull things.

      --
      The Wise adapts himself to the world. The Fool adapts the world to himself. Therefore, all progress depends on the Fool.
    108. Re:Software engineering is not a new concept. by Sobrique · · Score: 1

      Depends what you mean by innovative - it's obstructive certainly, but there's some areas where there aren't room for bugs or logic errors - there, innovative comes second to safety guarantees, and that's where you need process control.

    109. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      Hmm.. $50,000 a year for a rathole apartment in New York.. I wonder if that might be a bit of an overstatement? Well I live in Tokyo, very close to Shinagawa station.. I pay about $1,400 USD per month.. which is what.. a little over $16,000 per year... So is it cheap? no.. is it $50K per year.. not quite. My MBA classes, however, are...

    110. Re:Software engineering is not a new concept. by Vanders · · Score: 1

      I hate process Nazi's.

      We have our place. Yes, I am a process Nazi, as anyone who has worked with me will attest. The thing is, I know when to let it slide. When the customer is breathing down your neck for a critical bug fix, it's the only change in the build and the developers have tested it, that isn't a good time to demand a full system test. For example.

      Processes are a tool. I use them to make sure you've at least thought about what you're doing, and what the risks are, and then perhaps I can trust you to get on with it, safe in the knowledge that people are at least trying to do the right thing.

    111. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      Note that...C...came out of Cambridge, England.

      wat

    112. Re:Software engineering is not a new concept. by Tarwn · · Score: 1

      You mean tech-high concentration like RTP? I don't know the numbers for RTP proper, but I've seen numbers for Raleigh that said overall average income of $57k and overall average house cost of $175k.

      --
      Whee signature.
    113. Re:Software engineering is not a new concept. by CHJacobsen · · Score: 1

      80k is a fortune! As a student in Stockholm (which is the most expensive swedish city to live in), my total income is 75000sek (less than 10k usd) a year. I save around 25% of that, as well as any money i make from freelance work. Once i graduate, i expect to start off with a salary of 242000sek at most, giving me a gross income of 31-32k a year. After taxation, it goes down to around 22.5k a year.

      Even if you can get 80k a year, it's not a broadly sustainable salary. Some top-students might be able to get that right away, but if that's what you need to live, you really need to rethink your standards.

    114. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      If you're doing anything with algorithmic trading, the mentality tends to be "time before quality" until your company has it's first bug-driven blowup, at which point the developer who wrote the code that blew up is fired, and it becomes "quality and time". When a single sloppy bug can destroy your profits for entire the year, a clearing relationship, or the entire business, it's evolve or die.

      As an aside, quality and time are not exclusive: you need the really good people who can deliver quality in a timely fashion, which is why MS complains about hedge funds hiring the top developers.

    115. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      Uhhh, yeah, it does. Shit has to go somewhere, and if it doesn't go down a sewer it tends to stay above ground. It's so much fun to kick back after a day at the office making your $40k, sipping your imported Coors Light to the smell of the next door neighbors' honey pots.

      Don't be silly. If you're rich (by Indian standards), you'll live in a rich neighborhood, and your neighbors will also be rich.

      When you don't have any, yes, it takes on a certain importance.

      The parent didn't say money is nothing, he said money isn't *everything*. Furthermore, he talked about a situation where you'd be making 40k USD a year in India, which hardly counts as a "when you don't have any" situation.

    116. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      I have to agree.

      The summary basically says:

      "I don't know the differences between software engineering and computer science and am going to lump all American programmers in the comp. sci. group and all Indian programmers in the software engineering group then have a whine about how American programmers aren't software engineers".

      Sorry but what the fuck? The US has plenty of skilled software engineers. I'm more concerned about the amount of unskilled software engineers in India being allowed to unleash their binary turd on the world that I've been plagued with this last few years than anything coming out of the US.

      Now, I'm European and not the largest fan of the US, but come on, could this summary/article be anymore ignorant?

    117. Re:Software engineering is not a new concept. by jschrod · · Score: 1
      Quoting salries per years is usually more objective because it includes variable parts like bonusses, options, and other payments that are not done monthly.

      Dunno if Indian IT workers have them, but they are common in the Western World and thus there this type of quotation is preferred.

      --

      Joachim

      People don't write Manifestos any more -- what's going on in this world? [Frank Zappa]

    118. Re:Software engineering is not a new concept. by Hognoxious · · Score: 1

      the only reason why they develop rubbish (as has been done in the UK too) is that the people coming with the requirements don't have a fucking clue what they're doing.

      Decent developers should challenge the requirements, especially where the requirements are actually a proposed solution or even pseudocode.

      Indians (among others) are culturally disinclined to do this; it's considered rude to disagree.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    119. Re:Software engineering is not a new concept. by Hognoxious · · Score: 1

      Is that the city centre or the *wink* city centre?

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    120. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      Problem is, CMM5 doesn't actually equate to delivery on time and under budget, just that your processes are correct

      It does, however, give a pretty strong indication that if you say you'll deliver to time/budget/quality/scope that you're able to deliver to promise. And do so repeatably.

    121. Re:Software engineering is not a new concept. by ivucica · · Score: 1

      When you don't have any, yes, it takes on a certain importance.

      Yes, "if you don't have any". But don't expand that to "if you have little". If I can get a job $1000/mo (net) in Croatia, that's quite enough for me, thank you very much - as long as I can do the stuff I like. No matter if I can theoretically get $5000/mo (net) in the States for the same work: I value our food, I value speaking our language, I value my friends. And there's a lot of people I know that have the same attitude.

    122. Re:Software engineering is not a new concept. by Joey+Vegetables · · Score: 2, Insightful

      I haven't been to India myself but know a number of folks from both places in both places (including Americans of European descent who relocated there) and what they have explained to me is that a moderately above-average developer in India has two options.

      One is to stay in India, and if so, he or she will earn vastly better than average wages there, and thus be able to afford a fairly high standard of living, in some respects better than in the West. (For instance, he/she will be able to hire a maid, possibly even a driver, which middle-class people in the Western world typically cannot afford.) There will probably not be raw shit running down his or her street, any more than there would be in Sydney or Los Angeles. Not even in Mumbai or Kolkata, each with millions of people we in the West would consider desperately poor, are all or even most neighborhoods remotely like the slums depicted in Slumdog Millionaire.

      But for someone willing to take a risk, it is possible to travel to and work in the more developed world, earn significantly more $$$ at least according to current exchange rates, save a significant portion of that, and then return to India to live like a king (or queen) pretty much forever, or at least until wages, prices and living standards in India rise to achieve parity with the West.

      The danger is that one can easily fall into the trap that most of us in the West already have: to assume that the future will always be as lucrative as the present, and therefore to live at or above one's means rather than below it. This can result in the worst of both worlds: being a wage-slave in the U.S. or some other high-cost country, getting into debt, and ultimately returning home with little or nothing to show for one's time here.

    123. Re:Software engineering is not a new concept. by DrgnDancer · · Score: 1

      Has anything innovative EVER been done with full process control?

      Probably a good chunk of everything NASA has ever done, and a large percentage of anything done here in the States that involves either the words "nuclear" or "missile". Those are special situations though where tight processes are needed because being slightly out of the very tight working constraints will be nearly invariably fatal. I think process is like security. It's a big overhead, but it's necessary. The question becomes how important is it to the type of work you do and how many resources do you want to devote to it. To ignore it totally is to invite chaos that accomplishes nothing, but most likely it doesn't need to be perfect or even close to perfect in every industry. Submarines, air planes and rockets are places where it does.

      --
      I don't need a million points of light, just two points of multi-mode fiber and a 10 Gig-E router.
    124. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      80k/year is perfect if you don't mind living in a nice crackhouse within visual range of DC a block or two away from a Metrorail station and shitty connectivity. If you're lucky enough to live in NOVA that'll get you a one-bedroom apartment but the cost of fuel, state and local sales tax, and paying property tax on your car every year will bite into your budget. Be prepared to eat a lot of cheap takeout if you hope to keep a ride or two on your MetroCard.

      (ObDisclaimer: This is where I live. I never thought I'd miss Pennsylvania.)

    125. Re:Software engineering is not a new concept. by SQLGuru · · Score: 2, Interesting

      There is a difference between outsourcing and offshoring. We've got a lot of off-shore resources (and more work seems to be going there). But they are all company badged. With Outsourcing, it's all about the bottom-line (cheapest head available writing the code -- quality isn't even an afterthought). With Off-shoring, it's about cheapER resources but still getting decent quality (one can argue if it's as good or not). My experience is that you need a mix of on-shore and off-shore (with little to no outsourcing) to get quality at lower cost.

    126. Re:Software engineering is not a new concept. by Lord+Ender · · Score: 1

      When you're the only man with a toilet in your country, you will use it a lot, because your neighbors' lack of hygiene will result in frequent diarrhea and other contagious diseases for you.

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    127. Re:Software engineering is not a new concept. by azgard · · Score: 1

      I disagree. It's computers. We can program them to do anything. The question is, why there should be any boring or drone jobs at all?

      I would boldly propose that if you work in computer programming, and your job is boring, you are doing something wrong. You should work on how to automate the boring stuff, and I guarantee it suddenly won't be so boring. And if you can't for some reason, then it's outside of your control (for example, management problem). But in principle, work with computers never has to be boring, because you can always automate the menial parts of it.

    128. Re:Software engineering is not a new concept. by dkleinsc · · Score: 1

      At the same time, "programming" in the US tends to attract very smart people, and very smart people often overestimate their capabilities (often by underestimating the significance of things that don't interest them).

      Actually, virtually everybody overestimates their abilities. The classic example of this is around 70% of drivers thinking they are above average drivers (and yes, the skill of drivers roughly follows a bell curve with Dale Earnhardt at one end and a half-blind grandmother at the other). Plenty of stupid people don't think they're stupid, plenty of average-intelligence people think they're bright, and plenty of bright people think they are the next Einstein.

      --
      I am officially gone from /. Long live http://www.soylentnews.com/
    129. Re:Software engineering is not a new concept. by SQLGuru · · Score: 1

      I've never quoted my salary to include my bonus.....but I do quote it anually. A bonus is not always paid and is not a consistent sum. It's usually based on my performance as well as the company's performance. My salary is owed to me until I'm fired or leave on my own.

      You can't quote it hourly because as a salaried worker, you are paid "flat-rate" regardless of how many extra hours they con you out of.....errr I mean request that you work.
      You can't quote it daily because leap years change your daily rate.
      You can't quote it monthly because there are a variable number of days in a month.
      Annually is the only (natural) time window where the salary makes sense.

      You could always create an arbitrary time window (such as every two weeks -- which happens to coincide with my pay schedule). But in terms of "natural" time windows, annually is the only one that your salary wouldn't fluctuate based on. (Australian fortnight schedule not included because I'm an arrogant American.)

    130. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      Rathole apartments are $50,000 a year in New York.

      Blimey that's cheap (even given weak pound). You want to try living over here (in most any UK city), mate - you might have got a rathole apartment for that 20 years ago, but not these days.

    131. Re:Software engineering is not a new concept. by mcvos · · Score: 1

      Is that the city centre or the *wink* city centre?

      There's no difference. The winks are all in the city center.

    132. Re:Software engineering is not a new concept. by Cro+Magnon · · Score: 1

      That's part of my problem. When I started my job, there was all sorts of crappy code that needed fixing. I could be the "cowboy/hero". Nowdays, since I, and several others have pretty much cleared out the crap, things are mostly routine, and usually not that interesting. Much better run, but not as much fun.

      --
      Slow down, cowboy! It has been 4 hours since you last posted. You must wait another few hours.
    133. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      Having worked with code from India, I think they actually only put the newbies on the job. Working for foreign companies is probably some sort of paid training program for making more competent developers. There can't be any other explanation for the utterly shoddy, incompetent stuff these people churned out.

      I won't go much into the code, but it's illustrative to think that these people could not even spell words correctly. They spelt the name of our country wrong in the code. They spelt the names of our customers wrong. They made typos in the method names which proliferated via copypasting.

      Somehow the code looked superficially plausible, but the internal design was mush. It had taken them months to do what a competent developer could have put together in a week without anything but some high-level instructions about the product. I was hired to fix the mess once they tried to put it in production and noticed that it crashed randomly.

    134. Re:Software engineering is not a new concept. by jschrod · · Score: 1
      I live in Germany, and it is quite common here that in November a higher monthly wage is paid, both for hourly-paid workers (however that is commonly called in English) and for salaried workers. That additional payment is colloquially called "Xmas money". Alone for such non-regular payments only annual numbers make sense.

      For employees with a very high percentage of variable payment or for self-employed folks, it is common here to name a range for the annual salary that shows the expected range of bonuses one likely gets. E.g., I'm the CEO of a tech consulting company, and my variable payment is usually around 30% of my annual income. Just naming my fixed income would not provide any meaningful amount.

      --

      Joachim

      People don't write Manifestos any more -- what's going on in this world? [Frank Zappa]

    135. Re:Software engineering is not a new concept. by Maxo-Texas · · Score: 1

      I drive an Element. Technically an SUV but it gets about 22mpg. Useful for moving stoves, construction supplies, and durable at the beach and after ultimate.
      Two week overseas vacation seems like it would cost $4200 if you skimped it up to $6000 for a no holds barred "middle class" vacation ( I know the wealthy could drop $10k a day easily but I'm not talking about them).

      I save about $18k a year for retirement. Another $8k a year in company stock. On top of that I'm currently saving $1k a month until I hit a year's living expenses- the economy has me worried.
      On top of that I spend a couple weeks a year in a nice beach house on a cruddy beach (because we invite our friends to party we can't go to the nice beaches 200 miles away) and I go skiing for a week. The low cost of living gives me a very high degree of freedom. I'm not back up to my contractor wages in 1996-2000 but life is good.

      I see a lot of movies and concerts but few plays. In the end, I basically live on about 1/3 of my salary. That's what the low cost of living will get you. Once my savings goals are reached, I'm going to spend like a drunken sailor.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    136. Re:Software engineering is not a new concept. by Maxo-Texas · · Score: 1

      I live on a lot less. I live on about $36k a year-- I save the rest of my salary.

      $36k a year - about $48k gross equivalent gets me a new car, house, ski trip, 2 weeks in a beach house, movies, concerts, regularly eat out, a dog, new clothes, etc.

      Since I make over double that, my goal is to be ready for retirement by the time I'm 55. Once I'm set for retirement, I'll spend more.

      Fact is the cost of living is substantially higher in california and new york by cost of living calculators.

      You might have some special deal, or you may be making choices which are not sacrifices to you but which would be sacrifices to most people.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    137. Re:Software engineering is not a new concept. by mcvos · · Score: 1

      Two week overseas vacation seems like it would cost $4200 if you skimped it up to $6000 for a no holds barred "middle class" vacation ( I know the wealthy could drop $10k a day easily but I'm not talking about them).

      Spending one month's income on vacation is pretty normal around here, but it doesn't have to be that expensive. I've had an awesome two weeks' vacation to Mali for less than $2000 (for one person only, though), and my wife and I went to Egypt for about $1000 each.

      But I've got the feeling that Americans are less vacationers than Europeans. In much of Europe, 5 weeks vacation per year is bog standard and most people get more, while I get the impression most Americans get less. Your average Dutch middle class family goes skiing in the Alps in winter and to a beach in France or Spain in summer.

      In the end, I basically live on about 1/3 of my salary.

      That's smart. Leaves with a lot of disposable income (or savings, if you're even smarter).

    138. Re:Software engineering is not a new concept. by phantomfive · · Score: 1

      That's great, sounds like you are living well by most people's standards.

      --
      Qxe4
    139. Re:Software engineering is not a new concept. by Maxo-Texas · · Score: 1

      I agree that our vacation sucks.

      I made a deal with my company when I hired on that I get the option to take up to 5 days without pay. I usually only take 2-3 days (balance between keeping the right and getting the money).
      I feel like we work until we are too old to enjoy life in America.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    140. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      The company is HCL, not HTC.

    141. Re:Software engineering is not a new concept. by vuffi_raa · · Score: 1

      80K/year is "barely a living wage"? If you want a 4 bedroom house with a three car garage, 2 Hummers, 3 kids, a couple of dogs, and a 2-week overseas vacation every year, maybe.

      I live in San Francisco- seriously you can't even buy a rathole making 80k a year here (let alone the other crap you listed)- I have been making (until laid off recently like the rest of the world) about 70k and have been making ends meet in a 1 bedroom apt. with the wife and saving just enough that we not homeless right now with the economy shitting and having to live from contract to contract till full time positions open somewhere

    142. Re:Software engineering is not a new concept. by sjames · · Score: 1

      Of course, a primary objective is that when someone in a suit kicks you, you must say "MOOOOOooo" as a conditioned response.

    143. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      Ahem. I have made a poor wage for some time now. I live in Michigan, guess why I make so little. The bare minimum for me, living alone, is $8,600 a year. In America. Try living on that. I hope you like ramen.

    144. Re:Software engineering is not a new concept. by Fulcrum+of+Evil · · Score: 1

      Flamebait? I merely speak the truth - paid $169k for an ok townhouse in 2000 that is probably $300k-350k now.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    145. Re:Software engineering is not a new concept. by Fulcrum+of+Evil · · Score: 1

      I mentioned the wage gap to some bosses 1 job ago and they (fresh from a trip to the india office) quoted the cost ratio at about 1.8:1, hence my estimate on wages.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    146. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      I can't put my finger on it but it seems like there's something wrong with the notion that people are entitled to earn a living wage in a region where housing prices are orders of magnitude more than comparable living spaces in the greater region. The prices in theses places aren't driven up by competiton for scarece resouces. They're auctioned up by popularity so I'm not sure I can feel bad for people who choose to live there, especially if the $80,000/year paycheck doesn't support they lifestyle to which they are accustomed, read: "living the good life".

    147. Re:Software engineering is not a new concept. by sjames · · Score: 1

      There's a lot of ground between drone and cowboy.

    148. Re:Software engineering is not a new concept. by dodobh · · Score: 1

      That's the gap at lower levels now. My numbers are for people with ~ 8 years of experience.

      --
      I can throw myself at the ground, and miss.
    149. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      Rathole apartments are $50,000 a year in New York.

      As someone who lives in New York City, I say to that: HAHAHAHAHAHAHAHAHA

      That's directed to you, Mr. Person-who-pulls-numbers-out-of-his-ass

    150. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      Fair enough. You can add anything to do with planes.

      What's always missing from these justifications of why "full process control" is desirable is when it's possible to achieve.

      In just about all those cases, the software will run on at the very least highly specific, and often enough completely custom, hardware built with reliability in mind. It has extremely long lead time, with requirements set in stone years before development begins. No money is spared on testing (the shuttle software group famously has access to a real flight simulator with real astronauts flying test missions as a test bed). The customer accepts "when it's done" as a shipping date, especially since the hardware that goes with it is under the same constraints. Development is often in-house or paid cost-plus, either way cost is no object, which isn't an issue since the hardware again costs so much more. And let's not forget that the software itself tends to be simpler; for a start there's rarely if ever any idea of long-term storage, or multi-user capability.

      When all (most) of the above hold, then you can implement that kind of control and expect good results.

      But even then you do get bugs. The F-22's date line crossing. The Ariane 5 floating point conversion. The Mars Climate orbiter imperial-metric mismatch. And that's just a few that were highly publicized due to a spectacular failure. There's no telling how many lesser bugs plague those systems. I seem to remember a mars rover running out of memory at some point.

    151. Re:Software engineering is not a new concept. by ksheff · · Score: 1

      Five weeks of vacation would be great! Unfortunately work always gets in the way, it seems like I always have to scramble at the end of the year to figure out when to take the 3 weeks I get. My employer will only let us carry over 1 week from year to year, so if one doesn't take the time in excess of that, it is lost. It would be nice to just carry all of it over or just get paid for the excess, but the HR people don't want to do that for some reason.

      --
      the good ground has been paved over by suicidal maniacs
    152. Re:Software engineering is not a new concept. by mcvos · · Score: 1

      Plan your vacation in advance. Go to Africa in winter, to the beach in summer, and if you've got anything left, spend December with your family.

      Despite my 5 weeks of vacation days, I always need more.

    153. Re:Software engineering is not a new concept. by ksheff · · Score: 1

      You must have skipped over the part about work getting in the way. Last year was the first year I actually used up all my vacation and my father had to die in order for that to happen.

      --
      the good ground has been paved over by suicidal maniacs
    154. Re:Software engineering is not a new concept. by mcvos · · Score: 1

      It's your employer who made the rule that you can't save all your vacation for next year, right? That means your employer is forcing you to go on vacation this year. If he doesn't let you, you've got every reason to take all of December off. He can't give you vacation days and then forbid you to use them.

    155. Re:Software engineering is not a new concept. by ksheff · · Score: 1

      No, you get vacation days and put on projects with deadlines such that you can't ever really take time off. Even if you do, in reality, you spend them working on these projects at home.

      --
      the good ground has been paved over by suicidal maniacs
    156. Re:Software engineering is not a new concept. by beerbear · · Score: 1

      Don't. It's HLC he works for, not HTC.

      --
      Hold my beer and watch this!
    157. Re:Software engineering is not a new concept. by beerbear · · Score: 1

      Yeah, that suits me fine. Correcting a typo with a typo. Should be HCL.

      --
      Hold my beer and watch this!
    158. Re:Software engineering is not a new concept. by Anonymous Coward · · Score: 0

      I make 80k a year, almost exactly. I have three kids, two with medical problems, including autism. I have a house, which I am fighting to keep out of foreclosure. I have a minivan - with a crashed windshield and a caved in door because I don't have the money to fix them. I don't have a garage, though I do have a gravel driveway. I have a bunch of cats, but no dogs. My 'vacations' consist of taking my kids to the doctor. I don't have any PTO left after that. I've not been overseas since I was 11, and that was to Hawaii.

      Ah, yes, I have the American dream....

    159. Re:Software engineering is not a new concept. by JSlope · · Score: 1

      There are a lot of on the phone interviews before you hire a foreign developer.

      --
      ResoMail - the alternative secure e-mail system
    160. Re:Software engineering is not a new concept. by TheRaven64 · · Score: 1

      And how do you know that the person on the phone interview is really the person applying for the job, not just someone they've hired for half an hour?

      --
      I am TheRaven on Soylent News
    161. Re:Software engineering is not a new concept. by JSlope · · Score: 1

      If you're so paranoid you can do an interview on a web cam, or if you have an office there you can do an interview in your office, so somebody whom you trust can supervise it on the other end.

      --
      ResoMail - the alternative secure e-mail system
  2. Summary error by IamTheRealMike · · Score: 4, Informative

    HTC is a Taiwanese electronics firm. The CEO in question is (according to the previous summary) running HCL Technologies. Of course if the previous summary is inaccurate as well, this is also wrong. But that's slashdot - they should replace the /. logo with a box of chocolates ...

    1. Re:Summary error by digitalgiblet · · Score: 4, Insightful

      American Blog Editors are UNEMPLOYABLE!!

      In other news... Non-American Person who is CEO of Non-American company who wants to win contracts in America says Americans are not as good as his workers. Not saying he is wrong, but sometimes it is helpful to consider the source and evaluate any potential gain they have from the pronouncement in question.

    2. Re:Summary error by Anonymous Coward · · Score: 0

      Posting AC because I just modded up you and the one other guy who pointed this out.

      In general I'd like it to be standardized that when incorrect information like this is posted, the people pointing it out would propose tags we could go vote with. In this case its obvious enough to tag the article with !htc and hcl.

  3. Stop posting McAllister. He's the new Dvorak. by AKAImBatman · · Score: 4, Insightful

    Let me make this as clear as I can make it: Neil McAllister is an idiot. Stop posting his "stories".

    To be sure, self-taught 'cowboy coders' -- the hallmark of today's programming generation in America -- are technically proficient, McAllister writes, 'but their code is less likely to be maintainable in the long term, and they're less likely to conform to organizational development processes and coding standards.

    And yet no evidence is offered as to why that's true. It simply is. Accept it on face value.

    Not.

    As a "self-taught coder" (remove the "cowboy", because that has completely different implications) I am regularly frustrated by the coding practices of my more learned colleagues. Or more precisely, my colleagues who have more college backing behind their code.

    Bull^H^H^Hachlor's Degrees, Masters Degrees, PhDs, it doesn't matter. At the end of the day they still cram code into an editor with little regard for the reasoning behind the coding practices they follow. In result, those practices become useless as they overarchitect the system into a corner. (Or at a lower level, smoosh so much code into view that it becomes unreadable.)

    In my experience, if they don't have years of experience under their belt to understand the purpose behind coding practices, then all the practices they teach you in college are for naught. A more senior individual still needs to guide the code in the right direction, regardless of education.

    There you go. My anecdotal evidence that disproves your unfounded assertions. Are we all happy now?

    1. Re:Stop posting McAllister. He's the new Dvorak. by Anonymous Coward · · Score: 0

      If I had mod points, you'd get one.

    2. Re:Stop posting McAllister. He's the new Dvorak. by hedwards · · Score: 4, Interesting

      I have to admit, that I'm skeptical that coders now are any more cowboyish than they used to be. I mean I've read stories about how Bill Gates and Paul Allen used to handle Micro Soft's products early on before they changed the name and locale. Somebody will have to explain to me how today's coders can be any worse than they were.

    3. Re:Stop posting McAllister. He's the new Dvorak. by computational+super · · Score: 4, Insightful

      Well, in college's defense - college doesn't even try to teach you the things that you need to learn by experience (although four years of college under a computer science major does equate to probably one or two years of real-world experience), but instead teach you all the things that you might never come across in "real life" but that are actually useful (such as NP completeness, Turing's halting problem, push-down automata, queuing theory, red-black trees, binary searches, "big O" notation, etc. - plus, you know, calculus, linear algebra, statistics and maybe even a smattering of history, literature, sociology, hard science, and so on) The things you need to learn by experience can only be learned by experience - I've never heard anybody suggest that a college education is a substitute for experience. I'm not familiar with any college curriculum that covers things like source control, makefiles, modularization, making sense of a program that was written ten years ago, reverse-engineering code that you no longer have source for, effective use of a debugger etc. etc. - the idea is that you're supposed to go to college and then get experience and then finally become a well-rounded programmer.

      If you know how to code, you're a self-taught coder... college is too busy teaching all the other stuff to waste it's time teaching you how to actually code.

      --
      Proud neuron in the Slashdot hivemind since 2002.
    4. Re:Stop posting McAllister. He's the new Dvorak. by stephanruby · · Score: 1

      Let me make this as clear as I can make it: Neil McAllister is an idiot. Stop posting his "stories".

      He is an idiot. Confusing "HTL Technologies" with "HTC" is a serious mistake (here is the original article he misquoted). It's cowboyish and sloppy. Such a blatant mistake couldn't have survived the watchful eyes of a fact-checker/editor. That being said, it speaks volume about Infoworld, and the kind of process it has for reviewing articles submitted to it.

    5. Re:Stop posting McAllister. He's the new Dvorak. by dballanc · · Score: 3, Interesting

      This is the approach that my college took, and I have to say I find it a horrifyingly bad one. One or two courses could easily extend education to cover actual use of tools, and common practices in industry at the time.

      Having personally graduated from a 4 year college with a CS degree with very little real experience is something I found extremely frustrating. I finally came to the conclusion that the lack was primarily due to the educators themselves lacking real-world experience, and happily living in their own little world of academia.

      I do believe strongly in the approach of teaching students how to learn over teaching them specifics and the benifits of a broad education. What irks me, is that it should be possible to do both - but where I went they didn't even offer electives that I could have optionally taken to expand my horizons.

    6. Re:Stop posting McAllister. He's the new Dvorak. by mrlibertarian · · Score: 1

      ...those practices become useless as they overarchitect the system into a corner.

      Can you expand on this? I thought that over-architecture means that your code is very abstract and modular, perhaps to an unnecessary degree. Certainly, there are disadvantages to over-architecting, but how would it force your system "into a corner"? I would think that under-architecture would be the most likely cause of hard-to-change code.

    7. Re:Stop posting McAllister. He's the new Dvorak. by MarcoAtWork · · Score: 3, Interesting

      I think you forget one thing, there are no college courses about

      - what to do if a task you scheduled for 6 weeks gets cut to 2 due to somebody in management arbitrarily deciding that 6 weeks "is way too long"
      - what to do if you are asked for a detailed estimate of a 2-3 month long task in an area you are not familiar with 'by the end of today' and that estimate will be binding
      - what to do if your technologically sound solution is shot down 'because this would cost too much to implement, can't you hack something for the next release next week'

      etc. etc. etc.

      If put in a job that rewards creating good quality code, good developers will flourish, if put in a job that rewards 'just hacking something together' then the 'self-taught coder' usually will do better because they won't even have to waste time architecting or really thinking, they'll just take the requirements and run with it, whether or not the requirements make sense and whether or not the resulting product will be mantainable, documented, working, or any combination of the above.

      What the US needs, rather than better schools/programs, is better companies focused on creating quality products, not companies that just because there is a perception that 'coding/coders are cheap, we can also outsource' get by with the absolute minimum of quality the market will tolerate.

      --
      -- the cake is a lie
    8. Re:Stop posting McAllister. He's the new Dvorak. by hairyfeet · · Score: 5, Interesting

      This will probably get me modded down, but what the hell, i got karma. You want to know the REAL difference between an American and an Indian coder, and why they think of us as "cowboys"? One word: Adaptability.

      Working on this job with a really sweet Indian girl, who was quite happy to be an American citizen now and said she wouldn't go back if you paid her, I asked why does Indian tech support suck. This was after we were all rolling on the floor laughing as she dealt with tech support by cursing them in Hindi when they told her to reboot again. She rolled her eyes and said "it isn't just the tech support, it is the programmers too. I would take one American over a dozen of my countrymen if they have never lived here for any length of time". She then sat down and explained it like this-

      "It is the caste system" she said, "There you NEVER question those above you, ever. if your boss says the sky is purple and 1+2=12 then that is the truth. You never question those above you for any reason. Which works fine as long as it is something that can be written down and followed step by step. But life and computers rarely work that way. They always throw you curve balls and pull weird things that somebody forgot to write down. In those cases the American will "pull a Macgyver" and make it work. The Indian will just be lost, as you just don't do things like that. That is why I am quite happy to be here, thanks."

      So if you want to know why they think of us as "cowboys" there you go. It is because an American will try to figure out a weird problem while the Indian will wait on his/her boss to tell them what to do. Which is fine if you want nice little drones that can't think for themselves, but we just aren't built like that. And I for one am quite happy about that. So call us "cowboys" all you want, but it gets the job done.

      --
      ACs don't waste your time replying, your posts are never seen by me.
    9. Re:Stop posting McAllister. He's the new Dvorak. by Lord+Ender · · Score: 1

      Software engineering is an art distinct from the mathematical concepts of computer science. Those who are self-taught and those who studied only CS are unlikely to have discovered all the important aspects of the production and maintenance of large, complex software projects--without many many years of experience, that is. McAllister is correct in this respect.

      Our universities do a disservice by sticking students in computer science programs while software engineering is more aligned with the goals of the vast majority of students.

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    10. Re:Stop posting McAllister. He's the new Dvorak. by Lord+Ender · · Score: 2, Interesting

      Sure--and mechanical engineers should just learn the mathematical models of bridge design in school. It's not the school's job to each them case studies and practical skills. They can learn that from experience after the first few bridges collapse.

      (If you missed my point: it is horribly horribly stupid for schools to excuse themselves from teaching things simply because they could be theoretically be discerned through "experience.")

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    11. Re:Stop posting McAllister. He's the new Dvorak. by Anonymous Coward · · Score: 0

      I completely agree that a bachelors in CS is not substitute for experience, and you really won't get that for some time after college. I'm still an undergraduate and fully aware that I do not have the experience and skills I need to be a well-rounded programmer.

      However, the things you listed as "not covered" ARE covered in the courses I have taken. Perhaps this is a difference in qualities of CS programs, but it is certainly not true that

      source control, makefiles, modularization, making sense of a program that was written ten years ago, reverse-engineering code that you no longer have source for, effective use of a debugger etc. etc. -

      are not covered, good CS programs do - and should - cover them.

    12. Re:Stop posting McAllister. He's the new Dvorak. by bill_mcgonigle · · Score: 1

      Let me make this as clear as I can make it: Neil McAllister is an idiot. Stop posting his "stories".

      Why not? They generate tons of page and ad views from people feeding the troll, people complaining about the troll, and people explaining that they're ... ah, hell.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    13. Re:Stop posting McAllister. He's the new Dvorak. by Anonymous Coward · · Score: 0

      Well said.

      My first class where we used C was 2nd year. We were recommended a good book, a site or two, and then informed that our first assignment would be a C program that was expected to work properly, and no time in class would be spent learning the language. If we wanted to survive as computer scientists, we had to learn to learn.

      I enjoy a great job today. I also did great in that class because it challenged me. I won't speak for others.

    14. Re:Stop posting McAllister. He's the new Dvorak. by gbjbaanb · · Score: 3, Insightful

      That part of the 'cowboy' insult is quite valid, a cowboy coder can get things done that a more regimented,unimaginative coder will not be able to do. However, after hacking together a fix, does the cowboy sit down and document it? update the readmes, change logs, even update the bug ticket or put in lots of relevant comments?

      No. And that's the insult - not the technical skill, the enthusiasm, the keenness to fix things. Its the lack of polish that is the true problem with the cowboys. Fix that and you become a professional programmer, and that is when you've learnt to be a true master.

    15. Re:Stop posting McAllister. He's the new Dvorak. by mdarksbane · · Score: 1

      I actually had several courses exactly like that. I had a ton that were a waste of time, but several of my engineering courses and software engineering courses were very much about balancing time and costs (in terms of equipment available and man hours) versus requirements. I got even more of that in club projects like FIRST robotics.

      Ohio State University CSE class of 2006, in case you were interested.

    16. Re:Stop posting McAllister. He's the new Dvorak. by computational+super · · Score: 1
      good CS programs do - and should - cover them

      On the contrary. Good CS programs don't - and should not - cover things like, for example, use of a debugger. Instead, you are (or should be) given mentally challenging assignments - learning, on your own, how to use a debugger, is (your) part of completing that assignment.

      --
      Proud neuron in the Slashdot hivemind since 2002.
    17. Re:Stop posting McAllister. He's the new Dvorak. by computational+super · · Score: 2, Insightful

      No, they should give you small, non-lethal assignments that force you to learn (the rudiments of) those things on your own. That's why I say four years of college probably = one (maybe two, depending on the student) years of "real" experience, because you're cutting your teeth on spoon-fed, "toy", didactic projects. College is not, and should not be, vocational training. That's what vocational training is for.

      "I hear, and I forget. I see, and I remember. I do, and I understand" - ancient Chinese proverb.

      --
      Proud neuron in the Slashdot hivemind since 2002.
    18. Re:Stop posting McAllister. He's the new Dvorak. by MarcoAtWork · · Score: 2, Interesting

      lucky you I guess, I have a MS and as much as there were plenty of courses about how to balance things that could be balanced, I wasn't exposed to the 'hack it now, fix it later, assuming there is a later' mentality until I entered the business world.

      In university the cost/benefit analysis always assumed a certain minimum level of product quality, and a certain minimum level of 'fit for consumption'-ness of the end result, therefore cost/benefit estimates tended to have reasonable constraints.

      It's like if in uni you have a cost/benefit analysis between gold plating and nickel plating of your widget, while in the business world your choice is between

      - no coating with guaranteed rusting in a year (but then hey, you sold it, so whatever)
      - make it of cardboard (look, this can't rust!)
      - trying to photoshop a drawing of the widget to make it look like it's been developed, and sell an inferior widget that doesn't even meet the use case with vague promises of a future 'patch' that will fix the customer issues

      when I was in uni I read dilbert for fun, now after 10+ years in the industry the feeling I get when reading it is a lot closer to 'been there done that' rather than 'hahaha, he is so funny, where does he get these ideas from'.

      --
      -- the cake is a lie
    19. Re:Stop posting McAllister. He's the new Dvorak. by Anonymous Coward · · Score: 0

      source control,
      makefiles,
      modularization,
      effective use of a debugger

      The above are commonly taught in 2 year diploma classes, including the one I took. They are usually taught along side C++ or something else.

    20. Re:Stop posting McAllister. He's the new Dvorak. by kramulous · · Score: 1

      I'm experiencing a slightly similar problem with some of the graduates we are employing. There is a distinct divide. Those who received the top awards, topped their classes and walked away with the university medals seem to find it very difficult to follow instructions without a step by step set of instructions. Those that were around the middle of the pack or lower but definitely displayed the aptitude don't struggle at all with the lack of a manual and are the ones that I tend to rely on more.

      Now, some people will say that it is my fault that I haven't set out a script/specification. But it is impossible for me to know even a fraction of everything. I simply don't know. I concentrate on Code optimisation, parallelisation and some visualisation. How can I know about which method is best/appropriate to daisy chain remote sensing devices and collect results to a data repository?

      --
      .
    21. Re:Stop posting McAllister. He's the new Dvorak. by Javaman59 · · Score: 1

      Which is fine if you want nice little drones that can't think for themselves, ..

      A good manager deals with this problem by ensuring that specifications are complete, accurate, unambiguous and testable. Then they can be passed on to the drones. Then use a good metrics system to manage the drones.

      I was in the 80's, and it wasn't a hacker culture at all - the Waterfall Model (sighhh..) ruled. I was once asked in an interview - "Do you believe that there's one way to do things?" (the right answer was "yes"). People got rich selling waterfall oriented products, people got promoted by blustering about "doing it R*I*G*H*T", project failures were attributed to lack of process. A good programmer produced 10 lines of code per day.

      It's easy to see where software's gone wrong. The waterfall model was abandoned and the industry just started banging out lots of useless software which often fails.

      Bring it back, I say!! But this time, we just need better tools, better processes, better managers and better programmers. Especially tools, tools, tools, tools, tools....

      --
      I'm a software visionary. I don't code.
    22. Re:Stop posting McAllister. He's the new Dvorak. by macshit · · Score: 1

      I don't think this guy is really advocating "learned coders", he's advocating coding monkeys: coders that will meekly follow whatever wacky development model he subscribes to this week without question. What he hates is independent thought.

      --
      We live, as we dream -- alone....
    23. Re:Stop posting McAllister. He's the new Dvorak. by networkBoy · · Score: 4, Interesting

      The way we dealt with that was simple (if a bit patronizing). We have a couple "cowboys", myself included. We blaze proof of concept code in whatever the heck language suits our needs for a task at hand. The task is defined as we have these constraints, these goals, and need this data to sift out (this is machine test code). One of us will hack it up in a quarter or two*. Then it is handed off to the test engineering team to make a polished product out of it (usually in C/C++). During this transition we are answerable to the test devs at their leisure and whims, thus if you didn't doc things you'll be in more meetings (and who wants that, when you could be hacking the next shiny thing together).

      It works exceptionally well, as we can react quickly to somewhat amorphous changes to the initial spec, that usually come about as the prototype code is actually run and people realize that "hey it'd be nice to have this", or "that does what I said, but not what I want". We've all encountered this before and it's horribly frustrating when changes like this have to go through committee after committee, and ECOs and all that assorted crap. By doing it as a one man hacker get-er-done these changes become less problematic, some get pushed to the formal re-write, others get implemented quickly. The best part is it basically forces the almost universally needed refactor every product could use, but never gets. The stuff that shows up on The Daily WTF.

      -nB

      *yes, we get about 6 months to produce properly working code. My last project was about 8 months, 60K lines of perl, 5K lines of C++, and about 4 major changes in architecture, 2 of which were ultimately reverted. In fact this latest one is good enough as prototype that they are not re-writing it and are simply running with it. Downside there is now I have to write _real_ documentation, not just code notes.
      so another couple months writing about 200 pages of usage docs, and 400 pages of API docs...
      -nB

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    24. Re:Stop posting McAllister. He's the new Dvorak. by Anonymous Coward · · Score: 0

      OK, most of that is good sense, what isnt is the lack of understanding that you CAN NOT teach people to program so all the patterns, methodologies, tool kits, .... are all cover for the academic cry "why the hell can we not teach them to program, in 1970. to ... why cant we program ourselves today".

      The answer is that programming well is very hard and can be done well by very few, which means that they are rare and expensive.

      Many idiots have tried to ignore this, and in some of the Major Banks, managers managed to move on before they were found out.

      Now, Risk and Derivative Pricing can not be let to these idiots!

    25. Re:Stop posting McAllister. He's the new Dvorak. by Anonymous Coward · · Score: 0

      I've dealt with a number of Indian programmers, on-short and offshore. They have had a lot in common with computers. Meaning that they do what you tell them to do, rather than doing what you want them to do. So in effect, you place much of the actual job of programming on whoever manages the programmers. Or in plain English, you've added a middleman to the process. Granted, a cheap middleman, but a middleman, nonetheless.

      I also know a few stand-out original Indian programmers. But the more common ones can't do basic coding unless an IDE or another person handles the bulk of the load.

    26. Re:Stop posting McAllister. He's the new Dvorak. by Peter+La+Casse · · Score: 1

      On the contrary. Good CS programs don't - and should not - cover things like, for example, use of a debugger. Instead, you are (or should be) given mentally challenging assignments - learning, on your own, how to use a debugger, is (your) part of completing that assignment.

      It is entirely appropriate to document such things as part of an undergraduate CS course. It's also practical: by providing simple instructions ("this is a Makefile; this is how you read a man page") an instructor minimizes the time a student spends on topics not directly related to the course.

      I wish my BS in CS program had included a Software Engineering survey course. In retrospect that would have been very beneficial.

    27. Re:Stop posting McAllister. He's the new Dvorak. by HornWumpus · · Score: 2, Informative

      In point of fact mechanical engineers graduate college ready to take the E.I.T. (in the USA all 'real' engineers can take the test)

      That's the Engineer In Training (E.I.T.) test.

      Only after a number of years working under the supervision of a professional engineer (P.E.) can you take the PE test.

      I believe being a structural engineer is a further certification beyond PE. I could be remembering incorrectly.

      (If you missed the point of this: it is horribly horribly stupid for Lord Ender to think all things can be taught in school.)

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    28. Re:Stop posting McAllister. He's the new Dvorak. by Nefarious+Wheel · · Score: 3, Funny

      We have a couple "cowboys", myself included. We blaze proof of concept code in whatever the heck

      Blazing SDL's?

      --
      Do not mock my vision of impractical footwear
    29. Re:Stop posting McAllister. He's the new Dvorak. by dakameleon · · Score: 2, Interesting

      Don't blame the caste system, blame the education system - Indian education emphasizes rote learning, while American education has an element of creative thinking to it. The problem is that many equate the ability to perform in exams with the ability to perform at work in situations that are never out of the textbook.

      This can equally occur in the US, where aptitude in maths and sciences is no guarantee of methodical problem solving. Cowboy coders are good in many ways because they work out how to solve problems from first principles, not following the textbook script.

      --
      Man who leaps off cliff jumps to conclusion.
    30. Re:Stop posting McAllister. He's the new Dvorak. by networkBoy · · Score: 2, Funny

      I'm going to work that into my API docs...
      Not sure how, but I am.
      -nB

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    31. Re:Stop posting McAllister. He's the new Dvorak. by MrCrassic · · Score: 1

      (although four years of college under a computer science major does equate to probably one or two years of real-world experience)

      It absolutely doesn't. Four semesters of calculus, and three semesters of other maths completely wasted prove this.

    32. Re:Stop posting McAllister. He's the new Dvorak. by jobin · · Score: 1

      I'm not familiar with any college curriculum that covers things like source control, makefiles, modularization, making sense of a program that was written ten years ago, reverse-engineering code that you no longer have source for, effective use of a debugger etc. etc.

      That's funny. I'm in college right now, and several of our courses touch on those things. Makefiles, modularization, and basic use of a debugger are introduced in a Programming in C and UNIX course. These concepts are developed in later courses, and the upper-level project-based courses stress that without good code organization and management, producing a good product is nearly impossible. (I'm thinking especially of one particular course involving writing an OS kernel in 6 weeks with a partner.)

      That's not to say that a few school projects can substitute for real world experience, but it's certainly not as if all we do is theory and math.

    33. Re:Stop posting McAllister. He's the new Dvorak. by Anonymous Coward · · Score: 0

      There are ~ 1 billion people in India.

      There are more educated people in India than the total number of people in all of the United States of America.

      One look at those numbers will tell you that any generalization will by definition be shit inaccurate. I know enough idiots in India who wouldnt know software development if it hit them in the face, but I know some people there who are the brightest people I have ever worked with (in any country). Its easy to make a judgement of Indians based on tech support calls but please consider that those people are the bottom rung of the technology food chain even in India!

    34. Re:Stop posting McAllister. He's the new Dvorak. by Anonymous Coward · · Score: 0

      Architecture is structure. With too much of it when you find yourself needing to do something outside of that structure you may need to change the structure in addition to just adding the new feature. And changing the structure means altering large amounts of unrelated code. Just because you've defined tons of interfaces and class interrelated class relationships doesn't mean you defined the right ones.

    35. Re:Stop posting McAllister. He's the new Dvorak. by Eli+Gottlieb · · Score: 1

      So we can thus translate this article and the CEO's comments to: NEWS FLASH: person who thinks they'd be the Queen wants the organization of human work turned into an insect hive. BFD.

    36. Re:Stop posting McAllister. He's the new Dvorak. by Anonymous Coward · · Score: 0

      "It is because an American will try to figure out a weird problem while the Indian will wait on his/her boss to tell them what to do"

      Oh my god.. this is 500% true with the Indians I am in Charge of (though I am Japanese, not American...)

    37. Re:Stop posting McAllister. He's the new Dvorak. by that+IT+girl · · Score: 1

      This is the kind of thing that frustrates me on a regular basis. I am always asked to try and explain things to people who just do not have the capacity to "get it".

      I'm not a programmer, but I do end up playing Unix admin for a particular customer of mine. I'm good at it because I understand how the system works as a whole, I understand what commands do and how to use them to perform the tasks I want to perform.
      I am surrounded by people who assure me that the documentation (shoddy at best, sporadic and dangerous at worse) is enough and they can "help" by following those directions.
      One guy who has been here for around five years still did not know what it meant when he typed 'su - user'; he just did it because it was in the documentation. Five years and he never once wondered what the hell he was doing when he typed things into the pretty command line. ("What's a command line?" "THE MONOCHROME SCREEN THINGER THERE WITH THE BLINKY CURSOR AND... OH YE GODS JUST FORGET IT")
      The fact that the root password is out there in the documentation scares the living shit out of me, since guess who will get to fix it when they do something awful?

      Sorry for the rant, I guess it was a bit off-topic, but it was supporting your point... because I am one of the few people in this office who doesn't have a degree in anything computer-related (yet) and I'm almost entirely self-taught.

      --
      10 FILL MUG WITH COFFEE
      20 DRINK COFFEE
      30 GOTO 10
    38. Re:Stop posting McAllister. He's the new Dvorak. by mdarksbane · · Score: 1

      Yeah, my favorite classes were the ones where they *intentionally* gave you an assignment that was nearly impossible to fully complete in the time allotted, and made you do the best you could with it. Open-ended competitions work well for that. We had one competition where only two or three entrants out of over fifty got close to a perfect score. The whole project as about solving problems with less budget than you needed, less weight than you want, and way less time than you need to be able to do it perfectly every time.

    39. Re:Stop posting McAllister. He's the new Dvorak. by Anonymous Coward · · Score: 0

      60k of Perl? Sounds like a nightmare!

    40. Re:Stop posting McAllister. He's the new Dvorak. by networkBoy · · Score: 1

      not really.
      The perl is spread across several apps that reside on different machines. Most lives in modules, and the longest single application is only about 4K lines sans module calls.

      It really does a bangup job, and linking in the C++ bits as an XS makes the compiled code appear to be native. Further, the perl can interface with tons of what are normally userland apps that we use, drive them either via command line, or if required for testing reasons via GUI interaction.

      All in all it's pretty good. I inherited the GUI test app from another team from an offshore company, and it sucked. We basically re-wrote that. One example:

      if(uc($var) eq "warning"){you will _never_ get here;}

      That made me sad to see.
      -nB

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
  4. for u me by Anonymous Coward · · Score: 0

    This has got to be the lamest 5 minutes I have ever lost in my life... I cannot get the 3-5 minutes back you know

  5. tigers vs lions by MeatBag+PussRocket · · Score: 5, Insightful

    part of me says that the out-of-the-box, non-conventional thinking that self learners typically have can be a real asset, it shows diligence, creativity and adaptability, nobody penned out the laws and rules for them, they had to find them on their own, it is its own category of brilliance in some respects. generally it doesnt lend itself to production environments though. but perhaps on a more problem solving level this characteristic is more valuable than the beautiful clean code than more schooled programmers learn. a good team of anything (programmers, sysadmins, football players) all have their strengths and weaknesses and they ought to compliment each other and balance out. in short both are needed but assessing the value of each must be done on independent terms, its the same animal but a different species.

    --
    i wage a holy war against the apostrophe.
    1. Re:tigers vs lions by al0ha · · Score: 1

      Excellent synopsis but I must add that a self-learner can be quickly and easily taught clean coding and good comment techniques. The entity hiring them simply has to specify this is mandatory and ask them if they think they can do it.

      I know because I speak from my own experience. :-)

      --
      Did you ever wake up in the morning, with a Zombie Woof behind your eyes? -- FZ
    2. Re:tigers vs lions by Anonymous Coward · · Score: 0

      only in Kenya.

    3. Re:tigers vs lions by Anonymous Coward · · Score: 0

      Such coders will also tend to view any problem as a nail because they only know hammers. They have no clue of higher concepts; whatever C++ has to offer is the ultimate truth in object-oriented design. They'll need ten lines of code where I'll be done in three, then I'll add seven lines to do the error handling that they completely missed.

      In other words, such types need to be micro-managed to the point where you write pseudo-code for them. At that point, you're better off coding everything yourself. So throw the code at them and let them put it into the repository. Oh, that doesn't work either because in their self-teaching phase they never needed to use source control.

  6. What? by Anonymous Coward · · Score: 0

    What does the hacker ethic have to do maintainability? The hacker ethic is about testing boundaries, making things because you can, breaking things because you can, and bring out the full potential of technology. It has nothing to do with coding styles and what effect they may or may not have on maintainability.

    1. Re:What? by treat · · Score: 4, Insightful

      What does the hacker ethic have to do maintainability? The hacker ethic is about testing boundaries, making things because you can, breaking things because you can, and bring out the full potential of technology. It has nothing to do with coding styles and what effect they may or may not have on maintainability.

      I think the hacker ethic could strongly influence someone involved in software development in their choice of how maintainable to write code. But I think it influences some people to write unmaintainable code thinking that they're being "clever", and other people to write highly maintainable code because they know that it is indeed clever.

      Also someone who thinks in terms of such passion for the art will be much more productive than others. So they can write maintainable code simply by having more time available (by being able to solve problems faster). Especially since the influence from management is never to make code maintainable, it's to produce it as fast as possible to satisfy some "business need". Writing maintainable code is an act of rebellion in most environments.

    2. Re:What? by Hatta · · Score: 0

      The hacker ethic is about...breaking things because you can... It has nothing to do with ...maintainability.

      Really?

      --
      Give me Classic Slashdot or give me death!
    3. Re:What? by baap · · Score: 1

      Yeah .. really! To add to that - the hacker ethic involves often tedious and cumbersome ways to do everything to avoid everyday productivity on Windows - now hibernate your computer and go get an Atari...

    4. Re:What? by TheRaven64 · · Score: 1
      And yet some of the best hackers have written about not writing clever code. For example, Brian Kernighan:

      Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it?

      And anyone who has contributed to an open source project knows the most important rule about writing maintainable code: If you make your code sufficiently readable, someone else will fix your bugs.

      --
      I am TheRaven on Soylent News
    5. Re:What? by Anonymous Coward · · Score: 0

      The reasoning behind articles like this one is what kept me from becoming a programmer. I am sure that both the companies that didn't employ me and me are losing money with the deal.
      Well, I kept studying and got another job where I am allowed to use my intellect.
      They, they are stuck with some monkey that doesn't know what the modulo operator does and wouldn't be able to convert 0xFFFF to a binary representation if their life depended on it because he asked for less money and lied about what he was able to do.

    6. Re:What? by agentultra · · Score: 1

      amen.

      To this day I have a hard time convincing people to write unit tests, to adopt continuous integration, or to even automate their build and deployment processes.

      If you want to build things the right way, it sometimes feels like an uphill battle! There have been many times in my career where I've had to defend my decisions to let a new feature slide in favor of refactoring some important bugs out of a critical component of the system. It never ceased to amaze me when it happened. Were they happy to release a new feature and then fume at the meetings when it was buggy and full of errors?

      I think a large part of the problem is that management that doesn't understand what it is we do are ineffective in the long run. They are essentially making decisions based on faith. If they trust their developers, they have no way of validating their trust in them and must base their decisions on whatever they're told. How is that an effective process?

      Adding more process onto the programmers isn't going to fix the problem.

      The only effective managers at a technology company are those who started off as technical staff. Even if they weren't the best programmers on the team, if they were decent they'd know who those people are and be able to recognize good advice.

  7. Unemployable? by outsider007 · · Score: 5, Funny

    I thought our messy unmaintainable code made us unfireable.

    --
    If you mod me down the terrorists will have won
    1. Re:Unemployable? by hedwards · · Score: 4, Funny

      No, the program to fix the mess of poorly formated jumbled code, is what makes us unfireable.

    2. Re:Unemployable? by denmarkw00t · · Score: 1

      No, the mess of poorly formatted jumbled code for the program to fix the mess of poorly formatted jumbled code is what makes us unfirable.

    3. Re:Unemployable? by Jean-Luc+Picard · · Score: 1

      It's not a bug, It's job security !

    4. Re:Unemployable? by Anonymous Coward · · Score: 0


      I thought our messy unmaintainable code made us unfireable.

      It also makes you un-promotable :-/

      --

    5. Re:Unemployable? by mcvos · · Score: 1

      Job security through code obscurity.

  8. Says who? by seebs · · Score: 4, Interesting

    Hi, I'm a self-taught cowboy programmer. Never took a single CS course.

    I spent ten years on the ISO C committee. My coworkers like my code reviews because I'm thorough and careful. While my code isn't as good as I'd like it to be, the big hunk of my code that we put into our last product release has one known outstanding bug, and it's considered "cosmetic" -- it never impacts the actual output. (And that's for five thousand lines of code I produced in three weeks...)

    I don't buy it. I am a big fan of the "hacker ethic" -- and I see maintainability and code quality as *central* to it. Sloppy work is habit forming. The reason I can type ten-line shell scripts in at the prompt and have them work is that I have worked really hard to be good at what I do.

    So, basically, I don't accept the premise. We used to have offshore coworkers from India, and they were useless. They'd reopen bug reports because the same package failed to build for TOTALLY unrelated reasons. ("TeX is not installed" and "linker error due to frame table full" are not the same bug.) Since then, we started hiring people in China, and actually hiring them as full-time staff, and it works a lot better. They're not all hugely experienced, but they're solid, and they learn. (They even argue with us sometimes, which I'm really enthused about. That's how you get good.)

    --
    My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
    1. Re:Says who? by Anonymous Coward · · Score: 3, Insightful

      Maintaining a program is always going to be a problem.
      I have limited experience between the realms of self taught hacker and say a typical Indian programmer but here's what I've seen.

      My current boss is a prime example of the self taught hacker.
      Our business uses 80%+ in house software.
      The documentation is low, though some key comments are there that actually hold the hint as to what that code segment is after.
      The programs are fairly quirky as they have been added to and edited for at least 10 years now.
      They continue to work, despite their age, and are still being edited constantly.
      A little research is involved for each change to the software or SQL queries which usually include things like being certain exactly what the code is doing and what other programs or sections of the same program will be effected.

      My experience with Indian programmers is via a completely different kind of program, in this case a technical support ticketing system designed for a large number of entries per day.
      Comments were extremely sparse and the comments that existed were not extremely explicit. 'Do the needful here' does not express what is going on in the code and why it is necessary to do whatever it is you are doing (that particular comment was involved in opening a new IE window and closing the old one... no particular reason could be found for that).
      Comments made around error catches read something like 'in case of no joy' that at least let me know it was some kind of error catch but what exactly was being caught took some digging.
      The program itself wasn't designed well for the volume it was intended to handle as there was a heavy reliance on javascript which caused long wait times as it hung in places on top of the wait times for data from database returns.

      The only other experience I have with either type is a short experience with a self taught hacker type.
      I inherited his program with no documentation at all. Actually I only know that the program resided on a particular system, not even where the pertinent files were located.
      He used ASP, Access, XML, and Excel. Around that point I decided it was best to rework his program from scratch as his files were scattered everywhere and were completely unusable unless you were already familiar with what he was doing.

      So I do not believe it comes down to where your 'training' comes from. I believe it comes down to good form and forethought, which both sides can obviously lack.
      For my two cents, self commenting code is not commenting. It makes it more readable but actual comments should be in place to keep someone reading in the know as to what each major portion of code is for and what complicated sections are doing.

    2. Re:Says who? by hey! · · Score: 4, Insightful

      Well, one thing that's important to remember is that most non-trivial systems are produced by organizations, not individuals. Doesn't it make sense that the quality of the institution is a factor in code quality? Take a talented individual, put him in a good organization and he will learn to work in a way that the organization rewards.

      Computer science is like anything other kind of academic discipline. It is very valuable, but it's not magic.

      Consider this thought experiment. Alice likes to read poetry, and tries her hand at writing. She regularly shares her poems with other people interested in reading and writing poetry. Bob likes poetry, so he gets a degree in English and takes as many poetry classes as he can. Then he starts writing poetry and tries submitting it to the New Yorker. It seems to me Alice is more likely to become an accomplished poet than Bob, although you can never know for sure. On the other hand, consider Charlie who like Alice workshops his poems all the time, but who also gets the same formal education as Bob. Again there's no guarantees, but unless something is seriously wrong with the school he's going to he should have the best shot of all.

      What I'm saying is that the Computer Science and the craft aspects of programming are complementary precisely because they aren't the same thing.

      Without a computer science background, Larry Page and Sergei Brin would never have been able to make Google a success. Google is very much a company founded on algorithms and grown through architecture. Without programming craft, the products would not have been able to be maintained and scaled.to success.

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    3. Re:Says who? by Blakey+Rat · · Score: 1

      You're not a cowboy programmer. If you're being careful, documenting your code, and write maintainable, quality, code... you're not a cowboy.

      "Cowboy programmer" doesn't mean "not formally educated." It means they swoop in to 'fix' issues at the last minute with giant masses of crappy code, then leave when it comes time to sort out the mess. A lot of organizations see the cowboys as the "heros", since they can resolve the problem quickly, but they never bother to account for the sheer mass of wasted time their solution created elsewhere.

    4. Re:Says who? by Chuck+Chunder · · Score: 4, Funny

      Hi, I'm a self-taught cowboy programmer.

      Not any more, now you're an anecdote.

      --
      Boffoonery - downloadable Comedy Benefit for Bletchley Park
    5. Re:Says who? by MeatBag+PussRocket · · Score: 1

      Well, one thing that's important to remember is that most non-trivial systems are produced by organizations, not individuals.

      Gutenberg, DaVinci, Tesla, Bell, Volta, Zuse and others would like to have a word with you outside. its true that many modern invetions have been produced by teams of brilliant people, and as technology becomes ever more complex that trend will continue, but dont discount the lone genius

      Without a computer science background, Larry Page and Sergei Brin would never have been able to make Google a success. Google is very much a company founded on algorithms and grown through architecture. Without programming craft, the products would not have been able to be maintained and scaled.to success.

      this just reinforces the prior point, Alta Vista, WebCrawler and the other search engines in the heyday of search were pretty big operations run by teams at institutions and universities. the brilliance that made google big came from two people and was incredibly simple: advertising. Google was popular because it was clean and uncluttered, it became profitable when they realized they could gain adverting revenue without cluttering it up beyond use.

      --
      i wage a holy war against the apostrophe.
    6. Re:Says who? by seebs · · Score: 1

      >Not any more, now you're an anecdote.

      Cool! I always wondered what the plural of "seebs" was -- now I know! It's "data".

      --
      My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
    7. Re:Says who? by Anonymous Coward · · Score: 0

      'Do the needful here' does not express what is going on in the code and why it is necessary to do whatever it is you are doing

      Do the needful here is indeed a comment I recognize oh so well... and not in a good sense :(

  9. Hackers vs Designers - Hackers Loose every time! by itsybitsy · · Score: 1, Interesting

    Hackers are those that take an axe and hack down a tree creating a mess in the process including casualties that offend the beauty of solutions.

    Designers go about it systematically applying methods that bring the tree down without a mess or casualties.

    Things like PERL are deeply disturbing to anyone with a sense of design.

    Hacks usually have to be replaced when discovered in production systems that value scaling and reliability.

    Hacks have saved me and I always replace them when possible since they are just so offensive and putrid that shivers evoke pain in my spine.

    Design brings the best of software techniques to bear upon problems.

    Software needs work. Iterative improvement. Hacks might be in there but in time they tend to get removed with designed systems or redesigned systems.

    Hackers are not really programmers as they are to enamored with their hacking skills.

    There is nothing redeeming about hacking, all of it is from the dark side.

  10. How about we start teaching REAL Programming... by SirGeek · · Score: 1, Insightful

    ... instead of how to use a GUI to do 99% of the programming for you ?

    I still don't use a GUI, and I understand the guts of the programs better than the people who NEED their Eclipse, etc. to do the "grunt work" for them - (Umm.. if you don't understand the grunt work, how do you know that it is even NEEDED ?). In general the code from IDE Jockeys/Junkies is pretty bad. Their solution when things aren't working right ? Add more memory to the system "It can't be my code malfunctioning, it must be a RAM limitation". Rather than learning how to improve their own code and optimize things.

    NOTE: I learned how to program on Punch Cards (this was in the 80s, BTW) and you also had to debug programs from printouts of the failures.(Debugging is ANOTHER lost art , but that's for a different topic) and I've been a software developer for almost 20 years.

    I also have programmed in embedded systems with ASM where every BYTE of memory counted. You couldn't waste 1K of garbage code for an IDE developed code base).

    1. Re:How about we start teaching REAL Programming... by seebs · · Score: 5, Insightful

      A friend of mine uses Eclipse, not for some huge "grunt work" but just to have all the class reference stuff quickly available from code. I actually sorta like that; I've used NetBeans for the same reason, and I use Xcode sometimes for Objective-C. They all have the ability to provide real improvements in the work I'm actually doing.

      Don't be too quick to throw away a tool. There is a reason that Rails has 'script/generate scaffold', and it's not just that programmers don't know any better -- it's that often that framework will be close enough to right to save you a ton of time.

      --
      My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
    2. Re:How about we start teaching REAL Programming... by zoips · · Score: 2, Informative

      So your solution to a made up problem is that everyone should use Notepad? Ok, maybe you'll make an exception for vi, what if I fall on the emacs side of that holy war?

      I think you need to think this through again, as you've obviously let something obvious slide by...

    3. Re:How about we start teaching REAL Programming... by mhall119 · · Score: 1

      How exactly is eclipse any more GUI-centric than VIM or Emacs? What exactly "grunt work" does it insulate you from?

      --
      http://www.mhall119.com
    4. Re:How about we start teaching REAL Programming... by qoncept · · Score: 5, Insightful

      Arguing against IDEs is pretty tired and boring. And embarassing. In general the code from "IDE Junkies/Jockeys" is just fine. An IDE is a tool like a hammer and if someone is using it wrong, you're going to see some bent nails. Refusing to use a tool isn't much better. An IDE takes a huge amount of trivial work out of designing GUIs, fixing syntax, refactoring, integrating with version control and just helping you remember the names of objects or methods or whatever. Am I an idiot because I'd rather look through a list that automatically pops up in my GUI than flip through a 500 page book?

      Using a text editor instead of a full IDE (to work on appropriate scale projects) is like hunting with a spear, but you're not nearly as cool.

      --
      Whale
    5. Re:How about we start teaching REAL Programming... by Anonymous Coward · · Score: 0

      So if a good programmer uses a GUI he suddenly suck? What you code in doesn't decide the quality of your code. Besides using the right tools to cut down on development time shows more skill than coding in a text editor 'cause "it's cool".

    6. Re:How about we start teaching REAL Programming... by Anonymous Coward · · Score: 0

      I sorta agree.... Sometimes the tools lead to bad decisions.... I do use an IDE (ECLIPSE) but mainly for code highlighting, and to handle the svn within the same framework. I rarely find myself using features like snippets, but do use some of the debugging tools. I am by my very nature a hacker... I self taught myself to program in the 80's because it interested me. I have since continued to learn new languages and processes.

      I follow at least to a degree development standards...

      Anyways to my agreeing with your statement... .NET developers when they do not have much real life development experience seem to rely on drag and drop controls and helpers of the IDE too much... This is great when the product fits the design of those tools but all too often the product will fail because of issues with the way tools are mixed and matched...

      I think this comes down to not a gui vs non gui but experience vs not experienced

    7. Re:How about we start teaching REAL Programming... by Anonymous Coward · · Score: 0

      I would certainly agree that all programmers should learn how to do things without a GUI before they start using one - for the same reason you have to learn to do calculus by hand even though you're going to use a calculator to do it if you ever actually need to use it. But once you've learned... well you can still do things by hand when it'll actually help something, but 99% of the time that it's just a pointless waste of time to manually configure your files, compile, and run instead of clicking on the little green arrow in eclipse.

      And since I'm still in school... I'm going to go ahead and say we in fact do teach real programming. And that includes how to use the tools that you'll use to do the mindless background stuff for you in real life.

    8. Re:How about we start teaching REAL Programming... by GodfatherofSoul · · Score: 1

      IDEs aren't about a "need," they're about convenience.

      --
      I swear to God...I swear to God! That is NOT how you treat your human!
    9. Re:How about we start teaching REAL Programming... by TheRaven64 · · Score: 2, Insightful

      There is a reason that Rails has 'script/generate scaffold', and it's not just that programmers don't know any better

      I think it is, but the programmers are the Rails team. If every project that uses your framework is generating almost the same code, your framework is not exposing the correct interfaces. Microsoft is also guilty of this. How many MSDN articles say 'copy this 200+ line skeleton app that does nothing just sets up the default environment'?

      --
      I am TheRaven on Soylent News
    10. Re:How about we start teaching REAL Programming... by TheRaven64 · · Score: 1

      A good programmer can program well with whatever tools are available. A great programmer picks the best tools to use.

      --
      I am TheRaven on Soylent News
    11. Re:How about we start teaching REAL Programming... by Anonymous Coward · · Score: 0

      Using a text editor instead of a full IDE (to work on appropriate scale projects) is like hunting with a spear, but you're not nearly as cool.

      Using a good editor(eg VIM) and compiler, via a make-dependency tool is like a silenced .22-LR, quieter, simpler and more deadly than your spear. I will get you every time.

      And BTW "Arguing against IDEs is pretty tired and boring" is to miss the point entirely, MANY of us hate the "Tool Makers" who
      devise APIs that NEED an IDE to work, see J2EE client - server side nonsense, no one would have done that with pushback.

    12. Re:How about we start teaching REAL Programming... by cryptoluddite · · Score: 1

      The problem with most IDE's is that the vast majority of the display is taken up with information that is rarely used. This is the same problem as Gnome's file dialog, where one of the 'enhancing usability' mock-ups had less than 22% of the area actually showing files (in contrast to 60% for Windows). All those sidebars and 'clippy' panels don't help when they actually get in the way of the code.

      In my workplace the Windows developers typically have three or four monitors, but they only look at 20-30 lines of code at once, in a little tiny, wide panel. Meanwhile I'm showing 90 lines per vim window, which is enough to show whole even most of their functions... with a larger font. It's completely absurd to have 3 monitors and look at code through even a 30 line panel. I can't work that way. I wouldn't want to.

      IDEs do have some useful features to improve developing, but their interfaces and clumsy editors (compared to vim) are a real stumbling block for them.

    13. Re:How about we start teaching REAL Programming... by Anonymous Coward · · Score: 0

      I like completion as much as the next guy, but the thing about IDEs that I have a serious problem with is the idea of designing an application to assist with software development and then expecting me to code in it. I write, manipulate, and read text all day. I need a serious goddamn text editor with useful features for making software development easier, not a software development package with a text widget in it.

    14. Re:How about we start teaching REAL Programming... by agentultra · · Score: 1

      Using a text editor instead of a full IDE (to work on appropriate scale projects) is like hunting with a spear, but you're not nearly as cool.

      It's really not as primitive as you make it out to be.

      I've worked on projects big and small, but no matter the size emacs fits the bill for me. I actually find that it's a rather elegant tool.

      Anyway, I'm long past my days of flaming people over IDEs and languages. I think you had the right idea in the beginning, but you lost me with your closing line.

    15. Re:How about we start teaching REAL Programming... by pjt33 · · Score: 1

      An IDE takes a huge amount of trivial work out of designing GUIs, fixing syntax, refactoring, integrating with version control and just helping you remember the names of objects or methods or whatever.

      There's an odd one out in that list. IDE GUI designers are horrible for producing maintainable code which doesn't lock you in to using the IDE in the future.

    16. Re:How about we start teaching REAL Programming... by Hognoxious · · Score: 1

      I doubt any developer needs an IDE, any more than any driver needs synchromesh.

      But if it makes the job easier, then why not use it? Unless you're just being a curmudgeon for the sake of it.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  11. Structure can be learned creativity cannot by Quasar1999 · · Score: 5, Insightful

    You can take a creative person and teach them the correct ways to apply their ideas, but you can't take someone that knows the 'rules and regulations' inside and out, but sucks at independent thinking and teach them to be creative.

    Hence why you'll get a bunch of people who have the same degrees from the same universities but they will have capabilities that are miles apart when it comes to software development. All the people were given the nuts and bolts knowledge, but only the creative ones excel in the real world think outside the box environments. That's not to say there aren't places for the 'by-the-book' developer, but it'll be maintenance coding, and not make the latest cutting edge app or game.

    Hacker mentality or not, lack of creativity is why Indian developers tend to produce lackluster results. (And before I get flamed, I'm saying this in general, I'm sure there are many creative Indian developers out there, just as there are many uncreative American developers)

    --

    ---
    Programming is like sex... Make one mistake and support it the rest of your life.
    1. Re:Structure can be learned creativity cannot by seebs · · Score: 4, Interesting

      What makes you think creative thinking can't be taught?

      --
      My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
    2. Re:Structure can be learned creativity cannot by Anonymous Coward · · Score: 0

      Creativity is innate to humans.

    3. Re:Structure can be learned creativity cannot by Anonymous Coward · · Score: 0

      The creative Indian developers all live here in the US after getting an H1B. Those that were obviously deficient are left in India working as outsourced contractors. We have this stereotype that Indian developers suck primarily because only the dregs are hired for outsourcing.

    4. Re:Structure can be learned creativity cannot by Spazmania · · Score: 4, Insightful

      The absence of evidence to the contrary.

      --
      Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
    5. Re:Structure can be learned creativity cannot by Anonymous Coward · · Score: 1, Interesting

      It's not that it can't be taught - it just takes much more time and patience to teach. With any business, time == money.

      Where I work, we hire for creativity. The programming skills come second as they are much easier to teach (and practice) on the job.
      Of course, most of what we produce is highly visual. So it's a good thing to have a heavy creative tilt.

    6. Re:Structure can be learned creativity cannot by Joe+Mucchiello · · Score: 1

      Sure, it can be taught. The question is, can it be learned?

    7. Re:Structure can be learned creativity cannot by Quasar1999 · · Score: 3, Insightful

      What makes you think creative thinking can't be taught?

      If it could be taught, it would be a multi-billion dollar industry. I know I certainly would love to attend courses that taught me to be more creative... I always wanted to write music, or create artwork... too bad all I've ever learned from the classes offered has been how to identify what sucks about what I created, but they never taught me how to actually create something good. That's always left to your 'creativity'... how convenient...

      For example, almost everyone knows how to use photoshop if they play with it long enough, right? Can you show me a school that will teach any average person to be artistic? Probably not, but I'm sure you can show me lots of art schools that can teach artistic people how to use photoshop with amazing results.

      --

      ---
      Programming is like sex... Make one mistake and support it the rest of your life.
    8. Re:Structure can be learned creativity cannot by Maxo-Texas · · Score: 3, Interesting

      It's not so much that it can't be taught as it can be completely squeezed out of the children by the time they reach college age.
      The bar is *very* high in india-- you either pass or you are screwed and may as well kill yourself (as about 3,000 a year do).

      Who wants to be "creative" in that kind of environment- you want to master the material and get the best possible grade. Creativity has no value until you are a grad student anyway.

      Americans tend to overvalue creativity from an early age-- wasting a lot of opportunities to be good worker bees. The result is poorly trained but creative individuals.

      I saw it this way once...

      American tries a thousand ways to draw a fish and finally masters drawing a fish. All along the way they are creatively making variations of the fish.
      Chinese are taught the one perfect way to draw a fish. Once drawing a fish that way is mastered, then they start creatively varying on the mastered fish.

      The sub-masters in China would be less creative while the sub-masters in America would be more creative.

      The masters in both cases are basically equally creative.

      ---

      I don't know for sure about Indians. Mainly- they just seem less bright and more "yes men" than they were in 2002-2003. I think the bright ones were promoted and the tremendous demand means that we now have bachelors degree types competing against our bachelors degree types where we used to have their masters degree and doctorate candidates competing against our bachelors degree types.

      So now they are average decent coders-- who are not as creative (because the creative types were filtered out by their culture, schooling system and national exams), more prone to agree to things which are impossible, and (slightly) lacking in communication skills.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    9. Re:Structure can be learned creativity cannot by Sta7ic · · Score: 2, Interesting

      That's when you apply this odd thing called "experimentation". Just take a look at Thomas Edison. He sure as hell didn't sit around waiting for brilliant ideas, he put together a bunch of things, figured out what was wrong with the ones that didn't work, and adapted his next effort based on what he learned.

      If you've always wanted to write music or make art, get off your butt and do it! Re-evaluate what you've done after you've done it. And realize that an "artist" is always their own worst critic, making it prudent to have someone else look at what you're doing.

      "I was never taught to do something good" is no excuse for not trying!

    10. Re:Structure can be learned creativity cannot by againjj · · Score: 1

      I play Magic: the Gathering a bit and read some of the daily articles from time to time. One of the authors is Mark Rosewater, a head designer. One of the things he talks about is design in the abstract, which has a lot of application beyond games. One of the things he talks about is how to learn to be creative. Here is a sample article about how to be creative:
      http://www.wizards.com/Magic/Magazine/Article.aspx?x=mtgcom/daily/mr273

      Another example is the book "How to solve it". This is a rather interesting book, because it gives steps on how to solve problems -- steps that, once they become ingrained, act exactly like creativity.

      And for teaching a creative people to be formal, a famous counterexample is Ramanujan, and Indian mathematician of great creativity that could never be made to learn "the correct ways to apply [his] ideas". Hardy tried, and failed to do that.

      This is ironic: only after writing the about paragraph did I read down to where you said "lack of creativity is why Indian ...".

    11. Re:Structure can be learned creativity cannot by Anonymous Coward · · Score: 0

      <quote>You can take a creative person and teach them the correct ways to apply their ideas</quote>

      You're right of course ... too bad there's another end of that spectrum which contains a significant portion of creative programmers that you can try and teach all you want, but insist on finding new and creative ways of discovering why the wheel was round in the first place.

      In that light I find it ironic that you mention the game industry. An industry where this behaviour is oh-so-omnipresent and could use a little more "by the book" and less "from the hip".

      Best

      - a jaded old game developer

    12. Re:Structure can be learned creativity cannot by Anonymous Coward · · Score: 0

      What makes you think creative thinking can't be taught?

      If it could be taught, it would be a multi-billion dollar industry.

      Problem is, you set the bar for creativity too high. The creative people you normally see are the top 1% of 1%. You can't teach that. Similarly, you can't teach people to program at that level either. Instead, programmers are taught, then separated by skills; the best make kernels, compilers and what-not while lesser skilled people work as code monkeys.

      Unfortunately, there is less demand for creativity, and no jobs at the lower levels, so only the best creative people remain.

    13. Re:Structure can be learned creativity cannot by Anonymous Coward · · Score: 0

      It only means you didn't look.

    14. Re:Structure can be learned creativity cannot by turing_m · · Score: 1

      What makes you think it can?

      --
      If I have seen further it is by stealing the Intellectual Property of giants.
    15. Re:Structure can be learned creativity cannot by shutdown+-p+now · · Score: 1

      And before I get flamed, I'm saying this in general, I'm sure there are many creative Indian developers out there, just as there are many uncreative American developers

      Funny thing is, most creative Indian developers end up being Indian-American developers eventually.

    16. Re:Structure can be learned creativity cannot by Phil06 · · Score: 1

      The American sells his abstract fish paintings in a high end art store. The Chinese sell their identical fish paintings in a souvenir shop next door.

      --
      "...and yet, I blame society" Duke - Repo Man
    17. Re:Structure can be learned creativity cannot by Spazmania · · Score: 1

      It only means you didn't look.

      Got any hot tips as to how, please share. I've tried and I've watch others try to bring out creativity in others. Smart people. Friends some of them. People I have a strong personal motivation to see succeed. I've seen vast improvements in competence and skill but I've yet to see an improvement in creativity.

      --
      Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
    18. Re:Structure can be learned creativity cannot by Anonymous Coward · · Score: 0

      Here are some tricks and techniques you can try, this guy is talking about some techniques Salvador Dali used, (and in this case applying it to business):

      http://www.theperfectbizfinder.com/blog/inner-genius-2/?dip=4g789&af=839546
      http://www.theperfectbizfinder.com/blog/inner-genius-1/

      A lot of times it's just a matter of helping the person look at things in a slightly different way. Thought exercises, imagery, and zen exercises can help wake up their brain, alter their viewpoint.

      'Creativity' is kind of a vague concept though. If you define what you are looking for a little more clearly, then maybe I can find something more definite.

    19. Re:Structure can be learned creativity cannot by Spazmania · · Score: 1

      Creativity is the ability to look at one thing and see another. All creativity involves combining and recombining previously known elements into unique configurations.

      Nobody has been able to pin down a solid theory of creativity but psychologists have been able to describe a few of the characteristics. One of them is more or less this:

      Given a difficult question with many right answers, an intelligent person will come up with half a dozen of them immediately and another one or two over the next day. And that's it.

      A creative person will come up with a few answers immediately too. Then he'll come up with a few more. And a few more. And a few more. The longer he considers the problem, the more possible answers he'll see. It'll eventually taper off, but slowly.

      --
      Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
    20. Re:Structure can be learned creativity cannot by mcvos · · Score: 1

      Hacker mentality or not, lack of creativity is why Indian developers tend to produce lackluster results. (And before I get flamed, I'm saying this in general, I'm sure there are many creative Indian developers out there, just as there are many uncreative American developers)

      I don't think it's creativity. I think it's lack of ownership of the code. They don't feel responsible for the end result, partially because of training, partially because it's an outsourcing job, partially because they simply get paid by the hour and nobody who cares notices when they're crap. You get better code when it's written by someone who cares. Hackers usually care quite a lot.

      And it's not because they're Indian either. Plenty of Indians who don't work in outsourcing are excellent programmers.

    21. Re:Structure can be learned creativity cannot by sjd78 · · Score: 1

      Academic have been studying this for 30 years. A long term study of a 2 year college level creative thinking program was done in the mid 70s: http://scholar.google.com/scholar?hl=en&lr=&q=parnes+applied+creativity&btnG=Search

      Three years ago, a similar paper was published specifically looking at CPS (Creative Problem Solving) process training done in a business climate with successful results: http://tsf.njit.edu/2006/fall/puccio-CPS-training.pdf

      Net result ... the process of creativity (CPS) can be taught to enhance your own natural creative ability.

    22. Re:Structure can be learned creativity cannot by DrgnDancer · · Score: 1

      I think you're confusing two related, but separate issues. I am a terrible visual artist and can't carry a tune in a bucket, but I am an excellent creative problem solver (other people's opinion, not mine), and I can make reasonable stabs at creative writing (I'm sure I'd be better if I practiced). Creativity CAN be expressed as visual art or musical talent, but having those talents is not the end of creativity. People are creative in different ways (which is not to say that ALL people are creative, many aren't). Teaching creativity is not the same as teaching drawing, though many people who draw well are creative. Look at XKCD, it's very creative despite being drawn in the style of a careless 6 year old (Yes, I know he CAN draw much better, but he usually doesn't so it illustrates the point).

      --
      I don't need a million points of light, just two points of multi-mode fiber and a 10 Gig-E router.
    23. Re:Structure can be learned creativity cannot by Hognoxious · · Score: 1

      That almost scans. Almost.

      It sort of fits the tune "stray dog and the chocolate shake" but it's a syllable per line short.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    24. Re:Structure can be learned creativity cannot by Hognoxious · · Score: 1

      No, it means nobody taught him how to be creative enough to find the right place to look.

      Which proves one of you is right. I just can't work out which.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    25. Re:Structure can be learned creativity cannot by Hognoxious · · Score: 1

      The creative Indian developers all live here in the US after getting an H1B.

      The creativity mostly goes into their resumes.

      Oh yes, I am having 19 years experiences in java two million!

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    26. Re:Structure can be learned creativity cannot by Anonymous Coward · · Score: 0

      I don't know your friend, but I'm going to take a wild guess and say he either lacks the self esteem to trust his answers and that's preventing him from seeing more deeply, or he has too much stress to see things clearly, and it's preventing him from putting his energy into creativity. If he has either of those things, they will be huge roadblocks in becoming creative.

  12. Synonymous with computer programing by Anonymous Coward · · Score: 0

    Perhaps the 'hacker ethic' being synonymous with computer programing only exists in your mind rather than American society. I know generations that have made decent livings programming, and they have nothing to do with hacking.

  13. Re:Hackers vs Designers - Hackers Loose every time by Anonymous Coward · · Score: 1, Funny

    Designers can't spell.

  14. Making a good living with the "Unemployable" by Anonymous Coward · · Score: 0

    Honestly this is not my experience and I'm a manager at a fortune 5 company. In fact, I recruit programmers from the US for other parts of the world as a side line to help fellow managers in other countries. We do have a mix of various backgrounds but it tends be the "american programmer" mind set that we seek regardless of race, nationality, etc. As a practical matter, we compete very nicely with HTC and other similar companies, I hope they hold onto this viewpoint, it's a useful advantage for my company.

  15. Re:Hackers vs Designers - Hackers Loose every time by FreonTrip · · Score: 3, Funny

    Flame on, you crazy bastard.

  16. Re:Hackers vs Designers - Hackers Loose every time by Anonymous Coward · · Score: 0

    Um, it's lose, Mr. Designer.

  17. "Programmers" by PeanutButterBreath · · Score: 2, Insightful

    "Developers", what have you. These names are overly generic, causing needless bickering about what they mean to various people. For a project of any size or consequence, you are likely going to need a spectrum of skills and perspectives to achieve anything worthwhile. If you are whining to the wold at large that every "programmer" doesn't fit the role you want someone to fill, you probably don't have such a project, or *you* are the problem.

  18. while cheaper quality { send work overseas } by zerointeger · · Score: 0

    I feel dumber having read someones this... thanks for taking 3-5 minutes of my life that I cannot get back.

  19. opposite of observed by treat · · Score: 2, Interesting

    My observation is that good American programmers can produce software that is -vastly- more maintainable, efficient, understandable. Easier to modify or extend.

    Mostly this is because they're combining a lifelong passion for programming with some education (formal or not) about software design practices. Foreign programmers on work visas are primarily concerned with making a better life for their family, altering their condition from one of near-poverty to significant wealth. They rarely have a passion for the work, and their only requirement is that they can accomplish enough to get and keep a job, not to excel.

    Foreign programmers who could not get a work visa to come to the US, but work for US businesses remotely for a reduced rate due to the discrepancy in cost of living are usually of the same mindset. But usually they weren't good enough to get a job in the US! More recently, their standard of living can be equal or greater by staying in their country.

    I simply don't know where the Indian or Chinese workers are that have significant skill or a real passion for programming, or computers in general. I have never met ONE in my life, despite working with countless dozens of foreign works on work visas. I have met some from other countries, but usually it is not places that are so poor that huge numbers of people are coming to the US to get a job that changes their standard of living. The exception is the former Soviet states. People from the former Soviet states often bring a passion for computing with them. Probably because they weren't poor in the same sense as someone of comparable income in India.

    1. Re:opposite of observed by Ixitar · · Score: 5, Insightful

      I am a US citizen. I have worked in Japan, Korea, Taiwan and China for a few years. While there, I have worked with excellent local developers as well as developers from India who were working in those countries. I have also worked with coders who should not be let anywhere near a computer.

      It all depends on the individual's drive for excellence and the management structure that the person is bound under.

      I dislike these gross generalizations on either side.

    2. Re:opposite of observed by Sir_Sri · · Score: 1

      that's because people in north america and europe grew up with computers and love what they do, people in those countries who grew up with computers in the 80's and 90's are all spoiled rich kids. Well mostly.

      My dad did a MSc in electrical engineering in india before comming to canada in the 60's, having enrolled in his Bachelors in engineering before he'd lived anywhere that had electricity. When GE started laying off EE staff in his group he was the last one there so presumably they thought he was useful for something. So I'm guessing at some point he learned something useful about electricity, but the passion which I have for experimenting with science and technology, because I've had all of those toys as I was growing up wasn't available to him. I wouldn't be suprised if most people from india and china are the same way still. The generation comming up now, who were born in the 1990's, and probably late 90's, just like we have in north america all have access to computers and they'll be able to make much more meaninful contributions on the creative side than the previous lot.

      I remember a couple of years ago a friend of mine interviewed for a position as an Apple genius in Canada. About half of the questions were about the iPhone, which was, at that point, not available in canada (and still pretty new in the US). No matter how well trained or educated he was in being a computer tech he knew bugger all about how to fix an iPhone, having never seen one let alone tried to use it.

      That said, my experience as a grad student with students from Canada, the US, India, China the middle east etc is that the ones who will actually learn how to do stuff properly (to whatever guidelines you lay out, sometimes intentionally crazy guideliness just to see what they do with them), are the foreigners, not the domestic students. The foreigners are obviously the best and brightest from wherever they are, or they wouldn't be 10 time zones from home, but they are not burdened with antiquated notions of how to do things because that worked for them 5 years ago. I was trying to convey this point to the prof of one of the relevant courses, there were a couple of hard core geek types from Canada who could write code for small programs, but not software, and they didn't grasp the merits of object oriented thinking (let alone design), nor were they particularly inclined to consider it. They'd been coding for 10 years this way, and it worked so why change? I was sort of fortunate that when I was 13 or so and starting to program I'd learned to use quick basic, turing and then Fortran (which serves me well 17 years later oddly), where the first of those two were dead out the door. I had to learn C, and then having tried to make real software that you know, people will pay for, using any of C, C++ or Fortran (and HTML/PHP/ASP/Javascript crap), whereas these guys have been using C since high school, which means at least 3 or 4 years of it by the time they get to 3rd year, and they might have picked up some basic java, but their java code is organized like a C program.

      Sure the nerd hacker types have a much better sense of what software can do for you, and by extension are somewhat better at hacking together a solution to a problem, but if you, as an employer, want people to do things a particular way, in my experience at least, you don't generally want people from north america. When you hire people who come from the Canada/US high school system (who have along with their foreign counterparts graduated a US or canadian university), you tend to get a rather bipolar lot, on one extreme, and they represent 80% of the group, are people who don't really know anything about computers, through some miracle ( administrations not wanting to fail everyone) passed computer science or engineering and can only write token crap to solve simple problems (they will immediately be promoted to management however because they speak english clearly and understand something about what computers can do), or the hardcore hacker typ

    3. Re:opposite of observed by Anonymous Coward · · Score: 0

      Maybe the problem is not "offshoring" or "foreigners being shite, uncreative, automatons who are not interested in excelling", maybe the problem is with "outsourcing" - a company takes a key business function and shoves it off on the cheapest company they can find, who is then incentivised to do as little as possible (minimize cost) while billing as much as possible (maximise revenue), and refusing to allow any change in the contract without an extortionate payoff.

      As for excelling... I'm not sure that programming is necessarily all that creative. We all like to talk about designing algorithms for a new sharded distributed database system with pure O(n) scalability or whatever. However a great deal of programming is implementing basic business rules for expense claims etc. This requires some technical knowledge, but does it take more than the technical knowledge to (say) process health insurance claims?

      Another thing that many people don't realise is that the US is a net services "insourcer". Many multinationals have their HQ's in the US, and so the managerial white-collar jobs are done in the US while the "do-you-want-fries-with-that-have-a-nice-day" workforce is spread around the world. Manufacturing exports in the US are declining, so services exports have to some extent taken up some of the slack.

    4. Re:opposite of observed by Anonymous Coward · · Score: 0

      You're a racist scumbag.

    5. Re:opposite of observed by Anonymous Coward · · Score: 0

      Still, in general, among guys I've met:

      * Indians generally have tended to have low-range bachelor's degrees (often not "real" degrees, just workshops) and tend to produce "job maintenance code" -- heavy use of arrays, non-relational database structures, very little documentation, etc.

      * Chinese guys tend to have an M.S. and seem to care a lot more about whether their code is GOOD or not. They seem to have a certain investment in personal pride in the code they write. They want respect, not just money.

      * American guys tend to have B.A. or B.S. degrees, and code mostly for fun. They're usually at play when they're writing, and treat it as more of an art or craft than just a job. Their code is cleaner than both of the other groups.

      A good team is Americans, Chinese, or Americans + Chinese.

      FWIW.

    6. Re:opposite of observed by Hognoxious · · Score: 1

      Manufacturing exports in the US are declining, so services exports have to some extent taken up some of the slack.

      Bullshit. The thing about the balance of payments is it doesn't necessarily balance. And when they told you that the clever kids didn't have common sense, they were just trying to make you feel better. You're thick, and that's all there is to it.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    7. Re:opposite of observed by Anonymous Coward · · Score: 0

      You're a racist scumbag.

      That may be true, but you can't tell that from 100 feet away.

      Still, it's better than being a nigger like you. You can tell that from 100 yards. A mile, if the winds blowing the right (or rather wrong - phewww) way.

      GO BACK TO THE JUNGLE YOU FUCKING MONKEY.

  20. Today's Real Life Business Environment... by tnk1 · · Score: 3, Insightful

    Today's Real Life Business Environment was created by the Hacker Ethic. Basically, the enterprise is defined as stuff that hackers create that is standardized into something that drones can operate cheaply, consistently and effectively. The limitations that exist are based on the lack of most worker's skills, rather than the "obtuseness" of so-called hackers.

    I'm well aware that there are head cases out there who can't cooperate with anyone, but who created the original standards for computing and the Internet? Academics and hacker-types, which are not mutually exclusive groups. The Hacker mentality is very cooperative... just not social in the sense of physical connection. As long as they are safe in their bastions, hackers tend to work together on topics of mutual interest, and very effectively at that.

    The problem is not the developer to developer interface, unless you insist on hiring literally minded drones, it is the business to hacker interface... which can be an issue. Business people like drones because they are cheap and predictable, even in their failures. The management of these Indian development groups smooths over the issues that hackers would bring straight to them. If the code isn't working, drone computing means you throw more developers and more time at it as long as it makes the deadline. Even quality can suffer a little. The hacker mentality means finding a better way of looking at the problem that isn't in the book or even telling the business that they are full of shit.

    The interface problem is real. Business has a right to be able to make goals. However, their problems are not with turning hackers into drones, it is how they can work to interface with the hackers, perhaps with support staff such as better testers and technical writers. I have never been at a company that could use drone developers more than it could simply use some good tech writers, but for some reason the business hires the drones and leaves the people with the communication skills in the dark.

    1. Re:Today's Real Life Business Environment... by Anonymous Coward · · Score: 0

      If the code isn't working, drone computing means you throw more developers and more time at it as long as it makes the deadline. Even quality can suffer a little. The hacker mentality means finding a better way of looking at the problem that isn't in the book or even telling the business that they are full of shit.

      The former is what I ran into in a specific area of the Windows org at Microsoft. Most, I believe, are not like this. Some are. Hence the post-Win2K org bloat and Vista.

      I tried the latter. They thanked me by laying me off. They didn't want to tknow that what they'd promised their VP wasn't the best solution for the customers.

      In certain parts of Microsoft today, if you think for yourself, you are into persona non grata territory. The drone "whateveryasayboss", ask-no-questions mindset of programmers of a certain nationality (won't contribute to the flamewar here against specific ones) is considered a feature by those who don't want their decisions and ideas questioned, just implemented so that they can claim credit for them, put them on their review, and... PROFIT.

    2. Re:Today's Real Life Business Environment... by aztracker1 · · Score: 1

      That's wild.. considering how open to the community other aspects have been, especially the MS-PL bits out there. Though many of these things are written by those passionate about software, who happen to work for Microsoft.

      --
      Michael J. Ryan - tracker1.info
  21. Re:Hackers vs Designers - Hackers Loose every time by sifur · · Score: 0

    Hackers don't make hacks. I feel that you don't understand the term 'Hacker'. The 'hack' in hacker is not about hacking something together, it is about hacking your way through an unknown to come out the other side with an understanding of a thing.

  22. I agree by cshark · · Score: 1

    I think this person has a point.
    Let's re-evaluate. But in doing so, let's be fair.

    A programmer is only as good or as bad as the direction he gets.
    I propose creating a new kind of middle manager.

    You know... someone competent who has a basic understanding of process and why it's important to spend the time to put it in place, lol.

    Or am I asking too much?

    --

    This signature has Super Cow Powers

    1. Re:I agree by Spazmania · · Score: 1

      A programmer is only as good or as bad as the direction he gets.

      Nonsense. If he's any good, he won't wait for direction. He'll proactively evaluate the big picture and start tackling it. That's called "initiative."

      --
      Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
    2. Re:I agree by tisepti · · Score: 1

      Initiative only works if the infrastructure supports it (and that sometimes means saying no). Say for example you are writing your book - call it the Art of Computer Programming - Volume Two and decide that the big picture thing that needs doing is to replace the typography system. Your book exists and can be printed as is. You are sure that your new stuff will be a big improvement. What should management do?

    3. Re:I agree by Spazmania · · Score: 1

      Initiative only works if the infrastructure supports it

      I never said otherwise... What I did say is that a programmer without initiative is not a good programmer.

      --
      Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
  23. tha'ts a very well thought out argument by circletimessquare · · Score: 1

    against the concept of genius

    in other words, not a very useful argument

    --
    intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it
  24. Really? by qoncept · · Score: 3, Interesting

    'American software development managers often complain that Indian programmers are too literal-minded,

    Really? I think we've all seen this thing. If you aren't beign literal minded, you're making assumptions. When you make assumptions, at least some of them are going to be wrong. I spend a lot of time fighting for better defined requirements, because it means I'll spend less time doing rework when what I give my customer isn't what they wanted. The example I always give them is this:

    You tell me college football, if you have possession of the ball and your knee touches the ground, the ball is down, whether or not the player was tackled. I give you a college football game, and the first time you try to kick a field goal, the ball is downed 7 yards behind the line of scrimmage because the holder's knee is touching the ground.

    If you want something, your requirements better document it. Developers with "better practices" understand this. Unfortunately the people who write requirements usually don't.

    --
    Whale
    1. Re:Really? by tomcode · · Score: 1

      It's a backhanded compliment. The author is making the case that Indian programmers are better, by saying people complain they pay too much attention to the requirements. I tend to agree that this article is more flame bait and self serving than it ought to be, and lacking in real data.

      --
      f u cn rd ths u cn gt a gd jb n cmptr prgmng
    2. Re:Really? by lennier · · Score: 1

      "You tell me college football, if you have possession of the ball and your knee touches the ground, the ball is down, whether or not the player was tackled. I give you a college football game, and the first time you try to kick a field goal, the ball is downed 7 yards behind the line of scrimmage because the holder's knee is touching the ground."

      Can you translate that for those of us who only speak Rugby?

      --
      You are not a brain: http://books.google.com/books?id=2oV61CeDx-YC
    3. Re:Really? by bar-agent · · Score: 1

      "You tell me college football, if you have possession of the ball and your knee touches the ground, the ball is down, whether or not the player was tackled. I give you a college football game, and the first time you try to kick a field goal, the ball is downed 7 yards behind the line of scrimmage because the holder's knee is touching the ground."

      In American football, the runner takes the ball and runs. If he is tackled or body-blocked or whatever and his knee touches the ground, that's it for the play. Except. After a team scores, that team can try to get extra points by kicking the ball through the goal. So the guy with the ball kneels to hold the ball in place so the kicker can kick it --- and his knee is down, that's it for the play, and the team actually lost ground in the bargain, because they moved the ball away from the goal to kick it better -- right?

      --
      i'd hit it so hard, if you pulled me out you'd be the king of britain [bash.org]
  25. Re:Hackers vs Designers - Hackers Loose every time by itsybitsy · · Score: 0, Offtopic

    What you perceive to be spelling errors were intentional typos.

  26. But it's green by travdaddy · · Score: 5, Funny

    In other words, are we 'too in love with the hacker ideal of the 1980s to produce programmers who are truly prepared for today's real-life business environment?

    I don't know, but us IT guys save A TON of money riding a skateboard everywhere, and it's environmentally friendly! Who's laughing now?

    -The Plague

    --
    Adidas To Bring Back Sneakernet
  27. Not just developers by dave562 · · Score: 4, Interesting

    The technology industry has moved beyond its infancy and become a fundamental part of most businesses. I'm a systems administrator and I started working in IT (MIS at the time) when I graduated from high school in 1996. In my childhood, I spent a lot of time hacking phone systems, hanging out at 2600 meetings, and doing all sorts of other not so legit activities with computers. I was interested in whatever systems I could get my hands on, whether it was a System 75 running Audix, a 5ESS/SS7 switch, Linux, Cisco routers, whatever. I read Internetworking with TCP/IP by Comer not because I was in college and had to, but because I wanted to understand what those around me were talking about. All of that development left me with a broad skillset that lacked focus. I developed a very high level understanding of how systems interconnect, and by working for some very good bosses, I developed an understanding of how the systems support the business processes of the organizations I worked for. I'm very much a stereotypical "Jack of all trades, master of none." sort of administrator.

    When there weren't many people out there with an interest in or hands on aptitude with computer systems, people with my skillsets were in high demand. In the small business sector, where companies can't afford separate DBAs, system admins, network engineers and so on, I fit in quite well. In the corporate world, I can't even get a job interview because they are looking for individuals who are highly focused on a single aspect of the overall network. The same thing holds true for developers.

    "Back in the day", being able to write code to get the job done was a mystical science for management types. Skilled coders were in short supply, so people who could hack programs together were employable. In this day and age, anybody can go to any number of colleges or trade schools and learn how to write decent code. Anybody can go to college or trade school and get an MCSE, or a CCIE, or any number of system/network specific certifications. Managers and employers want known quantities. They want developers who are going to deliver predictable code. They want system admins who are going to follow industry best practices.

    The technology industry has grown up. We aren't in the days of "Just make it work" anymore. We're in the days of refining how things work. Best practices have been established. Frameworks for doing things have been established. Companies are just looking for people who can "Make application X do A and B." reliably.

    1. Re:Not just developers by aztracker1 · · Score: 1

      I think you probably need to hone your resume skills a bit, if you have a decade of experience and can't get into a related job in the industry. Programmers certainly get jobs with a diversity in programming interests. Especially when expanding one's knowledge with a few formal concepts, even from books and online articles. And software development shifts far faster than hardware.

      --
      Michael J. Ryan - tracker1.info
    2. Re:Not just developers by Anonymous Coward · · Score: 0

      The technology industry has grown up. We aren't in the days of "Just make it work" anymore. We're in the days of refining how things work. Best practices have been established. Frameworks for doing things have been established. Companies are just looking for people who can "Make application X do A and B." reliably.

      Completely. And the most important word in that is reliably. Which means: deliver to promise every time. I don't mind if it takes a bit longer than it would otherwise, or costs a bit more, as long as it's predictable; I can plan around it.

  28. Apples to Oranges? by lie2me · · Score: 2, Insightful

    "hacker ethic" as in "getting things done", versus "professional ethic" as in "cheating your way through school and career"? Let me see...

    1. Re:Apples to Oranges? by itsybitsy · · Score: 1

      Actually it's those with the hacker ethic that cheat their way through life with "hacks" rather than doing things right and professional.

    2. Re:Apples to Oranges? by descil · · Score: 1

      Mostly I agree but I would say that the professional way (especially in school) is not always the right way. Sometimes hacks ARE the right way... so long as you clean them up, later. I became a programmer first, then went to school for it, then learned that they were teaching me to be stupid, and left. Professional all the way, but a bit hackish too.

    3. Re:Apples to Oranges? by Crias · · Score: 1

      Oh really? http://en.wikipedia.org/wiki/Hacker_ethic Hacker Ethic is knowledge sharing, decentralization, respect based on merit. Compare that to the "professional" environment where certain races or genders can't advance past the "glass ceiling". Yup, those hackers sure suck. Generalizing is fun.

    4. Re:Apples to Oranges? by itsybitsy · · Score: 1

      That hacker ethic propaganda is a blatant attempt to rewrite history by the Cult of Hackers. The fact is that hacking is a poor substitute to design.

    5. Re:Apples to Oranges? by Crias · · Score: 1

      What is proper design?

      Is it spending 3 weeks drawing diagrams that, in 3 more weeks, won't represent the true state of the system at all?

      You draw your diagram. I'll spend 1 night doing a rough-shot prototype. I'll "hack" it.

      Then I'll use that prototype when I create a well-architected system. Then, since I share my stuff lots, other "hackers" will help improve that design.

      Be careful when you discard one set of "propaganda", and listen blindly to another. Maybe "hackers" aren't so "evil" after all. After all, I don't remember signing up for any cult.

    6. Re:Apples to Oranges? by mcvos · · Score: 1

      Actually it's those with the hacker ethic that cheat their way through life with "hacks" rather than doing things right and professional.

      Those with hacker ethic cheat their way through life by getting stuff to work, rather than bogging everything down with the proper paperwork.

  29. No by MBCook · · Score: 4, Insightful

    It's actively helpful.

    Besides occasionally helping to solve an "unsolvable" problem, there is distinct difference between people who like figuring things out and coding, and people who just code.

    People with the "hacker ethic" often have experience with a wide range of languages or disciplines, since they are interesting in knowing many things. This gives this a wide array of knowledge to draw on. The Mythbusters, in their RSA speech, said that they don't know a lot about any subject, but they don't know a lot about a lot of subjects, helping them succeed where others run into stumbling blocks. Same thing for hackers.

    Of course businesses, at least at some point, like the hacker ethic. Many businesses, at least initially, would rather have the hacked up system that works and they can make money off of than the "correct" answer of "it's too complicated" or "it can't be done". Sure this code can become a headache later (a very big one), but that's really because people didn't invest enough in paying off the technical debt in the code. If they had improved it over time it wouldn't be a large headache later.

    The people I've run into who don't have at least a little of the hacker ethic aren't good programmers. They may be able to program, but they don't move outside their little world of what they know how to do and what they use. The only improve when forced to (by being given a new assignment, etc) and they only do what is necessary to finish that assignment. Any knowledge they gained that they didn't need, they gained because they didn't realize they didn't need it.

    But if they were the kind of person who wanted to learn that kind of thing, they'd have the hacker ethic.

    It's a good thing. It keeps programmers sharp and interested. It helps them have more of the necessary skills when a new challenge arrives... or at least be able to pick up that skill faster/easier.

    --
    Comment forecast: Bits of genius surrounded by a sea of mediocrity.
    1. Re:No by mrboyd · · Score: 1

      The main problem with hackers is that once they figured out the solution to the puzzle they tend to lose interest in the subject and aren't always quite apt to deliver finished product. People with less curious tends to be less prone to boredom and better suited to finish task.

  30. Horse Pucky by Greyfox · · Score: 4, Interesting

    There are just a bunch of really bad programmers out there. Degrees and nationality are largely irrelevant to skill at it. Don't blame "kids these days" or whatever because you're not good at filtering out the bad ones. It's not particularly difficult to spot the good ones, they're pretty enthusiastic about the questions you ask them and the problems you give them when you're interviewing.

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    1. Re:Horse Pucky by HappySqurriel · · Score: 1

      One thing I think is lost on a lot of people is that programming is much more of a "Craft" then a simple skill that can be picked up; and the predominant factor in whether someone becomes a good programmer or not is whether they receive good guidance, mentor-ship and training when they first start programming in a corporate environment. I have seen far too many organizations who believe they're saving money by not hiring senior developers, and by not training their staff in the technologies they're working with; but (in the long run) it costs them more money in the long run to fix their mistakes, and they lose a lot of respect of their clients because of their poor product.

    2. Re:Horse Pucky by corrie · · Score: 1

      Amen, brother.

  31. Re:Hackers vs Designers - Hackers Loose every time by itsybitsy · · Score: 0, Flamebait

    Hacker:

    * someone who plays golf poorly.

    * a programmer who breaks into computer systems in order to steal or change or destroy information as a form of cyber-terrorism.

    * a person who hacks a tree down with an axe.

    * a person with too much time on their hands.

    * someone who can't design software.

  32. software engineering by Deanalator · · Score: 2, Interesting

    "...there may be wisdom in offering a new kind of computer engineering degree targeted toward the student who is more interested in succeeding in industry than exploring computing theory."

    Which is why many universities offer software engineering degrees as a more practical alternative to computer science degrees. Software engineering degrees were offered at many of the schools I was looking at back when I started my undergrad in 2002. I was actually annoyed at how many software engineering classes my university crammed into my computer science curriculum since I had no intention of becoming a cube monkey.

  33. Hackers who aren't hackers by cromar · · Score: 3, Interesting

    are we 'too in love with the hacker ideal of the 1980s to produce programmers who are truly prepared for today's real-life business environment?'"

    If only we were more in love! The thing is... the "cowboys" who can't shoot straight (e.g. write scalable, maintainable code) aren't real hackers anyway. It's a lot easier to be able to bang something together with glue and nails than it is to truly hack development. Any responsible hacker is going to know all about best practices, when to break them, and when to find new ones. There is beauty in simplicity as well as in obscure complexity. Whatever. Let the next generation all take classes in SharePoint or some crap like that and the good programmers among us may have even better job security than we had hoped for!

    1. Re:Hackers who aren't hackers by sifur · · Score: 0

      I have to totally agree with this. There is a definite distinction to be made between 'cowboy coder' and 'hacker'. I consider myself a hacker in the traditional sense of the word (pre media buzzword) and I spend many long days and nights studying other people's work, reading books, discovering the latest trends and methodologies in the field of software development, etc. Constantly trying to improve my skills, correct my mistakes, learning better ways of doing things, and keeping an open mind. A cowboy coder has a closed mind and is more in line with the post-media-buzzword meaning of hacker. Someone who dances in code for fame and performing tricks to impress co-workers, not for the pure joy of learning and understanding. For me, the technology industry is like a landscape and I am always excited to see what is around the next bend in the road or over the next hilltop. It is a journey that I often make alone, occasionally meeting fellow travelers to discuss our experiences.

  34. To do list by Runaway1956 · · Score: 1

    I MUST post this story on every developer forum on the web. Start with:

    Ubuntu forums
    Suse forums
    Debian forums
    Redhat forums
    Mozilla forums

    Ohhhh, I better get busy, I can fill in the list as I go.........

    --
    "Windows is like the faint smell of piss in a subway: it's there, and there's nothing you can do about it." - Charlie Br
  35. the answer is no by uepuejq · · Score: 1

    there are way more incompetent morons running around with degrees who are proficient in java to state that this is the case. what is the real question here? are intelligent programmers from the united states too individualistic to conform to some management dictum? perhaps instead of considering ourselves innovative and capable of addressing issues as they arise, we could start thinking of ourselves as manufactured commodities designed to steal the business from other national economies in order to make old-fashioned newspaper headlines about how the 'american hacker' mindset doesn't work when compared to some indian bullshit.

  36. Re:Hackers vs Designers - Hackers Loose every time by Anonymous Coward · · Score: 0

    Oh noes, we better catch them!

  37. Re:Hackers vs Designers - Hackers Loose every time by Spazmania · · Score: 5, Insightful

    Things like PERL are deeply disturbing to anyone with a sense of design.

    Perl is glue. Glue is messy. It's supposed to be messy; it handily fits things together that wouldn't otherwise interoperate.

    Not much of a designer if you don't even know what glue is for.

    --
    Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
  38. Author, author by Anonymous Coward · · Score: 0

    To be sure, self-taught 'cowboy coders' â" the hallmark of today's programming generation in America â" are technically proficient, McAllister writes, 'but their code is less likely to be maintainable in the long term...

    I take it that McAllister writes books and not code.

  39. Re:for u me by dintech · · Score: 1

    It took you that long to read the summary? :)

  40. Re:Hackers vs Designers - Hackers Loose every time by amicusNYCL · · Score: 1

    So you just don't know the difference between "lose" and "loose", and between "to" and "too", correct?

    --
    "Our two-party system is like a bowl of shit looking at itself in a mirror." - Lewis Black
  41. w/o theory its gambling by Anonymous Coward · · Score: 0

    wisdom in offering a new kind of computer engineering degree targeted toward the student who is more interested in succeeding in industry than exploring computing theory

    I read this suggestion as meaning colleges should produce engineers that know how to obey by standards but have no idea about the basics of computing?

    Really, since when has hacking anything to do with computing theory? Hacking means some rapid prototyping and a style of coding that favors experiments over long winded planning. Usually hackers are the one's throwing computing theory out of the window and just throw something together to demonstrate a concept or some cool modification. In that context it does not matter if it performs in all cases or on large data sets.

    So if you want serious engineers that build bridges, I mean software, that work reasonably in all specified contexts, you better don't do it by hacking.

    There is a place for hacking and for serious engineering with process and knowing what the end goal is. Good engineers can do both and they certainly don't trade "succeeding in industry" for knowing what others have learned and demonstrated (theory).

  42. HA HA HA so very wrong by Anonymous Coward · · Score: 1, Insightful

    I have worked for many years with developers from around the world....

    I find this entire discussion funny.....

    1. What you forget is that 70% of the time the customer does not even know what they want.
    2. Typically the "project manager" does not know how to achieve the desired result

    at this point you then hand it to the programmer as a set of "make this work documents"....

    If sent to someone without the creative angle.... they will give you 100% what you ask for but that will be 30% of what you really need.
    If you take the cowboy hacker developer he will see that the specs do not take into account many items that need to be built. I see lots of holes in customer requests and docs coming from project managers that would not take into account security, or leave out critical data required in later development. In a perfect world every development team would have a design engineer who's job it is to check the PM's work for these sorts of things.... Note this would be a person of high creativity and coding capabilities. Since companies do not have these people give me the hacker style coder every day for real end to end ap development and I will out source the make work stuff.... creative guy builds the ap... step by step programmer from cheap foreign market make me some classes to handle these database transaction.
    As to supportability.... again make me laugh...

    I have never seen any project that was unsupportable.... some are a bit weird and out of the box... but if you are a developer worth 2 shakes the first thing you should be able to do is dis-assemble code. Something I see largely lacking from the Indian market...

    To truely be effective as a developer you need to understand the whole picture... That sometimes takes alot of application experience and often vertical market knowledge.

  43. Ethics are not meant to promote business by pisco_sour · · Score: 1

    The Hacker Ethic is not a set of guiding principles designed or built to promote the adaptation of programmers to development processes and business planning. And it shouldn't have to be.

    Very well, you may want to train people within a different mindset prepared to fit into a process, acknowledge the existing rulebook and basically play nicely by it, working with others in developing business-oriented code for business purposes. But the Hacker Ethic is much more a cultural development for what was at its time mostly a subculture, than it is a series of well-defined principles for development. The Hacker Ethic emphasizes a series of value and skills that are perhaps way beyond a business development context - in that they belong much more in the future than they belong in the well-defined production/industrial contexts that we have come to tbe acquainted with.

    So to put forth such an argument, that the Hacker Ethic harms developers' possibilities of conforming to market standards, is just that. It means conforming, thinking inside the box, and so on. Such is not the Hacker Ethic, and is not meant to be, and doesn't have to be. Just because there may be other, different objectives than those embodied in the HE, does not mean it needs to be put aside, transformed, or somehow modified. It's just different contexts.

    --
    http://castorexmachina.wordpress.com - Filosofía, tecnología y cultura.
  44. You are not a cowboy. by RingDev · · Score: 3, Insightful

    I'm a self-taught cowboy programmer.

    ...

    My coworkers like my code reviews because I'm thorough and careful.

    You are not a cowboy programmer.

    Cowboys do not do code reviews. Cowboys do not question their own code. Cowboys just throw code at any and all situations. Cowboys don't test. Cowboys treat users like idiots. Cowboys don't document.

    -Rick

    --
    "Most people in the U.S. wouldn't know they live in a tyrannical state if it walked up and grabbed their junk." - MyFirs
    1. Re:You are not a cowboy. by Sponge+Bath · · Score: 3, Funny

      Cowboys don't document.

      Mama, don't let your babies groy up to be cowboys.

    2. Re:You are not a cowboy. by Anonymous Coward · · Score: 0

      Cowboys do not do code reviews. Cowboys do not question their own code. Cowboys just throw code at any and all situations. Cowboys don't test. Cowboys treat users like idiots. Cowboys don't document.

      Oh... so cowboys are the guys who write most open source software?

      That explains a lot.

    3. Re:You are not a cowboy. by Anonymous Coward · · Score: 0

      Cowboys don't preview either :-).

    4. Re:You are not a cowboy. by Anonymous Coward · · Score: 0

      peter *is* a cowboy. if you doubt
      me, just ask him some time why
      roberta lembke kicked him off the
      campus computers.

    5. Re:You are not a cowboy. by mcvos · · Score: 1

      Cowboys do not do code reviews. Cowboys do not question their own code. Cowboys just throw code at any and all situations. Cowboys don't test. Cowboys treat users like idiots. Cowboys don't document.

      Oh my god, I'm a cowboy!

      I didn't know.

    6. Re:You are not a cowboy. by ivucica · · Score: 1

      Wrong, they just don't like doing all the stuff you mentioned.

    7. Re:You are not a cowboy. by seebs · · Score: 1

      It's an interesting question. Many people would categorize me as a cowboy -- I'm careless about procedure, have no formal training, and will happily dive into a ridiculously complicated and difficult task without adequate planning.

      In terms of TFA, I think I'm a "cowboy". I don't think this reflects well on TFA, though.

      --
      My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
  45. The industry is wrong by Anonymous Coward · · Score: 0

    Formalizing everything about programming into tedious red tape is not how to efficiently or properly write code. If the hacker ethic is incompatible with the industry, then it's the industry that is wrong.
     
    Innovation, true innovation, comes from giving your programmers and engineers some creative freedom, and some elbow-room to experiment and try things out of curiosity and pure ambition. The Amiga is a perfect example -- it was possible only because the Amiga team was afforded to be creative with their work and make risks that most modern managers today would be too afraid to take. Indians? They're nice people and I love working with them, but they're too much like obedient puppies and not so much like daring inventors.

  46. Re:Hacker Ethic? by zoips · · Score: 1

    Way to totally buy into the incorrect media usage of the term "hacker." Congratulations.

  47. Cowboy Up. by SoupIsGood+Food · · Score: 4, Interesting

    When Indian companies come up with globally game-changing software on the same timetable as a Silicon Valley start-up like Facebook or Google, we'll talk. When a Chinese company has the long-term track record of quality and maturity that IBM and Oracle exhibit, we'll talk.

    Until then, the cowboy coder makes better software in less time at the beginning of their career, and matures into a more competent team player as the years roll by and experience piles up. This isn't a weakness, this is why we have an IT industry at all. H1B coders are generally useless until they learn to Cowboy Up... and once they do, there's not really much difference between them and the locals. (I wish more of them would apply for permanent residence and bring their families over. I like immigrants who want a better life, I don't like scabs.)

    Engineers at Honda start out their career working for the racing division, designing high-performance parts. Engineers at the end of their careers are assigned to subcompacts and mini-vans. This is because Honda needs fresh insights and youthful eagerness and excitement, and if the engineer flubs it, the only ones who know are the racing team. More importantly, Honda needs experienced hands who know their craft inside-out and upside-down to engineer the components millions of their customers will be using everyday, and their senior engineers generally appreciate the stability and predictability of a long-term ongoing project.

    1. Re:Cowboy Up. by Zigurd · · Score: 1

      Huawei and ZTE already play at the highest levels of the telecom industry. Perhaps in software they are not up to the level where they could make an iPhone or Android by themselves. But underestimating Chinese and Indian companies would be a mistake, especially the most prestigious ones who have their pick of elite university graduates. This change happened within the last 10 years. It may take another 5 or 10 years for Asian software developers to make a breakthrough Web application but do not count them out.

      Run of the mill IT outsourcing at second and third-tier firms (or even first-tier firms that grew too fast) is another matter. This is where the horror stories come from, and, often, the people managing these outsourced resources are doing it because they ran out of onshore yes-men.

  48. Re:Hackers vs Designers - Hackers Loose every time by baap · · Score: 1

    Hacker:

    * someone who plays golf poorly.

    * a programmer who breaks into computer systems in order to steal or change or destroy information as a form of cyber-terrorism.

    * a person who hacks a tree down with an axe.

    * a person with too much time on their hands.

    * someone who can't design software.

    ...excerpt from "Hacker for Dummies".. /\ \/

  49. Re:while cheaper quality { send work overseas } by bsDaemon · · Score: 1

    Think how much more time you just sacrificed validating the article's existence with a response?! Fascinating...

  50. Learning details is orthogonal to hackerism by caywen · · Score: 1

    I think that opinions generalizing talent along lines of nationality is usually a load of bullshit fueled by the prejudices of the one doing the opining. This sounds like hubris to me. Perhaps they should consider developer productivity to be as much a function of management and empowerment rather than some innate ability of the people of some nation.

    Wake me up when HTC makes their own handheld OS.

  51. 2c worth by BlackSabbath · · Score: 1

    Speaking from a perspective of 23 years experience in IT I can honestly say that the single biggest impediment to the successful delivery of any IT project is the failure of management to understand the nature of what it is we do.
    I am currently working as an Integration Architect in a rather large IT programme within which numerous separate-but-connected projects are being run. I find myself having to explain again and again to the PHB's what re-use means. Why we're concerned with maintainability. Why having a sensible data dictionary is good. Part of the problem is the way the individual projects are being run means that there is no value placed on architectural considerations which have a financial impact (cost saving) over the long term. PM's are focused on their own deliverables/budgets/deadlines and in our specific instance, the team responsible for "integration" does not have any clout - we work by cajoling, wheedling, nagging and stealth. If I had a buck for every time I had to present a "SDLC for dummies" powerpoint to a bunch of PM's and middle-management...

  52. As a non American.... by kaffiene · · Score: 1

    As a non American, allow me to say that I think this article is bullshit. The world needs hackers today every bit as much as it ever did. Creative thinkers lead to creative solutions. It seems to me that arguing that all programmers should be drones is the kind of thing you'd expect from some know-nothing PHB.

    Hack on, Yanks!

  53. Different Cultures by mpapet · · Score: 1

    Now that we're past the absurdities in the summary, it may be a useful reminder to many the economic culture in the U.S. still has a strong 'cowboy' mentality.

    I would argue it rewards and embraces 'cowboy' coding because it's the cheapest/fastest way to implement a new idea.

    Having dealt with Asian cultures in a business environment, the cultures don't reward the 'cowboy mentality.' They can reproduce cheaper/smaller/faster things very, very well. But don't ask them for new ideas. American business is full of new ideas. I just wish we had a less restrictive legal environment to let those new ideas flourish.

    --
    http://www.maxineudall.com/2010/02/should-economists-be-sued-for-malpractice.html
  54. At least flame the right guy by consonant · · Score: 4, Informative

    Vineet Nayar does not 'belong' to HTC. he is the CEO of HCL Technologies. HTC is a Taiwan-based mobile handset manufacturer (among other things), and a pretty good one at that.

  55. Re:Hackers vs Designers - Hackers Loose every time by descil · · Score: 1

    Thank you!

    The original article is so annoying. Nasty nationalized stereotypes trying to make people think you have to either be sloppy or conformist. My designs are beautiful, elegant creations. They rarely follow any kind of "organizational development process" (except that I do MAKE a plan, though it only loosely gets followed: that's the idea) or "coding standards" (except in security, readability, and maintenance). I'm definitely not a hacker, but I'm not some half-dead brainwashed programming drone, either. Thank God.

    Your writeup provides nice simple dichotomy with direct correlations and some minor humor, no hacking or cowboy shooting needed. And you don't seem terribly at risk for being accused of conforming to organizational development processes and coding standards, either. Cheers to you, particularly for the typos!

    (ftr, it's true that I'm unemployable by most of the nasty corporations, being self-educated and kicked out of school for my non-cowboy, non-indian points of view. I don't really mind, as I still get paid enough by my lovely corporation to live by. At least til the project's done...)

    -another american designer

  56. Hackers, Cowboys and Cogs by sesshomaru · · Score: 1

    Hacker: A natural computer genius, grew up with a keyboard in his hand. Hackers may have a formal education but they learned the guts of computing long before that. They have an almost intuitive, because it is deeply learned, knowledge of what works and what doesn't when it comes to computers. I think being a hacker is something to be aspired to, but I doubt that anyone can apply the title to themselves. Well, some people can, because they're just that good.

    Cowboy: An independant soul who may be too stubborn to admit he is wrong about certain ingrained behaviors he's picked up over time. Sometimes people will put up with his ways because he is just that good, other times he'll make a catastrophic error and send everything to Hell. Not good or evil, just stubborn and independent. Sometimes his stubbornness can work in a company's favor, when the political thing to do is actually the wrong thing, and the cowboy won't "go along to get along." Sadly, the company is unlikely to thank the cowboy for this.

    Cog: Mister Cellophane, a nobody who anyone can step on, a little grey man. This guy figures "you take care of the company, the company will take care of you," but is surprised when being taken care of by the company involves a pair of cement shoes and a trip to the pier. Cogs do their best to be easily replacable, and try to make themselves politically popular. Maybe that path succeeds for them, but maybe they find themselves the sacrificial lamb. In MIT slang you could possibly call this person a tool.

    I parse the article this way "We'd like less independent geniuses and more interchangeable cogs, please."

    --
    "MIT betrayed all of its basic principles."
  57. You can take this process and shove it by TheGrapeApe · · Score: 2, Interesting

    and they're less likely to conform to organizational development processes and coding standards.

    A lot of times, the "Cowboy Coding" is more effective because the "development processes and coding standards" were implemented and enforced by phonetaggers who have never written a productive line of code in their entire lives. Those who are inclined to break them, naturally, are more productive and seem more effective - despite the grumblings of the phonetaggers that they are "unmanageable".

    But, really - Does "management" have any right to blame them? They spent the last decade proving to every developer the idea that if you allow yourself or your work to be commoditized, we will ship you or your job overseas where it can be done cheaper. And "development processes and coding standards" are usually implemented with the intent of "commoditizing", to a certain degree, the work of coding....and you're going to blame the *developers* for rejecting that? Middle management in the US basically *created* the environment that forced developers to either become "Cowboys" or to compete with people making $4/hr overseas.

    Speaking on behalf of coders everywhere - You can take your "development processes and coding standards" and shove it - I'll keep my job and let you grumble under your breath about how I am "unmanageable", thank you.

  58. What is the "hacker ethic" any more? by AxelTorvalds · · Score: 1
    Somewhere in the last 2 decades "coding" became the singular aspect of "hacking." A lot of other things have happened in that time, a huge number of people have decided or "interpreted" or who knows what that "Functional programming" is programing with procedures rather than objects. "Object Oriented Programming" no longer has nearly as much to do with modeling so much as it does calling modules "objects." A webpage that does database I/O now constitutes an enterprise application... I suspect it's sort of the backlash of the .com boom, at first we'd hire anyone who could fill a seat as a "web developer" then the 9/11 recession happened and we culled out most of the dead wood but the die hards that picked up some skills kind of stuck around, now a days they are sort of senior guys when in reality nothing could be further from the truth.

    Coding is nice and all, but good communication, good engineering, and good design (not graphics design) are parts of the old skool "hacker ethic." There was a time when you touched a program you tried to leave it better than you found it and anticipate what the next guy will need or want. That's becoming a rarity and some modern paradigms like Agile seem to ignore it completely, you're wasting energy and time if you "over engineer" anything or try to build something before you need to.

    Where or if you went to school doesn't matter, the tools you choose to use don't matter, even if you're a low-level assembly and machine code guy or as javascript in the browser kind of guy doesn't matter that much, and it certainly doesn't matter if you can code faster than anyone else or if it takes you twice as long as the next guy (there is probably another problem when that really matters much... nobody likes to admit it so much as revel in the coding marathon glory but when all you do is code, you simply don't have time to engineer or solve problems better..) Good hackers, write programs that are easy to understand and maintain and they try to anticipate what the next guy might need, bad hackers/cowboys/whatever don't. Now I've run a few outsourcing efforts and I'd say they've got shit for hackers in India and China, seems we've got shit for a hackers in a lot of places in America too though. Good hackers tend to finish the job, not "get it working."

  59. What we need is a professional institute by petes_PoV · · Score: 1
    What we have at present is (still) an immature industry. No-one knows how to write high-quality code, that will work unconditionally and predictably under all circumstances - simply because no-one has ever written any. Everything being produced today - from a kiddy with a visual basic IDE through to life-support and aviation systems contains known bugs and even more unknown bugs. What we have now is akin to mechanical engineering from 1000 years ago. Some enormous structures we create today (e.g. the internet) will remain for generations, but they'll be hopelessly complex, inefficient, need constant maintaining and may not even be that suitable. A bit like the roads system (well, in those countries that have been around for a thousand years, anyway). Other products of our time will be marvelled at, but more along the lines of "why did they do that" or "what were they thinking" or "here's an example of how NOT to do it".

    To get a professional basis for future work, we need something like the IEE or IEEE. Which upholds standards of professional work and polices the quality of product from it;s members.

    It would still make room for non-members (or "cowboys" as they would no doubt be termed) to be employed, though presumably they couldn't command the same rates of pay as the professionals, as they would not have the backing and guarantees from the organisation and the qualifications it demands. Until we get somehting like that, we're simply just playing at programming.

    --
    politicians are like babies' nappies: they should both be changed regularly and for the same reasons
  60. it's a cultural, not educational, problem by rsw · · Score: 1

    As in, the culture of the company. I'm not a software engineer any more, I'm an electrical engineer (I worked as a coder while I was in college). In particular, I'm an analog (and sometime digital) circuit designer. I learned nothing about business practices, Six Sigma, et al in school (S.B. and M.Eng in EE and CS from MIT). Why? Because I spent all of my time taking real EE/CS classes. When I got a job in the industry, _then_ I started learning all the practical stuff I hadn't had time for in school. Why do EE companies do it this way? Because the cost of failure is so high: we spend a million dollars taping out a chip and it doesn't work because I decided to cowboy my circuit and we're out our money.

    Many software companies don't see such large quantization steps in their failure cost: we lost a week here or there because the newbie's coding practices don't mesh with the rest of the team, but management is just watching their Gantt chart and we'll push on them to hit their milestone on time anyway; fuck 'em, they're just code monkeys anyway.

    See the difference? The assumption that designing bad software has a small cost (mostly because it's deferred until much later when it's discovered, plus the assumption that any bug that's discovered is easy to fix) is built into the management style of the software company; the assumption that failure is extremely costly and the necessary culture of rigor are built into the management style of the EE company (well, not all EE companies... but there are shitty companies in every industry).

    So why not teach EE students all about Six Sigma et cetera? Well... when? I took 5 or 6 classes a term (4 is average at MIT) and still took 6 years to do my degrees. There's just too much to cover in EE/CS to get it done---and yet there's no "cowboy issue" in my industry, as far as I can tell.

    So is there really less to learn in Software Engineering? In other words, is this just a fundamental difference between EE/CS and SE? I say absolutely not. There's an incredible amount of material to cover in SE without getting into business practices: first, pretty much any CS topic is fair game for software engineering (yes, I know they're not quite the same thing). Then there are more EE-like subjects that most SE people don't get, but should: signal processing, feedback systems (yes, they exist in software just as in hardware, and they can be analyzed with the same fundamental tools). There's plenty of math to learn: discrete math, algorithms, set/group/category theory, et cetera. Then there are classes on system architecture, complexity management, and a million other really hard problems. Given all of this, and only four years to fit it all, any time spent on business practices and Six Sigma is an unmitigated waste of time. It can be learned faster and better on the job---after all, you may as well learn the business practices at the company you work for, while actually doing useful work.

    Far from producing "unemployable" grads, a program with no focus at all on "business practices" will turn out coders who have wrung from college everything that ought to be learned in an academic environment, and who are ready to be apprenticed to an experienced mentor who will teach them the practical details that are dirt simple to understand.

    In other words, let Vineet Nayar's coders waste their time learning about bullshit Business Practices instead of expanding their minds by learning something difficult and interesting. You need code monkeys to do shit work anyway. There's always a lowest common denominator somewhere.

    Or how about this: do you think when you go interview at Google they're more likely to ask you about Six Sigma, or about problems arising in the design of a secure/anonymous/reliable distributed filesystem?

    1. Re:it's a cultural, not educational, problem by Hognoxious · · Score: 1

      do you think when you go interview at Google they're more likely to ask you about Six Sigma, or about problems arising in the design of a secure/anonymous/reliable distributed filesystem?

      IHNIAG, but doesn't it depend on what kind of job you're applying for?

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  61. That guy again? by istartedi · · Score: 1

    I can't believe we're hearing from that outsourcing suit again.

    Of course most US engineers don't want a mere vocational education. What Mr. Outsourcer is looking for is compliant graduates from 2-year schools who will then go on to be "finished" in whatever in-house training they offer (almost certainly, they will be programming Java under Eclipse).

    He shouldn't come crying to us when the next Twitter, Google, Slashdot, etc. is invented by some dude from America who wrote the whole thing in Haskell using vi.

    --
    For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
  62. Computer science is irrelevant to business. by emes · · Score: 2, Informative

    I can't understand why anyone is surprised that people trained in computer science are ill equipped to develop
    business software.

    How many computer science graduates typically have the slightest clue what accounting is, or how it works?

    How many computer science undergraduate programs deal with the customary and legal environment of
    business?

    How many computer science programs deal with the realities of designing and maintaining a datacenter,
    in theory and/or practice?

    Computer science is a theoretical self-serving discipline designed to produce more computer science
    graduate students. Anyone who learns practical, appropriate, and customary reality does so more
    often despite rather than because of their education.

    Time for a radical reassessment.

    1. Re:Computer science is irrelevant to business. by Anonymous Coward · · Score: 0

      Yeah... All those worthless computer science designing the tools you use every day...

      The answer to all of your questions is "more than you think."

  63. Depends on where you live by Sycraft-fu · · Score: 2, Informative

    Cost of living varies wildly across America. Thus how much you need to make to have a good life does as well. Where I live, housing is cheap. I have a condo where principal + interest + taxes + insurance + HOA fees is less than $1000/month. Obviously you can live pretty cheap here. Rentals are, of course, less than that. What's more, that's in the city so I can (and do) bike to work, saving on transportation costs. Now compare that to when my cousin went to school in California. His parents rented him a place that they then sublet to more kids. It was 4 people each paying $1000/month in rent. We are talking literally over 4 times the cost, and not as nice a place.

    That isn't to mention other cost of living things. The old bank rule is take your gross monthly income by 3, 1/3rd for taxes 1/3rd for house 1/3rd for everything else (that is how to determine if you can afford a mortgage or not). The reason for that is because it is easy, but also rather accurate. As housing costs go up, so do other costs normally. Thus if your place is running you $4,000/month, you can expect that your other expenses (including setting aside money and such) will run you around $4,000/month.

    Then there's kids, and that is a whole different situation. What works fine for a single person does not work fine when you are supporting children, who are rather costly and generate no income.

    As such while $80,000 where I live is plenty, you can have a good life with children on that or much less, that's not the case in, say, New York City. Have a look at costs of living there sometime. Then consider that with a family, a little studio apartment isn't an option, you need a larger place.

    There are indeed places where $80k is barely enough to do ok on.

    1. Re:Depends on where you live by ksheff · · Score: 1

      Or if your divorced: 1/3 taxes, 1/3 child support, 1/3 everything else.

      --
      the good ground has been paved over by suicidal maniacs
  64. Creativity industry by geek2k5 · · Score: 1

    Actually, there is a 'creativity' industry out there where people teach people techniques that enhance creativity.

    Check out Julia Cameron's "The Artist's Way" as a start. The book is a twelve step program to releasing your creativity.

    Edward de Bono is another person in the 'creativity' industry, one who has been writing books on the topic for forty or so years.

    Of course, a major part of creativity involves imagination, which can be limited by your upbringing. If, when a child, you are told that something you have imagined is 'stupid' because it doesn't exist or it is impractical, you tend to shy away from using your imagination. That is why a lot of 'remedial creativity' exercises attempt to get you to use your imagination again, through what seems to be childish activities.

    1. Re:Creativity industry by MrCrassic · · Score: 1

      As the post above mentioned, I don't think you need a book. You just need to get out there and do it. "Creatives" become creative by failing, over and over again. And when they're bored, they fail some more.

    2. Re:Creativity industry by Hognoxious · · Score: 1

      Edward de Bono is another person in the 'creativity' industry, one who has been writing books on the topic for forty or so years.

      If you can industralize it, it isn't creativity.

      I've read some of his stuff, he was trendy when I was in high school. Overrated[1]. If you're creative it tells you what you already know. If you aren't, it won't tell you anything, but you probably won't notice.

      [1] EdB, not highschool.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    3. Re:Creativity industry by geek2k5 · · Score: 1

      If you can industralize it, it isn't creativity.

      Is the 'creativity' industry 'industrializing' creativity or is it attempting to help people develop and enhance their creative abilities? Or does it depend upon who is doing the teaching and what methods they teach?

      I consider myself to be an optimist who believes that almost anybody can learn to be creative. But then I'm someone who has no problems being creative in quite a few different areas. And I'm always open for ways to further enhance my creativity.

  65. Standards for Coding by TW+Burger · · Score: 1

    Albeit true that there is a cadre of self proclaimed hackers in America that forsake all and any form of maintainability in the code they write this is generally not true of professionals that are trained at places like MIT, Waterloo, CalTech, or BCIT. My experience as a gun for hire project saving consultant is that generally the absolute crappiest of source code comes from overseas out-sourcing (although, in all fairness, the worst examples I've come across are made in America). It's not because the programmers in India, Vietnam, Romania are bad - some, if not many are outstanding. It's because the managers are forcing poor work habits to increase productivity (and profit) - they are not paid for comments and proper variable names, only for the lines of code.

    Professional computer programming is only about 50 years old. As a profession it is virtually brand new and standards, except for core, common sense axioms, are mostly short lived fads ("Scrum" is about the most inane yet). Even the basic tool, programming language, changes every few years. LISP, Clarion, Delphi, PL/1, FORTRAN, C, C++, Java, and now C# were and are touted as the standard to work from. I was first taught assembler and then COBOL (shows my length of time in the trenches).

    A new kind of computer engineering degree is not needed an established set of standards is required. When a body of standardization is in place and true universal standards are established, then the quality of coding will become uniform. I do doubt that this will happen in the lifetime of anyone reading this.

  66. Re:Hackers vs Designers - Hackers Loose every time by Anonymous Coward · · Score: 0

    What you perceive to be spelling errors were intentional typos.

    So you just don't know the difference between "lose" and "loose", and between "to" and "too", correct?

    *Whoosh*

    Obviously the GP was talking about dating hackers, not employing them.

  67. Re:Hackers vs Designers - Hackers Loose every time by Anonymous Coward · · Score: 2, Insightful

    Of course, you could argue that you wouldn't need glue if things were designed properly in the first place. I'll take my steel frame reinforced building over your glued together rocks any day.

  68. CS is the "liberal arts" degree of the sciences by spiffmastercow · · Score: 1

    Or at least it is at the BS level. The idea is to teach people how to break big problems down into little problems (functions and subroutines), how to efficiently handle data (data structures classes), how to communicate (networking classes), and how to understand what is actually going on at an arbitrary functional level (programming languages and compiler design). A person who has mastered these skills can easily learn accounting, legal jargon, and data center management. At the the higher end of the spectrum (MS, PhD), CS principles can be applied towards math solving and system modeling, which can be applied toward the hard sciences.

    You're close to the mark, but the actual issue we're running into with CS is that it is a support science, and has little value when only applied toward itself, unlike physics, chemistry, biology, etc. So once you graduate with a CS degree, you have to learn whatever skill it is you're going to be supporting.

    1. Re:CS is the "liberal arts" degree of the sciences by Hognoxious · · Score: 1

      CS is that it is a support science, and has little value when only applied toward itself, unlike physics, chemistry, biology, etc.

      Not sure why you think physics, chemistry & biology are any more directly useful than CS. All of them are biased towards the theoretical, and all of them have complementary applied subjects. Are you a mathematician, by any chance?

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  69. Let's do the Time Warp again! by grikdog · · Score: 1

    Pink is for hackers, blue is for suits.

    --
    ``Tension, apprehension & dissension have begun!'' - Duffy Wyg&, in Alfred Bester's _The Demolished Man_
  70. Normal Technology Evolution by Anonymous Coward · · Score: 0

    I'm sure that "automobile hackers" were regarded the same way. And "rocketry hackers".

    Programming will go through the same phases. Hacker -> engineering. At the hacking stage, it's more a craft. Craftsmen will use very different methods to achieve varied (but good) results. Engineers will use almost exactly the same methods to achieve almost exactly the same results. The shift has already started but I'd say will take another generation to complete.

    I'd estimate that the people graduating in Computer Science now will be the teachers of the first generation of real Software Engineers. The current comp. sci. graduates will be making the first crude engineering tools that the eventual engineers will use (and quickly replace, with better engineered versions).

    Once it becomes actual engineering, some old hackers will make the shift to engineering and some will go do something else. A few will continue with it as a hobby, being the "grand old craftsman" who dabble in "hand made art". Some may have notoriety and will mentor the next generation, so the new generation can fold the few good old heuristics into the engineering lore.

    And the next generation of hackers (those with a personality that drives them to tinker) hack on something else - there's little satisfaction to hacking stuff that's being engineered. Diminished returns. It wouldn't even occur to them to hack software, there'd be no point (for a tinkerer).

  71. Re:Hackers vs Designers - Hackers Loose every time by itsybitsy · · Score: 1

    Ditto FreonTrip. The article asked for my opinion and I gave it dude thus it's not a FLAME whereas your comment didn't address any fine points about why hackers are not good for the software industry in the long run.

  72. Re:Hackers vs Designers - Hackers Loose every time by itsybitsy · · Score: 1

    [META]And you moderators moderate my rational comments down, what about the parent to this one eh? Moderate it down to zero as flame bait please![/META]

    Hackers are people who can't think long enough to do the programming job right. They usually have ADD or some other nasty flaw in their character that prevents them from doing the job properly and in a readable fashion.

  73. Re:Hackers vs Designers - Hackers Loose every time by itsybitsy · · Score: 1

    Utter nonsense.

    Yeah, glue is used to hold wood together till you nail it together with nails to hold it in place permanently.

    PERL might be temporary glue but it's an icky solution that fails any design requirements for reliability, stability, or understandability.

    Sure PERL is used by hackers, but so what? That doesn't mean it SHOULD be used for solutions. In fact PERL itself is a horrific hack. It takes a team of hackers with chainsaws to slice a path of understanding through it's unnecessary complex syntax where the rule seems to be if it's not in the library add it with NEW syntax to make the language more complex. See this excellent article on PERL's syntax complexity here: Simplicity and Power Comes from the Smalltalk Syntax. It requires a complex "PERL Periodic Table of the Operators" to comprehend the PERL syntax.

    When compared to a powerful language like Smalltalk that is designed rather than hacked it's clear that the extra brain power used to comprehend the bizarre overly complex syntax of PERL is just a waste of precious life energy and time.

    It's clear that PERL is a language with an extremely heavy syntax burden that doesn't give it any advantages unless your trying to win a cryptic programming contest. But then that is what hackers are trying to do in their heads when they work. I know, I've had the misfortune of working with too many PERL programmers. Shivers.

    PERL is for hackers just like GPL is for nested acronym freaks who have nothing better to do than solve so duku puzzles when they should be getting real work done on projects.

    While no programming language is perfect it makes no sense to burden the human mind with the nonsensical and unnecessary burden of the extra syntax layers for PERL. Heck even a EBNF is very unlikely for the darn thing.

    So ok go ahead mr hacker and use PERL as your glue but watch out as it's addictive when you sniff it for too long. Drug addicts don't make good designers mr perl hacker. ;-)

  74. Re:Hackers vs Designers - Hackers Loose every time by shutdown+-p+now · · Score: 1

    Perl is glue. Glue is messy. It's supposed to be messy

    Given equal strength, I'll take the less messy glue (say, Tcl or Ruby) over more messy glue every time.

    Perl is definitely much more messy than it needs to be.

  75. Physics? Philosophy? by ClosedSource · · Score: 2, Informative

    What branch of physics do Computer Science graduates work in? Where does philosophy fit in?

    I suspect that most CS graduates can be divided into 3 groups: 1) Those who debase themselves in the eyes of their professors by "merely" performing software development. 2) Those who preserve their purity by staying in academia and thus propagate the meme that CS isn't about programming. 3) Those who are unemployed.

    1. Re:Physics? Philosophy? by Anonymous Coward · · Score: 0

      Where does philosophy fit in?

      Logic, perhaps? True or False, 0's and 1's, the whole foundation of a computing machine. Did you even think before you wrote this?

      2) Those who preserve their purity by staying in academia and thus propagate the meme that CS isn't about programming.

      Much to learn, you still have.

    2. Re:Physics? Philosophy? by Artifakt · · Score: 1

      Was Boole himself a computer scientist? People keep calling him a philosopher or at least a mathematician last I looked. A universal Turing machine didn't start out as something you buy from Dell, more as a totally abstract philosophical model almost nobody expected at first to lead to a concrete instantization as a constructible object. What programming languages did Babbage and Lovelace know, or was their work more on the level of abstract thinking about thought than that? Thinking about thought - by some, that's the very definition of philosophy. Where should we file "Godel, Escher, Bach, an Eternal Golden Braid"?

      --
      Who is John Cabal?
    3. Re:Physics? Philosophy? by dintech · · Score: 1

      What branch of physics do Computer Science graduates work in?

      CS grads are aware of to mixed degrees of concepts such as Moore's Law, Chip Design, FPGAs etc. The more involved with modules in System Level Design they are, the more likely they are to know this stuff. There are tonnes of other areas of computing where an understanding of the physics of the machince has an impact on how you solve particular problems.

      Where does philosophy fit in?

      This is stuff which is more art than really science - a set of heuristics and concepts for dealing with certain kinds of problem. For example Human Computer Interaction, AI and debateably Computability and Intractability. Maybe this isn't Plato's philosophy but it involves the same abstract parts of the brain in my view.

    4. Re:Physics? Philosophy? by ClosedSource · · Score: 1

      Boole was a both mathematician and philosopher, but boolean logic is a mathematical concept, not a philosophical one.

      I'd be surprised if philosophy is a core course in most CS programs.

    5. Re:Physics? Philosophy? by ClosedSource · · Score: 1

      To put it in OO terms, philosophies sometimes have logical elements as part of their aggregation. On the other hand, logic isn't part of a philosophical composition, nor is it a subclass or superclass of philosophy.

    6. Re:Physics? Philosophy? by ClosedSource · · Score: 1

      I don't think an abstraction automatically implies philosophy, no matter what parts of one's brain light-up when thinking about them.

  76. Re:Hackers vs Designers - Hackers Loose every time by itsybitsy · · Score: 1

    The question is whether or not your committed to the "cult of the cryptic" as hackers are by definition since, as some have said, a hacker is someone who enjoys hacking through complexities to get a make a path of understanding.

    Sure in computing we need to understand complex systems but it's one thing to understand a complex system and quite another to be "devoted" to keeping it cryptic as most hackers do.

    As a person committed to keeping systems as simple as possible to get the job done I'm committed to simplicity and elegance of solutions rather than ugly hacked by an axe.

    A home built by a hacker would have randomly hacked lengths of wood for the walls of uneven thickness stuck together by PERL Glue that they've sniffed too much over the years. Not many homes are designed that way for good reason and yet no one even questions that design is required for building a proper home.

    A home built by a designer uses measured boards of wood and nails and screws and special connectors in earthquake zones not glue.

    A hacker puts in power outlets into one basement renovation layered on top of many others ending up with over 17 power outlets most illegal and highly dangerous fire hazards. Yes, this mess was discovered in a person's real home on the show Holms on Homes when they tore apart a basement to properly renovate it properly with a principle called DESIGN.

    Design wins in home and building construction for a reason. It simply works better than hacking.

    Design wins over hacking when it comes to philosophy and understanding of Nature. With design and the scientific method we end up with the Theory of Evolution, and Quantum Physics and General and Special Relativity. With hacks we end up with - ick run for the hills - religion and cults and the GPL madness not to mention Intelligent Design which has neither intelligence nor design (they just hijacked the word design because they know how well successful it is in man made pursuits).

    So, hack all you want, but if you want to be a REAL PROGRAMMER choose the simplicity and rigorous methods of design!

    May you hack no more.

  77. NY by wytcld · · Score: 2, Informative

    Hey, I moved from NY because apartment prices were going too far up. But you can get very nice apartments - say two good bedrooms in a fashionable part of Brownstone Brooklyn, in the $2000-$3000 a month range. Granted, 15 years back those same apartments were $800-$1200. Still, it's more like $30,000 a year for a very nice NY apartment, including in some of the better parts of Manhattan these days.

    That's still steep. But you can eat out better and cheaper in Brooklyn and Manhattan than about anywhere else in the country. And there's no need to own a car. It's all a matter of where your priorities are.

    --
    "with their freedom lost all virtue lose" - Milton
    1. Re:NY by Maxo-Texas · · Score: 1

      In Texas, for $2000-$3000, you can get a 2,700 square foot house with a pool close-in or a 3500 square foot house about 25 miles from downtown (an hours drive with traffic if you work downtown- but 35-40 minutes sideways around town.

      Food is excellent, cheap, plentiful.

      The climate is very hot and miserable 8-9 months of the year.

      Up north, the climate is very cold and miserable for a 2-3 months right?

      As some others have said in the thread, it depends on your values and what bugs you.

      To some, living in a 2 bedroom apartment for $36,000 per year (half the purchase price of my house 9 years ago) is worth the cultural scene and other benefits that come from new york. To some $700,000 for a 3 bedroom 2 bath house in California is worth it for the ever sunny climate and california values.

      The car is admittedly a major point-- it costs about $4k a year to stay in a used, reliable car or $6k a year for a new car ($7k/year for a luxury car).

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    2. Re:NY by Maxo-Texas · · Score: 1

      Grrr.. misspoke.
      The climate is very hot and miserable 3-4 months of the year. (I.e. we have a nice climate for about 8-9 months-- winter is about 1 week long and gets down to 28).

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
  78. Cows and boys by wytcld · · Score: 1

    I'm working with a highly-educated coder, who takes 5 times as long to do a project because he believes everything they taught him. His code's no better though. And he's terrible at reading others' code, if it wasn't written according to the immutable principles his superior education endowed him with. It's sort of sad. Really. He could have been so much better if he'd learned on his own, by taking other people's real-world code and tearing it down to see how it worked, like the rest of us. Academic coding principles are no substitute for real literacy. And literacy means you're not dependent on the accent to understand the language.

    --
    "with their freedom lost all virtue lose" - Milton
    1. Re:Cows and boys by SanguineV · · Score: 1

      I've seen a lot of people with similar approaches to your "highly-educated coder" and the problem is with their philosophy not education. When they have a fixed way that everything must be forced to fit then any problem that is not perfectly matched is struggle. Typically these manifest in fanatically sticking to a single language/design pattern/architecture/OS/etc. regardless of what the goal is.

      By contrast the best (to work with and teach) are those who are adaptable and willing to learn. People who are willing to pick the best tool for the task, even if it means learning how to use the tool from scratch.

  79. Re:Hackers vs Designers - Hackers Loose every time by Spazmania · · Score: 1

    Smalltalk eh? Drop me a line in a decade or so and let me know how that worked out for you.

    --
    Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
  80. Re:Hackers vs Designers - Hackers Loose every time by itsybitsy · · Score: 1

    Ah, not I don't lose as I didn't run a spell checker for TYPOs anonymous coward. I simply (if slashdot wasn't a hack) would publish a revision using the design principle of iterative versions that would have the correct spelling.

    As Powell Janulus, a man who knew 80+ human languages, would say "mistakes are irrelevant if you communicate your meaning" and "those that only focus on your errors are the ones who don't succeed or they are just being a pain in he ass for their own sake."

  81. Re:Hackers vs Designers - Hackers Loose every time by itsybitsy · · Score: 1

    Actually it's worked out quite nicely for me including financially with more money than you can imagine spazing maniacally dude.

    But again you miss the point.

    Complex hacked language = PERL = extremely complex syntax.

    The creators of PERL consistently choose to implement features in SYNTAX instead of in a library as languages like Smalltalk do.

    Simple but not simplistic, Elegant, Beautiful = Smalltalk = Uniform Comprehensible Syntax.

    So enjoy wasting your brain power comprehending PERL.

    I'd rather be building real powerful applications in a language with Full on Lambda Block Closures.

  82. Re:Hackers vs Designers - Hackers Loose every time by Spazmania · · Score: 1

    Actually it's worked out quite nicely for me including financially with more money than you can imagine

    Sure it has. How many points do you earn with your troll buddies for each post that you keep me going?

    --
    Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
  83. Re:Hackers vs Designers - Hackers Loose every time by itsybitsy · · Score: 1

    Ironically the Slashdot quote at the bottom of the page is "The computer should be doing the hard work. That's what it's paid to do, after all. -- Larry Wall in ".

    Larry is right, the computer should be doing the hard work which is a primary reason that the language syntax should be simple rather than hacker complex like Larry Wall's PERL. He indites himself and PERL!!!

  84. Re:Hackers vs Designers - Hackers Loose every time by itsybitsy · · Score: 1

    What are you talking about flame baiting spazamaniac dude? I don't earn a penny from the ads here at slashdot... you're delusional dude. In fact if anything spending time on these posts today COST me money.

  85. Re:Hackers vs Designers - Hackers Loose every time by itsybitsy · · Score: 1

    [META]How about when you say an obvious META comment about the prior comment is "off topic" you also mark the comment that it's in response to (eg the parent) as off topic too! Otherwise you're not being fair. This just highlights that there are so many issues of lack of fairness with the slashdot comment system that it's essentially junk and moderated posts are essentially meaningless indicators of MOB MENTALITY ONLY.[/META]

  86. Scientists vs Engineers vs Artists by EmperorOfCanada · · Score: 1

    The question is more than drones vs hackers. There is a third group and that is artists. Often what the "cowboys" bring to the table is art. The invention of the web over Gopher was genius but then the Netscape boys insisted on adding pictures, then they crammed in Java and then Javascript just popped in there. Was netscape perfect? No. Any standards committee trying to enforce web standards in the mid 90s would have lost their minds or even worse succeeded. Darwin then selects the good cowboys from the bad. Now we have firefox. But companies also tend to do boring internal programming and generally won't attract good artists. In my experience the corporate world needs not cowboy programmers but cowboy managers who manage the drones. If you have drone managers managing drone workers all you get is a system that will meet the contractual obligations of the development company but will really really suck. This is what India is very good at producing; software that meets the contractual miminums. This is why they are so hung up on standards and certification.

  87. Re:Hackers vs Designers - Hackers Loose every time by chromatic · · Score: 2, Informative

    Perl is glue.

    The GP was apparently talking about PERL, which is a joke programming language in which it's impossible to write maintainable code. You're thinking of the Perl programming language, which allows untrained novices to do useful things while not preventing diligent and careful programmers from writing effective and maintainable code.

    You can safely ignore the opinion of anyone who spells the latter PERL.

  88. what about you need both by mrboyd · · Score: 1, Interesting

    I like hackers, self-taught, cowboy or whatever's the name of the month who works for me. They have a tendency to get things done (not related to inbox management bs). Presented with a problem I know they'll come up with a solution, unorthodox maybe but one that works. You can always be amazed at how many different technology a good hacker can understand and use and sometime people like that are key to get a project running. Think someone who can interface between the network team, the dba's, the software people and the PMs using their own language and most of the time with more knowledge in their subject matter than them. The problem with them is that most of them are indifferent to processes and quite bad a polishing their work.

    Non-hackers I need too; people with maybe a far less encompassing knowledge but usually a deeper knowledge in more specific fields; resulting in less ability to come up with original ideas; but the ability to follow through a spec and the tedium of finishing a job -as it was requested- to write decent documentation and to follow a process. With just hackers we would release revolutionary product that just don't work; without them we'd probably still be using VB6 and cgi in perl. I need people who care about the intensity of the gradient of the save button on the settings window. I need someone who can sits and update the spec sheet without trying to develop a software to update the spec sheet for him. I need someone who checks the result of the batch job. Yeah boring but seriously it's crucial.

    I see the "hackers" are a special ops force; good when you need to be fast and ruthless; not good when you need to to be in line with international laws and the geneva convention.

    Now please everyone note that I by no mean want to convey the message that non-hacker aren't good programmers; it's in my opinion a matter of mentality in the way they approach a job not a depiction of skills.

    1. Re:what about you need both by Anonymous Coward · · Score: 0

      I don't see what your describing as being hackers vs non-hackers. You're mostly describing people of different levels of experience and talent.

      Whether someone can architect a great solution or surmount all difficulties to deliver one on schedule isn't about whether they are a hacker personality or not - it's about level of experience and talent.

      You can get disorganized irresponsible types at any level of experience. If they are talented you call them hackers, if they are not you just call them useless entry-level fucks. In either case you don't really want them on your team, although you may be able to deploy the hacker in some useful capacity if you're a skillful manager.

    2. Re:what about you need both by beegeegee · · Score: 1

      I worked at a medium sized CD-Rom Game/Educational developer in the 90's. This company was fabuously successful as long as it promoted the concept of lone cowboy development and throw-away code bases (one product version, one codebase). As soon as 'engineer types' such as myself came along and started winning the engineer vs. hacker cultural debate, the company headed downhill.

      Still, I didn't learn. When I was called to maintain a hacker inspired web site in the past , I grumbled and complained. Worse, I have a full time job at a company where engineering standards are high. There is a design and documentation process, a coding process, a code-auditing process, qa etc. Every new feature is evaluated endlessly against all the features that have come before it. The result? A really solid, functional web application. And yet, there have been no innovations to this site in seven years; lots of features but no innovations.

      It takes a special talent and ego to do 1.0. Maybe these guys should be fired or transferred to another 1.0 after the ship but they are quite necessary. I have at least learned enough not to diminish their accomplisments and try to look at maintaining their code as a learning experience.

  89. Re:Hackers vs Designers - Hackers Loose every time by nidarus · · Score: 1

    Things like PERL are deeply disturbing to anyone with a sense of design.

    Perl is glue. Glue is messy. It's supposed to be messy; it handily fits things together that wouldn't otherwise interoperate.

    Not much of a designer if you don't even know what glue is for.

    If you're talking about Perl's intended purpose, then I guess I agree (although given enough time/money, I think you can always engineer something more robust and maintainable than a perl script). However, Perl, as a language, is an affront to anybody with a sense of design, and for no good reason. What does Perl's crazy syntax have to do with it being a "glue language"? Simple, readable scripting languages do exist.

    Btw - something that's composed of several different systems and held together by a huge globs of glue, doesn't sound like a great real-world design either.

  90. Research, Rigor, and ROI by Bob9113 · · Score: 2, Interesting

    Does research generate more or less long-run ROI in the corporation than rigor? Is there a place for both approaches? Assuming you have a proficient software engineer of each type, how does the corporation maximize shareholder value with each skill set?

    If he had posed those questions, and maybe troubled himself to make a passing attempt at exploring the answer space, this article might be interesting. As it is, it is a mindless hit piece. Corporations need a balance of free-running and rigorous direction. This is particularly true in the high tech sector, which is far from a done deal. This stuff is evolving at lightning pace; exploration has solid value, as does mechanism. Consider what happens when you rigidly apply best practices in our field; you wind up with a system that is heavily coupled to CORBA, RUP, EJB, MDA, SOAP, and a dozen other zombie acronyms.

    The problem is not research versus rigor, it is knowing how to apply each to appropriate problems. That is supposed to be a management task, but they don't understand our field and so don't know how to let a good horse run. They also do not know how to distinguish a good horse from a gluepot, so they do not trust either. And so management tends to prefer the rigorous engineer -- not because he generates more ROI, but because they understand him better. I must cut this short as I am starting to spin off topic, but I highly recommend reading Peter Drucker's exploration of the knowledge worker to see where my point was about to wander.

  91. More H-1B Propaganda by Anonymous Coward · · Score: 0

    This is just the latest line of attack on American engineers and programmers. The US created this whole software industry but we are supposed to believe that India which has produced...well nothing...is the great future of programming insight. Give me a break. Let's review that again, how many great industries have come from India? NONE. They export humans to other countries that have enough freedom to actually create things. That's it. The reason US companies don't go full speed on off-shoring to India is Indian culture. Indian culture really sucks. It kills all new ideas. If Bill Gates had grown up in India he would be in the wrong cast and therefore be cursed to be a goat hurder. That's how India works. Almost every single Indian in the US is from the same cast. Not because they are smarter but because of discrimination. The Indians in the US on H-1Bs have a slave-owner mentality. They think they deserve to be rich and not work hard. So they all want to get into management and recruit their buddies. If you are a US business and you let Indians in to run it you are a moron. They will drive the business into the ground. Look at what the ruling casts have done to India.

    The reason Indians can come to the US and succeed is because its the US and not India. India has some great people but they suffer under its crappy culture. If you let enough Indians into your business they will supplant your culture with crappy Indian lazy ass culture.

    So stop lecture us about how great India is. Until India can feed its starving masses "shut up." Until India can figure out how to control the growth of its population, "shut up." They are so screwed up over there that they don't have clean drinking water but they are afraid of condoms.

    Stop bad mouthing the USA, Stop talking shit about the USA. If the US wasn't generous enough to allow our labor markets to be regulated by the feds to import labor, you would all be sitting in India drinking your shit water and dreaming of living in the US.

  92. House design is not a new concept. by Anonymous Coward · · Score: 0

    Software Architect and the parallels are about the same.

  93. $80K isn't a living wage where the jobs are by drew_eckhardt · · Score: 1

    If you don't want to do build interesting software products you shouldn't be in the business because there are other ways to earn as much money without the huge time sink and stress that comes from how 9 out of 10 projects are run inefficiently with insufficient staffing. Suicidal depression, federal prison, night terrors prior to leaving the business, broken marriages, and similar things are side effects that go with it.

    When you do because it's a passion, you might get lucky and be able to kick-start your career in Austin, Boston, Boulder/Denver, Portland, or Seattle but the opportunities there are limited. If you really want to grow you need to work on interesting projects with competent people who've done similar things before and there's only a good selection in the San Francisco Bay Area.

    When you aren't content with room mates, $80K isn't a living wage in the Bay Area. Especially in an unstable economy (other places $25-30K in savings will pay your mortgage and even restaurant bills for six months without a pay check). Especially if you plan on reproducing and intend to send your children to a decent school.

    When I bought my first 3-bedroom town-house with 600 square feet of basement shop space an attached garage for $160K within walking or cycling distance of anything I wanted in allegedly expensive Boulder CO, $80K was comfortable salary with room for retirement savings, 3 year old used car, and week long annual vacation. Property taxes never went over $1500/year. Income tax maxed out at 4.63 percent.

    Properties in comparable Silicon Valley locations with less square footage and no basement are now $800K+ with $8000+ in property taxes (I'd be happy with a 2-bedroom cottage or townhouse with a garage. 3 bedroom ranch homes are still listing for $1.2-$1.4M. The same city names have some low-priced properties, but they go with neighborhoods that have murder rates eclipsing Oakland's and none of the location amenities apart from great tacquerias). Income tax is 9.55% plus a 1.1% state disability surcharge on the first $90K of income.

    Even having cashed out near the peak of the market, I could be spending at least $50K a year more on mortgage + taxes to have a comparable life style to someplace purportedly expensive. Mortgage rates are higher now, and it'd probably be a jumbo so that's understating it by a lot. One of my friends from high school bought a house outside St. Louis for half what I spent on my town home so that may not be the right comparison.

    As a frame of reference, $150K/year is the cut-off for San Mateo County "moderate income" housing.

    This disregards minor incidentals which stem from the high sales taxes and everyone else having to cover the same expenses, like mechanics who charge $25/hour more and beers for twice the price.

    That's the immediate situation.

    The cost of living and salaries in the first world are over 5X developing countries. The inevitable conclusion is that our salaries and costs of living are going to drop until meeting their rising costs and salaries.

    Things aren't worse today only because even with an IQ three sigmas out learning to design and build non-trivial software products takes a ten year apprenticeship with people down the hall who've done comparable scope projects before and learned from their mistakes.

    There aren't enough people in developing countries who've done that.

    Having travelled and worked with people from all over I don't think those guys are too different from us apart from opportunity. I know people who've learned that you can't mentor people over IM and telephone connections and have headed over seas to get employees at low wages that they can effectively grow. It's an emerging trend. Some companies are paying senior people American wages to live over-seas and build local organizations. Eventually we're going to get enough of that experience over seas to have a collision between their (low) cost of living and required salaries and ours.

    I'm working towards owning a home in a low cost, low-tax country before that happens.

  94. Re: A lifetime of difficult projects by Douglas+Goodall · · Score: 1

    I have spent almost my whole life working as a software engineer (troubleshooter). Each project was already over budget and late. Each wanted something smaller or faster than what had come before. Each of my solutions were groundbreaking. I never charged as much as I could have and spent most of my money tooling up for the next project. I took responsibility for my own education and continually bought technical books and development software. I cannot remember ever having an "easy" project. Each one was demanding and stressful and most resulted in very happy clients. It took years of hard study to obtain critical mass on knowledge of hardware and software to get to the point where intuitive solutions began to happen. I devoted my life to this occupation and feel very betrayed by corporations that want their software written by the cheapest talent available. I am not into process for its own sake, but part of what I strove for over the years was to learn a wide variety of skills to make my software maintainable and robust. I know there are a lot of people like me out there, but I don't know how many are employed any more. What level of technological superiority do we aspire to have if we use mundane workers to create it. Why should people pay good money for software written by drones? It has been quite a while since I worked for a company that valued its developers enough to care about their long term viability. We have to look out for ourselves or we become obsolete in a year. Almost every aspect of software development is version oriented these days. It is hard to learn anything completely before it is replaced by the next version, and you barely get started with release software before the betas for the next version hit. How is a developer to keep up with this onslaught. The next generation will be lucky if they have more than a handful of people like me. Cookie cutter programmers seem to be taking over the world. And who's fault is that?

  95. Really Disagree by __aalnoi707 · · Score: 1

    the hallmark of today's programming generation in America â" are technically proficient, McAllister writes, 'but their code is less likely to be maintainable in the long term, and they're less likely to conform to organizational development processes and coding standards.'

    Clearly McAllister has not worked in a small to medium firm. I myself am a "coding cowboy" and I myself am appalled at some of the "professional" code out there. I have been working for the past year to clean up code that looks like speggetti thrown against the wall. Just take a look at the articles posted on the daily wtf (www.thedtailywtf.com) and you will see all the in-organized, un-maintainable code thats out there in the world.

  96. Re:Hackers vs Designers - Hackers Loose every time by mcvos · · Score: 1

    You realise you're using a slightly different definition of hacking than many other people, right? There's nothing wrong with that in itself, because a lot of people have wildly varying definitions of the word. But your definition of hacking looks like "everything that's bad or ugly", and then use that to prove that hacking is bad and ugly.

    Consider that quantum physics itself is something of a hack, and you might argue that the same is true of special relativity and the theory of evolution. All of them have hack value, and good hacks in particular are beautiful and elegant and work. (Although QM, definitely the hackiest of the lot, isn't really all that elegant. The process of evolution (rather than the theory) scores way high in hack value too.)

    It's also not true that hackers don't design, but they do tend to be a bit more flexible in their design. More agile, less waterfall. A hacker might revel in intentionally obfuscated code, but a good hacker won't do that for a production system, but only as a challenge in itself.

    So, hack all you want, but if you want to be a REAL PROGRAMMER choose the simplicity and rigorous methods of design!

    To be a real programmer, you need to be flexible and pragmatic about your design.

    May you hack better.

  97. Creativity blocks by geek2k5 · · Score: 1

    Books and related things can help creative people work their way through those times when they suffer from the equivalent of "writer's block". They can also help 'blocked' people discover that they can be creative.

  98. It all depends on what you want by Anonymous Coward · · Score: 0

    If you want to hire assembly-line programmers who will faithfully implement your exact specs, you hire foreign programmers. If you want somebody to actually be creative, you hire American programmers.

  99. Re:Hackers vs Designers - Hackers Loose every time by Anonymous Coward · · Score: 1, Insightful

    You're using a site that was created entirely in glue. What does that tell you about hackers?

  100. Re:Hackers vs Designers - Hackers Loose every time by Bob9113 · · Score: 1

    Perl is glue. Glue is messy. It's supposed to be messy;

    Well said, my friend! I love me some Perl hacks, and often use it to whip up a quick cut at an analysis when we're not sure of the value of the data that will come out. If it looks like the ROI is there to justify it, I build a more robust implementation in a stricter language.

    It's a toolbox. More tools is better.

  101. My case against self-taught hackers by walterbyrd · · Score: 1

    I have had the dis-pleasure of having to take over several projects that were started by hackers. Most of the these hackers were very smart, and well educated, but not in software development.

    In every case the code was more awful than anything I could imagine in my worse nightmare. Every rule of proper design was broken wholesale. And the hackers did not even know what they didn't know. As far as the hackers were concerned, their was nothing wrong with their code.

    The reasons for this are fairly obvious. Design and structure do not come naturally. It is more natural to just sit down and start hacking away. And if something works, and you can read your own code, and understand your own reasoning, then what's the problem?

    Self taught hackers practically never try to learn about structured methodology, because they don't even know what it is, and since they only work with their own code: they see no reason for it.

  102. Job security - see jargon file by Hognoxious · · Score: 1
    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  103. Re:Hackers vs Designers - Hackers Loose every time by Anonymous Coward · · Score: 0

    STFU u phag.

  104. Re:Hackers vs Designers - Hackers Loose every time by Anonymous Coward · · Score: 0
  105. The kettle calling the pot black by Anonymous Coward · · Score: 0

    I'm now working in a US-based company that employs several Indian programmers. I've never worked clossely with non-US coders, and it's been eye-opening. Believe me, the US has nothing to fear from outsourced code - these guys produce shite.
    And, interestingly, I don't think it's a "genetic" thing, I think it's environmental. Their code is awkward and convoluted in EXACTLY the same way that their English is awkward and convoluted.

  106. Re:Not just developers -- CCIE from a school? by Anonymous Coward · · Score: 0

    ....Anybody can go to college or trade school and get an MCSE, or a CCIE, or any number of system/network specific certifications.....

    While there are programs that are able to give training for people wanting to get a CCIE (at a very high cost of something like $20,000), the experience I have working in the networking field is that the CCIE track is virtually unattainable without significant field experience.

    On the other hand, all the CCIEs I know have been working in the industry for anywhere from 4-10 years, so they've all got the experience I'm talking about.
    Your statement could explain the phenomenon I've yet to encounter of the CCIE that can't configure his way out of a wet paper bag with a map and a machete.....

  107. Re:Hackers vs Designers - Hackers Loose every time by Fulcrum+of+Evil · · Score: 1

    Hackers are those that take an axe and hack down a tree creating a mess in the process including casualties that offend the beauty of solutions.

    No, hackers are the ones who made the axe in the first place. Then they built a tree saw.

    Hackers are not really programmers as they are to enamored with their hacking skills.

    I'm sure Eric Raymond would disagree with you. Hackers were the first real programmers and they built a lot of what you take for granted.

    --
    "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
  108. Re:Hackers vs Designers - Hackers Loose every time by russotto · · Score: 1

    I'm not sure why this is "insightful". Glued together rocks -- that is, mortared stone -- are a proven building technology. Sure, if you want a big building, steel frame is a better choice. And wood frame is cheaper for the smaller stuff. But those glued-together rocks have their advantages.

  109. Re:Hacker Ethic? by ground.zero.612 · · Score: 1

    I thought the media usage of "hacker" was to describe guys like you that bleach their hair, wear woman's mascara, pierce your eye-brow, listen to emo while breaching data systems that don't belong to you, and try to hook up with Angelina Jolie and fail because you're socially awkward.

    --
    "Be prepared, son. That's my motto. Be prepared." --Joe Hallenbeck
  110. Real Life Business Environment's full of fakes... by Anonymous Coward · · Score: 0

    "for some reason the business hires the drones and leaves the people with the communication skills in the dark." - by tnk1 (899206) on Monday June 29, @04:56PM (#28519629)

    You know what amazes me? The fact that people like you state that coders/software engineers/programmers cannot "communicate with others" (which is hilarious, they usually seem to get the actual WORK done, that others 'write about' (where you can BANK on the fact that most of these "technical writers" cannot actually code themselves & therein lies the difference))...

    Example of someone stating to myself, I cannot write correctly, here on this website (which typically is the "last resort" of the defeated in technical debates & purely subjective, especially from those minus a PHD in English)? OK:

    I had a guy here the other day named "Americano" try to 'tell me how to write' & that my writing was poor, here -> http://slashdot.org/comments.pl?sid=1283193&cid=28494351 and, the funniest part was he used "To Whit", & the PROPER ENGLISH PHRASE IS "To Wit"... so, so much for THAT, eh?

    (I will ask YOU the same question then, do YOU HAVE A PHD in English? If not, then who are YOU to judge what "good writing is"??)

    APK

    P.S.=> The REAL "bottom-line" I see, is that too many "I haven't done the job myself hands-on" mgt. types are in place in this art & science, instead of guys that have "risen thru the ranks", hands-on, doing the job programming themselves, for years-to-decades, first - before becoming mgt.! I've had 2 bosses of around 12 the past 16++ yrs. in this field that could actually code... the rest? FORGET IT...

    (AND, yes, there is a BIG something "wrong" with that, in & of itself!)

    I mean, hey - after all:

    How can you be a TRULY EFFECTIVE leader, if you haven't done the job you ask of your troops, so to speak, yourself?

    (Imo @ least? Well - A good leader doesn't ask his boys do ANYTHING he cannot or has not, done himself... As it promotes respect, & also creates another USEFUL pair of hands/eyes in coding environs (in times of deadlines, mgt. who CAN DO THE JOB can help as well in doing the actual coding task or parts of it if need be, in other words))

    A manager that can & has "done the job @ hand" also promotes GOOD DECISION MAKING SKILLS ON HIS PART, because a mgt. person who has done the job, himself, cannot be easily "mis-advised" & has some actual experience in the task @ hand as well, & can provide not only useful experienced input (but also can provide working code, IF NEED BE!)... apk

  111. 400K doesn't buy a studio apartment by drew_eckhardt · · Score: 1

    400K doesn't buy a studio apartment in a decent location. The least I've seen available for ownership is a one-bedroom apartment for $600K plus HOA fees pushing $400 a month.

    In a location with just a few jobs in the Pacific Northwest $400K almost gets you five year old 1500 square foot town house with attached 2-car garage and $200 a month HOA fees.