An open sourced Speedrun.com would be awesome and I was wondering if there are any plans to get there. Enabling the community to help with bugs, issues, and features would be massive boon to the site and to developer sanity. LiveSplit has had success here with around 40 people so far contributing code that's been merged.
Is there anything we can do to help move in this direction?
Wouldn't it better to use just the API ? An open-source website could be very dangerous for its safety, especially when visitors are glitch experts (they might find a breach).
Having an API and being open source solve different problems. APIs are for data (games, runners, WRs, etc.). Open sourcing allows people to fix bugs or write features. Like if I noticed a page loading slowly, I could go figure out why, and maybe make a pull request to the SRDC guys with some code that runs more efficiently.
As for security: it's like sharing strats for your game. Everyone wants to bring times down, so you share info. When the community has an air of openness, people generally don't keep things to themselves for their own benefit. This is why blueprints for buildings go on public record. More eyeballs is better, not worse. We all collectively want SRDC to be 100% secure, and we'll help if we can. But right now we can't.
Other open source speedthings: LiveSplit PBTracker Splits I/O WSplit
This has been brought up periodically over the last couple years. I would personally prefer to go the route of getting more qualified people actively involved in private capacity.
Standalone programs, especially those not including account information are much more practical to maintain as open source. The security ramifications relating to sites hosting userdata, accounts, forums, etc are inherently more substantial. The example of PBTracker seems more comparable, but I also suspect it is more lightweight in its implementation. I'm sure you know these things, but I'm emphasizing the comparison.
I do not know of any major community with our user density, accounts, forums, and (working towards) private messages, that chooses to be open source.
Comparable Sites: SpeedDemosArchive SpeedRunsLive TASVideos Smashboards TeamLiquid.net Shoryuken
Smashboards runs on XenForo (Ctrl+F page source for XenForo), which anyone can purchase the source for: https://xenforo.com/ TASVideos uses phpBB for its forum (see footer), which is open source: https://github.com/phpbb/phpbb Shoryuken uses Vanilla (see forum footer), which is open source: https://github.com/vanilla/vanilla
You bring up good points though. The problem with getting everyone who ¤would¤ work on it if it were open source to work on it while it's closed is that it's incredibly hard to discover these people. The pool is already very small (speedrunner-engineers) and the people in it are likely not seeking to join an inner circle just to make their change. They just want to fix a typo, or speed up an endpoint, or adjust the alignment on an out-of-place div.
The best way to get good long-term developers is to lower the barrier to entry such that you don't have to trust them with the keys to the castle just for them to figure out if they enjoy working on SRDC. Then, the people who do eventually turn into long-term devs won't be turned off before they start.
Correct me if I'm wrong but I believe reddit is open source: https://github.com/reddit/reddit
That might not be the complete repo for reddit or I could simply be mistaken but it is still something that others do.
Obviously, it's different as well since if a vulnerability if found in something like reddit, they have teams of people who can work around the clock to fix it whereas speedrun.com is made up of volunteers. The same rules might not apply.
I generally support open source projects but I do understand why you wouldn't want to release it at this time. If only to go through the current code base with a fine tooth comb before putting it out to the world.