• 0 Posts
  • 77 Comments
Joined 2 years ago
cake
Cake day: January 26th, 2024

help-circle

  • Of course I (re-checked) the criteria on my own before commenting, and it stands.

    Evidence of receipt of lesser nationally or internationally recognized prizes or awards for excellence

    There are a bunch of international prises other than the Olympics. By the way, Oscars and Pulitzers aren’t inherently international - they’re made by the american film (newspaper) industry for that same industry. Awards juries are 90+% American, as are the awardees.

    Anyway, more realistic would be to look at the International math olympiad, for example. There are about 10k contestants anually, and just under 50% recieve prizes. There are similar competitions for pretty much any school subject.

    Then there’s sport. There are a bunch of sports, with each having a multitude of international competitions. The ATP Open for tennis, the FIFA/UEFA championships, for soccer, various regates for yachting especially - you name it.

    And these are just of the top of my head, and the second level of prestige (after Nobels and Oscars). Saying there’s at least 20 international competitions per sport on average is an understatement.

    All in all, for point one, aboit 5% of the population fit the bill, even discounting stuff like the France-Germany typists’ association anual speed typing competition, which just might fit the bill as well.

    Evidence of your membership in associations in the field which demand outstanding achievement of their members

    There’s Mensa, an international association - a special achievement required to join: IQ over 130. It has 150k members.

    Similarily, there are: International Society for Philosophical Enquiry, World Federation of Neurology, European Mathematical Society - you name it.

    Evidence of published material about you in professional or major trade publications or other major media

    Not even that’s that hard. Every school shooter fits the bill.

    Evidence that you have been asked to judge the work of others, either individually or on a panel.

    Be a member of a society in (2) and you will.

    Evidence of your original scientific, scholarly, artistic, athletic, or business-related contributions of major significance to the field

    Another point for fittig the bill of (1), basically, since an award is, by definition, a recognition and evidence of achievment.

    Evidence of your authorship of scholarly articles in professional or major trade publications or other major media

    Work for a year at a university or a subset of (2), and it’ll happen.

    Evidence that your work has been displayed at artistic exhibitions or showcases

    This one’s for the more artsy types. There are literally millions of galleries and museums. Getting an exhibition also isn’t that impossible.

    Evidence of your performance of a leading or critical role in distinguished organizations

    Basically, have an important-sounding title of a (2)

    Evidence that you command a high salary or other significantly high remuneration in relation to others in the field

    So, be a CEO.

    Evidence of your commercial successes in the performing arts

    Be Taylor Swift, Rammstein, or any number of more “fringe” artists.

    <hr>

    To sum up, my point is: No, you don’t need to have an Oscar, Nobel or Olympic medal to qualify. Nor do you need to be Einstein.

    Here’s someone who fits most criteria as an example:

    Meet Andriei Ogushlow. He’s a polish CEO. He studied at and got a PhD in political science. He wrote 8 scolarly articles published in intenrational journals. In his free time he does photography, and had 15 exhibitions, of which 4 were in museums. He’s a member of Mensa and the European Accounting Association. While doing his MBA, he earned a bronze medal in the A4SIC competition.

    He’d like US citizenship to be able to make his company have a strong and stable presence in the US.

    (That’s 5 out of 10).

    He’s not Einstein. But he fits the bill more than “good enough”.





  • Source code is the code devs write.

    For compiled languages like C, only the compiled machine code is made available to the user.

    JS is interpreted, meaning it doesn’t get compiled, but an interpreter interprets source code directly during runtime.

    Obfuscsted code, while not technically unaltered source code is still source code. Key word being unaltered. It isn’t source code due to the virtue of not being straight from the source (i.e. because it’s altered).

    However, obfuscated code is basically source code. The only things to obfuscate are variable and function names, and perhaps some pre-compile order of operations optimizations. The core syntax and structure of the program has to remain “visible”, because otherwise the interpreter couldn’t run the code.

    Analyzing obfuscated code is much closer to analyzing source code than reverse-engineering compiled binaries.

    It may not be human-readable. But other programs systems can analyze (as they can even compiled code), but more importantly - they can alter it in a trivial manner. Because it’s source code with basically names censored out. Which makes evaluating the code only a bit harder than if it were truly “closed-source”.

    That’s why website source code is basically almostsource-available.

    A reminder, in the past, large pages downloaded all stuff at once. In contrast, with dynamic imports the first load is much much faster. And that matters most. And any changes in dynamic content would just require the dynamic data to be downloaded.

    Unfortunately, you’re very mistaken.

    In the past, pages needed to download any stuff they want to display to the user. Now, here’s the kicker: that hasn’t changed!

    Pages today are loaded more dinamically and sensibly. First basic stuff (text), then styles, then scripts, then media.

    However, it’s not Angular, React Bootstrap or any other framework doing the fetching. It’s the browser. Frameworks don’t change that. What they do, instead, is add additional megabytes of (mostly) bloat to download every day or week (depending on the timeout).

    Any web page gets HTML loaded first, since the dawn of the Web. That’s the page itself. Even IE did that. At first, browsers loaded sequentially, but then they figured out it’s better UX to load CSS first, then the rest. Media probably takes precedence to frameworks as well (because thet’s what the user actually sees).

    Browsers are smart enough to cache images themselves. No framework can do it even if it wanted to because of sandboxing. It’s the browser’s job.

    What frameworks do is make devs’ lives easier. At the cost of performance for the user.

    That cost is multiple-fold: first the framework has to load. In order to do that, it takes bandwidth, which may or may not be a steeply-priced commodity depending on your ISO contract. Loading also takes time, i.e. waiting, i.e. bad UX.

    Other than that, the framework beeds to run. That uses CPU cycles, which wastes power and lowers battery life. It’s also less efficient than the browser doing it because it’s a higher level of abstraction than letting the browser do it on its own.

    With phones being as trigger-happy about killing “unused” apps, all the frameworks in use by various websites need to spin up from being killed as often as every few minutes. A less extreme amount of “rebooting” the framework happens when low-powered PCs run oit of RAM and a frameworked site is chosen by the browser to be “frozen”.

    What a framework does is, basically, fill a hole in HTML and CSS - it adds functionality needed for a website which is otherwise unattainable. Stuff like cart, checkout, some complex display styles, etc.

    All of this stuff is fully doable server-side. Mind you, login is so doable it didn’t even slip onto my little list. It’s just simpler to do it all client-side for the programmer (as opposed to making forms and HTML requests that much more often, together with the tiny UX addition of not needing to wait for the bac(-and-forth to finish.

    Which itself isn’t really a problem. In fact, the “white flashes” are more common on framework sites than not.

    When a browser loads any site, it loads HTML first. That’s “the site”. The rest is just icing on the cake. First is CSS, then media and JS (these two are havily browser dependent as far as load priority goes).

    Now comes the difference between “classic”, “js-enhanced” and “fully js-based” sites.

    A classic site loads fast. First HTML. The browser fetches the CSS soon enough, not even bothering to show the “raw HTML” for a few hundered miliseconds if the CSS loads fast enough. So the user doesn’t even see the “white flash” most of the time, since networks today are fast enough.

    As the user moves through different pages of the site, the CSS was cached - any HTML page wishing to use the same CSS won’t even need to wait for it to load again!

    Then there’s the js-enhanced site. It’s like the classic site, but with some fancy code to make it potentially infinitely more powerful. Stuff like responsive UI’s and the ability to do fancy math one would exoect of a traditional desktop/native app. Having JS saves having to run every little thing needing some consideration to the server when the browser can do it. It’s actually a privacy benefit, since a lot less things need to leave the user’s device. It can even mend its HTML, its internal structure and its backbone to suit its needs. That’s how powerful JS is.

    But, as they say, with great power comes great responsibility. The frameworked-to-hell site. Initially, its HTML is pretty much empty. It’s less of like ordering a car and more of building a house. When you “buy the car” (visit the site), it has to get made right in front of your eyes. Fun the first few times, but otherwise very impractical.

    A frameworked site also loads slower by default - the browser gets HTML first, then CSS. Since there’s no media there yet, it goes for the JS. Hell, some leave even CSS out of the empty shell of the page when you first enter so you really get blasted by the browser’s default (usually white, although today theme-based) CSS stylesheet. Only once the JS loads the framework can the foundation of the site (HTML) start being built.

    Once that’s been built, it has CSS, and you no longer see the white sea of nothing.

    As you move through pages of the site, each is being built in-browser, on-demand. Imagine the car turning into a funhouse where whenever you enter a new room, the bell rings. An employee has to hear it and react quickly! They have to bring the Buld-A-Room kit quickly and deploy it, lest you leave before that happens!

    Not only is that slow and asinine, it’s just plain inefficient. There’s no need for it in 99% of cases. It slows stuff down, creates needless bandwidth, wastes needless data and wastes energy.

    There’s another aspect to frameworked sites’ inefficiency I’d like to touch.

    It’s the fact that they’re less “dynamic” and more “quicksand”.

    They change. A lot. Frameworks get updates, and using multiple isn’t even unheard of. Devs push updates left and right, which are expected to be visible and deployed faster than the D-Day landings.

    Which in practice means that max resource age is set very low. Days, maybe even hours. Which means, instead of having the huge little 15 MB on-average framework fetched once a week or month, it’s more like 4 to dozens of times per week. Multiply by each site’s preferred framework and version, and add to that their own, custom code which also takes up some (albeit usually less-than-frameork) space.

    That can easily cross into gigabytes a month. Gigabytes wasted.

    Sure, in today’s 4K HDR multimedia days that’s a few minutes of video, but it isn’t 0 minutes of nothing.

    My phone also reliably lasts a day without charge. It’s not about my battery being bad, but about power being wasted. Do you think it normal that checking battery use, Chrome used 64% according to the abdroid settings?

    You bet I tried out Firefox the very same day. Googling for some optimizations led me down a privacy rabbit-hole. Today I use Firefox, and battery use fell from 64% to 24%. A 40% decrease! I still can’t believe it myself!

    I admit, I tend to use my phone less and less so my current 24% may not be the best metric, but even before when I did, the average was somewhere between 25% and 30%.

    There’s a middle-ground in all of this.

    Where the Web is today is anything but.

    The old days, while not as golden they might seem to me are also not as brown as you paint them out to be.



  • As a web dev, and primarily user, I like my phone having some juice left in it.

    The largest battery hog on my phone is the browser. I can’t help wonder why.

    I’d much rather wait a second or two rather than have my phone initialize some js framework 50 times per day.

    Dynamic HTML can be done - and is - server-side. Of course, not using a framework is harder, and all the current ones are client-side.

    Saying making unbloated pages is impossible to do right just makes it seem like you’re ill informed.

    On that note - “Closed-source” JS doesn’t really exist (at least client-side) - all JS is source-availiable in-browser - some may obfuscate, but it isn’t a privacy concern.

    The problem is that my phone does something it doesn’t have to.

    Having my phone fetch potentially 50 MB (usually 5-15) for each new website is a battery hog. And on a slow connection - to quote your words, “great UX”.

    The alternative is a few KB for the HTML, CSS and a small amount of tailor-made JS.

    A few KB’s which load a hundered times faster, don’t waste exorbitant amounts of computing power - while in essence losing nothing over your alternative.

    “Old pages with minima style” is a non-sequitur. Need I remind you, CSS is a thing. In fact, it may be more reliable than JS, since it isn’t turing-complete, it’s much simpler for browser interpreters to not fuck it up. Also, not nearly the vulnerability vector JS is.

    And your message for me and people like me, wanting websites not to outsource their power-hogging frameworks to my poor phone?

    Go build your own browser.

    What a joke.



  • They don’t. Not really.

    America is nothing economically without its trading partners. And that goes for every country, not just the US.

    Accepting what the US does is a stupid idea on any country’s part because Trump’s tariffs have nothing to do with “normal trading”. If anything, they’re abnormal.

    And they should be treated as such. Laughed off. Ridiculed. And most certantly not appeased. This entire situation isn’t unlike the Hitler Sudetenland stuff.

    Whatever Mr. President says Mr. President gets. Not really a good foreign policy move. It was percisely the US who set up penalties for countries “restricting trade”. Why should other countries not hold the US to the rules?

    Both import and export tariffs are barriers to trade. Since Mr President’s childish demands are appeased, soon enough, those countries appeasing will start “reciprocal” tariffs on Mr President’s percieved enemies. Why? Because it’s Mr President’s next logical step.

    Now, short of all countries that decided on appeasig the US make a sharp U-turn, what’s done is done.

    But, should they decide on such a course of action, they’d isolate America on the world market, which would dissuade Trump from keeping his mercantilism up.

    The alternstive is isolating themselves from others, together with America.








  • Yeah. Tbh, I always wondered why programming languages weren’t translated.

    I know CS is all about english, but at least the default builtin functions of programming languages could get translated (as well as APIs that care about themselves).

    Like, I can’t say I don’t like it this way (since I’m a native english speaker), but I still wonder what if you could translate code.

    Variables could cause problems (more work with translation or hard to understand if not translated). But still - programming languages have no declentions and syntax is simpler so it shouldn’t even compare to “real” languages with regards to difficulty of implementation.