> Users want responsiveness instead of page reloads between every action.
Then implement that. There are much more lightweight ways to achieve this than going full react. Especially with modern JS this can even be implemented from scratch.
Take HN as an example. Inline replying, voting etc. is undeniably convenient, but there is no way there shouldn't be a full page load when going through paginated results, or opening the comment thread to a post. That requires a couple lines javascript, no bloated js-framework-of-the-month. And the page stays completely usable without JS. A lot of stateful webapps out there aren't any more complex than this, structurally. Bonus: You get a fully working, predictable back button in your browser for free.
This is one of the things that get all weird the more I think about it.
Trying to define an objective term like "simple" is of no use if you can't map it to something in human perception. Let's say we have some all-knowing oracle that can tell us which algorithm for problem X is the simplest one. If nobody would agree, what is the point? Or, if 51% of programmers would say A is simplest while the other 49% consider algorithm B more simple, should we just go "yay majority" and call it a day? In reality we have no way of knowing which one is objectively most simple, because at least regarding this domain, we as humans are unable to make an objective judgment.
Is the simplest solution always the one with the least lines of code? Least number of classes? Singletons vs static classes? Recursive approach vs. iterative approach? C style linked lists (next-pointer in data type) vs. "proper" list class? In general: Could we formalize this, ie. come up with an algorithm how to determine how simple code is?
Often times code that is easier to understand might be harder to work with, while more elaborated code with indirections and abstractions is harder to grasp (simply because it's more LoC/classes, just more reading), but once you got familiar with the code base, much easier to work with. So when you say objectively simple, do you mean "simple to understand so you can tell what it does", or "simple to understand wrt maintaining, extending and fixing"? And which kind of simple should I go for when writing code?
I read a post once from another (claimed?) ex-employee who said that around 2009 or so, Opera wasn't doing so great and they laid off a dev or two and then after they recovered half a year later, they never re-hired to fill the gap. The poster accounted the technical falling behind to that layoff. Do you share this impression?
As for me, I still use Opera 12 almost on a daily basis and the main issue I have is not broken websites but inaccessible websites because of HTTPS and Opera not supporting enough recent ciphers. The second most frustrating thing is that the JS engine shows its age performance-wise; pages that make heavy use of it for all kinds of dynamic shenanigans get rather sluggish. So my uneducated guess from these observations is that it should have been possible to keep up if they'd wanted to. It's probably that management simply thought using an engine that someone else maintains for them makes it possible to cut down on devs even more. But that part might just be my make-believe world...
Out of curiosity I recently installed Debian Stretch on my Pentium Pro 200 (dual CPU). The text based installer warned that my 128MB of RAM wouldn't be enough for it to finish, but luckily it still succeeded. The system boots within a minute or so and is fairly usable. Running X on s3fb with i3 as the WM, the selection of usable GUI programs is rather limited then admittedly. Still, I guess we really came a long way from 486 to PPro. :-)
Isn't the problem rather that we have instructions to control the cache at all? As far as my research goes, things like CLFLUSH were introduced at the same time as SSE2, which was what, the Pentium III era? We were apparently doing fine without them before that, even with 4+ CPU systems.
I'm currently trying to get the spectre.c PoC to work without using CLFLUSH or similar, but it doesn't look too promising yet. Then again, I only started an hour ago and lack the ability to think in those creative and twisted ways that lead to the discovery of this whole issue in the first place.
Are you able to easily detect whether your account is currently blocked and add some warning to the front page? Would make it easier than just spamming [email protected] until the mails don't bounce anymore...
I have one domain at hand that I don't use for mail at all, so people counter >= 1. I could set any MX/SPF records you want as long as I don't have to change them every two months or so... ;-)
Ah yes, I'm probably too focused on just x86 desktop/server with my everyday work that this didn't even occur to me, so I assumed you were meaning to refer to maintainability/security.
The only thing really worse there is that the number of people who could audit the code is much smaller. That guy wrote a whole SSL library in assember, so he probably didn't just finish some assembler tutorial and decided this was a good first lil project.
Assember is usually just considered bad/dangerous by people who have no clue about it and consider it something magical. It's not. At least not significantly more dangerous than C, which is still the language the most fundamental components of everyday computing are based on.
I got one half a year ago just for fun (and because I wanted integers to be represented in memory the proper way round for the first time in my life. ;-))
I set it up at my workplace because my wife would kill me if yet another desktop PC appears at home, although the design might have appeased here enough. My colleagues just called me crazy for getting this useless old heat producing rubbish. I managed to install debian on it, which was a bit of a hassle (protip: If you only install one HDD, put it in the primary drive bay, otherwise openfirmware and debian will disagree about the disk naming/path and you'll have a bad time) but worked reasonably well in the end.
Also, when upgrading RAM I must have mixed ECC and non-ECC (or buffered and unbuffered?) because I just grabbed the first DDR sticks I could find at work. The machine still worked, but memory bandwidth was cut at least in half or so, notably slower. After I made sure I had matching sticks, everything was fine and I could enjoy the incredible speeds of DOUBLE data rate memory.
Yes, that might be true. I never complained about him before "in public" so there was some steam to release. However I hope I still gave enough clear thought on how I think he is acting wrong repeatedly.
(It's less forgivable to continue being loudly wrong once other people have pointed out real problems more clearly.)
Which only makes it worse. There is a good deal of serious replies to the issue, but because of some trolling, the whole discussion is considered invalid by the maintainers, or at least they make it look like that by just closing it without any further comment. Only about an hour ago did poettering reply again giving some more insight, but the damage has been done and next time there will probably be even more trolling.
Are you reading the same thread as me? He replied explaining precisely why this is an error and received nothing but hate for it, 40 thumbs downs.
No, apparently I'm not. In the thread I read, OP mentioned a regex that he found somewhere on the internet, and poettering just confirms it would be invalid. No references who says it's invalid or where to look up the definition. Nothing. Also no mention of the "default to root" issue in his post, which clearly could be considered a security issue as mentioned in several comments on the issue and here in the comments. He says config options are validated to prevent mistakes, but doesn't give any insight why anyone would consider default to root a sane fallback. You call that "explaining precisely"?
On the other hand, you come here to uselessly complain and have the temerity to complain that poettering doesn't write exactly the code you want him to write.
I gave examples of his contradictory behaviour regarding usability and dangerous pitfalls while claiming systemd would be elegant and easy to use. I'm not complaining he doesn't write code I want, I'm complaining he doesn't practice what he preaches and--as stated by the very first phrase of my comment--to explain why it doesn't come as much of a surprise to me he gets so much hate.
I've been working with systemd since late 2012 and like a lot of its ideas and concepts, but the way this guy deals with bug reports and people is just horrible.
Yes I tried to do research on this on the past. Linux, as in "just the kernel", doesn't care about user name formats as far as I can tell. However, the Linux philosophy goes "try to adhere to POSIX where it makes sense, break it where we think it sucks", which isn't exactly a clear statement, but lead me to conclude that it might make sense to check what posix does, if anything, because everything else is user space, e.g. GNU (coreutils, adduser) and thus isn't tied to Linux. systemd should call into libc and let it deal with the username, so if any of the nsswitch backends think 0day is a valid username and returns a uidnumber, just use it and don't try to be extra clever.
I'm less and less surprised by the hate poettering gets. It's like he's deliberately trying to be as arrogant and ignorant as possible. POSIX says usernames starting with a digit should be fine. But because very few utils have more restrictive rules, systemd arbitrarily follows them too, but reacts in the most idiotic way possible if it considers a username invalid.
Like last time, when in his opinion, "rm -rf *" should have ascended into ".." and shredded the whole file system, just like some systemd tool does. A bug? Usability issue? No way.
What the fuck is wrong with this guy? Since day one of systemd he rallies the world advocating how all the existing init systems are convoluted, full of hacks, hard to maintain while systemd is clean and elegant, and then he seriously defends these insanely stupid unintuitive behaviors? I just don't get it.
So a connection that doesn't exist cam hardly be encrypted now can it? Scnr
But yeah I noticed this trend too in browsers, it's getting harder to get to the technical bits every time they try to make these warnings more user friendly. I usually switch to openssl s_client in a terminal at this point.
> Which, of course, leaves a trail of forum posts, comments, etc, with broken images and links.
I remember this from long long ago, when I was a student and helped running a vBulletin on the side for fun. When I noticed this trend while browsing older posts that had the a lot of imageshack embeds (they apparently deleted old files which weren't accessed that often, also the url format might have changed once) I cobbled together a plugin that would save all posted images locally and then serve those instead. This lead to some protest however by people who had those fancy dynamic images in their signature that would show the currently playing song or similar, so those had to be excluded...
For me it's quite the opposite. I like browsing the web in the evening on a 5 year old tablet. Ever since imgur started redirecting mobile clients to the full site for all direct image links the experience gets worse and worse. They keep adding more scripts and shit over time so currently when opening an imgur link the tablet freezes for about 4 seconds until it starts showing the loading spinner and then it takes another couple seconds depending on image size until I can finally see a plain old jpeg. Every fucking time.
I mean I don't understand the decision to redirect mobile but not desktop at all. Desktops are faster (cpu and connection) and got more screen space to show ads. Why not the other way round?
I might not belong to the majority, but I prefer sharing an office with about 2-4 people. I don't get distracted by that, it rather makes me feel I'm actually working in a team, while sitting in a single room leads more to the feeling of being an anonymous coding monkey.
What helps however is that I'm really good at almost zoning out of the real world when I'm focusing on something to the point that people have to repeatedly call my name for me to notice someone wants my attention. And usually if it's not important they will just leave me be instead of interrupting me for some chitchat.
Then implement that. There are much more lightweight ways to achieve this than going full react. Especially with modern JS this can even be implemented from scratch.
Take HN as an example. Inline replying, voting etc. is undeniably convenient, but there is no way there shouldn't be a full page load when going through paginated results, or opening the comment thread to a post. That requires a couple lines javascript, no bloated js-framework-of-the-month. And the page stays completely usable without JS. A lot of stateful webapps out there aren't any more complex than this, structurally. Bonus: You get a fully working, predictable back button in your browser for free.