Less Wrong is a community blog devoted to refining the art of human rationality. Please visit our About page for more information.

Volunteering programmer hours / discussing how to improve LessWrong's software

13 Post author: ChrisHallquist 26 January 2014 10:47PM

There's been some discussion of how to improve the structure of LessWrong at the site software level - for example adding subreddits or modifying how main and discussion work. One roadblock to this that's been mentioned is a shortage of programmer hours. I'd like to volunteer mine.

I recently finished a course on web development in which, among other things, I build a Reddit clone using Ruby on Rails and Backbone.js. It's been several months since I've written any Python, and I'm somewhat wary of the time required to get familiar with the LessWrong codebase, but I think think the time would be worth it for me: it could potentially improve LessWrong a lot and would let me tick off my "have contributed to an open source project" box.

Of course, before any of that happens, there needs to be some agreement on what changes we think would be a good idea. So... discuss.

EDIT: For context, it's been suggested that part of the benefit of subforums is it could defuse debates over "what topics are appropriate for LessWrong." We could even have an "off-topic" subforum, a common feature of online discussion forums - I think bringing the format of LessWrong more into line with what's standard on other websites could help newbies be less confused here.

Comments (12)

Comment author: gwern 26 January 2014 11:09:55PM 9 points [-]

Of course, before any of that happens, there needs to be some agreement on what changes we think would be a good idea.

There already is: how many people follow/starred bugs on the bug tracker. If you want to help, just look at the most vexing bug and work your way down the list.

Comment author: ChrisHallquist 26 January 2014 11:33:50PM 2 points [-]

Newbie question: looking at the issue list, not seeing how to tell how many people have followed / starred a bug. Or am I looking at the wrong page?

Also, my impression is the places where there are big potential gains are not so much in little things where the correct fix is obvious, but bigger-picture things that are potentially controversial. I see on the issue tracker there are various things listed as "authorized" or "accepted," I assume that's a way for the powers that be to mark which proposed changes they want, but what's the difference between them?

Comment author: gwern 26 January 2014 11:47:16PM 6 points [-]

https://code.google.com/p/support/issues/detail?id=1210 suggests sorting by stars should be possible.

Also, my impression is the places where there are big potential gains are not so much in little things where the correct fix is obvious, but bigger-picture things that are potentially controversial.

Personally, I wouldn't waste any time on a discussion of a potential big fix unless the instigating party had already shown the ability and willingness to hack on the codebase by, for example, fixing a number of 'little things'. (Since usually such people never contribute anything and so discussing their proposals is a waste of time and energy.)

Comment author: ChrisHallquist 27 January 2014 12:02:52AM 2 points [-]

Fair enough, and I see the link for sorting by stars is here.

Should I literally just be going down the list top to bottom? Or limit myself to things that are accepted / authorized?

Comment author: gwern 27 January 2014 12:18:11AM 3 points [-]

I don't know what the accepted/authorized stuff means (if anything). Might as well start looking at the top ones and seeing what you can feasibly do.

Comment author: wmoore 28 January 2014 11:00:03PM *  1 point [-]

Great to hear you're interested in contributing Chris. The LW codebase takes a bit to get your head around so I'd certainly suggest starting with smaller bugs or small features before diving into big new features. You should definitely get in touch with us (TrikeApps) and Luke to discuss what you want to work on to make sure it's the best use of your time and your approach considers all angles.

For reference, Accepted issues are generally bugs. The Accepted status indicates they have been reviewed and acknowledged as a bug. Approved is used to indicate tickets that are approved for work (generally by Lucas). These are good candidates to work on but you should definitely coordinate with us to make sure they aren't being worked on already.

Comment author: fortyeridania 27 January 2014 04:12:01AM 3 points [-]
  1. I think it's great that you are offering your time for the betterment of LW. Kudos to you. (I think you already improve LW with your posts, by the way.)

  2. You've brought up an "off-topic" subforum. What is the difference between this and the regular open thread? Would it mainly be that the link to it was constantly displayed at the top (up by Main and Discussion)?

  3. A usage quibble: Did you mean "defuse" here?

it could diffuse debates over "what topics are appropriate for LessWrong."

Comment author: ChrisHallquist 27 January 2014 04:24:45AM *  2 points [-]
  1. Thanks!

  2. I get the impression that the open thread tends to get used less for "off-topic" discussion than for brief and fragmentary thoughts. I admit this may not be the intent... but lack of clarity is part of the problem here. Adopting standard internet forums conventions, I suspect, would encourage better discussions. Open threads are standard for blogs, and LessWrong is a spin off of the blog Overcoming Bias, but it's clear that Discussion is currently squarely in the "forum," not "blog" category.

  3. Yes. Thanks for catching that.

Comment author: Morendil 30 January 2014 11:04:55AM 1 point [-]

This is relevant: the LW code is a little bit gnarly to set up, having this in a pre-packaged VM can help.

These days Vagrant is being superseded by Docker, I might have a go at turning the VagrantFile into a Dockerfile if anyone is interested.

Comment author: wmoore 31 January 2014 12:35:29AM 0 points [-]

Please note that as of late last year the official development environment is now built with Vagrant. The primary repo contains a Vagrantfile and all the chef recipes (derived from our production recipes where possible) necessary to configure a base Ubuntu box for LW development.

The instructions for using this are at: Development-VM-Image.

Comment author: Dustin 28 January 2014 02:41:17AM 1 point [-]

Thanks for posting this. It provided me with just enough motivation to add "Download LW source" to my things-to-do-when-home-from-vacation TODO list.

Looking at how I follow through on such commitments in the past I think there's about an even chance I'll actually fix a bug or two!

Comment author: adamzerner 28 January 2014 03:18:45AM *  0 points [-]

This is what I envision a good discussion forum would look like: https://medium.com/i-m-h-o/bc340a52f6a4 .