strangest systems I've sent email from

Liam Proven lproven at gmail.com
Thu Apr 28 08:38:35 CDT 2016


On 27 April 2016 at 20:15, Swift Griggs <swiftgriggs at gmail.com> wrote:
> On Wed, 27 Apr 2016, Liam Proven wrote:
>> I wish to apologise for this. It was unjustified and unfair, and
>> unjustly ad-hom as well.
>
> Well, that's mighty big of you Liam.

You're welcome, Swift. I'll try to learn from this.

> You are clearly a brilliant guy with
> a storied career and bristling with skills I only wish I had.

I don't know about that! I'm "only" 48 and my career was always more
in the sense of a verb than a noun. ;-)

I just have dabbled in a lot more systems and platforms than most. I
never specialised.

That came back to bite me in the fundament by my 40s. :-(

> As I read
> through your post here, I also got a lot more grit and understanding of
> why folks get as irritated as they do when I associate my bumbling college
> profs with something like LISP. It's silly of me to associate a language
> with a group of people. It's human, but still not very bright of me. LISP
> certainly has a lot of smart people advocating for it. It seems to
> represent a lost ideal or paradigm to them and it's I can see it's nasty
> of me to step on that, even if that's not my direct design to hurt them.

I guess I have picked up some of the esteem it's held in by contact.

This essay made the argument originally, I think:

http://www.paulgraham.com/avg.html

If you go and survey people with broad comparative knowledge, everyone
looks down on some languages and up to others.

https://www.youtube.com/watch?v=4VxkltwS9g0

But whereas you can find fans of all sorts of languages who look up to
Lisp, Lispers don't look up to anyone. It seems to be the peak.

I don't program in anything modern and haven't coded for 25y or so. I
don't do Lisp or any FP language. But I've read a lot /about/ Lisp and
it seems to be something special and unique.

>> My contention is that a large part of the reason that we have the crappy
>> computers that we do today [...] is not technical, nor even primarily
>> commercial or due to business pressures, but rather, it's cultural.
>
> I share your lament.
>
>> the culture was that Real Men programmed in assembler and the main
>> battle was Z80 versus 6502, with a few weirdos saying that 6809 was
>> better than either.
>
> One thing that also keeps jumping out at me over and over is how I meet
> people with the same kind of experiences you describe and they are often
> much more skilled and better critical thinkers than folks I know from my
> generation or younger. Don't get me wrong, there are plenty of young
> shining stars, but they just don't seem to occur with the same frequency.
> I have surmised that I am standing on the shoulders of giants going all
> the way back to folks like Grace Hopper, and that it's more and more
> difficult to grow in this field in the same way as the "old timers" (which
> for me is anyone who worked in the industry before 1989, I realize it's
> all relative).

There seems to be part of that. As ESR said, if one learns Lisp, /even
if one never uses it/ it makes one a better programmer. I cannot
verify this myself but the excitement of the Java folk getting into
Clojure now seems to bear it out to some degree.

> All "you guys" seemed to start out with math or EE
> background and filling in the CS parts seems to be trivial for you. I look
> up to your generation, believe it or not.

I was an undergrad biologist. :-) I've never studied CS.

But I think you have a point.

I've long felt that universities should teach /methods/ not skills.
They aren't for vocational training -- that's for polytechnics,
colleges and trainee jobs. But that's another thing we've screwed up
in recent decades: education.


>> The labs had Acorn BBC Micros in -- solid machines, *the* best 8-bit
>> BASIC ever,
>
> I'm a bit sad those never caught on in the states. They are neat machines.

NIH syndrome?

>> But a new wave was coming. MS-DOS was already huge and the Mac was
>> growing strongly. Windows was on v2 and was a toy, but Unix was coming
>
> For me, as a teen in the 1990s. I associated Unix with scientists,
> engineers, and "thinkers" in general. I'd walk into somewhere to fix a
> monitor or printer (I was a bench tech for a while) and the Unix guys
> wouldn't want me near their stuff. They could fix it themselves and they
> didn't want some punk kid who knew MSDOS to touch them. Meanwhile all the
> people I didn't respect (PHBs and other business-aligned folks) used beige
> boxes running DOS. I knew I was in the wrong place.

Yep, me too. I only learned it because it was the best choice for
multiuser accountancy systems in the late '80s. That is the one
function we sold it for. Some of the boxes replaced Concurrent CP/\M
systems with much more primitive DOS-based accountancy apps.

>> A new belief started to spread: that if you used C, you could get
>> near-assembler performance without the pain, and the code could be
>> ported between machines. DOS and Mac apps started to be written (or
>> rewritten) in C, and some were even ported to Xenix.
>
> Wasn't that kind of true, though? I've heard it said "C is nothing more
> than a macro assembler". I'm a C programmer as you might expect. I'd
> heartily agree. However, being a C programmer I also see C's warts. It's
> not big on syntactic sugar, but it does get the job done in a
> straightforward and pragmatic way.

Ah but that is the exact thing. Yes, it does seem to deliver on that.
But there is a very very high price to pay for it, and that's almost
never mentioned, never discussed.

> I do plenty of OO in other languages,
> but I still prefer procedural & structured coding techniques most of the
> time (as long as it effectively solves the problems). However, I'd reach
> for an OO language or heavily abuse callbacks in C if I needed to do a
> simulation.

You're clearly a far more advanced programmer than I am, then. I never
mastered OO at all.

>> [...] Apple merged with NeXT and switched to NeXTstep.
>
> I still like to show non-coders how all these OSX library calls often
> *still* start with "ns" (next step).

Yup.

Some describe it as a stealth takeover of *Apple* by NeXT. A lot of
the Apple tech & methods (and people) were tossed out, replaced by
NeXT stuff.


>> Now, Windows is evolving to be more and more Unix-like, with GUI-less
>> versions, clean(ish) separation between GUI and console apps, a new rich
>> programmable shell, and so on.
>
> It reminds me of the famous statement "Those who do not learn from Unix
> are doomed to re-invent it... poorly."

Yep, definitely.

Henry Spencer, I believe.

> Windows 10 inclusion of bash seems
> to me to be a white flag on the part of Microsoft saying "You guys were
> right." Especially after pushing Powershell so hard. Of course, I'm sure
> the devils advocate would say "It's just a greater diversity in a massive
> constellation of functionality in Windows"

Yup, to both.

>> While the Mac is now a Unix box, albeit a weird one.
>
> A very weird one. Most of my Unix zealot friends use Macs now. I still use
> the console :-) If I must, then I'll use fluxbox in X11 on top of NetBSD.

Ubuntu laptops, Mac desktop, for me. :)


>> Commercial Unix continues to wither away. OpenVMS might make a modest
>> comeback.
>
> Go VMS. I hope VSI can pull it off. I also hope they change their
> licensing terms to be less draconian. IMHO, that's what hurt them so badly
> in the 90s after Ken Olsen left. They wanted to LMF license every little
> bit of Tru64 and VMS. There is the hobbyist program, yes. However, you
> don't need to mess with that to download Linux, and that's still an
> accessibility gap.

Agreed.

>> IBM has successfully killed off several efforts to do this for z Series.
>
> In order to prevent your goose that laid the golden egg from losing her
> value (as a dead or emulated goose), you need to kill the goose hunters.
> :-)

I guess so. But I'm not sure that total extermination was the only way.

>> So now, it's Unix except for the single remaining mainstream proprietary
>> system: Windows. Unix today means Linux, while the weirdoes use FreeBSD.
>> Everything else seems to be more or less a rounding error.
>
> Color me weirdo and rounding error since I mainly use NetBSD. It doesn't
> change the truth of your statement, though. :-)

:-)

>> Even the safer ones run on a basis of C
>
> IMHO, C is the most portable language in the world, not Java. IIRC, many
> java runtimes are still written in C. Anytime someone makes a new
> processor one of the first things they do is port a C compiler, making a
> lot more stuff possible.

At a very low-level, rudimentary form of portability, yes.

>> Perl has abandoned its base, planned to move onto a VM, then the VM went
>> wrong, and now has a new VM and to general amazement and lack of
>> interest, Perl 6 is finally here.
>
> I started learning and using Perl until all this weirdness happened and
> they bolted on OO etc... I'm not anti OO but it was all just too much more
> me. I bolted to Ruby and Lua. No disrespect to the Perl Monks, I just
> couldn't hang anymore.

Never got over the line noise aspect.

>> So they still have C like holes and there are frequent patches and
>> updates to try to make them able to retain some water for a short time,
>> while the "cyber criminals" make hundreds of millions.
>
> I mostly agree, but I would like to say a few things about security issues
> and C.
>
> * Buffer overflows and string format exploits are the biggest
>   side-effects, security wise. They aren't nearly as common as they were.
>   There is greater awareness among programmers, compilers, and scanning
>   tools now (valgrind, rats, etc). Plus the exploit writers have found
>   more fertile ground in things like SQL injection and CGI interfaces.

Both good points, but the thing is, all that stuff shouldn't be
necessary. Safer languages can be fast, predictable, suitable for
low-level systems work as well as app work. Rich OSes have been built
on Oberon, Lisp and other languages.

I think the main reason for C's success is culture, not any technical
virtue. It's like Paris Hilton or the Kardashians -- famous for being
famous. C is popular because C is popular.

> * They are pretty easy to prevent most of the time, especially if you care
>   enough to check or use something like stack-smashing prevention in your
>   compiler. Also thinks like OS heap randomization has made exploits much
>   harder.


True, but again, *you shouldn't have to*. It means programmer effort,
brain power, is being wasted on thinking about being safe instead of
spent on writing better programs.

> * Yes, they still happen, and still *can* happen, so I don't dispute that.
>
>> Anything else is "uncommercial" or "not viable for real world use".
>
> I think this is some phrase I often throw around a little too cavalier.

It's not just you.

> Just because a language isn't popular doesn't mean I can't learn something
> from it.
>
>> Borland totally dropped the ball and lost a nice little earner in
>> Delphi, but it continues as Free Pascal and so on.
>
> It boggles me, actually.

Yeah, me too.

But Delphi was a business tool, mostly internal or in small
specialised commercial products. It didn't get any academic mindshare,
so it didn't get used in OSes -- it was of course proprietary -- and
so it never got taken seriously by the big boys.

Sun did the right thing open-sourcing Java. Borland should have done the same.

> There were some awesome Delphi coders out there.
> I thought they'd never be derailed, because they were actually *very*
> effective coders I'd seen really powering certain businesses.

Yup.

 > Did Borland
> hork things up or what ?

One of the biggest fsck-ups in the history of the PC industry, and
possibly the single biggest one in programming language history. And
barely reported.

>> Apple goes its own way, but has forgotten the truly innovative projects
>> it had pre-NeXT, such as Dylan.
>
> And amazing things like Amoeba, Sprite, MOSIX and others have also sort of
> dried up and died on the vine. There were some great ideas there.

Absolutely, yes.

>> The Lisp Machines and Smalltalk boxes lost the workstation war. Unix
>> won, and as history is written by the victors, now the alternatives are
>> forgotten or dismissed as weird kooky toys of no serious merit.
>
> I also get that things are lost in this type of "war" the merits and
> interesting side of LISP machines etc.. It's not a good thing.

Exactly.

>> CP/M evolved into a multiuser multitasking 386 OS that could run
>> multiple MS-DOS apps on terminals, but it died.
>
> Hmm, was that before or after things like Desqview came along? I'd
> probably guess that's why or just the momentum DOS had for a while.

Around the same time.

I don't remember the exact timeline -- it was fading away just as I
entered the industry.

My impression is that the postcard-length summary is:

[Before my time]
* CP/M lost out to MS-DOS on the PC.
* So DR reconsidered, rolled some MP/M tech into it, and launched
Concurrent CP/M. CCP/M was a multitasking multiuser CP/M.
* This did OK but never had many apps. So, they took some tech from
DOS Plus and made it able to run DOS apps: Concurrent DOS.
* Now it offered limited multitasking of DOS apps, but only "clean"
ones, in text mode only.
* But now PC LANs were becoming competitive, so CDOS got enhanced into
a 386-native version, using the 386's 86VM tech.
This meant that CDOS could run "unruly" DOS apps, including graphics.
[This is about when I came in.]
* However CDOS only offered limited driver support and couldn't use
MS-DOS drivers, networking etc. LAN workstations could. Also, altho'
CDOS 386 could handle graphics terminals, they were expensive, rare,
limited, and the performance wasn't great.
[Now we're around the time of the lacklustre MS-DOS 4.0 and Windows 3]
* So DR turned its efforts into making a single-tasking "better DOS
than DOS" -- DR-DOS
* DR-DOS 3.41 was out there, a slightly better DOS than MS-DOS 3.3,
with large disk support.
* DR opened up the _retail_ DOS market with DR-DOS 5, with memory
management, a MOVE command, etc.
* Some DR-DOS tech was merged into CDOS, which was then sold off -- it
survived as Concurrent Controls & Datapac's Multiuser DOS & IMS
Real32.
* MS rejoined with MS-DOS 5.
* Novell bought DR; DR-DOS 6 had disk compression
* MS-DOS 6 copied that (literally -- it was stolen from STAC's Stacker)
* DR-DOS 7 added peer-to-peer networking
However, by then, Windows for Workgroups had MS-standard P2P, and
DR-DOS 7's Netware-style P2P was too late.
* Then MS killed the DOS market by building MS-DOS 7 in  as part of Windows 95.

>> So the hacked-together GUI for DOS got re-invigorated with an injection
>> of OS/2 code, as Windows 3. That took over the world.
>
> Which was hard to believe for me, too. It must have been a cost thing.
> Folks could have had an Amiga, ST, Acorn, Mac, OS/2 (depending on how far
> back), a low-end Unix box, etc.. However, I guess ultimately people wanted
> whatever they could go to their local software shop and get software for.
> It still is a mystery to me why DOS was so popular.

Critical mass of apps; cheap clone hardware.

OS/2 1 didn't support DOS apps well enough -- a later comment explains
why well. OS/2 2 did but was too late.

Win3 was technically /very/ clever and supported DOS apps *and drivers*.

>> But the marketing men got to it and ruined its security and elegance, to
>> produce the lipstick-and-high-heels Windows XP. That version, insecure
>> and flakey with its terrible bodged-in browser, that, of course, was the
>> one that sold.
>
> I know, man, there is no accounting for taste.

I never even liked the looks. W2K was the last good version for me. :-(
>
>> Linux got nowhere until it copied the XP model.
>
> Now, as you also allude to, they have started to copy Windows. Linus seems
> to have shifted his attitudes greatly. Check out what he says about GGI
> then what he says about Systemd:
>
> From:
> http://marc.info/?l=linux-kernel&m=89089527200744&w=2
>
> "I don't see the world in black-and-white.  I don't actually like
>    Linux-only features unless they have a good reason for them, and I
>    really like Linux to be a "standard" system " -Linus 1998
>
> " I'm distrustful of projects that do not have well-defined goals, and
>    well-defined interfaces.  They tend to bloat and do "everything" over
>    time.  This is what gives us horrors like GNU emacs and Mach: they
>    don't try to do one thing well, they try to do _everything_ based on
>    some loose principle [..]" -Linus 1998
>
> Now fast forward to 2015:
>
> "I have to say, I don't really get the hatred of systemd. I think it
> improves a lot on the state of init, and no, I don't see myself getting
> into that whole area." -Linus 2015
>
> I'll leave the readers to decide if that's hyperbole or there is something
> real there. It'll probably split right down the fracture point with
> systemd haters vs advocates, I suppose. It still seems pretty emblematic
> to me.

Good point, well made, and food for thought. Thanks!

>> [...] plumbing, huge complex systems, but it looks and works kinda like
>> Windows and a Mac now so it looks like them and people use it.
>
> My theory is that once folks woke up to the potential the Internet had for
> improving their real lives, they didn't care how much they polluted the
> computing world to get access to that power, and they weren't about to
> abide having to learn anything new if they didn't have to.

True. OTOH a good enough rich WWW client doesn't need to be either
Windows or Unix.

>> Android looks kinda like iOS and people use it in their billions.
>> Newton? Forgotten. No, people have Unix in their pocket, only it's a
>> bloated successor of Unix.
>
> My personal opinion is that though those devices might give devs a taste
> of *some* of the power of Unix, none of those devices show the *user* any
> of the so-called "Unix philosophy" (KISS, everything is a file, etc..).
> What's also sad is that those users don't give a hoot. However, I'm not
> really surprised. I grew up in an era when computers were NOT cool for
> kids. If you liked them or wanted to play games on a computer, that made
> you a "nerd" or "geek" when those words were purely pejorative. Now those
> same people can't look up from their phones long enough to keep from
> falling down stairs, walking in front of subway trains, or uhh.... living.

It's odd, isn't it?

> I still carry a Symbian phone since I find both Android and iOS so
> invasive and annoying. It's a strange shake up on the world I grew up in.

Oh, nice! Which one?

>> The efforts to fix and improve Unix -- Plan 9, Inferno -- forgotten.
>
> Plan 9 is still being (very slowly) developed. Ken is still involved last
> I heard.

It is, true, but it's a sideline now. And the steps made by Inferno
seem to have had even less impact. I'd like to see the 2 merged back
into 1.

>> We have less and less choice, made from worse parts on worse foundations
>> -- but it's colourful and shiny and the world loves it. That makes me
>> despair.
>
> Right there with you, Liam. Someone posted today about the good parts of
> the Internet that we got with the deal. Massive communication and
> documentation are truly positive side effects for the most part. However,
> I suppose I have mixed feelings, nonetheless.

I seem to be exceptionally gloomy. Few seem to share it. I turned my
comment into a blog post too...

http://liam-on-linux.livejournal.com/48669.html

... That is getting some very harsh feedback both on FB and on LJ itself.

>> We have poor-quality tools, built on poorly-designed OSes, running on
>> poorly-designed chips.
>
> Yes, and even though there is *more* overall documentation on the
> Internet, the docs you get with hardware and tools are nowhere near as
> good as they were in the 80s AFAIK. Nobody ships manuals with source code
> and schematics. The last I saw of that was BeOS and The Be Book.

I dunno... Web fora and Stack Overflow aren't documentation per se. :-/

I loved BeOS but never saw the Be Book. :-(

>> Occasionally someone comes along and points this out and shows a better
>> way -- such as Curtis Yarvin's Urbit. Lisp Machines re-imagined for the
>> 21st century, based on top of modern machines. But nobody gets it, and
>> its programmer has some unpleasant and unpalatable ideas, so it's
>> doomed.
>
> Well, when it comes to that front, I've been in this business for about 20
> years now, and I don't understand those efforts.

It might be because it's sort of orthogonal to, well, the PC industry
since the '386, maybe before.

Looked at from the POV of study of Lisp machines and so on, it makes
perfect sense -- but Yarvin has a political/economic agenda. That
obfuscates it. OTOH it also gives it a selling point.

>> And the kids who grew up after C won the battle deride the former
>> glories, the near-forgotten brilliance that we have lost.
>
> I see that and I can better appreciate where you are coming from when you
> couch it this way. Only the good die young. "Some will rise by sin and
> some by virtue fall." -Shakespear

Nice!

>> I apologise unreservedly for my intemperance. I just wanted to try to
>> explain why I did it.
>
> I completely understand. I am sorry for associating LISP with some crappy
> experiences I had in school 20 years ago. You and other folks come from a
> noble tradition. It was wrong of me to scorn that, even for an unrelated
> reason.

Thanks for that.

I don't really come from that tradition, I think. I'm just a student
of it, trying to understand what, why, and how it all disappeared.


-- 
Liam Proven • Profile: http://lproven.livejournal.com/profile
Email: lproven at cix.co.uk • GMail/G+/Twitter/Flickr/Facebook: lproven
MSN: lproven at hotmail.com • Skype/AIM/Yahoo/LinkedIn: liamproven
Cell/Mobiles: +44 7939-087884 (UK) • +420 702 829 053 (ČR)


More information about the cctalk mailing list