Steve,
thanks for the wonderful account of history.
you were at the heart of it all, very kind of you to answer my Q.
You exactly described the problem at the divested AT&T:
monopolists who didn’t understand ‘marketing’,
especially not of commodity goods,
where 90% gross margins kill sales volumes & profits.
===================
I know I've read a comment about BTL's CSRC being "collegiate" even
"collaborative”.
Was that your experience?
In 1971, Jerry Weinberg published a book with “Egoless Programming”.
I wouldn’t phrase his concept that way, perhaps
“Code Quality comes First”
not just “performant” but well designed, well coded, well documented and easily
maintained.
I wrote & discarded two additional responses, included ‘below the fold’ if anyone
wants to rip into them :)
cheers
steve
On 5 Aug 2023, at 13:35, scj(a)yaccman.com wrote:
OK, you asked for it...
Let me first say that the management style in the Unix Research area was pragmatic and,
in many ways, ideal:
* We were told that the work we were doing this year
would probably take several years before it could be evaluated.
This freed us to take 3 months on a project, and, even if the project itself failed it
often inspired other people to "do it right”.
The management structure was very static -- organizations would remain unchanged in
mission for several years, with supportive managers up the line.
For example, the year I wrote Yacc (probably one of my
most productive years)
I got a rather blah review from my manager (his exact words were "Why would anyone
want to do that?").
The next year I got a massive raise, and the year after my Boss and I made multiple trips
to "sell" Unix to Bell Labs and AT&T organizations that could make use of
it.”
In the early 1980s, the V7 port of Unix, which I had
been working on for two years, was out and successful.
A new language, C++, was being developed and showed promise.
The Portable C Compiler had been ported to dozens of
different machines, and front ends for FORTRAN and other languages were becoming
available.
And AT&T decided to divest the "thriving" computer company to go out and
change the world.
I could see the technology development that was
possible and had always enjoyed delivering useful things to people who needed them.
So I offered to transfer to the Commercial arm as Department Head of a group of 30
people, growing over two years to nearly 60.
My supervisors were a great bunch, and when I told
them that, I was sure I could do the job.
However, though, they needed to teach me what was most important and how to do it right.
They were a little surprised by this, but soon we were
technically in sync.
The debugger was one piece of software that was a kluge, and we redefined the formats to
handle multiple languages and delivered C, Fortran, Ada, and Pascal compilers.
However, the business was being run by people who had
only worked for a monopoly, and they did not understand the first thing about marketing.
They didn't know what the languages were, who used them, and what they did, and, in
particular, we had an urgent need for a FORTRAN optimizer (because DEC's was
excellent).
My marketing support was one two-hour meeting every
other week.
It was always the last person hired into the marketing group and frequently had not even
heard of the languages we were delivering.
So we would talk about what we were doing in places like Usenix and Universities.
After four years, we had built all the promised languages except for the FORTRAN
optimizer, which was written and working but was held up for documentation.
The word had come down that all the documentation was
to be written in a small office in a small Southern state with no technical footprint
whatsoever.
The first draft was worse than you could possibly imagine.
Somehow, they had gotten the idea that an optimizer was a piece of hardware!
After quite a bit of heated discussion, they set out
to fix it.
But I had had it.
I'd done the job I came to do, doubled the size of the department, and much of the
software from that time is still alive and well today.
But a California headhunter made me an offer I couldn't refuse, and I didn't.
A couple of years in Silicon Valley taught me a lot about marketing -- I worked with some
superb folks and settled into my post-Bell career.
I also developed a deep interest in the craft of management and am co-authoring a book on
how you turn programmers, doctors, accountants, etc. into managers.
I have had many mistakes to learn from, as well as many successes.
===================
Source Code, especially when Portable, puts power in the hands of users/ consumers, taking
it away from Vendors exploiting need:
- Can be no "Vendor Lock-In", used extensively to 'mine' user
bases for revenue.
Economics has the notions of goods being excludable (owners/vendors
control who uses a good)
and rivalrous (only one customer can consume the good, thus
preventing others).
Source Code is 'non-excludable' - if you've got all the
code for something, an 'owner' can't stop you running it.
Neither is it 'rivalrous' - my using the Code doesn't stop
anyone else using it vs I eat an Apple, you can't eat it.
- Users can't be coerced into 'upgrades' or 'orphaned'
when products are dropped or a company goes away.
Having the source means a vendor never has to say 'sorry'.
maybe.
With the invention of Portable Systems and Apps, a whole new layer of the Computing
Industry appeared:
ISV's like Oracle (Indep Software Vendors)
They got to exploit Customers (denying customers access to own data),
while hardware vendors lost "use us or else" control.
I think I've identified three things that Doug Mcilroy's group did / knew, apart
from his 4 part "Unix Philosophy"
(of building reusable Tools - allowing not-as-bright ppl like me to "Stand on
the Shoulders of Giants")
A: Artefacts: Code, distribution, self-hosting tools & 'toolchain',
basic Unix Userland tools & online documentation
B: Process: Collegiate, Collaborate, 2-way Sharing of ideas/code. "All of Us
is better than any one of Us"
C: Software Economics: a) Bill Gates Law, “it’s about volume”: selling
'000's of units, cost/unit is v. low, sell millions: invoicing costs more than
code.
b) Code developers need to invent
reasonable ways to get paid for their work.
Android is given away, but Google
make money on the "Play Store"
Sometimes, there's no obvious
substitute to "Pay for Support / License" :(
[ the Economics rules are the same for Moore's Law. ]
[ Sell lots, drop prices and High Elasticity of Consumer Products guarantees
higher profits ]
Points where GNU and Unix differ fundamentally:
- for Unix, it's all about working Code: 'show me yours, don't just
criticise', Clean, high quality, 'minimal' code was normalised + some doco
- BTL researchers, mostly, weren't inflating their ego or looking for power.
They collaborated and shared ideas, improved others work.
- BTL understood 'things cost money' and their work was intended to lead
to 'products'.
They didn't agree with the 'management' Business Model, but
weren't "Freedom!" Zealots... Cheap & 'everywhere' is good
:)
- BTL Research chose "Talent" very well, including
"self-starters": Curious intellects able to take Initiative & challenge
norms.
- BTL researchers had the luxury of "all the time you need" to do
'step-wise refinement', rewrites, explore multiple alternatives, profile &
'tune',
and modify core concepts / tools / languages. Iterating their way to great
software.
Deadlines and Deliverables are central to Business Projects - but anathema
to Research, where you don't know the Question even.
===================
Gordon Bell notes that:
in 1984 there were 91 computer manufacturers in the USA,
in 1990, just four of them were left: IBM, HP, DEC and Data General
Within a decade, only IBM & HP were left, with IBM having declared
‘largest losses in US Corporate history’, twice, 1991 & 1992.
The MOS / CMOS microprocessors were speeding up at 60%/year,
multiples faster than ECL & TTL improved.
Bell saw this early.
Presume one of the reasons he left DEC in 1983.
Gordon Moore and his team solved a Profit Maximisation problem
with “Moore’s Law”.
Old School AT&T management didn’t understand either:
- they were competing in Commodity markets for hardware & software
- their timing on hardware could not have been worse.
The Intel juggernaut & CMOS & RISC vendors
were about to over-run ’traditional’ firms
Unix, C and the new toolchains created an entirely new
class of Systems & Software:
Portable
Which created the ISV’s (Indep. Software Vendors).
Oracle and SAP have done very, very well off the back
of your invention :-/
Hardware and Software are Symbiotic:
neither thrives without the other.
Customers buy Software and what it can do for them.
But they have to run it on hardware.
Portable code allowed selection of “Best Option”.
The Open Systems and Portability revolution,
begun at Bell Labs, took this to a whole new level.
Customers wanted & needed zero barriers
to entry (and exit) - their data and systems
had to ‘just run’…
Which made 1980’s computing competitive in a way
it had never been for the previous two decades.
Vendors still sought ways to “Lock in” customers,
but it wasn’t hardware anymore.
The original AT&T management who thought
they’d all get rich of Unix in 1984 can’t be blamed
for missing this trend.
It was entirely outside their experience.
I wonder what the Shareholders thought?
===================
--
Steve Jenkin, IT Systems and Design
0412 786 915 (+61 412 786 915)
PO Box 38, Kippax ACT 2615, AUSTRALIA
mailto:sjenkin@canb.auug.org.au
http://members.tip.net.au/~sjenkin