If you could give 10 years of development time to up to 10 software projects, which would you choose?

starman@programming.dev to Asklemmy@lemmy.ml – 143 points –
  • You can choose up to 10 software projects.
  • Each project receives 10 years of development time as if all the programmers worked continuously for that duration, following their current working methods.
  • After choosing these 10 (or less) projects, everything else remains unchanged in the world, as if time has been frozen for 10 years.

Which projects do you choose?

102

I would give it all to BOINC !boinc@sopuli.xyz. I donate time and money to this project on a regular basis, but I wish more people knew about BOINC because projects like this give me faith in humanity. BOINC is a open source tool scientists can use to distribute massive computational workloads to the computers of volunteers. Any scientist can use it without institutional backing or approval, it's an open network operating on the petaflop scale. Users can choose which projects they compute for.

BOINC has been used for medical research, finding new asteroids, and identifying new particles at the Large Hadron Collider. Anybody remember seti@home? Ran on BOINC. BOINC was also used to make the first accurate 3D model of the sars-cov-2 spike protein and even helped lead to the design of a shelf-stable vaccine which was distributed to millions. Plus, the project Minecraft@home used it to find the tallest cactus. BOINC has resulted in hundreds of scientific papers that without BOINC would never have gotten funded due to the cost and complexity of the computation involved.

But there is some serious technical debt and usability issues and BOINC has a long-term trend of declining userbase.

1 more...

Proton/WINE. I never want to have issues playing games without windows ever again.

Signal: Because I want better messaging, and somehow they already achieved some adoption.

Firefox: If Firefox can somehow make their browser miles ahead of chrome, I think that'd be just plain good for the world.

Gitea/Forgejo: I think Github is another one of these centralized platforms that's pretty ripe for disruption (and gitlab is just not gonna do it).

Lemmy: It'd be amazing to have all the kinks ironed out of lemmy.

Mastodon: Same thing as lemmy. Get social media out of the hands of big companies.

Mail-in-a-box: I want to be able to host my own email if I want to. Proton is great, but isn't email supposed to be an open standard?

Framework: Not exactly a software project, but man I'd love to see them get the time to push out a ton of great different products and really spark the right to repair movement. It's the first device I was actually excited to buy.

Linux Mint: I don't use mint, but it seems like one of the most user friendly distros. I would love for them to make everything perfect and create a seamless experience (and really make a year of the linux desktop). I also think it would be great to just have one clear frontrunner for new users.

Coreboot: Make firmware open source? Yes please.

Truly Open Source LLM: I really don't want this tech to be in just the hands of just a big company. I'd love for there to be an LLM that has not only it's weights open, but the full dataset, training methods and everything open.

I think when you just get 10 years of dev time, you get an opportunity to push a project ahead of all it's competitors. It is kind of interesting to get to pick and choose a project to be the frontrunner (even if they aren't currently).

I think signal is really only missing usernames (which should come soon) as far as features are concerned. And sadly, I don't think it will change much. I think signals problem is not really feature wise but adoption wise.

Signal needs more marketing. It needs a bigger user base. And I honestly don't know how to change that. Maybe some really top notch marketing strategy, with beautiful diagrams and text of some made up scenarios explaining the perils of using Instagram and whatsapp..

I think you're right?

I also think they're on the right track (and a better track than apps like telegram - lots of negative social baggage). They really have gotten much farther than any other privacy focused apps.

I don't know, maybe I have a more optimistic view of the situation. It feel like they're knocking on the door of going fully mainstream.

Really? I feel like they have worsen their numbers after disabling sms support. I had a few people with whom I could chat on signal. They all moved away. I now have 0 ppl. I still have it installed but ya..

I moved away from signal and so did a number of people I knew. Because sms stopped working

Ya, looked into it and I'm wrong. I still think there is potential but...

Telegram is way bigger than I thought. Its bigger than snapchat. 😯

For me it would be:

  • Helix: Great editor but needs a lot of development
  • Lemmy: 3rd party frontends would have a hard time to catch up with changes, but it's worth it anyway
  • GNU: they could update some stuff and also hurd kernel looks really interesting
  • Arch Linux: maybe they would improve wiki or write some software to make life easier on arch
  • .NET: I know that microsoft bad but I really like .NET, and it's devs are doing really nice stuff. And it's FOSS
  • LibreOffice: they could integrate LLMs into their apps maybe
  • Wayland: why not?
  • Firefox: maybe they will improve performance and catch up with some css features
  • Hyprland: it's working fine at it's current state, but it always can be better
  • Nouveau: it would be a nice alternative to proprietary nvidia drivers

What about Mono? Looks like most of the people working on .NET are working out of Redmond at Microsoft.

I know microsoft bad

I second that, big corp bad

Kubernetes so that it can peak already and then die off.

Disclaimer - I make a living on k8s based solutions and I’m over the stupid complexity for little benefit. It’s like expecting everyone to be a “10x” engineer or some shit when reality is that most of us are just over here sniffing glue.

1 more...

If I’m thinking about projects that could benefit the most from an exponential increase in active developers:

  • Wine/Proton (could have a fantastic windows runtime on every *nix platform)

  • ReactOS (lot of potential for a windows 7/10 upgrade path)

  • Mozilla Firefox (would help with API parity with chromium)

  • GIMP (but only if they agree to change the stupid name)

The rest goes to package managers and other lower-level projects that don’t get enough of a spotlight, maybe Brew or Curl or something.

API parity for Firefox meaning, implement Chrome's proprietary crap, or are they actually lagging on web standards? Last time I checked was admittedly a while ago but I thought ff was the leader for standards compliance.

ReactOS is one I haven't heard about in quite a few years. That one would be really cool to see get a lot more dev time.

An actually really good Linux CAD program.

Yes please! While we're at it, non subscription beginner friendly cad program

Coreboot, NixOS, Firefox, Lemmy, Briar, Gemini, Calibre, Godot, MIRI (though admittedly that one is maybe less of a 'software project per se, so if that doesn't count i'll say 100 Rabbits just cause i think their stuff is neat) and i think i'll take the last decade for my own personal project(s).

  • AOSP(Android open source project)
  • Linux
  • designing one low level emulator
  • making my own game engine
  • reverse engineering and source code recovery of my childhood games.
  • writing firmware for my personal laptop and phone so, it runs on fully on open source code.
  • writing my own compiler and JIT runtime.
  • making my own Standard C Lib.
  • write my own minimal Desktop environment based on wayland without using graphics library like QT and GTK.
  • i also want to write my own hypervisor.

(I explain and link to the ones that I don't think everyone here would know about)

  • Lemmy

  • ActivityPub

  • Firefox (Chromium should go the way of IE)

  • Godot

  • WINE

  • Cinnamon (the desktop environment developed for Linux Mint, so we can get Wayland support)

  • Box86/Box64

  • Darling (macOS compatibility layer for Linux, plans to support running iOS apps when running on on ARM machines in the future, I want this primarily for iOS preservation purposes)

  • Xemu (Original Xbox emulator, OG Xboxes are some of the most failure prone consoles and a game I want to play still has serious issues)

  • Haiku (mostly for really nerdy shits and giggles honestly, but there's a part of me that thinks it could be a better consumer grade FOSS OS than GNU/Linux if it were more developed and had any actual software support. As it stands, like it's proprietary predecessor BeOS, it's just a toy. It's no less stupid than investing your theoretical time in Hurd IMO)

Is chromium bad by itself or is it bad because Google controls it? Because then maybe we should get chromium out of Google's control instead?

Re: haiku what do you find so promising about it? I've played around with it. I imagine it isn't just the desktop experience?

To be clear, "part of me" is really doing a lot of work here.

Haiku feels more "rigid." GNU/Linux is ultimately, a pile of parts instead of a cohesive whole, and it shows in the user experience even in distros made with user friendliness in mind. GNU/Linux's modularity is a good thing for many uses, but it also makes GNU/Linux feel incoherent to use at times and just means the Linux ecosystem will always be fragmented. FreeBSD has the rigidity, but isn't developed with average end users in mind and is particularly unusable as a gaming OS. Currently Haiku isn't really usable for much of anything, but Haiku's vision of a cohesive open source OS that is designed with a laser focus on personal computing users makes sense and I could see being recommended over Linux if it were achieved (though, I don't believe Haiku in the real world where we can't just fast forward development ten years can achieve this.)

Matrix, its clients, and Revolt. I'm sick of there not being a featureful Discord alternative the most.

They already collected tens of millions of venture capital funding for an inefficient reinvention of XMPP. Can we boost XMPP development instead? We don't need another corporate replacement for an existing internet standard.

I still can't wrap my head around how smoothly Matrix took over the FOSS IM space while offering nothing new

People like shiny things. They should build on the existing internet standards, and make a shiny XMPP client. Instead we get yet another incompatible protocol.

Is it shiny though? Last time I used riot.im or vector.im or whatever the client was named, it was no less clunky than converse.js. Nowhere close to, say, Discord or Telegram.

That was in year 201x, I'm sure they got better since then, but that was the time when they gained popularity

Linux kernel

OpenBSD

Gnu Hurd

Debian

Tor

Fdroid

SteamOS

Vulkan / DXVK

Wayland

Firefox

1 more...

I've got a few that are similar to other posts in here, but what I'd really like is an open source game similar to The Sims. Specifically, one that tries to achieve the goals of Sims 3.

Sims 3 could have been an amazing game, but EA half-assed it making mediocre content and not fixing bugs.

If the game was open source, all those bugs would be fixed, the game would be optimized, and it would still be relevant today. But while open source is great for maintaining and improving big software projects, it's not good for creating them in the first place. So that's where I'd put ten years of development - creating an open source life simulation game.

I'd use it to kill platforms.

HTML5 is a fine executable format. Electron sucks because it bundles a browser with each webpage. The technical hurdles are smaller than the mountain of usability issues we'll have to sand down, to make "web apps" Just Work. Native apps will always be better, but we've accidentally done a Java with write-once-run-everywhere, and it's ridiculous how poorly we've used that.

On the back end, we have nearly-invisible translation layers like WINE and fairly efficient emulators like BOCHS, so there's no reason Windows apps shouldn't run on everything. x86, ARM, RISC-V, whatever.

SPIR-V should already let you treat the GPU like a zillion-core CPU. Nvidia's CUDA bullshit has gone on too long.

And then drop in some not-quite-emulators for consoles, since they're just PCs anyway. End the charade.

I'm going to start with a couple projects that don't already exist.

  • Something like the AUR but for non executable content like movies or books. I'm imagining something like;
    (program name) -m (medium, eg. Book, magazine, article (or "print" for any text document) Show, Movie (or video for any video document) and so on) (search term)

  • A project that allows a full installed-in-place Linux installation with grub and all, no USB drive required. If that's a two stage thing where it partitions a section of the drive then installs an installer there, then reboots to that installer, or some other thing doesn't matter. No, not whatever Ubuntu used to do, I mean a proper installation.

  • A program that tricks lan games into playing in side by side couch coop. I've figured out a method for doing this using multiseat on swayWM but it's pretty complicated and touchy.

  • An open source car computer software. Not for the infotainment.

  • An open source printer that works.

  • A liquid democracy voting system

Things that actually exist:

  • Minetest, specifically creating tools to help existing Minecraft mods be ported over.

  • GIMP

  • IPFS, try to get it in use in more places by default (AUR seems promising?)

  • Wine

A project that allows a full installed-in-place Linux installation with grub and all, no USB drive required.

This could be possible today. A combination of PXE booting and FAI would be enough. I think you'd just need to work out a way for PXE to work over the public Internet. Otherwise you'd need to have the image downloaded already and have it available via web server to be accessible from the booting machine. Years ago I used iPXE and it was really nice. Haven't used it in a loooong time.

Also, Talos is doing some really interesting install processes as well. Basically you boot a small (~80mb) image, it exposes a network port, and you send it a machine configuration manifest. It all runs in memory until the configuration instructions are sent, then it installs. There isn't even an option to install it locally because local auth is not allowed and ssh is not included. You must do it over the network. Talos is all kubernetes so might not be what you're looking for but it's an interesting approach.

  • MorphOS (as someone who is a fan of Amiga)

  • SuperTux Advance (much better than plain old SuperTux in my opinion)

  • Even though I'll probably never end up even starting it, I'd love to see my idea for an open source clone of Vib Ribbon for PC to happen (game name under debate)

  • Krosmaga (I love this card game and would love to see new cards or even new deity classes to play as like Pandawa or Osamados)

  • Steam Proton (just to see a much higher percentage of Steam games work on Linux/SteamOS if possible)

All of it to the next generation of Pokemon games

I just want to see how GameFreak manages to fuck it up even with all the development time they could possibly ever need

4 more...

The next four Zeldas, the next Metroid, the next Mario, the next Smash Bros, the next three Elder Scrolls

1 more...
  1. KDE Project
  2. Wayland
  3. Open source drivers (especially Nvidia)
  4. Lemmy
  5. Mastadon
  6. Scribus
  7. Nextcloud
  8. Firefox
  9. Tutanota suite
  10. Wine

Nextcloud and nc integration apps. The integration to android ls so much further behind the windows desktop / web experience, using nc in a browser on android is often better than the app (due to lack of features, not because of bugs those are fine in my experiance)

llama.cpp

Matrix chat

the Fediverse

and some self-hosting framework

(and maybe just for shits and giggles to buttplug.io just to see what amazing thing this will become)

Honestly, there's a lot of great answers in this thread. Personally, I'd love to see a FOSS ttrpg manager. Talking a complete library of monsters, races, classes, etc., along with an optimized pipeline for homebrewed stuff. Tools for encounter, battlemap, NPC and campaign flow creation.

Closest thing is 5e Companion App but it doesn't have a PC client, isn't FOSS, has a lot of weird limitations and UX/UI issues (like multiclassing could be simpler, and its really frustrating that you can't level down a character after all the work you did, forcing you to do it all over again just to change classes and spells). Also DnD next but getting source books for a whole player session is expensive.

Foundry is probably the closest I've seen, considering the non-premium modules are FOSS. Granted, I play Pathfinder (OGL/ORC license), not DnD, so I dunno if Wizards locks their stuff down more to promote using their own services.

Hm, interesting, I'll take a proper look tomorrow. I'm expecting that foundry only has srd available. That's another annoying thing.

You can import things from 5e.tools using a module, IIRC it's called Plutonium. We're using it to import items, spells, classes, etc. and then the DM is homebrewing everything else.

Ooo, cool, thanks! I'll talk my guys into splitting the cost after this campaign is over. We're using Owlbear rn, but I'm doing everything myself on Sheets, Ps, Ai, Notion and making my maps in Rimworld. Hefty workflow I'm not sure the next person who wants to DM will be down for.

figure out a way to slam all 100 years into cybersyn related projects. kill pinochet with a mech made out of bakelite and woodgrain paneling

  • Mesa
  • Noveau
  • Wine
  • Proton
  • RedoxOS
  • GNU Hurd
  • KDE Plasma
  • Kdenlive
  • LibreOffice
  • Nushell

Edit: There are even more projects that need some development like Linux, Wayland and some BSDs

If I truly had this power, I'd somehow get far more engineers on ReactOS then use all 10 uses on ReactOS. ReactOS is honestly the thing that is going to replace Windows if anything does. Linux is just too different and not user-friendly. People can argue it is now or it's growing that way but realistically the underlying Linux ethos is that "you should know your computer." Ain't no one wants to know their computer. They just want to use it. ReactOS is just 50 years behind Windows at this point.

Linux mint is pretty basic to use if I'm being honest

It's basic, laggy, and doesn't work with Minecraft, setting up Xbox controllers on it is hit or miss and requires you to know your computer more than not. Had to use a sketchy github repo xone. Even using a Wacom tablet with it has some pretty silly bugs like with the tablet setting, I told it to absolute map to my left monitor, but it was mapped to my right. I switched to the other monitor on this list, was still mapped to my right. No way to map the tablet to the left monitor. Getting Rocket League to even run was sketchy and I had to install the Steam flatpak over the official repo version, no clue why but otherwise it'd hang on installing Direct X.

So yeah, a bunch of extra annoying work that no one wants to do at best and at worst removes absolutely needed functionality I need for my workflow. I used Linux as my daily driver from when I was in college in 2008 and into my first and second jobs. In 2014 I dropped it because my third job required Windows. I then realized how much easier everything really was on Windows and what I had been putting myself through to simply manage a decent desktop environment. I still dual boot and even today I was in Linux Mint with Cinnamon but I still end up on Windows for the majority of stuff I want to do.

I experience literally zero of those issues you mention. Literally I experience more issues on windows than I do with mint

Yup, anytime I ever bring up issues like this to Linux users "Oh yeah, that's never happened to me" and "You must have done something REALLY messed up!" is the typical response. Whereas if I ask Windows or Mac users who used Linux "Yeah, that's Linux for you, every time I've tried it." It's silly to even try to bring it up at this point because I know the canned responses of "well it works for me." which is why you still use Linux and most people don't. You just have the exact setup that Linux caters to.

You mean a bog standard motherboard with CPU and nividia GPU mostly used for gaming and webbrowsing.

Eta windows in the only is I have ever had issues with printer drivers on as well now that I'm thinking of it

Eta though on we hardware like the tablet that particular set up does have its known issues but I'm a keyboard and mouse gal personally

I mean that's exactly what I have. Simple Nvidia 3070 with some random Mobo and 64 GB of RAM. An Xbox controller and a Wacom tablet aren't exotic. Most people will have an Xbox controller if they play any racing game or vehicle game on PC. Lots of artists exist. Wacom tablets are for drawing and are not a keyboard/mouse replacement but are used alongside them for things like Krita, Gimp, and Blender.

CUPS typically works for all printers on Linux, it's one of Linux's strongest systems. In my opinion, the better move is to never need to print anything. Print everything to PDF, sign digitally, and send stuff to my phone if I need it on the go.

  • Linux

Obviously

  • Wayland

So we can finally say goodnight to X

  • XFCE

For low-end devices and people who don't like bloat, we can still have a modern desktop.

  • Nouveau / NVK

Nvidia are currently dominant, so new users probably have Nvidia GPUs.

  • Open-source AMDGPU stack.

Why not? I'm only five items in.

  • Blender

I want fast fluid simulations and RTGI in eevee.

  • Godot Engine
  • OnlyOffice
  • Appflowy
  • Affine.pro
  • Debian
  • Forgejo/Gittea
  • Blender
  • Linux Mint
  • Postgresql

Blender, FreeCAD and Godot! Amazing pieces of software, that I can't wait to see what develop into.

I'd throw all the development time into EMACS. It's a great operating system, but lacks a good text editor.

Can I give two projects 50 years each?

That would be very unpredictable but also fun

Or go with a self driving car project as that's consistently '10 years away'.

Then I'll go Google bard and chat gpt3. Having both of those being massively advanced could have some really interesting consequences.

Linux, Wayland, Firefox, kde, proton, Pipewire.

Nobara, kden live, free cad, only office.

Ubuntu Touch, Ubuntu Touch, Ubuntu Touch, Ubuntu Touch, Ubuntu Touch, Ubuntu Touch, Ubuntu Touch, Ubuntu Touch, Ubuntu Touch and Ubuntu Touch.

2 more...

Proton wrapper Gadot or similar Cura slicer Linux mint Kenshi 2 New stalker AMD Drivers

A game engine designed around efficiency so that developers can focus on mechanics, graphics, etc

Edit: alternatively a reverse engineering AI which can reverse engineer anything from isa to video games and more

10 years of development is insane, and I feel like some projects will be limited by the hardware and other software that isn't being updated. You'd have to spread out the 10 amongst projects that can help each other.

Would this also depend on who is currently working on it, or would the project also get a stable number of developers working full time?

Firefly iii

Nextcloud

And 8 others

Pantheon: Rise of the Fallen, x10

  • A CUDA-accelerated JPEG-XL library
  • An AMF-accelerated JPEG-XL library
  • A QSV-accelerated JPEG-XL library (can you tell I hate AVIF and HEIC?)
  • Godot
  • Godette
  • 5 projects developing quantum-proof cryptography

Doesn't quantum proof cryptography already exist?

Well yeah but cryptography needs 2 things more than anything: variety and research. Variety so you can quickly switch ciphers if some vulnerability comes up, and research to publish those vulnerabilities so that bad actors aren't the only people who know about them.

  • Jellyfin
  • Proton (mail/etc.)
  • Cinnamon DE
  • Actual Budget
  • A project that lets you access your financial data from all your US banks programmatically
  • Tandoor
  • Immich
  • A crypto that combines XNO and XMR
  • Rhasspy
  • Home Assistant