I wasn't talking about such a thing. I was talking about being able to create a "plaf" theme using a visual editor or at least some rules in CSS or similar script that applies to the entire Swing application (like Swing's own plafs do) and doesn't require creating subclasses. This has nothing to do with having a designer or not and it is orthogonal to it (you can give the tool/rules/whatever to a designer if you want).
HN user
Crinus
I was talking about themes, not UI design. Think GTK themes (though not their implementation), not where buttons in a form will go.
This doesn't fix the issue of Swing theming being hard. The fix would be to make it much easier, preferably with a visual editor.
That sounds to me like saying nobody will ever make a new C++ compiler because C++ is hard and good compilers are hard - before Clang.
The problem with Swing theming is that you need to create a ton of classes "just" for theming your application. I did that years ago myself, but really Swing should have something like those libraries released years (>10) ago that had a bunch of premade themes as well as WYSIWYG editors for them.
There used to be many libraries (most of them were awful, half of them tried to mimic circa 2002 Mac OS X Aqua) so i do not remember any names, though i remember trying one with a visual editor that i gave to a designer at the place i worked at. We didn't ended up using it though because of the price.
I remember >10 years ago there used to be some "plaf" libraries that provided very easy themeing abilities for Swing that even came with a WYSIWYG tool to create themes. It is a shame something like that never became part of Swing itself and instead you have to create tons of classes just for a theme.
in the past licensing wasn't really compatible with these kinds of scenarios, and you'd often have to purchase the software 5 times.
That is only because of greed. During the 80s and 90s, Borland for example had a "no-nonsense license agreement" that told you to treat the software as a book: make as many copies as you want, have as many users as you want and even resell it as long as - like a book - only one person at a time is using it.
They did change it at some point in the 2000s, probably around the time when they stopped selling Delphi for $99 as the cheapest option, introduced online DRM and prices skyrocketed to the thousands.
As far as I know, the only way to fix this situation is by building tools so much better than the free tools that the absurdity of refusing to pay for them is overwhelming, and expectations shift.
This of course will only work for a little while until someone who has more time than money (or is a big company that wants to commoditize the tool) will build a command-line version of it on Linux. Weird UX and the need for a spaghetti of shell scripts to integrate with vim/emacs/vscode/sublime/ed will soon follow with an Eclipse addon that nobody will use a bit later. After a macOS port, assuming these are still a thing, Apple may create a nice looking UI and integrate it with Xcode or someone like Panic may create a good front end and sell it for ~$99.
Most people will keep using Windows, think Visual Studio has the best debugger and everyone will be happy.
Those that learn about the "overwhelmingly better approach" will consider the free one the best one and its spaghetti of shell scripts approach the obvious best approach, because they wont have any real deep experience with the paid tools (either the original one or the macOS shiny wrapper - which will be considered as unnecessary by most anyway) to properly judge.
Note that with the edit and continue appearing in VB he meant the immediate window in VB1, not the C++ feature. Also this didn't really appear with VB1, it most likely "appeared" with the first BASIC Bill Gates wrote (as far as Microsoft is concerned, BASIC had it before MS) as any number-based BASIC was able to both run and edit code at the same time and this was evolved to QuickBASIC/QBASIC's "immediate" pane at the bottom where you could run functions as soon as defined them in the editor and modify the program's code and state by pausing it and then this was passed on to VB1 though a dedicated window that remained there until VB6.
I do not like compositing though, at least not the way it is implemented in pretty much every current desktop environment (including Windows) where the composition is synced to the monitor refresh rate, meaning that it will always be at least ~8ms late on average and that is assuming everything else is synchronized - but this is not the case as applications draw their output offscreen to a surface that is picked up by the compositor (the mechanism of which is irrelevant, the application might just render to a compositor provided resource or the compositor might copy a VRAM surface or it may transfer bytes from the system RAM, it doesn't matter much in what i'm describing) which happens asynchronously and then notify the compositor that the window contents have changed which is again picked by compositor asynchronously. This introduces several frames of delay between the application drawing something and it appearing on your monitor. It is not a big problem when you are passively watching something, like a movie or an animation, but when that "something" that is drawn is an immediate reaction to an action you just did (like resizing a window with your mouse) you can "feel" that delay.
With non-composited window systems (which nowadays is pretty much only Win7 with DWM disabled and pure X11/Xorg) all that overhead goes away since applications draw directly to the video memory that is to be presented to the monitor (the GPU might do some minor composition itself but that is irrelevant as there aren't any delays involved).
Compositing would work if all composition was done on the GPU using dedicated hardware (similar to how the GPU already performs composition for the mouse cursor and an overlay that is often used for HUD-like controls like volume control, but those are not general purpose features that can be used for desktop composition) and applications could draw directly to the video surfaces that would be composited pretty much the same way a non-composited desktop can draw directly to the video memory (this would introduce artifacts like tearing but this is something that could be handled separately and to some - like me - tearing is perfectly acceptable for pretty much all interactive actions).
I am not aware of any GPU or window system that does compositing like this though.
This is just a longer worded version of Rewrite It In Rust :-P
The last time there was a real UI and UX consistency was with Windows 2000 (or ME, if you want to stay on the consumer side). With Windows XP Microsoft introduced themeable controls but instead of making them available to all applications, they used an opt-in mechanism (based on special EXE resources or manifest files) so even nowadays unless you use that mechanism you get the Win2K era of controls.
Even then, with Windows 7 most things were consistent and if you really cared about consistency even with non-themed apps you could always switch to Windows Classic theme (which i always did, not so much because of consistency but also because i just like that theme :-P).
Since Windows 8 with the introduction of Metro/UWP/WinUI/WinWhateverNext consistency was thrown out of the Window, without even trying to pretend otherwise (it isn't a coincidence that the UI guidelines for desktop applications in Microsoft's site still use the Win7 theme).
And games, medical, research, etc.
In my previous job i was working on game tools with wxWidgets, in my current job i am working on game tools with Qt. In between i got an offer (which i rejected since i am interested in games) for a Qt tool to be used for (IIRC) DNA research (or something like that, i'd just be doing the UI not the actual logic).
First time reading this.
On one hand it looks neat. This is something i expected browsers to be able to do since i noticed that Mozilla (pre-Firefox) implemented <blink> (or <marquee>?) in JavaScript.
On the other hand it looks like it'll become much harder for JavaScript-less environments to extract data from web-pages as now an article on a news site could be something like <news-article id="23848923"> and the JavaScript side will do the rest.
But being able to do something like <my-fancy-button caption="Go To Google" target="http://google.com/"> that in the background creates all the canvases and such needed will be neat.
I am not talking about technical matters here (and FWIW Stadia is based on Linux), i am talking about control. Games that i stream from my own PC to my own handheld (or whatever) are still under my control, so that is perfectly fine. Games that i - wont, but just for the sake of argument - stream from Stadia are under Google's control which is not fine.
Proprietary platform dependence isn't much of an issue when you can hack around that platform. A win32 game using directx on my own PC is way more preferable than a Linux game using Vulkan on someone else's cloud server.
Honestly, these aren't issues that would block something like Stadia, the solutions will simply be games designed around these issues pretty much how many modern games are designed around the limitations of a console controller or a mobile phone touch screen.
These issues will be solved. The loss of control is not something that can be solved though and is IMO a much bigger issue.
AFAIK Flashpoint (or some other Flash preservation project) use an embedded server with an embedder browser to make these games work. Most of them were single player or relied on simple common (among game hosters) APIs that are easy to replicate.
I don't think there is much if any distinction between what Stadia is able to do and what all the other game companies are able to do.
Stadia is able to make a game completely change and/or disappear whereas other game companies that put the game executable and data on your computer (either by some automated method like Steam or by you manually downloading it like GOG/Humble Store/GamersGate/etc) cannot do that because you can copy the files and preserve the game. Even if you specifically cannot do it, someone else will do it.
As i mentioned above, see Konami and P.T. for an example.
But you don't actually know that. You're paying for a license for the game and even though they're likely covered in the event of a shutdown, it's unlikely they could do it without giving back _something_.
But you don't actually know that :-P. You are assuming goodwill, i am assuming badwill. Between the two, the former is nice to have, but the latter is something i'd really want to avoid. So i am focusing on the latter one as i'd rather avoid the negative.
(and all that ignoring other issues, e.g. the version that they may decide to give out is inferior to the original version)
Does it happen all the time?
Yes, even successful services get shut down all the time - even for reasons that would logically make no sense to an outsider (e.g. internal politics). I have seen way too many software stores (for games mostly) disappear to trust any (and not just indie stuff, e.g. Stardock developed Impulse - where i used to have an account - which was later bought by GameStop only to be shut down a few years later - losing my stuff with it).
Google's services even more so, they still do shut down paid stuff.
Do you want PS Now to fail? xCloud? I really don't understand the polarization here.
AFAIK PS Now (i don't know about xCloud but i guess the same) are about games that you can also play in the console itself, it doesn't replace the console. My issue is with not having control over the game files so that i can keep my own copy in case things disappear.
Though FWIW i am not into consoles at all, exactly because of those restrictions they have. But, at least AFAIK, despite the restrictions it still is possible to preserve console games (see Konami's P.T. which if it was done with Stadia now it'd be gone forever).
It seems like so many _want_ it to fail because of _theoretical_ issues. It's so bizarre.
The problem here is that you can only stop something while it is being at a theoretical level because after that it'd be too late.
Why not, you know, just let it compete on its own merits?
Because its own merits are
You already do not have this freedom. Even with physical games if you let the device connect it can be changed or prevented from working entirely.
...no? The majority of the games i have are DRM free from GOG, Itch.io, Humble Store, GamersGate and i have manually downloaded them on my own storage and update them if i deem the update necessary (at least GOG does publish changelogs after each update). They are completely under my control. Though even with my Steam library (which is also large mainly because at the past i wasn't thinking too much about these issues, though i do try to keep offline copies whenever possible) i still have control over the files themselves - it is how i install mods and custom patches for otherwise broken (yet entertaining - see VtMB before it was released on GOG) games.
With a few exceptions, pretty much all of them are games i buy at some sale or at recommendation of someone i trust but i find time for actually playing them much later. Many of those games (e.g. VtMB that i mentioned elsewhere) are games i've bought (let alone played) way after their developers ceased to exist.
You probably need to check out the whole "gaming backlog" meme :-P
The problem is that it is about "me" (and others who think like me) because what everyone else does also affects what i get to experience myself thanks to market forces. In other words, if everyone goes Stadia (or a Stadia-lookalike) then the market (both for software but also - and most importantly - for hardware) will vanish. At best it will only be available for very high prices, just for the rich few, but i'm not rich so that wouldn't mean anything to me.
Yeah, that is basically the end game i was thinking at with my last moment. I just didn't want to start with this because it'd sound too tinfoil-hatty :-P (and some already told me i am assuming too much :-P).
It is indeed sad to see MMOs go though they are a bit special in that they are inherently about their communities. Meridian 59 - the first MMO, at least over the Internet - was opensourced a while ago yet if you connect to it now, it is a shell of its former 90s shelf since most people have moved on.
There are people who try to archive Flash and Shockwave games and if anything, this is a good example of trying to fix something after the bad situation has already happened: the best time was when things were new. But better now than never.
PowerPC and 86k macs can be run under emulation so not everything is lost. Similar for games for DOS and ancient Windows versions, though from my personal experience 99.9% of old games will work on Windows 10 with some tweaks and/or wrappers (like dgVoodoo2, dxwnd, otvdm, etc and of course user made patches). It is extremely rare that i find an old game i cannot get to run.
While i'm not a fan of Steam, with it you can still keep the files around and some games are DRM free or rely on a DLL that you can easily replace. See Scott Ross' recent video about Trackmania 2 Nation for an example: https://www.youtube.com/watch?v=ulp99wSUNgk
But personally i prefer GOG where i have hundreds of games (though it isn't the only store i use - any that give me DRM-free games, like Humble Store or GamersGate - is fine) and i keep my own offline copies (including games from stores that have long gone - another reason i dislike DRM schemes and prefer to have control over my files).
Games are not movies though many making this connection is probably why many games are awful nowadays as they try to be something they are not. It doesn't surprise me that executives who have no idea about gaming see flashy graphics and associate them with movies.
Longevity is certainly not overrated, at least for me. Just yesterday i was playing Morrowind, a game released almost two decades ago and a few months before i was doing my 9th playthrough of Fallout New Vegas - not long after my 6th playthrough of Vampire - The Masquerade: Bloodlines. All these are games that i have played many times over many years and have benefited tremendously from users having complete control over their computers and the files to mod them and fix them so they become the classics they are today. If anything, just VtmB alone is a great case of how much you can not rely on the official channels for support but also how much the community - thanks to having such control - can address the issues and give the game the attention it deserves. These are games i have played and had fun for years.
Of course these are just the more known ones. I have played (and even fixed myself) and had fun with games that have been forgotten by their own developers for many years now. I actively try to find lesser known and/or lesser well received older games - i spent several days playing something like Excalibur 2555AD, a clunky and mediocre game for most, yet i had fun exploring its weird dungeons and even weirder enemy designs that look like they escaped from some early 90s British comic).
None of that stuff would be possible with something like Stadia. All of those would be long gone, broken for all their short lifetime which would end to make space for the newest overhyped release and some of them - like Excalibur 2555AD - would barely exist for more than a few months after their failure.
Yes, i am biased against losing control over my computer and the games and software i can run on it and mess around with (be it modding, programing, custom patches or whatever). And i do see it through the potential of things going bad because if things go perfect then everything is fine.
I focus on the bad side because i do not want the bad things to happen and i see the bad things way worse than the good things.
I do not fail to imagine the positive potential, i just consider it totally insignificant to the negative potential it has. None of those you mentioned is worth giving up control over the games you are paying for and your computing environment.
the lack of a long term vision
How about this for a long term vision: any game you buy now will be totally lost in the future ("long term") when Google decides to shut down the service (which happens all the time) or deactivate your account (which also happens all the time) while developers will have moved on and/or closed and wont give a second thought about. In the meanwhile, while Stadia exists, any games will be filled with anti-consumer garbage that you wont be able to do anything about - not even the files that make up the game are under your control.
I'm 100% hoping this will fail, not because it isn't a technically cool product nor because i cannot imagine the potential it has - i want it to fail exactly because i can imagine all the negative potential it has.
I do not want to rent my computer nor i want to rent my gaming device, i want to fully control everything in it and i do not want any commercial scheme that erodes the marketplace which allows me to have that freedom.
Yes, this is because everyone is used to getting quality (though usually the quality is very lopsided) software for free. Shareware was a different beast because you still had to pay for if you wanted to use it (initially shareware only asked you to pay for but still gave everything for free, but as developers realized quickly in the 80s, practically nobody bothered and even a small "nag screen" made a big difference while people who removed some features - aka crippleware - saw their sales to significantly multiply).
When you can get something like Notepad++ (or similar) for free, paying for Sublime (or similar) feels like a rip off, even if the latter may do one or two things better.
Also quality rarely gets into the equation: a program that does 28378482 features in a half-baked way for free is often seen superior than a paid program that does 1/1000th of that but what it does it does in a higher quality.