OS X is as old as the classic Mac OS was when it came out
sixcolors.com
sixcolors.com
Here's what I'd like to see: a fresh desktop OS that actually innovates in the space. Desktop UX innovation has slowed drastically in the smartphone age, and for Apple it's come to a screeching halt (Windows - dare I say - is now the leader in desktop innovation). The fact that OSX is the only modern desktop OS that doesn't have window snapping out of the box is simply shameful. Even Ubuntu has it now, without any Gnome extensions.
Despite all this, OSX still has a huge foothold as the developer platform of choice - especially for web - because of its combination of quality hardware, Unix-ness, and relative stability (though all of those are becoming harder and harder points to defend). Apple should take advantage of this and throw power users a bone. We've been waiting for years on end. Stop working on useless things like the Touch Bar and start rethinking what a desktop operating system can be in 2018.
Unfortunately, what would probably happen if they built a new desktop OS is iOS with mouse and keyboard support, and developers would leave in droves.
Meanwhile, user-controllable per-process (or per-app) sandboxing would provide tangible benefit to all of us. This means, easy controls for accessing filesystem, network, cpu, gpu, memory, peripherals, and other processes.
Most of these controls exist, but in ways that don't map well to the desktop environment. How do I see what that adobe agent is doing? Sure, I can buy Little Snitch, but this should really be built into the OS. Too much of the UNIX model is designed to secure a user's information from other users, which simply isn't a massive concern these days when we often have dedicated workstations and have issues trusting the processes we run as our own user. What if I suspect my TODO list has a built-in bitcoin miner? I should be able to limit its use of the CPU and GPU.
Meanwhile, my editor still needs to read the configs of all my sandboxed apps, and whatever else I want it to access. This isn't necessarily an easy problem, but it's one I have confidence Apple could tackle, especially with mobile paving the way already.
All this time, docker has been innovating on the sandboxing, with mostly positive results. Android, I believe, runs each process as its own user, leveraging the existing UNIX controls better. I'm not sure what precisely iOS does, but it's locked down well enough to cause me immense frustration building stuff for my phone--not exactly what I'd like to see on the desktop, but they clearly have the ability to provide many of the controls I am looking for on the desktop.
I'm sure this would result in an improved UX as a result, TBH.
If not, Google is coming down the road with Fuschia.
Going forward, advanced sandboxing is indeed one of the most important things that I would love to see Apple focus on. Ever since I first considered the possibility that apps can have individual access controls, probably around the time I first encountered SELinux/RSBAC and later AppArmor, I've been wondering why vendors aren't pushing this as an absolute top priority on the security front.
Meanwhile I'm using this:
https://beta.f-secure.com/key/XFence
It's Jonathan Zdziarski's Little Flocker rebranded after he sold it to F-Secure. It works great, but it does admittedly require an upfront investment.
2 caveats:
- Current version only works on Sierra (I'm not touching High Sierra until just before the next one comes out)
- Creating "any via" rules can lead to noticeable slowdowns, while "ancestor" rules, even though they are theoretically more expensive, don't (unless one overuses them, I suppose). It's probably a bug.
Other than this, I've been using it for over a year and have no complaints whatsoever.
I think OSX's UX problems are mainly in the first category - Apple just doesn't care. Windows introduced snapping in Windows 7, nearly ten years ago. It is extremely useful and seems pretty easy to implement. As you say, you can always get a third-party application like the (fantastic) BetterTouchTool. But you shouldn't have to do that for something so fundamental. The very least Apple could be bothered to do is keep up.
It has multiple desktop spaces, fullscreen mode, and "expose". It used to be that clicking the green dot on a window expanded it in developer-defined ways that were often unpredictable, but that got replaced with fullscreen mode.
With window snapping, I can use keyboard shortcuts to quickly position each window and have all 3 windows be fully visible in their own distinct space, without having to remove my hands from the keyboard.
If window snapping 'doesn't provide any benefit', then there must be some alternate method that achieves what I've described above. What is this alternate method?
I'm also hoping Fuchsia will save us.
Time will tell.
Edit: looking up in dictionay, it's actually /fjuːʃə/.
I joke, but it's important to remember just how far behind Windows in basic operating system architecture Mac OS 9 was when Apple launched OS X. Apple absolutely had to replace Mac OS from the ground up. It had no choice.
Is macOS (the artist formerly known as OS X) in the same position today? I would argue no. Most of the "problems" with macOS are either UI complaints like window snapping, or ugly bugs--which are more likely the result of development workflow issues than fundamental shortcomings in the technology of the OS. When Microsoft made the big shift to address their security issues, it was mostly a sea change in how they developed Windows, not a ground-up rewrite of Windows.
No, but it does need to be brought on par with the state of the art in UNIX world — things like process sandboxing, container support, process limits (like cgroups), a modern development environment (like .net is for Windows), better package management (App Store is a bad joke), cross platform development between for iOS and macOS, stability, performance enhancements etc. In fact, I am OK with the UI — it could do with some modernisation and new features, but for the most part, it is very usable.
And the tooling could definitely do with an upgrade. They are still using an ancient version of bash, for example. If they can’t use newer bash because of GPL, they could write their own shell, for example. The fact that something like Homebrew is the go to package manager tells the story of a major gap.
I only noticed this a couple of years ago when I tried to switch to Windows. When trying to find replacements for apps I use daily either there was nothing that had the functionality I wanted or what I found was just terrible. I found tons of win32 crap, or apps that didn't support scaling properly. Even software from Adobe...
Some examples: Alfred, iStatMenus, Karabiner, BetterTouchTool, etc.
After a couple of days and a buggy experience with a Surface Book 1 I returned it and bought a MBP.
A huge point in favor of Windows is the diversity of its ecosystem.
And what's wrong with Win32 per se that you'd discount it as crap? Not everything needs to be 64-bit (and since on Windows the only compelling reason is >4GB RAM usage - it shouldn't).
I’ve contemplated switching to Linux for a while, and keep a laptop with Fedora installed, but every time I seriously consider it I picture losing those key applications and the tight integration with my other devices and I can’t justify it.
I will agree that window snapping should be native. Still, the three dots is overall more consistent and visually nicer to me than Windows' min/max/close.
It may be because of how I use a computer, but I only use Spotlight as an application launcher. Because it's there I will type stuff in the "Search" box in Finder, expecting to filter on the filename of the current folder--instead it it searches "This Mac" and my results are variable names from open source code I've downloaded. Since it also omits results from System files and preferences, like ~/Library, I often use good old locate in a Terminal.
Windows Control Panel is an unholy mess. macOS' Preference Pane search, as well as searching for menu items under Help inside any app, is a godsend.
http://osxdaily.com/2013/03/12/change-finder-search-to-look-...
There is a 'Primary Monitor' setting - this determines the window presenting the Dock and can be changed by clicking and dragging the 'menu bar' idiom between windows in the 'Arrangement' tab in the 'Displays' preference pane
Builds with 'sets' (tabs) have already circulated to Windows Insiders, so it can't be very long until we see them in the stable builds. They even work across apps! https://www.theverge.com/2018/5/8/17318334/windows-10-sets-a...
> Spotlight is the best system-wide search compared to Windows or any third-party Windows tools.
Have you tried Wox? https://github.com/Wox-launcher/Wox
> Devices like audio interfaces and printers are so much easier to get working than on Windows.
Windows auto-detects network printers. I'm not sure how much easier than that it can get.
> The system preferences menu is a lot cleaner and easier to navigate than control panel
That's why Microsoft made the Settings app. It used to be pretty bare, but has gotten quite functional and fully-featured over time, so I think we're at the point where it's unnecessary to touch the legacy Control Panel anymore.
There are legitimate gripes to be had with Windows (not in the least its data collection), but I don't think most of the ones you listed are the ones.
The real questions are whether or not present-day Apple administration has enough vision to (want to) carry out an OS migration and, as you mention, whether or not the vision is any good.
Every WM or desktop combo in Linux has other features I find highly convenient which are strangely missing from Mac and Windows, such as a drag modifier key for windows, which allows you to move a window when the title bar is off screen. I prefer features like windowshading to minimization, too, and it is simple to configure Linux to do that, unlike Mac or Windows. I don’t use the feature, but would surprised if window-snap-to-borders wasn’t supported as far back as KDE 1.3 or WindowMaker .92.
Linux has always been the OS where you can do just about anything you want with enough research and effort, but it still matters what the most mainstream distro offers out of the box at any given time.
Linux is highly extensible and modular, so it’s hard to say what it provides ‘out of the box’, even a given distro. For almost any distro, it’s very simple to start using a different WM (literally 3 steps).
I suppose it’s true that for the majority of users, what the defaults are is more important than an option merely being available as most people will never even read the settings menus.
Apple did something similar when they switched from Classic Mac OS to Mac OS X - a transition which helped them stay alive and eventually bounce back when almost every one had given up on them. The transition indirectly led them the ultimate success of iOS and iPhone.
Microsoft was left behind in the smartphone race because they were late to the transition — the smartphone revolution started when they were still going through it and they were caught empty handed. They had nothing to show when they desperately needed an OS for smartphones. Had they launched the equivalent of Windows Phone 8 in 2009 or 2010, the history may have been very different from the one we know.
But the world has come full cycle, while the Microsoft Windows ecosystem is still relatively young and can probably keep going for another decade or two, Apple’s OS is starting to show its age. It’s not just the age of macOS — it is much older then that. Apple finally decided to overhaul their filesystem, but other things like the kernel, the API etc. still need the treatment.
And a large proportion of the kernel and APIs very obviously go all the way back to early NeXT days; they're really as old as WinNT is.
The maturity of the desktop software "market" is also evident in Linux. Ubuntu has recently choosen the venerable X.org rather than wayland for its LTS release over compatibility and stability concerns. I'd say that's a reasonable choice; after all, you're using Linux for apps that have been in the making for over 20 years, such as Inkscape, Krita, Gimp, Blender, etc.
I'm also not sure what Docker and sandboxing brings to the table (except for developers). Desktop workflows are organized around open file formats and clipboard cut/paste.
So I agree future Apple products will focus on iOS. There's simply so much more money to be made there.
Apple may well get out of the developer game, which seems like a dumb idea given their market share, but I'm neither a finance expert nor an Apple executive, so maybe that's just how the numbers play out.
Microsoft is making a decent-sized push in this space lately, with the Linux subsystem, Visual Studio Code, etc. So I would guess they'll end up taking Apple's market share, which is a bit of a shame as far as I'm concerned.
I bet if they had kept the original POSIX personality and improved it throughout the years, many devs would have not looked elsewhere.
No doubt it would be easy to provide a disable option; just because it annoys you doesn't mean it shouldn't be implemented.
It supports keyboard and mouse snapping for windows with fullscreen, half screen, quarter screen and center presets.
I'll leave my old comment about it here: https://news.ycombinator.com/item?id=12097859
And a link to the script here: https://gist.github.com/spartanatreyu/850788a0441e1c5565668a...
Reminds me of DOS days.
- Peppering the network drive with trash files containing OSX-specific metadata
- Failing to reconnect when the computer goes to sleep, except not really because it thinks the drive is still there, but you have to go through the connection process all over again before you can actually use it.
- Getting out of sync with the file server and keeping the local copies of some files under slightly-different-names. But you can't see the real ones either, even after you reconnect. So all of your path references just break.
etc. etc. etc.
There's an app that will automatically clean those up. Unfortunately, I can't remember the name of it right now. Hopefully it'll pop up on Google for you, if you're interested.
At least not until we have input systems that are superior to keyboard and mouse (and no, touch screen so far is not).
When Apple decided to innovate in the space, they made iOS. Now you could that's not a desktop OS but the thing is, I don't think they care about this desktop/whatever distinction, these are all computing devices, with different use cases.
Meanwhile, Windows, the leader in desktop innovation, tried everything at once, pretending to be a mobile device with full screen windows, then reverting it, removing and adding back the start menu, changing the look and feel to Metro and now Fluent, and even in the technology front there is constant churn. That may be innovative but I definitely don't want to be in the midst of all this innovation in my work computer.
- A fully-accessible file system
- A bash command line
- Tool support. Repositories, code runtimes, compilers, IDE's, etc.
I know there are some all-in-one web-based IDE's that you can work in, which are interesting, but I've yet to see one that could act as a full replacement for professional, native tools. And most of those don't support anything other than web development.
Sadly, Apple has scared me off their legacy software rewrites with their rewrite of iTunes and High Sierra. The releases were either disastrously sloppy (High Sierra) or a complete letdown (iTunes remains hot garbage).
Removing iTunes' persistent nav bar + tying it to Apple Music on Mac makes it one of the worst pieces of software I interact with on a daily basis. I don't want OSX to suffer the same fate.
http://web.archive.org/web/20130301120749/http://www.apple.c...
12 years later, the application is a nightmare to use while Spotify is a joy. I have my fingers crossed that Spotify remains usable, because I don't see them making huge business model shifts.
That said, the focus is clearly much more on iCloud these days, Time Machine feels like it hasn't seen development in years. I was lamenting its slow performance the other day.
I do wish Apple reconsidered their approach to time capsules, providing an appliance you could back up your machines to was genius. It helped family have proper back ups. Sadly, there is no easy everyday replacement in sight. For many the cloud is not yet an option.
In North America yes, in Europe it never really took off outside the first level countries.
I only touch Apple devices for iOS development, and they are shared as part of a company pool.
And I bet African, Asian and South American developers would share a similar opinion.
Later I can cross-check it.
We should all get the picture and migrate elsewhere, I'm afraid. Windows laptops are looking more and more appealing...
I have minor gripes with it, such as new installed apps changing the file icons, but in general most features introduced since Snow Leopard have been mostly noise for me.
Personally, I wish they would just quit innovating for a while and FIX THE DAMN BUGS.
I am far more upset by a feature that doesn't work right, than I am an absent feature.
I wish they’d drop the whole Swift thing too and work on fixing all the frameworks to make them solid and not splintering the dev communities.
Today I have software on my machine that's barely 5 years old and will stop working when 32-bit support is dropped. It will be the largest backward-compatibility purge in Mac history.
Now, there are plenty of caveats:
There was a Mac OS X public beta.
The funeral for Mac OS 9 wasn’t held until 2002.
Classic Mode continued to function within Mac OS X
until it was removed in Mac OS X 10.5 Leopard.Carbon lived until July 24, 2012. Including it as an "LTS" facility, Classic Mac OS lived 10,395 days.
By comparison Win NT (if you include Windows 10 as I do) is 9083 days old and counting.
Concurrently, the environment provided to developers ranges from stagnating to degrading.
The solution to both problems is exactly the same: separate and silo bundled-app development away from the OS and make sure they dogfood the entire process, right down to having to use the EXTERNAL bug reporting system and Apple’s external tools for App Store updates, etc. Then, give the internal app teams at Apple massive superpowers in terms of prioritizing changes to developer tools. Overnight, those ridiculous bugs in Xcode would go away, App Store submissions would be less bureaucratic with superior tools, bugs would be responded to, APIs would be more sensible, etc.
What the author is saying is that we should be coming up on a new chip for the Mac pretty soon, and if history is any guide, we may also be upon a brand new OS.
That being said, I don't think we'll see seismic shift, unless you count the possible unification of iOS and MacOS a seismic shift.
If anything, I would interpret this to mean that a new OS is further off than the chip--the transition from 68k to PPC was not accompanied by a major OS change; that came with OSX several years later. Same with the transition from PPC to x86: snow leopard was notoriously "boring", and we're still on an os distinctly similar to snow leopard.
Meanwhile, both iOS and ARM were borne out of necessity. I'm not sure how to figure them into predictions of the future here.
https://en.wikipedia.org/wiki/Taligent
Unfortunately the development efforts of Taligent failed, which led to the equally-doomed Copland project, which led to Apple's purchase of NeXT. This saga lasted around a decade.
This doesn't feel like the same speculation that you read?
I imagine Apple is working on its universal OS for all its devices, but maybe waiting for the switch to ARM on desktop.
Google is working on Fuchsia to apply all it has learned from Android and Chrome OS. I think it will be a hit. Google has got really good at making products for users and devs alike, but Android is a mess because it was never written from scratch.
https://www.youtube.com/watch?v=ghdTqnYnFyg
It's 2018, 20 years since Apple first announced Mac OS X at WWDC 1998 as a change from their original Rhapsody strategy. The 20th anniversary of the actual release of Mac OS X for consumers is approaching in a few years.
Now, I still believe that there is plenty of life in Mac OS X, and I could see it easily being usable at least throughout the 2020s, provided that Apple maintains it in the meanwhile.
However, I definitely wouldn't mind a new desktop OS. Let's face it: modern desktops such as Windows, Mac OS X, GNOME and its derivatives like Cinnamon, and KDE are all based on the GUI paradigm developed at Xerox PARC for the Xerox Alto workstation. This paradigm was further developed by Apple for the Lisa and the original Macintosh, and it has been further refined by NeXTSTEP, Windows 95, and early versions of Mac OS X. However, there are other GUI paradigms that haven't been tried in desktop environments outside of research labs and niche environments. For example, Xerox PARC also developed the Smalltalk environment. While it is commonly thought of as a programming language, it is more than just that; it is an operating system running inside a VM where everything is an object. This environment could easily be used to write full-fledged applications that also support message passing through a REPL. It is possible to build a system of GUI applications that are scriptable and composable through Smalltalk's message passing system, thus combining the usability advantages of contemporary GUI applications with the power of the command line.
There are other features that we don't have yet that can be added to a new operating system. For example, we came close to having a database file system available for the desktop when Microsoft was working on WinFS over a decade ago, but unfortunately it was cancelled in order to get Windows Vista shipped faster. Having a semantically-rich file system would be a very nice thing.
At the same time, though, given that the iOS platform is Apple's major revenue stream, I am concerned that the days of the Mac are numbered. I feel it is Apple's dream for everyone to be using the closed-down iOS instead of a general-purpose OS such as macOS. I feel Apple has been preparing pro Mac users for this transition by deliberately neglecting the Mac Mini and Mac Pro lines and by turning the MacBook Pro into basically an expensive, "blinged-out" MacBook Air Plus, signaling to pro users that the future of Apple won't include them (although the announcement of the 2019 Mac Pro might be contrary to this view).
All of this is to say that I would not be surprised if we see a new OS from Apple within the next five years, but I'm concerned that instead of seeing the next step of general purpose desktop computing, we're going to see a scaled-up version of iOS instead, which would be disappointing, especially if general purpose desktop computing is relegated to Windows and desktop Linux. I'm of the opinion that we do need another non-Apple general-purpose desktop OS, at least to hedge our bets in case Apple goes all-iOS and to avoid the situation where Microsoft has a monopoly on commercial general-purpose desktop operating systems.
The proliferation of Internet access has changed the game in this regard. Back in the 80s and early 90s, compatibility issues among exotic PC systems led people to adopt only several types. But now as long as you can communicate and your system has a web browser...
First of all, you can observe a drop-off in quality (-control) with every new upgrade. OSes should be stable and not layered with new destabilising os-features every year. Since Tim Cook took over, the apple products were mere Box'es and not new new internets. I don't think they will come up with something "seismic" big.
If windows had a sensible terminal environment and real package manager and i could use that, great. And not some hacky workaround. And no, powershell is not sensible.
I do like mint and ubuntu, but office productivity software is on linux terrible on linux envs imo.
Both were releases on a decade-plus-old codebase, and had features (Carbon, e.g.) aimed at migrating legacy users from DOS and Mac. IIRC, it did have some differences that made it incompatible with NeXTstep (like DPDF), but I remember getting it and thinking it's basically the same OS with some Mac emulation and a different skin.
I’ve long been bummed out that there’s never been an open NeXT clone gain traction. GNUStep, Etoile (built on GNUStep), and Cocotron all tried to recreate the magic, but languished in obscurity.
Back when Apple’s fortunes were down, betting on GNUStep would have been a decidedly quirky decision. But having the benefit of hindsight, I am convinced that had GNUStep been ready to ride Apple’s ride back to glory, we’d have a greater Linux user experience today, where popular software was a recompile away from running on both macOS and GNUStep.
Keeping pace with Apple seems impossible, given the glacial pace of the improvement and development of ProjectCenter and GORM.
It's not dead, in any case.
I feel that there was a pretty big technological change between "Rhapsody" and "Mac OS X", but the other name changes were not accompanied by comparable changes.
I don't think the code ever really sat that dormant, as they were working on 88000 based machines for the NeXTRISC before that was canceled, and sold off to Cannon who eventually shipped a dual PowerPC 601 machine based on the NeXT design that at the time was to include dual 88010's.
There clearly had been some work on PowerPC back when it was first announced as some early code made mention of a MC98601 aka the first gen PowerPC.
I've always admired apple from afar. I wish they cared More about lower rung use cases. If apple came out with something to compete with chromebooks, maybe $500-600 range, I'd be the first in those ridiculous lines.
Tangent: what's the outlook for swift on the server? Is that work group doing any work lately? Hell I heard swift was investigating memory safety as a future feature, is that still a thing?
I think with some of their software talent, swift could really make a strong case for swift>rust in learnability if it could make the same claims about safety and correctness.
Why do the coolest things always get so fucked up? The swift website is absolutely littered with old code that doesn't work, or at least it was the last time I bothered to investigate it.
They're sitting on such an absurd amount of cash, they oughtta do that Think Different thing and shake the scene up a bit more. The wait-for-google-and-then-fix-whatever-they-fuckup is getting stale.
I guess they don't care what I think since I'm not really an apple customer. But still.
Oh apple. Someday.
Regarding swift on server, I think this could be fun. Will try it some day https://vapor.codes/
I hope they don't, companies with declining margins look to make it up in other ways that aren't always in the customers interest.