How would you clone Metafilter? (kinda) August 12, 2014 5:13 AM   Subscribe

If you were naive, hubristic optimistic enough to want to set up a metafilter like site, but with a specific focus, how would you go about doing that? I don't mean Mefi as a whole with the wonderful subsites, just the part? If there off the shelf free (or cheap) software that could do the job, whilst also be scalable or is it a question of "Stable, Secure, Cheap pick two" ?

General answers are welcome, but if you need specifics, then I'm hoping to capture and archive all the really useful resources that came out of a geek convention [Nineworlds] I attended recently that has lots of internet tendrils but no central forum, or place to look at all the things related to it.

The only other site that looks and feels like Mefi (that I know of) is Whedonesque and that looks like it was built from the ground up to be what it is (code wise)

Ideally I'd like people who attend/attended the con to be able to add links and discuss things.

I've considered a mediawiki type thing, but that is intimidating for casual or beginner users to contribute to.

I've also considered a reddit sub-channel (ready made tech infrastructure) but don't want to engage with what can be the toxic-ness of reddit as a whole. No offense meant to any reddit users.

Finally what kind of legal issues am I looking at in running a site where people not me provide content? If a registered user posts something illegal or get a takedown notice, do I have to provide user details to authorities or does the fact that (like Mefi as far as I know) I won't be asking for users real identities mean I can pass on the details I have but am not obligated to further identify the poster? I am in the UK if that helps clarify the parameters of that part of the question

Initial userbase should be a few hundred people and I would want to have a system where commenters have a to log on not an online free-for-all. Max users should never exceed the single digits thousands.

Is this kind of undertaking someone can do themselves for relatively little money or is it something that needs lots of cash, and a full staff rota to not suck?

Basically is this just one huge bad idea? Or Is it not a bad idea but I'm approaching it all wrong?
posted by Faintdreams to MetaFilter-Related at 5:13 AM (49 comments total) 7 users marked this as a favorite

First you need to clone a pb.
posted by paleyellowwithorange at 5:20 AM on August 12, 2014 [20 favorites]

This seems more appropriate for AskMe. It is not MetaFilter related, you want to build a community site where users can contribute. Have you searched older AskMes for advice?
posted by travelwithcats at 5:24 AM on August 12, 2014 [4 favorites]

Think there's something around there I read about related to this*--

*one of your questions, can't help you with the second one
posted by aroweofshale at 5:43 AM on August 12, 2014 [1 favorite]

Basically is this just one huge bad idea? Or Is it not a bad idea but I'm approaching it all wrong?

It's impossible, tell the sun to leave the sky, it's just impossible
It's impossible, ask a baby not to cry, it's just impossible...
posted by flapjax at midnite at 6:01 AM on August 12, 2014 [2 favorites]

Yeah, this should go in AskMe. MetaTalk is supposed to be for discussions of the site itself.
posted by Sangermaine at 6:15 AM on August 12, 2014

Sangermaine: Yeah, this should go in AskMe. MetaTalk is supposed to be for discussions of the site itself.

Clearly this is why the mods should implement a queue to vet MetaTalk threads before they're posted live...
posted by gman at 6:32 AM on August 12, 2014 [12 favorites]

Sportsfilter does this.
posted by 724A at 6:45 AM on August 12, 2014

For those of you saying this should be in Ask Metafilter, I think Faintdreams can utilize Ask Metafilter once they get perhaps a bit more concrete idea of what they want to do, but if we are going to be discussing Metafilter features, development, bells and whistles and similar, it's more appropriate to do that here, where we can answer specific admin side and coding questions about this site if they come up, that wouldn't be appropriate in Ask Metafilter.
posted by taz (staff) at 6:51 AM on August 12, 2014 [7 favorites]

Ten pinches of weird, twenty pinches of WTF?! (SAIT), two tablespoons of cats in scanners and a metric ton of awesomeness.
Leave to ferment over a holiday weekend when the mods are off and enjoy with a side of popcorn.
posted by arcticseal at 7:28 AM on August 12, 2014

Wasn't Monkeyfilter originally based on MeFi source code?
posted by aught at 7:34 AM on August 12, 2014

posted by unliteral at 7:36 AM on August 12, 2014

Jinx aught.
posted by unliteral at 7:37 AM on August 12, 2014

Just as a side note... I've looked at the MeFi clones (I was originally thinking of going that way for my blog, but) and they don't really seem to be supported or developed anymore in any kind of reasonable way. So there's that.

Hey, #1, maybe there's a potential for a Mefi revenue stream: package the codebase into something more-or-less plug and play and offer it for sale?
posted by feckless fecal fear mongering at 7:39 AM on August 12, 2014 [2 favorites]

Matt can probably tell you, but then he'd have to kill you.
posted by Melismata at 7:41 AM on August 12, 2014

I guess I'm mistaken because I thought he'd made the code available a few years ago. But I must have misremembered something.
posted by cashman at 7:46 AM on August 12, 2014 [1 favorite]

It seems like you want to produce a niche metafilter clone with all of the professionalism and none of the (hard won and unstable) revenue, user base or years of nurturing. Good luck!
posted by Another Fine Product From The Nonsense Factory at 7:47 AM on August 12, 2014

In addition to Sportsfilter and Monkeyfilter, you could look at Gamefilter.
posted by the man of twists and turns at 8:00 AM on August 12, 2014

I guess I'm mistaken because I thought he'd made the code available a few years ago. But I must have misremembered something.

I am pretty sure you are mistaken. I believe metafilter is written in a hodgepodge of Coldfusion and probably has kludgy code that evolved over the years into what you have now. My guess is it's not pretty under the hood. I also think they play the backend mod stuff close to the vest to make sure the badges don't know all the weapons in the arsenal, but I too could be misremembering.

In short, not open source, written in a language used less than Aramaic.
posted by cjorgensen at 8:12 AM on August 12, 2014

Not 100% what you're looking for, but OSQA might fit the bill. You could have the general discussion topics as the "questions", and then people could comment as the "answers."
posted by ralan at 8:27 AM on August 12, 2014 [1 favorite]

I will tell you that if you're looking to do this yourself, and looking to keep it cheap and simple, I would emphatically NOT begin by picking a fully-realized custom site with a full-time developer and then go off trying to emulate that. That is the exact wrong way to go about this.

Instead, look at existing content management systems and see which ones you think might work for you in terms of features. Then, when you've done that, play around with pre-existing themes to see if one of those can do the trick. THEN, maybe dink around with the code some and try and make it slightly more MeFi-esque.

I'd start by checking out with options are already available as easy installs on your hosting platform. My host's control panel will let me install Dolphin, MT, and a few others with a few clicks.

Zikula is also nice.
posted by DirtyOldTown at 8:32 AM on August 12, 2014 [6 favorites]

Stack exchange?
posted by jeffamaphone at 8:43 AM on August 12, 2014

In terms of simple, you could just use WordPress and turn on the "let anyone register" feature. It's a simple editor for contributors, posts would appear on the front page as they are created, it supports jump cuts, etc. Support is easy to find if you need help and most hosting places offer easy set up. If you want a discount code to a hosting company send me an email/memail.
posted by mikepop at 8:51 AM on August 12, 2014 [2 favorites]

Hiring Jessamyn is always a good idea.
posted by Chrysostom at 9:04 AM on August 12, 2014 [3 favorites]

My guess is it's not pretty under the hood.

She may not look like much, but she's got it where it counts, kid. I've made a lot of special modifications myself.
posted by pb (staff) at 9:59 AM on August 12, 2014 [112 favorites]

You can make a decent enough metafilter clone with a simple copy of Wordpress. You'd just need to make people register an account to comment, etc, and could build anything custom you want in PHP off that database (user profile pages, etc). I am pretty sure that's now stavros runs Gamefilter.

Sportsfilter was a one-off clone of the MeFi codebase I did in 2001, and later they rewrote it from scratch in PHP I believe. Wheadonesque is custom, and I believe MonkeyFilter is too, but I had nothing to do with either one. For people remembering a release of the code, some time around 2002 I played with the idea of letting a few programmers on MeFi try and build a PHP clone of MeFi, but it never really got off the ground, because I wasn't the leader but no one else was and it just kind of died after a couple months of emails.

So I'd say start with Wordpress and tweak it from there, it's not that hard to get a very basic version of MetaFilter going off that.
posted by mathowie (staff) at 10:01 AM on August 12, 2014 [5 favorites]

The true answer is: cortex is actually Gilles Deleuze.

Since each of us was several, there was already quite a crowd. We have assigned clever pseudonyms to prevent recognition. Why have we kept our own names? Out of habit, purely out of habit. To make ourselves unrecognizable in turn. To render imperceptible, not ourselves, but what makes us act, feel, and think. Also because it's nice to talk like everybody else, to say the sun rises, when everybody knows it's only a manner of speaking. To reach, not the point where one no longer says I, but the point where it is no longer of any importance whether one says I. We are no longer ourselves. Each will know his own. We have been aided, inspired, multiplied.

This is the true secret of Metafilter.
posted by Pyrogenesis at 10:05 AM on August 12, 2014

All depends on what your "specific focus" is :

Anyone wanting a Q&A site should use a stack exchange clone, not emulate Ask Metafiler.

A community blog-like could be built quickly by adding community features to another blog engine like Wordpress.

Anything only vaguely blog-like might be built on top of a CMS.

And use a wiki if you want to build the site via social norms rather than code.

I'd personally love to see a "community blog" that was really a restricted wiki where users edit one another's comments to produce a more optimal discussion. You could achieve a higher signal to noise ratio than is possible with a community blog like metafilter, while still enjoying the snark. Ain't soo different from a debate wiki really.
posted by jeffburdges at 10:24 AM on August 12, 2014 [1 favorite]

She may not look like much, but she's got it where it counts, kid. I've made a lot of special modifications myself.

She can overthink a plate of beans in less than twelve parsecs!
posted by Celsius1414 at 10:28 AM on August 12, 2014 [3 favorites]

I'd personally love to see a "community blog" that was really a restricted wiki where users edit one another's comments to produce a more optimal discussion.

That sounds kind of weird, but reminds me of how Quora works, where my questions and titles on questions get edited without my say (which I found kind of annoying).
posted by mathowie (staff) at 11:07 AM on August 12, 2014 [1 favorite]

I've also considered a reddit sub-channel

Roll your own? The source code is freely available.
posted by Nonsteroidal Anti-Inflammatory Drug at 11:58 AM on August 12, 2014 [1 favorite]

I'll be in the office shortly and can tell you about Gamefilter and the bits that make it work in a more-or-less MeFi-esque way. It's Wordpress++ basically.
posted by stavrosthewonderchicken at 3:16 PM on August 12, 2014

You comment in that thing? You're braver than I thought!
posted by yoink at 3:21 PM on August 12, 2014 [6 favorites]

I've never used Quora, the greying out answers unless you long in really turns me off. There are facilities for editing both questions and answers of others on stack exchange, but it's either a perk of reputation or admin election.

I've never really thought the wiki discussion thing well enough, but the principle were : Comments, including posts, would be truly collaborative in each comment would've many authors as well as contributors and "me toos". Users could only make themselves authors on only one comment, which they could edit freely, although a comment's first author could boot people off. Also, anyone could submit "contributed edits" for any comment, but that'd require an authors approval. Just an amusing idea though for me.
posted by jeffburdges at 3:31 PM on August 12, 2014

So, Gamefilter. Matt's right that the guts are Wordpress. Although it certainly has its detractors, WP is just getting better and better in most ways, and these days it's getting a lot easier to use it as a generalized content management system, of which just one type is a traditional blog. Plus, you know, I know it well.

In terms of making something that reproduces the important bits of Metafilter, some of those things can be done with plugins, some with plugins and custom PHP/js, and some with just custom code.

First thing, of course, is posting from the front end. There's no access by anyone but admin users to the backend at GFi. There are a number of ways to enable posting from the front end -- I use Gravity Forms and a bunch of custom code built on top of that. The form itself mirrors the structure of the MeFi posting form to some extent, which means I'm saving some stuff (like the main URL if it exists and the main URL anchor text) to metadata fields, which makes them searchable and manipulable in code. Posts are constructed on the fly when displayed from the various pieces -- stuff like tags and categories are handled natively by WP of course.

Next up is community stuff -- profiles, activity streams, favorites, private messages, a member directory and so on. These are handled by Buddypress, an Automattic-sponsored plugin which was shonky as hell when I first worked with it a few years back, but has gotten much better since. I've written a lot of custom code to tweak the way BP works, too, but it handles most of the heavy lifting there.

I split out Favorites (which work like bookmarks) and Thanks (which are a consistent feature across all MefightClub sites, which basically work like Likes -- saying 'this is good'). Faves are handled by BP, I have custom code to handle Thanks.

Achievements (not a MeFi thing) are handled by a plugin, as are most of the security and antispam stuff. I have custom code in place to handle flagging and that sort of thing, but the level of traffic doesn't make it needful at this point.

So, yeah, I think that's most of the main bits, although once you dig in, it's amazing how many little things need attention to make it work the way it should. There are a thousand tiny bits and pieces I've coded to try and reproduce what I figured were the best bits of the MeFi experience, but the bones are basically WP+BP+GF, and from that, it's just a matter of building things out and trying to design it all in a way that hangs together relatively well.

So, hey, since I'm here -- come join us and post and commment at GFi! It's not heavily trafficked yet, sadly, with a lot of lurkers and few posters (mostly me, still, most of the time, which means when I get busy with other stuff, new posts get a bit sparse), and all are, as ever, welcome. I've tried to make it as easy and quick as possible to post, and even if you just stop by to see what's new in quality gaming links, that'd be great.
posted by stavrosthewonderchicken at 4:20 PM on August 12, 2014 [9 favorites]

Having read your actual post now -- I was on my phone before and didn't actually read it carefully -- I'm not sure what you want is a MeFi clone, exactly.

If fast/easy/cheapish are the drivers, I'd probably just go with a hosted or self-hosted install of Vanilla. I use a older, very-hacked-up version of Vanilla for MefightClub itself.
posted by stavrosthewonderchicken at 4:47 PM on August 12, 2014

Pligg is an OSS clone of Digg. It does a lot of what you want, and has answered things like spam control fairly well. It is in reasonable development (a few committed devs and a few less committed, from what I can see).
Worth a look if you want to get something going really fast.
posted by bystander at 7:13 PM on August 12, 2014

It is possible to clone reddit (the fempire does that), but from what I understand, the search function is proprietary so you'll have to add some other search in. I'm not sure why reddit has a proprietary search, because the search on their site is godawful. But they do. You'll also have to build your own Reddit Enhancement Suite because you can't just use the Reddit one on other Reddit-based sites for some reason.
posted by NoraReed at 9:01 PM on August 12, 2014

It's very tempting to focus on the software, which is easy to see, easy to test, and complex enough to require significant thought, focus, and time. And it's true that the software is important.

However, the people and the human systems in place here are even more important. Study those.
posted by amtho at 4:39 AM on August 13, 2014 [1 favorite]

If fast/easy/cheapish are the drivers, I'd probably just go with a hosted or self-hosted install of Vanilla. I use a older, very-hacked-up version of Vanilla for MefightClub itself.

I've been on a similar quest for some time and, at this stage, seem to have decided on self-hosted Vanilla. Something I've learned is that, if you want to change anything, even pretty simple stuff, you are absolutely on your own. It appears to be made deliberately difficult to tinker with (for ambitious idiots like me, anyway) in order to promote the hosted option, where it appears nothing is too difficult as long as you're prepared to pay. Which is fine and everyone has to earn a living, but not very helpful in my specific circumstances.

I did try BuddyPress but kept running into weird issues and lost patience with it, which was annoying because I was looking for something that integrated well with WordPress.

I also looked at Discourse, as recommended here and it looks very good, but doesn't seem to be actually released yet.
posted by dg at 5:51 AM on August 13, 2014

I think you might be served well by creating a subreddit. every subreddit has a different community feel, based on the mods that run it. There are plenty of subreddits that don't have the feel or look of the frontpage.
posted by jrishel at 10:53 AM on August 13, 2014

Stavros describing GameFilter is more or less what I was going to say about Wordpress. I'm not a programmer, and I was able to hack together a social writing site for an academic project using a combination of WP and Buddy Press.

I think what you get out of WP depends on your ability to code. I'm not a programmer, but I was able to put together a decent theme over top of my site. However, all of the stuff that I custom-made to change the core function of the blog (usually by struggling through the codex for a few hours to find someone who was kind of doing what I wanted) felt super kludgey.

Stavros is clearly a good programmer, since Gamefilter never feels like WP. One of the main things I have against WP out of the box is the user interface centering on the dashboard, which I find very unintuitive and off-putting. I've stopped active development on my site, so maybe there's a plugin that has been released that makes it easier to change the posting experience, but that's one huge mark against it in my mind.

On the user end, I've definitely used some WP+BP sites that were just awful. Unintuitive in every way, and hard to find anything useful on.

Still, WP is free, supported, and has a huge knowledge base of other users who are probably also trying to wrangle it in a specific way.
posted by codacorolla at 11:06 AM on August 13, 2014

Thanks, codacorolla. At best, I'm mostly a just-good-enough coder to get myself into trouble, though.

It appears to be made deliberately difficult to tinker with

The way they handled the 2.x branch of Vanilla (a total codebase and structural change from 1.x) infuriated me in a whole bunch of ways, not the least of which is, for lack of a better word, the coding style they adopted. Rather than the model of Wordpress, where functions like wp_get_attachment_url or wp_enqueue_script do exactly what you'd expect from the name of the function (and there is ample documentation, official or otherwise), Vanilla 2.0 is littered with functions with names like T and Q, each of which takes like 5 or 10 parameters, and for which there is literally no documentation outside reading the core code itself and trying to tease out what it's meant to do. Possibly best practice of one kind or another (although I kinda doubt it), maybe, perhaps, somehow, but it drives me goddamned batty when I (sporadically) try and dig into it with an eye to shifting MFC over to the newer version.
posted by stavrosthewonderchicken at 6:14 PM on August 13, 2014

On the user end, I've definitely used some WP+BP sites that were just awful. Unintuitive in every way, and hard to find anything useful on.

Yeah, it's a major problem with Buddypress, one that I've struggled to tame a bit at GFi, more or less by pushing a lot of the BP-centric stuff off to the side for people that want to play with it and keeping the core post-link/comment functionality front and center.
posted by stavrosthewonderchicken at 6:17 PM on August 13, 2014

Ask Brandon Blatcher about whatever he used for Politics Filter.
posted by adamvasco at 6:40 PM on August 13, 2014

Possibly best practice of one kind or another (although I kinda doubt it), maybe, perhaps, somehow
Well, I'm older and probably more cynical than you and I'm convinced it's a deliberate attempt to obfuscate the system to drive people towards paid services. Having said that, as you note, WP is quite easy to customise and I haven't come across anything yet that someone hasn't solved for me already (well, except for one thing, where I got a solution from the support forum within 30 minutes), so maybe I'm spoiled there a bit.
posted by dg at 6:58 AM on August 14, 2014

Oh, I don't think you're wrong. It would fit in with the the overall way things have gone.

Well, I'm older and probably more cynical

I do admit at the tender age of 49, I am still given to seeing the best in people. Heh.
posted by stavrosthewonderchicken at 6:26 PM on August 14, 2014 might be worth checking out. If you have any sort of budget, then it can do a lot of Metafilter type things, but not exactly like the site. It's all out-of-the-box without much customization, though.
posted by codacorolla at 6:37 PM on August 14, 2014

Monkeyfilter is PHP, based on an old open-source mefi clone (called metaphilter? I think), but modified a good bit. Source: I worked on the code to add caching back when MoFi was having performance problems due to growth.

I don't know if the original open-source code is still available anywhere, but you might ask tracicle for a copy (I don't think I've kept one). As I recall, the original code was quite flexible, but a bit messy. If your site grows, you'll run in the same performance problems MoFi did back then, though maybe a bit later since hosting is cheaper these days.

Another issue is security. Though you will have some security through obscurity (which isn't a very good kind of security), the old code could contain security defects.
posted by Monday, stony Monday at 7:52 AM on August 15, 2014

I'm one of the founders of SportsFilter. A couple of years ago I would've used ExpressionEngine for a MetaFilter clone. I've heard good things about Craft, but I haven't used it myself.

These days I'd probably use Concrete5. It has a control panel, but most of the content adding and editing is done on the front end.
posted by kirkaracha at 2:12 PM on August 15, 2014

« Older Like browsing MeFi in a shrouded theater   |   BABY ANNOUNCEMENTS FOR THE BABY GOD Newer »

You are not logged in, either login or create an account to post comments