Web Development

Telling Ubuntu 16 to use a different PHP version on cli

When you have multiple versions of PHP installed things can get a bit wonky. PHP 7.1 has broken a lot, and I've noticed most LAMP apps and a lot of commandline tools such as Drush just aren't compatible yet.

With Nginx, it makes it easy to run your sites on a specific PHP version like 7.0, but if you install 7.1 on your server you might want cli applications to use 7.0 still.

Side Projects Keep Things Fresh

I've been having fun maintaining my side web design and development "business". It keeps things interesting outside of work since I love making cool things and helping smaller businesses with their online presence. I started hosting client sites earlier this year while I previously used shared plans for side projects and I think it's one of the better decisions I've made. The control of having a VPS that just works without messing with clunky shared plans is liberating.

Check out DigitalOcean for hosting

I've been using Hostmonster for probably 10 years to host my simple personal site and other random projects that come up.  Shared hosting is a convenient thing and is a great solution for people that want a normal website.

Stop Confusing Future Web Developers

Stop for a second.  Have you heard of tools like Jade (an HTML preprocessor) or Stylus (a CSS preprocessor)?

Can we use Flexbox safely yet?

The flex box model, aka Flexbox, will make designing layouts in CSS and HTML a lot easier once it hits mainstream.  How close is it to being widely supported?  It's actually not too bad, with global support at 88.88% as of 3/2/15.  The main issue is with versions of Internet Explorer earlier than 10.  Modern Chrome and Firefox, as well as mobile browsers almost all support Flexbox.  Since this is a new tool that will likely be employed in CSS frameworks of the future, it's useful to know how and why it will happen.  Here are a few good links.

Making Wordpress and Drupal configuration files easier for development and production environments

At last year's Drupalcon in Denver there was an excellent session called Delivering Drupal.  It had to do with the oftentimes painful process of deploying a website to web servers.  This was a huge deep dive session that went into the vast underbelly of devops and production server deployment.  There were a ton of great nuggets and I recommend watching the session recording for serious web developers.

VirtualBox and creating virtual servers for web development

If you've heard of VMWare and virtualization, you might be confused when you visit VMWare and see 100 different products offered.  I know I am.  If you're a web developer and want to easily cut through the noise, use VirtualBox by Oracle.  It's an open source alternative for virtualization and it does pretty much anything you need as a web developer that wants to spin up an environment for testing on your own computer.  It also works on both Windows and Mac computers.

Drupal vs. Joomla at ITWorld

ITWorld has a new article up about Joomla vs. Drupal and contains viewpoints of different developers.  I was asked by the author to give some insight on using either CMS so I'm in there around page two.  It's an interesting article because it's not from the perspective of one person and seems to cover many bases.

Disabling the backspace key on a page with jQuery

I had an issue with a multi-page form recently where Internet Explorer would go back a page immediately upon hitting the backspace key.  If you accidentally do this while not in a text field you'll lose your form data.  Other browsers actually ask you if you want to resend data when you go back.  The solution was to disable the backspace key on my form page.  I accomplished this with the following Javascript (requires jQuery):

Using PuTTY to manage your SSH logins in Windows

This may be something you already do if you're a web developer or have anything to do with Unix but I figured it'd be a decent reference for someone just starting out.  PuTTY is your SSH client for Windows which stores login information to remote servers.  It makes it so you don't have to do things via a regular command prompt manually every time you need shell access.

What you need