1. 23
  1.  

  2. 8

    Is there a place for someone “in tech”, old or young, who doesn’t actually care to be constantly learning about the latest and greatest passing fads? That is the first thought I get from reading this article.

    1. 6

      I would say that it’s better to try and determine what actually is a fad. If a new piece of tech is up and coming, instead of just trying to learn it or refusing, try to learn about who created it and why. Some new things are created by smart people facing hard problems who have come up with new ways to fix them that you may find insightful even if you don’t want to use the thing. And some new things are created just because a bored developer had some free time and built a new version of something.

      Of course, sometimes the toy project catches on for whatever reason and becomes something great, and sometimes things that were a great idea in some way make too many other bad decisions and fail.

      1. 7

        I agree.

        If something great comes into technology, it’s probably going to have a long research trail behind it. Haskell is almost 30 years old. Deep neural nets are not a new idea. You can look at the fundamentals, the early results, and the quality of people behind something and get a good sense of whether it’s a fad or not.

        The tricky and dangerous issue is not around worthless fads (like Scrum) but around yet-another-good-idea technologies. For example, many of the Apache projects are well-designed systems, but you have so many CTOs out there who want to involve a bunch of technological assets that are well made and probably pay off big for certain use cases, but that are ill-fit to the problem or unnecessary. This happens at all levels to a degree, whether it’s a CEO saying, “I think we need The Cloud, do we have the Cloud” or a CTO saying “I’ve heard about Kubernetes, let’s use it and figure out what it is (in that order)” or the engineer doing resume-driven development.

        The anti-R&D bias of modern software engineering makes this worse because errant technical choices become permanent. There’s nothing wrong with exploring new technologies. That’s a good thing. In an R&D environment, it’d be acceptable to say, “I looked into Mesos, and here are its benefits, and here’s why it doesn’t work for us”. However, because tech requires people to justify time in insultingly small increments, people have to stick to their early choices and haul in all sorts of technologies (a few no-brainer winners, a few fads and duds, and a large number that are good for specific use cases but may not be relevant) that become stuck there and put an unfunded mandate on the proles (proles here meaning engineers who don’t have tech-choosing authority).

        1. 4

          resume-driven development

          Ha, I like that one. I may have seen a few cases of that. I think that may explain 90% of NoSQL deployments.

          Ranting a bit because of a bug I just had to deal with where somebody used DynamoDB for no apparent reason for a database with dozens of rows: Then 2 years later, it turns out that schemas and joins and indexes and transactions that actually work correctly and foreign keys are actually important as bugs and slow queries come up and you’re scrambling for a fix for something that every RDBMS in the world fixed decades ago.

          1. 5

            I think that may explain 90% of NoSQL deployments

            Only 90%?

            The relational database seems to be a natural attractor. I’ve worked on two internal NoSQLs at companies. (One was beautiful but slow because I didn’t know what I was doing. The other was ugly, bulky, and took years for multiple people.) What I find on those types of projects is that people start asking for things in a somewhat predictable order. They want constraints and schemas. They want indexes. They want declarative syntax. They want transactions. At some point, it becomes clear that what they really want… is a relational database.

            I think that SQL’s somewhat ugly syntax, just because it’s old and clunky and was designed to be legible to business people, scares people off. Thus, people are drawn to newer products that have prettier trappings but are severely immature.

            Meanwhile, the things that people think are purple dog features like geographic indexes and full-text search… have been available in Postgres for a long time and are often comparable to the fancy NoSQLs.

      2. 4

        I purposefully stay away from fads. One benefit of decades of a wide variety of experience is the ability to relate and compare and discern fads from ideas and things that add value. I’ve had to work at that throughout my career. It seems to have become easier over the last 15 years.

        1. 3

          Definitely not web development and/or startups. I’m almost 23 and also getting tired of fad-chasing teams.

          1. 2

            Careful with this line of reasoning, because while it is helpful it can also be used to talk yourself into complacency.

            Sadly it is hard to tell ahead of time what is a fad and what is an innovation–my current metric is to follow the money.

            1. 3

              Everything is a fad, some fads are useful? The way I currently think about judging fads is that most fads are reinventions of older existing ideas, and those that are can be judged by:

              1. where has this existed before?
              2. was it useful the last time around?
              3. why did it not take over the world the previous time and does that reason still apply?

              For example, if I look at IaaS / carving individual physical machines up into many smaller logical machines, which I think is now firmly in the realm of “not just a fad, useful for a large and well understood set of applications”, the answers are:

              1. old mainframes had “rent a strongly isolated corner of the giant machine”
              2. yup, it’s one of those things that mainframe peeps looked down their noses at the rest of us great unwashed for not having it
              3. as far as I can tell, for a while, economics for many applications favoured running them on computers too small to meaningfully slice up between customers and cheap enough that you didn’t need to (“the rise of the killer micros!”) — perhaps largely because minicomputers and mainframes always had extortionately high profit margins
            2. 2

              Small to mid-sized firms that charge a bit extra for quality, maintainable software. On top of it, regular firms who advertise stuff small combinations of tech you saw at least 5 years ago. Worst case, the mainframe industry.

            3. 7

              Tech ageism tells three interlinked stories.

              The first story is a genuine lack of respect for, or even interest in, technical excellence. That’s old hat, though. It also doesn’t explain why older people are pushed out. If it were a passive lack of respect for experience and excellence, then they’d just not pay older people more, but they’d still hire them.

              The second is the obvious desire of tech executives to sweep lottery losers (who, by definition, are most of those who play) under the rug. Silicon Valley tech is a resource-extraction culture like the oil industry but the resource is the good will that middle-class Americans feel toward technology, left over from the moonshot era. It runs on dishonesty about (a) the social value of the work that it does, (b) the level of intellectual challenge that average engineers face, insofar as it is more of a challenge to deal with the boredom rather than creative reaches, © the career benefits accruing to non-founder positions, and (d) the probability of achieving substantial personal wealth. The older people who have figured out what’s going on must be pushed aside, lest they poison the young people.

              The third story is even more nefarious. Older people and women tend to have more organizational skills than young men. (I was a young man not long ago and I didn’t have my shit together.) This is why tech tries to drive them out. It’s scared shitless of unions or even professionalism (note that professional organizations are unions by another name). The purpose of kicking people out by 35 is to get rid of the people who have the historical perspective, maturity, and social skills necessary to be a threat to the tech barons' interests. Although it seems like we’re a far cry from unionization because of tech’s self-sabotaging individualistic culture, it’s worth noting that said culture was deliberately created (and that the ageism and sexism play into that as well) and not for programmers' benefit.

              1. 2

                My spell corrector changed Zuckerberg to Suckerfish. I’m not sure I need to say anything more regarding his comment in the article.

                As a 56 year old, I found the article makes several good points worth considering.

                1. [Comment removed by author]

                  1. 5

                    My first experience of ageism was at 28. To be fair, I look about 5-10 years older with a beard (and 5 years younger without) because it started going gray around 25. So I probably looked about 35, just as I look 40 when I wear a beard now.

                    I was turned away because “You’re very good at what you do” and “your compensation is beyond what we can afford”. We hadn’t discussed compensation yet. It may have been age or my apparent age. It may have also just been overqualification (a problem that I’d face a lot since then).

                    There’s definitely an ageism problem in this field, but there’s also an “overqualified” problem. The issue is that the job of regular corporate managers is to normalize results, not to achieve peak output, nurture talent, or invest in people. (In R&D environments, in government, and even to a degree in quant/trading, managers are seen as mentors. Not in software, though. In software, managers are expected to be performance cops who work for executives.) They’ve done pretty well, and the tech industry runs on mediocre talent and while we gripe about the code, the fact is that the market says (for now?) that what these companies are doing, works. We have a pyramidal industry, not just in terms of management hierarchies but also in terms of interesting work and autonomy, and therefore not a lot of good jobs for programmers.

                    1. 3

                      This is exactly what happens to women and minorities when trying to get hired for tech jobs, but it starts right out of school. I’m a hispanic female, but If I make it seem like I am a white man I get way more callbacks.