Adei2 Proposal

This article only serves as proposal. These are not yet discussed in the group and may be subjected to changes. The final draft should be documented at Adei Concepts.


Backend

  • Vagrant - this is somewhat like a virtual machine, it is useful in a collaborative software project, where everybody is developing on the same platform, regardless of their OS.
  • Web frameworks
  • Websocket (I have no prior experience on this, but this might solve our huge data loading problem)

Frontend

  • HTML5 + CSS3
  • Responsive design - this can be achived using CSS media queries.
  • Backbone JS - MVC Structure
  • Require JS - module loader, this will speed up the script loading performance during production deployment.
  • Bower - package manager
  • Test - Jasmine, apparently this is not a TDD, but a BDD. This test framework has a good momentum and might be a good fit.
  • CSS preprocessing - SASS


Best Practice

  • Test Driven Development (Backend + Frontend) - if we have reliable tests, then we can implement a continuos integration (CI) later.
  • Git
  • Semantic Versioning
  • RESTful

Collaborative Tool

  • Atlassian - We need confluence (Documentation), Jira (Issue Tracking) and Stash (Repository). Apparently they offer educational license, free for up to 10 users. This is an alternative to trac. Just have a look.

OS
Operating System
MVC
Model View Controller
JS
Javascript
TDD
Test Driven Development
BDD
Behaviour Driven Development
RESTful
Representational state transfer, in short, the HTTP request from the client tells which API from the server to be used and the Data (JSON) will determines which response to be returned. This way, the relationship between the server and the client will be completely isolated.