Hacker News new | ask | show | jobs
by effingwewt 1462 days ago
Still boggles my mind reading things like this- so cool to hear origin stories from the horse's mouth, so to speak. But if he hadn't been nice what would have happened?

I'm sad to imagine the future we are headed towards where only new technologies are worked on, just to get the patents and sit on them, while everything pre-existing is deprecated and abandoned. Microsoft's embrace extend extinguish works eerily well.

Do you think we are headed in a better direction now? Or is it simply different?

I remember working with ATT in the late 90's when it was ATT broadband. They were still using green screen computer terminal windows for everything and were trying to get a GUI off the ground. Everything was alt and tab to switch windows etc, no mouse support! Into the mid 2000's! This was done by getting regular employees to try and cobble something together. The miraculous thing was that they pulled it off. Just took them a few years longer than it should have. ATT 'corporate' was known for being every bit the tv trope of a big business back then.

I remember seeing early builds and laughing it was so bad. ATT in particular was very much stuck in its ways as a corporation and was not inclined to change even the most broken of things.

When it finally rolled out it was such a mess. All the IT people could do was wince. Everyone but the people who mattered saw it coming. They hired some firm to re-do it all. That happened who knows how many times within just a few years after that. Went from refusing to update to doing it constantly and always breaking things.

I must say it was pretty insane watching $12k long distance bills from calls to, for instance India, get re-rated to several dollars.

Wondered how accurate the accounting could possibly be with so many inaccurate and fungible dollar amounts floating around.

Edit to add- years later I was working as an HVAC service technician and had to do some work at cell phone towers, server locations (wasn't really server farms back then), and phone agent locations for all cell phone carriers in Albuquerque, NM.

It felt surreal to see bow fast and far the companies had gotten in only a few short years. Companies (especially ATT) that couldn't figure out basic things about computers were at the cutting edge of like all the technology they used. ACs were top of the line Lieberts, they had all proprietary software on everything. The super remote cell phone towers had AC, power, storage, and communications redundancy. Their security had been beefed up to top tier. Contractors all needed top tier security clearance now.

I don't know if it was the Kevin Mitnick generation of phone phreaks, hackers, and social engineering, or the world in general, or a change in CEO but it was kind of like watching the titanic become some super-advanced space-faring time-warping ship.

That had kinda given me hope that- damn, maybe we can enter the new age jumping in with both feet. As a kid it felt like progress had been so slow!

3 comments

> But if he hadn't been nice what would have happened?

I would have tried to negotiate a deal. If that failed, I would have abandoned making a C++ compiler.

Consider that at the time C++ and ObjectiveC were neck and neck, judging by the message volume on newnews. I rejected doing O-C because Stepstone demanded royalties for implementing it.

When Zortech C++ was released, an inexpensive native C++ compiler that was well-adapted to the 16 bit DOS model, C++ took off, and O-C sputtered and died. If AT&T had also demanded royalties, C++ would have been a failure, as cfront was not very practical.

90% of programming in those days was done on DOS, and Zortech C++ was top of the heap. If I may say so, Zortech C++ gave C++ the critical mass it needed to surge ahead.

My partner made the mistake of telling Eugene Wang of Borland how well ZTC++ was selling, and from the look on Eugene's face I knew we'd made a big mistake. Borland did an abrupt change in direction and went all in on Turbo C++. And the rest, as they say, is history. Microsoft also soon abandoned its object extensions to C and went with C++.

My graphics class instructor was Jack Bresenham. The class was given in Borland's Turbo Pascal, but I asked for permission to write my code in the then-new Turbo C++ (since Jack knew C, I was sure he'd allow it).

It came time to demo our work. Everyone else's code ran at least 5 times faster than mine. How could this be? Well, the Turbo C++ compiler was on the "immature" side at that time and produced really inefficient binaries. While the Borland Pascal compiler was mature and created code that ran really quite fast. Lesson learned. :)

That's what you get for not having the foresight to pick the compiler written by the guy who would go on to create C# and TypeScript [1].

[1] https://en.wikipedia.org/wiki/Anders_Hejlsberg

My C# story: We were a Visual Basic 6 shop, writing COM+ components being called by classic ASP pages. Microsoft .NET had just been announced and we spent some time doing an evaluation between it and Java (JSPs and Beans) - our brand new CTO was concerned about Microsoft technology being a monoculture and felt that Java would allow us to pick from several competing vendors so we could be using the best of breed[0].

We spent several months doing a technical comparison. And in the final meeting they went around the room getting opinions from everyone. All but one chose .NET (the dissenter was: "Whatever you think, boss"). The CTO said "That settles it. We're going with Java."[1]

So we spent hundreds of thousands on Oracle database licenses (because if you're changing languages, might as well change databases too, right?) and consultants to write a prototype. When they were done, it scaled to a grand total of two concurrent users on the fastest Compaq servers we had. While our existing VB code was serving about two hundred. Again, mature technology vs. immature technology.

I've been a big fan of C# since then. While I think the latest changes to the language and runtime are mostly eye candy (how hard is it to have a Main method, really?) there's some good stuff in there (I spent some time looking at System.Threading.Channels recently)

[0] The idea isn't bad, but what happens in practice is you get about 2 top-tier vendors and a bunch of also-rans.

[1] When choosing a technology stack, the CTO will pick what they want and everyone else's opinions are secondary. I think this must be a corollary to the "When a business moves, it's always closer to the CEO's house" rule.

Optimising compiler is not the same business as a language implementation :-) related but not the same at all
That compiler got template support very, very late, and conforming support much later than that.
Man, it really is history. Crazy to think had things been a little different how different would things be today. If kid me knew one day I'd run across this in an online forum I don't think I'd have believed it.

As others said- thanks for sharing the insights, made my week.

The refusal to open-license Minix is another one that has had major repercussions.
Yes, that was a giant mistake. But you have to keep in mind that there was already a deal with Prentice-Hall at that point and re-negotiating that to open sourcing it may well have been prohibitively costly for Tanenbaum / VU.
I don't even really think it was a mistake, it's just that it indirectly caused linux. Of course the Hurd being a Turd helped there, too.
It's the Butterfly Effect, for sure.
Thank you for giving these details. I feel like AI is the next step in some kind of implementation war after languages and then browsers.
Does C++ have much of an AI/ML implementation? I saw something recently about the language missing a good AI/ML framework since there was no way to do proper differentiation (might be the wrong term, sorry).
This doesn't make much sense, for two reasons: 1. Various ML libraries are implemented in C++ and have wrappers for respective interpreted languages. 2. Given higher-level languages can do auto-diff, c++ as a lower-level language is likely to be able to do it (and it can).

It just doesn't have as popular libraries such as python/R etc given the latter are far easier to work with + lower barriers for entry.

PyTorch is written in C++ and has a C++ API (although the most famous API is — as the name suggests — the Python one).
dlib is pretty good: http://dlib.net/
> Microsoft also soon abandoned its object extensions to C and went with C++.

Anyone have any info on what those abandoned Microsoft extensions were?

I heard it was called "C*". But I've never been able to find out more about it. Just that a Redmondian told me that Zortech's success caused them to abandon it. Probably it was in the very early stages.
One of my favorite tech books is 'The Idea Factory' which covers various periods of innovation at (AT&T) Bell Labs, including the creation of the first real cell phone technology.

When I first got Pacific Bell (now part of AT&T) DSL in California in the early 2000s, it was run by a seperate division of the company, "Emerging Products Division". i always assumed that was because the traditional side of PacBell just didn't get digital at all and the leadership kept them apart to avoid the innovator's dilemma.

> When I first got Pacific Bell (now part of AT&T) DSL in California in the early 2000s, it was run by a seperate division of the company, "Emerging Products Division". i always assumed that was because the traditional side of PacBell just didn't get digital at all and the leadership kept them apart to avoid the innovator's dilemma.

This technique had previously been used by IBM to the the PC out: they built a whole division from scratch in Boca Raton away from the IBM mother ship in NY

I definitely wish more recent tech had gone the standardized way similar to how IBM standardized computer building. We’re into four decades of being able to build PCs from customized/off the shelf parts because IBM didn’t go the “make it impossible”/proprietary route.
Actually that credit goes to COMPAQ. IBM used commodity parts to save money but it was COMPAQ who famously cloned the BIOS a and made IBM-alikes against IBM’s wishes.

But by then the cat was out of the bag: IBM tried to achieve a proprietary beachhead with Micro Channel (and OS/2) but that added value for IBM, not the customer.

Don't forget that Microsoft maintained momentum in this area. MS loved having open standards because it let MS pit OEMs against each other, causing hardware prices to drop while Windows license prices stayed the same.
This is why at one point all the big players in open source were hardware manufacturers. The software tries to commoditize the hardware, and the hardware tries to commoditize the software.
Definitely going to give that a read. Now that you both mention it, many BigCo's did have fragmented segments back then, were I suppose now everything is helmed by the head (Alphabet/Google).

Maybe it was some kind of turning point. Also about that time did CEO age drop through the floor? They went from all being ancient to mostly 40 and under somewhere along the line.

Thanks for the book suggestion!

What do you mean by "trying to get a GUI off the ground?" Was it that ATT corp IT was trying to deploy a windowing OS onto employees' computers? Or that they were developing a graphical OS a la Plan9 and failing?