• Agile Development

    Agile software development is a methodology that favors short measurable increments of work over planning and engineering for longer time horizons. Its aim is to fulfill the goals of adaptability, … more

  • Aspect Oriented Programming

    Aspect oriented programming is a methodology where pervasive sub-systems, like logging, are treated as a modular "aspect" of the entire system. Logging is an example of a "cross-cutting-concern"- … more

  • Bounce Rate

    No matter how great your web site or application is, a certain percentage of visitors to it will leave within seconds. That percentage is commonly called a site's bounce rate. Obviously this is not … more

  • Content Management System

    A content management system (CMS) is a computer system that allows for the publishing, editing, and modifying of web-based content from a friendly user interface. This includes, but is not limited to … more

  • Dependency Injection

    Dependency injection (DI) is a mechanism to employ the inversion of control strategy in a code base. What this means is that reusable components that a particular piece of code requires are … more

  • Inversion of Control

    Often used synonymously with dependency injection, inversion of control (IoC) is the more abstract design philosophy, and dependency injection is one strategy of implementing that philosophy, which … more

  • Mobile First

    Mobile first can refer to both the design strategy as well as the implementation of a responsive website, and its pretty much what it sounds like: you begin with the mobile design, which will be the … more

  • Model View Controller

    The model view controller (MVC) paradigm is an architectural pattern for building user interfaces. While it has been around for a long time, it gained rapid prominence in web development following … more

  • Object Relational Mapping

    An object relational mapping (ORM) system maps object oriented code to a database, and vice versa. In practice, most modern development against relational databases like SQL is done through an ORM. … more

  • Progressive Enhancement

    Progressive enhancement refers to a technique in web design where a less complex or robust design is created for older web browsers, and then “progressively enhanced” to do more on modern … more