Hacker News new | past | comments | ask | show | jobs | submit login
How Software Companies Die (1995) (gist.github.com)
212 points by satvikpendem on April 2, 2023 | hide | past | favorite | 49 comments



This was originally published in `Windows Sources: The Magazine for Windows Experts, March 1995` as far as I know.

It's been discussed on Hackernews a few times over the years:

https://news.ycombinator.com/item?id=1866486

https://news.ycombinator.com/item?id=6818556

https://news.ycombinator.com/item?id=552821

https://news.ycombinator.com/item?id=5372726

Personally, I think the broader problem is that most software engineers, at least the ones I've worked with, have a flawed model in their head for how the business they are employed by works.

Partially this is why startups are attractive to some because you can actually connect the work you do day to day with the company's overall success. Even then it doesn't take much scale (something on the order of 1 level of hierarchy) before people lose touch with the dynamics of the business.

There are hard realities like the fact that the best technical product doesn't always win in the marketplace. That many times it's the wrong business decision to invest in innovation. That most programmer's jobs aren't to write code but to solve problems (and software just happens to be pretty good at doing that).

Marketers take over companies when you're selling a product that has become commoditized because brand is the thing that adds value to the company at that point. If sales is the thing that drives profit, sales will eventually run the company. If you want to work for a company that is run by engineers find one where the vast majority of the company's value is tied to the intellectual property their software source code represents.


The hive analogy is quite apt.

Hives operate very differently now than they did in the 90s, but what this gets right is that the flickering light the coders are attracted to is some kind of engineering grace, usually a thought leader or software guru or just a really nice person who is also incredibly hard working, deeply skilled in several domains including pure computer science, and a banger coder.

Other engineers get jazzed in such a situation and the music flows. But 10 years seems to be about the max you can keep an original hive together.


Every job is about solving problems. A programmer solves problems via programming.

That’s what programming means. Telling the computer what to do in a language it understands. We are typically well practiced at abstract, logical problem solving, because code has logical constructs. But if you are not writing code, you are not programming.

Now a program is an interface between some practical need and the computer. Of course, one needs to understand and know about both what one requires and what one provides. But there is no fundamental difference to any other craft in that regard.


Programming is a useful tool, but leaning on it in all situations is like a carpenter with only a hammer. There are many times when "more programming" is a possible but not the best solution to the situation at hand. Good and/or experienced programmers know when this is the case and reach for other tools as appropriate.

As a very simple example, perhaps integrating with the API provided by another team in the company is planned to take several weeks because it does not provide the "ideal" endpoint and you'd need to stitch together information from several responses. In some cases, simply going to the other team and asking if they can add another endpoint to expose the information you need will be a much quicker solution than doing all the work client-side. In my experience many junior devs would rather spend the weeks coding than the 20 minutes talking to another person.


Heya, I found this comment deeply insightful, thank you.

Could I ask you to please unpack this line a bit more:

> If sales is the thing that drives profit

What else could drive profit, if not sales?

> the company's value is tied to the intellectual property

In the case where unique IP is the core value proposition (the strategic "moat" if you will), isn't sales still what drives profit?

Put another way, I love what your comment implies, and so I'm trying to imagine a business that generates good profit that doesn't rely on sales as much, but I'm struggling.

Thanks! ^_^


I think that the majority of companies have differentiators that aren't sales.

First consider any company that's selling a commodity. Exxon's oil is the same as everyone else. I'm sure they might have sales in some capacity but they don't really need to convince someone on the fence to buy oil and they don't get a lot of value out of a slightly better negotiated price for their oil since again, if they try to charge more than someone else that customer will just go buy someone else's oil. So Exxon is generally speaking run by engineers because better more efficient engineering is the main way the company can derive more value than they do now.

Now consider Coca Cola. For the most part Pepsi is just as good as Coke. Maybe you're really picky about one vs the other but truth be told most people don't care and the market is wide open for someone else to make a similar soda. So what is their "moat"? Their brand, maybe you could say their supply chains, which are world class. So Coca Cola isn't run by sales people but it is run by marketing and operations people because that's what drives their continued profit.

What about Walmart? Again I'm sure Walmart does have salespeople working for them in some capacity but I'd say Walmart's main value driver is their ability to curate and acquire inventory. And sure enough at Walmart (and other retail stores) it's the Merchandisers and Buyers that have all the real power. It's not the "sales associates" running Walmart.

Among the Fortune 500 you find very few companies run by salespeople.


Say, governmental contracts can be very different from commercial sales.

Venture capital-backed companies used to often not care about operational profits, but about growth and market penetration, and the repay event was the moment when a large incumbent decided to buy the challenger startup. They do so to either add to their portfolio and acquire technology and talent, or even to quash the competitor which distracts their user base. Nevertheless, it's might be profitable to be bought and disbanded.

I suspect that sometimes profit is not even a motive (non-profit orgs, etc).


Thanks, this was very useful!

I imagine government contract suppliers, VC-funded startups, and Non-profit orgs - together - make up a decent chunk of all software companies.

I'm curious what you'd say about all the remaining software companies, namely the ones operating in a "traditional" sense (I can't think of a better word, but I suspect you know what I mean... your typical B2C or B2B for-profit bootstrapped business).

Is the latter group of companies' profit driven by sales and sales alone? Or is there something else that a business owner could focus on to drive profit?

As you can tell I'm still trying to unpack the OP's point above ^_^


Engineering happiness is directly tied to product quality. Product quality is directly tied to brand value. Brand value is directly tied to sales. It takes years for changes to promulgate through the chain, but they always do.

That being said, all businesses outside of banks have already taken much of O.S. Card's advice here. Programmers used to be forced into suits to bear the 9 to 5. Now, business casual gets more casual the more techy the company is. Flex time is now the norm. People complain about morning standups and Jira because they aren't doing four hours of waterfall strategy meetings everyday.


"It consumes you, body and soul. When you're caught up in it, nothing else matters. When you emerge into daylight, you might well discover that you're a hundred pounds overweight, your underwear is older than the average first grader, and judging from the number of pizza boxes lying around, it must be spring already."

This rings so true for me. So true. Although myself is not exactly a professional programmer (I don't consider writing infra as code and Airflow as code strictly professional programming even though they are) this hits me like a train.


I remember reading this quote in the original print magazine when I was a teenager living in rural Nebraska. For some reason a Safeway in the nearest town had a decent selection of magazines including Dr Dobbs Journal and MSJ. I cut out that particular quote and pasted it next to my monitor, because I was so deeply struck by the fact that there was actually another person in the world who felt the way did about programming. It’s quite the wave of nostalgia reading it again now in my 40s. How little has changed…


Yeah exactly. Nothing really changed. The magazines either closed door or turned to online but we get new magazines too, such as PoC|GTFO and others.

People of like mind still burn candles to navigate the mazes that they out themselves into. Even at the age of 40 and far from my prime, I'd still burn all nighters to solve something. The only difference is that I usually quit at 4 or 5 and it takes a couple of days to recover.


Same. If you take out the “professional programmer” part it makes it sound like we’re recovering drug addicts. Is there something unique about this discipline that requires this borderline unhealthy level of focus and attention, or does it attract people with predispositions to work in this way to begin with?


Does Orson Scott Card know anything about software development? It’s a legitimate question, I’m not trying to sound dismissive.


It's a rewording of a passage from, I believe, Ender's Game (maybe Speaker for the Dead) with software instead of Players of the Game. It works surprisingly well, though I think I may not be the target audience, having never worked at a startup.


Is it? It doesn't ring a bell at all (or really fit with the topic of either one of those books) and I don't see that mentioned in the previous discussion links posted above on a quick search; everything there was about society/politics/military more than business.

Those discussions include this comment which says he worked on video games in the 80s (dialogue, AFAICT, and story; not code), which is probably close enough experience: https://news.ycombinator.com/item?id=6818816


Some of his later work may sound similar, but the original cited source is "Windows Sources: The Magazine for Windows Experts, March 1995" as evidenced by https://homepages.uc.edu/~thomam/Articles/HowSoftwareCompani...


Ah. That makes sense


I don't know the answer to that question, but Card was an editor for Compute! books for nine months[1](video interview), and in that role wrote a two-part series about computer game development 40 years ago, in issues 38[2] and 39[3] of Compute! magazine.

[1] https://archive.org/details/orson-scott-card

[2] https://archive.org/details/1983-07-compute-magazine/page/n3...

[3] https://archive.org/details/1983-08-compute-magazine/page/n7...


His book Lost Boys (which is supposedly semi-autobiographical) is told from the perspective a mormon game developer.

I'm convinced he's dabbled in programming, even though it's not his vocation.


It does seem to be a very 80-90's view of the world.


Probably as correct then as it is now.


Could be some April Fools leftovers.


I can relate to the frustrations expressed in this.

But I have never seen a software company die because of these things. Under performing just doesn't matter for most companies. Some how they just keep going along. I suspect real work and innovation that matters happens early and then its just printing money and maintaining while we lie to our selves the work means something


>But I have never seen a software company die because of these things.

Now, no. I mean you have to have a good product, but once you've gained traction and market share, it can go to shit because you've got lock-in. In 1995, there were a lot of small software companies. Novell ruled networking. Now it's mainly mega-companies. The trick now is if you are a mega-company, you have to buy out the competition. Most startup exit strategies is to get acquired.


It's not death as much as much as moving to assisted living. Examples: Symantec, CA, and McAfee.


IMHO the biggest loss was Borland.

They had some quality products, innovated and supported software developers. Not every product was a winner, but there were some great dev tools (c++ compiler, Delphi, Pascal).

But in the end I actually have no idea what went wrong and how they disappeared so quickly.


Sometime after Borland died as a real company, but before the corpse stopped shambling about, I had a buddy working there. They did a death march push to get the next version of Delphi out the door, 3 months and more of that poor person being at their desk 12-20hr a day. Then they fired the bulk of the team days after they shipped, the week before Christmas.

Antics like that helped speed their demise.


That's a name I have not heard in a while, but Borland C++ was a great tool back in the day. So was their database product, which I forget the name. Then it was like in 1 night Borland was gone. I think MS had something to do it. It just happened so fast.


That db product was Paradox I believe. Yes Microsoft had a lot to do with it. Microsoft in its embrace and extend strategy would keep adding / mucking around with the C/C++ compilers by introducing proprietary extensions that always kept Borland one step behind. Delphi was the gem in Borland's development tool stack. Made Microsoft's Visual Basic look like a toy. It was so far ahead of just about every desktop development platform of the time.

How did Microsoft handle that threat? They stole the lead developer of the Delphi compiler Anders Hejlsberg - who joined Microsoft and is the chief architect of .Net framework. In fact - if a lot of .Net concepts are direct implementations of Delphi and the VCL (properties, etc.)

Yep, Microsoft stole the one certified genius coder right from Borland. And the rest is history.


> Anders Hejlsberg

He left Borland and joined Microsoft in 1996. The year before, Philippe Kahn resigned as chairman, CEO and president, after 12 years at the company. I don't know if that was a symptom or cause of Borland's demise, but losing such key players must have been the nail in its coffin.

Anders Hejlsberg is one of my heroes, a giant in the programming world, being the creative genius behind Turbo Pascal (which I grew up with as a child), Delphi, .NET Framework, C#, and TypeScript (which I write regularly as a professional with greying beard).


Also, their C++ OWL framework was way ahead of the competition.


They lost to MS because, at least to a large part, they optimized for the wrong thing. They were just like WordPerfect, placing raw performance above everything. As a result, Borland C++ was way behind the release cycle of Win32 as the company thought that the full control offered by MS DOS was too precious to let go. When Borland finally came around, Visual Studio already took over. That they spent great resources on other languages, such as Object Pascal with Delphi (a great IDE, by the way), did not help much either. It also baffled me why they decided to pivot to SLCM solutions -- the term alone would put me to sleep, but maybe I'm too narrow minded.


Borland C++ ver. 3 was a great product, vastly superior to Microsoft's Programmer's Workbench (character-based UI).

However, when we upgraded to Borland 4, we encountered catastrophic bugs: Symbols were flagged as undefined that were successfully linked a few modules earlier. Use of 'new' operator in a DLL crashed the program (that one cost us two weeks). To be clear: these were bugs in the compiler, as they had compiled & run with no problem in the previous version.

We had to switch to Visual Studio.


They went after enterprise market willing to sacrifice their main base of individual/small clients.


Turbo C++ 3.0 I was sad when it stopped running on windows ( at V10 I think )


Something that doesn't get mentioned enough on technical forums like hn is how past a certain point, it's not tech that matters - it's sales, which is why in a larger company salespeople and employees who work well with salespeople tend to do better than engineers. If the company through hard work, technical prowess or plan dumb luck achieves a monopoly on whatever market it sells to before the best engineers leave, rising revenue and prestige at the company can mask the underlying rot and eventual demise for years and years, during which time better sales processes or accounting tricks are more effective than better engineering.


Originally from Windows Sources: The Magazine for Windows Experts, March 1995


I can see how they fail as the author nurtures low self esteem centered culture. It leads to over important components from the day one and the expenses multiple through the unnecessary dependencies like neutrons in uranium. Fool I say. Fool.


https://news.ycombinator.com/item?id=6818556#6819480

This also rings so true for me. I won't say I don't like other people, but let's say I prefer to be alone. My whole career starts as a customer service (a perfect start for me), then a BA, then a BI, and now a DE, and you can see that I'm running away from the crowd, as far as possible. I'll probably try to find a man cave of system programming and be done with that. Any extra interaction with other humans is find with me.


Gonna change my underwear right fucking now.


Most software companies die due to poor product market fit:

https://www.failory.com/blog/startup-failure-rate

The source of that data isn't there but you can see it as a trend in other places.


There's a greater phenomenon at work: the arc of a business as a living entity, often with a finite life.

It's slow and uncertain at first, fun when expanding and getting popular, but towards the end, it's not pretty.

I'm more than tempted to jump ship at work because they believe and demand every bit of work can be precisely measured for the value it delivers. They're about to do another round of layoffs, with no end in sight. They're penny-pinching perks, redoing all of the offices with shared desks, and running around like chickens minus heads.


I like the methaphor of a swarm of bees :) You can’t talk to them but steer them. Love it. Will keep in mind when I talk with my higher ups.


I enjoyed reading this, and it matches some of the environments I've worked in the past.


Building line breaks into your sentences every 80 characters makes for a terrible mobile experience


Yeah that's true, but that's because GitHub Gist doesn't word wrap. If you click the "Raw" format, the plaintext will wrap properly in the browser.


Vertical is non-optimal for mobile, but it was on okay read for me when I switched to horizontal.


Click “raw” then it flows pretty well. Reader mode on Safari is fine.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: