If you could give 10 years of development time to up to 10 software projects, which would you choose?
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.
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.
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).
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.
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).
(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)
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.
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.
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)
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)
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.
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.
Whatever enables me to boot different OSs from my phone or arm devices including dual booting and booting from external storage without missing drivers
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?