It’s amazing to me how much more usable those UIs are. Not to mention how much more performant they’d be than modern Electron garbage.
But forget about Mac OS 9, we don’t even have native OS X or Windows interfaces anymore. Doesn’t help that Apple dropped the ball on following their own UI guidelines.
>we don’t even have native OS X or Windows interfaces anymore
Wait you can't just call the respective APIs anymore? I thought the reason people don't use them is not because they aren't available but that 2 different codebases would have to be maintained hence things like Electron.
Oh ok thats good. The OP gave me the opposite impression. Other than the boutique software companies that specialize in a few Mac apps, I don't see as much Cocoa anymore and thats a shame.
I agree. You can't find up to date tutorials anymore. I have done enough in the past that I can usually cobble my way through it since I have done a bit of Cocoa programming over the last 18 years -- I don't know how anyone would start from scratch these days.
There's isn't a "the respective API" any more for Windows, it seems. Win32/ATL/Forms don't get the new widgets and design language (just a bit of lookalike styling). WPF, UWP, WinUI 2/3 are all bundled toolkits that mimic the Windows' fashion of the day to varying degrees.
oh ok so yeah, I'm hoping people can continue to write the standard Win32 apps. They can be quite quick. The OP gave me the impression that Win32 was gone. Who cares about the Metro or whatever they have now look. Yuck.
Native Windows - Win32 - still exists, but all the trendy "modern" stuff seems to be avoiding it, probably because the web stuff is easier to find developers for.
Everything goes JS (and derivatives) now. At some point we decided to throw cores and RAM at the problem instead of optimizing for speed with limited resources in mind.
I'm no fan of what HTML has turned in to, but Win32 is hard to find developers for because it's an atrocious pile of crapola that nobody in their right mind touches with a barge pole if they can possibly avoid it. Even Microsoft don't use it anymore, except of course, all the places they do still use it because they never bothered upgrading their apps.
Amazing and bad reputation are not mutually exclusive. Electron is an impressive engineering accomplishment, but it also has some dimensions that not everyone likes. Electron is great if you're a developer who wants to write apps in javascript+HTML+CSS and put developer preferences over preferences of users. Not everyone agrees that the decisions behind Electron and using it are good decisions.
> Electron is great if you're a developer who wants to write apps in javascript+HTML+CSS and put developer preferences over preferences of users
I’m so tired of this. Sure, the case for Electron is that it allows leveraging web-targeting code and skills, which makes more devs able to work on desktop software give the current prevalence of web skills and makes their job easier given the prevalence of web-targeting code that can be reused. But this is in no way user hostile: it means the cost to develop software with any given function is lower in developer hours (and, for commercial entities paying for development, actual $$), which means it is more likely to get done than otherwise, and that it is more likely to be a sustainable proposition to maintain on an ongoing basis. Given that users generally have a preference to have software with the functionality they desire developed and maintained, this is conducive, rather than hostile, to user preferences.
It’s hostile to the preferences of developers who have emotional attachment to particular nonweb (or just emotional hostility to web) technology, who are left in the dust, in terms of meeting users actual needs, by those adopting Electron. Or, less emotionally, it is hostile to preferences of developers who have a substantial investment of time and effort into building marketable nonweb skills in desktop app development, and are finding those skills marginalized in the marketplace by adoption of Electron.
... and so do I, as someone supporting a company, looking at why users complain that their shiny new M1 laptops' batteries still sucks. I can tolerate Electron if it's battery-efficient, but everytime we analysed which apps are battery-hungry? Electron apps always tops the list. Not to mention genuine UI concerns like why are some developers insisting on a thin grey font that's genuinely unreadable? And even if it has a decent UI, navigation outside of a mouse-keyboard duo is never there. We have to file multiple bugs on behalf of disabled users because most web devs don't care about accessibility.
In a sense, I wouldn't complain about Electron if these three problems (battery life, genuinely user-hostile UI, poor accessibility) didn't exist (or are few and far between that it became an annoyance instead of being monsters), but here we are. Again, I don't want to waste dev time on inconsequential things like most UI toolkits are insisting. I've worked on apps with Qt and it genuinely sucks, and web development has been genuinely a better development platform (still sucked, but much less), but developing an application predicates on that application not being user-hostile, and Electron (and to be honest, web in general) doesn't encourage the developers to think about these issues.
People say that but I have yet to see a C++/Qt app take more time to develop than an Electron app. Case in point: ripcord, a discord AND slack client, developed by a single person in this stack. In the mean time Slack has rewritten their Electron app from scratch, what, three times for the performance problems it has ?
So am I. Not user hostile? Since when is it acceptable to assume that users don't care about efficiency? People care about battery life, people care about responsiveness, and people care about interface consistency. You may be tired, but I'm happy that slowly the tide is turning and people are less friendly to things like Electron that put developer and business priorities before anything else.
I also don’t get the argument that it is a good thing for users to make desktop development open to the glut of web developers we’ve created. Again, that is a developer- and business-centric argument. This feels like saying we all should accept a lower quality of software simply to match an average skill level for a large collection of available programmers. Is it really unreasonable to set our expectations of quality higher than that which an average web developer can (or wants to) achieve?
Maybe people have a preference for software that conforms to a set of often well-thought-of platform UI standards and interoperates seamlessly with their other applications instead of Web applications that don't conform with the platform's standards. Part of what made the Mac and Windows attractive compared to MS-DOS is that the former had UI standards that made it easier for people to use new apps and to interoperate among apps, while in MS-DOS each application implemented its own UI and things like interoperability and accessibility were challenging. The Web is a throwback to MS-DOS-style development, where there are no standard UI guidelines. It's one thing to deal with this when using remotely-hosted Web applications, but it's another thing when an increasing number of desktop apps are essentially locally-hosted Web applications.
The Web is fundamentally a different platform from modern desktop environments; writing desktop applications as if they were Web applications running on beefy servers leads to bad user experiences, just like how Web applications that do not take into account network latency, security, and other aspects of the Web that don't normally apply in native desktop applications leads to bad user experiences.
I'm not saying that Electron is automatically bad. Cross-platform GUIs and other tools have existed for decades due to their labor-saving characteristics, and this is a recurring controversy (for example, Microsoft Word 6 for Macintosh was widely panned by Mac users due to its feeling like a simple port of Word for Windows instead of a tailor-made Mac application, and certain Java GUIs don't fit with the underlying platform's UI standards, though Java does support native UIs). However, I think it's a bad thing for software vendors and developers to take the attitude that users should be grateful for whatever they release, though I admit there is a thin line between expressing dissatisfaction and acting entitled.
People don't get much of a choice. It's a bit like saying people must love Joe Biden because they elected him, which could only be true if you ignored a whole universe of other factors.
Of course it is user hostile!!!!
I should not feel like an intel i-7 processor with six cores and 12 threads in a machine with 32 GB of Ram is sometimes not enough to run a fucking chat application without it stuttering; or ramping up the fan like a fucking 747 during take-off should I decide to use to have a video call on this application.
As a user, I have yet to find an electron app I have tested and kept using.
There are many tools available as electron apps that I have to use for my daily job that I prefer running in a browser window instead of the buggy electron app such as teams or slack. And I don't see any downside in using the website instead of the electron app, quite the contrary in fact. Even on mobile there are some tools that I prefer to run on the browser, mostly for better control of my privacy.
If you develop on the web, develop on the web. If you want to build desktop app, develop your apps like desktop apps. Users will thank you.
> Electron is an impressive engineering accomplishment
...it is? How? It's just a web browser hacked up to allow shit we decided it was a terrible idea to allow a web browser to do just so it can be a GUI for a local application that's probably an order of magnitude or more smaller than it is.
No, shoehorning a hypertext document viewer and a bunch of macros into being an application has never been a good idea. Imagine building an app in Word with macros written in its version of visual basic and then being serious about it and distributing it as your official and only desktop experience. That's how I feel about all this electron crap.
Example: On Fedora, I'd install the Arc Theme + some fancy icon pack. The majority of the applications uses the operating system's theming system, which makes all applications look the same. The same buttons, same spacing, same font sizes/types, same colours, same systems shell/window decorations, scroll bars etc. It all behaves and feels native. Most of them also uses the same keyboard shortcut system and accessibility features. Point is, the whole experience is very consistent. They use a tiny amount of disk space and a tiny memory footprint while running.
Problem is, the moment I install any electron/web-based app (Slack, VS Code, Gitkraken, Spotify, Steam etc), they look out of place. They do not conform to the rest of the system. They ignore basic guidelines, spacing is all different, different themes, no native window dressing/menu's, most don't use the tray/notification system correctly etc. Basically they stick out like a fat wart.
Nevermind the resource usage and general laggy UI from these application. Yes, they lag and are slow on all OS's and yes we can notice it. Web tech is cool for what it is within the scope of a webbrowser, but outside of that it is a steaming pile of ...
In the 90s and early 00s it was a sign of professionalism that applications used native OS widgets and respected the theming choices of the user. Sadly, that all went away (about the time the iPhone was released?) and we entered a UX dark age where users only ever get at most 2 choices about theming and UI is considered part of your brand.
People used to say one of the reasons Linux Desktop was shit was that it had so many different look-n-feel's for its disparate applications. Now it is one of the most consistent. People used to say one of the reasons Java was shit because it didn't use native widgets[0] and looked out of place, but now that's the default even for native software. Now we live in an age where developers loudly proclaim their love for bundling an entire web browser as their UI, nothing even remotely resembles the native look-n-feel, and they consider adding a bespoke 'Dark Mode' theme some kind of actually noteworthy achievement.
If personal computing survives the next few decades, future historians will judge us very poorly.
Electron is amazing for developers; less so for the end users.
You get faster iteration and more features at the cost of humongous system resource usage. Running several Electron applications, each with their own slightly-outdated Chrome engine, is terrible for battery life and available system resources, but you do get fully-featured applications in no time.
If your users run 32GiB of RAM and at least 8 cores, then Electron should probably be the obvious choice of platform. For most applications, though, I don't think this approach is necessary or even a good idea.
It can also download and execute arbitrary javascript from the web, outside of a normal browser sandbox, effectively turning every app into a potential vector for system takeover, because it is RCE by design.
Speak for yourself. As a user I love Electron apps for all the features they bring out of the box to developers. The alternative to a full featured Electron app is not a full featured native app, it’s no heavy client at all, because almost all the native frameworks suck in more ways than Electron does.
Also I don’t give a crap that my applications all look the same as long as they make sense. And most of the criticism of « buttons that don’t look like buttons » seem just like hidden nostalgia to me, I’ve never seen a button and wondered if it was a button. There are tons of discoverability issues in modern design, but the look of buttons is just not a problem.
They’re arguing: better for developers is better for users. Developers get to spend more time on building features and less on the accidental complexity that comes with supporting all of the competing platforms and frameworks.
Yup, as a developer, being able to build a UI once and have it work pretty much identically on Linux, Windows, and MacOS is a huge time saver.
But whenever I actually use an electron app; the startup times and half-baked keyboard support (I know this is the dev's fault, not electron's, but it is much more common on electron apps) always remind me that this isn't the best way to make desktop apps.
This intense hatred for Electron has always baffled me. I thought the community in general was in favour of allowing people to create whatever they wanted, however they wanted. More people making software is good! And the community grows because of it, and everything is better. But every time an electron app gets promoted somewhere (HN/Reddit/Twitter/wherever) there is always _someone_ yelling at the developer because they decided to use Electron.
As a javascript developer, I'm sorry that I don't have the patience/smarts/skills/time to learn C++/Qt/GTK/WxWidgets/etc. HTML/CSS/Javascript is all I know and it's probably all I will reasonably stay with for a while because of various circumstances. And Electron lets me use the knowledge I already have to make things.
That's not to say that Electron doesn't have all these issues, of course. But I feel that this policing of how people write their own software (especially when it's something purely done as a hobby and/or just to share something with people) is getting somewhat out of hand.
Here's a hypotetical/philosophical question for the community in general. Given no other alternatives to do X, what is preferable? An Electron app that allows people to do X, or no app at all?
No app at all. Because that leaves a gap in the market for a native alternative.
That means a potential reward for the patient/smart/etc developer who knows native code, which means a better class of developer, which in turn means better software.
And it means more native apps for the platforms, which means a better class of app.
In short, everything is not better when Electron is everywhere. It actively damages the ecosystems of the platforms that host it.
Not the greatest UI, but you can show 2 conversations at the same time by command-clicking on a person/channel (or right clicking on a second person/channel and choose "Open in split view").
incredible work (really) but this is obviously not a realistic user experience: I can tell what's clickable on the screen easily and things are generally too consistent and simply make too much sense
I mean, neat concept, but really lacking in the user hostility that today's users demand
I don’t get the “I can’t tell what’s clickable” complaint. I just opened up spotify and it’s obvious what’s clickable and what isn’t. Same for gmail. I don’t remember having any issue learning how to use these either.
Stimulates a bit of an impulse I had as a teenager and wanting to experience that on my PC, or get into BeOS or QNX, based just on witnessing screenshots and something deeply striking my fancy. Before I got into Linux (which was before I got a Mac in 2006), I used WindowBlinds and LiteStep to do exactly that, and more. I used to really care more about certain trappings of my experience, and I didn't have any actual work to do. Now I settle for whatever in my 30s.
Let's see, what is my first extant contribution to the Internet… oh yeah, I thought this was handsome. It was a theme for an explorer.exe shell replacement.
I know my vision is still good, but there is no debate that my vision back then was a lot better. And focusing for tens of hours certainly wasn't any kind of effort.
Linux with the PREEMPT_RT patchset is pretty much a true RTOS nowadays. Though you still need to be careful in developing userspace to achieve true "hard" time bounds, and that's largely incompatible with a "desktop" workflow.
I used BeOS as a daily driver for a few years back in the day. It was a great OS, wonderfully smooth and powerful. But I was forced off of it because of the lack of applications. Applications make or break an OS. Microsoft had to learn this lesson several times already (windows phone, windows rt).
I enjoyed this, though the pull down menus at the top are shifted down a little further than the real thing and spaced a little far, and the labels on the desktop icons weren't quite that fat. Hey, when it comes to the uncanny valley, it's the little things.
But the apps ring true. The splash screens are a nice touch.
It might be an unpopular opinion (in general), but OS 9 was actually beautiful. The design elements might look clunky by today's standards, but they were quite self-explanatory & functional, as compared to current macOS flat designs. I am stating purely from an angle of being friendly to an absolute beginner (e.g. a kid).
I was in middle school in 2001 when I saw a paint program (MacPaint?) on an oyester iBook - It was way more intuitive and engaging than Windows counterpart. I think late Classic Macintosh (v8.6-9) to early OSX (~10.8) had a very good aesthetic balance between form & function.
My child seems to intuitively get modern UI design, and doesn't seem to need many affordances to understand what to interact with or not. I think people who say older designs are better for beginners may be applying some retrospective thinking.
Let's not underestimate neuroplasticity. Children can figure out almost anything. If you want a true test of UI intuitiveness then you ought to give the computer to an elderly parent or grandparent.
Anecdotally, my 70-year-old father and several of my elderly uncles & aunts had a much easier time figuring out Classic Mac OS. Modern macOS and iOS are much more complicated. While they still use these systems, they do so in a much more superficial way and they tend to exhibit what (for lack of a better term) I would call a "fear response." That is, when attempting to do a novel task they refuse to experiment and instead resort to asking for help immediately. Classic Mac OS was much better designed to encourage experimentation and avoided surprising the user (in a negative way) as much as possible.
You can take my post as disagreeing with the GP as well on the kid test. Kids have been the ones figuring out computers and doing tech support for their older relatives essentially since the dawn of home computing. If a kid can’t figure out how to use your computer then it’s probably irreparably broken (kids figure out how to fix computers too).
I’m not sure that giving the UI to the elderly is a truer test. Whatever difficulty they encounter, it’s just as likely that it could be because a previous experience with a different OS is shaping their expectations, or many other factors. It does seem that “time from 0 to successfully performing a novel task” is a good metric among many.
I don't really know what you're trying to say, but my child seems absolutely able to pick up modern UI design, including the hamburger icon and others, and use it very happily and with joy.
Kids would be able to pickup CLI if that were the only way to start their favorite game. Kids also share knowledge even when your attention is away. We had a drive to learn MK combos and used that to win fights, but as adults, barely anyone in a random-100 group knows how to :q Vim.
Give your kid a phone with zero interesting activities in it compared to other toys, and he/she would “pick” nothing out of it.
> Kids would be able to pickup CLI if that were the only way to start their favorite game
This is not merely hypothetical! Like many on HN, no doubt, I learned at least how to launch and close my favorite toy programs from the DOS command line before I went to kindergarten.
Not sure why the fixation on "kids pick it up just fine". The OS caters to a wide variety of people. If kids start with these design elements, by observing what parents do, they will do just fine. A similar argument can exist for why CLI when most devs can simply use graphical apps with same functionality. There is a subjective choice to what tool is most comfortable to use.
The reason this MBP was running 10.7 is because my elderly relative found it jarring with the new iconography and context menus (hamburger icon, share icon etc). This MBP was hard reset to its initial OS. For many people, including my relative, the glass effects and flatter icons were simply too high of cognitive confusion to get mundane stuff working.
The spirit of the comment was to demonstrate usability among absolute beginners. It is well established that people connect with visuals which are descriptive of inanimate objects in the real world. Some people find it comfortable, while some - simply don't and want futuristic interface. There are people who swear by Metro UI till today. This was not an argument for the sake of an argument.
I grew up with a 386 which was locally available. Then Windows 95 & 98. I shifted to Mac OSX around 10.4. I still feel the skeumorphic iconography was simply beautiful. And by saying that I am saying it as a subjective opinion. And an aggregate opinion which I observe, specially among elderly, is that the icons and UI layout is hard to navigate.
Half the "well-recognisable" imagery seems to be of things that are long gone from the world. How many kids these days have ever seen a typewriter, a rotary-dial phone, or a point-and-shoot camera? The "save icon" has long overtaken the actual floppy disk. Many folks are even too young to know that the folder icon is modelled on physical file folders.
You'll find a lot of people, myself included, that point to the 10.6 era as peak OSX aesthetics. I personally prefer "steel and grass," some people prefer space, the specifics vary person-to-person but a lot of people agree on the trend. Skeuomorphism has an uncomfortably high skill floor, but it has an astronomical skill ceiling. With Apple, it shows. It really shows.
In contrast, flat design has a skill ceiling so low that it can turn the most creatively bankrupt troglodyte of a non-artist into a hunchback.
No, growing up was OS9 with lime green highlights on a lime green iMac playing Bugdom. I'd argue that it was still better than flat design, but I would have to concede that nostalgia goggles might play a role in blinding me to how garish it all was. In contrast, the "I love 10.6" crowd extends considerably beyond my cohort in both directions. It's pretty clearly a skeuomorphism thing.
One thing I'll give flat design: it's better than the Fischer Price design that happened between the era of skeuomorphism and present day. Also, it brought dark mode mainstream.
No, the old icons are objectively better. I’ve used iPhones since the iPhone 1 and I still keep the original as a music player. I have to hunt down apps on current iOS but astonishingly they all look somewhat different in the old days, which means they are easier to find. It’s easier to find my way around an old iOS I use once a month than one I use every hour.
Are you a UI Researcher? If you are, your approach to gathering research by rebuking everyone else's opinions seems less than optimal. FWIW I prefer skeumorphic design. Flat design won because it made scaling everything easier. It doesn't need to be this way now that SVG support has become widespread
> The design elements might look clunky by today's standards
They were optimized for the low-resolution screens of that time (hence 'pixel perfect' design was the norm), and there was also no expectation whatsoever of "touch friendly" controls so everything was a lot more tightly-spaced than today. Though the mockup does show how larger widgets could also be integrated quite well in that sort of design.
"Flat design" is a disaster and the latest redesigns are slowly inching away from it by adding some 3d-rendered shadows to try and restore some intuition for "depth". But that sort of fancy, almost photo-realistic rendering just adds more weirdness to the overall "flat" look.
> and there was also no expectation whatsoever of "touch friendly" controls so everything was a lot more tightly-spaced than today
Well if Apple’s Execs are to be believed, touch-screen Macs aren’t in the pipeline, which is aces with me because that’s what my iPad is for.
So given that the preeminent pointing devices on a Macintosh are still the mouse and trackpad, I could do with them tightening up the spacing again and walking back the last 10 years of nonsense.
We don’t have to go back to Snow Leopard, certainly not Platinum; but widgets and theming that are consistent with how a Macintosh is used and the hardware it actually runs on would be preferable.
a lot of them arent available on the appstore (anymore anyways), and the few i tried were.... not that great (like iphone apps with non-resizable windows)...
The original flat designs, Zune HD and the Zune software, Windows Phone 7, Windows Media Center, was incredibly usable.
All those were produced by small design teams at Microsoft, and for, relative to an entire OS, small projects. (Settings aside Windows Phone 7 for a bit, which IMHO actually had very few distinct UI elements.)
Heck Windows Phone 7, to this day, is unlike anything else on the market, It is still going to be more responsive, and look cleaner, than almost anything else out there.
I am not sure why someone decided "flat" means "no button border", that is where I think it all went wrong.
Oh and also people who think flat means getting rid of text! Windows Phone 7 loved text, text was everywhere!
Windows Metro UI was not well received on the PC platform. But it was genuinely a leap forward in mobile space. It was very futuristic and ahead of its time.
The Metro UI that debuted in Windows 8 was an abomination, it violated many of the design principles of the original Metro.
It was born out of Microsoft's fears that Tablets were going to take over everything, but at the same time Microsoft didn't want to invest 100% in a pure tablet experience, viewing the escape hatch to traditional Windows land as being a necessity. Win32 apps were going to be the advantage Windows tablets had over iPad!
So anyway that OS release was terrible.
To this day, Apple being the only company that was willing to go all in on tablets, is the only company with a successful tablet product and tablet software ecosystem.
In retrospect, sure. But back at the time, every tech news outlet was proclaiming the death of the desktop, and that iPads were going to take over the world.
So Microsoft panicked. Windows RT is the end result.
Eventually iPad sales dwindled, it turns out that if you make a really durable product and sell it to everyone, you do end up saturating a market!
Phone screens also got a lot larger, negating some of the need for tablets.
I always feel bad for Zune, because it honestly was not that bad to become a joke; on the other hand, it was crazy late - it debuted the same year as iPhone did!
iPhone (and iPod touch) had an actual WiFi and later apps, while Zune had... WiFi, where you could only connect two Zunes.
There is a nice Win9x style theme for GTK+3 that works quite well IME. And the look is quite faithful to the original (with some minimal changes for, e.g. modern headerbars).
> Low-res bitmap icons, bitmap fonts, no antialiasing, no composition, etc.
I don’t think that high-res icons, vector fonts, aliasing and composition meaningfully effect today’s hardware — we can and do have GPUs barely sweating on even much more demanding functionality and these are mostly parallelisable/easily cacheable things. If anything, they take up some GPU memory.
What makes some of today’s apps resource hogs is the different abstraction level which can be useful (accessibility was absolutely not something important back then and even today it is not without lack), cross-platform, but often much more leaky than it could be.
God... the classy Platinum look is peak MacOS to me. I was never super fond of Aqua, and the modern design ranges from "pretty usable" with Mojave to "I think this is an Ubuntu skin" with Big Sur. Platinum just feels... right, to me at least. It's aged pretty gracefully compared to the look of Windows 98, and manages to look equal parts fun and professional. The only real sticking points are the graphics used in the icons, if they were replaced with more appropriately lo-fi versions of the NeXTStep ones I think it would be a true Renaissance system.
It would be great is the giant company that makes Safari could find a solution so any webdev could run Safari (and the betas too) on their machine to be able to test in it.
I kind of like having one window per application. I already have 15 different applications open at the same time, I don’t need them to have 4 windows each.
I am a bit ambivalent on this. Most of the small windows in the mock-ups would actually be palettes, not true windows. It also works much better in an application-centric OS such as MacOS compared to window-centric ones like Windows or most Linux DEs.
Sure, the proliferation of floating palettes in the 2000s was a bit much, but on the other hand monolithic single-window apps for everything is terrible. Slack, for example, would be much better if we could different windows for calls, chats, and the channel list. As it stands now, we have either one window with conflicting functions, or a lot of repeated information taking up quite a lot of space. Ultimately, this is the result of cramming everything into one window because some OSes confuse windows for applications. It is grating to see this design pattern on macOS, which really does not work that way.
Yes. My main takeaway from this slideshow is that designers are control freaks that treat their applications like an art canvas instead of just letting the window manager manage the windows. In my opinion it is 100% better and I wish I could explode features out of various apps into separate windows all the time. Video conferencing is a really obvious one.
Yeah, watching that video really reminds me how poor slack performance is.
It genuinely feels like it could fit into a couple of MB of RAM back in those days and been super snappy. I literally do not use slack for anything that IRC wouldn't do back in the late 90s, with the exception of threads, embedded images, and emojis.
It is crazy how close but how far IRC was. Session persistence, notification support even when offline, better admin UI was really all it needed. And probably be totally centralised.
You know whats crazy? A few years back I had this Core i3 Haswell system and I installed Windows 7 with Office 2003 on it. The PC shipped with Windows 8 but I decided to go backwards. My god the performance was out of this world. Everything was instant! It was such a pleasant experience I didn't feel again until I got my M1 mac. Even now the bloat is slowly beginning on even the m1 Mac. I think we need to find every developer/designer/project manager who introduces this software bloat and lock them on a remote island.
> My god the performance was out of this world. Everything was instant!
That's not too far from the performance you can get from a plain Linux install and a lightweight DE (Xfce/LXDE). Though I'll grant you that Office 2003 is going to be a lot lighter than its modern free equivalent.
The problem is the time spent setting up this environment and dealing with the inevitable Linux issues exceeds the ease of setup of the said Windows environment. I am aware though that the windows env is unsustainable due to it being discontinued.
The most responsive computer I ever used was a Macintosh 512ke upgraded with an additional megabyte of memory. I booted the system software and applications off a ramdisk and used floppies only for documents. Resedit and MacPaint, just to name a couple, launched inside the time it took to double click. That machine didn’t have any fans either so I usually just turned the brightness nob down to zero instead of turning it off.
>That machine didn’t have any fans either so I usually just turned the brightness nob down to zero instead of turning it off.
That is actually hilarious! Its as if you told the computer to "hold on for a bit and i'll get back to you". I wonder if you had any issues with memory leaks? I guess the software was so simple that leaks were probably not really an issue.
For what it's worth, Ripcord[1] can do that (okay, it can open channels in separate tabs that can be moved to separate windows). And it is a native (Qt) application.
The only problem is that it's not free (with unlimited trial, though) and the development seems to have stopped. Still works okay for text chat, though.
Why did it take us so long to get rid of these oversized scrollbars? I can't recall monitor quality of 90s/00s but surely the scrollbars didn't need to take 5% fo the real estate, right?
Makes me wonder what sort of currently extremely common UI elements we'll look down on in the near future.
It was common for mice not to have wheels. In fact, the mouse that came with the computer shown only had one big button. People needed to be able to actually click on the scroll bar to use it.
They seem to be about the same size as scrollbars on Windows 10. Also I'd argue they're way more accessible than the tiny scrollbars that auto-hide on modern MacOS which are very difficult to click on.
As a big fan of the Platinum theme used in Mac OS 8 and 9, I absolutely love this!!! This is a fantastic demo of what modern applications would look like had they been designed under the Apple Human Interface Guidelines of the Mac OS 9 era. If these weren't mockups and were actual redesigns of Spotify, Zoom, and Slack, I'd download them as soon as possible.
It's amazing how much more usable applications become when their UIs are consistent with the other UI of the platform. Unfortunately, marketing wants every product to "stand out" and thus (even before the Electron fad started) they develop custom controls and other annoying "uniqueness".
macintoshjs co-creator Christian Bauer's personal website is appropriately 90s-website-y and full of goodies (recommend the Japan travel pics particularly!)
https://www.cebix.net
I definitely can’t help but wish a version of Slack that actually gave a passing concern for integration into a system UI exists. The “look we can do custom CSS everywhere and not look like ANY of our target platforms” garbage has the bane of my work day since it became popular.
The problem is, it doesn’t look anything like the system UI either. Just because it is using a native toolkit doesn’t mean it automatically looks good or integrates well.
The crazy thing is that you can get at least two windows in Zoom. It's my favorite feature and the reason I prefer it over any of its competitors. However, it's for some reason hidden and handicapped. You need to turn it on and even then it will only work when you have two screens. IMO it should be enabled by default and work even if you only have a single screen. I use it every day, but usually have both windows on my main screen. It's especially invaluable when someone screenshares and you want to see people's faces at the same time.
A decent Platinum skin for, say, FVWM would really make my day. I seem to remember this sort of thing existing 20 years ago but can't find much any more.
230 comments
[ 3.3 ms ] story [ 260 ms ] threadSeeing this makes me think about how many modern applications could learn a few things from the old Mac OS 8/9 Human Interface Guidelines. [0]
[0] http://mirror.informatimago.com/next/developer.apple.com/doc...
But forget about Mac OS 9, we don’t even have native OS X or Windows interfaces anymore. Doesn’t help that Apple dropped the ball on following their own UI guidelines.
Wait you can't just call the respective APIs anymore? I thought the reason people don't use them is not because they aren't available but that 2 different codebases would have to be maintained hence things like Electron.
Though it's a mess in Linux as well: Gtk, Qt and some lesser known frameworks.
Not sure about macOS.
Why bother with web widgets, or running daemons with local browser when one can contribute to Google's takeover on the Web.
I’m so tired of this. Sure, the case for Electron is that it allows leveraging web-targeting code and skills, which makes more devs able to work on desktop software give the current prevalence of web skills and makes their job easier given the prevalence of web-targeting code that can be reused. But this is in no way user hostile: it means the cost to develop software with any given function is lower in developer hours (and, for commercial entities paying for development, actual $$), which means it is more likely to get done than otherwise, and that it is more likely to be a sustainable proposition to maintain on an ongoing basis. Given that users generally have a preference to have software with the functionality they desire developed and maintained, this is conducive, rather than hostile, to user preferences.
It’s hostile to the preferences of developers who have emotional attachment to particular nonweb (or just emotional hostility to web) technology, who are left in the dust, in terms of meeting users actual needs, by those adopting Electron. Or, less emotionally, it is hostile to preferences of developers who have a substantial investment of time and effort into building marketable nonweb skills in desktop app development, and are finding those skills marginalized in the marketplace by adoption of Electron.
... and so do I, as someone supporting a company, looking at why users complain that their shiny new M1 laptops' batteries still sucks. I can tolerate Electron if it's battery-efficient, but everytime we analysed which apps are battery-hungry? Electron apps always tops the list. Not to mention genuine UI concerns like why are some developers insisting on a thin grey font that's genuinely unreadable? And even if it has a decent UI, navigation outside of a mouse-keyboard duo is never there. We have to file multiple bugs on behalf of disabled users because most web devs don't care about accessibility.
In a sense, I wouldn't complain about Electron if these three problems (battery life, genuinely user-hostile UI, poor accessibility) didn't exist (or are few and far between that it became an annoyance instead of being monsters), but here we are. Again, I don't want to waste dev time on inconsequential things like most UI toolkits are insisting. I've worked on apps with Qt and it genuinely sucks, and web development has been genuinely a better development platform (still sucked, but much less), but developing an application predicates on that application not being user-hostile, and Electron (and to be honest, web in general) doesn't encourage the developers to think about these issues.
So am I. Not user hostile? Since when is it acceptable to assume that users don't care about efficiency? People care about battery life, people care about responsiveness, and people care about interface consistency. You may be tired, but I'm happy that slowly the tide is turning and people are less friendly to things like Electron that put developer and business priorities before anything else.
I also don’t get the argument that it is a good thing for users to make desktop development open to the glut of web developers we’ve created. Again, that is a developer- and business-centric argument. This feels like saying we all should accept a lower quality of software simply to match an average skill level for a large collection of available programmers. Is it really unreasonable to set our expectations of quality higher than that which an average web developer can (or wants to) achieve?
The Web is fundamentally a different platform from modern desktop environments; writing desktop applications as if they were Web applications running on beefy servers leads to bad user experiences, just like how Web applications that do not take into account network latency, security, and other aspects of the Web that don't normally apply in native desktop applications leads to bad user experiences.
I'm not saying that Electron is automatically bad. Cross-platform GUIs and other tools have existed for decades due to their labor-saving characteristics, and this is a recurring controversy (for example, Microsoft Word 6 for Macintosh was widely panned by Mac users due to its feeling like a simple port of Word for Windows instead of a tailor-made Mac application, and certain Java GUIs don't fit with the underlying platform's UI standards, though Java does support native UIs). However, I think it's a bad thing for software vendors and developers to take the attitude that users should be grateful for whatever they release, though I admit there is a thin line between expressing dissatisfaction and acting entitled.
There are many tools available as electron apps that I have to use for my daily job that I prefer running in a browser window instead of the buggy electron app such as teams or slack. And I don't see any downside in using the website instead of the electron app, quite the contrary in fact. Even on mobile there are some tools that I prefer to run on the browser, mostly for better control of my privacy.
If you develop on the web, develop on the web. If you want to build desktop app, develop your apps like desktop apps. Users will thank you.
...it is? How? It's just a web browser hacked up to allow shit we decided it was a terrible idea to allow a web browser to do just so it can be a GUI for a local application that's probably an order of magnitude or more smaller than it is.
Problem is, the moment I install any electron/web-based app (Slack, VS Code, Gitkraken, Spotify, Steam etc), they look out of place. They do not conform to the rest of the system. They ignore basic guidelines, spacing is all different, different themes, no native window dressing/menu's, most don't use the tray/notification system correctly etc. Basically they stick out like a fat wart.
Nevermind the resource usage and general laggy UI from these application. Yes, they lag and are slow on all OS's and yes we can notice it. Web tech is cool for what it is within the scope of a webbrowser, but outside of that it is a steaming pile of ...
People used to say one of the reasons Linux Desktop was shit was that it had so many different look-n-feel's for its disparate applications. Now it is one of the most consistent. People used to say one of the reasons Java was shit because it didn't use native widgets[0] and looked out of place, but now that's the default even for native software. Now we live in an age where developers loudly proclaim their love for bundling an entire web browser as their UI, nothing even remotely resembles the native look-n-feel, and they consider adding a bespoke 'Dark Mode' theme some kind of actually noteworthy achievement.
If personal computing survives the next few decades, future historians will judge us very poorly.
[0] It could, but people used Swing in practice.
You get faster iteration and more features at the cost of humongous system resource usage. Running several Electron applications, each with their own slightly-outdated Chrome engine, is terrible for battery life and available system resources, but you do get fully-featured applications in no time.
If your users run 32GiB of RAM and at least 8 cores, then Electron should probably be the obvious choice of platform. For most applications, though, I don't think this approach is necessary or even a good idea.
Speak for yourself. As a user I love Electron apps for all the features they bring out of the box to developers. The alternative to a full featured Electron app is not a full featured native app, it’s no heavy client at all, because almost all the native frameworks suck in more ways than Electron does.
Also I don’t give a crap that my applications all look the same as long as they make sense. And most of the criticism of « buttons that don’t look like buttons » seem just like hidden nostalgia to me, I’ve never seen a button and wondered if it was a button. There are tons of discoverability issues in modern design, but the look of buttons is just not a problem.
The comment you replied to is referring to end users who are generally not-technical people and just want to get work done.
Your comment, instead, talks about the developer friendly features of Electron.
But whenever I actually use an electron app; the startup times and half-baked keyboard support (I know this is the dev's fault, not electron's, but it is much more common on electron apps) always remind me that this isn't the best way to make desktop apps.
As a javascript developer, I'm sorry that I don't have the patience/smarts/skills/time to learn C++/Qt/GTK/WxWidgets/etc. HTML/CSS/Javascript is all I know and it's probably all I will reasonably stay with for a while because of various circumstances. And Electron lets me use the knowledge I already have to make things.
That's not to say that Electron doesn't have all these issues, of course. But I feel that this policing of how people write their own software (especially when it's something purely done as a hobby and/or just to share something with people) is getting somewhat out of hand.
Here's a hypotetical/philosophical question for the community in general. Given no other alternatives to do X, what is preferable? An Electron app that allows people to do X, or no app at all?
That means a potential reward for the patient/smart/etc developer who knows native code, which means a better class of developer, which in turn means better software.
And it means more native apps for the platforms, which means a better class of app.
In short, everything is not better when Electron is everywhere. It actively damages the ecosystems of the platforms that host it.
https://hellosystem.github.io/docs/developer/ux-guidelines.h...
And, wow, actual separate windows for things! I am constantly frustrated by Slack’s inability to show more than one conversation at a time.
I mean, neat concept, but really lacking in the user hostility that today's users demand
Let's see, what is my first extant contribution to the Internet… oh yeah, I thought this was handsome. It was a theme for an explorer.exe shell replacement.
https://www.wincustomize.com/explore/litestep/154/
https://skins14.wincustomize.com/1/53/153855/6/154/preview-6...
In my defense, it was 2001-2002, I mostly had MS Paint at my disposal, and I was 14 (and not like a smart 14).
https://www.austingroupbugs.net/view.php?id=1044
https://developer.blackberry.com/native/reference/core/com.q...
But the apps ring true. The splash screens are a nice touch.
I was in middle school in 2001 when I saw a paint program (MacPaint?) on an oyester iBook - It was way more intuitive and engaging than Windows counterpart. I think late Classic Macintosh (v8.6-9) to early OSX (~10.8) had a very good aesthetic balance between form & function.
My child seems to intuitively get modern UI design, and doesn't seem to need many affordances to understand what to interact with or not. I think people who say older designs are better for beginners may be applying some retrospective thinking.
Anecdotally, my 70-year-old father and several of my elderly uncles & aunts had a much easier time figuring out Classic Mac OS. Modern macOS and iOS are much more complicated. While they still use these systems, they do so in a much more superficial way and they tend to exhibit what (for lack of a better term) I would call a "fear response." That is, when attempting to do a novel task they refuse to experiment and instead resort to asking for help immediately. Classic Mac OS was much better designed to encourage experimentation and avoided surprising the user (in a negative way) as much as possible.
A second ago the test for intuitiveness was 'a kid'.
https://imgur.com/a/e6AEdwR
Pretty objects: this activates the neurons.
Hamburgers and Heiroglyphs are not.
Give your kid a phone with zero interesting activities in it compared to other toys, and he/she would “pick” nothing out of it.
This is not merely hypothetical! Like many on HN, no doubt, I learned at least how to launch and close my favorite toy programs from the DOS command line before I went to kindergarten.
The reason this MBP was running 10.7 is because my elderly relative found it jarring with the new iconography and context menus (hamburger icon, share icon etc). This MBP was hard reset to its initial OS. For many people, including my relative, the glass effects and flatter icons were simply too high of cognitive confusion to get mundane stuff working.
Well that was the original claim in the thread.
> by observing what parents do
My daughter seems to pick things up by experimentation rather than by observation, and material design works for this.
I grew up with a 386 which was locally available. Then Windows 95 & 98. I shifted to Mac OSX around 10.4. I still feel the skeumorphic iconography was simply beautiful. And by saying that I am saying it as a subjective opinion. And an aggregate opinion which I observe, specially among elderly, is that the icons and UI layout is hard to navigate.
Is it really? Or is it just assumed that they do?
In contrast, flat design has a skill ceiling so low that it can turn the most creatively bankrupt troglodyte of a non-artist into a hunchback.
Just guessing... is that what you grew up with?
One thing I'll give flat design: it's better than the Fischer Price design that happened between the era of skeuomorphism and present day. Also, it brought dark mode mainstream.
Do you mean you're used to the old icons?
My seven-year-old wouldn't recognise them.
Of course your seven year old wouldn’t recognize icons on a ten year old OS. What are you, twelve?
Seriously, go put the iOS icons for Phone, FaceTime, Messages, and Numbers in your bottom dock in a random order, and see how easy it is to use.
Too bad the actual stability of these systems was horrid (both OS 8/9 and Windows 95).
They were optimized for the low-resolution screens of that time (hence 'pixel perfect' design was the norm), and there was also no expectation whatsoever of "touch friendly" controls so everything was a lot more tightly-spaced than today. Though the mockup does show how larger widgets could also be integrated quite well in that sort of design.
"Flat design" is a disaster and the latest redesigns are slowly inching away from it by adding some 3d-rendered shadows to try and restore some intuition for "depth". But that sort of fancy, almost photo-realistic rendering just adds more weirdness to the overall "flat" look.
Well if Apple’s Execs are to be believed, touch-screen Macs aren’t in the pipeline, which is aces with me because that’s what my iPad is for.
So given that the preeminent pointing devices on a Macintosh are still the mouse and trackpad, I could do with them tightening up the spacing again and walking back the last 10 years of nonsense.
We don’t have to go back to Snow Leopard, certainly not Platinum; but widgets and theming that are consistent with how a Macintosh is used and the hardware it actually runs on would be preferable.
That kind of thing is gravy, where it works, but it’s not worth optimizing the entire UI around when you can optimize the UI around Mac apps instead.
The original flat designs, Zune HD and the Zune software, Windows Phone 7, Windows Media Center, was incredibly usable.
All those were produced by small design teams at Microsoft, and for, relative to an entire OS, small projects. (Settings aside Windows Phone 7 for a bit, which IMHO actually had very few distinct UI elements.)
Heck Windows Phone 7, to this day, is unlike anything else on the market, It is still going to be more responsive, and look cleaner, than almost anything else out there.
I am not sure why someone decided "flat" means "no button border", that is where I think it all went wrong.
Oh and also people who think flat means getting rid of text! Windows Phone 7 loved text, text was everywhere!
It was born out of Microsoft's fears that Tablets were going to take over everything, but at the same time Microsoft didn't want to invest 100% in a pure tablet experience, viewing the escape hatch to traditional Windows land as being a necessity. Win32 apps were going to be the advantage Windows tablets had over iPad!
So anyway that OS release was terrible.
To this day, Apple being the only company that was willing to go all in on tablets, is the only company with a successful tablet product and tablet software ecosystem.
Now the Android tablets, that is another story altogether.
So Microsoft panicked. Windows RT is the end result.
Eventually iPad sales dwindled, it turns out that if you make a really durable product and sell it to everyone, you do end up saturating a market!
Phone screens also got a lot larger, negating some of the need for tablets.
iPhone (and iPod touch) had an actual WiFi and later apps, while Zune had... WiFi, where you could only connect two Zunes.
https://en.wikipedia.org/wiki/System_6
Low-res bitmap icons, bitmap fonts, no antialiasing, no composition, etc.
On Linux you can still have a pretty old school desktop with some of these elements... but may not run well on HiDPI.
I don’t think that high-res icons, vector fonts, aliasing and composition meaningfully effect today’s hardware — we can and do have GPUs barely sweating on even much more demanding functionality and these are mostly parallelisable/easily cacheable things. If anything, they take up some GPU memory.
What makes some of today’s apps resource hogs is the different abstraction level which can be useful (accessibility was absolutely not something important back then and even today it is not without lack), cross-platform, but often much more leaky than it could be.
Sure, the proliferation of floating palettes in the 2000s was a bit much, but on the other hand monolithic single-window apps for everything is terrible. Slack, for example, would be much better if we could different windows for calls, chats, and the channel list. As it stands now, we have either one window with conflicting functions, or a lot of repeated information taking up quite a lot of space. Ultimately, this is the result of cramming everything into one window because some OSes confuse windows for applications. It is grating to see this design pattern on macOS, which really does not work that way.
It genuinely feels like it could fit into a couple of MB of RAM back in those days and been super snappy. I literally do not use slack for anything that IRC wouldn't do back in the late 90s, with the exception of threads, embedded images, and emojis.
It is crazy how close but how far IRC was. Session persistence, notification support even when offline, better admin UI was really all it needed. And probably be totally centralised.
That's not too far from the performance you can get from a plain Linux install and a lightweight DE (Xfce/LXDE). Though I'll grant you that Office 2003 is going to be a lot lighter than its modern free equivalent.
That is actually hilarious! Its as if you told the computer to "hold on for a bit and i'll get back to you". I wonder if you had any issues with memory leaks? I guess the software was so simple that leaks were probably not really an issue.
You may enjoy this article: https://news.ycombinator.com/item?id=21831951
https://web.archive.org/web/20000914161125/http://www.adobe....
The only problem is that it's not free (with unlimited trial, though) and the development seems to have stopped. Still works okay for text chat, though.
[1]: https://cancel.fm/ripcord/
Makes me wonder what sort of currently extremely common UI elements we'll look down on in the near future.
https://github.com/helloSystem/hello
I’m guessing this was on purpose to try and transition the P2P crowd over to streaming.
The Zoom one reminded me of https://en.wikipedia.org/wiki/CU-SeeMe --- yes, videoconferencing was actually possible on the hardware of the time.
https://github.com/felixrieseberg/macintosh.js/
"This is Mac OS 8, running in an Electron app pretending to be a 1991 Macintosh Quadra. Yes, it's the full thing."
1: https://twitter.com/AppShrugs/status/1468576646856851460