← Back to all posts

The New Era of Free-DC — A Year of Progress

On April 5th, 2025, Bok handed over the Free-DC servers to me (Skillz) to continue operating the site independently. This marked the beginning of a new chapter for Free-DC, and I want to take a moment to recognize the incredible foundation that was built before I ever got involved.

A huge thank you to Bok for hosting Free-DC at his home for over 20 years. Think about that — two decades of keeping servers running, maintaining uptime, paying for electricity and bandwidth, and making sure the distributed computing community always had a place to track their contributions. Bok, along with Gopher and AMDave, built something truly special. The code, the infrastructure, the community — none of what exists today would be possible without their dedication. Thank you.

Now, here's what's been happening since April.

Getting Things Running (April – August 2025)

When I received the servers, the first priority was simply getting the site operational again. The codebase needed updates to work with modern PHP, scripts needed path corrections for the new environment, and the database processing pipeline had to be verified end to end. It was a lot of detective work — tracing how gatherstats, boinc_parse, and rollover scripts all fit together across two databases that alternate between serving web traffic and processing updates.

During this time I hosted everything from my home, which worked but wasn't ideal for a site serving millions of page views. Uptime depended on my home internet connection and power staying stable.

New Hardware and Datacenter Migration (November 2025)

I invested in new enterprise-grade hardware, including multiple 1.92TB NVMe U.2 drives spread across dedicated database volumes, giving each major database its own high-speed storage. The database server was packed up, shipped overnight to a professional datacenter, racked, and brought online remotely — all in under 24 hours. The site now benefits from datacenter-grade power, cooling, connectivity, and uptime that simply wasn't possible from a home setup.

Fixing and Optimizing Stats Processing

A significant amount of work went into the stats processing pipeline. Some highlights:

  • Diagnosed and resolved severe performance degradation in the daily rollover process. What had ballooned to 7+ hours was traced back to MyISAM table fragmentation and brought back down to approximately 1 to 1.5 hours. Automated optimization now runs every three days to prevent this from recurring.
  • Fixed numerous project-specific parsing issues — UTF-8 encoding problems from upstream BOINC servers, corrupted data recovery, duplicate milestone cleanup, and issues with individual project imports.
  • Resolved PHP memory exhaustion issues on large dataset pages like Folding@Home's 2+ million user listings.
  • Got the "New Apps" stats working again after directory structure changes broke the processing scripts.
  • Updated the codebase for PHP 7.3 compatibility across the board.

New Features Added

Beyond keeping the lights on, I've been building new things to make the site more useful:

  • User Authentication System — A brand new standalone login and registration system, replacing the old forum-based authentication. Secure PHP sessions with bcrypt password hashing and hCaptcha spam protection.
  • Live Chat — A chat page integrated with our Discord server, so messages flow both ways. Logged-in users get their username automatically and skip the captcha.
  • News System — You're reading it! A dedicated news page at free-dc.org with an admin panel for publishing updates to the community.
  • News Ticker — A scrolling ticker on the stats site showing announcements, upcoming events, and community callouts.
  • Project Status Monitoring — Real-time Grafana dashboards embedded directly into project pages showing task throughput, server health, work unit status, and historical trends. Data is collected every minute from each project's server status feed.
  • CPU Catalog — A community-driven database of CPU images and specifications that appear on host pages. Includes a curator role system so trusted community members can contribute without needing full admin access.
  • About Us and Privacy Policy Pages — Proper informational pages explaining what Free-DC is, our history, and how we handle user data.
  • Updated Site Pages — Refreshed the About page with current information, added proper navigation, and ensured visual consistency across the site.

Infrastructure Improvements

Behind the scenes, the infrastructure has been significantly hardened:

  • Comprehensive backup systems on dedicated NVMe storage.
  • Automated table optimization to prevent performance degradation.
  • Server monitoring and alerting through Grafana and Netdata.
  • CSF firewall and ModSecurity for security hardening.
  • Let's Encrypt SSL certificates across all subdomains.
  • Dual-database architecture maintained and documented for continuity.

What's Coming Next

There's still a lot I want to do. Here's what's on the horizon:

  • Systems Status Page — A public-facing dashboard at status.free-dc.org showing database health, processing status, disk usage, and overall system state so the community always knows what's going on.
  • Chart Migration — Moving from ChartDirector to Apache ECharts for open-source, interactive charts that work better on modern browsers.
  • Enhanced Event Integration — The news ticker will eventually pull from a database with countdown timers for BOINCGames sprints, BOINC community events and project milestones.
  • Banner System — Community event advertisements in the header area to help promote BOINC events such as SETI.Germany's Pentathlon and other participating events within' the DC Community.
  • Donation Transparency — A detailed page showing all incoming donations and outgoing expenses so everyone can see exactly where the money goes.
  • Continued Optimization — Always looking for ways to make the site faster, more reliable, and more useful.

This has been an incredible amount of work, and I'm proud of how far things have come in less than a year. But Free-DC has always been a community effort, and it still is. If you want to help out — whether it's curating CPUs, reporting bugs, suggesting features, or just spreading the word — come find us on Discord.

Here's to the next 20 years.

— Skillz