Curious about what powers the Dave Seah web machine? Wonder no more! Here’s the latest info, updated August 8, 2014.
Web Host: Media Temple
I’ve been happily on Media Temple since January 2007, using their dedicated virtual server (dv) service after outgrowing several highly-regarded shared hosts. The (dv) provides a good balance between control, ease-of-use, performance, and price even when compared to newer services like Digital Ocean and Linnode. With tuning and caching, even the lower end (dv) w/ 512MB will serve you well at the 5,000-10,000 pageview per day mark.
I’ve written up notes on my initial setup and the recent migration to (dv) 4.0. My review of Media Temple (dv) 4 gives an overview of the pros/cons of the service. If you decide to sign-up with them, use this Media Temple affiliate link and I’ll get a credit on my account!
Domain Registration: DirectNIC
For domain name registration, I’ve been using DirectNic since the late 1990s. While it’s not as cheap as newer registrars GoDaddy or Namecheap, it was one of the very first independent registrars that didn’t try to gouge you after Network Solutions lost their monopoly. I avoid GoDaddy because I dislike their interface.
It’s important to control your own domain name, so use a domain name registrar to register it yourself. Don’t let it be controlled by your web hosting service or website designer, because your domain can be held hostage. Don’t forget to renew it yearly, or buy multiple years in advance!
Website Content Management System: WordPress
I’ve run a self-hosted version of WordPress in its various incarnations since version 1.0 in 2004. WordPress has remained a reliable and experiment-friendly platform, easy to modify and change, with a huge plugin and theme ecosystem.
Currently, davidseah.com has over a million words of my own writing and many thousand comments, and I’ve had to learn to tune the setup to cope with occasional bursts of traffic. Operationally, the biggest challenge has been learning how to handle traffic without bogging down the server, and dealing with the security and hacking problems that pop up. While its had its share of security issues, there are now web hosts that specialize in secure hosting and manage that for you at an affordable cost. The other challenge has been designing the look of the website, but in 2013 I started to customize pre-designed templates instead of making my own. This requires knowledge of PHP, HTML, and CSS.
Essential WordPress Plugins
There are a few plugins that are essential to the way I write and post media to the site.
Markdown: Markdown makes it easy to write formatted text without using HTML tags. I recommend using the old PHP Markdown Extra plugin (no longer maintained) or its replacement Parsedown. Newer plugins like JetPack Markdown and Markdown on Save modify your posts so the original Markdown is saved in an alternative location, and if you ever need to export your blog data into a new installation, you will LOSE it. The newer plugins have an advantage in that they don’t need to process Markdown everytime someone looks at a post, but with SITE CACHING (see below) it’s not an issue. As a bonus, PHP Markdown Extra will work with “page builder” plugins. Otherwise, you need to add that support yourself by writing an extension.
Site Cache: Every fancy plugin you add to WordPress increases the load on your web server, because additional processing is done every time someone loads a page on your website. Instead of generating the page every time, a site cache plugin saves a copy of it to re-use. This improves website responsiveness by quite a bit, and it allows you to handle big spikes in traffic should you be lucky enough to write a popular article. I am currently using WP Super Cache because it works with another optimizing plugin called BWP Minify. Previously, I used WP Fastest Cache but it does not optimize as well.
Image Management: I wrote a plugin called Lazy Image Layout which inserts images into blog posts, scaled to the right size. In 2004, this capability didn’t exist in WordPress, and I have seen no reason to change. It does require me to upload images to a special directory and type in code, but ultimately it works much better with Markdown.
Besides the plugins mentioned above and the ones included in my current theme (see SITE DESIGN below) I’m using:
- Akismet – Anti-comment spam filterer, completely necessary to running a blog due to the number of predatory market spammers out there.
- Contact Form 7 – Create nice forms and emails the data to me. Used for my Contact page
- Duplicate Post – Provides multiple convenient ways of making a copy of a post, which is great for writing series of related articles with similar tags and content.
- RS Feedburner – A plugin that redirects my RSS feed to Feedpress, which gives me a general idea of how many people are subscribing to the website.
- WordPress SEO – I’m using this to generate the XML sitemaps that search engines use to index my website efficiently. It has a number of convenient features.
- WP JQuery Lightbox – Provides the “pop-up image” feature on my website, though it’s getting kind of long in the tooth and probably needs to go.
- WP Optimize – Useful for monitoring database size and efficiency.
In general I try to keep the number of plugins I’m running to a minimum, and I avoid plugins that seem poorly-written or are very demanding in memory on my server. For example, I don’t use Jetpack because it brings my server to a crawl.
I used to make my own WordPress themes, but I found this to be a joyless task. I started buying pre-made themes in 2014 to customize, the first being Moose Responsive Theme. This theme had a number of fantastic features, but after using it for 4 months I saw how poor the underlying architecture was; it essentially glued together three powerful systems from other developers with little concern for optimization or internal consistency. The developer dropped support for the theme in under a year, and after a recent WordPress upgrade appeared to break the theme, I was forced to move to another one.
I’m now using a theme called Dante from a company called Swift Ideas, which is very similar in appearance and feature set to Moose. The engineering and support, however, seem to be a priority with this company. In re-customizing the theme, I didn’t find any major problems other than one RSS feed bug that they had already fixed for the next release. Most of the customization I’ve done is to adjust spacing and add some custom page templates that remove certain features I don’t need.
I use three different ones, each for a different purpose:
- Mint – Shaun Inman’s real-time statistics program is great for seeing detailed information in the past 24 hours.
- Google Analytics – For more detailed data mining of my stats, my GA account is useful to see longer-term trends that Mint can not.
- Statcounter – I’ve used the free version since 2004, and keep using it because it has an unbroken record of daily pageviews to date.
I use the Adobe Creative Suite for practically everything involving images. For photo processing, I use Lightroom, as Photoshop is rarely necessary these days unless I am doing actual photo touchup or image compositing. An example of the latter are the “promotional banners” I make for the products I sell on Amazon, which combine text with several image sources.