Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
The sudden death and eternal life of Solaris (dtrace.org)
485 points by elvinyung on Sept 4, 2017 | hide | past | favorite | 267 comments


There seems to be a lot of odd nostalgia for Solaris in the comments here and on twitter. I think that's missing the point of the article. Yes, Oracle Solaris is dead. But illumos is better, open source, alive and here to stay.

You can use illumos today, right now, and have your ZFS, mdb, DTrace and zones. It really is open source and we're a community using and improving it. For 7 years now already.

As illumos is only the basic building block of the operating system (but unlike linux includes kernel + basic userland) one usually runs one of the distributions:

- SmartOS, developed by Joyent as a cloud hypervisor. Supports zones, KVM and lx-branded linux containers. [1]

- OmniOS CE, a minimal distribution targeted for bare metal server installations [2]

- OpenIndiana, similar to the traditional opensolaris. If you care about GUI this is probably the one. [3]

- Tribblix, modern components with retro style [4]

Sure, the user base is smaller than Linux. But that is also true for FreeBSD which is used by Netflix and Whatsapp. Running a different OS than most other people can give your company an advantage and I know that ZFS and zones have done that for mine.

[1] https://wiki.smartos.org/display/DOC/Download+SmartOS

[2] http://www.omniosce.org

[3] https://www.openindiana.org

[4] http://www.tribblix.org


Things make a lot more sense now. For having been interested tangentially in OpenSolaris (I still have its "bible" as a monitor stand) I never knew Illumos was the kernel, and other OSes based on it. I assumed all the different Solaris spinoffs were complete forks, and thus assumed they were all dead or dying.

I will say the wikis are not inspiring; many on Illumos, OpenIndiana and SmartOS have pages last edited multiple years ago. For Illumos, I think your info above is more useful than the alphabetical listing of distros on the wiki. I think the marketing on OI's site could better tell the "why use me over Fedora/Ubuntu/BSD?" story, and SmartOS could spend less time selling its public cloud service, and more time telling me how to create a private cloud. Its docs are not super discoverable.

All just observations; take them for what they're worth. I do think it's neat that Solaris has lived on, and it makes me want to throw up a lab server to poke around a few hours. Thanks for your work and the comment.


Oh yes, the wikis definitly do need some love. Documentation is beeing worked on as far as I know.

A lot more of activity is going on in irc on freenode, so if you start playing with your lab server or are just interested in general you might want to drop by in #illumos or #smartos.


How does running a different OS than most people can give a company an advantage? Can you elaborate this?


In my case illumos provided two things:

- zones allowed for a much higher deployment density and better utilisation of our hardware than other virtualization technology would have.

- zfs snapshots. We've integrated those into our product and when a customer messes up they now have button to instantly restore to a known good state.

Doing both of these things would have been a lot harder on another os.


A different OS can solve some of the pain points of the mainstream options. Depending on your business, the features a different OS brings could have a large impact on performance or stability.

Potential areas for improvement could be anything from filesystem to process concurrency to virtualization.


I'd see only the pain of migrating applications and learning new administration tools. Solaris was dead long before oracle killed it -- to me.


"migrating applications" -- you'd be shocked at how unix software tends to run on... unix OSes with few to no modifications.

Things like:

  * Java
  * PHP
  * Perl
  * Python
  * Ruby
  * Apache
  * Nginx
  * Varnish
  * MySqL
  * Postgres
  * Node.js
  * etc
all run just fine on a Solaris-clone. Unless your app is using very specific kernel features it will probably work fine.


The comment up above in the chain was wondering whether running Solaris (or derivatives) offered any advantage. While I'm sure the packages you listed _run_ fine, how difficult would it be to find support for each when running on Solaris? You can run those softwares on Solaris, but is Solaris on the "supported platforms" list?

Not debating here, BTW; I enjoyed my time with Solaris and then its offshoots.

Edit: The thinking here only applies to systems running in production where official support is pretty much mandated.


What do you mean "find support" ? This is open source software. Your sysadmins are your first line of support. If they can't debug issues, work with the open source community, and write basic patches in C you have the wrong staff.


Well, two things here.

First: Really, the requirement for vendor 'support' is something I've always had a bit of a hard time rationalizing.. Getting a vendor in for consultancy/implementation help is a bit of a different story though and is often worth it.

Back to support.. The old "Alright, we pay RedHat or Oracle for support for when something breaks" thing.. The reality is when something does go arse over bollocks you'll get two options from your vendor (at least from sun, oracle, redhat, ibm and sap in my experience): upgrade to the latest version, or downgrade until you get a code fix from the vendor. Your critical oracle 10 db running on some older redhat point release shits itself? Not their problem. Hope you have backups. They will take file a bug internally to prevent it happening again but they can't do much more than you can internally to get things back up.

I've been in ops for almost 15 years and I still don't have a single story of a vendor 'saving the day' outside of hardware support (actually, that's not true -- once Joyent solved a problem for us by patching some servers within about an hour of us reporting a problem which remains the single greatest support experience in my life).

We worked out how to do software upgrades and rollbacks a decade ago, if one shitty linux kernel package is enough to down your business then yeah, you're doing things wrong and hopefully will learn from the experience, but paying a support fee per instance isn't going to help you recover or avoid those things.

I think we agree, all I'm trying to say is at least in my experience: You're almost always better spending your money on good staff than support contracts.

Second: In what world do you live in that your sysadmins can write kernel patches during prod outages? Maybe your reality is very different to mine, but adding/changing code has never been the solution to bad outages (and I've been through some gnarly ones, trust me) for me so far...


I can write kernel patches. Any good SA >= 10 years with C can. And we don't because it is a symptom we notice and not the problem and we are interested in a fix only as a way to survive till the cure. Kudos to the rest of your post. God bless the elders in this industry.


I've worked in places where "official" commercial-level support is required when a system is in production. In those situations, I didn't have control over the staff at any level, just pointing out it's a thing I've seen at least twice in 20 years and 4 jobs.


They run more than just fine; usually an illumos based OS will run circles around Linux on the same hardware, and the real slap is that it won't sacrifice reliability nor correctness of operation to do that.


I think you're missing the most important application for Solaris users: Oracle (the database).

The people who is going to suffer the most from Oracle killing of Solaris are largely its own database customers. I honestly doubt many Solaris customers are running an open source stack on top of it. It's the closed source applications that will be trouble some.


Oracle wants their customers on their exadata appliances which run Linux, not Solaris. They've been pushing customers that direction for years.


No, I wouldn't (having developed since 1995) but I will state that having dealt with multi-platform builds and development for bsd and linux + darwin (until recent iterations of macos) that solaris is a pitfa, just as much as macos, and one is enough.


Ugh. Unix is absolutely the worst development target. It's clunky, ad-hoc, it uses some horrible ancient programming language and an even more horrible ancient scripting language. Like democracy, it's definitely the worst example of its type ever to have been invented.


I'd suggest your experience|expertise is lacking. My first couple of months were bad but then I learned to appreciate the expressiveness and facility of even a bad shell language and the open horizon of how things were done. This comment seems to be classic troll or sour grapes.


It was a joke, actually. The quote I was referencing is, "Democracy is the worst form of government, except for all the others that have been tried." I actually wrote a (short) book on the ways of the Unix shell, which hopefully qualifies me to have an opinion on the matter. Although UHH is quite dated, there is and has been a great deal of legitimate criticism of Unix, and for that matter C and Bash as well. You have mistaken my opinion on the matter, but your eagerness in assigning negative qualities here is something you might want to examine. To be clear, I do consider Unix and Bash to be imperfect but essential tools for any programmer.


If there was something better than Unix it would be taking over the world by storm.


If there were something better than Unix we would replace Unix with that something and keep the name. But yes, that was the joke, and no, it was not a very good one.


You can run docker containers on hardware instead of on virtual machines.


...And unlike on Linux, it treats the entire datacenter as one giant machine.


You don't have to get up at two o' clock in the morning to run fsck on a filesystem based on 30 year old concepts, for example. Or when you reboot the system, you don't have to wait 18 hours for fsck to complete because it's been more than 180 days since the last filesystem check. And I've many more examples, if you're truly interested.


I can think of the following reasons:

1. It is less profitable to develop exploits targeting a minor OS.

2. Minor OS may have some specific features that the major OS don't.


Ask Google.


The nostalgia I feel is for Sun, for MPK17, for the people I got to work with, and the technology. Of those things only Sun is gone, but the people scattered, and technology, though still vibrant, is still always at risk -- it depends too much on Bryan Cantrill and friends to keep it going, while the Linux crowd blissfully ignores all the good ideas and reinvents every wheel badly.

We're in a dark ages with a sliver of light. We might be in it for a while. People who have never used ZFS, SMF, DTrace, or FMA, have no idea that they are stuck in the dark.


There seems to be a lot of odd nostalgia for Solaris in the comments here and on twitter.

There is nothing odd in that: contrary to the Linux party line and all the Linux hype, before illumos and SmartOS, Solaris was the most advanced operating system on the planet. As others have very accurately described and pointed out in the comments on the other reduction in force thread, this was sadly lost on the Linux generation which "grew up on the PC in their parents' basement".


At the end of the day, Sun/Oracle has to be able to make revenue from Solaris for them to keep paying those peoples' salaries.

Is your startup / company deploying on Solaris? Nope of course you aren't - who is?! Pretty much nobody nowadays - w3techs.com shows Solaris at 0.0005% for webservers for example. Everyone talks about how great it is(to be sure there are some small bits that are pretty dang amazing) - yet for some reason nearly no one actually DOES use it! Perhaps there is a reason for that. Lord knows I have many battle scars from the many real world rough edges that never seemed to get less fundamentally shitty(for starters: path_to_inst and smf I'm looking right at you!)

I definitely respect the amazing work of some of the engineers on the Solaris team back in the day. ZFS and DTrace being two that have made the tech world by in large a better place either directly or thru inspiration. And Linux and the BSDs are definitely better for those selective code gifts! But nonetheless, the world voted with their feet, and Solaris didn't make the cut.


> At the end of the day, Sun/Oracle has to be able to make revenue from Solaris for them to keep paying those peoples' salaries.

This is a crop out that you're giving on behalf of Oracle.

Oracle does this all the time. It's their modus operandi.

They buy companies/technologies out, milk them for license fees and let it trudge along until it stops making money anymore and either close shop or abandon it to Apache Foundation.

There are anecdotes out there ranging from technologies they've bought to sale representatives having their bonus taken away from selling licenses.

Your statement also just ignore their cowardly act of re proprietrating solaris. They did the same with Java not giving out TCK for Apache open source Java. There are many other instances of hostile actions toward the open source communities.


Yes Oracle did that to Solaris. You are right. But it was already pretty dead before Oracle bought Sun. Which was why Sun was for-sale in the first place.

That's not just Oracle's fault. Place blame where blame is due(java) - but blaming everything on Oracle is kinda silly here. Sun mis-stepped pretty hard in the years after the original .com bubble and what we are seeing now the the final result. I'm shocked it took this long.


Fujitsu was interested, US threatened to block any foreign sale. IBM was interested, a loud mouth blocked negotiations and pushed his golf buddy instead..

Sun made some strange moves toward the end, but there absolutely could have been a product line left if the developer market felt neutral about the buyer and the buyer tried to focus on upsells and professional services. The way Oracle tried to sneak this EOL in is very much evidence of there still being support licenses and professional services money for a few years more.

But it was worth it if the Sun curse took down Ellison. May your foot never leave your mouth again, cloud boy. Now go play golf with network's owner.


Whenever I read about Sun going down, I'm always reminded by the Joel Spolsky article https://www.joelonsoftware.com/2002/06/12/strategy-letter-v/


I blame System V.

I'm shocked, I say shocked, that it took much longer for System V to kill it than you're shocked, you say shocked, how long it took Java to kill it. ;)


I dunno. I used it a little in college in the early 2000s, along with anything else I could get my hands on, and it seemed to me to be user hostile even by Unix standards. When I worked with Linux, *BSD etc. or Irix, things tended to make more sense.

It was difficult to get much experience with Solaris or the other commercial Unixes because you usually had to have particular hardware. Even when Solaris became free and ran on x86, it was picky about hardware. By then it seemed to me that even running BSD was kind of an uphill battle, if you wanted a VPS or something.

I'm not a completely neutral party. Sun totally botched a job interview process with me when I graduated, and I came away feeling that there must be a lot of internal confusion. Their public side certainly gave that impression too. I knew they had cool technology in Solaris, like dtrace and zones, but apart from the names you almost never saw someone who attributed their success to these technologies. And then of course Oracle and the slow death.


I guess you never had the pleasure of using a Pyramid Technology Corporation 90x RISC-based minicomputer running OSx, which supported BSD and System V at the same time in parallel universes, and had patented "conditional symbolic links" to support dynamically switching between the two by changing an environment variable.

https://en.wikipedia.org/wiki/Symbolic_link#Variable_symboli...

>Pyramid Technology's OSx Operating System implemented conditional symbolic links which pointed to different locations depending on which universe a program was running in. The universes supported were AT&T's SysV.3 and the Berkeley Software Distribution (BSD 4.3). For example: if the ps command was run in the att universe, then the symbolic link for the directory /bin would point to /.attbin and the program /.attbin/ps would be executed. Whereas if the ps command was run in the ucb universe, then /bin would point to /.ucbbin and /.ucbbin/ps would be executed. Similar Conditional Symbolic Links were also created for other directories such as /lib, /usr/lib, /usr/include.

https://en.wikipedia.org/wiki/Pyramid_Technology

...And the hardware wasn't all that reliable either!

http://art.net/~hopkins/Don/text/gymble-roulette.html

At least you could run Space Invaders on the system console while it was down waiting for repairs.


Thank you for being "discrete" as asked in the last paragraph from 1986. That was a good read.

Although less extreme, Solaris multiarch was not exactly always a picnic.

From when it started becoming a lot less insane:

https://www.perkin.org.uk/posts/multiarch-package-support-in...


I'm the one who got in trouble for forwarding that to a mailing list that leaked it to Pyramid, but in my defense, Pete did say: "Tell your friends and loved ones. We are considering calling Pyramid to see if they want in on the action (but we'll only call them after we disable the remote diagnostic port)." Better to ask for forgiveness, after you already assumed you had permission. Maybe Pete was rightfully pissed because he didn't get the remote diagnostic port disabled in time.


What was the winning bid? :)


Terrifying!


If you think Solaris is user-hostile, you should really try out IBM's AIX ("Unix by drunk aliens"). I haven't had great experiences with Irix either.


Sure. But AIX is something you are forced to use, not something you opt-in for. All the remaining commercial Unixes are kind of in that boat.

People my age and younger just didn't get much access to commercial Unix environments when we were growing up. Once we got into industry, we found it hard to see the justification for high Unixes when we had experienced good results with low Unixes. So the low Unixes have mostly won the war. This story repeats time and time again in our industry: the freest foo conquers the non-free foo, even if the non-free foo is technically superior.


IRIX was and still is the Bugatti Veyron of operating systems. Any time there was an IRIX 6.5 upgrade, we'd throw a party because the systems were so trivial to upgrade:

inst> keep *

inst> remove incomplete overlays

inst> conflicts

no conflicts

inst> go


In the late 1990s, when I was writing code that needed to run on an eclectic collection of platforms, the worst of them in terms of weirdness and unreliability was Unicos. Irix was probably second, and HP/UX third. As far as I recall, AIX was weird, but reliable. Solaris was solid, and Linux was pretty good, but still somewhat new at the time.


Using Linux and GNU (and to some extent FreeBSD) was such a relief after a few years as an ordinary (non-root) Solaris user.


None of the commercial Unixes survived Linux and the BSDs outside of increasingly specialized niches (well, I guess Darwin did). Oracle was the specific mechanism by which Solaris shuffled off this mortal coil, yes, but the last decade of it's life was not a foregone conclusion when Sun folded. The others are just as dead, but in their own ways.

Nobody is asking for a round of applause for Oracle, but the scorn poured on them for this seems misplaced.


Ellison bought sun then disparaged cloud and killed Sun's cloud ventures only to watch Microsoft recover on selling cloud to a market that no longer wants proprietary desktops..

I was very negative on Sun, but looking at Microsoft fill the gap eventually, I have to assume IBM would have made me eat my shoe if they got the deal instead of Oracle.


> This is a crop out

cop out :)


I always sensed a great tension between the engineers and the business people at Sun, to the detriment of both. The business didn't know how to drive and target sales, and the engineers built brilliant things (ZFS, dtrace, mdb, zones, internal high availability, firewall*) that customers weren't asking for.

[edited to add firewall, that first gen that no-one used because it was so complex]


This is not a good look on the engineers.

Business is fundamentally uncertain, and decomposing failure into avoidable and unavoidable factors is very very hard. This is even harder in industries dominated by network externalities like computer platforms.

On the other hand: if engineering wasn't serving the stated business purpose (things that customers want, at least as far as business can see) but doing semi-academic research on the company dime... well, it's an indirect misappropriation of funds, however cool the results turned out.

Analogy: Sugarcube Industries is in the business of farm built infrastructure and its flagship product is a barn that can comfortably house N horses cutting down on injuries, promoting weight gain by proper thermal environment. I don't know much about horses, bear with me.

Engineering is asked to design such a horse barn. Maybe it's fundamentally impossible to fix heat flows in such and such weather or idiotic in general to try and improve horse health by those means. Maybe business even understood market research wrong, and what people wanted was barns with hooks where farmstaff can hang horse ponchos that will be manually deployed in times of need.

It's a bad look on engineering if instead of delivering the best horse barn on the market, they come up with a three-storey optimized IVF-incubator-horse feeding operation.

----

Unix (a decades-long project whose capital costs are inestimable when considering all the failed companies and free labor) nearly lost to Windows NT because the latter had hooks where sysadmins could hang those needed ponchos.


If you let the product die with a not giving a fuck attitude, of course nobody is going to use it.

For example when was the last marketing campaign that you can remember for Solaris?

Besides, they've started killing Solaris since 2010: http://garrett.damore.org/2010/08/hand-may-be-forced.html

> And Linux and the BSDs are definitely better for those selective code gifts!

AFAIK DTrace and ZFS can't be used with Linux due to their license being incompatible with GPL.


ZoL[1] works fine here on production and LXC+Docker loves it.

[1] https://github.com/zfsonlinux/zfs


ZFS can't be added to the kernel. You need to install the kernel module yourself.

Ubuntu packages it in the default distro, your base install can have ZFS as root with no configuration.

For Debian/Fedora I think you need "non-free" packages added.


> AFAIK DTrace and ZFS can't be used with Linux due to their license being incompatible with GPL.

for debian based: add non-free repo and apt install ...

while installing, there comes a prompt were you have literally no choice but to accept the incompatibility of the licenses (and move on :)


> Is your startup / company deploying on Solaris?

For precisely the reason of Oracle's direction from day1


We are for sure.

We run a number of physical hosts using SmartOS (only 20 or so, but they're quite big (512GB, quads)) and on top of those we use a mix of KVM and zones (both solaris and lx) for various workloads (around 400 zones/vms).

It's easily been the correct choice for us. YMMV.


nobody disputes the capitalist imperative; but it's still worth having the discussion of how messed up the Oracle playbook is.


looking at webserver is silly.

if a company is using solaris, it likely host a Linux kernel and apache in virtualized containers to serve web content.


Bryan Cantrill give a great lecture. I saw him give an overview of DTrace a decade or more ago and remain impressed. Check him out.

https://www.youtube.com/results?search_query=bryan+cantrill

It's sad that we live in a world where a company doing good , innovative and useful tech is gobbled up by a company like Oracle who should not exist and do largely on their ability to con ignorant senior management and even more ignorant boards of directors.

Is there ever a technical reason to use Oracle? If there is what percentage of Oracle sales does it account for? Ie if it really is non-zero I bet it's a single digit percentage. Woeful company from the top down is their reputation and they've earned it.


The Oracle rdbms was at least for a while unmatched. It had programmability, functionality, and tunability that no other database had. If you needed what it provided, and could afford it, there was no real substitute.

Today, Postgres has come a long way, and distributed databases are much more developed. There is probably much less technical justification for using Oracle than there was 10+ years ago.

Also many companies would pay for Oracle and just use it for CRUD operations. That was throwing money away, no doubt.


> The Oracle rdbms was at least for a while unmatched. It had programmability, functionality, and tunability that no other database had. If

That's never really been true. From day 1 it's been neck-and-neck with DB2.


from developer perspective, that's far from true. oracle was a polished product, DB2 was, well... IBM product, PITA in various forms (toolset, easy to use etc.)


Uh, doesn't everything you do with a database reduce to CRUD?

I understand that sometimes you do the composition of many CRUD operations, but this is still CRUD.


Literally everything you do with memory and disks can also be reduced to CRUD, but that is an extreme example to show my point: a DB does a lot more. A well written DB, in this case a good RDBMS, gives you stronger guarantees that data is saved and accessed in certain ways. That by itself is worth using a better one that gives you better guarantees.

But they also provide stronger typing and checking of the data. They provide a programming language neutral way to access the data quickly and efficiently. They index data to make queries on it faster. They do much of this automatically so you think it's all simple CRUD operations, but they also provide ways to explain what they're doing if it isn't working as expected. I can count the number of programs (not DBs) on my hand that I know of that can explain themselves accurately without needing a debugger.

Edit: I don't mean to be annoying. Most people on HN knew this and I'm not assuming you didn't, but while most people just use RDBMS for simple CRUD operations they're losing out on the power that these databases have been designed with.


Amen to everything you and arnarbi wrote.

However, I've come to dislike building business rules using the proprietary languages of the RDBMS vendors. In particular, I use Oracle and have been making a case with my employer to stop creating ties to Oracle by using PL/SQL as our house language. While it provides some efficiencies and can sometimes make coding easier, it can stifle development as easily.

I'm all for expressing data relationships in the RDBMS and using efficiency mechanisms like indexes and cost-based optimization. However, I now prefer business rules to be expressed outside the database.

[EDIT: Corrected anarbi to arnarbi.]


As someone working at a company that decided to write most of their SQL code at the application layer, there are definite tradeoffs. Our application performance suffers because of the fear of vendor lock-in and the flexibility others thought that writing code at the application level would provide.

The question I pose to anyone consider this type of architecture is, how often do you switch database platforms?


The answer is almost never because the cost in time is too high for such a switch. It's the same question I posed 10 years ago. My view changed since coming to my current employer.

I work for a moderate-sized university. The applications I support require up-to-date information in order to test modifications. They are read-intensive with few writes within the database. We can afford only one test database for the entire university. We refresh the database from production only once a quarter, at most. My applications would benefit greatly by being able to switch URL's to the production database in order to test a mod. Since our code, written in PL/SQL, gets stored in the database that it runs on, we can't do such a thing without significant effort: dblinks or modifying package names to store in production for testing or a test schema or whatever else you can think up.

Another issue is that PL/SQL is not a robust language for modern development. Its type-system was designed for strictness, which is great in life-critical systems. But, there is no notion of inheritance and no ability to write generic collections.

To mimic inheritance, you can create objects backed by tables and inherit one from the other. It has the feel of being bolted on and yet another tie to Oracle.

One final issue is that PL/SQL is highly subject to the resource management of the Oracle kernel. Often, the kernel is extremely efficient. But, there are times when you need code running in a separate address space, preferably on a separate server. For instance, one application I wrote is a batch system that has a lot of processing rules built into it. Our database is tuned for OLTP. My application is categorized by the DBA's as data warehouse-oriented. Yet my application has to run hourly throughout the day and compete with resources necessary for the OLTP stuff. Putting it onto a separate server, away from Oracle's kernel management, would more than likely help a performance issue we have.

So, the answer to your question is the one you were looking for. But, my concern isn't necessarily switching database vendors.


I understand the cost of switching now. Was Postgres never an option? Do the uptime requirements call for RAC etc.?


Our Banner student information system is tied to Oracle. My applications all go against Banner data. Given the licensing cost for Oracle and our current round of cost-cutting, if Postgres was an option, we'd probably take it.


Several years ago at an .edu I had to deal with an upgrade from our current system to Banner. I truly feel for you. :)


Never. You have sufficient expertise to make the solution work and enough exposure to the code base to modify core if necessary. Oracle: never an option.


postgre got a lot of adoption being a drop in replacement for mysql a while ago.


>gives you stronger guarantees

Your DB either supports ACID or it doesn't. The term "stronger guarantees" is snake oil. It's either guaranteed or is not. That simple.


Yes, but it's made by fallible people, who may make mistakes in previously good software you update to, and it assumes a computer doesn't fail which can still happen (although very rarely now).


Do people really not mean types, referential integrity, indexes, transactions, queries, etc. when they say CRUD?

If table stakes for a database are more sophisticated than CRUD, what the hell is trivial enough to be CRUD then? Seems like a straw man.


And referential integrity, transactions, and SQL types are only dimly important in a Rails app or something in Node using Sequelize.

Plenty of apps--perhaps more apps than not--use a database as a vaguely typed (MySQL out of strict mode barely gives a nod to them) multiplayer notepad.


Not at all. RDBMS features were critical in getting performance and scale once upon a time. Sharding, access control, authentication, indexed views, fk relationships and other constraint enforcement, cascading updates and deletes, efficient data management with stored procs, caching, etc etc.

My first job was even writing dynamic web apps entirely in Informix.


> once upon a time. RDBMS features were critical in getting performance and scale once upon a time. Sharding, access control, authentication, indexed views, fk relationships and other constraint enforcement, cascading updates and deletes...

Do you think of better ways to handle this nowadays? Is it more effective/maintainable to do this in the app layer?


I think it depends on the situation. In many cases these can be handled at the app level, in particular relationships. If you use any kind of ORM, most of your queries will be on primary keys so there is less need for other indexes. Views are perhaps replaced by pre-processing data pipelines to some extent. I haven't seen database-level users or ACLs for a long time.

But I don't know, I don't really do this stuff anymore. At Google we certainly have storage and database systems with a lot of non-CRUD features (look at Spanner for example).


The product that built Oracle the company, their RDBMS, is frankly one of the worst pieces of "enterprise" software I've ever encountered.

Oracle's only redeeming quality seems to be free golf at nice country clubs paid for by Oracle salespeople.


Open source databases still don't have a developer environment that matches what Oracle or SQL Server offer.

Same applies to their stored procedures languages and deployment options.


See, once I actually started using pl/pgsql, I found it really powerful and a match for T-SQL. Never used PL/SQL though, so can't compare.


And which PostgreSQL developer editor can match SQL Server Management Studio?

Because pgAdmin isn't it, specially after it became an Electron app.


You're not wrong there. I miss SSMS.

pgAdmin3 wasn't a terrible application. Nowhere near SSMS, but not terrible (other than stability... it's shit there).

pgAdmin4 is unusable.


Who actually uses these glorified IDEs? No one I've hired.


JetBrain's DataGrip is getting there for a wide variety of databases, including Postgres.


+1 for DataGrip, I use in nearly exclusively for MSSQL and PostgreSQL (I only fire up SSMS when I need to manipulate some features of the database I can never remember the T-SQL incantation for, because Microsoft has to make shit as obtuse as possible).


Unfortunately the world doesn't run off technical ability though. Oracle is a mammoth because it's proficient at extracting value and profit from its businesses. Don't get me wrong, I agree with you in principle, but it's the equivalent of someone destroying artwork and making a gain from it and wondering how they get away with it when the world doesn't care about art, they care about money.


IIRC, Oracle got a huge boost from US government as it was the semi-official database engine developed (for the Navy?) with taxpayer funds, then deployed (again with taxpayer funds). I'm not complaining, the US probably needed a better DB engine, but it was partly luck, partly backroom agreements that launched and supported Oracle for years. That said, maybe I got my facts badly mixed up.


CIA. (Source: Larry Ellison, as quoted in Business Insider: http://www.businessinsider.com/the-cia-made-larry-ellison-a-...)

Which is why the villain in Charlie Stross's _The Jennifer Morgue_ is "Ellis Billington".


I think it's SQLite that had Navy origins.


You are probably right. I recall reading that Oracle development was funded by a DARPA-style mechanism, but I may have confused it with something. As MrMorden says in another comment it was likely the CIA who funded the development.


> ..employees who had given their careers to the company were told of their termination via a pre-recorded call — “robo-RIF’d”

Every single first person or second hand account I've heard about Oracle makes like a terrible place to work... is this just people being hyperbolic, or is is truly that terrible?


> is this just people being hyperbolic, or is is truly that terrible?

I'm on the outside looking in and don't have any special internal insight, but they didn't just pull this robo-RIF idea out of their ass spur-of-the-moment. Oracle is the kind of place that maintains a robo-layoff system, which pretty much says all you need to know.

"What you think of Oracle is even truer than you think it is. There has been no entity in human history with less complexity or nuance to it than Oracle."

https://youtu.be/-zRN7XLCRhc?t=33m


Oh man, so many good quotes in that talk. "Do not fall into the trap of anthropomorphizing Larry Ellison"


"There is no need to have an open mind about Oracle. That wastes the openness of your mind."


“We make money” - no truer words have been spoken. Hell, I work for a medical billing company and even our company mission has something about helping patients in it (and literally, our company sends bills and insurance claims to collect revenue).


There's a fascinating book by Joel Bakan called The Corporation, which applies the DSM criteria for diagnosis of mental illness to the modern corporation. It concludes that the modern corporation is functionally equivalent to a psychopath (even created that way by law) - an entity whose destructive behavior, if unchecked, leads to scandal and ruin.

Based on the stories I've heard about Oracle and Elison, I've often thought that Bakan might have had an inside informant at the company.

https://www.amazon.com/Corporation-Pathological-Pursuit-Prof...


And you know somebody had to program the robo-RIF script. Wanna bet they had to run it on themselves when they were done?


This is a burner account, so take it with a grain of salt etc. but I used to work at Oracle in a senior management role and honestly the culture was horrible and very incompatible with me (I stayed there for a few years trying to 'work it out' though because I thoughts I was maybe just me and that I was soft etc.).. I worked in middleware and we were over selling average software, people were cut throat horrible to eachother, we spent more time internally competing against other departments and arguing about who'd get which slice of the customer's money rather than working with the customer, providing value and beating the competition. Nobody knows the company mission and its quite a cold and hostile place to work. That was my opinion but most of my colleagues and friends who left felt all the same things. I would NEVER recommend working at Oracle to anyone I cared about even if it paid twice what they earn now.


I left a little more than 5 years ago ... I cannot fully explain how much ... lighter I felt after. I went to work with a cloud (ha!) over my head everyday for the previous oh 8 years of an almost 10-stint. I was contacted by an Oracle employee to recruit me back about 3 years after I left - I fired off a two page email explaining the poor ethics, the horrendous ways people were/are treated ... sadly to no avail, I couldn't get him to leave and get his life back.


Probably depends on where you work. The new cloud team (Bare Metal Cloud) is a great place to work. It has been some of the most fun I've had working for a while now. A lot of the department is ex-AWS and are determined not to bring the toxic work culture across, while bringing across the good parts. So: lots of bright, smart, highly technical people, a careful focus on avoiding hiring "assholes" (for want of a better term). Management who pay attention to deadlines being realistic, pushing back on unrealistic ones and discouraging the "working all hours" behaviour.


RIF == Reduction In Force

(Saved you a Google)


> Every single first person or second hand account I've heard

You answered yourself


robo-RIFs are the new normal.

Support.com is another big offender.


it very much is a terrible place to work


I always thought Solaris was a beautiful and memorable name for an operating system.

Any connection with the Stanislaw Lem novel (or Tarkovsky movie) was always a bit unclear to me... But I guess a book about futile interactions with a planet-sized alien brain that doesn't care about you other than mysteriously experimenting with your memories is a reasonable metaphor for the Unix user experience.


I figure the connection is probably more about being from a company named "Sun," since it's a Latin word and the source of the English adjective "solar" for 'pertaining to the sun.'


And illumos is similarly named (Latin for illuminate).


And Eclipse was similarly named, just to annoy Sun.


I thought so too, but eclipses in real life are always transient phenomena.


Do no look into Eclipse with remaining eye!


Soderberghs version is much more reflective of what happened with the emergence of OpenSolaris and Illumos (not to give away any spoilers but apparently forking is a real thing and it lives on). Tarkovskys movie was such a philosophical drivel that I feel asleep. How is the book - is it worth reading? As I understood it neither of films follow the novel very closely.


The book is superb.

But to appreciate the book have to understand that Lem, in his serious mode (he also wrote comedies and light-hearted adventures, which are quite different), is not very concerned about plot, nor about most things American sci-fi has always been about: There are no heroics, no politics, no space wars, no McGuffins, and there's only minimal world-building.

Lem is an engaging writer, but also a somewhat dry one, and Solaris is a sort of essay on science, camouflaged as a novel: Like his other masterpiece, His Master's Voice, it is a critique of science. Whereas HMV attacks the scientific field pretty broadly, Solaris is more of an investigation into the limitations of the human mind: A scientist visits a far-away research station and comes to realize that all previous research (by decades of so-called "Solarisists") isn't even wrong, it's irrelevant. About a third of the book is spent on a wry summary of all the scholarly research that Solarisists have been performing and collecting in journals. Even after many decades, Solaris has funded many scientists, and yielded endless observations, but also zero insight. (At the time the book is set, most scientists have simply given up, and the station is largely abandoned.) Solaris is an inscrutable alien organism that the human mind can simply not understand. Ironically, even the main character comes to think, towards the end, that he has understood Solaris, when it's obvious to the reader that his conclusions are just more of the same, a reflection of our human-ness.

Of course, both movie adaptations got this wrong, or chose to ignore that aspect of the book. They think it's about people reincarnated from memories, and that it's about love. In the book, the "ghosts" are actually dealt with rather simply and matter-of-factly; the scientists find themselves being tormented by them, and quickly move to destroy them. Lem, however, doesn't bother with the emotional melodrama you find in both movies.

I don't remember what Soderbergh's version aimed for exactly (other than being a sort of Last Tango in Paris in space), but Tarkovsky's is very much inward-looking and concerned with the nature of artifice and truth (the "ghosts" are not real, and neither is Solaris, in a way). Tarkovsky didn't really want to create a sci-fi movie, and so you get something which is not entirely convincing.


Yes, yes yes. Thank you for this defense of one of my favorite meditation-as-novels.

In a similar tone, I actually love the Tartovsky film. A very weird piece of work, and a hell of a thing to experience a few weeks before a summer spent in Russia...


I didn't read the book, but being boring is Tarkovsky's touch, so it sounds pretty safe to say it comes from him.

Also people, please don't downvote parent. It's very fair to say this movie is boring and confusing, and I think it was the very point. Tarkovsky has this style of filming around supernatural / sf things but never actually showing them. Instead, he prefers to explore the anxiety they cause on humans, anxiety which he often represents through long waiting with deceptive conclusions, so I would say that feeling annoyed is quite what is expected from people watching them. It's art, not entertainment.


Tarkovsky's works are generally demanding works of art. They are definitely slow paced and almost boring, but I've always found myself in a much more thoughtful frame of mind after watching his films.

As for Solaris, it is worth reading the book as well as watching both versions of the film -- they ask and explore different questions. The book is about the nature of intelligence and life whereas the films are more about the human part of the equation -- what does it mean to be a human as opposed to be a "replicant"? Tarkovsky is slower paced, but IMHO encourages deep reflection. Soderbergh's version is definitely more watchable and is actually quite thoughtful by Hollywood standards.


We all like different things, which is good. Personally, I have watched the US version of Solaris about 6 or 7 times, and the Russian version twice, and read the book. A planet size consciousness, messing with people - great premise for a story.


I watched both movies. Tarkovsky's version is my favorite but I grew up with Soviet cinema so maybe that's why (though one can argue his films are so outside the norm with Soviet cinema that it wouldn't matter).

One of the keys to Tarkovsky's movies is that he is concerned with human relationships primarily. Romantic relationships, parents and children, etc. Even when he directed "sci-Fi" movies, they were never about rockets, aliens, shooting, explosions.

This quote from the movie, illustrates that well I think:

---

We don't want to conquer space at all. We want to expand Earth endlessly. We don't want other worlds; we want a mirror. We seek contact and will never achieve it. We are in the foolish position of a man striving for a goal he fears and doesn't want. Man needs man!

---

I remember watching this movie and being disappointed because I expected more sci-fi stuff. Same thing with Stalker, his other sci-fi film. Only after seeing The Mirror (my favorite of his films) started liking his other movies.


Stanislaw Lem deserves a much wider readership. Well, I say that but actually he has a wide readership, just not so much in English-language markets.

Besides Solaris, his meditations on life and society in The Cyberiad remain some of my favourite science fiction of all time.


And "His Master's Voice" is one of my favorite books. I totally agree, Lem deserves a place right along Gibson.


I'm reading The Star Diaries, a collection of Lem's short stories from the 1950s. Their absurdity reminds me of the Hitchhiker's Guide to the Galaxy. I just discovered that there was a 2007 German TV series based on the stories, too:

http://www.imdb.com/title/tt0978537/


If Lem deserves a place among Gibson, I guess I gotta pick some up


I recommend starting with Solaris.

The Futurological Congress is also a lot of fun; it's one of his comedies, a satiric look at futurism.

His Master's Voice is advanced level Lem. It's less a novel than a fictional autobiography of a scientist, and while the subject matter is fascinating, it's a bit dry.

The Cyberiad is a classic, but very different and not really sci-fi. It's a collection of absurd, surreal fairytales about a pair of robots. It contains math puzzles and rhymes and lots of weird stuff.

Fiasco, Memoirs Found in a Bathtub, Tales of Pirx the Pilot and Star Diaries are supposed to be good.

I found Eden (one of his early works) to be a little juvenile and poorly written. It, too, is about first contact gone wrong.


I really loved the movie The Congress, directed by Ari Folman, an adaptation of The Futurological Congress.

Like Blade Runner's relationship to Do Androids Dream of Electric Sheep, it was a lot different than the book, but shares some deep ideas, and stands on its own as a great movie.

The scene in the USC ICT's motion capture studio was riveting, with Robin Wright playing a partly fictionalized version of herself, and Harvey Keitel playing her agent, baring their souls to the giant emotion capturing machine.

https://en.wikipedia.org/wiki/The_Congress_(2013_film)

https://www.youtube.com/watch?v=1rNSTizOsws

https://www.youtube.com/watch?v=pPAl5GwvdY8


Hmm. I watched about 15 minutes of it, and thought it was very amateurish, and the reviews aren't great. From the clips I've seen, the animation is also pretty terrible.

As far as I've read, plot has absolutely zero to do with The Futurological Congress. The only similarity is that there's something in the movie called the "Futurological Congress" and that there's some kind of attack on it.

If you think it's worth seeing, maybe I'll give it another go.


Something happens later that I'm not going to say anything about. ;) Give it another try!


Fiasco is also first contact gone wrong and is quite something...like almost an anti-star-trek episode.

It may be an easier entrypoint than Solaris, at cost of arguably not being as "deep" in its reflections.


Thanks for such an interesting discussion! The Cyberiad is one of my favorites, a great way to get started, and very re-readable.

Michael Kandel was Lem's translator for many books including The Cyberiad -- including some brilliant poetry and plays on words!

He's such an excellent translator, it would be interesting to read other stuff he's translated! Any recommendations?

https://en.wikipedia.org/wiki/Michael_Kandel

Kandel is perhaps best known for his translations of the works of Stanisław Lem from Polish to English. Recently he has also been translating works of other Polish science fiction authors, such as Jacek Dukaj, Marek Huberath and Andrzej Sapkowski. The quality of his translations is considered to be excellent; his skill is especially notable in the case of Lem's writing, which makes heavy use of wordplay and other difficult-to-translate devices.

http://www.art.net/Studios/Hackers/Hopkins/Don/lem/HorribleP...

    Oft, in that wickless chalet all begorn,
    Where whilom soughed the mossy sappertort
    And you were wont to bong --
http://www.art.net/Studios/Hackers/Hopkins/Don/lem/Wonderful...

A love poem, lyrical, pastoral, and expressed in the language of pure mathematics. Tensor algebra mainly, with a little topology and higher calculus, if need be. But with feeling, you understand, and in the cybernetic spirit.

http://www.art.net/Studios/Hackers/Hopkins/Don/lem/Femfatala...

http://www.art.net/Studios/Hackers/Hopkins/Don/lem/Lem.html


Soderbergh's version has one of the most gorgeous film soundtracks; in my top ten. Cliff Martinez scored it. Good film, phenomenal soundtrack.


The book is better than both films, though I liked the films, too. And, yes, the films diverged from the book in significant ways. Lem is a fantastic writer, and Solaris is one of his best. I definitely recommend it, if you like cerebral sci-fi.


I haven't seen any of the films, but I loved the book.


I read the book several times. I think it is a good read. I did not fell asleep on the Tarkovsky movie I just hit quit after looking at the road scene at the start for 20 minutes. You can try the George Clooney variant it is a bit better. The interesting part is that both movies have their own interpretation of the book, so it is like having 3 different stories.


The book is good.


I also found the films extremely boring and thought the book might be better. It turns out, the films were very good at capturing the book's boringness.


Beautiful name indeed. Happy memories of trying out Solaris 8 x86 on a Celeron with 64MB.


I wouldn't call illumos "thriving". Commit activity[1] is low for a project of this size (compared to e.g. BSDs) and its hardware support is poor.

Probably the biggest problem is the fact that all existing distributions are undermaintained and unpolished. SmartOS is the only exception, but it's not a replacement for Solaris which was a general-purpose server OS. SmartOS is merely a bare-metal hypervisor.

I really hope that some of the laid-off developers will start contributing to the project. It really needs them.

[1] - https://github.com/illumos/illumos-gate/commits/master


While I'm obviously biased, I think you are succumbing to a kind of cargo culting with respect to both commit activity and hardware support.

On commit activity, we in illumos don't necessarily have the same values as other projects: we really want to get it correct the first time -- a trait inherited from Solaris that we call "FCS quality all the time."[1] As such, commits have to be tested, thoroughly reviewed (four or more reviewers is not uncommon), and (as a practical matter) are more often than not shipping in a downstream repo for an extended period of time before they integrate upstream into illumos. In short, we value quality much, much more than quantity -- and what you perceive to be "low" activity I perceive to be quality activity (and as someone who very much relies on the ability to stay current and deploy into production, high commit activity would leave me nervous).

In terms of hardware support, you need to be specific. Yes, there is esoteric hardware we don't support -- but we in illumos are really focused on the server-side, where there is less hardware variation than you might realize. At the moment, the biggest hardware limitations aren't in the traditional domain of CPU/NIC/HBA/flash/spindle (where we have broad support), but rather in the emerging domain of the GPGPU. And anyone who is interested in engaging in the substantial kernel work in this domain (both to make NVIDIA-based GPGPUs to work in hardware virtualized guests and to allow AMD-based GPGPUs to work natively) should consider reaching out -- Joyent is very much hiring![2]

[1] http://dtrace.org/blogs/bmc/2015/09/03/software-immaculate-f...

[2] https://www.joyent.com/about/careers


This is worth pointing out. To me high commit activity is much more an indicator of poorly designed software than a quality project especially when a project has been focused on solving a particular problem for some time.

This Solaris news is disappointing. I feel bad for those of you who have worked on this project for a significant portion of your career. Hope those who have been working on it find a good home somewhere.

Bryan, do you expect this will affect the direction of SmartOS in any significant way?


For us, with the exception of the human toil on former colleagues (which shouldn't be minimized), this is a total positive: it eliminates the Solaris confusion (which we've seen recently in Go[1]), and it gives us a new talent pool to draw into illumos. While I don't know how many will matriculate, I can say with confidence that it will be significant in terms of magnitude if not in terms of numbers. So yes, I expect it to affect the direction of SmartOS -- and very much for the better!

[1] https://github.com/golang/go/issues/20603


Has anyone tried to boot smartos/illumos in Xeon phi knights landing chip (not the coprocessor card). Does it work.

Also how well does intel's userland network and storage libraries dpdk and spdk, work with smartos.


what is FCS? flight control system is the best candidate from reading the link (which doesn't use the acronym) and google.


First customer ship. Historically it refers to a first release of a new Solaris (any Solaris) version. That version needed to pass all known regression tests and needed to be suitable for use in mission critical production environments.

Any time a commit to the code base would be made, it needed to satisfy that criteria, else Jeff Bonwick (the father of ZFS, who was the gatekeeper back then) would unceremoniously rip it out. Any kind of breakage, even during normal development, was unacceptable. This engineering ethos lives on in illumos and SmartOS, which is why commits to the code base are all about quality, not quantity. The commits might not be as frequent as elsewhere, but can pack tremendous amounts of functionality and must pass both peer reviews and all kinds of regression testing, not to mention have a complete and usable documentation, before being committed. In addition to all of this, as far as I am aware, no commits to the illumos code base may be made without a corresponding tracking identifier.


I believe it's "First Customer Shipment" and it's similar to what Microsoft call RTM "Release To Manufacture". You can see it mentioned in passing at the bottom of this page : https://blogs.oracle.com/patch/solaris-10-0508-update-5-patc...


SmartOS is better then Solaris for servers. It's truly badass. I have an HP DL160 G6 running SmartOS in my basement.

If you learn to use zones (which you should) it can run any workload that Solaris can.

On top of that it also runs native Linux containers and KVM for virtualizing everything else.

It's hands down my favorite operating system.


Well, and as of Friday, of course, SmartOS is infinitely better than Solaris.


I can relate to your statement to some extent. Why illumos is not "thriving" is _maybe_ because it does not have solid general purpose distribution. Tribblix is kinda trying to get there, but I haven't used it for more than few sessions inside VM.

Dream OS for me would be something ala OpenBSD, but built on top of illumos and with all the goods that would come with it.


Wouldn't that be OpenIndiana?


Hardware support is by far the stupidest complaint that prevails when people talk about operating systems. Choose your hardware for your software, not the other way around. There are so many better things operating system authors have to do than to implement thousands of competing proprietary hardware interfaces. Mature support for even 50% of consumer hardware would take a massive team of full time engineers years to pull off, and would be wasted when that team could have been making huge strides and innovations in the parts of the OS that actually matter.

If your hardware isn't supported and you don't like it, get your ass into the code and build support for it.


When you say "choose your hardware for your software", you are assuming the software has already been chosen by the time the hardware is selected. That's not necessarily the case. I already have the hardware, it's been bought years ago, and it works with the software I use. Now if for instance I wanted to evaluate OpenSolaris, but it didn't run on the hardware I have, I would probably pass it up. I wouldn't invest hours and hours coding support for it to run on my hardware, before I were sure I would have a use for it. And that's assuming I could; I do happen to know how to write a low-level driver, but many people who would otherwise be interested on the software might not have that knowledge and/or ability.

Of course, once you already use the software, the situation inverts itself. I do choose only hardware which is known to work well with Linux, since that's the operating system I use, and I have even ported a device driver when that wasn't the case. But that can only happen because, many years ago when I first tried Linux, it worked perfectly with the hardware I had.


I think that this argument holds up, but fails to justify the huge engineering cost of supporting large amounts of proprietary consumer hardware.

If you want to evaluate it but don't have the hardware, try qemu.


What kind of domain are you in that allows you to migrate code to random operating systems with such ease? In any case, I would be skeptical if changing OSs mid-business was the common case. More likely, I'd guess people choose the software stack before the hardware, based on their own experience, advice from others and/or other external factors (requirement to run existing applications, etc).


If you wanted to evaluate it, surely you'd use a virtual machine?


Illumos has a lot of nice features I'd like to use. But my product is a small low power ARM device and I'd run out of money long before I'd finish adding minimal ARM support to illumos.

Things are not as simple as you suggest.


Minimal ARM support would probably be pretty easy. 3 or 4 weekends tops.


Hardware support is by far the stupidest complaint that prevails when people talk about operating systems. Choose your hardware for your software, not the other way around.

Amen to that!


> . Choose your hardware for your software, not the other way around.

Oh, look at Mr "I don't need to use what's laying around" over here.


It's a lesson one learned fairly quickly in the late 1980's and early-to-mid 1990's on the Commodore Amiga. Since then, I've always chosen my hardware for my software, because software is infinitely more important than the hardware: even the most powerful hardware is utterly useless without the software to enable one to get work done.

Always choose your hardware for your software, never the other way around.


My point is that you often don't get that luxury.


I believe most effort moved to OpenIndiana.


> ..employees who had given their careers to the company were told of their termination via a pre-recorded call — “robo-RIF’d”

This sounds awful, and very long from what would be the legal requirements demanded in the country I live in.

What would such a robot call say?


I'd imagine something like "shutdown -h now" or the solaris equivalent


Solaris would understand that, but Oracle's move was nowhere that gentle.

"uadmin 1 6" was more like it (Immediate poweroff, do not even sync disks)


More like:

lom> poweroff

As that is definitely something the os has no cability to block.


`shutdown -i 0 -g 0 -y` would be that Solaris equivalent (init level 0, grace period 0, yes to all prompts)

Solaris and derivatives are great OS's and far before their time in so many ways.


Stop-A :)


Good old killall!


Which behaves differently on Solaris than Linux, of course. Linux killall kills specific processes but on Solaris it forcefully kills everything on the landscape...


It doesn't shut the machine down though, right? Just kills all the processes? I remember reading somewhere that solaris-killall was only a part of the shutdown process.

I remember having a related problem with an ubuntu cloud server a while back. I'd called 'halt' instead of 'shutdown' - they're not the same, and on this machine 'halt' didn't actually send the 'okay, now power off' bit.


I learned what Solaris killall did in a very exciting and stressful way, but that was long ago and to be honest I'm not 100% sure. I believe I was left with a root prompt on the server itself and nothing else.

I remember being disgusted by the various halt, shutdown, reboot commands and so I learned what the various init run levels could do. That worked until I realized that Redhat and Debian set them up differently. At least init 0 is generally the same...


Yup, I learned that it was different on Solaris than Linux on a remote system. Had to sheepishly call and ask someone to powercycle the box.


Exactly what I would expect from Oracle


  HCF


Just ran across this: Scott McNealy's answer to "why didn't Sun sell to IBM":

https://www.theregister.co.uk/2010/12/07/mcnealy_sun_and_ope...

"One of the issues I had with one of the other suitors was there was a complete overlap in what they did and what we did, and I could see 100 per cent of the Sun employees getting fired," McNealy told us. He didn't name names, but he was referring to IBM's bid for Sun. IBM had competed heavily with Sun for decades on processors, servers, Unix, Java tools, middleware, and open source. There weren't too many areas where they didn't overlap.

"At least with Oracle, they weren't in the hardware business, the operating systems business — the places and spaces where I saw chance for some Sun employees to keep their jobs, and that for me was an important consideration," McNealy said.


i.e., AIX and Power systems


> And, it turns out, illumos was born at exactly the right moment: shortly after illumos was announced, Oracle — in what remains to me a singularly loathsome and cowardly act — silently re-proprietarized Solaris on August 13, 2010.

I was very curious about this, and stumbled on further details in https://www.usenix.org/legacy/events/lisa11/tech/slides/cant... on page 15. But read the entire PDF anyway, it's interesting.


An old, old Oracle joke:

Q: On what hardware does Oracle run best?

A: A 35mm slide projector.


Sudden death? Solaris has been dying for at least a decade. An entire company collapsed after not being able to monetize Solaris-based systems. Solaris wasn't killed by a company; it was killed by the market. A company just stopped trying to resuscitate it after years of CPR.

Cantrill blames "executive whims, shareholder demands, and a fickle public," but not even a little bit the product designers and engineers who are so attuned to the needs and desires of the market that they have somehow missed the collapse of a Fortune 500 company due to their products not selling and years later are still surprised that the product is being shut down?


I hate to be facile, but if Sun and Solaris were so great and Oracle was this known bad place, why did they let the Oracle people in the door in the first place?

Maybe sell to someone else?


Oracle paid $5.6 billion for Sun. If someone else wanted to pay that much they could have submitted an offer too. The board cares about maximizing shareholder value, not about the future of any ongoing technologies.

Sun had been in discussions with IBM for months about an acquisition, but I believe the offer was lower and there were antitrust concerns (they did compete directly in a lot of markets) [1]. I suspect they would have been a much better steward of the open-source efforts though

[1]: http://www.nytimes.com/2009/04/06/technology/business-comput...


Yeah, mine was little of a leading question certainly.

Oracle seems like bad guys, but it's really the board of Sun that had priorities other than the health of Solaris and the long term employment of the engineers. Oracle was a known snake [1].

Also, sale of the entire business of Sun was probably only one of many options on the table.

[1]: http://www.gballard.net/lifes_lessons/girl_rattlesnake/


I was a Solaris admin at the time of the acquisition and some of the Sun folks I was in contact with were glad that it was at least not IBM that had bought them out because IBM had always been their primary 'enemy.'


Not a lot of other options. Linux basically rolled the UNIX market.

I remember rumours that MS was in the game, but the fit there was a lot harder to find.


I have read that in the mix between IBM and Oracle they thought that Oracle would lead to less layoffs...


Yes, this is what I remember reading too. Oracle and IBM were competing for Sun, and they sold to Oracle because they felt the employees would be more secure there.

Essentially, Sun's executive team was betting that Oracle had a more stable business future than IBM did.


Solaris, hell, I still mourn the death of SunOS (esp verison 4.1.3) at the hands of Solaris,


Ah... I loved SunOS! Fondly remember my Sun Station 3/80, nothing like that fancy SPARC processor in there, a good solid 68040 like real men used back then ;-)

Mind you, I still use the 'sun' font when booting my linux kernel on framebuffers, I always loved that font.



oooh what is this sun font you're talking about? is it available anywhere?


Indeed, I still remember (just) the jokes about Slowlaris and BloatedWindows...


Twenty years ago, if you'd said that the surviving commercial *ixen would be AIX and HP/UX, you'd have been drummed out of the Unix Beard club.


HP/UX is dead too because HP despite apparently having an x86 port won't be porting it off itanium. Random link about it (http://www.theregister.co.uk/2012/06/08/hp_ux_on_x86_project...). Whether they do a 180 and port it to x86, the fact remains its probably to late, the damage has been done.

That leaves AIX, which at least has decent hardware to run on. But its got the OS/2 problem too, you can write your app for linux, and use the AIX toolbox for linux apps, and port your app. Although with power8 the move to LE linux, makes moving applications/data between linux on POWER and AIX on POWER more difficult.


I was at an IBM conf in 2014 where they were basically telling the AIX guys to get familiar with KVM as it would likely be replacing PowerVM sooner or later. The writing has been on the wall for a while, for better or worse.


Ironically HP/UX may nonetheless outlive Solaris - the claim of its imminent demise being the event that provided the excuse to de-support Oracle software on HP/UX.


For my work (and the 160-thread POWER8 box I got given to run it on by IBM) AIX didn't even enter the discussion, which was sort of a shame. I had no need for it, but it would've been fun; but Linux on POWER with Docker and everything else is surprisingly nice.

Now to get myself one of those POWER9 workstations for home...


Research and fabs. Once HP had gone Itanium, we knew it would come down to Intel vs IBM. Sun never had pockets deep enough.

Winning Enterprise may be a pyrrhic victory, but we'll see how many server architectures are left in a few years.


I'm surprised he is surprised. Everybody knew Solaris was dead. I'm more surprised Oracle still had so many engineers working on it. I guess they where waiting out some SLAs.

Of course Oracle is a horrible company and all but Solaris has been dead for a long time.


As someone who's never used Solaris or looked into its merits I'm curious: can someone comment on why all the nostalgia for Solaris?


For some Solaris has been one of the first UNIX experiences, as it was one of the most popular unices out there. Most university used it before Linux became popular.

For others, like me, who learned Solaris fairly late (2006), Solaris was a testbed for one of the best operating system technologies out there. Modern filesystem (ZFS), dynamic tracing (dtrace), containerization (zones), dependency management during boot (svc) and virtual network stack (crossbow), have been in solaris way before Linux. Most of modern Linux tools, such as eBPF, systap, btrfs, etc are a direct answer to the research done by Sun.

So some are nostalgic as it's their first experience, others, because it felt like a really good operating system a few years ago (despite it's quirks).


> For some Solaris has been one of the first UNIX experiences, as it was one of the most popular unices out there. Most university used it before Linux became popular.

This was my case. I was playing around with Linux, both on my own machine at home as well as with a server at my high school (shell accounts being a perk of joining the computer club). While learning about Linux I also picked up some of the history of UNIX. At some point I learned that you could get a copy of x86 Solaris 7 for for < $50 (I can't remember if this was an educational offer or a developer network offer). But I ordered one and was really excited to get to use a real UNIX. I played with it for a while, but ended up going back to Linux for my own computers. Later, in the last year and a half of undergrad and my first year of grad school, I used a Sun Ultra 5 to do the work for and write my first published paper and do much of the work that would end up becoming my MS thesis and my second paper (with some of the heavy lifting outsourced to an Ultra 10 that a postdoc in the research group was using).

Every few months I browse ebay and look at SPARC machines. Though it's not really practically useful, I think it would be cool to have an Ultra 5 again.


> I think it would be cool to have an Ultra 5 again.

I have an ultra 5 in a closet that hasn't been powered on in the current decade. Was thinking of giving it a spin in light of recent news.


I had an ultra 10 in my bedroom closet and it was impossible to sleep with that thing on. But I don't think it was much worse than HP 9000s or IIRC DEC alphas. Feeling nostalgic now.


That would be fun. Now you have me wondering if I still have those Solaris 7 disks in a drawer somewhere...


If you do and you happen to be in the bay area, I may need to borrow them. :-)

I thought about that machine and I wondered which would be more interesting... Trying to get a recent OS on there or maintaining a more typical 90s setup? Somehow I think the latter is more fun.


I'd agree that the 90s setup would be more fun. Unfortunately I don't think my disks would help though – if I remember correctly, they only had the x86 version of Solaris 7.


My 90s university cohort became part of the dot.com boom, and thanks to their ubiquity in the CS labs, ordering Sun kit seemed like the familiar, natural, and obvious choice.

"Get 'em whilst they're young" - I doubt it was an intentional strategy for Sun, but it definitely helped their sales in the bubble.


I know many people mentioned dtrace, ZFS, mdb.. in describing Solaris' merits but it was not a very good OS in 1997 when I first got my hands on it. It was slow - the SPARC hardware didn't help and ZFS/MDB/Dtrace did not exist back then. But I think back then for Enterprises Solaris was the most easily accessible platform SPARC hardware came with and it had a good run for a short while.

It was only when Linux started to seriously kick its ass that Sun engineers took it upon themselves to do some great work and make Solaris interesting again - I remember they had a policy - if something is slower than Linux it was a bug. I guess it all came in too late (including the Open Source part ) and people did not like being tied to SPARC hardware and CDDL was a buzz kill for whatever reasons.


Ha -- isn't that ever the truth! When I came to Sun in 1996, Solaris was really good at only two things: scaling on SMP machines and not crashing while doing it. Morale wasn't necessarily high (the early history of Solaris had been brutal, and it had only been due to the budding success of 2.5 and UltraSPARC that engineers were beginning to feel forward-looking), and it took us several more years just to get the house in order. MDB came out of this period, as well as important primordial tooling like lockstat(1M).

But as we were getting the OS to work as advertised, we had bigger ideas brewing. In Bonwick's case, it was ZFS, for me it was DTrace, for Tucker it was zones, for Casper it was least-priv, etc. I know that it looks like it was in response to Linux and/or as a result of the dot-com bust (and it's impossible to say to what degree these were contributing factors), but I can tell you that from the epicenter it felt much more like a natural evolution than a competitive response. That said, I know that the competition didn't hurt, and you're certainly right about Linux finally causing us to take small-systems performance and system call latency seriously!


> scaling on SMP machines and not crashing while doing it

Yep - Only ever had one time when it hosed on us (100 people team, many running JVM based applications and some doing load tests on it - IIRC it was 2.6 days.) And there wasn't a challenger in sight as far as SMP goes(h/w and s/w both).


In the 90s, it was frequently referred to as 'Slowlaris'. Yeah, in the early days of Solaris, I definitely used to miss SunOS 4.


Agreed. When I got into IT professionally in 1990 I tolerated dealing with SunOS. It was still BSD'ish. But then when it went full re^h^h SysV I put a bullet in its head for me personally. Never used it again after that. I think the last time I touched a Solaris box was 2001 @ TWA in KC. Then 9/11 happened. It was never anything special in my eyes. I just remember hating having to try to find things and software for it. No package management, everything had to be compiled from source. Shiver. AND!!! They didn't ship with CC! It SUCKED! They unbundled it. Yeah not many fond memories of it.


Oh yeah - you had to buy the compiler separately and GCC SPARC wasn't very good at all - I remember the software we sold sucked at performance benchmarks because we had to compile it with GCC! Solaris though was always a great platform to develop Java/JVM apps on.


Sun absorbed most of the original BSD team the drove the Unix breakout from academia. Their hardware wasn't necessarily all that groundbreaking (starting with 68k boxes like everyone else, then moving to an in-house RISC platform that lagged MIPS in most ways), but as software SunOS basically defined Unix for most of a decade.

Now, really that product (SunOS) is not the "Solaris" that exists today. Solaris was a somewhat kludgey merger of the early BSD code with the System V tree from AT&T, done as much to settle legal issues as for market reasons. But nonetheless when we all look back to the golden days of unix, we see Sun's logo.


It was solid, well laid out, consistent, and it advanced good technology seemingly far ahead of its time. ZFS, dtrace, zones (i.e. containers), FireEngine networking, etc.


dtrace has got to be one of the best and most useful (when you need it) pieces of software ever written, tbh.


I'd add SMF to the list as well which systemd seems to take inspiration from.


Actually, it was SystemXVI that was inspired by the SMF.

* https://github.com/ServiceManager/ServiceManager/ (https://news.ycombinator.com/item?id=10212770)

systemd was inspired by upstart, according to Lennart Poettering.


There was a time, so I'm told by Oracle DBAs, that Oracle was developed on Solaris first, then ported to other platforms. So, Solaris had the best support, and least problems. Bugs were fixed there first. To quote, "If you're going to run Oracle, you might as well run it on Solaris"

I guess that is not the case any more.


This comment is probably more about Oracle than about Solaris as such. IIRC, there was also a time when Oracle partnered with HP and a joint selling point was that Oracle ran fastest on HP-UX. I can't seem to find a link for this. Later, there was also a bitter fight and a lawsuit between the two companies on Oracle dropping support for Itanium based machines from HP. [1]

[1]: https://arstechnica.com/information-technology/2016/06/hp-aw...


> least problems.

I guess if oracle wants those support contracts, they can't have an operating system that doesn't need it!


I've always thought Oracle's primary goal was to keep Oracle engineers in employment.


Oracles primary goal for the last two decades seems to be the finance of racing sailboats.


So, Ferrari, then.


If you are interested, this talk says a lot about what was cool about Solaris, its place in history, the troubles it encountered, and what was wrong with Oracle's approach, leading to little-known open-source forks.

https://youtu.be/-zRN7XLCRhc (entitled: Fork yeah! The rise and development of Illumos)


Sun was a company that very much focussed on correctness. "Good enough", wasn't. Features were delivered complete and solid. The downside of that is that features were delivered infrequently, and they sacrificed a lot of performance to do the correct thing.


Nostalgia-wise, SunOS (later Solaris) was my first peek at the 'real' computers which weren't what I was exposed to at home (Commodore/Amiga, Spectrum home computers, occasional DOS). Likewise with IRIX. Also, as others have said - it was a good solid OS.


A lot of us that got CS and Engineering degrees in the 90's and early 2000's probably learned to program on Solaris. At least at the school I went to most of the CS department was using Solaris and Sun equipment.


It was a solid Unix, it added some diversity to our OS choices, and for a time in the 90s Sun had some really stylish hardware that ran Solaris.


You never really get over your first love.


> As someone who's never used Solaris [...], can someone comment on why [...]

I can't, because I'm not somebody who's never used Solaris.


If you have indeed used Solaris, you could have left a more useful comment. Your creative use of ellipsis is totally cheating by the way: you did not preserve the structure of the sentence.


Oh, but I did preserve the structure. It's OP who doesn't understand how this grammatical construction works, and this particular mistake irritates me so much.


This preserves the structure better:

> As someone who's never used Solaris [...] I'm curious: can someone [...]

Notice that you left out the subject (I), left out the verb (am), and replaced a colon with a comma!


> Notice that you left out the subject (I), left out the verb (am), and replaced a colon with a comma!

No, I didn't left out anything important to the structure nor did I replace a colon with anything. The thing is that you and I were looking at two different sentences, because OP silently edited his comment (I only noticed that now). The original sentence was "As someone who's never used Solaris or looked into its merits, can someone comment on why all the nostalgia for Solaris?"


Fine :) The fact remains: given you knew what was meant, you could at least have answered the question as intended, in addition to nitpicking. (I would never tell someone to stop nitpicking. Well, almost never.) See also https://xkcd.com/1576/


To quote the brilliant Jim Morrison:

"Waiting for the Sun" https://www.youtube.com/watch?v=A0kypyGSKsE

"The End" https://www.youtube.com/watch?v=6FMGYycBAMU

And to quote the also brilliant Jim Thompson (whose Levenshtein distance from Jim Morrison is 5):

    We had Joy, we had fun
    We ran Unix on a Sun,
    But the source and the song
    Of Solaris have all gone.


Does the death of Solaris have any implications for the future of SPARC? Seemed like most of the SPARC hardware that Oracle sells/sold exclusively ran Solaris. I could be wrong about that, though.


Fujitsu as been the largest manufacturer of SPARC chips for a number of years now. They make super computers (and mainframes) with SPARC chips although for how much longer... Their latest major announcement along side Oracle was in May this year.


At least on the supercomputing side, they're switching to ARM: http://www.fujitsu.com/global/Images/post-k-supercomputer-ov...

(no idea about whether mainframes will continue using SPARC)


From what I understand most of the SPARC people got laid of too. So unless Fujitsu really ups it's SPARC game I doubt there is much future for SPARC.


SPARC was released under the GPL license. It might be living on through the LEON processor, at least for a while. It's the processor of choice at the European Space Agency, used for most of their recent satellites and spacecrafts.

LEON pretty neat, you can run it on an FPGA and boot linux on it if you're brave enough.


My only experience with Solaris was on the campus computer lab. It was also one of the first UNIX experiences I had had.

I think what stood out most was the strongly 90s GUI and focus-follows-cursor, which seemed very strange at first. It seemed like an interesting OS with its own quirks


Probably olwm or olvwm. Either supported a -c switch for click to focus.


Very sad. Solaris was my first commercial Unix. Technically it was SunOS 4.x, on a SparcStation 10. This was probably around the time they renamed SunOS 4.x to Solaris 1?

I still have an old Ultra 10 downstairs. It hasn't been turned on since 2004 or so. I think it had Solaris 8?


RIP Solaris, it introduced UNIX to me and I will always remember it fondly.


I remember playing around on a old Sun sparc. It was my first exposure to unix and curiosity got the better of me. I picked up a copy of freebsd and started to tinker with that and read more and more about the unix philosophy.

To this day I still think Solaris was really well thought out. It had a certain rock solidness to it that I can't really describe. Compare to even openbsd or freebsd I always thought or felt it was more stable (regardless of that was actually the case).

I'm sad that so much work went into such a great OS and now it is basically gone to die. These days if you're thinking about creating a piece of software and want it to last open source is probably the only option.


Oracle should open source it back, probably donate it to Apache.


Why? illumos already exists and has been developed by a community and several commercial backers for almost a decade. Oracle Solaris has just been causing confusion for the free software fork (based on the original sources that were published before the Oracle acquisition of Sun).


what's in it for Oracle?


some goodwill. Microsoft earned a lot of with all of the open sourcing they've been doing in the last few years.


Microsoft is clawing it's way back into the agile stacks as a way to sell it's cloud services to small shops. I don't think Oracle really aims for startups or less than $10mil/year companies right now.

They sell on the golf course, not the meetup or con presentation.


To paraphrase Bryan Cantrill, don't fall into the trap of anthropomorphising Larry Ellison. Your lawnmower doesn't care about community goodwill either.


What? I'm saying it matters in the community of developers - and it does.


My point is that "showing goodwill" is not something that makes sense within Oracle (at least that's what I've heard). I agree that acting correctly to a community is the right thing to do, but that doesn't mean it's something that Oracle will do.


I'm curious where this leaves things like the ZFS appliances? They aren't going to use openzfs on oel are they?


I know of a least one major company (fortune 30) that requires solaris for several safety critical systems products (think, for example, but not necessarily, commercial aircraft control systems) with thousands of active installations all over the world. Without it, they can't maintain these systems.


This was the best OS hands down, so sad...


Is there no chance of saving Solaris? If Oracle doesn't have a commercial interest in it, why don't they transfer it to Apache or other foundation? It's not an unusual thing to do, and Solaris devs could make a living by support and maintenance.


Oracle has been slowly killing Solaris for some time. At the same time the community has already saved it - this is what illumos is about. It exists and is open source.


If there is a one phrase takeaway from this excellent essay it would be Brian's terse and apt characterization of Oracle as a "remorseless corporate sociopath."


Corporations do not have remorse and they can not be sociopathic.

Corporations are like ant colonies. They are bodies of people who are bound together in order that the whole outlasts the individual, in order to serve the needs of the group. They are made up of individuals with feelings, but they can't "feel" things on their own. They can reflect the shared feelings of the group, but this is just a reflection, like seeing the image of trees reflected in a body of water.

The author is obviously very upset about the whole thing, but personifying a corporation is illogical (even if the Supreme Court disagrees with me)


"Don't make the mistake of anthropomorphizing Larry Ellison!"

https://www.youtube.com/watch?v=-zRN7XLCRhc&t=33m


Just wondering, at what point could the Solaris name be reused for another Unix distribution?


Without causing confusion? Probably when all current Solaris users are dead or don't care anymore.

Reusing names tends to be a terrible idea.


just a question: was Solaris making any money? If not, then it should be shelved.


It never seemed quite right that Solaris and all this awesome engineering tech from Sun ended up as personal playthings of someone like Larry Ellison.

Edit: grammar.




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

Search: