On Wednesday, 25 April 2018 at 03:00:13 UTC, Nick Sabalausky
(Abscissa) wrote:
Yea, Chrome is kind of notorious for random breakages compared
to other browsers. Google seems to still be a fan of that "move
fast to break everything" fad that (unsurprisingly) has been
biting Facebook in the ass.
Honestly, I find that if my web sites exhibit
browser-compatibility issues, it means I've over-engineered
something. Even in Chrome, the HTML/CSS basics are pretty
stable. It's only when you start getting into the "newer is
better" bleeding edge "this week's version of webdev best
practices" stuff, and toolkits and the like, that things start
falling apart.
I recently had this issue with Chrome [1] and it is honestly
annoying. I found out that it had been reported several times and
what do Chrome devs say? Issue closed, it's an effin feature. To
me it looks like they were over-intellectualizing the issue and
came up with a "feature" that is counter-intuitive.
The thing about (Google) Chrome is this: unlike IE, it used to
comply with web standards. No surprises, no stupid work arounds
required, no two sets of code. IE went down, Chrome went up, and
justly so. But now Chrome is becoming the new old IE (Mind you,
even MS copped it that they had to comply with the standards!).
And not to mention the built-in data "leakage". But like IE back
in the day, everybody uses Chrome by default.
Imo, HTML+CSS are still good ways to build interfaces fast. I
think there should be more UI frameworks (native or not) that
provide this option instead of each framework cooking its own
stew.
As for JS, I agree with TheGag96, you simply cannot write
beautiful code in JS. There are two scenarios. 1. You can use JS
for the mere basics and have it communicate with the server, say
vibe.d, and the real cool stuff happens on the server in D. 2.
You need to keep things flexible on the client side and process a
lot of stuff (e.g. data you get back from the server) with JS, so
you don't need to change-and-recompile vibe.d and others can
change things according to their needs. It will get a bit messy,
it's JS after all. To keep things simple follow these rules, if
you have to use JS:
1. Don't try to be smart, don't try to write flashy or beautiful
code. JS will thwart you.
2. Use the same dumb routines all over the place, it's easier to
copy-and-paste and it will prevent breakage.
3. Stay away from the latest features that seem to work but are
officially not "implemented yet"
4. Wait. JS engines are getting better and better.
Having said this, _vibe.d can also as a GUI client_. Cf. D Web
Development, Kai Nacke.
[1]
https://stackoverflow.com/questions/20367046/onclick-event-firing-in-firefox-and-ie-but-not-in-chrome