Technology

Language

Design and programming languages used by 2b design.

HTML/HTML5 These are the basic building blocks of a web page. They are interpreted by your browser. With the new HTML5
specification, the power of HTML is increasing and is beginning to replace or at least rival other technologies such as Flash.

CSS / CSS 3 CSS is a language that works in concert with HTML to layout or format a web page. It also has tools for creating more
dynamic pages as well.

PHP This language runs on the server (interpreted by Apache). It is perhaps the most common web programming language for
introducing functionality into a web site.

JavaScript Java Script is a client side programming language - meaning it executes in your browser (not on the apache server like
PHP). It is used to create dynamic, powerful behavior at the client site.

Ajax Ajax is a toolset of functions within JavaScript that allow us to create dynamic webpages.

Tools

We make use of many tools that exist in the web world today. Our main goal in reusing existing technology is to push our efficiency and therefore
our cost effectiveness as well as push the user experience to the highest professional level.

Yii Yii is a PHP framework on which we build our web applications. It supplies a large library of predefined code as well
as auto-generating code for database access. It presents a Model, View, Controller design template that we adhere to in creating our web applications.
What this means to you is:

Cost Effective. Predefined libraries and auto-generated code means less code we have to write and less code we have to maintain.

PhoneGap is a framework for building and deploying Mobile Applications on iPhone, Android, and 5 other major mobile device systems.
A single version of the application source and a powerful toolset allows us to rapidly build and deploy applications for you. This means less cost and better applications.

Blueprint CSS CSS is a method of laying out / formatting a web page. Blueprint introduces a standard grid view of a page that
means more professional and reliable end product, and more efficient creation of web sites which translates into less money from the customer.

Bootstrap Bootstrap is an open source CSS and JavaScript framework that allows us to create dynamic websites that change based on the
end user's browsing device (e.g. Laptop, phone, Ipad, etc). This framework was developed by the folks at twitter - and is publicly available.

JQuery JQuery is a set of tools developed in JavaScript and CSS that implements basic interactive widgets. This allows us
to create a reliable and more interactive experience for the end user.

LAMP Architecture

The LAMP architecture stands for "Linux, Apache, MySql, and PHP".
This architecture stack is one the few widely used paradigms for running and hosting websites.

Linux is the hosting operating system.

Apache is the Web Server software.

MySql is an open source database.

PHP is a web programming language used to build functionality into your website.

Content Management System

To Wordpress or not to Wordpress

When it comes to managing content, there are two typical solutions we use.

A custom CMS In this case, we build the content management specifically for your needs -
allowing simple, easy access to the things you
need to change frequently.

A third-party CMS solution - usually WordPress
This is a platform that many people are familiar with, and allows broad
access to the website.

Wordpress Based Site

Wordpress is a powerful CMS shipped with its own web based interface for updating the site content. This CMS has a diverse
plugin library, an incredible amount of documentation and support, and a reasonable interface (for the non-web savvy). Here
are some pros and cons:

Pros

Allows non-web professionals change to everything on the site.

Many functions are pre-built as plugins for Wordpress that can be re-used.

Cons

Wordpress creates significant overhead for development which adds cost.

Without adding significant cost, we are limited by existing plug-ins/widgets for Wordpress,
so a less custom feel and functionality is more typical.
It is possible to custom build these plugins, but that will increase cost.

The admistration of wordpress and its plugins is not trivial. Out of necessity, it is a one-size fits all
solution, and has the drawbacks that are associated with the administration that goes along with it.

Lightweight Custom CMS

Our typical site does not use Wordpress or another third party CMS. We use a robust PHP framework that allows us to design a
database and generate a custom CMS based on the data in that specific database. Here are the pros and cons:

Pros

Allows non-web professionals change the information stored in the database.

Display and maintenance of data is flexible and creates a more customized site and
user experience.

Less overhead for development, so less cost.

Cons

Does not allow non-web professionals to change everything on the site. So, if you
need to fix a typo on the home page in the text, you would need us
(or a web design savvy person) to make that change.

In either case, you (the client) will be able to update the commonly changing information.
To change the more static information, you would typically send that to us. Over the years, I have found that
clients are often busy enough running their own businesses that they end up sending these changes to me
even if we build in the capability for them to make the change themselves.

In the end, either method is great with us. We tend to steer clients to the lightweight custom CSM solution because
in most cases it is less expensive and more flexible in terms of function and look.