- Feature Articles
- CodeSOD
- Error'd
- Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Edit Admin
Stuff like this was one of the reasons why I was always heavily in favor of WebAssembly. Maybe in a few years we looks back and call everything that ain't WA simply outdated junk that has to go, but I expect it more to be decades.
Edit Admin
Browser development will always be an ungoverned space full of amateur developers no matter how many years they've been earning a paycheck writing code.
And a space of dozens of competing open source platforms usable for aspects of your problem, but not your entire problem.
It will be a self-renewing swamp until forever.
Admin
Remember when websites were pure html tags and text? Gee, our old LaSalle was great. Those were the days.
Edit Admin
RealPlayer is still around! I completely forgot about both QuickTime and RealPlayer up until I read this article. Oh man, those were the days!
Admin
I guess, it's because they haven't discovered
var
, yet, so they are using the generic globalintLoop
for any integer loop variable?Also, why is the function labeled ("
acrobatVersion:
")? I can't think of a use case for this.Admin
Unlike phone numbers, version numbers have ordinality. So while we can't do "math" on them, at least we can do comparisons on each of the elements of the version number.
Admin
if (acrobaticVersion + navigator.plugins[intFrootLoop].floatVersion * (intExplorerVersion / 0.5) <= 15) THEN GOTO FAIL.
Edit Admin
I hope you realize that this would just be a different standard to diverge and acquire vendor-specific features. The problem was never javascript, the problem has always been vendors either trying to "embrace, extend, extinguish", or vendors trying to introduce new features without waiting for the standardization process to complete in order to gain a competitive advantage.
WebAssembly has the advantage of existing at the time when people wouldn't accept vendor-specific crap. In 2024, any competent javascript developer also will stick to things that work across their entire user base, and are likely to work for the next 20 years.
Admin
Based on the MDN page, the code may actually work correctly in modern browsers (only).
Modern browsers apparently return an empty array of plugins if PDF viewing is inspired, or a hard coded list of plugins if it is supported.
Admin
Try saying "epically deprecated" five times fast.
Edit Admin
How does WebAssembly prevent stupid developers?
Edit Admin
A normal human, if they wished to pass on of my code reviews, would have named the 'intloop' variable as 'plugin', not 'i'.
Edit Admin
it's probably a function in an object. I've seen that sort of thing around a lot.
Admin
"any competent javascript developer also will stick to things that work across their entire user base, and are likely to work for the next 20 years."
How do you know? Have you asked both of them?
Admin
I don't entirely agree with this. Version numbers are actually an encoded collection of numbers (and the occasional text) that are occasionally subjected to arithmetic operations. How do you get a new version number? Increment one of the components. How do you know that a version is "good enough"? Might need a greater-than comparison on the major part. So, saying version numbers are just text is a little simplistic. But yeah, parsing the whole thing as a float is a bad idea.
Edit Admin
@thosrtanner ref
That is an even worse name than intLoop. The one thing that index is not is a plugin. You might as well name it christmasTree since its also not one of those.
I could get behind something like this, although it's excessively verbose and there's a long-standing history of ì
,
j,
k`` for disposable index valuesBetter of course to use a proper iterator, not accessing by index number. If your language and that object supports that behavior. And that (and only that) is where using the name plugin would be correct. Roughly like this:
Edit Admin
FTFY