diff --git a/gettingstarted.md b/gettingstarted.md
index a9c8c81..c82884b 100644
--- a/gettingstarted.md
+++ b/gettingstarted.md
@@ -5,32 +5,39 @@
 share: false
 ---
 
-Package-Based Installation
---------------------------
+There are multiple ways of installing and running ARIA TOSCA. Specifically, there
+essentially two different branches of installations: user and developer. Both
+are documented below.
 
-ARIA is [available on PyPI](https://pypi.python.org/pypi/apache-ariatosca).
+While the instructions below strive to be complete, we're human and make mistakes from time to time. In situations where something doesn't work as described, do not hesitate to reach out to the community for assistance by sending email to dev@ariatosca.incubator.apache.org
 
-ARIA requires Python 2.6/2.7. Python 3 is currently not supported.
 
-To install ARIA directly from PyPI (using a ``wheel``), use::
+Package-Based PIP Package Installation
+--------------------------------------
+
+ARIA TOSCA is [available on PyPI](https://pypi.python.org/pypi/apache-ariatosca).
+
+ARIA TOSCA requires Python 2.6/2.7. Python 3 is currently not supported.
+
+To install ARIA TOSCA directly from PyPI (using a ``wheel``), use::
 
     pip install --upgrade pip setuptools
     pip install apache-ariatosca
 
 
-Source-based Installations
---------------------------
+Source-based PIP Package Installation
+-------------------------------------
 
-To install ARIA from source, download the source tarball from
+To install ARIA TOSCA from source, download the source tarball from
 [PyPI](https://pypi.python.org/pypi/apache-ariatosca), extract and ``cd`` into the extract dir, and run::
 
     pip install --upgrade pip setuptools
     pip install .
 
-| The source package comes along with relevant examples, documentation, ``requirements.txt`` (for installing specifically the frozen dependencies' versions with which ARIA was tested) and more.
+| The source package comes along with relevant examples, documentation, ``requirements.txt`` (for installing specifically the frozen dependencies' versions with which ARIA TOSCA was tested) and more.
 |
 |
-| ARIA has additional optional dependencies. These are required for running operations over SSH.
+| ARIA TOSCA has additional optional dependencies. These are required for running operations over SSH.
 | Below are instructions on how to install these dependencies, including required system dependencies per OS.
 |
 | Note: These dependencies may have varying licenses which may not be compatible with Apache license 2.0.
@@ -38,12 +45,12 @@
 
 **Ubuntu/Debian** (tested on Ubuntu14.04, Ubuntu16.04)::
 
-    apt-get install -y python-dev gcc libffi-dev libssl-dev git
+    apt-get install -y python-dev gcc libffi-dev libssl-dev 
     pip install apache-ariatosca[ssh]
 
 **Centos** (tested on Centos6.6, Centos7)::
 
-    yum install -y python-devel gcc libffi-devel openssl-devel git
+    yum install -y python-devel gcc libffi-devel openssl-devel 
     pip install apache-ariatosca[ssh]
 
 **Archlinux**::
@@ -61,21 +68,60 @@
     # TODO
 
 
-
 To install ``pip``, either use your distro's package management system, or run::
 
     wget http://bootstrap.pypa.io/get-pip.py
     python get-pip.py
 
 
+Developer Installation
+----------------------
+
+Developers will want to pull their base code from github and then
+build from that locally. Note there are two code repositories for
+ARIA TOSCA: one for the website and one for the main code base. Instructions
+for pulling and running each are detailed below. 
+
+
+**Ubuntu/Debian** (tested on Ubuntu14.04, Ubuntu16.04):
+
+    apt-get install -y python-dev gcc libffi-dev libssl-dev git
+
+    # In addition to the above, install the following for website development
+    sudo apt-get install ruby-dev
+    sudo gem install jekyll bundler
+    # you may have to install jekyll's dependancies 
+    bundle install
+
+**Centos** (tested on Centos6.6, Centos7):
+
+    yum install -y python-devel gcc libffi-devel openssl-devel 
+
+    # In addition to the above, install the following for website development
+    sudo yum install ruby-dev
+    sudo gem install jekyll bundler
+    # you may have to install jekyll's dependancies 
+    bundle install
+
+**Building from your pulled code** :
+
+Instructions are [here](https://cwiki.apache.org/confluence/display/ARIATOSCA/Contributing+Code)
+
+
+Running The Generated Website
+-----------------------------
+
+    The website is created using the Jekyll system. Launch the web server using the following and then browse to the URL indicated by jekyll's output:
+
+    bundle exec jekyll serve
+
 
 "Hello World" Example
 ---------------------
 
-
 This section will describe how to run a simple "Hello World" example.
 
-First, provide ARIA with the ARIA "hello world"(can be downloaded [here](https://github.com/apache/incubator-ariatosca/tree/master/examples/hello-world)) service-template and name it (e.g.
+First, provide ARIA TOSCA with the ARIA TOSCA"hello world" template (can be downloaded [here](https://github.com/apache/incubator-ariatosca/tree/master/examples/hello-world)) service-template and name it (e.g.
 ``my-service-template``):
 
     aria service-templates store examples/hello-world/helloworld.yaml my-service-template
@@ -101,12 +147,12 @@
 License
 -------
 
-ARIA is licensed under the
+ARIA TOSCA is licensed under the
 [Apache License 2.0](https://github.com/apache/incubator-ariatosca/blob/master/LICENSE).
 
 
-Sample install/command files for different ARIA releases
---------------------------------------------------------
+Sample install/command files for different ARIA TOSCA releases
+--------------------------------------------------------------
 
 0.1.1                                                                                                                                          
 -----                                                                                                                                          
