The website
The goal is to get a working site up while doing as little work as possible ourselves.
Prelude
(Copied from Discourse)
Just to reorient ourselves: the reason why I wanted to go with rails because I don't want to write the entire stack myself - there should be pieces that already exist (like an events & calendar system) that we can just plug in.
I'm not married to rails, but I want to see if we can do that with rails before we explore other options. So in this case, I'm prioritizing "getting it done" over having cool tech :P
s/rails/django/g if we decide to go with Django instead.
Of course, we can reimplement this stuff in a "fun" way after we get it working. I've just been a part of too many "let's do boring activity X in fun technology Y" projects that never got finished because X is still boring, even if you're doing X in Haskell. So I think we should take the pragmatic approach here.
What we need
- An events/calendar system (a wiki page may be sufficient for this)
- A blog/newsfeed (static blog using Discourse threads for comments could work ok)
A possible solution
Switch to Django (from Rails) and use the web app powering lug.ncsu.edu (source) as a starting point for building our main website (the front page).
Pros:
The following will instantly be available to us:
- decent looking website designed for a similar cause
- blog module
- simple built-in wiki module (consistent looks) (demo)
- more focused code base, probably easier to hack on than the current ones in use
- easier deploys: just Python+database+django modules vs. Ruby(main) + Haskell(wiki). Though discourse still needs ruby and docker.
Cons:
- a bit of work to transfer the content of the current wiki (gitit based) to the new Django app
- not worth it if only done because of one single component (e.g. wiki) (not the case, since we'll be building our events/calendar system into the web app)
- Not clear that we really need an event/calendar app (described as a meetup.com copy on irc) given the very small number of events we'll have to track. We can use a wiki page instead: scroll down to the upcoming events section on https://wiki.haskell.org/Haskell to see an example of this.
Ongoing discussion
There's an ongoing discussion about other possibilities such as:
- Using static pages for the main website
- Using static page generators
- Using org-mode for the front page (demo and source)
Please check out http://discourse.emacsconf2015.org/t/reconsidering-our-stack/54 and feel free to add them here