3 ms·
The problem wasn’t nomenclature or technology, it was economics: Part of the premise of “Software-ICs” was that, like physical ICs, a market would develop in so
by twoodfin 6y ago
The problem wasn’t nomenclature or technology, it was economics: Part of the premise of “Software-ICs” was that, like physical ICs, a market would develop in software components that could rival the existing “shrink-wrapped” software industry in size. That never came close to happening, for reasons that it would be fun to speculate about.
Perhaps one could make the case that it’s finally happening except as “cloud services ICs”.
- protomyth 6y agoWell, the old VBX market was pretty robust. I remember receiving catalogs in the mail advertising components to add to a Visual Basic project.
- badsectoracula 6y agoSame for Delphi, MFC and to a lesser extent WinForms. I think the rise of open source libraries simply killed that market and with the web being steeped into open source mindset from the get go, it never took off there.
- protomyth 6y agoI'm not sure it was the mindset or just no real mechanism for making isolated components.
- badsectoracula 6y agoThere isn't much of a mechanism in any of those, the components were essentially libraries. Sure, in Delphi and VB you get a tiny icon to represent the component and a visual property editor, but that doesn't really translate web stuff that is 100% text-based. AFAIK MFC has nothing visual.
- protomyth 6y agoWindows had a whole mechanism with VBX and OCX for building the components and keeping their innards isolated. Javascript had no equivalent.
- badsectoracula 6y agoYes, but this was only for Visual Basic. Delphi, MFC and WinForms each have their own and is just a library. JavaScript also had libraries since, if nothing else, you can always load multiple scripts per html page. Also, FWIW, i wasn't only referring to JavaScript but also server-side too (e.g. PHP or Python or whatever).
- pjmlp 6y agoThe market is still there, the customers I work for, keep buying such components, even in 2020.
- linguae 6y agoI wonder what would have happened to the Linux desktop ecosystem had it embraced something like Software-ICs modeled similarly to Apple's OpenDoc project rather than to implement monolithic applications. One of my favorite Hacker News comments describing what could have been is this (https://news.ycombinator.com/item?id=13573373 https://news.ycombinator.com/item?id=13573373). My views are in line with this comment; I believe that component-based software is a more efficient development model, and I also believe that this would provide necessary differentiation of the Linux desktop ecosystem compared to commercial desktops like Windows and macOS. I'm actually planning a side project where I want to implement a component-based application framework on top of Linux and the BSDs, but using the Common Lisp Object System as its base as part of a long-term vision to build a modern-day Lisp operating system (I want to focus on the application environment first, leveraging the wide hardware support that Linux and the BSDs have compared to lesser-known operating systems like Mezzano). I haven't heard of the term Software IC until now, but I'm familiar with the history of the OpenDoc project as well as other component-based software technologies such as SOM, COM, CORBA, and XPCOM.
- twoodfin 6y agoThe fundamental problem is that no matter how much more efficient a component-driven model is for developers, users don’t want it. To a first approximation, nobody wants to assemble their own software, or even choose amongst assemblies made by a zoo of “integrators” who turn components into applications. Developers want this, and indeed they benefit from a developer-focused OS like Unix that builds on the component model. But that’s the outer limit of the market for components.
- sontek 6y agoI think that happened for awhile in the early 2000s. I know we purchased a lot of UI component libraries back in the day. But I think we all had a enough of those component development companies go out of business or deprecate the version we were using that we are gun shy on doing it again. I know I stick with opensource only at this point for that very reason. At least if they decide to stop supporting me, I can support myself.