this post was submitted on 03 Sep 2023
359 points (98.4% liked)

Programming

18180 readers
7 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 2 years ago
MODERATORS
 

I've said this previously, and I'll say it again: we're severely under-resourced. Not just XFS, the whole fsdevel community. As a developer and later a maintainer, I've learnt the hard way that there is a very large amount of non-coding work is necessary to build a good filesystem. There's enough not-really-coding work for several people. Instead, we lean hard on maintainers to do all that work. That might've worked acceptably for the first 20 years, but it doesn't now.

[…]

Dave and I are both burned out. I'm not sure Dave ever got past the 2017 burnout that lead to his resignation. Remarkably, he's still around. Is this (extended burnout) where I want to be in 2024? 2030? Hell no.

top 50 comments
sorted by: hot top controversial new old
[–] redcalcium@lemmy.institute 158 points 1 year ago

Reminds me of this xkcd post:

[–] NateNate60@lemmy.ml 111 points 1 year ago* (last edited 1 year ago) (14 children)

This problem is pretty common across most parts of the Linux space. Everyone wants to volunteer coding work, which is great, but not what's desperately needed right now.

The Linux community needs more than programmers, or else it will consist only of programmers. We need UI/UX experts, or we'll never have the simplicity and ease of use of iOS. We need accessibility designers or we'll never match up to the accessibility of MacOS. We need graphic designers and artists or we'll never look as good as Windows 11. We need PR professionals and marketing experts or we'll never be as notable as the Windows XP startup sound.

We don't have enough volunteers that fit into these categories. The next best thing you can do is contribute your money so that your favourite project can hire the people they need.

[–] ______@lemm.ee 53 points 1 year ago (1 children)

I don't know a single ui person or artist that gives a single f about open source.

I think as a dev you naturally grow to respect the open source space because of how much you take from it.

I would love to be proven wrong though

[–] torpak@discuss.tchncs.de 10 points 1 year ago
[–] JackGreenEarth@lemm.ee 50 points 1 year ago (1 children)

That's more the desktop environment than the Linux kernel though. Gnome, for example, is a simple, good looking, accessible desktop environment.

[–] NateNate60@lemmy.ml 20 points 1 year ago (3 children)

I love and use GNOME daily, but I think it's still the case that the interface "needs some getting used to" for a Windows/MacOS user. The design paradigm is just not familiar or self-explanatory to anyone who has regularly used desktop computers in the past decade.

[–] sederx@programming.dev 10 points 1 year ago (1 children)

but I think it’s still the case that the interface “needs some getting used to” for a Windows/MacOS user.

why do you think thats unreasonable? its a different system

[–] NateNate60@lemmy.ml 4 points 1 year ago (6 children)

I think it is unreasonable because a Windows user (i.e. myself) can quickly get up to speed with MacOS within five minutes without the need for external instruction. I can manage a MacOS system perfectly fine even without any prior knowledge of how it works. I can figure out how to configure the settings to do what I need it to do without needing to search for how to do it online.

GNOME took almost a week to get used to and remember where things are located, such as what is located in Settings, how the task flow works, and so forth. I never got used to the "disappearing dock". I had to use an extension for that. GNOME is just way more different than the others. Meanwhile, my grandpa picked up Cinnamon as a lifelong Windows user within five minutes.

load more comments (6 replies)
[–] szczuroarturo@programming.dev 6 points 1 year ago

I mean going from windows to mac os also needs getting used to beacuse Obviusly they are not the same systems . Each of those has diffrent design philosophy. And out of all linux GUI gnome is the simplest( In my opinion also the best looking one ). And most of the rest also takes very little of getting used to since they are very similar to either windows or MacOS( elementary ).

[–] JackGreenEarth@lemm.ee 4 points 1 year ago (1 children)

What are the main issues in getting used to it do you think?

[–] russjr08@outpost.zeuslink.net 18 points 1 year ago (1 children)

The first thing I always hear from people trying out gnome for the first time is along the lines of "Where is the minimize and maximum buttons?" and depending on what programs they use "where is the icon tray" (app indicators, or the "system tray" on Windows).

Whenever I try to explain the devs' philosophies regarding those, they quickly have lost excitement so generally these days I just start people on KDE.

[–] JackGreenEarth@lemm.ee 6 points 1 year ago (1 children)

The minimise and maximise buttons are in the same place they are on windows, to the left of the close button?

And by icon indicators, do you mean the dock? It's possible to pin that.

[–] russjr08@outpost.zeuslink.net 7 points 1 year ago (2 children)

Gnome by default does not have those buttons enabled. Their design vision is for you to not actually have to minimize a window, but rather if you need to focus on a specific window either maximize it (in which you double click the app's header or drag it to the top of the screen), or move that window to a different workspace. The options are technically still in Gnome, and can be enabled via either dconf editor, or through the Gnome Tweaks app - however, a few distros enable it out of box. If you use a distro that has a more vanilla Gnome experience, such as Fedora, this won't be the case.

By icon tray / app indicators, I mean apps that show some sort of status or shortcut in the bottom right area of Windows / KDE (or the top right of macOS). On my desktop right now, that would be Discord, JetBrains Toolbox, and KSnip (the last two are extension icons).

One of the major reasons I outright hate Gnome, they have strong opinions on how the users should want to use their computers. "You shouldn't want to minimize windows, so we disable the button to do that."

No thanks.

load more comments (1 replies)
[–] Sigmatics@lemmy.ca 36 points 1 year ago (4 children)

I mean, Microsoft and Apple have career pages stating exactly what is needed. Does Linux have something like this for volunteers? I think it's just very inaccessible to someone from the outside. Maybe start there, improve the recruitment of volunteers

[–] Potatos_are_not_friends@lemmy.world 23 points 1 year ago* (last edited 1 year ago) (1 children)

It's extremely inaccessible from the outside. Non-devs don't know what to do with it.

We brought Linux laptops into our company (1500+ laptops during the pandemic) and after a year, half the devs and design team switched to Macs. The Linux users who stayed are pretty much using the laptop as a glorified netbook where they just use Google doc suites. And whenever they encounter a problem... Searching leads to nerds arguing about what version of Linux they should be using instead. Or the answer requires them to go into terminal to fix a problem.

I have a bunch of users asking about Elementary OS, for the sole reason in that it "looks" good.

load more comments (1 replies)
load more comments (3 replies)
[–] yasha@beehaw.org 22 points 1 year ago (3 children)

How does someone like me, a PhD candidate who has a background in Human-Computer Interaction, contribute? Or the accessibility researchers I collaborate with who sit one office down and use and love Linux and make their own hacks for Linux to improve its accessibility?

I think part of the problem is a matchmaking (as as you said a PR) problem. I'm sure a lot of the experts you describe would love to contribute some cycles (including myself) but your post is the first time I'm hearing that people like me are needed in my HCI capacity. Otherwise I would have assumed there are plenty of programmers better than me available so why bother?

[–] OsrsNeedsF2P@lemmy.ml 18 points 1 year ago (1 children)

How does someone like me, a PhD candidate who has a background in Human-Computer Interaction, contribute?

Start a blog where you get users to try and complete a task on a stock Linux install, and write about it.

"Given a stock Debian XFCE install, users were tasked to connect their Airpods pro. Here's what happened"

(Even doing this for Lemmy, I.e. "find a community about birds", would be insanely helpful)

A blog like this would help give focus for developers on what needs to be improved, in every part of the stack!

I like that. It seems the internet with theoretically good answers for things that can be difficult to find. Blog format is much easier to skim that SO, and as long as the post titles are valid and meaningful, it’s a quick check for usefulness before reading.

[–] gamer@lemm.ee 6 points 1 year ago

I think ui/ux has the opposite problem where there are not enough programmers. Idk if there is a shortage of ux people, but I do know that it takes a significant amount of work to implement and maintain ui projects.

If you are interested in helping out though, you should join the discussion forums for a project like KDE or Gnome. I doubt the Gnome people will give you the time of day, but there are many KDE projects that would appreciate volunteer work from someone like you. Browse the discussions at htltps://discuss.kde.org and see if you can find a project to latch on to, or find a project you think you can improve, and proactively reach out to the maintainer(s) with a proposal.

Just be mindful that it may take a while before your changes are implemented, since everyone is a volunteer with other jobs and responsibilities.

[–] heeplr@feddit.de 6 points 1 year ago (1 children)

use open source software. whenever you see potential to improve, open an issue with detailed explaination.

try to solve the problem yourself. send pull requests. adapt them according to instructions by devs. when they're good, the will get merged.

if you use the software a lot, contribute whenever you think something is needed.

[–] uniqueid198x@lemmy.dbzer0.com 10 points 1 year ago (7 children)

that second part is exactly why there is a lack of hci work in the linux space. Hci is a specialty, just like coding is. The standard ask of "create a pr with the code" is asking peopae who don't typically code to do so, in addition to doing the work of researching the problm, designing a solution, and then testing that solution for suitability.

Since the only mechanism most open source projects have for accepting contribution is code, and the ask is usually for code, there is never even an opportunity to submit design work.

[–] NateNate60@lemmy.ml 5 points 1 year ago

I think most of the time if they have a Github/Gitlab repo open to the public opening issues, they will accept an issue that merely describes a problem that needs to be fixed along with how it might be fixed.

Something like this is generally appreciated:

I'm an HCI expert and ____ should be improved to do ____ because of ____. I'm willing to volunteer to do design work on this to help the project out

...and if the maintainers ask for contact info, provide it and there you go.

load more comments (6 replies)
[–] liori@lemm.ee 22 points 1 year ago

This plea for help is specifically for non-coding, but still deeply technical work.

[–] flakusha@beehaw.org 12 points 1 year ago

I'm not sure the UI/UX is anyhow related to kernel development.

I3/Sway/Hyprland/other WMs are already much more superior to anything that can be achieved in Win/Mac desktops in terms of flow and performance. Only polishing is needed. Other desktop options like Gnome/KDE are fine and more lightweight desktops are okay too. They need polishing too, but already great.

[–] Spzi@lemm.ee 11 points 1 year ago

Without too much knowledge, I have the strong feeling this is equally true for the Fediverse and Lemmy.

And while it is fairly obvious and straight forward how to contribute as a programmer, it's less so for all the other, equally important, tasks.

[–] ReversalHatchery@beehaw.org 4 points 1 year ago (1 children)

I understand what you say, and I partly agree, but neither do I want the forced simplicity of iOS on Linux, nor graphic design like windows 11. And I'm pretty sure I'm not alone. Please don't uphold these as some holy grails, they are not.

[–] Lucky@programming.dev 12 points 1 year ago

They didn't say anything about "forced simplicity". Not everything is a slippery slope

load more comments (6 replies)
[–] Techmaster@lemm.ee 68 points 1 year ago (3 children)

Step 1: Don't murder your wife

[–] 5714@lemmy.dbzer0.com 21 points 1 year ago (2 children)

This must be a reference to someone, right? Casual femicide sounds a bit off.

[–] ikidd@lemmy.world 34 points 1 year ago* (last edited 1 year ago) (1 children)
[–] 5714@lemmy.dbzer0.com 8 points 1 year ago (2 children)

Awful and horrifying.

I think a lot of people don't know that about ReiserFS. 'Geek defense', wtf.

I'm old. I was around for it. It was a shock to the Linux community.

load more comments (1 replies)
[–] banazir@lemmy.ml 6 points 1 year ago (5 children)

Oof. The filesystem was great though.

load more comments (5 replies)
load more comments (1 replies)
[–] stevecrox@kbin.social 46 points 1 year ago* (last edited 1 year ago) (5 children)

The linux kernel is very old school in how it is run and originally a big part of the DevSecOps movement was removing a lot of manual overhead.

Moving on to something like Gitea (codeberg) would give you a better diff view and is quicker/easier than posting a patch to a mailing list.

The branching model of the kernel is something people write up on paper that looks great (much like Gitflow) but is really time consuming to manage. Moving to feature branch workflow and creating a release branches as part of the release process allows a ton of things to be automated and simplified.

Similarly file systems aren't really device specific, so you could build system tests for them for benchmarking and standard use cases.

Setting up a CI to perform smoke testing and linting, is fairly standard.

Its really easy to setup a CI to trigger when a new branch/pr is created/updated, this means review becomes reduced to checking business logic which makes reviews really quick and easy.

Similarly moving on to a decent issue tracker, Jira's support for Epic's/stories/tasks/capabilities and its linking ability is a huge simplifier for long term planning.

You can do things like define OKR's and then attach Epics to them and Stories/tasks to epics which lets you track progress to goals.

You can use issues the way the linux community currently uses mailing lists.

Combined with a Kanban board for tracking, progress of tickets. You remove a ton of pain.

Although open source issue trackers are missing the key productivity enablers of Jira, which makes these improvements hard to realise.

The issue is people, the linux kernel maintainers have been working one way for decades. Getting them to adopt new tools will be heavily resisted, same with changing how they work.

Its like everyone outside, knows a breaking the ABI definition from the sub system implementation would create a far more stable ABI which would solve a bunch of issues and allow change when needed, except no one in the kernel will entertain the idea.

[–] Deathcrow@lemmy.ml 13 points 1 year ago* (last edited 1 year ago) (1 children)

Similarly moving on to a decent issue tracker, Jira’s support for Epic’s/stories/tasks/capabilities and its linking ability is a huge simplifier for long term planning.

Modern ticket system or issue tracker? Yes, absolutely. But Jira? Certainly not, considering Atlassian's business practices. A project like Linux deserves a system where they can maintain some control and it probably should be open source.

Yeah email is ancient and certainly terrible from a usability perspective if you're an outsider to the workflows, but at least it can't be shut off or taken away on a whim. Also it's universal and therefore accessible.

load more comments (1 replies)
[–] cmeerw@programming.dev 12 points 1 year ago

and its linking ability is a huge simplifier for long term planning.

What long term planning? Who is going to come up with that plan? Will everyone agree to that plan? Who will be paying for the resources to work on that plan?

Combined with a Kanban board for tracking, progress of tickets. You remove a ton of pain.

I am not seeing how that would help. What are you going to do if there is no progress on something? Fire volunteer X because he didn't make progress on ticket Y (as he has no interest in ticket Y)?

[–] liori@lemm.ee 4 points 1 year ago

Kernel is not a monolithic application, and you cannot develop it like one. There are tons of actors: independent developers, small support companies (like Collabora), corporations, all with different priorities. There is a large number of independent forks (e.g. for obscure devices), that will never be merged, but need to merge e.g. security patches from the mainline. A single project management tool won't do, not your typical business grade tracking&reporting tool.

CI is already there. Not a central one—again, distributed across different organizations. Different organizations have different needs for CI, e.g. supporting weird architectures that they need to develop against.

There is a reason Torvalds created git—existing tools just wouldn't work. There might be a place for a similar revolution regarding a bugtracker…

load more comments (2 replies)
[–] ABotelho@lemmy.ca 29 points 1 year ago (1 children)

There are so many filesystems. So. Many.

Have any of them considered actually dropping some and pooling efforts into the more promising ones?

[–] Mindlight@lemmy.world 11 points 1 year ago* (last edited 1 year ago) (1 children)

Isn't "anyone can fork if a project doesn't really fit their taste" sort of the curse of open source?

Swallowing your pride, merging into another project and taking a less glamorous role in that project is not as easy as it was to fork when steering your project.

This is generally speaking. I'm definitively not saying any of this is that case with the XFS project.

Ps. Murdering your wife is also something that seems to be bad for filesystems....

load more comments (1 replies)
[–] onlinepersona@programming.dev 27 points 1 year ago* (last edited 1 year ago)

Boy do I find mailinglists impossible to read.

Ontopic: I appreciate what these people are doing, but were I them, a lousy community would have me quit very quickly or never join the project to begin with. Maybe the should just quit and when shit hits the commercial fan, they'll either pay to get it fixed, get somebody on it to get it fixed, or move on.

Probably fixing whatever non-dev problems they have to make it a nice community to join wouldn't hurt either. For me, it's the lack of time and C code. C is a language I absolutely will not touch. There's not much worse than it IMO and it's refreshing to see rust slowly entering the kernel with all its tooling.

[–] Sanctus@lemmy.world 26 points 1 year ago (1 children)

Is there a link to help? I want to help

[–] neanderthal@lemmy.world 11 points 1 year ago (1 children)

What kind of non-coding work do you need done?

load more comments (1 replies)
[–] kitonthenet@kbin.social 4 points 1 year ago (2 children)

I’m having trouble understanding the email, is this for people to help with fs or xfs or both or are they effectively equal? The linked patch is for XFS which I understand Darrick has quit, is he still on fsdevel? Is this plea for either ?

load more comments (2 replies)
load more comments
view more: next ›