You are on page 1of 2

Web Application Design Project

IDE
We will use for the most part VIM since it is fast, extensible and highly used in the industry.
Not only it will be 10x faster once learnt, but may prove useful in developing a new set of
skills, the learning curve is somewhat danting but the variety of tutorials makes up for the
open source project. Some nice plugins to mention here are YouCompleteME
(autocomplete), ControlP ( file browsing), Emunet (easy scaffolding of HTML files), Syntastic
(PHP Lint and best practices checker) etc.

Database Manager
Well go for the standard MySQL since its been in use for quite a long time, plus its one of
the easiest/most performant languages to pick up. (Although we wont probably use hand
written SQL in favour of some ORMs). As of a visual representation of the Database well
stick with using the well known phpMyAdmin (just for simplicity)
Pros: -Availability
-Scalability
-Performance

OS
Mostly Linux, since its a free operating system that permits granular access to permissions,
ease of scripting and reliability + the ease of creating virtual boxes using Vagrant (it makes
installing dependencies as easy as running a couple word bash commands).

Deployment
Since it is good practice to develop on a fast serer, well consider running multiple servers
from Vagrant under different aliases and separate DBs. This way well keep the frontend up
all the time.

As the presentation is concerned, we will boot from a live USB or we get our hands on a free
host which supplies us with a means of installing deps.

Technology
Well be using a framework called Laravel (ORM) and an inbuilt template called Blade). Its
top of the notch as we speak and appears to be fairly intuitive. Well probably use
structured data in relation with the ORM (At this date I believe it may cache the compiled
templates but I cant say for sure)

Security
Well be using HTTPS and a basic auth system with user permission (And yes we wont store
passwords in the clear nor we will use MD5, well be using a one way hashing method called
BCrypt)

GIT
Since well have to work in parallel, a versioning system is a must (GIT). Girhu facilitates
open source projects for free and along with it a bundle of testing tools.

You might also like