SoylentNews History
One of the most influential sites on the early Internet was Slashdot, a technology news site originally run by hobbyists that's still active to this day. This is the story of how the Slashdot community fragmented due to corporate meddling, and the formation of SoylentNews, a similar site founded as a spiritual successor to the "old days" of Slashdot (an effort our own NCommander was heavily involved in).
For the raw logs of the interview that documented this story, see SoylentNews History Log
Slashdot
Founded in the early 90s by CmdrTaco and CowboyNeal, Slashdot was a cornerstone of the early internet. As one of the first ever technology news websites, it was highly sought after; in the time of the dotcom boom, large "internet landmarks" like these changed hands often. Eventually, after many years of changing hands, Dice Holdings (operators of the Dice.com job site, among other things) acquired Slashdot from its previous owner, Geeknet (operators of Thinkgeek). This was a routine move for the site, as it had changed hands many times before -- but by this point (around 2012), most of the original editors were long gone. It was a different era for the site.
Post Purchase
Dice were very involved in Slashdot's operation, implementing many minor changes to the operation of the platform. This unnerved many of the long-time residents of the site, but there was a major change that proved to be the straw that broke the camel's back for the "old guard" of Slashdot -- the implementation of Slashdot Beta.
NCommander comments:
Like it was this horrid whitespace meme; it turned a very information dense site into a wordpress block...It was like if every page of the print New York Times was double spaced.
The mission at this point was clear: an alternative would need to be created.
SoylentNews (is people)
Thankfully, true to the hobbyist origins of the original Slashdot, the software used to run the site was once open source. Although it was abandoned over the many acquisitions of the site, there was still a languishing Git repository on SourceForge containing a much older version of the original Perl source code for the Slash platform than the version currently in use by Dice; although it would take a lot of work to get running again, there was hope that with enough eyes and a bit of elbow grease, the old Slashdot would live again.
Several community members (including NCommander) gathered in the #alphaslash Freenode IRC chat and started brainstorming. The idea of new Slash implementations was nothing new -- alternatives like Pipedot and Technocrat were around, with brand new PHP implementations of a similar platform. However, this wouldn't do for the (soon to be) SoylentNews team. They would be dragging the original Slash kicking and screaming onto the 2014 internet.
What is Slash, anyway?
Slash is the original codebase for Slashdot, dating all the way back to the original launch of the site. Written by hackers and hobbyists in an era when hackers and hobbyists writing entire web applications was nearly unheard of, Slash is a mess of ancient Perl and old conventions. This isn't to say it's not clever, to be clear. A product of a time when CPAN modules were installed directly to the system and Apache's mod_perl was in its infancy, Slash's developers had to be... resourceful, to say the least.
Everything in old Slash is a static page by the time it reaches the user. This was important in a time of limited bandwidth and processing power. Tricks such as keeping scorecards in Apache's own shared memory space for task synchronization, a custom Perl-based cron replacement, and more were employed in order to keep server costs low, and response times fast, all the way back in the early-to-mid 1990s.
Information was found by BlackCoffeeDrinker regarding the hardware in use by Slashdot at one point [1]:
Slashdot currently has 16 web servers all of which are running Red Hat 9. Two serve static content: javascript, images, and the front page for non logged-in users. Four serve the front page to logged in users. And the remaining ten handle comment pages. All web servers are Rackable 1U servers with 2 Xeon 2.66Ghz processors, 2GB of RAM, and 2x80GB IDE hard drives. The web servers all NFS mount the NFS server, which is a Rackable 2U with 2 Xeon 2.4Ghz processors, 2GB of RAM, and 4x36GB 15K RPM SCSI drives.
Besides the 16 web servers, we have 7 databases. They currently are all running CentOS 4. They breakdown as follows: 2 Dual Opteron 270's with 16GB RAM, 4x36GB 15K RPM SCSI Drives These are doing multiple-master replication, with one acting as Slashdot's single write-only DB, and the other acting as a reader.
2 Dual Opteron 270's with 8GB RAM, 4x36GB 15K RPM SCSI Drives These are Slashdot's reader DBs. Each derives data from a specific master database (listed above).
Lastly, we have 3 Quad P3 Xeon 700Mhz with 4GB RAM, 8x36GB 10K RPM SCSI Drives which are sort of our miscellaneous 'other' boxes. They are used to host our accesslog writer, an accesslog reader, and Slashdot's search database.
Due to its age, getting Slash running was no easy feat. Because of the quirks inherent to such an old and strange design, it relied on ancient versions of Apache and mod_perl, with strange configurations. Thankfully, someone was up to the task...
Getting Slash going
NCommander got to work. Spinning up a new Linode VPS, they installed MySQL and compiled their own patched Apache 1.3 and Perl installations. Reliance on these old versions of the software stack would certainly have to change to bring changes like proper SSL support and security; but for now, just getting it working was the first priority. CPAN as a whole was getting old and crufty at this point -- dealing with the ancient CPAN bundle that Slash required was a monumental task, but one that could be conquered.