4 ms·
I like to cover myself with some crazy question and think about them. For example, what would look like the thing that would make people go "oh this looks good
by Philipp__ 10y ago
I like to cover myself with some crazy question and think about them. For example, what would look like the thing that would make people go "oh this looks good enough to replace UNIX".
Don't get me wrong, I am big fan of UNIX, but I hope I will be alive around the time(but I doubt that) when we will see some new thing which will make UNIX feel dated. Now, some of you might jump and say "Oh, but UNIX already feels dated", and that would make conversation on it's own, but I think people say that more because they are bored with UNIX, or they dislike certain segments.
And what breaks my heart is general disinterest in Operating systems with young developers/students (I am student too, but I find those things to be most interesting of all university courses). I see very little people doing OS work today. I wasn't there to see how it was in 80s & 90s, but from what I've read, you had much, much more choice, but their quality was debatable. Why we always consider Operating Systems to be "solved" thing? Is it because the way Von Neumann architecture works, we tend to abstract computer as an entity in the way that gave us UNIX and that we won't be able to discover and make something different but as capable as UNIX without changing our way of thinking about what computer is and how it works? Did we got used to computers as they are, especially newer generations, taking things for granted, and just going forward with what they inherited?
- beefsack 10y agoI just hope that whatever replaces *NIX is still free software. Your computer OS is the last thing that should be controlled by corporate gatekeepers.
- Philipp__ 10y agoThat's not even a question.
- gingerbread-man 10y agoGoogle's Fuschia OS project is intriguing. It's open source, but I haven't been able to find any whitepapers or conference talks about its design or Google's plans for it. The speculation is that they wanted an ultra-lightweight OS for future low-latency augmented-reality applications. (https://news.ycombinator.com/item?id=12271354 https://news.ycombinator.com/item?id=12271354)
- magentaboy 10y agoFor decades, I have challenged people with a dollar bet tha they cannot correctly spell "fuchsia" given five tries. Everybody thinks they can spell it, but I have never lost the dollar. Sometimes I pull out the same bet six months later and still win it.
- softawre 10y agoRelevant username?
- rspeer 10y agoIndeed, I seem to recall from the XKCD color survey that the correct spelling of "fuchsia" was not in the top five. Which makes it a messy name for a project. Though maybe Google can change the spelling by brand-name fiat, just like they did with "googol".
- zrth 10y agoDon't bet against German speaking persons. "Fuchs" mean "fox" in German so fuchsia basically means/sounds like fox-ia in German, guessing they will be able to spell it correctly as it is to easy to miss spell.
- nialv7 10y agoI have a hard time understanding why augmented-reality applications need a different type of OS. I get the low-latency part. But there're already OSs designed for low-latency.
- david-given 10y agoReally, though, Unix is just the UI over the top of the underlying operating system. Like, Minix and Linux work in radically different ways, but they both expose a Unixy/Posixy interface with file descriptors and pipes and the same execution model. Further out, Haiku is even more different; and then there are all the different Unixy front ends to Windows, which is very far from a traditional Unix inside. Then there's stuff like Genode, which is... difficult to describe concisely, but is a capability-based OS designed for running OSes in; they wanted it to have the ability to self-host, so they added a personality for running toolchains in, and of course it's Unixy, because what else is it going to be? https://genode.org/documentation/release-notes/11.02#Noux_-_an_execution_environment_for_the_GNU_userland https://genode.org/documentation/release-notes/11.02#Noux_-_... So, while I agree that I'd like to see a working environment that's not a traditional Unix, I think that's a UI thing rather than an OS thing.
- cmrdporcupine 10y agoHonestly, even Haiku etc. have underneath very Unix-like assumptions about the services and nature of the things an operating system provides, and a lot of that goes with the Posix and ANSI lib-C slant that programmers expect everything to have now. Basically every single mainstream OS out there has the assumption that there are files with filenames as binary/text blobs in a separate storage space from 'memory', and with that ... file descriptors, processes, threads, and sockets. But it doesn't take much imagination to conceive of different models -- what if instead of a file system we have a relational model? Relations/relvars and tuples as fundamental storage units? What if instead of malloc/free and fopen/fclose (and mmap/msync) we have instead some unified notion of allocation/storage with hints/specifications of permanence requirements, performance requirements, type, and intended use and the OS takes care of where to put it (cache, main memory, flash, magnetic storage, network storage etc.)? One can think of any number of possibilities. But the needs of the C-language semantics and the orthodoxy of 50 years of OS/language patterns keep us where we are.
- michrassena 10y agoI find it hard to imagine a world which in a 100 years Unix-derived systems are prevalent let alone running everything from phones to supercomputers. I can't imagine what would come along, but whatever it is will eventually be just as crufty, because that's just the way of things. What I'd really like to know, what is Unix, at the core. I know POSIX defines certain standards, but what can we rip out and still call what remains Unix? If we're being really reductive can't we take it beyond the features that were present in the very first Unix for the PDP7? Is it simply the syscall interface which provides a filesystem abstraction? Do we call an OS a Unix if it only has a POSIX layer like Windows NT? So if we could strip everything out and leave just a few pieces, and still recognize it as Unix, the use of the word approaches meaninglessness. Unixes exist without memory management or process isolation. Think of how fundamentally dissimilar an Apple Watch running iOS is compared to a PDP11. I think that versatility in the terminology itself lets us keep calling something Unix long after it's morphed into something else. It's not hard to imagine replacing system calls with other ways of achieving the same outcome. I think fundamentally, at the lowest level, where the operating system is an interface to the core features of the processor, it is relatively invariant. For truly unique systems, we do have to look at the hardware. Unique operating systems have been tied to unique hardware, like the Xerox Alto, or the MIT CADR, whereas Unix as a generic set of functionality has made many computer architectures useful, but also reduced their variety.
- Aloha 10y agoI dont see a world in 100 years where anything is unix derived - but that doesnt mean it wont be Unix compatible.
- icedchai 10y agoWhy not? We still have software that was written 50+ years ago for IBM System/360's running on a derived architecture today (System z.)
- michrassena 10y agoOf course, there are good reasons for running legacy software, and likely some of that will still be around. How about, I don't see Unix-like systems as the end-all be-all of operating systems such that these systems will be the basis of anything in 100 years. To extend the timeframe indefinitely, is this system the one to last the ages?
- erikj 10y agoI wish someone would try to reimplement Symbolics Genera under an open source license and make it run on modern hardware properly, without VLM. Its design and philosophy is quite different from Unix derivatives, being so object-oriented in the right parts and extensible on the source code level. The user interface was very reminiscent of the notebook interface in Mathematica - output in the listener wasn't plain text as in Unix CLI, but arbitrary objects like bitmaps or graphs or interactive widgets. You could click on any of them and inspect its state or open the source file that implements it.
- richardjdare 10y agoThe Genera terminal, or "listener" was a real eye opener for me the first time I used it. It can display rich text and images, has mouseable elements like buttons and editable forms, and has a powerful incremental online help system. It's almost like a kind of scrolling desktop. The thing I really liked was that the console output was independent of the input line. You can start typing in a command, hit <help> and have the (rich, hypertext) documentation appear in the console above where you are typing in. You don't have to delete everything and type man foo like in Unix, only to have the man page disappear when you quit. Simply in terms of usability the Genera listener craps on any Unix or Windows terminal I have used.
- seagreen 10y agoWell, the browser already did replace Unix for most people=( Presumably we'd be trying to design something good and not awful though, so lets not stop there. But it does give us a starting point: + one click installation of applications + applications are always up to date + applications are sandboxed Then, since we want users to be able to tinker: + the source for all software installed through this mechanism is available + optional binary caches NixOS style so it's not slow And while we're talking about NixOS: + immutable package directory so you can rollback at will And then on to data storage, which is my favorite topic: + defaults to tags instead of a hierarchy for organization + everything is schema'd, so a file saying it's a contact entry or whatever actually has to be that thing + data is immutable by default, so undo and versioning can be built-in (you could still turn this off for certain tasks like video-editing where immutability isn't feasible) I have more thoughts on data storage here if anyone's interested: https://juniorschematics.com/ https://juniorschematics.com/
- marssaxman 10y ago"Applications are always up to date" is a bug, not a feature. Updates sometimes break things, and the inevitable UI changes require adaptation. The last thing I want is an automatic update that changes my tools and breaks my workflow right in the middle of some important project. I'll update manually, when I feel like it and have the time to deal with it.
- pmoriarty 10y agoYou forgot: + web applications almost always have a shitty, slow, ad-infested, dumbed-down interface with bare-bones features + you're at the mercy of whatever company owns and runs the servers that the application is served from, if they decide to end the service or change it in a way you don't like tough luck for you + your privacy and control over your own data are usually forfeited + your data is usually trapped on the servers or difficult to extract and use independently of the web service itself