Good luck web devs

Zangoose@lemmy.world to Programmer Humor@programming.dev – 1456 points –

::: spoiler Alt text: Twitter post by Daniel Feldman (@d_feldman): Linux is the only major operating system to support diagonal mode (credit [Twitter] @xssfox). Image shows an untrawide monitor rotated about 45 degrees, with a horizontal IDE window taking up a bottom triangle. A web browser and settings menu above it are organized creating a window shape almost like a stepped pyramid. :::

Edit: alt text

170

Another funny concept

Hmm yes, web dev horrors beyond my comprehension!

That, right there, is a perfect example of why folks need to stop trying to shoehorn web apps everywhere they don't belong. It's a use-case for a proper native mobile app if ever there was one.

even if it's just mobile

you already have to handle landscape/portrait mode

now imagine having to handle angled

That's why you should've just handled arbitrary rotations instead of inventing a finite predefined set of orientation "modes" in the first place.

Things get a lot easier in the long run if you aggressively look for commonalities and genericize the code that handles them instead of writing bunches of one-off special cases.

And this is why my webapp only renders properly on circular displays.

Peak evil - well done. How much is the extra fee to wrap a letterbox around the circle on a conventional aspect ratio?

There's good money in this idea!

Personally I went for the globe display, because I figured that was a more globally applicable format.

true

however

everything would be fluid in the layout and you would need to set what should go on top of what. And having this feature doesn't seem worth the hassle of making if work, or even using it.

Imagine trying to type in a 'fluid' keyboard

TBH tho, seems like a cool gimmick for some apps.

That's called over-engineering for use cases that don't and won't exist. Please lecture us some more though.

You mean the browser handles alignment instead of every single web dev?

Yeah, but I don't want to have an app on my phone for a store I go to once. I don't give a fuck if the page is ugly.

That just means it shouldn't be a native app or a web app, but instead should be a plain ol' webpage that doesn't try to do app-y things in the first place. The notion that web pages have any legitimate reason to know your viewport size (let alone anything at all about the screen hardware itself) is like one of those "statements dreamed up by the utterly deranged" memes, except not satirical.

Seriously: literally the entire defining principle of HTML (well, aside from the concept of "hyperlinks") is that the client has the freedom to decide how the page should be rendered, but misguided -- or megalomaniacal -- graphic designers webmasters front-end web "devs" have been trying to break it ever since.

Lol - in your other comment you suggested that web devs key off of screen rotation to resize the page, but now you're saying the client shouldn't know anything about the viewport at all? Which is it? And why would the rotation angle be useful if I don't know the aspect ratio of the screen? Or are we now assuming that widescreen will be a thing forever? I thought your ingenius idea was to be able to handle any use case.

Lol - in your other comment you suggested that web devs key off of screen rotation to resize the page, but now you’re saying the client shouldn’t know anything about the viewport at all? Which is it?

Legitimate apps key off screen rotation do fancy stuff. Web pages let the browser render them and don't try to do fancy stuff. It's not that fucking hard.

Follow up question, would it ideally work like the old Java Applets then, where you have to explicitly ask to launch a web app?

or a web app, but instead should be a plain ol’ webpage

I did not know about that distinction.

Hmm, so are there actual inadequacies in the browser-rendered standards that lead people to do this? I'd buy that it's purely webpage sponsors wanting to be an all-powerful decider that controls what everyone sees and possibly thinks, but on the other hand I don't know enough about browser rendering and page design to be sure. All my webpages are pretty spartan and scream "backend guy".

It'd sure be nice if we could go back to circa-2012 with no popups or stupid bloat.

I sort of agree with you to a degree, but I also think that the browser having knowledge of the size of your viewport actually has some use. Now, I would probably like it more if all webpages were just made with the restriction of not knowing the viewport size since that would dictate some design choices. Cellphones can just scroll around the page anyways. They should be second class citizens on the internet anyway in my opinion. The smartphone has been one of the worst inventions for the human race with how much it seems to isolate a lot of people more than connecting them.

Huh? How's this an example of web apps being bad?

The thread OP has an axe to grind against web devs because he thinks they've ruined the Internet.

This could totally be adapted into a game for a very interesting immersive experience. Imagine entire worlds of gameplay that adapted to the orientation of your viewport.

shoehorn web apps everywhere they don't belong

Who is doing that? In my experience, "web apps" are on the web or occasionally on desktop and are fine. Slack for example, is a fabulous desktop app and has used web tech from day one to great success

VS code is an electron app, there are a few others that have a simple enough purpose that they shouldn't be using a whole dedicated chrome engine to function.

Vs code is an exemplary app and supports what I'm saying. As far as others...what's the right amount of complexity for using electron? Imo the maintenance advantages alone almost justify using it. It's not appropriate for every app but slack and vs code are pretty stellar examples of how well it can work.

VS code is a good app in spite of using electron, not because of it. There's no reason a simple plaintext editor needs to allocate 300MB of ram even without extensions just to launch, and there is definitely no reason a plaintext editor should require compiling chromium to build from source.

Slack is fine, but only when you exclusively use slack. Throw in an actual browser, discord, VS Code, Whatsapp, teams (?), etc. each with their own chromium instance and now your 16GB of ram are being eaten up at idle.

I mean yeah it's a little heavy. Same trade off everyone makes every time they load a web app of any kind.

I run a lot of those apps concurrently and I don't have issues with not having enough ram.

Why does this low key feel like something I would actually want to use

Yeah, I actually miss this sometimes, when I'm lounging in some weird position. The question is how much the keyboard would suck.

Like all of it.

I'd be awkward to hold at that angle.

No, holding it would be fine in some situations. It's probably resting on a chair arm or something while my head is on the seat.

Because you are not immune to propaganda.

I hear that anti-geometrists are trying to get the pythagorean theorem banned in schools now.

ah yes, i've been propagandized into... wanting my phone to have a diagonal mode

there are very few things more politically neutral than this.

Congratulations. In almost 30 years, this is the first thing that finally made me want to throw my phone when I saw it.

Smart phones haven't existed for 30 years...

I’ve had cell phones for 30 years. Never mentioned anything about them being smart the whole time.

What would you be able to see on a 30 year old cell phone that would make you throw it? A weird number?

i'd like to know what hallucinogen you're on or neurological damage you have, as you keep responding to things i never said-- i never mentioned a 30 year-old cell phone.

So "in 30 years" you never wanted to throw your non existent cell phone. Your original comment just doesn't make sense.

It doesn’t make sense to you, because something is very wrong with your brain.

Best of luck with that

Well now i wanna use it(probably works in linix phone?)

Linux phones aren't supported because it's an Xorg feature. Usually Linux phones use Wayland for the better (touch) experience. If someone wanted to they could implement it on a Wayland compositor, but given that no other OS I know of supports diagonal mode, I wouldn't hold my breath.

Honestly though, I have an iPhone SE and holding it diagonally like that is pretty comfy. Could actually be on to something here.

BRB, sticking microcontrollers to the back of my monitors so I can use their accelerometers to report the orientations in real time...

I would love it so much if xrandr was able to keep up with that and didn't blink for 3 seconds every time you changed orientation

Maybe a custom Wayland compositor could keep up

Linux is the only major operating system to support diagonal mode

I’d just like to interject for a moment. What you’re refering to as Linux, is in fact, GNU/Linux, or as I’ve recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.

Many computer users run a modified version of the GNU system every day, without realizing it. Through a peculiar turn of events, the version of GNU which is widely used today is often called Linux, and many of its users are not aware that it is basically the GNU system, developed by the GNU Project.

There really is a Linux, and these people are using it, but it is just a part of the system they use. Linux is the kernel: the program in the system that allocates the machine’s resources to the other programs that you run. The kernel is an essential part of an operating system, but useless by itself; it can only function in the context of a complete operating system. Linux is normally used in combination with the GNU operating system: the whole system is basically GNU with Linux added, or GNU/Linux. All the so-called Linux distributions are really distributions of GNU/Linux!

No, Richard, it's 'Linux', not 'GNU/Linux'. The most important contributions that the FSF made to Linux were the creation of the GPL and the GCC compiler. Those are fine and inspired products. GCC is a monumental achievement and has earned you, RMS, and the Free Software Foundation countless kudos and much appreciation.

Following are some reasons for you to mull over, including some already answered in your FAQ.

One guy, Linus Torvalds, used GCC to make his operating system (yes, Linux is an OS -- more on this later). He named it 'Linux' with a little help from his friends. Why doesn't he call it GNU/Linux? Because he wrote it, with more help from his friends, not you. You named your stuff, I named my stuff -- including the software I wrote using GCC -- and Linus named his stuff. The proper name is Linux because Linus Torvalds says so. Linus has spoken. Accept his authority. To do otherwise is to become a nag. You don't want to be known as a nag, do you?

(An operating system) != (a distribution). Linux is an operating system. By my definition, an operating system is that software which provides and limits access to hardware resources on a computer. That definition applies whereever you see Linux in use. However, Linux is usually distributed with a collection of utilities and applications to make it easily configurable as a desktop system, a server, a development box, or a graphics workstation, or whatever the user needs. In such a configuration, we have a Linux (based) distribution. Therein lies your strongest argument for the unwieldy title 'GNU/Linux' (when said bundled software is largely from the FSF). Go bug the distribution makers on that one. Take your beef to Red Hat, Mandrake, and Slackware. At least there you have an argument. Linux alone is an operating system that can be used in various applications without any GNU software whatsoever. Embedded applications come to mind as an obvious example.

Next, even if we limit the GNU/Linux title to the GNU-based Linux distributions, we run into another obvious problem. XFree86 may well be more important to a particular Linux installation than the sum of all the GNU contributions. More properly, shouldn't the distribution be called XFree86/Linux? Or, at a minimum, XFree86/GNU/Linux? Of course, it would be rather arbitrary to draw the line there when many other fine contributions go unlisted. Yes, I know you've heard this one before. Get used to it. You'll keep hearing it until you can cleanly counter it.

You seem to like the lines-of-code metric. There are many lines of GNU code in a typical Linux distribution. You seem to suggest that (more LOC) == (more important). However, I submit to you that raw LOC numbers do not directly correlate with importance. I would suggest that clock cycles spent on code is a better metric. For example, if my system spends 90% of its time executing XFree86 code, XFree86 is probably the single most important collection of code on my system. Even if I loaded ten times as many lines of useless bloatware on my system and I never excuted that bloatware, it certainly isn't more important code than XFree86. Obviously, this metric isn't perfect either, but LOC really, really sucks. Please refrain from using it ever again in supporting any argument.

Last, I'd like to point out that we Linux and GNU users shouldn't be fighting among ourselves over naming other people's software. But what the heck, I'm in a bad mood now. I think I'm feeling sufficiently obnoxious to make the point that GCC is so very famous and, yes, so very useful only because Linux was developed. In a show of proper respect and gratitude, shouldn't you and everyone refer to GCC as 'the Linux compiler'? Or at least, 'Linux GCC'? Seriously, where would your masterpiece be without Linux? Languishing with the HURD?

If there is a moral buried in this rant, maybe it is this:
Be grateful for your abilities and your incredible success and your considerable fame. Continue to use that success and fame for good, not evil. Also, be especially grateful for Linux' huge contribution to that success. You, RMS, the Free Software Foundation, and GNU software have reached their current high profiles largely on the back of Linux. You have changed the world. Now, go forth and don't be a nag.

Thanks for listening.

No, Richard, it's 'Linux', not 'GNU/Linux'…GCC is a monumental achievement and has earned you, RMS, and the Free Software Foundation countless kudos and much appreciation.

Are you implying that this user is the real Richard Stallman? If that’s true, this thread just got 100x more hilarious.

some people allege that the copypasta was created by him (i doubt this)

There is one part which he didn't say, regarding how linux is part of the gnu system when the gnu kernel is actually gnu hurd

Don't feed the trolls.

I'm pretty sure everyone here understands both sides of the argument, but just don't concider it important enough to change their vocabulary.

1 more...

The proper name is Linux because Linus Torvalds says so. Linus has spoken. Accept his authority.

This ain't a bdsm club, so this is a bad argument.

Maybe you'll like it more under this new guise: I named my cat Goofyball. But since Linnaeus named the species Felis catus, you remind me that my cat's name should ackchyually be Felis catus/Goofyball. To which I reply, very appropriately, 'it's MY cat'. So Goofyball it is.

Understand now the authority argument? Authority in the sense of authorial, having an author.

Linus didn't choose Linux because he thought it sounded too self-centred.

and then he went and named a project 'Git'

you authored your cat? why does that sound dirty?

Sorry if I mistake your intention. If that's the case, it's just me making a wrong guess.

You're probably misreading this.

I authored THE NAME. If you prefer, I'm the name-giver, the author in this sense.

Linus is the namer and the creator of that kernel.

As creator he is by right allowed to name his creation whatever he likes. Just like me, as the cat 'entity creator as a pet' am allowed to name it whatever I like.

No outsiders input required. You get now what I mean by author?

Whatever your reply may be, let me thank you already for engaging. It's nice to be pressured to explain something in simpler, more accessible terms.

1 more...

I've been using it for more than 20 years, but I still love when someone pulls the GNU/Linux card.

To me it feels like reading an old plaque in Latin. It reminds me of an important past that shouldn't be forgotten.

You can have a Linux distro without GNU -Alpine Linux is a popular example

You can have a GNU distro without Linux - Debian GNU/Hurd and Debian GNU/kFreeBSD are popular examples

I think "popular" is stretching it here, Debian GNU/kFreeBSD is dead now, and while Hurd is interesting, it has ways to go.

Alpine is actually popular, particularly as a lightweight host OS to run docker.

Honestly, I think the only interesting micro kernel right now is Redox OS.

Haven't seen this copy pasta in a few months. Great stuff...

So, GNU is GNU is Not Unix, but now it's not Linux either?

GNUOL ?

3 more...
3 more...

Not on wayland, right? Time to pester wayland devs to add this important missing features!

Probably would fall into scope of a compositer in Wayland, rather than the protocol. I suspect it originated with old CRT displays. Sometimes they can appear scan diagonally.

Even without that usecase, I think it's great to have around in order to support novel displays and display-like devices.

How many minor operating systems support it? 🤔

I think ToaruOS does? I remember reading something about it but haven't managed to install it yet to verify.

Edit: found it

Why would you want this?

What if your monitor has a bullet hole you want to avoid looking at?

Why does your monitor have a bullet hole?

Why do you ask so many questions? ಠ⁠_⁠ಠ

Why don't you answer them?

Because then words like "evidence" and "premeditated" get thrown around.

Because asking and answering too many questions was exactly how they ended up with a bullet hole in their monitor.

I came back to my office after the new year's break and a stray bullet, from I'm assuming celebratory gunfire, was shot through the wall and hit my screen. Admittedly it wasn't a hole and the screen was totally unusable after, but I'll be a close n=1.

A bullet hole would be slightly less annoying than the one green dead pixel I have at work.

(insert image of Mt. Everest)

Because It's There.

It’s a novelty. I for one deeply love unusually shaped monitors and UXs.

Could be useful for an interactive art installation or something alike.

Possibly to run those strangely shaped outdoor billboard signs

I thought it was surely just a joke but looking at the devices to the right maybe this was due to limited desk space?

It could be useful if you live in a submarine that is always emerging/submerging.

How can you do fractional rotation? Does it only work with x11 or is it also supported in wayland?

Rotating the display by a custom angle is possible through xrandr on X.org.

There's no Wayland protocol for custom angle rotation, and I don't expect anyone to create a protocol extension without a use-case.

My wild guess: Theoretically it should be possible for a compositor to support similar custom rotation, as applications simply draw to their surface (window), without knowing how and where it is displayed on the viewport (display).

But it might require quite a bit of work, depending on the project, so I don't expect to ever see custom rotation on anything besides smaller/niche compositors.

[1] https://unix.stackexchange.com/questions/552138/rotate-a-display-by-custom-angle#552140

There’s no Wayland protocol for custom angle rotation, and I don’t expect anyone to create a protocol extension without a use-case.

Puh-lease. It's Wayland; the devs fully and honestly expect every app developer (eg.: calc, Libreoffice, notepad.exe) to implement custom angle rotation on their own.

There’s no Wayland protocol for custom angle rotation, and I don’t expect anyone to create a protocol extension without a use-case.

[gestures at thread] Does this not count??? 😁

Seriously, though: I suspect there might be non-novelty use-cases in mobile devices, especially things like smart watches. Those aren't beyond the scope of Wayland in the long run, are they?

Ok I was joking with the images but now that I think about it this would likely be pretty useful to have on smart watches with circular displays.

E.g. having the watch face rotating to face towards the wearer would be a pretty neat concept. Definitely something I'd want a toggle for though.

Smart watches tend to be microcontroller class devices because even though you can fit something powerful in there, powering it and heat dissipation make it silly.

The usual embedded-type application for wayland that it's even especially designed for is automotive: Things without window management but not particularly hardware-restrained. Also think public transit ticket machines, ATMs, such things. In that sense, from wayland's perspective android is already desktop.

I was looking into this earlier to try fixing a display that was being offset on an old tv screen. The display was going off the left side of the TV, causing a black bar on the right side.

I was trying xrandr, and fixed it somewhat by offsetting the display back, but somehow it did not fix the right side - it seemed as if the display had went under the black bar.

But yeah you can offset, stretch, skew and rotate with xrandr

The --rotate normal,inverted,left,right does not work, but you can use the transform option to achieve the same effect. To create the transformation matrix you can use something like: https://angrytools.com/css-generator/transform/

  • for translateXY enter half the screen resolution
  • don't copy the generated code, it has the numbers in the wrong order just type out the matrix row wise.

The final command looks like this:

xrandr --output screen-1 --transform 0.87,-0.50,960,0.50,0.87,540,0,0,1

To restore the original use (type this in first, because if you screw up you might not be able to see anything anymore):

xrandr --output screen-1 --transform 1,0,0,0,1,0,0,0,1

I tested it on x11.

Did you check the actual TV settings? Some of them let you adjust where picture is displayed iirc.

It only had two modes for the VGA source, 16:9 and 4:3. The 16:9 is the right ratio for the laptop but had the offset issue. The 4:3 makes it stretched out / squashed, but it doesn't have the offset issue.

I remember seeing the video of this. The guy was doing it for shits and giggles, but it ended up looking great!

Ha~! WebDevs haven't cared about desktop for years.

Product owners, you mean. They are the ones that determine support level of browser and as a result, what testers focus on. Devs don't focus on things that aren't a priority because otherwise they're working on that on the evenings and weekends free of charge.

I won't try implement something like this even my boss forces me.

No one does this kind of stuff because someone asked them to do it. This is the kind of useless, insane stuff you do for the lulz, or because someone dared you.

a great prank for computer labs... just rotate everything by 0.5 degrees...

Yeah, keep adding 0.5 deg every minute or so.

Add a randomizer that has a chance of resetting it back to normal every now and then for maximum chaos

Hey I know that guy he liked a few of my jokes on Twitter