Why SQLite is the most widely used database system

SQLite is a simple relational database system.

It was developed in 2000 by Dr. Richard Hipp to be used aboard the US Navy's guided missile destroyers.

Unlike other widely used systems, it is not based on the client-server model where programs are clients that connect with a database engine that acts as a server. Rather, the database takes the form of a single file which a program interacts with.

This model has some limitations, but its strength has made it the most widely used database engine around.

Responsive images with CSS

I wrote last week about using HTML for responsive images. CSS also has the power to support responsive images, with the caveat that as it is applied after the HTML is downloaded, it may be less efficient.

However, it is more flexible and provides greater functionality than HTML alone. So while CSS can be used to detect and respond to viewport width unlike HTML, it can also be used to detect the device resolution.

Responsive images with HTML

It's common among web developers to use CSS or event Javascript to display images correlated to the browser's viewport. However, as the browser begins to download images referenced in a page before the CSS/JS is interpreted, this incurs a performance penalty.

Responsive images are not just about design, but about performance too. Think about it, does it make sense for a mobile phone user with a small screen to download the same images that display in high definition on a large Mac Retina display?

The basics of Drupal theming

Drupal core has a templating system built-in by default, so even without a theme, a basic page would still be outputted.  This makes it different than other CMSes like Wordpress or Joomla!

Note: The following information is for Drupal 7, though Drupal 8 is similar.

At it most basic, all a theme really needs is an .info file. An info file can include information such as:

Setting up a VPS for a Rails/React project

In order to run or deploy a Rails/React/PostgreSQL app on a VPS/VM with a standard Ubuntu (Debian) installation, here are the steps to follow:

1) SSH into your instance using the credentials given by your cloud/VPS provider.

  • If you are on a *nix system it will be something like this:

ssh root@

You will get a warning about a new certificate the first time your run it. Type yes, then enter your password at the following prompt.

Checking support for new CSS properties

As browsers rely on different layout engines to render CSS, different browsers will display the same CSS code differently. In addition, new CSS standards are called 'modules'. Each layout engine has its own development path for the module which means that at various times it may be considered, approved or only partially developed.

An excellent resource to determine which browsers support a particular property is caniuse.com. With Caniuse, you can enter a property, and immediately see which how its supported by different browsers.

How final CSS values are determined - Value processing

In my last two blog posts I discussed how the browser determines the final values to be used for styling.

In this blog, I examine another part of how the browser determines these values: value processing.

There are a number of steps taken by the browser to produce the final values for elements. All values used by the browser to display content must be in pixels, and there must be one value per property. In order to determine these values, the following cascading series of processes takes place:

How final CSS values are determined - Sources

CSS is an an acronym of Cascading Style Sheets.

The term 'cascading' in CSS, is a reference to how the browser determines the final values to apply to an element. This is because there are often competing values that apply to an element, so the browser must use a predictable cascading process to determine which rules deserve priority.

Here is the order of precedence used by the browser to determine the highest priority:

1) The !important statement

Getting started with React the simple way

If you're getting started with React, you'll probably be advised to start your project using 'create-react-app'. But in fact, there is a simpler way that doesn't require downloading thousands of files, creating a large complex project or running a background server, before you begin writing code.

React is a Javascript library, and like many other libraries, you can import it into your project using a CDN like so:

Subscribe to