Reddit releases fully functional VM with their source code
blog.reddit.com
blog.reddit.com
Don't get me wrong, this is cool. But the other way would have been way cooler.
I did not get confused by the headline.
It's just hard to fit all the info into 80 characters.
Reddit releases fully functional VM with their source code
Reddit releases VMWare image and their source code69 characters.
PS I'm still pissed about getting ninja-banned.
I like that HN gets confused in the other direction.
That goes to prove that closed source is really a dead end, once you have a sufficient head-start you can even afford to give away a turn-key copy of your software and still sleep at night.
Impressive!
Stallman is incapable of understanding this, perhaps because he simply has never used any such services. Users want to have and control access to their data. That's it. The AGPL's only effect is to underscore how inadequate it is at doing anything for end-users -- by taking Freedom Zero away from operators, it leaves the exploitation of data and network effects as their only means to non-menial profit.
No one forces website operators to use AGPL code. It's a trade they make in order to cut development time in exchange for meeting the openness conditions. It's up to them to decide if that is economically worthwhile.
Banning people from deciding that trade is worthwhile would be fairly counterproductive. And having the courts invalidate the license because you have a philosophical problem with it seems to be slightly unfair on the people who wrote the code and chose to give it away for free (with some conditions attached). You might as well say it's OK to steal library books because, hey, you don't believe in the contract that says you have to return the books is fair.
We really hope this will help us more than hurt us in the end. Part of the problem with releasing something like reddit as open source is that it isn't designed around installation. For the most part, the pieces have been built in place organically as needed. This means that even though the source is out there, it's been really hard to get developer contributions as many get stuck before they get reddit up and running locally.
This should effectively lower the barrier to entry there and let devs actually think about the code and adding features rather than about whether or not rabbit-mq or cassandra are properly configured.
You build stuff because you have to when it hits, especially if you experience 'unexpected growth', and things like installation documentation and so on will suffer, if they exist at all.
So releasing a working VM is a great way to do this, it's about as user-friendly as you can get.
I think you'll be setting an example here that will be followed many times.
I actually planned on creating a Vagrant box (vagrantup.com) for reddit development to ease the development for Reddit. I was waiting until after I got another release of Vagrant out to do it (for no other reason than personal time management), but I'm motivated by this to do this sooner.
I'll take a look tonight and see if I can do this sooner rather than later, which will bring this to VirtualBox.
disclaimer: I am the developer behind Vagrant.
Perhaps Smalltalk-like images will make a comeback?
I use scripts (http://github.com/wr0ngway/rubber/) to boot up, configure, and deploy to my instances from a stock Ubuntu AMI -- but from the looks of this maybe you set up and maintain AMIs for each role instead?
I much prefer a scripted installation to a frozen hand-rolled installation, even if the latter is more reliable.
But when we started no one really knew what the "right way" was, so we went with custom AMIs.
It also helps when you want to upgrade your OS. As long as the packages are mostly the same, you can just run your update script from the new OS and make a few changes.
The way I have to do it now, I have to build a whole new master image from scratch, because I can't upgrade Ubuntu in place on EC2 due to the way they handle the kernel and kernel modules.
Boot, update and apply patches, copy over source & data, start running services...everytime you start a new instance
However keep in mind, on EC2 at least, that the images are actually downloaded from S3 when you boot, so if you have a huge image, it will take almost as much time.
Source Code > Documentation > Artifacts
http://www.reddit.com/help/search
In short, it used to be a fulltext search through the database, and now is is Solr built on Lucene.
However, I think PG's essay about why he doesn't have a better search on HN applies equally to reddit -- because there are much better things to spend time on.
If search weren't useful, why is there searchyc? And every few weeks a topic about why there is no search function?
Thanks reddit
I tried to run reddit on my machine. However, I got into many dead ends, the redditdev IRC was quiet, and because I had no idea what I was doing with MacPort or the Terminal (or my filesystem or the many different paradigms I had to deal with) I lost all faith in me trying to understand how sysadmins (or python developers) got things done.
Essentially, I became contempt for being a noob of a CS student, but at least I know how to run a virtual machine and prove by induction. That's a job skill right?
Depends on what you do with the VM.
The goal with open sourcing was never to have clones -- it was to get people to dev the features that they felt were important but we did not, or did not have the time for. Being able to make an easy clone was just a side effect.
Their 'stacked' view of threaded comments makes a lot of sense to me. It might be really nice for a code editor too -- the minimal indent width can be smaller, and context is clearer.