Tech stuff

Jul. 29th, 2012 08:25 am
[personal profile] alexbayleaf in [community profile] growstuff
So, how are we going to build this thing?

A bit of background: from, oh, 1996-2007 I was a full time web developer on the LAMP stack (Linux, Apache, MySQL, Perl). I've had experience building and working on quite large websites with those technologies. However, I stopped around 2007 which, of course, is five years ago, and five years is a long time in tech. So, whatever we do, I'm going to have to refresh my skills.

Since I'd be doing that anyway, I feel like it's a good idea to consider using other tools/languages/platforms. To that end, I'm strongly considering doing this thing in Ruby on Rails. Why RoR? Well, it's easy for people to learn, and I want to get people involved who might not have previously worked on this sort of thing before. I know that one other project (AO3) has been successful in this (they've had problems with scaling, but I suspect with my previous web dev experience and the help I know I can pull in, we may have less trouble with this than they did). Ravelry is also built on Rails, so I know that similar sites can do it well. And it's a modern, marketable language which means learning it is good for people's resumes if that matters to them.

That said, I could be convinced to go with something else, if someone has an idea and can address the points I've mentioned above (especially the ease-of-getting-started issues). I presume Python has a comparable web framework, so that would be one possibility.

Needless to say, there'll be a bunch of frontend stuff, which will be in Javascript, presumably with JQuery, and lots of design/UI/UX work to do. My housemate and co-gardener is a UI/UX person and has expressed interest in working on this, so I feel reassured that we have some skills in that area already, since I'm not great at it.

Apart from that, I'd like us to keep our code on github, one of the most popular version control platforms around. (AO3 already does this, and Dreamwidth is planning a move to git, so it's likely to be a handily transferrable skillset for those who've had experience on either of those projects or any of the squillions of other open source projects that use it. It also has good transparency and community features in place, which I think matches our ethos.)

I'd also like us to use test-driven development methods, and generally take an "agile" approach to the whole project. My background in that regard is in Extreme Programming, so I'd like to bring in as many of the practices from there as possible. That means short iterations (aka "release early release often" as they say in open source), flexible/lightweight planning and design (not trying to specify the whole thing up front), constant refactoring, and yes, if we can manage it, pair programming! Or at least the closest we can get to pair programming in a distributed, (mostly-)online dev community. I think XP (as it is also called) is a great match for a project that wants to be sustainable and inclusive.

So that's where my head's at and what I'm thinking of. As with everything (and you'll hear me saying this a lot especially at first) all this is up for discussion, and I promise to listen carefully to any suggestions you make.

So what I'd like to ask at this point is...

1) Roll call! If you would like to get involved in a technical way, please comment and say what part interests you. If you have existing skills in any of the areas mentioned above (or any others you think might be relevant), please mention them. If you don't know yet or would like to learn, that's fine too.

2) Tools and resources! If you know of something we should be using or looking at, whether or not it's listed above, let us know. For instance, if you know a good learning resource for new Rails developers, have opinions on database backends, or know a good web app for managing distributed XP projects, let's hear about them.
(will be screened)
(will be screened if not validated)
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

Profile

The Growstuff Project

April 2021

S M T W T F S
    123
45678910
11121314151617
18192021222324
252627282930 

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 31st, 2025 06:22 pm
Powered by Dreamwidth Studios