Slashdot Mirror


Commentary On How To Make Novice Programmers More Professional (slashdot.org)

Over the weekend, my colleague David ran a story that sought people's suggestion on how to make (force, encourage, advice) a novice programmer to be more professional. Several people have shared their insightful comment on the topic. One such comment, which has received an unusual support on not just Slashdot but elsewhere, is from William Woody, owner of Glenview Software (and who has previously worked as CTO at Cartifact, architect at AT&T Interactive). He writes: The problem is that our industry, unlike every other single industry except acting and modeling (and note neither are known for "intelligence") worship at the altar of youth. I don't know the number of people I've encountered who tell me that by being older, my experience is worthless since all the stuff I've learned has become obsolete. This, despite the fact that the dominant operating systems used in most systems is based on an operating system that is nearly 50 years old, the "new" features being added to many "modern" languages are really concepts from languages that are between 50 and 60 years old or older, and most of the concepts we bandy about as cutting edge were developed from 20 to 50 years ago. It also doesn't help that the youth whose accomplishments we worship usually get concepts wrong. I don't know the number of times I've seen someone claim code was refactored along some new-fangled "improvement" over an "outdated" design pattern who wrote objects that bear no resemblance to the pattern they claim to be following. And when I indicate that the "massive view controller" problem often represents a misunderstanding as to what constitutes a model and what constitutes a view, I'm told that I have no idea what I'm talking about -- despite having more experience than the critic has been alive, and despite graduating from Caltech -- meaning I'm probably not a complete idiot.) Our industry is rife with arrogance, and often the arrogance of the young and inexperienced. Our industry seems to value "cowboys" despite doing everything it can (with the management technique "flavor of the month") to stop "cowboys." Our industry is agist, sexist, one where the blind leads the blind, and seminal works attempting to understand the problem of development go ignored. You can read the full comment here or here.

188 comments

  1. 10 print "first" by Anonymous Coward · · Score: 0

    20 goto 10

    1. Re: 10 print "first" by Anonymous Coward · · Score: 0

      +1

  2. How to make an employer more realistic? by Anonymous Coward · · Score: 1

    How come we don't ask this question? Can we get rid of the layers of useless HR bureaucracy?

    1. Re:How to make an employer more realistic? by VernonNemitz · · Score: 4, Insightful

      It is possible that the employers are confusing arrogance for competence. Recently I had a somewhat generic insight into an old old adage, "Power corrupts" --and that insight came in two parts.
      The first part is that "power" doesn't have to be political to be corruptive. Money is power, for example. Knowledge is power, for another (can include knowing "all" about computers).
      The second part of the insight is that the first symptom of corruption is arrogance....

    2. Re: How to make an employer more realistic? by Anonymous Coward · · Score: 0

      Akso, political doesn't have to be governmental.

    3. Re:How to make an employer more realistic? by shunnicutt · · Score: 1

      I've heard it said, "Power corrupts. Absolute power corrupts absolutely. Petty power corrupts out of all proportion."

    4. Re:How to make an employer more realistic? by gweihir · · Score: 1

      Only with an UBI. Then we can have them argue with each other and the sane rest of us can ignore them. We should also do the same thing with the lawyers and the politicians. These people have a massively negative productivity.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  3. The commentary has a major flaw by ruir · · Score: 5, Insightful

    It does not comment the obvious, that industry love the young because they are cheaper, and have yet not learned to say no to crap.

    1. Re:The commentary has a major flaw by Anonymous Coward · · Score: 2, Interesting

      Yup.

      I'm always fascinated by the enormous scale of the disasters that young 'uns manage to create.

      They tend to want to create giant structures from toothpicks made of green wood.

      However, if you put them on small projects, with minimal impact, it can make it worth it.

      They may be cheap, but you get what you pay for.

      That said, lots and lots of folks feel they don't want to pay for quality and robustness. They would prefer to pay, for example, $1000 every two years for complete site redesigns by crappy Indian McSite companies than $5,000 for a high-quality site that will need a $2,000 redesign in three years anyway.

      The numbers support their view, so they can't actually be blamed.

      It just sucks.

    2. Re:The commentary has a major flaw by Anonymous Coward · · Score: 0

      But what's the incentive to hiring experience?

      There needs to be professional/guild licensing (think bar exam, electrician license, engineer exam, etc) in order to engage in commercial activity (read monetary compensation, employee, contractor) in this field, and there needs to be consequences for cowboys like yanking their license so they may no longer engage in commercial activity. They can skulk on their github account instead of fucking things up in the workplace.

      Before anybody says this will end free software. People will still be able to fork all day long on github. If you use a project on github commercially, then yeah, you're staking your license on it. Better use something with a good reputation.

    3. Re:The commentary has a major flaw by Anonymous Coward · · Score: 0

      Maybe you (the industry) are just charging too much?
      Experience is really not that rare, it is actually pretty much impossible to prevent getting more experienced. And since most people do not die by the age of 30 anymore, it is not like we have a shortage of experienced people. Maybe your amazingly robust website is not 2-3 times better, but only 1.2 times better and you should only be making a few dollars more than the 20 yo grad.

    4. Re:The commentary has a major flaw by Anonymous Coward · · Score: 0

      A lot of startups are also managed by young dudes and I think they see age as a challenge of their power. Young people and foreign workers are easier to push around, while an older worker will more often know when they're full of shit or wrong and more people will listen to them.

    5. Re:The commentary has a major flaw by Anonymous Coward · · Score: 1

      You're correct. It is not 2-3 times better.

      It's 20-30 times better.

      The difference is *MASSIVE*.

      However, that doesn't mean much to, say retailers that only need a basic storefront.

      It does mean a lot to some folks, though.

      Go back to pooping out your McSites. You'll make money, and the retailers will be happy (more or less).

    6. Re:The commentary has a major flaw by TheRaven64 · · Score: 3, Insightful

      Experience is really not that rare, it is actually pretty much impossible to prevent getting more experienced

      Old and experienced correlate, but they're not the same. Some people manage to spend decades repeating the same mistakes without learning from them. It's hard to gain experience without age, but it's surprisingly common to gain age without experience. This is also part of the reason some older folk find it hard to get hired: when you're young, ignorance and stupidity manifest similar symptoms and you can always hope that the person is simply ignorant and can be cured. When you're old, if you're still ignorant then the root cause is likely to be stupidity and so it's better to take a risk on someone younger (who is definitely ignorant, but might not be stupid). If you're old and competent, then you're far less likely to struggle to find employment.

      --
      I am TheRaven on Soylent News
    7. Re:The commentary has a major flaw by Tablizer · · Score: 1

      A well-engineered system can indeed be significantly cheaper and easier to manage and maintain than a "cowboy created" system. It's just that it's difficult for the customer and/or managers to know the difference, and thus don't reward such sufficiently.

      They judge books by covers partly because they don't know enough about systems design, which is generally expected, and partly because they don't take the time to probe and ask questions, which is largely their own fault.

    8. Re:The commentary has a major flaw by pla · · Score: 5, Insightful

      Maybe your amazingly robust website is not 2-3 times better, but only 1.2 times better and you should only be making a few dollars more than the 20 yo grad.

      In programming, experience is worth drastically more than the pay differential for the same. A seasoned coder can crank out in a few hours what a recent college grad would literally spend a few weeks on; and it will be far more stable and maintainable.

      Yes, I am conservatively some 50x more productive than my junior peers. A big part of that comes from knowing what to ask the customer up front, knowing what won't work, and knowing when to just build the damned birdhouse the customer requested rather than a 400 unit Gehry-inspired avian housing complex "just in case" the customer wants to upgrade in the future.

    9. Re:The commentary has a major flaw by Anonymous Coward · · Score: 0

      There are incentives in the industry. For safety critical designs, it's called following a process where bad design/code get caught before production. If you don't have a process or your not following your published process, you can't go to market. Go look up DO-178C. For everything else, there's the free market. If you keep putting out crap then fewer will buy it. We don't need this farcical guild crap that does nothing other than take your membership money then give it to politicians or lobbyists to promote some asinine agenda.

    10. Re:The commentary has a major flaw by dcw3 · · Score: 1

      +1

      Exactly what the parent said. If you're pumping out little short term simple projects that's one thing. But if you need something mission critical that's got detailed requirements, I'm going to look for a seasoned engineer every time.

      --
      Just another day in Paradise
    11. Re:The commentary has a major flaw by dcw3 · · Score: 1

      "But what's the incentive to hiring experience?"

      Code that meets the actual requirements, securely, w/o memory leaks everywhere, and doesn't have to be rewritten because some dumbshit took shortcuts, or didn't know wtf he was doing.

      --
      Just another day in Paradise
    12. Re:The commentary has a major flaw by JeffAtl · · Score: 1

      Yes, I am conservatively some 50x more productive than my junior peers. A big part of that comes from knowing what to ask the customer up front, knowing what won't work, and knowing when to just build the damned birdhouse the customer requested rather than a 400 unit Gehry-inspired avian housing complex "just in case" the customer wants to upgrade in the future.

      I'm not challenging you, but could a lot of that 50x be a result of accumulated domain knowledge or product specific knowledge?

      Would you be 50x more productive than junior peers if you moved to new company in a different industry?

    13. Re: The commentary has a major flaw by Anonymous Coward · · Score: 0

      Wow.

      Just wow.

      I'm a programmer with more than 30 years of experience with multiple languages. I regularly switch languages to do things like, say work on both the server end of a C/S system and the multiple clients, on multiple platforms.

      I've been writing device drivers and async programming since before anyone ever thought of having more than one core on an 8-bit GLU (remember that acronym?).

      I wrote C++ more than 20 years ago, when it was first appearing, I've written FORTRAN, entire operating systems in both assembly and MACHINE CODE (hex keypad and graph paper as an IDE).

      I've written kernel-level drivers and hand-wired USB interfaces. I've written multiple WiFi systems.

      I was writing OO before anyone knew what it was, simply because it was the only sensible model to handle async, multi-targeted communications.

      These days, I write iOS apps in Swift and the server systems that feed them. I can write a full-fat iOS async communication app in a day or so, and it will have ZERO bugs.

      And you know what? A lot of my peers would laugh at that catalog. I'm under no illusion whatsoever that I am anything more than middling. I am continually humbled and inspired by folks both older and younger than I.

      I simply picked Web design because its a fairly relatable topic for today's kiddies. I write heavy-duty Web sites to relax between jobs.

      The baby changing station is over there. I think your diaper's full.

    14. Re:The commentary has a major flaw by Anonymous Coward · · Score: 0

      When people talk about "experience", they're not just talking about long some schmuck has been doing a certain class of tasks. They are talking about the improvements that occur when that person learns from his experiences.

      So, yes, everyone gains experience at the same rate. But the degree to which they become experienced experts---that varies widely.

      The real problem is that non-experts cannot tell an experienced worker from a bullshitter until after they hire him. And by then, you're 6 months and $XXX dollars into a contract. So it easier to assume everyone is crap, and to pay for the cheapest crap you can find.

    15. Re: The commentary has a major flaw by Anonymous Coward · · Score: 0

      That question shows your stupidity. Its moot. Software engineer, go build a bridge. Retarded thinking. Go to the dictionary. Look up experience and lookup domain knowledge. There are some intrinsics there. Look up intrinsic also. If you don't understand this, you never will. Just ignore it.

    16. Re:The commentary has a major flaw by xtal · · Score: 1

      Why don't all you old guys open a consultancy, bid aggressively given the huge advantage you have by virtue of the increased productivity?

      Seriously.. why not?

      My guess is the advantage doesn't exist, and much of what's needed to make most applications works is indeed young people willing to gut out horrible code for systems that won't be around in two years, let alone ten.

      I'm a EE, I have written hundreds of thousands of lines of code that are still in production - some of it decades ago - but I left programming, and I'm unlikely to ever be back. The problem with making novice programmers more professional is that software development is not a profession. It should be, but it isn't, and it never will be, until there is a force of law behind it.

      #lawnoffoffoff

      --
      ..don't panic
    17. Re: The commentary has a major flaw by Anonymous Coward · · Score: 0

      Sounds like you are unemployed a lot?

    18. Re:The commentary has a major flaw by Anonymous Coward · · Score: 0

      Domain-specific, with the domain being programming, computer science, and/or software engineering.

      The skills that make a good software developer will apply regardless of the language or the business's industry. (At most, the industry merely imposes an additional set of requirements for the software.)

    19. Re: The commentary has a major flaw by Anonymous Coward · · Score: 0

      The web monkey is triggered.

    20. Re:The commentary has a major flaw by epyT-R · · Score: 1

      No thanks. That would just make would-be programmers stay away, and the rest of the industry so risk-adverse that it would create a market for DE-automating business.

    21. Re:The commentary has a major flaw by Anonymous Coward · · Score: 0

      No need for something special. There is already professional licensing for civil engineers, so incorporate programmers into that. Then just add a software engineering requirement for any work which may directly affect public health or safety.

      E.g., an e-commerce site could be developed by anyone since its failures largely affect only the company which operates it. On the other hand, a traffic signal or airplane could only contain code developed and approved by licensed software engineers.

      Follow all the same rules for liability, licensure, and professional censure/disbarment as civil engineers. Right now, competence and safe designs are guaranteed only by a random hodge-podge of processes in various industries.

    22. Re:The commentary has a major flaw by russotto · · Score: 1

      Ahh, a wanabee guildmaster heard from. We don't need to ossify the profession.

    23. Re:The commentary has a major flaw by pla · · Score: 1

      Why don't all you old guys open a consultancy

      An awfully lot of programmers do exactly that, but working as a contractor isn't for everyone. Personally, I do a bit on the side, but enjoy the stability that a 9-to-5 gives me.

      I'm a EE, I have written hundreds of thousands of lines of code that are still in production

      Then you of all people should recognize the difference between good design vs throwing "young people willing to gut out horrible code" at the problem.

      but it isn't, and it never will be, until there is a force of law behind it.

      What does the law have to do with whether or not something is a profession?

    24. Re:The commentary has a major flaw by Anonymous Coward · · Score: 0

      EE, lol. I know what EE create in code.

      No one cares. There is no QA, no Code review, it is all BS. As long as it is not the bosses problem.

    25. Re:The commentary has a major flaw by Anonymous Coward · · Score: 0

      Plus as an EE where is the force of law behind your profession, hint, it isn't. Only a few engineering positions (like civil) have legal requirements. Usually ones you'd see in EE are for medical devices or high risk (to humans) devices, and guess what, the software has to meet the standards in those situations as well. Just take a look at MISRA, which if you did embedded devices you surely must have come across.

    26. Re:The commentary has a major flaw by Dissenter · · Score: 3, Interesting

      Been there, done that and I agree. Having spent 15 years in the industry, I learned that it isn't worth the fight. Basic developer roles are, today, entry level positions. People that don't move up are despised for their "seniority" if they don't graduate to architecture or some other so-called more important role. Went that path, spent a few years running a consultancy for more experienced folks and learned that the experience actually made me want to leave programming all together. Sure, I'll still hack together a few things for fun and play with the latest trends in development, but I'm not doing that for my job anymore for two reasons. One, I don't want to deal with the kids, and two, once you get over the initial hump, it pays better to have that background and then get out! I'm not saying money is everything, but now I'm grown up, have a family and a kid to send to college so, the money sure helps. I am, however, giving back to the "community" by teaching my kid how to code like a professional and how NOT to be "one of those programmers".

      --

      Dissenter
      "There is no knowledge that is not power."

    27. Re: The commentary has a major flaw by Anonymous Coward · · Score: 0

      Hey kid.

      Not so sure that continuously tugging on it like that will make that little Vienna sausage any bigger.

      Have you tried a vacuum? You could probably use a dirt devil.

      Hey, this trolling stuff is FUN!

    28. Re:The commentary has a major flaw by Wraithlyn · · Score: 4, Insightful

      "If you think it's expensive to hire a professional to do the job, wait until you hire an amateur."

      --
      "Mind, as manifested by the capacity to make choices, is to some extent present in every electron." -Freeman Dyson
    29. Re:The commentary has a major flaw by xtal · · Score: 1

      Consultant != Consultancy. Scale. You know better? DO better.

      Ain't that easy.

      --
      ..don't panic
    30. Re:The commentary has a major flaw by xtal · · Score: 1

      My code is.. and was.. pretty bitching. You probably have some running in your computer now.

      If you're smart enough to code you can do something else much more profitable - and retire sooner, or contribute on the side. It isn't worth it.

      --
      ..don't panic
    31. Re:The commentary has a major flaw by xtal · · Score: 1

      The law lets you control entry and manage standards.

      Law is a profession.. but the MBAs are trying.

      Medicine is a profession. They know how to protect a gig.

      Engineering (used to be) a profession. MBAs destroyed it.

      Programming has no control over entry, standards, or base education requirements. It is not a profession.

      --
      ..don't panic
    32. Re:The commentary has a major flaw by jmcvetta · · Score: 1

      If you're smart enough to code you can do something else much more profitable

      Any suggestions on what would be a more profitable line of work? Preferably something that does not require a big pile of capital to get started.

    33. Re:The commentary has a major flaw by pla · · Score: 1

      You're splitting imaginary hairs here. A "consultancy" is just a company that provides consultants.

      And I never said anything about "easy". I said that experience matters. If it were easy, we wouldn't have a shortage of competent programmers, since it pays well and everyone and their brother that "knows computers" tries their hand at coding - And then they quickly learn they hate hate hate everything about it.

    34. Re:The commentary has a major flaw by pla · · Score: 1

      Engineering (used to be) a profession. MBAs destroyed it. Programming has no control over entry, standards, or base education requirements. It is not a profession.

      Again with these imaginary definitions! You need a dictionary, friend.

      A "profession" is however I make my living. Prostitution (whether it be to a pimp or an MBA) is still a profession, even if you like to pretend that the fact you grovelled to Uncle Sam for permission to work somehow makes you better than the plebes.

      I see you think highly of MBAs, though - So we at least agree on one point. ;)

    35. Re:The commentary has a major flaw by Anonymous Coward · · Score: 0

      Plus there's absolutely no reason to nitpick over this terminology except to make oneself feel superior...

    36. Re:The commentary has a major flaw by cwsumner · · Score: 1

      ... Experience is really not that rare, it is actually pretty much impossible to prevent getting more experienced. ...

      That is not true, actually. To quote a saying from 30 years ago:

      "There is a big difference between 20 years experience, and 1 years experience repeated 20 times!"

      The difference in effectiveness varies from 5 to 1, up to about 20 to 1. The difference in cost is nowhere near that much. And many times it is the difference between being able to do the job at all, and never doing it.

      If you doubt this, ask the large American companies that have gone out of business in the last 20 years... ;-)

  4. Copy and pasted from earlier article... by __aaclcg7560 · · Score: 1

    How do you become a more professional programmer when your full time job isn't programming?

    I was a video game tester for six years, went back to school to get an A.S. degree in computer programming, and got into IT support because I enjoy the work. I program at home (Python and web development) and occasionally write PowerShell scripts at work, but the only time I deal with other programmers is when I'm cleaning up their messes over the network at work.

    BTW, Microsoft SharePoint IS NOT a proper bug tracking tool.

    1. Re: Copy and pasted from earlier article... by Anonymous Coward · · Score: 0

      No one choose tech support because they like it. You just went smart enough to program well. Its hard work. All thinking. High pressure. Tech support requires much less. No thinking under pressure. Well not much. Every tech support , pm, scrumbag, and the like wishes they could program. So they do thier little projects at home. Think they are so complicated and so smart and call it programming. Hehe and you say you clean up the mess programmers leave? Like refactoring or seeping the floor? Hehe. Joking a little but the rest is damn true. Maybe study harder instead of gaming like a looser?

    2. Re: Copy and pasted from earlier article... by __aaclcg7560 · · Score: 1

      No one choose tech support because they like it.

      Like my friends who switched from programming to health care in college? They make more money than I do but they hate wiping other people's asses for a living. Meanwhile, I'm enjoying my career in IT support, and some of my best paying contracts were for hospitals.

      You just went smart enough to program well. Its hard work. All thinking. High pressure.

      I made the president's list for maintaining a 4.0 GPA in my major while taking two classes per semester, working 80 hours per week as a lead video game tester, taking an all-day ceramics course on Saturdays and teaching Sunday school.

      Tech support requires much less. No thinking under pressure. Well not much.

      Like unboxing 750 PCs and 1,500 monitors, throwing out three dumpsters of packing material, and finishing a one-year contract in nine months? Or going through 600 old tickets in 60 days when management scheduled six months to complete the project? Or being assigned individual tickets that require four to six hours of research to find a solution?

      Hehe and you say you clean up the mess programmers leave? Like refactoring or seeping the floor?

      More like the program blowing up from not being thoroughly tested before being released into a production environment. Unhandled exception error?! Shame!

      Maybe study harder instead of gaming like a looser?

      I'm too busy studying for my InfoSec certifications to play video games.

    3. Re: Copy and pasted from earlier article... by Anonymous Coward · · Score: 0

      Tip: If you are trying to humble brag, the claimed accomplishments are supposed to be meaningful.

      But creimer is a self admitted troll, so eot

    4. Re: Copy and pasted from earlier article... by __aaclcg7560 · · Score: 2

      Tip: If you are trying to humble brag, the claimed accomplishments are supposed to be meaningful.

      Great tip!

      But creimer is a self admitted troll, so eot

      Not quite. I love trolling the trolls on Slashdot. That's not the same as being a troll.

  5. Arrogance by Anonymous Coward · · Score: 2, Funny

    I like how much of the comment was focused on arrogance, and then he broke out the Caltech means I'm smarter bullshit.

    1. Re:Arrogance by Anonymous Coward · · Score: 1

      Leaving out the entire "I'm told that I have no idea what I'm talking about despite having more experience than the critic has been alive" part and rephrasing it as if the speaker was the one being condescending is an excellent start on a strawman argument, but you need to make it less obvious that you're a arrogant millennial who instantly gets butthurt when someone with more experience calls you on your egotistical bullshit.

    2. Re: Arrogance by Anonymous Coward · · Score: 0

      Yes there are no entrance requirements for Caltech, the fact that he as accepted means nothing

    3. Re:Arrogance by Anonymous Coward · · Score: 0

      Right after he fucks up the quotes & confuses "bare" and "bear". Total shitcock.

    4. Re:Arrogance by Anonymous Coward · · Score: 0

      He did say 'probably'. Did you graduate from Caltech?

    5. Re:Arrogance by Anonymous Coward · · Score: 0

      He did say 'probably'. Did you graduate from Caltech?

      Don't know about the previous Anon-Cow, but this Anon-Cow did graduate from Caltech (catlech?), and from my experience, it doesn't mean shit about being smart or not (me included)... Besides, half the people the graduate are below the median... ;^)

  6. Dunning Kruger with employer approval by sciengin · · Score: 4, Insightful

    In short its because idiots are too stupid to realize their own stupidity that experience is derided as outdatedness.
    Of course a certain addiction to the "new and shiny" is probably what got many interested into CS in the first place, so it will be hard to get rid of that completely

    This is then bolstered by employers knowing exactly that some 23 year old will work insane hours and is much more easily exploitable than a veteran.
    Here comes the Dunning-Kruger effect on the employers side: They too are unable to realize that the code produced by a newbie can be orders of magnitude worse than that produced by a veteran. Sure the LoC per day look impressive but it is not at all a measure for productivity.

    1. Re:Dunning Kruger with employer approval by Anonymous Coward · · Score: 0

      If you want to see what yutes do, look at Joomla.

      If you want to see what experienced people do, look at Drupal.

      They both give you a similar site, but have drastically different APIs and development philosophies.

      Joomla is shiny and overcomplex, but also has an incredibly arrogant userbase and development team. It's easy to use, and helps people who need to...compansate to feel...bigger.

      Drupal is an industrial-strength workhorse. It's not for the faint of heart, but can be used to create massive, powerful and dependable sites.

    2. Re:Dunning Kruger with employer approval by __aaclcg7560 · · Score: 1

      What's "new and shiny" in CS? When I went back to community college to learn computer programming on a $3K tax credit that George W. signed into law after 9/11, I was trying to leverage six years as a black box tester to become a white box tester. That never happened since I got into IT support, enjoyed the work and never looked back. The only "new and shiny" thing I've gotten back then was Microsoft Visual Studio at academic pricing.

    3. Re:Dunning Kruger with employer approval by slew · · Score: 1

      Also, what comes around, goes around.

      Fourty years ago computer science folks decided that they wouldn't be making a profession, but creating a job out of their hobby. Thus they created a job category with no credentialing, no apprenticing, no continuing education requirements, no board certification, so they continue with they hobby with the lowest set of requirements so they could change the world w/o having to deal with the "grown-ups".

      Now that hobby has become an industry and a certain amount of "pride" has set in the old-timers. Of course now that the table is set, the next generation of non-grown-ups comes along and wants the same leway. These new arrogant kids are basically the new crop of the old arrogant kids. Some of them will add value, some of them won't (just like the old crop). The big difference is that the barrier to entry is much lower now, so there is probably more chaff than in the past. It doesn't mean you throw out the baby with the bathwater, though, but you have to look at things with a more critical eye before you jump...

      Full disclosure, I *am* one of those old-timers. I just need to look in the mirror to see the same thing as what I see in the young-ins...

    4. Re:Dunning Kruger with employer approval by gweihir · · Score: 1

      Very much this. In fact, many inexperienced coders have negative productivity, because cleaning up after them is much more expensive then the value they generated.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  7. Re:tl;dr by bobbied · · Score: 1, Troll

    They say the brain is the second thing to go.. I forget what the first thing was.....

    --
    "File to fit, pound to insert, paint to match" - Aircraft Maintenance 101
  8. Re:tl;dr by Anonymous Coward · · Score: 4, Insightful

    I got the same impression. It was his proper use of capital letters, commas, paragraphs, grammar in an essay that was logically constructed that shows his loss of faculties. Any one can do that with some effort. A younger person would have been able to forcefully make the same point with a concise tweet:
    HAXXORS Sux!!! sjw ftw!

  9. Some of it is obsolete. by 0100010001010011 · · Score: 5, Insightful

    all the stuff I've learned has become obsolete

    And as a mechanical engineer in my 30s I wish that some older engineers would accept that some of it is.

    We trail behind software by some years, despite building software constantly. Every engineer I work with insists on building their own Simulink models. "Continuous Integration" is just some "new fad". Yet every so often we'll have builds break because they didn't run the build scripts in the right order.

    I could replace 4-5 full time engineers with Jenkins and some continuous integration scripts building software, doing the dSpace hardware in the loop testing and e-mailing us the results.

    Our process was literally:

    1. Build software.
    2. E-mail it to my lead
    3. Lead forwards it to the testers
    4. Testers manually flash the software
    5. Testers manually unit test
    6. Testers e-mail my lead with results
    7. Lead e-mails me the result.

    I had the whole process packed up into a Jenkinsfile and automated but most people thought it was some "new fad".

    Accept that sometimes we come up with a way to do better.

    1. Re:Some of it is obsolete. by Anonymous Coward · · Score: 0

      Jenkins is a piece of crap. You don't unit test before releasing it ti test? Loser.

    2. Re:Some of it is obsolete. by Anonymous Coward · · Score: 1

      I did the same thing with an ASIC design group a while ago.

      In the end we agreed to let the processes (manual and automated) just run in parallel and after a couple of months it became obvious that the automated process was doing a good job catching the stupid little errors a lot faster. In fact after about 3 weeks the test team started only testing stuff that cleared hudson (hey I said a while ago)

    3. Re:Some of it is obsolete. by Anonymous Coward · · Score: 0

      I can assure you that a lot of software companies work exactly the same way, at least you have testers!

    4. Re:Some of it is obsolete. by 0100010001010011 · · Score: 1

      unit test before releasing

      We do. I just described our unit testing procedure.

      Because of the nature of automotive engineering "unit testing" is called "Hardware in the Loop" testing. We do have 'software only' tests however a majority of it is done on a dSpace bench after it is flashed onto the ECM.

      After it passes all of our HIL tests it's stamped for release.

      Jenkins is a piece of crap.

      Constructive criticism is more than welcome. If you have a better CI tool I'm all about learning how to use it and seeing if it works about our process. I went with it because it runs on Windows. I can run it in 'portable' mode without installing it (which needs Admin access).

      So what do you have that's better?

    5. Re:Some of it is obsolete. by TheRaven64 · · Score: 1

      So what do you have that's better?

      I'm not the grandparent, and I use Jenkins, but I don't disagree with him. It is a piece of crap, it's just that everything else seems to be worse (especially hand-rolled scripts). Travis-CI is better for a limited set of use cases, but impossible to extend to more complex things (e.g. we have to run some of our tests on specialised hardware and you can't do that with their cloudy thing and even though it's open source they explicitly state that they don't believe anyone else will be able to get it working).

      --
      I am TheRaven on Soylent News
    6. Re:Some of it is obsolete. by Anonymous Coward · · Score: 0

      I see. Your hardware interactions are deeply intertwined with your code so it is not testable off platform. I see this from 'embedded developers' all the time. Just create a little isolation for your inputs and outputs.

    7. Re:Some of it is obsolete. by Anonymous Coward · · Score: 0

      HIL is not the same as unit testing, and neither is functional testing on target hardware. This is a misconception that I've been fighting in my organization for years.

      To unit test you need to stub all of your dependencies and test your module out of context of the rest of the system. When I started my organization was doing "unit testing" by running test applications on hardware, now we have integrated with VectorCast and are stubbing all interactions outside of the software module under development.

      In addition, the software layer my team develops is directly interfacing with the ECM hardware layer, and we stubbed all hardware interfaces.

    8. Re:Some of it is obsolete. by markhb · · Score: 2

      I'm a big fan of Teamcity. I'll admit that I haven't looked at Jenkins since it was Hudson, but even though it's not open-source or free beer (beyond a minimal setup) I'd suggest giving it a try.

      --
      Save Maine's economy: write stuff down. All comments are exclusively my own, not my employer.
    9. Re:Some of it is obsolete. by Anonymous Coward · · Score: 0

      Having been down this path, I suspect the most likely reason the software had to be tested on the intended hardware is it didn't run on a PC.

      Embedded software is often a strange beast that assumes the target hardware's memory model. That's not going to run on a PC at all and there's precious little you can do about it.

    10. Re:Some of it is obsolete. by jandersen · · Score: 1

      I could replace 4-5 full time engineers with Jenkins and some continuous integration scripts...

      You may be able to do so, but it may not be wise, necessarily. For each, highly skilled engineer you get rid of, you also give up an amount of expertise, that will be expensive to replace, should you need it later. For example if the company needs to expand its business, change its product line or whatever; efficiency savings (just like outsourcing) often look better on paper than when you get to implementing them.

      If you want to introduce new methods and technologies, you have to sell the idea - not only to management, but also to the engineers. And it is better to introduce improvements gradually, for every step involving the engineers in the process. Nobody likes to have changes imposed - especially engineers - so you have to work with them and get them on your side. If you are not able to do that, then you still have something to learn.

    11. Re:Some of it is obsolete. by Anonymous Coward · · Score: 0

      I program embedded in a compliance environment, and your answer is horseshit. You may have traditional and robust methods of creating engine controllers, but if they aren't unit testable they are less robust.

    12. Re:Some of it is obsolete. by Anonymous Coward · · Score: 0

      Jenkins is crap, but it doesn't need to be good. It's basically a glorified cron. Jenkins give a few key features: It's easy to centralize your build, it has nifty plug-ins to connect to your source control, it LDAPs, it is easy to show people pretty graphs and stuff. If you're doing more real work than `$PROJECT/build.sh` and `$PROJECT/run_tests.sh` or make or maven or whatever, you're doing it wrong. You don't want your release builds to be build on some random engineers box. The concept of actual CI is flawed in our branch and merge git-world, but the tools still have a useful purpose.

    13. Re:Some of it is obsolete. by Anonymous Coward · · Score: 0

      VectorCAST is enormously expensive piece of crap. When your tests are audited you will wave your hands about how your tests are designed. I'd recommend you use one of the many unit testing and mocking frameworks that are available.

    14. Re:Some of it is obsolete. by 0xdeadbeef · · Score: 3, Insightful

      Accept that sometimes we come up with a way to do better.

      Do you think a millennial invented automated unit tests? Do you think a millennial invented source control triggers?

      That was old hat in 2003. The only reason it wasn't "continuous" integration is that build times could be on the order of hours.

    15. Re:Some of it is obsolete. by Anonymous Coward · · Score: 0

      Hello from Detroit!

    16. Re:Some of it is obsolete. by 0100010001010011 · · Score: 1

      automated unit tests. source control triggers

      And yet here I am in 2017 not using either of those things because they're scary and new in my industry. People sound no different than the article poster whining about how the "old way is more better" for a variety of reasons that mostly hinge on personal feelings.

    17. Re:Some of it is obsolete. by Anonymous Coward · · Score: 0

      Accept that sometimes we come up with a way to do better.

      No kidding. This sounds exactly like my situation (adopting Jenkins and having the idea rejected), except at the time I was in my 40's and most of the people arguing against it were in their 20's.

      Put another way, I don't think this is a problem with age. There are people that can see the advantage of newer tech in every age group.

    18. Re: Some of it is obsolete. by Anonymous Coward · · Score: 0

      This is the age of liberalism and the only thing that matters are feelings. If you hurt them, you'll go to jail.

    19. Re:Some of it is obsolete. by gweihir · · Score: 1

      Accept that sometimes we come up with a way to do better.

      Very, very, very rarely. And then it is often actually some older guy that has actually done it.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    20. Re:Some of it is obsolete. by TheRaven64 · · Score: 1

      The concept of actual CI is flawed in our branch and merge git-world

      I've seen a couple of projects integrate CI with the GitHub pull request mechanism very well by ensuring that the CI system is the only thing that has push access to the master branch. Pull requests are tagged by a project member as ready to merge and the CI system then performs the merge to head. This ensures that you never end up with a race where a pull request passes tests, but then another commit introduces something that causes the code in the pull request to fail tests, even though it merges cleanly.

      --
      I am TheRaven on Soylent News
    21. Re: Some of it is obsolete. by Anonymous Coward · · Score: 0

      Shitty companies don't look for new opportunities, they focus on holding familiar ones. I'll bet the last major horse buggy whip company had tremendously lower costs over unit than the the competitors from the previous decade.

      If you need to fire a decent employee, it us because your management is terribad

    22. Re:Some of it is obsolete. by Anonymous Coward · · Score: 0

      Are you saying that we should give staff busywork so that they'll be around if we need them for something important later? Why not just put them on a retainer? How is busywork ever productive?

    23. Re:Some of it is obsolete. by Anonymous Coward · · Score: 0

      Why don't you have them do all the tasks you'll inevitably say you didn't have time for on launch day?

    24. Re:Some of it is obsolete. by jandersen · · Score: 1

      Are you saying that we should give staff busywork so that they'll be around if we need them for something important later?

      I think you already have enough data to answer your own question. What I am saying is that management should try to think a bit further ahead than to their next bonues payment. As an engineer, I have seen over and over how management jump on the latest money saving fad, and then struggle to keep up quality and production as a direct consequence. Just take the outsourcing idiocy: Managers go "Oh look, we can hire SW engineers in India and China for 10% of the cost, let's fire our seasoned, local people and hire some cheap ones instead" - and it always results in months or years of chaos. This is not because Chinese or Indian engineers are worse than American or European ones, but developing software is not like digging trenches or laying bricks. The ability to write code is only a very small part of it - there is a whole world of soft skills needed, centered around things like communication within the team, expectations that team members have of each others and of management; managers somehow rarely seem able to understand this.

      If the management of an apparently well-run business are not able to find new, useful things for their engineers to do, then that is a symptom of management failure. An engineer with long experience represents a significant value, but in terms of investment by the company and in potential, future earnings for the company. Who, in their right mind, would throw out something valuable just like that?

    25. Re:Some of it is obsolete. by Anonymous Coward · · Score: 0

      So would you get into an aeroplane with a "my way is better than the old tried and trusted way of flying" pilot or an older experienced pilot?

  10. So far in my career by Anonymous Coward · · Score: 0

    As a 53 yo C++ programmer with 30 years of experience I have never gone hungry competing with stupid n00bs or brown people. I doubt I ever will.

    1. Re: So far in my career by Anonymous Coward · · Score: 0

      Very cool. I envy you.(except the brown people part. Its true but you're not supposed to say it out loud) You sound like a real pro. Some people know thier shit and are never affected by economy downturns, dot com crashes, or outsourcing. Like this guy. Lets crack open his head and see how it works so well.

  11. Commentary? by Anonymous Coward · · Score: 0

    Why do so many want to kick Trump's ass? What did he ever do to so many to make so many want to kick his ass?

    1. Re:Commentary? by Anonymous Coward · · Score: 0

      How many pussies grabbed? But is that really so wrong?

    2. Re: Commentary? by Anonymous Coward · · Score: 0

      Look, some of us moved away from home to get away from grandpa's crazy crackpot theories. And now we have President Grandpa on Twitter.

      Everyone needs to stop fixing his computer for him so he can't get online anymore.

    3. Re:Commentary? by micahraleigh · · Score: 1

      Do those people get upset about Hillary exonerating pedophiles by manipulating polygraphs?

    4. Re:Commentary? by gweihir · · Score: 1

      He did not stay on his obscure back-alley defrauding stupid people? Now he is trying to defraud everybody.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  12. So true by Aethedor · · Score: 4, Insightful

    Too often I've heard that the way I develop my web applications is outdated. My 'old' but proven stable an secure approach is labeled 'obsolete', while the modern and 'cool' new techniques often cause stability and security issues. There seems to be an unspoken contest for many young developers to be the first to adopt new fancy technology. It's more about being cool than about delivering quality.

    Also, many young developers use third-party libraries too easily. They don't look at the quality of that library, they only look at 'does it do what I want'. Too often, that results in a big mess of spaghetti code. Young developers are lazy, too lazy to determine the 'general approach' (don't know the right English term for it) for their software and they're not mature enough to stick to that. I a big fan of the Keep It Short & Simple (KISS) approach. The third-party libraries I use must also follow that approach. If I can't find the right library, I write it myself. Yes, that takes more time. But it will safe time in the end, because it will give me good control over my application. I won't allow a crappy third-party library to mess up my application. Ever.

    --
    It doesn't have to be like this. All we need to do is make sure we keep talking.
    1. Re:So true by Pig+Hogger · · Score: 1
      Amen.

      I don’t trust Wordpress and their ilk. Many moons ago, a static website I was maintaining suddenly had some strange PHP code at the beginning of each file.

      Turns out the server was compromised, and they changed every Wordpress site into a zombiebot. But since I did not use Wordpress, it was totally inert.

      I eventually was forced out by some cougar honcho with her pet autistic kid/programmer who only swore though CMS, despite my warnings of vulnerabilities

      It did not take 6 months to have their “new, improved” website pwn3d

    2. Re:So true by Anonymous Coward · · Score: 0

      Young developers are lazy,

      That's the point of software development. Instead of doing the work directly, build a servant to do it for you. However, there is always the possibility of building the servant to a misunderstanding of the work.

      My observations have been that it's not laziness so much as impatience that leads to unstable software. Rather than understand the situation and then doing the least work possible to get a solution active, the enthusiastic young programmers implement something and then kludge it around every 4 to 8 days when it fails obviously.

    3. Re:So true by Anonymous Coward · · Score: 0

      I'm not that bothered by the whole bringing in a third-party library.
      What bothers me is the "I have a hammer, therefore everything is a nail" that comes with it.
      Some programmers have found a new shiny library that solves all their problems they try to use it n the next project, even if it doesn't really make sense.
      I guess it sucks too much to have invested all that time to find a new tool just to not be able to use it right away.

    4. Re:So true by Aethedor · · Score: 1

      Well, too often that third-party library is a truck, while all I needed was a wheelbarrow.

      --
      It doesn't have to be like this. All we need to do is make sure we keep talking.
    5. Re:So true by mrvan · · Score: 0

      Although I agree with you on the need to check out 3d party libraries before making your code dependent on it, it sounds like you might err on the side of rewriting. The biggest issue with code isn't writing it, it's maintaining it; and if a 3d party library is actively used and developed it means that in general someone else will be doing the maintenance, even if the codebase might not be the best ever. Writing and maintaining a new sockets/csv/oauth library is not what I want to spend my time on...

    6. Re:So true by Aethedor · · Score: 1

      Agree. But when all you have is a library that is known for being crappy/unstable/vulnerable, what do you do? A young developer would simply use it, because he won't know it's crappy/unstable/vulnerable. An experience developer would deal with it, by 1) writing a good library himself, 2) use it anyway, while taking the right precautions or 3) find a total different approach. Knowing what you're doing is the difference between a young developer and an experienced developer.

      --
      It doesn't have to be like this. All we need to do is make sure we keep talking.
    7. Re:So true by Anonymous Coward · · Score: 0

      There's good lazy and bad lazy. Bad lazy is realizing you have a problem someone has solved and taking the first 3rd party library that looks like it works, changing your code to match it's implementation. Good lazy is spending a couple of hours evaluating all of the offerings and which one will match your use case the best.

    8. Re:So true by Anonymous Coward · · Score: 0

      Although I agree with you on the need to check out 3d party libraries before making your code dependent on it, it sounds like you might err on the side of rewriting. The biggest issue with code isn't writing it, it's maintaining it; and if a 3d party library is actively used and developed it means that in general someone else will be doing the maintenance, even if the codebase might not be the best ever. Writing and maintaining a new sockets/csv/oauth library is not what I want to spend my time on...

      Depends, doesn't it? If your 3rd party library is a commercial product that discontinued or the company folds... there is no more maintenance. Plus, it may be cheaper to update your own library than pay licensing for the new version of a commercial product. On the other hand, the library may be doing things you don't know how to do, or would be too tedious.

    9. Re:So true by 0xdeadbeef · · Score: 4, Insightful

      Also, many young developers use third-party libraries too easily.

      This is probably my biggest pet-peeve about younger programmers.

      It is a nice metric for measuring competence, though. Anyone who automatically trusts a black box assumes it is higher quality than anything they need to test. Anyone who uses third party code assumes it solves their problem faster, failure risk and debug cost included, than writing it themselves. The quality of the third party code someone chooses shows the upper bound of their own ability, and of their ability to perceive quality itself.

      It can be used as a flanking maneuver to trick incompetent people into outing themselves. Critique their code directly, they puff up and make excuses. Criticize the third party shit they introduced into the build, and if they agree with you to appear wise and knowledgeable, the noose goes tight.

      If only I could say this directly: we can fix the shit you write. Fixing someone else's shit you found on github is more expensive.

    10. Re:So true by Anonymous Coward · · Score: 0

      I agree. THat's why I only use MY hash library, and MY linked list library, and MY Numerical C recipies library.

      And I always use --ansi and --pendantic.

      Dude, you're probably 25. The problem is fuckers like you who think you know stuff, but are so fucking wet behind the ears you create a faux layer of experience that just adds to the mediocrity.

      The REAL problem: programming is like playing guitar: almost ANYONE can do it, but that doesn't mean you SHOULD.

    11. Re:So true by Aethedor · · Score: 1

      Dude, you're probably 25

      Sorry kiddo, you got it all wrong.

      --
      It doesn't have to be like this. All we need to do is make sure we keep talking.
    12. Re:So true by Wraithlyn · · Score: 1

      we can fix the shit you write. Fixing someone else's shit you found on github is more expensive

      This is gold. I am totally stealing it.

      --
      "Mind, as manifested by the capacity to make choices, is to some extent present in every electron." -Freeman Dyson
  13. PRO-tips by Anonymous Coward · · Score: 0

    If you want to be pro, you've got to stop using meme languages every few months and stick to the tried and true.

    1. Re:PRO-tips by Pig+Hogger · · Score: 1

      It’s kinda hard when the “tried ant true” (cough, PHP, cough) is one of the most unprofessionnal language there is

    2. Re:PRO-tips by tomhath · · Score: 1

      As one old enough to remember when "meme languages" meant C and SQL. Then Ada. Then Perl, Java and Javascript.

      To be a pro you need to learn the new meme languages enough to make your own decision whether to use them rather than rejecting them because they're not the tried and true language you've been using for the past ten years.

      However, in my experience the mistake most programmers make is learning a single IDE/framework and expecting everything to be done in it. Visual Studio, Eclipse/Spring, Node IDE de jour, whatever. That guarantees you will be obsolete in a couple of years.

    3. Re:PRO-tips by gweihir · · Score: 1

      PHP is more a "tried and ran screaming" kind of technology....

      That said, a really good developer can wrest solid code even from PHP, but it is kind of hard. Most PHP "developers" (and I include the language design team here) should instead realize their true potential and move to things like shoveling dirt, stacking shelves or flipping burgers. They would probably manage to even mess that up though.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    4. Re:PRO-tips by Anonymous Coward · · Score: 0

      PHP is the VB6 of the web.
      Easy to throw something together in. Horrible to maintain or do something complicated with.

  14. It's a matter of leadership ... by Anonymous Coward · · Score: 0

    It's a great honor and opportunity to be surrounded by people who don't know what they don't know. Best not to confront them head on ... their strength is their persistence and self-confidence, and working against their strength is just asking for friction. Instead, come up with examples of where *other* projects have gone off the rails. Or how about a hypothetical design exercise, so everyone isn't so invested? These younger programmers are quite brilliant and will grow to be great. Right now they are in need of guidance from people wise enough to both know their stuff *and* how to deliver it. I struggle with this, too, but delivering wisdom is far more important than asserting it.

  15. Same stuff, different generation by Anonymous Coward · · Score: 1

    Yep, I've been coding for 40 years and have seen this argument come up over and over. Every set of 20 somethings pee on older coding methods and bang the drum for their 'new' way of software development and then when they get into their 30's they bitch about the the next 20 year old's peeing on their code. They should teach a class in college about it. There's only one thing worse than this. It's some 50 year old Architect who always trying to prove he's hip by jumping on every new thing that comes down the development pipeline. Everyone gets caught in a permanent rewrite mode until the product fails to meet the delivery date, the customers leave, and the company folds.

  16. bare no resemblance by Anonymous Coward · · Score: 0

    bare no resemblance

    Fucktard.

  17. Poster, you forgot the "controller" in MVC. by happyjack27 · · Score: 1

    I agreed with the poster up until the last part, where he suggested that the "massive view controller" problem was a misunderstanding of what constitutes a "view" and a "model". I'd ask poster if he understands what constitutes a "controller" in the MVC model. And from that I surmise that who ever told him he didn't know what he was talking about was probably correct, at least in that particular instance.

    But that the poster didn't realize this, throws into doubt earlier things he said, which I agreed with up until I got to that sentence. It strikes me now that those perspectives might really have been the result of the posters "arrogance and ignorance" as the phrase goes. And furthermore that his claims of things being a solved problem for "20 to 50", while I agree this happens a lot, I think we might disagree on what the specific instances of this are.

    I would say for instance that, while it didn't need to invent a new language to do it, "Rust" provides a good solution to dynamic memory allocation (namely, compile-time static analysis), that is different and in many ways better than garbage collection and automatic reference counting (ARC). While he might claim this problem was solved decades ago, it is just a fact that compile-time static analysis for dynamic memory allocation did not exist until recently, except in the form of "scope" as opposed to "lifetime", which, while similar, it is different from.

    Now there will certainly be a great deal of rediscovery, of re-inventing wheels poorly (for instance i just found someone re-created the java "date object", but made the linux epoch (zero milliseconds) dependent on the time zone.), but it must be noted also that there still are a fair amount of new, interesting ideas.

    1. Re:Poster, you forgot the "controller" in MVC. by TheRaven64 · · Score: 1
      MVC is a particularly bad example, because the original Smalltalk MVC was very different from modern MVC libraries.

      While he might claim this problem was solved decades ago, it is just a fact that compile-time static analysis for dynamic memory allocation did not exist until recently, except in the form of "scope" as opposed to "lifetime", which, while similar, it is different from.

      Actually, it did since the '70s (and some of the theoretical work dates back to the '60s), it's just that it was regarded as computationally infeasible for most software until recently. Even then, it doesn't really handle covariant and contravariant types very well. The same is true of a lot of 'modern' compiler techniques: a lot of things are possible on dev machines with 16GB of RAM that seemed practically impossible to people who invented them on machines with 128KB.

      --
      I am TheRaven on Soylent News
    2. Re:Poster, you forgot the "controller" in MVC. by K.+S.+Kyosuke · · Score: 1

      I would say for instance that, while it didn't need to invent a new language to do it, "Rust" provides a good solution to dynamic memory allocation (namely, compile-time static analysis), that is different and in many ways better than garbage collection and automatic reference counting (ARC). While he might claim this problem was solved decades ago, it is just a fact that compile-time static analysis for dynamic memory allocation did not exist until recently, except in the form of "scope" as opposed to "lifetime", which, while similar, it is different from.

      Escape analysis and data flow analysis have existed for quite some time, and both are compile-time steps that can be used to substantially limit the amount of consing. There have also been linear types sometime around 1990. Lisp also allows for explicit dynamic extent declarations in case that everything else fails but the programmer knows what he's doing.

      --
      Ezekiel 23:20
    3. Re:Poster, you forgot the "controller" in MVC. by happyjack27 · · Score: 1

      "Escape analysis and data flow analysis have existed for quite some time..."

      Okay, well neither of these things are built in compile-time static analysis of memory allocation to prevent memory leaks efficiently. So I'm not sure why you mention them.

      "Lisp allows for..." ...yeah, I'm going to stop you right there.

  18. He's Right by sycodon · · Score: 2

    Anyone who's been in the industry for more than a decide knows it.

    --
    When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.
    1. Re:He's Right by Anonymous Coward · · Score: 0

      what's a "decide" - 10 years?

    2. Re:He's Right by sycodon · · Score: 1

      LOL!

      See! This new fangled Web thingy!

      --
      When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.
  19. We're Boned by pipingguy · · Score: 2

    Younger people are usually cheaper and easier to fool and push around. We've outsourced thinking, experience and knowledge to the machine. There's no going back. Welcome to the permanent "Leisure Class" except with no money. We're boned.

  20. Re:tl;dr by FatdogHaiku · · Score: 1

    Well, there was the one lonely close paren in an unfortunate location...

    --
    You have the right to remain sentient. If you give up the right to remain sentient, you will be elected to public office
  21. Brute Force in AI by niks42 · · Score: 1

    Maybe it is time to let go, retire and go repair motorcycles or support local communities by starting up a Hackerspace or something.

    I've been watching the development of AI recently, reflecting on all of the work we did in the 70s on Machine Intelligence and Perception, or in the 80s on Expert Systems, and ruing the day that all of that expertise was kind of lost; we seem to now be benefiting from the march of technology to provide huge resources for computation that are built into Brute Force solutions for Deep Mind kind of AI, and we have lost the focus on what makes an intelligently coded algorithm.

    1. Re: Brute Force in AI by Anonymous Coward · · Score: 0

      Wow. You sure are taking a lot of credit. Been invlolvrd in all of those capitaluzedbuzz words, have you? Well, as one of the real 'we' - meaning someone actually working on the libraries for what you call perception or maybe machine vision, it actually hasn't changed that much. The real difference between then and now is computational capacity. As posted above, it was not possible for computation back then. Now it is. It has been since the 2003. So it's been 14 years and how far have we got?

  22. And they don't know about solved problems (;-)) by davecb · · Score: 1, Troll

    A surprising amount of the resistance is plain fear: if you describe a solved problem in computer science, some number of the PHBs and some of the engineers will be frightened, and push back. Others will cover their ears and say "naa, naa, naa, can't hear that". After all, if they knew it was a solved problems and did the wrong thing, they could get in trouble!

    The frightened folks need to keep an eye on the news: I reccomend the morning paper.

    The person proposing a known fix should do so either very early in the project's life when it's easy to change, or very late, after a fiasco when it has to change. The middle is A Bad Time to change horses.

    --
    davecb@spamcop.net
    1. Re:And they don't know about solved problems (;-)) by Anonymous Coward · · Score: 0

      I reccomend the morning paper.

      I stopped reading at MongoDB in the first paragraph. I don't want to know anything having to do with MongoDB, no matter how brillant.

    2. Re:And they don't know about solved problems (;-)) by davecb · · Score: 1

      He's saying that it was tested on Redis, MongoDB, PostgreSQL and some odds and ends, not that mongo is good or bad

      --
      davecb@spamcop.net
  23. Beverly Hills Cop by RogueWarrior65 · · Score: 1

    This sort of thing affects lots of different organizations not just the programming world. The arrogant newbie enters into an organization and immediately wants to change everything because in his/her eyes, until they came along the place was being run by a bunch of hick hayseeds. That's not to say that things can't be improved but one needs to spend some time observing, building relationships, and then making suggestions for improving things. One of the most appropriate lines from Beverly Hills Cop is when Axel Foley's boss tells him, "You're a hell of a good cop but you don't know every f*cking thing."

  24. On being the "hero" by petes_PoV · · Score: 1

    Our industry seems to value "cowboys

    Yes. I have lost count of the number of times people have been praised and rewarded for fixing some "disaster" or outage. But without anybody ever asking how the problem occurred - frequently at the hands of the very same hero who then "saved" the company.

    There seems to be the view in upper management that problems just happen: like earthquakes and floods. There is usually so much relief when the lights come back on (metaphorically) that everything leading up to an outage gets forgotten or forgiven. I even know of some individuals who, if not exactly creating problems, are very happy when there is an issue. Not just because it gives them the opportunity to be a "star", but because all the process-driven and procedural restrictions get tossed, and they have free rein to fix things by any means necessary.

    --
    politicians are like babies' nappies: they should both be changed regularly and for the same reasons
    1. Re:On being the "hero" by Comrade+Ogilvy · · Score: 1

      About half the much lauded "firefighters" I ever worked with were awesome engineers whose opinions I completed trusted. The other half were proverbial chain smokers who left smoldering stubs everywhere they went. I have my doubts that management ever figured out the difference.

    2. Re:On being the "hero" by Wraithlyn · · Score: 1

      "Intellectuals solve problems, geniuses prevent them." -Einstein

      --
      "Mind, as manifested by the capacity to make choices, is to some extent present in every electron." -Freeman Dyson
  25. Catch the tief! Er ... the geezer! by Anonymous Coward · · Score: 0

    If you are discriminated for your age, it is a revenge (or rationalisation for their own career choices) of someone your age, or even older, above you.

    You do what they do, age discriminate against old bosses and find yourself a young start-up to work at. They will be more open and they'll find use for your experience.

    1. Re:Catch the tief! Er ... the geezer! by micahraleigh · · Score: 1

      I'm so confused.

      I keep hearing startups refuse to consider older developers, but then I hear there is more opportunity for them there.

      I really have no idea, and any advice for how to navigate age is welcome. I have 2 .NET devs at my church over 50 who no one will hire.

  26. I never see ageism when project is important by ranton · · Score: 1

    The commentary has a major flaw. It does not comment the obvious, that industry love the young because they are cheaper, and have yet not learned to say no to crap.

    Not only does it ignore the primary reason why companies often favor young workers, that omission causes the commentary to not touch on the the times when our industry values experience as much as any other.

    While I have seen a great deal of ageism in this industry, I have never seen it on projects when a project is really important to the company. When I work on a project where the C-level really cares about its success, they don't want young people in important roles on the project. I grew out a beard in my early 30's just to look older, because of instances like the time I had a client I first met in person after working with her remotely for months say "wow I pictured you as a grizzled veteran, but are you even done with college yet?" I try to downplay my age as much as possible since in many important meetings I'm the only one under 40, and often one of the few under 50.

    Ever since I graduated to projects where success will actually move the needle of the company's financial statements, I have heard far more derogatory comments about how young someone is than derogatory comments about how old someone is.

    --
    -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
  27. Old = expensive. by nbritton · · Score: 2

    It's not because your obsolete, it's because you're too expensive. When I was young I was lucky to get $40k, now I can command six figures. It's because I have experience. If you want more professional programmers then pony up the cash for experienced professionals... you get what you pay for and there is no free lunch.

    If you are a senior professional, the important thing to remember is don't price yourself out of the market. For me, salary is usually the last thing I think about during the job hunt, I'm more interested in finding a role doing something that I enjoy and something that can benefit from my experience. As long as pay is within two standard deviations from the national average I'll seriously consider the offer. Also pay isn't everything, I prefer companies with a good benefits package and ones that are stable with a proven track record.

    1. Re:Old = expensive. by Anonymous Coward · · Score: 0

      I agree. Choosing a solid industry segment is important too. The preoccupation of young developers with games defies logic.

    2. Re:Old = expensive. by nitehawk214 · · Score: 1

      I learned early in my career that I don't want to work at companies that moan and whine about how much software staff costs. This extends to non-programmers as well. "Why should I pay for a professional QA person, when I can just pull someone off of the line and pay them peanuts?"

      I remember sitting in an IT staff meeting getting a lecture that we were lazy overpriced bums. "You are 20% of our staff, but make 50% of our wages!"

      Yeah, asshole, its because we have degrees (mostly 2 year, because they were cheap bastards) and your line people did not even graduate high school.

      I realized at that point that as a programmer, I do not want to work in IT ever again.

      --
      I'm a good cook. I'm a fantastic eater. - Steven Brust
    3. Re:Old = expensive. by __aaclcg7560 · · Score: 1

      I realized at that point that as a programmer, I do not want to work in IT ever again.

      Sounds like you worked in a small company. Corporate IT is a different ball game. The worse corporate IT I ever worked for had upper management insisting that the IT service provider deliver "double the performance for half the cost" as a requirement. The only way to meet that metric was to cut the staff in half and double the workload on everyone else. Last time I checked that company was on its fifth IT service provider, the IT staff was too small to support current operations, and everyone I knew ten years ago is long gone.

    4. Re:Old = expensive. by nitehawk214 · · Score: 1

      Yeah, it was fairly small.

      I once worked in a big software development division at a huge corporation and it was much like that. Employees are an expense not a resource, squeeze margins until they squeal. Hire contractors so they can be let go without any strings attached.

      When they moved on to offshore, I jumped ship... so to speak. I will not work for a company that does offshoring ever again.

      --
      I'm a good cook. I'm a fantastic eater. - Steven Brust
  28. we're were all young once. by Anonymous Coward · · Score: 0

    I've been writing code for many years and from what I have seen is:
    1. There were older programmers when I entered the field
    2. There were a lot of newer programmers who joined the field with me
    3. Some of the older programmers couldn't keep up with the technology and left the field
    4. Many of the people who entered the field with me, have since left the field [as in they weren't able to cut it]
    5. Wait 5 years
    6. Goto 1

    Programming is like all of the other fields out there. There are a lot of people entering the field for reason X and soon realize they aren't able to make it. So a few years down the road, they switch to a different field.

    So yes, a lot of the newer programmers aren't going to make it because they don't have what it takes. For the most part, the older programmers have stood the test of time. However, I still run into older programmers who should have never joined the field in the first place.

    Are there other factors for hiring a younger person? Yes. And depending upon your perspective, it's either good, bad, or both.

    Every industry is like this. Nothing new to see.

  29. How To Make Novice Programmers More Professional by Tennessee+Bear · · Score: 1

    As a member of the Obsolete generation, I have a "biased" view of what was stated. The industry is guilty of being Ageist, and Sexist. Also of being blind to history. Thus they repeat it. All the "new" innovations are based on reworked versions of past innovations. The Cowboys rule and they have always. Companies and schools have tried to impose standards, but fail because results count, not support ability. Batch job submission became RJE, RJE became RPC with a GUI, Time sharing became CIS, Citrix is timesharing in a new wrapper. Everything old is new again once its repackaged. But show me the Millennial that understands that and they are just as obsolete as I am. There is not a shortage of qualified programmers, there is a shortage of Mid and upper management, and young programmers that understand this. Its the nature or culture of IT in general. .Who can do it quick that counts. That is why we have always had want ads that ask for 5 years experience with a product that has been out for 6 months. In the end it does not matter if programmers are professional enough, they will be phased out by AI not too for in the future. Many who call themselves programmers today are little more then scrip writers. Its a dying industry.

  30. Management fail by IHTFISP · · Score: 1

    The core problem is not w/ engineers nor CEO-level executives: the real root problem here, as usual, is a failure of low-level management & hiring policies.

    --
    Error: NSE - No Signature Error
  31. THIS!!! by Anonymous Coward · · Score: 0

    This is *exactly* what happened to me. The website I designed from the ground up, which was entirely stable and secure, was second-guessed by our PR people who wanted WordPress because all their friends were using it. And the outside developer didn't even seem to know the importance of requiring valid HTML code, or accessibility for people who consume websites via screen-readers and such. Long story short, something would break or revert or never work correctly in the first place since the new site was implemented, and after repeated warnings about such, the PR people are only *now* *after 10 months of this) thinking that they may need to go back to the developer to fix some of the problems. Of course, our PR people also failed to realize they would need a permanent budget for fixing/developing the new site, as opposed to the previous site where they had an in-house employee who could do all the work themselves (I refuse to learn PHP, not that I was given access to the back-end anyway). So, just desserts and all that. Meanwhile my organization is re-purposing me to more interesting and potentially-rewarding work, so I consider myself lucky in that respect, as the "sudden obsolescence" (LOL) of my job at the hands of clueless PR types was something of a blessing in disguise.

  32. Alan Kay by K.+S.+Kyosuke · · Score: 1

    "Programming is not a field, it's a pop culture." -- Alan Kay, paraphrased

    --
    Ezekiel 23:20
  33. Crappy software by Anonymous Coward · · Score: 0

    A former colleague once commented "Thank god for crappy software. It keeps a lot of us employed fixing it". Rewriting perfectly good software also
    apparently keeps a lot of people employed reinventing the wheel.

  34. Disjoint between title (subject) and summary. by Walter+White · · Score: 1

    I didn't read the original article. I did read the summary which says absolutely nothing about "How To Make Novice Programmers More Professional." It seemed to be a whinge about how one seasoned developer felt disrespected by management. I don't see how that helps make novice programmers better in any way.

    Looking back on my development, a mentor was insistent that shortcuts often lead to delays and inefficiency later on. Do things right in the first place and move forward.

    I'm not sure that's relevant to this discussion, but I'm one of the dinosaurs.

  35. Re:tl;dr by dcw3 · · Score: 1

    Funny, I remember winning my first autocross race against 25 young punks when I was 56 yrs. old. But go ahead and keep thumping your chest moron.

    --
    Just another day in Paradise
  36. No, we can't by fyngyrz · · Score: 2

    How come we don't ask this question? Can we get rid of the layers of useless HR bureaucracy?

    It's not asked much because the answer is no.

    Control in employment (and government) extends top down, not bottom up. Most places, if you even attempt it as bottom up, you're likely to be out on the street, starving.

    If you don't want to be a controlled resource, then you have three options.

    1: Strike out on your own. This is very hard, but it can be done. I did it and was successful at it. I retired reasonably early (in my early 40's) and have been enjoying myself since. I did it without a college degree, and got a good deal of it done prior to the Internet. If I had had the Internet available in those early days, I would have saved a lot on textbooks. :) Basically, this is "if you want it done your way, you need to be the boss."

    2: Find the means to search until you find the very rare exception to the rule where the idea of actually doing good work is integral to the operation, and get them to hire you. This type of job search is expensive, slow, unlikely to succeed (there are very few such operations, comparatively speaking), and it also means that you still probably have to navigate the idiotic irrelevancies HR throws up on a constant basis. They still may not do things your way, but they may be using methodology that works well and you can at least live with.

    3: Move into a field where this stuff isn't a cause of going home at night so annoyed your dog avoids you.

    --
    I've fallen off your lawn, and I can't get up.
  37. The mainframes, the minis, the PCs... by dpbsmith · · Score: 1

    Sure. Anyone my age has seen the wheel reinvented several times because the minicomputer people were too arrogant to study what the mainframe people had done, and then the microcomputer people were too arrogant to study what the minicomputer people had done.

  38. Not all older workers are dinosaurs by ErichTheRed · · Score: 1

    I'm in IT, and we have the same problems programmers have, to a slightly lesser degree. Experience is not valued the same way it is in other fields -- most people don't trust a doctor straight out of medical school more than they'd trust a mid-career specialist who's probably seen thousands of patients. The reverse seems true in development -- employers place enormous faith in fresh grads programming in Web Framework of the Month and discard people who've seen this stuff 20 times over because they're too expensive. In IT, experience usually matters a tiny bit more, but it's really hard to justify the higher salary levels and you have to work very hard to keep your skills current as you age.

    I'm in the middle of a huge "migration to the cloud" for one of the core products the company I work for sells. When talking about Azure, Microsoft lumps us "old school" folks into a term they call "IT Pros" to separate them from "Developers." Because it's the cloud and they're targeting new developers writing from scratch, almost everything provided is aimed at developers and abstracted to a very high level. This is getting better, but Microsoft's a software company and they're used to interfacing with developers especially since they're not releasing packaged products anymore, instead they're rolling out and improving services as they go. The truth is that all this cloud stuff is just another layer removed from the actual hardware to make people's lives easier. It doesn't absolve you of the need to design in contingencies for failures or to know how things actually work at a low level. The best people I've worked with on cloud things so far have been the older crowd -- they understand that behind the magic is still servers, still TCP/IP, DNS, load balancers, VPNs, firewalls, etc. and that the concepts behind these haven't disappeared. Someone fresh out of school might not have the background and might even say "oh, that's low level crap, the cloud provides magic 100% uptime and infinite scale!" (And yes, I've had conversations that end like that...the concept of backup and DR is lost on some people regardless of cloud-vs.-on-premises.)

    That said, I do know people my age who haven't really grown all that much in their careers and have done the same thing for ages. The problem is that everyone over 40 gets lumped in together. You basically have to know someone to get hired past 40 at some places. How do we as an industry recognize hard-won experience for what it is instead of worshiping the cult of the 25 yeard old startup employee working 100 hour weeks because they're basically learning on the job?

    1. Re:Not all older workers are dinosaurs by __aaclcg7560 · · Score: 1

      You basically have to know someone to get hired past 40 at some places.

      Or get a job in government IT. I'm the youngest at 47 in my department. Everyone else is in their 50's, 60's or 70's.

    2. Re: Not all older workers are dinosaurs by Anonymous Coward · · Score: 0

      How do they know your age? If you pass the interview well and don't look like shit .....

  39. First learn English... by frank_adrian314159 · · Score: 1

    Like the difference between "bear" and "bare". Or maybe how to not keep the smart quotes from Word in the article so it doesn't barf on the screen under /.'s retarded lack of unicode.

    I don't see a lack of professionalism - just standard lack of experience and youthful hubris. And only more projects and time fix those.

    --
    That is all.
  40. There is only one measure on a professional... by Anonymous Coward · · Score: 0

    working code. You have the choice of a non "cowboy" that produce pretty shit code and a "cowboy" who produce working code. Whom do you pick?

    1. Re:There is only one measure on a professional... by Anonymous Coward · · Score: 0

      I think you are a fool. First, you produce code to meet today's requirements. Second, make it easier for the poor bastard who comes in behind you to maintain and extend it.

      Most cowboys fail spectacularly at #2, creating the potential of later 'refactoring'.

  41. And... by Anonymous Coward · · Score: 0

    ... Get off my lawn, damn it!!

  42. Tried and True by fyngyrz · · Score: 1

    It’s kinda hard when the “tried ant true” (cough, PHP, cough) is one of the most unprofessionnal language there is

    For vaguely similarly slow scripting, there is:

    Python. Tried and true. Worlds better than PHP.

    Perl (it tends to be messy as hell, but it's certainly tried and true, and it doesn't have to be messy...)

    There's no good reason to use PHP. There are bad reasons -- like "PHP is all I know", and "they made me use PHP" -- but there are no good reasons.

    If you require real performance, you won't use any of the above. Performance is not their strength. They only way they can achieve performance is to either bring huge hardware to bear, or end up calling something written in a high-performance language. For tried and true, there is c and c++; for the risk-takers, looking into go might be called for.

    And just so I don't have to bother to reply to the inevitable whining about c (which is always whining from those incompetent in c), yes, you'll need a good programmer, or several. There are plenty out there. Of course, you might have to stop looking in Islamabad, Mumbai and grade schools for your employees in order to find them.

    --
    I've fallen off your lawn, and I can't get up.
    1. Re:Tried and True by gweihir · · Score: 1

      I like Python. If you do not need performance, it it a very nice language that rarely stands in your way. If you need performance, writing extension modules in C for the heavy lifting is pretty easy.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    2. Re: Tried and True by Anonymous Coward · · Score: 0

      you use python for your website development... You are limiting yourself to the only language you know. Don't use a hammer everywhere.

      Php, node, ruby,Perl all better choices for millions of reasons

    3. Re: Tried and True by fyngyrz · · Score: 1

      LOL. Found the script kiddie.

      --
      I've fallen off your lawn, and I can't get up.
    4. Re:Tried and True by Pig+Hogger · · Score: 1

      There's no good reason to use PHP. There are bad reasons -- like "PHP is all I know", and "they made me use PHP" -- but there are no good reasons.

      There's no good reason to use PHP. There are bad reasons -- like "PHP is all I know", and "they made me use PHP" -- but there are no good reasons.

      The best reason is “that’s the only thing the host runs”

  43. Abstract Classes by Anonymous Coward · · Score: 0

    But, But, the abstract classes, strong typed iterators, functional programming and Html5.

    Your over the hill with your paradigum of state machines, algorithms and time complexity.

  44. Re:tl;dr by Anonymous Coward · · Score: 0

    I found this much more grating: ...objects that bare no resemblance...

  45. Re:tl;dr by Anonymous Coward · · Score: 0

    There was the incorrect homophone - using "bare" where "bear" was the word intended - that failure obviously the first indication of a failing brain.

  46. Best way to Make Programmers More Professional by Anonymous Coward · · Score: 0

    Repeated application of electroshocks and chocolate drops, as appropriate.

  47. It's HR-Speak by shawnhcorey · · Score: 1

    Saying older programmers can't perform as well as younger ones is just HR-speak for "older programmers don't put in free overtime." You can't change HR.

    --
    Don't stop where the ink does.
  48. Re: How To Make Novice Programmers More Profession by Anonymous Coward · · Score: 0

    Hehe. Lost your job eh?

  49. Ten Thousand Mistakes by hackwrench · · Score: 1

    http://thecodelesscode.com/cas...
    Ten Thousand Mistakes
    âoeTen mistakes, a thousand times each.â

  50. Oh yes, the story about Muthu.. by gamekeeper · · Score: 1

    To be clear, I do not support the slander, or marginalization of anyone based on color, race, creed, or religion.. Moving on. So, I read through the comments, saw the ups and downs. But what's disturbing is the fact when those whom speak up regarding glaring issues, there is no support.. this is how most people see it, 1. employer wants to start an initiative to jump start productivity. 2. employer may not want to pay or does not have a budget for the expectations.. 3. leverage someone in the workforce to spear-head this project, regardless if they are qualified or not. Latteral move requiring no extra Budget outlay. 4. if it doesn't work, employer blames employee whom is laid off and then is also responsible for those whom acted on the advice and subsequently got laid off. Which opens other avenues.. 5. Now employer has several openings that can be filled by younger less experienced individuals (drones), that can try to do the work at a significantly reduced cost.. Long term looks shabby, short term looks great. yes I agree our profession is messed up to some degree, but does that mean that we should sweep incidences like this under the rug, and try to move forward with a short ter vision? Or, can we stop this vicious cycle and bolster a better future-vision for ourselves and those whom will undoubtedly come after our passing? What ever happened to the concept of "forward thinking?" Thank you all for your time and attention (or lack there of, thanks just the same)

  51. Fully agree on that by gweihir · · Score: 1

    I am strongly going on 50. The funny thing is, part of my work-time I code (mostly C these days) and for full consulting-rates at that, because what I code is apparently too difficult for the hot-shot cowboys. Of course, I also deliver useful documentation, analyze problems not caused by me, explain how web-technology works to "developers", explain different architectural, design and implementation options, do security analysis, etc. The very competent and helpful UNIX-guru on the customer-side is even 10 years older than me.

    The part of the industry that is ageist and arrogant (i.e. the far larger part) is also very incompetent, and very, very stupid, because when it really hits the fan, they need some older guys (and the occasional gal) that actually have a clue how everything works and are not confined to their nice, sterile "Framework"-world, where problems do not exist and nobody needs to even understand how an URL is composed of components. This also nicely explain why so many IT projects fail or deliver vastly under-performing results: Lack of experience and the lack of understanding that comes with it. Amateurs.

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  52. How to tell Colleges they are teaching wrong? by Anonymous Coward · · Score: 0

    Novice Programs that come out of College knowing everything and unwilling to learn from the experienced must come from Colleges.
    That means the Issue is College professors. I assume the students were willing to learn from them.
    And someone told them that experience has no value in this one profession.

  53. Massive View Controller by Anonymous Coward · · Score: 0

    'nuff said.

    I'm 50 year old contractor. I have more work than I can take on, and experience that literally covers almost everything: from implementing 8-bit floating point on nanowatt embedded ARM MCUs, to electrical (board layout) debug, CPU architecture, CAD development, design (2 years of industrial design school), just about every interpreted language from the past 20 years, all the way to full stack webdev in the cloud with directed test, git revision, and deployment strategies. I enjoy watching Web2.0 evolve, yeah there are mistakes by the wayside, but it is an amazing time to be alive as a programmer. (I love that I don't even need to worry about provisioning hardware when I can deploy to elastic beanstalk and connect lambda functions for analysis.) Yeah, I can still dive into a lab and debug a noise issue on an 8-layer board, but I didn't stop learning new things 20 years ago.

    This whining about youth ruining programming is just a bunch of pathetic old dudes who lost the fire to be a hacker, or probably weren't very good to begin with. While traveling through central america I met a 70 year old developer who has stayed current for four decades. I have zero sympathy: go get a different job if you can't keep up.

  54. It is the evening of the day... by Anonymous Coward · · Score: 0

    It is the evening of the day

    I sit and watch the children play

    Doing things we used to do

    They think are new

    I sit and watch as tears go by

    -- Sir Mick penned this and it was made famous by Baroness Marianne a looong time ago

    The moral of the story is that the youth are always inexperienced.

  55. Re:tl;dr by micahraleigh · · Score: 1

    Anti-aging technology is not encouraged here. Slashdot posts must only promote eugenics and genocide.

  56. Re:The commentary has a major flaw (two actually) by Anonymous Coward · · Score: 0

    While I think I’m on the right (old) side of this divide, I’d still take rather strong objection to the OP's statement that
    “most of the concepts we bandy about as cutting edge were developed from 20 to 50 years ago.”

    Fundamental changes during my career:
    - the change from DOS to windows programming: Under DOS you controlled the program’s structure and state—you knew, pretty much at all times, where the program was and what was happening. Windows, by moving to an event based approach rather than flow-of-control, really did change everything for most PC programmers. That’s also why in most early Windows programs so many dialogs were modal—the programmer’s inability to let go of the state of the program, and pay attention instead to the underlying state-of-the-object-model.
    - Less fundamental than the previous, the change from desktop to C/S. Think of all those early apps that used flat files (the inheritance of mainframe programming) and the equivalent of “select * from .” The thinking and state management that goes into C/S programs and major database use is not just style—it’s fundamental to what the programmer has to think about in coming to a design.
    - The change from C/S to web- or cloud-based applications. Again, perhaps arguably less fundamental than the preceding, but still a fairly drastic change in the composition of the set of balls that the programmer must keep in the air—different things to pay attention to and different things to worry about. Perhaps not a change of fundamental principles--but very much a change to everything about the environment within which those principles need applied.
    The obvious much touted transition I’m not listing here is single- to multi-threading. That’s a more limited technical issue that I don’t feel changed everything the way the above three did. Anything else I’m missing ?

    Does that mean that the experience of the older programmers has little value? Absolutely not. But I do think that how much the industry has or has not changed is, fundamentally, irrelevant. The real issues are these:
    - From the parent comment: “ industry love[s] the young because they are cheaper, and have yet not learned to say no to crap.”, and
    - The full cost of crap is, more likely than not, beyond the controlling manager’s time horizon, and therefore of little interest.
    AC

  57. I agree, BUT... by bradley13 · · Score: 3, Insightful

    As a 50+ programmer, who has written lots of code in more languages than I can remember, I agree absolutely that experience counts for a lot.

    Why am I not excited about that great new framework? Because it does the same thing that X did 2 years ago, Y did 5 years ago and Z did 10 years ago, and they were bloated crap too. Great steaming piles of half-tested code that introduce outside dependencies in our project that we cannot control.

    Oh look, a new programming language. Everyone who ever enjoyed a compiler course has written their own programming language. Me too, whoopie. It's the libraries that come with the language that make it useful, not the syntactic sugar. It's the maturity of those libraries that make it stable and secure. I love playing with new languages, but I would never use a new language for anything important. WebAssembly? Ouch, please tell me they aren't serious, because I guarantee it will be used for productive websites far too soon. The articles about compatibility problems (websites depend now not only on your browser, but on your hardware), security breaches (sandboxed, riiiight), etc. almost write themselves, lacking only the specific details that we will hear all too soon.

    On the process side: Agile programming? We called it iterative development 30 years ago. It has the same advantages and disadvantages that it always had. Scrum? Don't get me started. DevOps? Old hat with new buzzwords. If we keep changing our tools and processes every couple of years, it's no wonder we produce crappy products filled with bugs and security holes.

    Chasing the new shiny is almost always a stupid idea if you are trying to produce a solid, reliable, secure system. Experienced programmers recognize crappy new ideas for the re-treads they usually are. Experienced programmers have probably built systems similar to what you need, and know how to do it. Experience counts for a lot.

    BUT.

    But, there is still competence. I have worked with "seasoned programmers" whose productivity was a net negative, because the rest of the team spent so much time cleaning up after them. Typically, these people have no idea how incapable they really are - they actually do view themselves as the seasoned, experienced programmer you just can't do without. Also typically, for whatever reason, you aren't allowed to remove them from your team.

    And I have also seen young programmers produce some incredible stuff. Three of my bachelor students build a complete website, multilingual, including a custom CMS and custom rendering, along with most of an accompanying web-shop. For a customer with very specific requirements. In nine weeks. The code is still running today, 8 years later. The custom, multilingual CMS and the rendering system is rock-solid stable, running unchanged. Some of the code shows that they were only students - hard-coded constants and other sins - but overall it's better quality stuff than what 99% of the "seasoned" programmers could produce, much less in such a short time.

    So, yes: experience counts, but so does skill. And the two are not always correlated...

    --
    Enjoy life! This is not a dress rehearsal.
  58. Re:The commentary has a major flaw (two actually) by ruir · · Score: 1

    Have you noticed there was Unix since the 70s, actually? What Windows? Many of us are using web and programming for the Web since the 90s.
    Interestingly enough, you are still young and unexperienced to get the meaning of not taking crap. Interesting.

  59. Uncle Bob (Robert C. Martin) by stormesj · · Score: 1
  60. Is this just a USA thing? by ukoda · · Score: 1

    I am in New Zealand and I have not seen age as an issue with the exception of pay expectations due to experience levels. I am 54 and no one asks if my knowledge is current, they just look at the work I have been doing recently. There is a shortage of skilled workers here so people are employed based on their skills/experience vs their pay expectations, age is not a consideration. My understanding is there is a skills shortage in the USA too so age bais seems counter productive. What about other countries? Maybe some Slashdot readers outside the USA and NZ would care to comment on what their country is like?

  61. Re: tl;dr by Anonymous Coward · · Score: 0

    Its a clever pun you in sensitive clods!

    Bare resemblance i.e. without resemblance...

  62. Old to life and new to programming is different by Anonymous Coward · · Score: 0

    Is it that the industry rejects older people with relevant experience? Or does it reject older people with the same lack of experience as the young, and the lack of growing up surrounded by technology in everything?

    It seems that a 20 year old just out of tech school has a better probability of successful growth into a skilled programmer than a 40 year old just out of tech school would. The 40 year old has already demonstrated that for 20 years programming as a career wasn't critically important to them, and probably not even interesting. Now they probably just want a better job and programming is what they found.

    I mean no criticism of older people getting into technology fields. I only mean to criticize those who fail to discern between a 40 year old with 20 years experience and one with zero.