5 ms·
Reddit goes open source - the actual announcement from reddit.
- icey 18y agoOr, if you just want the code: http://code.reddit.com/ http://code.reddit.com/
- noodle 18y agopretty cool wonder how long it will take for the flood of clones. i can see it now: "now that they're open source, i can build that reddit clone for elite tech and startup news that i've always wanted to build"
- icey 18y agoI think there will be an initial flood of clones, but only maybe 3 or 4 semi-successful ones. Remember how everyone said there would be a billion Slashdots when Slashcode was open sourced?
- deleted 18y ago[deleted]
- bayareaguy 18y agoYes, but reddit looks a lot cleaner than slashcode.
- petercooper 18y agoI concur. Several years ago I wrote a "clone" of MetaFilter (which was quite popular at the time) called FreeFilter. A bunch of *Filter sites sprung up with only a few actually "sticking." I don't believe any continue to exist now though.
- pxlpshr 18y agoI actually see this as a good thing for once. The internet needs more content/quality aggregators that are user-driven, not SEO/link-farm tainted. And niche markets are probably the best way to achieve that. I actually hope this will be disruptive, and popular sites return to servicing their audience directly instead of relying on Digg, for example. Digg has become so popular that it almost needs it's own nested-digg now, a rather ironic self-defeating problem with social popularity and vertical growth. I mean, don't get me wrong... I suspect Digg will continue forward and be hugely successful. Hats off to the reddit team.
- fiaz 18y agoThis is a great move. But it only makes sense after a community with momentum is in full swing. The community experience is the driving force behind reddit/digg/HN/mixx/slashdot/etc successes, not the technology.
- andreyf 18y agoThe community experience is the driving force [...], not the technology. Absolutely. I'd be much more impressed with a comprehensive API for votes/comments/stories.
- iamelgringo 18y agoThanks, guys. Really nice job.
- jimbokun 18y agoAnyone find any clever ideas, designs, idioms in the code yet? I'm not interested in starting a reddit clone, but am interested in reading interesting code. The one file I glanced through was readable, straightforward, and concise, the hallmarks of good Python style. That's a very good thing, but I'm wondering if they've done anything especially clever, or implemented anything generally applicable beyond the realm of discussion sites. Not that they should. Clear, concise, readable, simple code that builds on existing, open code wherever possible is a wonderful recipe for success. But I'm still interested in whether they went beyond that anywhere.
- mrkurt 18y agoThey actually use PostgreSQL's user defined functions, which is kind of cool.
- asnyder 18y agoHow is that cool? That should be standard with PostgreSQL. User defined functions lend themselves to be used, and are far easier to do in PostgreSQL than other databases. It's shocking that using functions/stored procedures is an anomoly, it should be standard. It is in all our projects.
- y0ghur7_xxx 18y agoUsually I avoid using SPs so I can be database independent. If you need to switch database and don't have SPs you don't have to rewrite all that logic. Another reason not to use them is that the DB is difficult to scale. You can avoid using valuable CPU time for SPs on the DB server if those functions can be executed on the application or middle tier layer (that one scales well) as well. But when I don't have scaling problems, or don't plan to change DB I use them as well.
- mrkurt 18y agoIt's cool in the sense that most people don't do it. :) At least, most people who release open source stuff.
- 18y ago
- edb 18y agoThis is neat. I always thought a hosted reddit/HN solution would be a good startup idea. Imagine a site where I could start my own reddit/HN type space with a unique url. I could then control who comes in (be it co-workers or friends) and have a place where we could all privately share links and start discussions. Great for companies, project groups, families, friends, etc... I know I won't have time to build this, but I think somebody should.
- kirubakaran 18y ago> a place where we could all privately share links and start discussions. http://slinkset.com/ http://slinkset.com/
- mattmaroon 18y agoAlso, corank.com
- edb 18y agoexcellent. So no, don't make what I say.
- natrius 18y agoFriendfeed rooms? Voting on items really isn't necessary for a small group.
- tlrobinson 18y agoPerhaps pg releasing the source to Hacker News was a trial run for Reddit? Or the Reddit guys were inspired by it?
- k7lim 18y agobig boost to the pylons community. good pylons code to learn from, written by smart dudes, working at a large scale. hats off to reddit!
- rubymaverick 18y agomight want to read the code before saying its "good" pylons code.
- ken 18y agoI'd be more interested to see the old Lisp implementation.
- ahold 18y agosuch simple site ... so many technologies it uses. this can happen only to python :)
- kashif 18y agoWill twitter follow suit?
- bprater 18y agoReally curious what the algorithm looks like that moves stories up-and-down the page. Anyone taken the time to unravel the great mystery behind it?
- bprater 18y agoWoot! found the answer on a reddit thread. Copied and pasted from a commenter: def hot(ups, downs, date): s = score(ups, downs) order = log(max(abs(s), 1), 10) sign = 1 if s > 0 else -1 if s < 0 else 0 seconds = epoch_seconds(date) - 1134028003 return round(order + sign * seconds / 45000, 7) "score" is just (upvotes - downvotes). This is then log normalised. "seconds" is the number of seconds that have elapsed since around 1.46am on 8th Dec 2005. "sign" just ensures a positive value. 45000 seconds is 12.5 hours. I don't understand.... that looks like hotness increases the older the story is. I know brackets aren't needed but they help readability!"
- mrkurt 18y agoThere's a PGSQL "hot" function as well: http://code.reddit.com/browser/sql/functions.sql http://code.reddit.com/browser/sql/functions.sql
- aston 18y agoseconds is a number that grows as time progresses, meaning newer stories will always have a higher seconds score than older ones. The sign is included so that the time component hurts, not helps stories that are rated negative. The consequence of which is that newer negative stories are less hot than older negative stories. Also, the gap between positive 1 and negative 1 on reddit is HUGE hotness-wise.
- arthurk 18y agoLine 298 in r2/r2/config/middleware.py: #god this shit is disorganized and confusing
- brandnewlow 18y agoI'm a US-based journalist with a team of young, hungry, underemployed aggressive reporters at my disposal. Starting a new metro newspaper makes zero sense today, but launching a voting site for a city and then backing it up with a cadre of investigative reporters who would dig deeper into the stories that made the front page is something I've dreamed of getting off the ground for a while. I was hoping Reddit's open code would give me the vehicle, but it's now clear that's not the case unless I get a hacker on my team. Any takers? Pligg sucks. Drupal will work but it's kind of a pain. I'd been anxiously awaiting this announcement because I hoped the Reddit code would give us something to work with. However when I visit code.reddit.com, all I see is stuff I don't understand. I'm no hacker, but I've developed Drupal and WP sites. However I don't know the foggiest about Python, Subversion or any of the other things listed under the dependencies. This is very disappointing. How do they expect their code to be deployed when it requires a hacker to set it up? If anyone on here is interested in getting involved in what I believe would be a groundbreaking journalism effort, shoot me an e-mail at methodista@lawnparty.net Note: I have no funding at all. Simply a concept and the means to launch a handful of trained journalists at news stories that merit more attention and follow-up. With all the talk of "citizen journalism", surely this could be an interesting way to tackle metro news, no?
- mrkurt 18y agoIf I were you, I'd start by creating a new sub-reddit for your city: http://www.reddit.com/reddits/create http://www.reddit.com/reddits/create Couple that with a Wordpress or MovableType blog for your own content, and you can at least get people working in the right direction.
- brandnewlow 18y agoI've thought about that. However, I think branding and having a sense of identity is very important, in fact, as this isn't a tech play, but a content and community play, I think it'd be crucial, so being on reddit.com or wordpress.com to me seems like we'd be shooting ourselves in the foot from the get-go. I'd have to have to hack a Pligg install, but that's about what it's come to at this point
- KirinDave 18y agoWeirdly, they've refused to consider moving their source to github (1) citing that they want to "stay in control of their code." So for now their code is stuck with very weak community interaction. Even gitorious would have been a better choice than trac. It's disappointing and puzzling. 1. http://groups.google.com/group/reddit-dev/browse_thread/thread/82b3608b7c351106 http://groups.google.com/group/reddit-dev/browse_thread/thre...
- mileszs 18y agoSomeone has, however, set up a GitHub mirror of the Reddit code. It's not official, but at least it's there. I understood their position, which could be boiled down to "Seriously, we don't have the time right this minute." As with anything that is new, it _would_ take time to understand what GitHub is, and what it does, if you had never looked into it before. A lot of people are saying, "Oh, but it's so easy." The Reddit boys' point is that it may be easy, but it still takes greater than 0 time and effort. They either can't or do not want to, dedicate more than zero time and effort at this time. Their prerogative.
- KirinDave 18y agomileszs, what's more disappointing is that they did it the wrong way from the start. I fully understand the decision to wait awhile if you've got an established project and you want to slowly move it over. But the reddit guys didn't, and it's pretty clear they did basically no git homework before proceeding with this. That would be bad enough on its own, but then they handled the response really poorly. This "we don't have time" response was the sane cap on the mouth of a bottle of crazy agitated mailing list messages from a different maintainer saying strange things. It's pretty likely they never even considered it before someone mentioned it.
- dejb 18y ago>There are a few portions of the code that we're keeping to ourselves, mostly related to anti-cheating/spam protection. I can understand why they want to keep these hidden but on the other hand these would be some of the juiciest bits. Oh well. I hope one day people can come up with an algorithms that doesn't rely on 'security by obscurity' to deal with spam/cheating - I know I've tried.
- maien 18y agoLook at this link <a href="http://www.kolbrenerusa.com/blog/index.php/2007/12/04/50-top-niche-social-media-sites-and-their-power-accounts/ http://www.kolbrenerusa.com/blog/index.php/2007/12/04/50-top..."> 50 Top Niche Social Media Sites, and Their Power Accounts </a> there are plenty of niche clones