JetBrains’ IDEs such as PhpStorm have always been top notch tools for developers, offering a wealth of features.  Unfortunately this same wealth can also become an embarrassment of riches when trying to slog through all the settings and options to set up features.  Such is certainly the case for setting up Xdebug – there are so many factors to take into consideration that it can be positively nightmarish getting debugging to work.  Well, fear it no longer, for here is our super-complete guide to setting up your Apache server with Xdebug and configuring your local PhpStorm install for PHP debugging. Continue reading “PhpStorm 5 & PhpStorm 6: Setting Up Remote Debugging” »

With Microsoft Windows 8 hitting the market, everyone has a review! Well, who are we to argue?  Here’s our take on Windows 8 for small to medium sized businesses and home users. Continue reading “Windows 8: Is it for you? Probably not.” »

We’ve recently started seeing Windows 8 touch screen devices come in, and so have been experimenting with them to get a good grip on the best ways to support and troubleshoot these devices.  Microsoft has hugely changed things up, and so we’re hearing  a lot of “Where did they put thingie XXX in Windows 8???”.  The vast majority of users are going to be lost until they either eventually learn where Microsoft has decided to hide things this time around, or give up and install a Windows 8 Start Menu third party app.  For those who are determined to master it, we’ve provided a translation guide to help you through the transition: Continue reading “Windows 8 Translation Guide – Transitioning to the New Metro Paradigm” »

An SSD (solid-state drive) is one of the best investments you can get to speed up your system. If you already have a quad core processor and four or more gigabytes of RAM, this is the next step for upgrading your system for maximum performance. Your system can only run at the fastest speed of it’s slowest component, and for most computers these days that’s the speed that the hard drive can read and write data. An SSD can really crank this up. How much improvement can you get? Well, my system went from a boot up time of 116 seconds to just eight seconds. So without further ado, here’s how to get the best bang for your buck tuning Linux for SSD performance and long life. Continue reading “Installing Linux on an SSD (Solid-state Drive)” »

While Ubuntu does many things well out of the box, being able to recognize Android devices connected by USB is not one of them.  Instead the devices have to be added by manually editing the rules of the USB subsystem.  Luckily, this is easy to fix. Continue reading “Mounting your Android’s SD Card on Ubuntu” »

For Linux users hosting their own websites using Apache, the log files provide a wealth of analytics information about bandwidth usage, visitor locales, referrers & keywords, etc.  However, they’re not particularly readable nor do they summarize or compile information over time.  Webalizer is a handy tool that will do this for you, with nice graphs and statistics summaries.  Setting it up on Ubuntu 10.04 is a snap: Continue reading “Installing Webalizer and Publishing Analytics to Your Website” »

WordPress is one of the most flexible and easy to use content management systems out there, and we use it quite a bit when setting up websites for clients that want to manage their content themselves. Over time, we’ve put together a set of plugins that we install on pretty much every company website we set up. So without further ado, here are our top tried-and-true WordPress plugins for business users. Continue reading “Best WordPress Plugins for Company Websites” »

The inContact scripting platform is both flexible and easy to use, but it’s not perfect. One of the more subtle, undocumented and hard to debug problems that new clients often stumble upon are tied up ports with no corresponding active contacts.  You can find these locked up ports by going into the Web Manager and checking the number of ports in use vs. the number of active contacts.  This is an extremely serious issue, as there are only a limited number of ports available for each client and if they’re all locked and/or used for active contacts, you’ll start missing incoming calls and outgoing calls will fail!  The cause is simple, but extremely subtle. Continue reading “inContact Scripting Gotcha: Using RUNSUB in ONEND Can Lock Up Ports Indefinitely” »

PBX in a Flash is a CentOS based distro meant to make setting up Asterisk quick and easy. It comes with sendmail, which is fine if you don’t already have an email system set up. However, most of my clients use Google Apps for Business for email and so I wanted to integrate PIAF with existing Google Apps. I found a decent little tutorial aimed at Gmail users that helped me with set up sendmail as a SMTP relay to Google Apps. It was missing a few bits and bobs and the English isn’t too good so I thought I’d write my own guide based on the tutorial and my own experience. Continue reading “Using GMail/Google Apps with PBX in a Flash” »

PIAF is a great collection of Asterisk tools, and the fact that someone has collected them all for me and put them together in a decent package has earned them my undying gratitude.  However if you’re wanting to delve a little deeper and get into more complex Asterisk dial plan scripting, it can be a bit of a trial to work out exactly which config files you can safely modify without tanking your existing installation.  The documentation can be hard to find and/or follow, especially since material is often ambiguous in regards to which version of PIAF it’s talking about.  Given all that I thought I’d share a little of what I’ve scraped together for those who want to start rolling up their sleeves and tackling their own scripting with Asterisk!

For the record I’m using PIAF based on CentOS 5.6 (32bit) and Asterisk 1.8, and my main self-study material is the incredibly well written Asterisk: The Definitive Guide (May 2011). Continue reading “FreePBX and Custom Dialplans” »