[HN Gopher] Ask HN: What Happened to Borland?
       ___________________________________________________________________
        
       Ask HN: What Happened to Borland?
        
       I recall early in my software development career Borland have a
       strong hold in the developer tool space (and largely loved by
       developers). What happened to them? They were the "JetBrains" of
       their day.
        
       Author : tiffanyh
       Score  : 177 points
       Date   : 2021-12-10 17:45 UTC (5 hours ago)
        
       | dr_kiszonka wrote:
       | Wikipedia has some information about it:
       | https://en.wikipedia.org/wiki/Borland#The_1990s:_Rise_and_ch...
        
       | stickac wrote:
       | This might provide some hints (or not):
       | https://en.wikipedia.org/wiki/Anders_Hejlsberg#At_Microsoft
       | 
       | "In 1996, Hejlsberg left Borland and joined Microsoft. One of his
       | first achievements was the J++ programming language and the
       | Windows Foundation Classes; he also became a Microsoft
       | Distinguished Engineer and Technical Fellow. Since 2000, he has
       | been the lead architect of the team developing the C# language.
       | In 2012 Hejlsberg announced a new Microsoft project, TypeScript,
       | a superset of JavaScript."
       | 
       | I can only speculate that lots of skilled Borland developers
       | followed Hejlsberg and participated in creation of C# and later
       | TypeScript.
        
         | spamizbad wrote:
         | It's important to understand that in the 90s Microsoft was one
         | of the few software companies that took "software talent"
         | seriously, and would aggressively poach talent from
         | competitors. They offered better pay, better working
         | environments (private offices instead of cube farms). Often
         | times their competitors wouldn't realize this until it was too
         | late.
        
           | markus_zhang wrote:
           | I can die for a private office :(
        
             | dhosek wrote:
             | Hell even a cubicle would be a step up from the last few
             | office environments I've had.
        
               | markus_zhang wrote:
               | Yeah exactly. Now that I work in open space I realize
               | that a cubicle is actually not bad.
        
         | grundoon wrote:
         | The story I heard (I worked at Borland briefly in 1999):
         | Microsoft would send a limo to the Borland HQ to pick up
         | engineers for interviews on their lunch breaks. Borland sued,
         | Microsoft settled for many millions, but basically instead of
         | buying their rival outright (for assimilation into the Borg,
         | lol), they just bought the talent. Last I knew Borland had
         | changed names at least twice (Inprise, Embarcadero) and still
         | existed, in some remnant form.
        
           | subroutine wrote:
           | What was the basis of the lawsuit?
        
             | eatonphil wrote:
             | > Saying that he "just wants Microsoft to leave us alone,"
             | Borland International (BORL) CEO Delbert Yocam today filed
             | a lawsuit against Microsoft (MSFT), claiming that the
             | software giant is hiring away Borland's key employees to
             | put it out of business.
             | 
             | https://www.cnet.com/tech/services-and-software/borland-
             | sues...
        
             | Jabbles wrote:
             | _" In the past 30 months, Microsoft has hired at least 34
             | of Borland's top software architects, engineers, and
             | marketing managers", according to a complaint prepared by
             | Wilson Sonsini Goodrich & Rosati. These actions have been
             | undertaken "for wrongful purposes: to acquire Borland
             | confidential information and to inhibit Borland's
             | competitive position," the filing states.
             | 
             | Borland's lawsuit seeks unspecified financial damages and
             | an immediate end to Microsoft's unfair practice of
             | targeting Borland employees in order to hamper the
             | company's ability to compete. The suit claims that
             | Microsoft's activities are illegal under California
             | Business & Professions Code Section 17200._
             | 
             | https://www.eetimes.com/borland-sues-microsoft-for-unfair-
             | co...
        
           | jamespo wrote:
           | Amusingly Steve Ballmer got the hump when MS engineers
           | started leaving for Google
        
             | nostrademons wrote:
             | As did Google when Google engineers started leaving for
             | Facebook, and FB when their engineers started leaving for
             | Uber/Lyft/AirBnB/Stripe/Coinbase/etc, and so on. It's
             | pretty much a revolving door now, where many engineers have
             | worked at all these companies and sometimes even come back
             | to their home base.
             | 
             | CA's prohibition against non-competes and the DoJ's lawsuit
             | against anti-poaching agreements is basically what makes
             | Silicon Valley work.
        
               | llampx wrote:
               | Not that the giants haven't tried to be a cartel when it
               | comes to labor. Including Jobs at Apple.
        
           | romeros wrote:
           | Ruthless. Just pure evil to target one specific company like
           | that!
        
             | Ansil849 wrote:
             | You're acting like the employees were forced into the limos
             | at gunpoint. People have free volition. Offering someone a
             | better opportunity is not remotely 'evil'.
        
               | Lammy wrote:
               | "What's _wrong_ with this country? Can 't a man walk down
               | the street without being offered a job!?"
               | https://www.youtube.com/watch?v=yDbvVFffWV4
        
               | tinalumfoil wrote:
               | In this case it's more like, "can't a CEO walk down the
               | street knowing his employees are safely shielded from
               | better work opportunities"
        
               | blagie wrote:
               | It's anti-competitive.
               | 
               | There's a difference between hiring talent because you
               | want talent, and hiring talent to undermine a smaller
               | competitor.
               | 
               | It's an analogous to dumping.
               | 
               | That is evil.
        
               | AtlasBarfed wrote:
               | Dumping is basically not enforced, even if it is against
               | the law.
               | 
               | Monopolies and cartels are against the law, but not
               | enforced.
               | 
               | It is a sad reality of the modern economy, and one of the
               | biggest indicators of who actually runs America.
               | 
               | At least in this case workers made money.
               | 
               | If borland was losing money, why didn't the execs
               | negotiate a merger if they had so much desirable talent?
               | 
               | Hmmmmm, I bet the execs couldn't negotiate a big enough
               | reward for themselves in an acquisition. The limo pickup
               | at lunch strikes me as a big middle finger to Borland's
               | management.
               | 
               | Of all of Borland's products that I liked, did I like
               | them because of the software devs or the management? I
               | guess what I want is the borland devs back.
               | 
               | I miss Turbo Pascal, DOS or Windows.
        
               | ozim wrote:
               | Is it?
               | 
               | Hooker offering good time is still quite evil.
               | 
               | Praying on the low instincts of people like simply more
               | pay (even if a lot) -- more pleasure is considered rather
               | evil.
               | 
               | Cam girls praying on low self esteem man.
               | 
               | Isn't it the same? Throwing money at people who will grab
               | it because they are thirsty?
               | 
               | We can argue that Borland developers were underpaid and
               | Borland was evil - because they were used. Again "Is
               | it?".
               | 
               | That is just such complex question that I am not
               | proposing an answer...
        
             | gavinray wrote:
             | It's not ruthless -- it's business.
             | 
             | If the fault lies on anyone, it's the employees who
             | accepted the offers. If they really thought it was "evil",
             | they would have denied the offer on moral grounds or in
             | loyalty to their employer.
             | 
             | Do you not frequently get offers for more money than you
             | are currently making at your employer? I would be a massive
             | asshole if I accepted and left a job every time I got one
             | of those -- especially in this market!
             | 
             | Since they succeeded in hiring so much of their company
             | away, it seems none of them felt particularly attached to
             | Borland or their work there, compared to a salary.
             | 
             | The only "evil" in the situation is how easily some (most?)
             | people will abandon you the moment they get a better
             | opportunity.
             | 
             | I suppose Borland could have matched salaries or tried to
             | keep their employees in whatever way (maybe they did, who
             | knows?) but at the end of the day either they didn't, or it
             | wasn't enough for those engineers.
        
               | fknorangesite wrote:
               | > It's not ruthless -- it's business.
               | 
               | It's not like these things are mutually exclusive.
        
               | gavinray wrote:
               | It's a dick move, and I wouldn't do it, but I am also not
               | beholden to a board of investors/shareholders that expect
               | to see positive ROE at the end of the day.
        
               | anonymousiam wrote:
               | This is part of Microsoft's core culture. Bill Gates
               | championed the philosophy of doing anything it takes to
               | get ahead, as long as there's some argument that it might
               | be legal.
        
               | gavinray wrote:
               | And to their credit they've been fantastically
               | successful. I enjoy many things in my day-to-day life by
               | Microsoft provided "free" of charge.
               | 
               | Take that for what you will.
        
               | anonymousiam wrote:
               | So what I left out of my comment are the ethical
               | implications of doing whatever you want, as long as
               | there's no law against it. Many behaviors are unethical,
               | while still (for the time being) legal.
        
               | ipaddr wrote:
               | Wait till you hear how they compete for suppliers,
               | customers, and regulatory changes. Business is about
               | gaining an advantage over a rival. Scoping up rival
               | employees is a 2x activity, you get talent and a
               | competitor has less.
        
               | romeros wrote:
               | You can take a job and leave if they pay you more. That
               | is fine. Microsoft isn't really only trying to gain
               | talent. They want to drain the life blood out of their
               | competition so they can get ahead. That intention is
               | _evil_
        
               | thesuitonym wrote:
               | >The only "evil" in the situation is how easily some
               | (most?) people will abandon you the moment they get a
               | better opportunity.
               | 
               | As if your company wouldn't fire you the moment it was
               | more lucrative to do so.
        
             | zepto wrote:
             | Not really. Borland could have issued attractive stock
             | based retention packages to the employees they wanted to
             | keep, and forced Microsoft to acquire the company or go
             | away.
             | 
             | This was on Borland for not adequately valuing their staff.
        
               | duped wrote:
               | Borland was losing over a hundred million in revenue
               | while Microsoft was offering seven figure signing
               | bonuses. There's no way they could have paid more than
               | what MS was, since MS was using their war chest to kill
               | the company.
        
               | xchaotic wrote:
               | as the op says - they could have issued stock instead of
               | real money
        
               | speedgeek wrote:
               | "Stock Instead of Real Money" is my new band name. So
               | much meaning in just five words :)
        
               | bitwize wrote:
               | I call equity "Bison dollars":
               | https://youtu.be/Shxiy7l5b_4
               | 
               | It's only worth anything _if_ the world-domination plans
               | go off without a hitch.
        
               | duped wrote:
               | Equity schmequity, and we don't know what Borland did or
               | didn't offer to keep people around. We just know MS
               | offered more.
        
               | AtlasBarfed wrote:
               | a million dollar signing bonus? Is there documentation of
               | this?
        
               | guessbest wrote:
               | I remember hearing rumors that microsoft would pay some
               | developers $1 million a year and tell them to just take a
               | vacation instead of work at borland.
        
               | llampx wrote:
               | Long term this kind of practice is bad for engineers the
               | same way Wal-Mart driving other retailers out of town
               | with low prices due to their size was bad for small
               | businesses and small towns in the 90s and 00s.
        
               | ConcernedCoder wrote:
               | how do I upvote a comment more than once?
        
             | WJW wrote:
             | Why do you think they only targeted Borland like that?
        
               | Spooky23 wrote:
               | MS was trying to pivot away from their 90s platforms, and
               | Borland was a potential destination for customers jumping
               | ship from stuff like VB.
               | 
               | It was a different time. Even dinosaurs like IBM were
               | still competitive in some verticals.
        
               | wombatmobile wrote:
               | Because the objective of Microsoft's recruitment was not
               | just to acquire talent, it was to diminish their leading
               | competitor.
        
           | Kye wrote:
           | I remember I started getting a bunch of emails from an
           | "Embarcadero." I didn't remember subscribing, and the
           | unsubscribe didn't work, so I just wrote a filter to skip the
           | inbox and send them all to spam. I must have subscribed to
           | something from Borland at some point.
        
         | andrei_says_ wrote:
         | What incredible impact.
        
           | vrodic wrote:
           | Still Delphi was better.
           | 
           | - DSL for UI (Forms) - fast native compiler that produced
           | self sufficient binaries - great component library and many
           | open source libraries - Object Pascal was extended to fit
           | perfectly the needs of UI programming
        
             | k__ wrote:
             | It was the pinnacle of an era that was gone with the rise
             | of the Internet.
        
             | nawgz wrote:
             | Building things that have no real-world constraints does
             | often result in great beauty. Unfortunately, the web and
             | all its ugliness became the dominant platform because it
             | enabled no-download no-install information & application
             | interaction
        
               | cosmodisk wrote:
               | It was probably 20 or so years ago when I played for some
               | time with Delphi. It was extraordinary easy to make
               | program interfaces. Fast forward to today and we are in
               | this clusterfuck, where everyone keeps reinventing the
               | wheel and complexities just keep growing.
        
               | edgriebel wrote:
               | > where everyone keeps reinventing the wheel and
               | complexities just keep growing
               | 
               | Cue XKCD "Standards" comic. People look at an existing
               | framework and declare "this is total shit, I can build a
               | better, easier to use version!" They then start building
               | the better-easier and realize why the old version is so
               | hard to use--because it's a difficult fucking problem
               | begetting awful complexity + shitty code.
               | 
               | This repeats itself every 18-24 months, giving us the
               | current clusterfuck of JavaScript libraries. Lather,
               | rinse, repeat for the past 30 years (n.b. XWindows Athena
               | -> Xt -> Motif/Lesstif -> ...<aeons pass>... -> Qt ->
               | Electron)
        
               | ohgodplsno wrote:
               | In the same way that Visual Basic offered simple, drag &
               | drop interface builders.
               | 
               | What happened is also changing hardware, UIs that need to
               | adapt to changing screen sizes, different needs, theming,
               | and many more.
        
               | dmitriid wrote:
               | > UIs that need to adapt to changing screen sizes,
               | different needs, theming, and many more.
               | 
               | People keep saying that as if that is this new thing that
               | wasn't ever heard of before the web or smartphones.
               | 
               | Open any desktop app and _resize it_. Boom, you 've got
               | "changing screen sizes".
               | 
               | And yeah, "needs are different, and we need theming is
               | this new thing that never existed before the iPhone ".
        
               | nawgz wrote:
               | I think forced aspect ratio was very common in the era of
               | these oldschool UI toolkits. Additionally, handling
               | multiple classes of pixel density and input (touch vs
               | mouse) was unheard of.
        
               | pjc50 wrote:
               | Everyone seemingly unaware that this still exists and you
               | can still do it in Hejlsberg's C#? Drag and drop WPF
               | components and program in code-behind? With themes and
               | responsive design?
               | 
               | (Big asterisk: mostly Windows-only and has recently lost
               | product direction coherency)
        
               | cosmodisk wrote:
               | Windows forms are great, whilst WPF is a bit odd,to say
               | the least.. Here's an example:
               | 
               | https://docs.microsoft.com/en-us/visualstudio/get-
               | started/cs...
        
               | the_only_law wrote:
               | I would almost like WOF is component styling wasn't one
               | of the most miserable clusterfucks of XML boilerplate
               | I've used.
        
               | ohgodplsno wrote:
               | WinForms still exists and is fine for the odd quick
               | utility. Doing WPF without ever having to drop in the
               | XAML is... unlikely to say the least. You're going to end
               | up in there are one point, because styles are fucking you
               | over or for some other reason (databinding? lol). But
               | yes, C# is still keeping the drag & drop alive. So are
               | plenty of tools (Lazarus, hell even Android Studio has a
               | drag & drop designer).
        
               | nostrademons wrote:
               | Also Android Studio, XCode, all the React builder
               | websites, etc. Basically every GUI platform + IDE has
               | some form of a drag & drop interface builder.
               | 
               | The problem is that outside of the iOS ecosystem, there
               | are too many subtle differences in behavior to really
               | trust the results. And because a lot of software gets
               | worldwide distribution these days, it's economically
               | worth it to squeeze that last bit of performance & user
               | friendliness out of the framework. So most professional
               | programmers learn how to do things programmatically and
               | only use the interface builder if they're doing a quick
               | internal tool.
        
               | mbreese wrote:
               | My biggest problem with the drag and drop builders was
               | how it played with version control. The last I used was
               | nearly 20 years ago - Windows Visual Studio C++ with MFC.
               | Even if the builder produced C++ code, it was hard to
               | know exactly where and how the changes were made. CVS
               | (and maybe svn?) didn't exactly like tracking those
               | changes.
               | 
               | Is that any better now?
        
               | fiddlerwoaroof wrote:
               | One thing I really liked about Delphi was its strict
               | separation between generated and manually-written code.
               | Delphi had a dedicated text file format that represented
               | the form built in the GUI builder. So, VC would just pick
               | up changes in the form file and save them like anything
               | else.
        
               | Pxtl wrote:
               | Making resolution-agnostic applications in C# Winforms
               | wasn't hard, it was a simple flag to tell the OS how to
               | scale the GUI. And if you used the native widgets and set
               | tab-indexes you'd be all set for changing sizes, blind
               | users, OS re-theming, etc. A good UI framework should
               | handle that stuff internally... even a _bad_ one should
               | do that (bad, like how winforms set the wrong default
               | font).
               | 
               | Imho, the real reason we don't see stuff like this for
               | the Web is that the web isn't designed for modularity.
               | CSS, Javascript, and HTML IDs are all global.
               | 
               | Programming 101 lesson 1 is "don't use globals" and the
               | Web is the perfect object-lesson in why not.
        
               | nawgz wrote:
               | > if you used the native widgets and set tab-indexes
               | you'd be all set for changing sizes, blind users, OS re-
               | theming, etc
               | 
               | > Imho, the real reason we don't see stuff like this for
               | the Web
               | 
               | Where are you looking on the web? tab-indexes and
               | extending native web components gives you responsiveness
               | and accessibility. The browsers provide theming
               | capabilities for light and dark mode, and OS level color
               | preferences (I use "red" for selected on Mac) easily show
               | themselves on CSS `outline` etc
               | 
               | > Globals
               | 
               | No one uses globals on the web. This isn't 2000, or even
               | 2013.
        
               | rhengles wrote:
               | CSS - Yes. JS - Not since 2015, I'll admit that is
               | somewhat recent. HTML IDs - IDs are only good if they're
               | unique. Since HTML had no notion of scope, they became
               | global. Shadow DOM is the web platform answer for
               | modularization, however any JS framework will allow you
               | to slice your CSS and HTML in components.
        
               | throwawayboise wrote:
               | Yeah I feel that in a way, the best time to be a
               | developer was back in the 1980s/90s. Your tools were
               | limited but those constraints took away a lot of the
               | "overhead" thinking about what frameworks to use and you
               | could just focus on functionality. You didn't have Google
               | or StackOverflow, but had a few books on your desk that
               | covered pretty much everything you needed to know. Or if
               | you were working on Unix, you had man pages, K&R, and
               | Kernigan and Pike's _The UNIX Programming Environment_
        
               | jhoechtl wrote:
               | The reason was you weren't competing with the world
               | class. Programming was great because you could be a local
               | hero.
               | 
               | Now everyone strives to make as beautiful websites as
               | <insert big blue with their genius web framework>
        
               | RantyDave wrote:
               | We also didn't have security issues, which helped.
        
               | nawgz wrote:
               | > Fast forward to today and we are in this clusterfuck,
               | where everyone keeps reinventing the wheel and
               | complexities just keep growing
               | 
               | Yes, it is quite funny to see how no toolkit exists to
               | simply produce Web UIs in a meaningful way.
               | 
               | However, the complexity has grown largely from
               | externalities that didn't exist during the time of
               | effortless interface builders, which is screen sizes and
               | aspect ratios and pixel densities of all sorts. To handle
               | this, you need to have some lower level primitives, and
               | of course any time you have to go to a lower level you
               | surface more complexity.
               | 
               | Final point - as a person who develops web UIs
               | professionally for 7 years now, I think that the
               | "reinventing the wheel" has been actually quite
               | beneficial to tame this complexity. Previously, untyped
               | JS had to be bent into surfacing type-style error
               | messages, and good luck with boundary crossing data. Now,
               | TypeScript lets you describe every key in your
               | application and have incredible confidence that a fully-
               | typed piece of UI or logic (which of course must avoid
               | `any`) will deliver exactly what you intended. GraphQL &
               | codegen has given us the ability to type our boundary
               | crossing data straight from our DB or resolvers without
               | any runtime reflection. Runtime reflection tools like io-
               | ts also bridge that gap admirably to program defensively
               | in the situations it's needed. It's obviously been
               | accompanied by a lot of churn, but with strictly typed
               | component libraries, a bit of reusable layout logic, and
               | Hasura, I can make sexy fully-themable UIs strictly typed
               | all the way to and from the data source without
               | significant effort. The complexity in my new paradigm is
               | entirely in application-level tricks like UIs visually
               | informing users of all the async actions, animations /
               | transitions, avoiding dynamic content causing bad layout
               | blips, and ensuring user input is never lost. I think
               | this kind of thing wouldn't have been easy in any
               | oldschool toolkit because it inherently requires some
               | wiring that isn't easy to surface
        
               | beamatronic wrote:
               | But in today's reality, there is a lot of Javascript that
               | is getting "downloaded and installed" into your browser's
               | cache. It's all being managed for you and it mostly
               | works.
        
               | nawgz wrote:
               | Please, you must not be pedantic in this way, it's clear
               | that I mean there's no install wizard and OS-native
               | interactions the user must go thru, they just provide a
               | string URL and immediately begin application-style
               | interactions after a brief load
        
               | beamatronic wrote:
               | Compare and contrast today's Javascript-in-browser
               | dependent applications versus a pure server-side-
               | rendering model. With the latter, there is truly no
               | software downloaded, only static assets such as images.
        
         | ryanackley wrote:
         | No. One man's departure did not bring down Borland. Years after
         | this guy left JBuilder was a great product that made them tons
         | of money in the early 2000s. Java's popularity explosion (think
         | J2EE) came years after the J++ debacle and JBuilder cashed in.
         | 
         | They disappeared because they weren't able to compete with the
         | commoditization of Java IDE's (Eclipse) and Microsoft's
         | integrated sales channel on Windows (Visual Studio). These two
         | things killed their two biggest products.
        
           | StevePerkins wrote:
           | They weren't able to compete with those things in the
           | early-2000's, yet JetBrains was founded in 2000 and has had
           | nothing but growth and success ever since.
           | 
           | The quality of leadership at Borland fell off, and the
           | organization lost its vision and ability to execute. Simple
           | as that.
        
             | mthoms wrote:
             | I suspect JetBrains location in Eastern Europe helped a
             | great deal talent-wise.
        
           | randcraw wrote:
           | Borland staff also disappeared because M$ made them offers
           | that they couldn't refuse. Departing engineers were offered
           | megabucks salaries which lasted only a year or two, but were
           | enough to decimate the ranks of Borland's talent and wipe out
           | the company's skillbase. Of course, Borland wasn't the only
           | competitor to receive this kind of attention from M$.
           | 
           | In the 1999 federal prosecution of M$ for antitrust, Judge
           | Thomas Penfield Jackson found that 'Microsoft used its
           | "market power" to unlawfully "maintain its monopoly in the
           | operating system market," violating the Sherman Antitrust
           | Act. Microsoft, the Appeals Court found, unfairly used its
           | monopoly power to strongarm computer manufacturers, Internet
           | access providers, Internet content providers, independent
           | software vendors, and companies like AOL, Apple, Intel, and
           | Sun Microsystems.'
           | 
           | https://www.newyorker.com/magazine/2001/07/09/the-
           | microsoft-...
        
       | jbkiv wrote:
       | For me, the only thing I truly remember about Borland is Philippe
       | Kahn (https://en.wikipedia.org/wiki/Philippe_Kahn). Kahn is a
       | giant: supreme intelligence, accomplished musician, worldwide
       | competitive sailor. He is also a big and tall man. He is also the
       | person who sent the first photo via a telephone. I first met him
       | in 95 when I invited him to speak at a Wharton meeting. His
       | vision of the internet blew me away. Shortly after meeting with
       | him I quit my job to start one of the dotcom companies. Like a
       | lot of companies ran by Founders, Borland had a face, for me it
       | was Kahn.
        
         | jaggs wrote:
         | As far as I can tell, Philippe Khan was the reason Borland
         | failed.
        
           | jbkiv wrote:
           | I have heard a different story (but from Kahn's side): that
           | the board did not back him up when he presented his internet
           | strategy. He left after that, arguing that the board did not
           | have the vision.
        
       | s_severus wrote:
       | As a teenager in the UK I bought an issue of a PC magazine that
       | had a cover CD (remember?) with Borland C++ Builder. That's what
       | got me started with programming.
       | 
       | A while later the same mag gave away a copy of Delphi. That
       | really opened things up. I found it was more accessible and was
       | quickly making all kinds of stupid windows forms apps and sharing
       | them with friends.
       | 
       | So, no insight into what went wrong but the name Borland has very
       | positive associations for me, and it's safe to say their products
       | played a role in the course my life took.
        
       | [deleted]
        
       | FpUser wrote:
       | I still use Delphi (it is being actively developed) for my
       | Windows Desktop products and Lazarus (Delphi's opensource clone)
       | for Windows / Linux desktop clients.
       | 
       | I do not think anything comes close to the practical feature set,
       | ease of use, power and long term stability for GUI creation. Well
       | QT does but at what expense.
       | 
       | Meanwhile HTML/javascript based frontends is a pitiful
       | clusterfuck comparatively. Modern computers have more than enough
       | power to have the HTML/javascript front end with the power of
       | Delphi. Why oh why web tool creators have to come up with
       | abominations like React instead. The end result is that in case
       | of Delphi the tool works for you. In case of popular web GUI
       | frameworks it is the other way around.
        
         | chadcmulligan wrote:
         | I'm starting a Delphi job in the new year, engineering
         | software, its good to see it's still around, and I'm looking
         | forward to no more HTML :-)
        
       | throwaway47292 wrote:
       | I really dont know what happened, but borland c++ 3.1 was the
       | very best IDE I have ever used, no amount of emacs can replace it
       | in my heart.
       | 
       | Delphi was super good as well.
       | 
       | We have only gone backwards since those days..
        
         | agumonkey wrote:
         | hey apparently someone made a dosbox distro to play with
         | borland c++ https://developerinsider.co/download-turbo-c-for-
         | windows-7-8...
        
       | eli wrote:
       | I think competing directly against Microsoft in the 90s was
       | pretty tough, even if you were largely loved by developers
        
       | davidw wrote:
       | Not specific to Borland, but this book makes for entertaining
       | reading: https://www.powells.com/book/in-search-of-stupidity-
       | over-20-...
       | 
       | He does get a few things wrong though, like open source. The best
       | bits focus more on the 80ies.
        
       | TheCraiggers wrote:
       | Man, this reminds me of how much I loved Borland's OWL in school.
       | When I entered the workforce, I was forced to use MFC and I was
       | probably the worst kind of coworker to be around at that time.
        
         | zwieback wrote:
         | Boy, forgot about OWL, I loved that. I remember the reworked
         | version without the custom C++ language extension for event
         | handlers wasn't quite as magical.
        
         | pantulis wrote:
         | Turbo Vision libraries for DOS where an absolute delight. And I
         | clearly remember a Turbo Pascal demo with a breakout game clone
         | that was a lesson on object oriented development.
        
           | dugmartin wrote:
           | I made a good bit of money in undergrad and grad school
           | building software in Turbo Vision in the early 90s.
           | 
           | The biggest project was writing all the software included
           | with this college textbook:
           | https://www.betterworldbooks.com/product/detail/quality-
           | cont....
           | 
           | I found out later that the software in that book ended up
           | being used in industry, including Jim Beam (the whiskey
           | brand) using it in their distillery.
        
       | AnotherGoodName wrote:
       | They never really made the jump to Windows did they?
       | 
       | I know they had Windows IDEs but lets be honest, just like
       | Wordstar, Lotus 123 and a bunch of others they were way too slow
       | to move to Windows in the industry shake up that was Windows 95.
        
         | johannes1234321 wrote:
         | Delphi was a leading develment tool for Windows in that era.
        
         | mikewarot wrote:
         | Delphi was by far the most productive programming environment
         | available for Windows, right up until the bean counters took
         | over, and they started raising the prices out of the reach of
         | casual developers.
         | 
         | You can do things in Lazarus (the open source IDE based on Free
         | Pascal) in minutes that take far, far too long to fiddle with
         | in Python/WxBuilder, for example. I wasted weeks of time trying
         | to use a "more modern" platform.
        
       | dvh wrote:
       | They threw amateur scene overboard and changed the price from
       | $100 to $3000 per seat. People moved to cheaper options. When
       | companies needed new people they couldn't find anyone with Delphi
       | experience so they were forced to switch. Now nobody uses Delphi
       | and it is impossible to find people who knows it.
        
       | eatonphil wrote:
       | Similarly, I'm trying to find high-quality retrospectives on
       | Pascal vs C. (I'm still trying to understand today if there is
       | good reason [other than Lazarus and GUI programming] to use
       | FreePascal over C or C++.) Any links you know of are welcome!
        
         | mikewarot wrote:
         | The main issue is (and always has been, in my opinion) that
         | "Standard" pascal sucks in that it doesn't have standard
         | libraries, and thus all of them were just a little too
         | different from each other.
         | 
         | Delphi (and Lazarus/Free Pascal) have a largely compatible and
         | sane set of libraries that include quite sane string handling
         | (you never allocate or deallocate them, the have length, and
         | can contain nulls without issue)
         | 
         | The latest versions of things include generics, so you can make
         | lists, trees, etc of your defined record type with little to no
         | trouble.
         | 
         | Separate compilation of Units means that I almost never wait
         | for a compile... it is always sub-second from hitting F9, to
         | seeing the thing run.
         | 
         | The two-way tools to edit forms are one of the most productive
         | I've ever seen. Borland C++ built a lot of boilerplate to make
         | up for the C++ impedance match with their VCL libraries, that
         | you couldn't tinker with, or things broke. Delphi/Lazarus don't
         | have that issue.
         | 
         | Lazarus doesn't support GIT integration directly, yet, as far
         | as I know. If you are doing personal projects, there's no
         | reason not to use it.
        
           | bnastic wrote:
           | Iirc, Borland literally had to add closures to C++ to make
           | their C++ Builder work and be as simple as Delphi in the UI
           | editor.
        
       | RickJWagner wrote:
       | I remember going to trade shows (i.e. 'SDWest') back in the day
       | when Borland was big.
       | 
       | The thing I remember most: They had some guy (short, with very
       | long hair) that did demos for them. Live and without a net. He
       | was good, and a good crowd pleaser. I hope he's doing well today.
        
       | JJMcJ wrote:
       | Borland fell for Microsoft's OS/2 fiasco, and devoted a lot of
       | energy to porting products there, to no economic benefit.
       | 
       | At that time I was using Borland C++ and the quality really went
       | downhill. Errors that never should have gotten past QA. Either
       | they weren't checking or were intentionally shipping with killer
       | bugs.
       | 
       | One release the license said you couldn't use it to make a long
       | list of products that would compete against Borland, like
       | spreadsheets or databases. They rolled back that provision a
       | little later.
       | 
       | Then releases every couple of months.
       | 
       | I just gave up them, they had burned the tremendous good will
       | originally generated by Turbo Pascal, which, it should be
       | mentioned, was created originally by Anders Hejlsberg.
        
       | MichaelMoser123 wrote:
       | maybe not directly related to the question, this project makes
       | vim look like TurboC, the author mentions, that he has
       | configuration that does so. https://github.com/skywind3000/vim-
       | quickui
        
       | hi41 wrote:
       | I used Borland C++ in the late 90s. It had a quirky UI. I
       | remember that many windows would just float around instead of
       | them being docked like Visual C++. I read in a magazine (probably
       | Byte magazine) that there were layoffs at Borland and that a
       | famous engineer got fired and he drove to Seattle to work for
       | Microsoft. Looking at other comments it looks like Borland fell
       | into bad times in late 90s.
        
         | mmphosis wrote:
         | I miss floating tool palettes.
        
       | tpmx wrote:
       | _Why did Borland fail? (quora.com)_ - June 13, 2015, 263 comments
       | 
       | https://news.ycombinator.com/item?id=9712267
        
         | ChrisArchitect wrote:
         | Good. Yes, earlier this year someone shared it again and the
         | post from a former QA Engineer at Borland jumped out.
         | 
         | https://news.ycombinator.com/item?id=26018033
        
       | mschaef wrote:
       | I can think of several things that may have contributed. In no
       | particular order.
       | 
       | * Their application business lost out to Microsoft many times
       | over the years. (Sidekick, Quattro, Sprint, etc.)
       | 
       | * The availability of free and open source development tools went
       | way up. (This undermined the ability to make money selling
       | development tools, even as they become more expensive to
       | develop.)
       | 
       | * They lost Anders Hejlsberg to Microsoft. (His Microsoft resume
       | is a testimonial to his skills, technical and otherwise, but
       | prior to that he was the driving force for the Turbo Pascal line
       | through Delphi. They did diversify, but Turbo Pascal really was
       | Borland's core asset.)
       | 
       | * Developer mindshare pivoted away from client apps to web apps.
        
         | varjag wrote:
         | It was also very distinctly DOS/Windows-first product family.
         | Microsoft OS slide to irrelevance sealed the fate.
        
           | akyoan wrote:
           | > Microsoft OS slide to irrelevance
           | 
           | I wouldn't call 75% of desktop share "irrelevant". Tablets
           | are still 20 times less common than PCs. *
           | 
           | * data from https://en.wikipedia.org/wiki/Usage_share_of_oper
           | ating_syste...
        
             | varjag wrote:
             | Doesn't matter what you run your browser in. The lion's
             | share of job market for developers is distinctly not
             | Windows native applications.
        
             | fourthark wrote:
             | But people don't build desktop applications that much
             | anymore. Windows, macOS, and Linux as GUI platforms have
             | all faded with the Web and smartphones.
             | 
             | It was a huge downgrade in interactive functionality at the
             | time, but the Web has slowly built up over the past two
             | decades so it is almost as functional.
        
               | q-big wrote:
               | > But people don't build desktop applications that much
               | anymore.
               | 
               | This might be outside of your echo chamber, but lots of
               | companies still very actively build desktop applications
               | (also completely new ones) for their own line-of-business
               | purposes.
        
               | a4isms wrote:
               | "Worse is better:"
               | 
               | https://www.dreamsongs.com/WorseIsBetter.html
        
             | novok wrote:
             | What happened is the web replaced most native desktop apps,
             | not mobile tablet UIs. There is a reason why web devs are
             | the still the most common type of devs, despite mobile
             | devices being the most common type of device used today by
             | a large mile.
        
       | wkandek wrote:
       | I don't know what happened to Borland.
       | 
       | In 1982ish in Germany I was programming my Apple II in Applesoft
       | Basic and UCSD Pascal. UCSD was 3 floppies, I had a 2 floppy
       | system so for certain steps one had to physically swap floppies.
       | 
       | I attended an Apple User Group In Frankfurt and somebody demo'ed
       | Turbo Pascal 1.0 on their Apple with the Z80 add-in soft card
       | under CP/M. Everybody was amazed with the speed and integration.
       | I bought a copy on the spot, received it maybe 3 months later as
       | it had to shipped from the US. By that time it was on version
       | 2.0. I had bought the Z-80 card in the meantime and switched all
       | software development to Turbo-Pascal.
        
       | racl101 wrote:
       | Oh gawd, those CDs were everywhere when I was in uni.
        
       | [deleted]
        
       | markus_zhang wrote:
       | I believe most of the cream moved away to other companies (e.g.
       | to Microsoft). The company itself was merged into Micro Focus a
       | few years ago.
        
         | mrweasel wrote:
         | Micro Focus is a seriously weird company. I'd love to know what
         | their story is.
         | 
         | They just seem to acquire defunct software companies. The only
         | company that I know they sold again is SuSE. Everything else is
         | just merged into Micro Focus. We never hear from the hordes for
         | developer that presumable works there, nor do anyone claim to
         | be using their products.
         | 
         | It's just a black hole for aging, failing software companies.
        
           | zqna wrote:
           | They are betting on inventing a time traveling machine. They
           | would carry the stocks of today into the past and sell them
           | there, then reinvest it into Apple's and afterwards would be
           | returning back. That's what I think.
        
           | ahartmetz wrote:
           | Legacy software really is their stated core business. Maybe
           | that is why they sold Suse again.
        
             | akyoan wrote:
             | We found who's maintaining all of this COBOL code after
             | all. They must have a lot of legacy-systems developers and
             | can probably market themselves for expensive consultancy.
        
           | cafard wrote:
           | My employer had Micro Focus COBOL, acquired when we used
           | Peoplesoft. That is long gone, but I'm not sure how long
           | gone.
        
           | blihp wrote:
           | They're using the age old 'roll up' strategy: buy a bunch of
           | past their prime products/companies with an installed base,
           | bean count them to profitability and then milk them dry. This
           | tends to work pretty well with enterprise customers who will
           | pay obscene amounts of money for years/decades to maintain
           | the status quo.
           | 
           | Once products/companies enter these roll up black holes, they
           | are rarely heard from again by anyone other than legacy
           | customers.
        
           | bee_rider wrote:
           | Their website seems to advertise the fact that they are in
           | some the "top 9/10 investment companies, 10/10
           | telecommunications, 10/10 pharmaceuticals, 10/10 aerospace
           | and defense companies." Not sure how they define topness, but
           | maybe they've made a business out of buying up companies with
           | lots of contracts in risk-averse fields and doing
           | maintenance/collecting renewal fees?
        
       | codr7 wrote:
       | Death by bean counting and enterprise bs, that's what happened.
       | 
       | I spent 13 years writing Object Pascal in Delphi full time,
       | starting from Delphi 4 and ending right about where Embarcadero
       | entered the scene.
       | 
       | They seriously dropped the ball by focusing on ticking enterprise
       | boxes and charging insane amounts for it rather than evolving and
       | fixing stuff.
        
         | speed_spread wrote:
         | Yep, they brutally tried to trade community goodwill for
         | enterpris-ey contracts and quickly lost both.
        
         | pantulis wrote:
         | I mean, they even had their own CORBA broker!
        
           | stickfigure wrote:
           | Unpopular opinion: CORBA was underrated. For its time, CORBA
           | was a decent way of stitching together heterogeneous systems.
           | Tediously hand-coding REST APIs was a big step backwards, and
           | gRPC is really just catching up to where we were before.
        
             | poulsbohemian wrote:
             | Thank you!! I did my undergrad thesis around CORBA (showing
             | my age...) and you are spot on that the whole world
             | proceeded to pile on a whole lot of work in order to make
             | everything run over http.
        
             | pjmlp wrote:
             | Agreed, but unfortunately so is fashion in this industry.
        
             | atombender wrote:
             | And there's Cap'n Proto, which is essentially a reinvention
             | of CORBA.
             | 
             | Unlike gRPC, where RPC calls are just functions that take
             | pure data arguments and return pure data structs, Cap'n
             | Proto allows RPCs to return references to objects. The
             | client can hold onto the reference and call methods on it,
             | which invoke RPC calls, while the client and server
             | runtimes keep track of what the references refer to. So you
             | can treat remote objects as if they're local to your
             | process.
             | 
             | This "location transparency" feature is at the heart of
             | CORBA, and later, Microsoft DCOM and Java RMI. I've never
             | used Cap'n Proto, but with CORBA/DCOM/RMI, this is a really
             | powerful feature which allows you to work with APIs as if
             | they're just in-process libraries. The downside is that if
             | you pretend there's no network overhead, you might end up
             | designing very inefficient applications, with each method
             | call becoming a network roundtrip. It also means a client
             | can, if you're not careful, "hog" a remote object and keep
             | it from being deallocated, resulting in leaks or excessive
             | memory usage.
             | 
             | Basic DCE-style RPC like gRPC is simpler and has more
             | predictable performance, since you're forced to consider
             | that you're talking to a remote API, just like REST.
        
             | scrumper wrote:
             | I remember learning about CORBA in undergrad too. Then a
             | few months into my first job, "new guy, go do this
             | integration with SOAP/WSDL." Crushed me so hard I went into
             | sales.
        
               | AnotherGoodName wrote:
               | The 'never again' part of working with soap for me was
               | that Microsofts and Javas soap libraries were more or
               | less incompatible for a variety of reasons.
               | 
               | I could handle the xml madness but at least make sure the
               | standard is a standard.
               | 
               | I'm pretty happy with rest apis on that front. I can
               | always make them work.
        
               | pjmlp wrote:
               | Yeah I remember those happy days.
               | 
               | There were some configuration behaviours on the standard
               | that had opposite defaults.
        
         | vrodic wrote:
         | I was under the impression that a lot of the original team was
         | hired by MS and that was the end of Borland that created
         | Delphi.
        
         | ccleve wrote:
         | Exactly this.
         | 
         | Pascal was a great language, and I wonder how much we've lost
         | by having it go by the wayside. It was strongly-typed, easy to
         | read, cross-platform, produced native executables, and was
         | lightning fast to compile and execute.
         | 
         | I say "was" a great language because it isn't widely used
         | today. I miss it.
        
           | thriftwy wrote:
           | On the other hand, it was verbose, and most of original
           | Pascal ideas were unsound and replaced in Object Pascal with
           | ones coming from C.
           | 
           | "Break loop" being a function rather than keyword is serious
           | PHP land.
           | 
           | It had better OO than C++, though. I admit it, they managed
           | to have a sane and compact statically checked compilable OO.
        
           | qalmakka wrote:
           | Also it had sane strings. Strings with sizes, withouth the
           | whole null-terminated madness of C which still haunts us
           | nowadays.
        
             | pjmlp wrote:
             | Languages 10 years older than C have proper strings, in a
             | certain sense there are some design decisions common to Go
             | and C, regarding adoption of common features.
        
             | masklinn wrote:
             | > Also it had sane strings. Strings with sizes
             | 
             | Except they were prefixes on the buffer which was bad and
             | not sane, and greatly limited the size of the original
             | pascal strings.
             | 
             | And technically they were UCSD strings, not standard
             | pascal, and other implementations used e.g. padded strings.
        
             | jstimpfle wrote:
             | "Sane" strings that may waste 4 bytes of length field for
             | unnecessary count, or may have a 1 or 2 bytes length field
             | that proves to be insufficient. Or "sane" strings that
             | alloc and dealloc and refcount like mad, bringing the
             | application to a stall. "Sane" strings that discourage the
             | developer from just coming up with a simple memory
             | management scheme that fits the situation at hand.
             | 
             | "Sane" strings that lead to incredible bloat and
             | incompatibility, because there is no one true "sane" string
             | type, so every module that doesn't know better forces their
             | own way onto the user.
        
               | mdip wrote:
               | This never, ever bit me in the Pascal days. I suspect
               | this was primarily because the stack I was using was
               | either "provided by the Borland Pascal standard library"
               | pieces, or it was my own Pascal or assembler code.
               | 
               | I had a limited number of calls into a library and a need
               | to do a few things that escape me with regard to
               | interacting with -- I think -- an 16550 UART[0] and its
               | driver, but I don't recall them being particularly nasty
               | to deal with. I mean, all things relative -- I was
               | expecting these to be nasty to deal with because they
               | often involved inline assembler, so the problem of
               | "making it behave with the string" wasn't quite as
               | pressing as "what the hell am I actually doing here?" :)
               | 
               | [0] My huge project was a bulletin board system in the
               | 90s.
        
               | nwiswell wrote:
               | Obviously C-style strings can still remain an option
               | where they are needed, but in most cases using the 4
               | bytes for a length field is a sane default. How many
               | buffer overflow attacks have been enabled by that four
               | byte savings over the years?
               | 
               | > "Sane" strings that discourage the developer from just
               | coming up with a simple memory management scheme that
               | fits the situation at hand.
               | 
               | "Sane" compilers that discourage the developer from
               | considering the machine level instructions. It's turtles
               | all the way down.
               | 
               | There's a reason that Python is so popular and it's not
               | performance
        
               | jstimpfle wrote:
               | This is not Python so that's a strawman.
        
               | nwiswell wrote:
               | By that I meant that there is obviously value in
               | abstracting away tasks and details that the programmer
               | would otherwise need to manage. That is why compilers
               | exist. The value-add for abstracting a string is
               | certainly more than the cost of 4 bytes of memory in the
               | typical case.
               | 
               | Put another way: optimizing the management of strings in
               | memory is almost never the best use of time to make
               | progress toward an organization's objectives, and doubly
               | so when that kind of micro-tuning can actually introduce
               | security risks
        
               | nerdponx wrote:
               | I hardly consider four bytes to track the length of a
               | string "waste".
               | 
               | I also don't really know why you assume that "sane" means
               | "doesn't let you manage memory effectively".
               | 
               | That said, how many applications really are bottlenecked
               | by string processing in the first place? I don't care if
               | processing Unicode graphemes is slow, as long as it's
               | correct and doesn't mangle users' names.
        
               | jstimpfle wrote:
               | Well I for one optimized an authorization module of an
               | enterprise application written in Delphi by getting rid
               | of standard library strings. Speedups where 100x-1000x,
               | accelerating application startup time from minutes to
               | maybe 3 seconds.
        
               | novok wrote:
               | He is probably thinking about the context of the 1980s,
               | when a large amount of 3 byte waste (the 1 byte null char
               | is a form of 'waste' itself) might have been a problem
               | back then.
        
               | jstimpfle wrote:
               | Packed structs with char fields of 8 bytes or so are
               | still common.
        
               | johnfn wrote:
               | The thing is, not every developer wants to care about
               | memory management. A lot of us just want to solve user
               | problems, and we don't mind too much if we spend a couple
               | of extra bytes to do so.
        
               | jstimpfle wrote:
               | It's not primarily about the bytes. Heap allocating RAII
               | style strings can absolutely kill performance. And they
               | are baaaad for modularity. It's all in my OP, why do I
               | even repeat?
        
               | kaba0 wrote:
               | How is iterating over the string each time you want to do
               | anything meaningful better? Also, there is a short string
               | optimization, where you can store the string inside the
               | pointer , eg. c++ does just that.
        
               | jstimpfle wrote:
               | You didn't read my comment right. My statement is there
               | isn't one true string type. I didn't say you shouldn't
               | use a length field.
               | 
               | Zero terminated strings still make some sense of course -
               | ease of reading when looking at byte level
               | representation, and moderate cost savings in packed
               | structs (4, 8, or 16 byte strings). The former is why I
               | zero terminate by default where possible, even when using
               | a separate length field stored somewhere else (almost
               | always).
        
               | Jtsummers wrote:
               | If the length field is 4 bytes then only 3 bytes are
               | "wasted" compared to C with its null-terminated strings
               | and 1-byte chars. The difference drops if you have wider
               | character types. Not to mention the time saved not having
               | to scan every string to determine its length.
               | 
               | I always find it weird when people fret about _bytes_ but
               | not _cycles_ , especially cycles that have to be spent
               | waiting for memory reads.
        
               | yongjik wrote:
               | You are thinking as a developer in 2020s, not one in
               | 1990s (or earlier). Memory was incredibly precious:
               | 16-bit x86 had 64KB segments, so if your data didn't fit
               | in, it would be a lot slower. People used _nibbles_ (4
               | bits) because the extra instructions dealing with bit
               | twiddling was worth the cost.
               | 
               | Basically, no sane programmer in the 90s would be happy
               | with a string type that wasted three bytes per object.
        
               | pjmlp wrote:
               | Yet JOVIAL, NEWP, PL/I, PL/S, PL.8 among other Algol
               | dialects managed it.
        
               | Jtsummers wrote:
               | CPU cycles were also incredibly precious. It's a
               | tradeoff. In the 80s and 90s you also had smaller caches
               | so iterating over a string to determine its length was
               | more expensive (more likely to hit RAM) than "just"
               | reading its length parameter and carrying on with your
               | life.
        
               | yongjik wrote:
               | Sure everything was more expensive, but not by the same
               | factor. Main memory was smaller but also relatively
               | _faster_ compared to CPU. Search for  "386 simm memory"
               | and you'll see 60ns modules. Considering that 386 debuted
               | with 12MHz clock, 60 ns is faster than one CPU clock
               | cycle!
               | 
               | In other words, "reading the whole string from memory"
               | could be a performance problem, but a _less_ serious
               | problem for machines of those days, compared to using a
               | few more bytes to store the length.
        
               | jstimpfle wrote:
               | Scanning for the string length (e.g strlen()) is
               | asymptotically worse than reading a fixed size integer,
               | so obviously don't do that unless it's a good
               | memory/speed tradeoff (i.e. when you know the string is
               | at most say, 16 bytes long).
               | 
               | Overall, it seems you didn't read my comment either. Or
               | was I _that_ unclear?
        
           | teeray wrote:
           | > strongly-typed, easy to read, cross-platform, produced
           | native executables, and was lightning fast to compile and
           | execute.
           | 
           | Sounds like Go
        
             | doodpants wrote:
             | Except that Go is for command line programs and backend
             | code; its standard library doesn't include a cross-platform
             | GUI API for desktop applications.
        
               | zamadatix wrote:
               | What was the stdlib's cross platform GUI like in Pascal?
        
               | codr7 wrote:
               | Probably could have been awesome, the Windows flavor
               | certainly was; but they dropped Kylix before it got a
               | chance to go anywhere.
        
           | pjmlp wrote:
           | At least in Germany it is still used enough to have a
           | presence on some magazines, and there is an yearly
           | conference.
        
         | appleflaxen wrote:
         | Embarcadero was a version of Delphi?
         | 
         | I googled it, but it wasn't clear if it was a buy-out, a
         | rebrand, or something else.
        
           | jstimpfle wrote:
           | from wikipedia, "On May 7, 2008 Borland Software Corporation
           | announced that its software development tools division,
           | CodeGear, was to be sold to Embarcadero Technologies for an
           | expected $23 million price and $7 million in CodeGear
           | accounts receivables retained by Borland.[5] The acquisition
           | closed on June 30, 2008 for approximately $24.5 million.[6]"
        
       | AlbertCory wrote:
       | This story is mid-80s, not later on. I was at Analytica, which
       | made Reflex. It debuted in 1985 and sank, to good notices and
       | dismal sales.
       | 
       | Borland bought the company for less than the VCs had invested,
       | cut the price to $99, advertised it, sold it by mail order, and
       | made it a hit for a couple years.
       | 
       | Several of the key execs at Analytica went to Borland and then to
       | Microsoft; some of them are fairly famous now. I don't know
       | anything about the limos or the lawsuits.
       | 
       | I heard Kahn talk in early 1985, and the Analytica founders made
       | fun of him, for selling his product through mail order when
       | everyone knew you had to go through BusinessLand and
       | ComputerLand.
        
       | GartzenDeHaes wrote:
       | I'm not sure how much of a factor this was, but Microsoft kept
       | making changes to their Windows header files that broke Borland's
       | tooling.
        
       | wonderwonder wrote:
       | I used to love working with Borland C++ Builder many moons ago.
        
         | shimonabi wrote:
         | I'm working with it at my job. I't called Embarcadero now. They
         | name their versions after world city names.
        
       | acheron wrote:
       | The same thing that happened to Lotus and WordPerfect: Microsoft
       | drove them out of business.
        
         | teh_klev wrote:
         | Factually not true. I suggest you grab a copy of "In Search of
         | Stupidity by Merrill Chapman":
         | 
         | https://www.amazon.co.uk/Search-Stupidity-Twenty-Marketing-D...
         | 
         | Most of these companies from the 80's and 90's foot gunned
         | themselves into oblivion or were bought by companies that
         | ruined their products.
        
           | petilon wrote:
           | > _Factually not true._
           | 
           | No one who was active in the computer industry in the 90s
           | will say that. Don't care what that book says.
        
         | fred96 wrote:
         | Lotus was not really killed by Microsoft but by IBM...
        
         | thrower123 wrote:
         | What happened to Lotus is really just sad. Selling out to IBM,
         | who sucked every dime out, then tossing off the desiccated husk
         | to HCL to keep it on life support and crank out an enterprise
         | security patch from time to time.
        
           | fred96 wrote:
           | I 100% agree. I was a Notes Evangelist for + 20 years. Now
           | I'm using Nextcloud and hope it will have a long and good
           | life.
        
         | TheNewsIsHere wrote:
         | You can absolutely still buy WordPerfect. It's alive and well
         | at Corel, updated regularly, and is something of a cult
         | favorite in the legal field.
         | 
         | Lotus isn't exactly dead. But it's not exactly alive and well
         | either.
        
       | dragonwriter wrote:
       | > What happened to them?
       | 
       | Microsoft poached dozens of key staff with 7 figure signing
       | bonuses.
       | 
       | Also, ISTR some anticompetitive thing with Windows APIs, but the
       | poaching was decisive.
        
       | rswskg wrote:
       | First tool I ever used for converting class diagrams to code.
       | Felt pretty cool!
        
       | YesThatTom2 wrote:
       | The answer is well-documented in Merrill R. Chapman's book "In
       | Search of Stupidity: Over Twenty Years of High Tech Marketing
       | Disasters"
       | 
       | Terrible title but great book.
       | 
       | Basically Microsoft dominated every software category by waiting
       | for the #1 company to make a dumb mistake. They then swooped in
       | and won.
       | 
       | This book is an excellent but biased history of that era.
        
       | mindcrime wrote:
       | The ill-conceived idea of rebranding as "Inprise"[1] certainly
       | didn't help.
       | 
       | [1]:
       | https://en.wikipedia.org/wiki/Borland#Inprise_Corporation_er...
        
       | narag wrote:
       | After Anders' departure, they created a promising project to make
       | Delphi for Linux that was making progress.
       | 
       | At the time Borland had sued Microsoft for some big IP feud.
       | 
       | Then suddenly an arrangement was made. Delphi for Linux was
       | rushed, released unfinished and flopped. Borland got $30M and
       | access to every .NET documentation. But Delphi.NET was never very
       | popular because it was never as good as VS.NET.
       | 
       | .NET modules were added to Windows native Delphi and slowed down
       | the IDE.
       | 
       | IDE price skyrocketed, users flew and after some acquisitions
       | dance, Delphi is owned by IDERA... not sure how it's doing now
       | because they closed developers' forums years ago.
        
       | fiedzia wrote:
       | Several things happened at the same time:
       | 
       | 1. At peak popularity, Borland products where easily available.
       | Borland decided to turn to enterprise and raised the price
       | considerably, so individuals and small companies started looking
       | elsewhere. By the time they realised the mistake it was too late.
       | In my opinion this was the biggest mistake.
       | 
       | 2. Internet and Linux came, and with them Perl, PHP, Python and
       | others. Borland missed the boat, and again by the time they
       | realised that, it was too late.
       | 
       | 3. Sun came with Java and Microsoft with C#, both seen as the
       | future of enterprise, and available for free or at very low cost.
       | Java was extremely popular at education sector, pushing out
       | Pascal and other competitors. Both made Object Pascal obsolete.
       | 
       | So bad decisions and being late to the party. Also it was hard to
       | compete with Microsoft in the long term.
       | 
       | As an unrelated sidenote, at the time when world was turning
       | towards agile, they were building and marketing software for
       | managing waterfall project management. That just shows how
       | disconnected from reality of their customers they were.
        
         | flyinghamster wrote:
         | > 1. At peak popularity, Borland products where easily
         | available. Borland decided to turn to enterprise and raised the
         | price considerably, so individuals and small companies started
         | looking elsewhere. By the time they realised the mistake it was
         | too late. In my opinion this was the biggest mistake.
         | 
         | Exactly this. Turbo C was the first real C compiler for DOS
         | that I could afford, where "real" means that it supported large
         | memory model. Before then, the cheap compilers were always
         | stripped down to only allow small model (64K instructions/64K
         | data). Turbo C was also downright fast, and it cost far less
         | than what Microsoft wanted for their compiler. But once we
         | actually started writing 32-bit applications, its day in the
         | sun had already past.
        
         | thomascgalvin wrote:
         | > At peak popularity, Borland products where easily available.
         | Borland decided to turn to enterprise and raised the price
         | considerably, so individuals and small companies started
         | looking elsewhere
         | 
         | There is a _lot_ to be said for being easy to get and
         | affordable. I gladly give IntelliJ a couple of hundred dollars
         | a year, because $10-$20 a month for a superior developer
         | experience is worth it to me.
         | 
         | If I was paying their enterprise rate, though ... not a chance.
        
           | Pxtl wrote:
           | On the other hand the "we're professional products, you'll
           | eat the cost and like it" approach worked fine for Adobe.
        
             | q-big wrote:
             | > On the other hand the "we're professional products,
             | you'll eat the cost and like it" approach worked fine for
             | Adobe.
             | 
             | I know several designers from various areas who do serious
             | attempts to free themselves from Adobe's bondage (in
             | particular the running costs of the forced subscriptions)
             | and are looking for (and partially have found) alternatives
             | for doing their work.
        
             | mh- wrote:
             | A staggering percentage of Adobe installations in the 90s
             | were pirated, even in the US.
        
               | Pxtl wrote:
               | I know. Pirated copies of Adobe Flash Creator created an
               | entire generation of animators. A shame that no real
               | worthy successor has appeared.
        
               | ByteJockey wrote:
               | My understanding is that was their model.
               | 
               | If you let teenagers pirate your product, they're already
               | familiar with it by the time they get hired. When they
               | get hired, the cost to re-train them on something else is
               | more expensive than the license (at least, in the short
               | term).
        
             | Kye wrote:
             | That works as long as:
             | 
             | 1: someone other than the user is footing the bill (bulk
             | licensing)
             | 
             | 2: there are no suitable alternatives
             | 
             | Adobe will fade (or be forced to change) over the next 20
             | years as different tools pick them apart one niche at a
             | time. It's already happening: the Affinity suite, Procreate
             | (and similar indie-focused tools), and DaVinci Resolve,
             | among others already serve huge niches within the Adobe
             | suite quite well. Capture One, which predates Lightroom, is
             | getting better as it expands out of the portrait studio.
             | 
             | This is essentially what happened to Microsoft. Macs got
             | good (for definitions of good that matter to non-
             | enthusiasts), mobile swept up almost all casual computer
             | usage, and the web took much of the rest by way of Linux
             | and open source. It happened a niche at a time until the
             | world outside was too big to fully EEE.
        
         | EastSmith wrote:
         | The Delphi version we used cost $3000 per developer ~
         | 2003-2005.
        
         | mamcx wrote:
         | Yeah, this is it.
         | 
         | BTW, I still moderator in https://www.clubdelphi.com (despite
         | not working on Delphi anymore, like many there!) and see how
         | much mind-share Borland and later lost on the small-
         | bussines/solo-developer side.
         | 
         | You can't imagine how much in the official forums people ask
         | for not ruin it and put real features, and the things that get
         | implemented were so out of touch.
         | 
         | Also, is pretty similar how MS ruin Fox/VB (except not even
         | sell it after): Burn the goodwill in the low-end... in the hope
         | them move to costly products -sql server, ejm- ... and then
         | lost that people to the rising of open source.
        
         | squarefoot wrote:
         | > Internet and Linux came, and with them Perl, PHP, Python and
         | others. Borland missed the boat
         | 
         | Actually, they were looking at new (by then) technologies. C++
         | Builder was a reality in the late 90s, Kylix (essentially
         | Delphi for Linux) was released in 2000; I attended one
         | demonstration by Marco Cantu himself. The problem with
         | Borland/Inprise/Embarcadero was that they weren't giving a damn
         | about small developers but wanted to play only in the
         | enterprise world, an ill choice that backfired spectacularly.
         | If they could exchange a few ideas with the developers behind
         | Lazarus, and could help them some way but guaranteeing it stays
         | free no strings attached, both worlds could benefit from it.
         | Lazarus needs some more work and a name to become well known
         | outside of the Delphi nostalgic developers world, and newer
         | Delphi and related tools need a much cheaper product to attract
         | developers in long ignored market segment.
        
       | ransom1538 wrote:
       | "Apparently, JBuiler used to be their #1 cash cow. Well, until
       | Eclipse came along: within 18 months, JBuilder license sales
       | dropped to essentially zero." quoting from a previous employee.
        
         | rstupek wrote:
         | We used jbuilder and it was a great product, simpler to use
         | than eclipse but it's hard to compete with free and good enough
        
           | ransom1538 wrote:
           | Yeah as a kid i remember staring at the jbuilder box in a
           | "computer store". I wanted it so bad. But never had the
           | money.
        
           | lowbloodsugar wrote:
           | Yet JetBrains survives.
        
             | johannes1234321 wrote:
             | Which is fascinating to watch. As it is quite uncommon in
             | today's world.
        
             | The_Colonel wrote:
             | That's an understatement. JetBrains has a strong continual
             | growth.
        
         | speed_spread wrote:
         | It might have saved them to go with the JetBrains model of a
         | free "Community" edition along with paid supported options but
         | that's probably not a jump that the uninspired management would
         | have been willing to make.
        
       | mistrial9 wrote:
       | I specifically recall Microsoft engineering in the 1990 era,
       | driving up to Borland headquarters in Scotts Valley en masse in
       | expensive cars, and inviting engineers out for lunch "on them".
       | It was a calculated PR and intimidation move by someone at
       | Microsoft to acquire talent and to destroy Borland. Borland and
       | its quirky leader were well regarded in Silicon Valley by many
       | engineers, while Microsoft was busy making a reputation as
       | scorched-earth competitors. It seemed that it was not enough to
       | win a market segment for Microsoft, there was a clear signal of
       | destroying competing companies, and Borland was one of them at
       | the top of the list, based on this event.
        
         | chihuahua wrote:
         | Is there something wrong with hiring engineers from a
         | competitor? Should they have had a no-poaching agreement like
         | Apple and Google had a few years ago? That was deemed illegal
         | if I remember correctly.
        
           | Kranar wrote:
           | In and of itself no, but courts have ruled that there's a
           | distinction between hiring people to make use of their talent
           | vs. hiring people to deny said talent to the competition.
           | 
           | Was Microsoft targeting Borland employees because Microsoft
           | was looking to make use of their talent for their own
           | products; that's legitimate. However, if Microsoft was hiring
           | Borland employees for the purpose of keeping those employees
           | from working at Borland; that's potentially predatory and
           | violates antitrust laws.
           | 
           | Note that it's not even in the employee's best interest in
           | the case of predatory hiring. Much like with predatory
           | pricing, once Borland goes out of business as a result of
           | said practice, Microsoft is unlikely to continue retaining
           | many of those employees or paying lucrative salaries and the
           | overall pool of talent as well as salaries is likely to
           | shrink in the long run.
           | 
           | It's the nature of predatory actions that they hurt the actor
           | in the short run but benefit them in the long run whereas the
           | public gains in the short run but is damaged in the long run.
        
       | pbreit wrote:
       | Acquired by Microfocus in 2005. Apparently some of the products
       | live on: https://www.microfocus.com/en-
       | us/products/borland/overview
       | 
       | I also wonder what Phillipe Kahn is up to:
       | https://en.wikipedia.org/wiki/Philippe_Kahn
        
       | mikeabraham wrote:
       | They flew too close to the sun.
        
       | WalterBright wrote:
       | Back in the late 80's or so, Borland did a lot of direct mail
       | advertising that would start out with "Dear Friend XXXX", where
       | XXXX was the target's name. I was in Phillipe Kahn's office once
       | talking with him, and noticed that tacked on the wall was one of
       | those letters. Across it was written in heavy red ink:
       | 
       | "Dear Phillipe, I am not your fucking friend. Got it, Phil baby?"
       | 
       | How could you not like a man who'd stick that on his office wall?
        
         | h2odragon wrote:
         | I sorta had the feeling he fell victim to "cult of personality"
         | eventually. Everybody telling him he was so great he lost touch
         | with reality. Or was he never actually connected in the first
         | place?
        
           | WalterBright wrote:
           | I didn't know him well enough to know if he emanated a
           | "Reality Distortion Field" like Jobs and Holmes did.
           | 
           | But he was very charismatic.
        
         | WalterBright wrote:
         | I did learn one technique from this. I finally managed to put a
         | stop to Capitol One sending me credit card offers in the mail
         | practically every day. I'd write over the offer letter in heavy
         | red crayon a profanity-laced diatribe and mail it back in their
         | business reply envelope. It took several tries, but the CO junk
         | mail finally ceased.
        
       | ctdonath wrote:
       | Borland logo was prominently displayed on a high-profile building
       | in Atlanta until a few years ago. Surprised they lasted so long.
        
       | marcodiego wrote:
       | Microsoft bought their brains:
       | https://www.cnet.com/tech/services-and-software/borland-sues...
        
       | grlass wrote:
       | I started software dev in the mid-2010s, and had never heard of
       | Borland, until I heard a former colleague mention it having great
       | built-in debugging tools and that they missed it.
       | 
       | Same colleague had some vocal criticism of `gdb` as a debugging
       | tool, and the state of Linux-based debugging tools as a whole,
       | with claims that "Borland's were much better, and Visual Studio
       | (not VS Code) being one of the few development environments with
       | a quality debugger".
       | 
       | I'm not sure how fair that assessment is, I've found `gdb` to be
       | a helpful tool, though I've never used Visual Studio.
        
         | jiggawatts wrote:
         | It's night and day. The debuggers in those two tools were very
         | easy to use, very visual, but surprisingly powerful.
         | 
         | I cry a little on the inside when I see developers using Visual
         | Studio and resorting to printf statements (or the equivalent)
         | because they've _never even tried to use the debugger_ , ever.
        
         | __d wrote:
         | You should try the Visual Studio debugger one day. It's kinda
         | the yardstick for graphical debuggers.
         | 
         | gdb is a fine tool, but I think the VS debugger is reasonably
         | described as "next level".
         | 
         | Many people don't know about Microsoft's other debugger,
         | WinDbg. It's actually more capable than the VS debugger, but
         | the UI is closer to that of gdb.
        
           | grlass wrote:
           | I would be keen to try, but afaik there's no way to do it on
           | Linux which is my main dev/deploy environment.
           | 
           | It feels like Linux debugging is stuck in a viscous cycle,
           | since few people are putting the capital into a decent
           | debugger UI, and thus few people are using debugging UIs (and
           | thus using printf debugging, or gdb CLI). Folk might not
           | realise how much better it could be.
        
         | nrdvana wrote:
         | I'd say Delphi was one notch better than Visual Studio. The
         | pascal language was more highly optimized and easier to parse,
         | so the debugger was much snappier about popping up the tooltips
         | to show you values of variables or F1 to jump into the help
         | pages. I remember being especially disappointed with VS because
         | they would spend hundreds of MB of your precious disk space
         | installing the entire Microsoft Knowledge Base, and the hitting
         | F1 on a code statement would bring up a mishmash of Visual
         | Basic examples (while developing C++) for almost but not the
         | right class. In Delphi, it always knew exactly what class you
         | were dealing with and would open the correct help page before
         | your finger was fully off of the function key. The help pages
         | had been expertly written to show you the most important
         | details first, and were easy to browse. Really, I'm surprised I
         | don't see more people reminiscing about those help files. There
         | was probably as much effort put into that as into the
         | frameworks or compiler or IDE.
        
       ___________________________________________________________________
       (page generated 2021-12-10 23:01 UTC)