The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: "Theodore Ts'o" <tytso@mit.edu>
To: Larry McVoy <lm@mcvoy.com>
Cc: tuhs@minnie.tuhs.org
Subject: Re: [TUHS] CMU Mach sources?
Date: Wed, 26 Jun 2019 11:11:43 -0400	[thread overview]
Message-ID: <20190626151143.GC3116@mit.edu> (raw)
In-Reply-To: <20190626025646.GR925@mcvoy.com>

On Tue, Jun 25, 2019 at 07:56:46PM -0700, Larry McVoy wrote:
> > It might not be, but it is definitely relevant to Unix.  Arguably the
> > drivers of Unix's development movement away from R&D-focused places and
> > toward product-oriented entities had at least a little to do with
> > Larry's topic of complaint.  Product managers gained the ammunition to
> > demand sustainable development practices, while R&D got a little leaner,
> > a little more focused on demonstrating the thesis, a little less focused
> > on who might need to run this code five years on...
> 
> In the good old days at Sun, we were very focussed on who would run
> this code for decades to come.  I think the engineers at Sun were very
> focussed on helping people, the reason we were there was because the
> work we did helped people.  The leverage was how much work we could
> do versus how much that helped people.  That is product oriented.
> 
> I think the reason that any engineer works is because they feel like
> their work helps someone.  As an engineer, I wanted to go to the place
> and do the work that had the best chance of helping someone.  All of
> Sun, when I was there, was like that.  We were there to help.  Yeah,
> of course, we wanted to make money, but all of us wanted to help.
> It's the dream, you do work, your work helps.

Motivations and incentives are a very big and important aspect which
is often overlooked in large scale projects.

For example, one of the really big problems with device drivers in the
embedded space is that the team that works on SOC version X gets
disbanded, and immediately reassigned to SOC verison X+1, sometimes
before product has even shipped.  Having one device driver that works
for SOC versions N, N+1, N+2, ... N+5, is really important from a
maintainability and being able to send out bug fixes for security
flaws.  However, it means that whenever you make changes, you need to
test on N different older versions.  And between the need to release
product quickly, and the fact that engineers are !@#@! expensive, and
the teams constantly getting formed and reformed, it's much easier to
do code reuse by copying, and so you have N different versions of a
device driver in a Board Support Package version of the Linux kernel
shipping by a SOC vendor.

Unfortunately, I have to disagree with Larry, there are many, many
engineers who works because they get a paycheck, and so they go home
at 5pm.  Some people might be free to improve their code on their own
time, or late at night, but corporation also preach "work/life
balance" --- and then don't fund time for making code long-term
maintainable or reducing tech debt.

Open source helps because embarassment can be a great motivator, but
more important are the fact that there are people who are empowered to
say "no" who don't work for the corporation who is trying to cut
corners, and who have a higher allegiance to the codebase than their
employer.

There is a similar related issue around publishing papers to document
great ideas.  This takes time away from product development, and it
used to be that Sun was really prolific at documenting their technical
innovations at conferences like Usenix.  Over time, the academic
traditions started dying off, and managers who came from that
tradition moved on, retired, or got promoted beyond the point where
they could encourage engineers to do that work.  And it wasn't just at
Sun; I was working at IBM when IBM decided to take away the (de
minimus) bonus for publishing papers at conferences.  But at the
Usenix board, I remember looking at a chart of the declining number of
ATC papers coming from industry over time.   And it was very depressing...

And the key for all of this is motivation and incentives, as any good
historian will tell you.  This is true whether probing the start of
wars, or the decline of a technical community or tradition.

    	   	       		     	     	 - Ted

  reply	other threads:[~2019-06-26 15:12 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-23  4:38 Chris Hanson
2019-06-23  5:15 ` Larry McVoy
2019-06-23  8:52   ` Andrew Warkentin
2019-06-23 13:39   ` Jon Forrest
2019-06-23 13:59     ` arnold
2019-06-23 14:03     ` Jason Stevens
2019-06-23  8:04 ` Jason Stevens
2019-06-23 14:54   ` Henry Bent
2019-06-23 21:52     ` Clem Cole
2019-06-25  0:06       ` Larry McVoy
2019-06-25  0:31         ` Theodore Ts'o
2019-06-25  0:45           ` Larry McVoy
2019-06-25  0:55             ` Kurt H Maier
2019-06-25  4:18               ` Larry McVoy
2019-06-26 23:19                 ` [TUHS] Craft vs Research (Re: " Bakul Shah
2019-06-27  0:16                   ` tuhs
2019-06-27 17:06                     ` Clem Cole
2019-06-25  1:00             ` [TUHS] " Richard Salz
2019-06-25  8:00               ` Kevin Bowling
2019-06-25 12:11                 ` Arthur Krewat
2019-06-25 12:17                   ` Arthur Krewat
2019-06-26  2:45               ` Kurt H Maier
2019-06-26  2:56                 ` Larry McVoy
2019-06-26 15:11                   ` Theodore Ts'o [this message]
2019-06-26 17:44                     ` Larry McVoy
2019-06-26 18:01                       ` arnold
2019-06-26 18:18                         ` Warner Losh
2019-06-26 19:22                       ` Chris Hanson
2019-06-26 19:32                         ` Ben Greenfield via TUHS
2019-06-26 20:21                           ` Larry McVoy
2019-06-27  0:22                             ` Chris Hanson
2019-06-27  1:02                               ` Larry McVoy
2019-06-27  1:26                                 ` Chris Hanson
2019-06-27  4:01                             ` Lyndon Nerenberg
2019-06-27 10:34                               ` Ben Greenfield via TUHS
2019-06-27 10:59                                 ` arnold
2019-06-27 11:13                                   ` Ben Greenfield via TUHS
2019-06-27 11:39                                     ` arnold
2019-06-27 14:58                                     ` Warner Losh
2019-06-27 17:25                                       ` Larry McVoy
2019-06-26 19:30                       ` Dennis Boone
2019-06-26 19:25                     ` Adam Thornton
2019-06-23  8:27 ` Kevin Bowling
2019-06-25  3:07 ` Gregg Levine
2019-06-25  8:15   ` Kevin Bowling
2019-06-25 18:18   ` Chris Hanson
2019-06-25 20:23     ` Gregg Levine
2019-06-26  1:04       ` Jason Stevens
2019-06-26  0:53     ` Jason Stevens
2019-06-25  7:49 ` Jason Stevens
2019-06-25  7:59   ` Andreas Grapentin
2019-06-23 22:08 Noel Chiappa
2019-06-23 23:54 ` Theodore Ts'o
2019-06-24 17:04   ` Jason Stevens
2019-07-01 13:20 Jason Stevens

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190626151143.GC3116@mit.edu \
    --to=tytso@mit.edu \
    --cc=lm@mcvoy.com \
    --cc=tuhs@minnie.tuhs.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).