1. 7
  1.  

  2. 5

    I don’t know if he is right but he has a point.

    I was thinking the other day that, IMO, the plight of a modern programmer is a shame. Back in the day the problem was generally that things didn’t exist so you had to make your own. Maybe it sucks, maybe it doesn’t, but there was a lot of room for innovation. Now, generally the problem is glueing together software of varying, usually low, quality. It’s extremely frowned upon to rewrite components that exist.

    I think that is a shame. I’ve seen good people leave multiple companies because they felt stifled. In the end, I guess it probably doesn’t matter for the most part. Bad software helps a company get bought just as easily, if not easier, than good quality software.

    But I think software engineering should be more than that.

    1. 5

      This paper was from 14 years ago. I have to wonder if (and how) things have changed. A few things off the top of my head.

      1. No longer a PC-only world. The explosion of mobile has given us a lot of newly popular architectures (even if most of them are named ARMvSomething)
      2. Virtualization, which is definitely in the domain of systems software, is a big area now. It was just getting started at the time.
      3. Multicore systems are now a thing. Taking advantage of them in software is not entirely solved yet.
      1. 3

        Virtualization, which is definitely in the domain of systems software, is a big area now. It was just getting started at the time.

        Interesting thing about this is people are already searching for ways to not use it (i.e. linux container craze). I think some of that is valid but I hope people become more willing to leave the comfort of their system for something more exotic that virtualization can give.

        1. 1

          Virtualization is particularly exciting to me. Academia is doing some interesting things here (e.g. MirageOS).

          Re: architecture, there are some neat things happening in heterogeneous computing and coprocessors, e.g. Xeon Phi, people thinking about how to make GPUs easier to use, etc.

          1. 1

            I was doing a bit of systems research on the side about 6 years ago. The broad topics of interest for then were things like concurrency, power consumption, virtualization, etc.

          2. 4

            This was written at the height of the bubble and published shortly before the zenith. The consumer internet and consumer computation are going to swamp everything else, systems software research is a little boat floating on that big ocean.

            How much does this have to do with systems research or the imminent demise of Bell Labs?

            If you need some systems research fixes:

            One of the great things about usenix is that all of the conference papers are freely downloadable.

            Funny how he laments a lack of cutting edge research when excellent stuff came out of Bell Labs just the year before with EclipseBSD. We are only now seeing this stuff getting popularized through Docker and before that OpenVZ.

            If anything I would lament as a researcher is the lack of uptake by practitioners. But researchers aren’t rewarded for having their ideas spread aside from journal citations.

            It is also slightly ironic, that as this paper was released, Google was just getting started.

            1. 4

              To me, “operating system as a library” is an exciting, relevant direction of systems software research: http://arrakis.cs.washington.edu/ http://openmirage.org/ http://lsub.org/ls/clive.html

              1. 4

                Add OSv to that list.

                1. 1

                  Thank you! That looks great.