Improved Google Searching (in Chrome)


I search for information continuously. Today is pretty typical and I’ve logged 65 unique google searches so far with another 2 hours left in my workday.

Everyone has their search engine of choice…I like Google – at least for the most part. My one major annoyance is when searching for technical subjects, the results are always littered with far too many links. Since I usually open a few relevant titles in separate tabs without checking the source, I end up wasting valuable time looking at and then closing several worthless eHow pages a day.

A few years ago, Google did provide a very simple way to block sites from your personal search results. Unfortunately, this feature is no longer available.

I did found it amusing that my search on how to block eHow results on Google didn’t come up with any eHow links…but it did come up with this wonderful bit of know-how on preventing eHow in your results – if you search using the Chrome address bar (which is how I operate):

  1. In Chrome, click the wrench and select Settings.
  2. On the new page, find the Search section
  3. Select the Manager Search Options button.
  4. A window will appear with defined search engines.
  5. In the Other Search Engines section, scroll down to the bottom.
  6. The last row will be a place where a new search engine can be defined. Set the three fields as follows:
    • GoogClean
    • {google:baseURL}search?q=%s -ehow&{google:RLZ}{google:acceptedSuggestion}{google:originalQueryForSuggestion}{google:searchFieldtrialParameter}sourceid=chrome&ie={inputEncoding}
  7. Click on a different row to save your new search engine.
  8. Hover over your new search engine and click the Make Default button.

*I did take the liberty of updated the instructions slightly for clarity’s sake.

**If the 1st or 2nd columns are duplicates of any other defined searches, your new definition will be ignored

, , ,

jQuery Column Balancing


Utilizing multiple columns for lists of different types of content can be really useful if it fits what you are trying to do on your site. However, this often results in a ragged appearance at then end of the content due to variance in the number and length of the different elements in each column.

Consider this example:

First Left

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas porta elementum mauris, non aliquam erat vestibulum vitae. Donec mollis aliquam magna, id tempor tellus tristique sed. Nam in odio velit.

Second Left

Suspendisse potenti. Phasellus euismod mattis est. Suspendisse sed massa est. Duis nec leo ipsum. Quisque luctus, mi id vulputate congue, dui odio pharetra risus, sed eleifend lectus neque eu libero.

Third Left

Morbi accumsan leo ut magna sollicitudin dapibus. Suspendisse potenti. Aliquam non risus risus, vel pellentesque arcu. Phasellus molestie bibendum sodales.

First Middle

Etiam molestie eros gravida arcu commodo non scelerisque nibh elementum. Sed tincidunt nisl quis purus bibendum accumsan. Aliquam erat volutpat. Class aptent taciti sociosqu ad litora torquent.

Second Middle

Ut vitae elit sem, ac adipiscing lectus. Maecenas sit amet lobortis turpis. Nullam vel nisl dolor, eget aliquet risus. Nulla facilisi. Donec tincidunt cursus consectetur.

Third Middle

Praesent mi mauris, rutrum vitae malesuada sed, tempus vel felis. In eget elementum justo. Aenean id urna dolor, nec adipiscing lorem. Suspendisse potenti.

Fourth Middle

Donec viverra lacus ac sem sollicitudin eget sollicitudin arcu tempor.

I recently was faced with resolving this solution and found that (with a little jQuery magic) it was not at all difficult to clean up the height differences and make the content look much better.

Continue reading

, ,

Backpacking Colorado 2012


Every summer I try to take one spectacular hike. This summer was the grueling but amazingly beautiful Four Pass Loop, just outside of Aspen, CO.

Here is just a hint of how amazing it was (and with my really crappy camera at that):

Snowmass Mountain reflected in Geneva Lake

Heading up West Maroon Creek

Looking down in to Lower Fravert Basin

My Personal Git Cheat Sheet


Here are a few handy git commands that I was trying to memorize but decided instead to just put them in a post that will expand as I need to learn more commands…

List files that have been changed:

git diff --name-only

List new files in the repository (not added):

git ls-files --others --exclude-standard


Google 403 Errors


Spent some time today (and last week) trying to help a client deal with a sudden burst of Google crawl errors. The errors were resulting in a 403 (Forbidden) and seemed to coincide with a theme change I just made for the site. (As in: the timing of the errors made me look guilty and inept. “Do no evil”, indeed.)

I checked the errors in Webmaster tools and found that Google could actually read the page just fine, but the header marked it as a 403. The only odd thing about the link itself was that it had feedburner tracking in it and it wasn’t well encoded. Feedburner does seem to encode their urls just fine so perhaps Google read it, decoded it and then when it was re-encoded, it missed a few key characters. The odd characters were plus signs and parentheses (both left and right) – all of which are unorthodox but valid url characters.

This one stumped me for a while, until I found that removing the parentheses changed the 403 to 200 (Ok). Moving .htaccess out of the way also resolved the issue so I knew I was finally on the right track.

It turns out, the site uses the Bulletproof Security plugin which adds a rigorous filter to .htaccess to prevent all kinds of malicious attempts. Deep in the script prevention rules, they are also blocking any url that contains parentheses.

The fix is easy enough. Change this line:

RewriteCond %{QUERY_STRING} ^.*(\[|\]|\(|\)|<|>|%3c|%3e|%5b|%5d).* [NC,OR]

To this new value:

RewriteCond %{QUERY_STRING} ^.*(\[|\]|<|>|%3c|%3e|%5b|%5d).* [NC,OR]

I understand the logic in stripping out any characters that might be used in code, but if they are valid URL characters they really should be left alone.

, ,

Plesk Default HTTP Port Change


My preferred webserver configuration is to have nginx listen on port 80 and handle all simple requests (images, js, css, html, txt) and then pass everything else along to apache listening on a different port. This works really well, but getting Plesk to set up sites for any port but 80 has always been a big struggle.

I have researched this issue over and over and most guides (even those on the Parallels site) say to edit the Plesk templates. That approach is very tedious and although it does work – the changes are always at risk of being overwritten whenever a Plesk update hits the server. Automatic updates means that any site configured this way can go down at any moment – an unacceptable option.

This morning, Plesk updates on a server I support and the site went down…and once again I started to search for a better way to make Plesk do what I need it to.

Fortunately, this time I finally found a resource that reveals a much better solution: How To Change Default Apache Listen Port In Plesk 10.

I’m going to rehash it here so it is easy for me to find and remember.

  1. Insert or update the following row in the misc table in the psa database: param="http_port", val=8888. (Val should be the port you want to use, which may or may not be 8888.)
  2. Rebuild the configuration using the following command: /usr/local/psa/admin/bin/httpdmng --reconfigure-all

Now to go and make sure a number of servers I administer are all set up properly.

, , ,

WordPress 3.4 Upgrade Issue


I was updating a site today to WordPress 3.4, and ran into a strange server error after performing the update that prevented the site from working at all and also prevented the database from updating.

Call to undefined function wp_cache_add_non_persistent_groups()

Took a bit of investigation to figure it out. The issue was that the site was using the ancient wp_cache plugin.

How to fix:

  1. Remove the line define('WP_CACHE', true); from wp-config.php
  2. Delete advanced_cache.php from the wp-content folder
  3. Delete wp_cache_config.php from the wp-content folder
  4. Delete the wp-cache folder from the plugins folder

Blogrescue is No More


Official Announcement: The company formerly known as is now Trionic Labs, LLC. The old url now redirects to

One thing that Trionic does have going for is the name of the company will not drive away clients who do not have a blog. Another plus is the Trionic website is way better than the old Blogrescue site (which I’m so happy to have taken down – although I did migrate the blog content over here so none of that is lost). A good looking and functioning site just might make me blog more.

Unless my clients continue to get in the way – which is what they do best.

, ,

TwitchyHD is now available!


I hate that my blog goes stale for weeks (and even months) at a time, but it usually means I’m focused on a big project and just don’t have time to link to things that are interesting or explain a technical Everest that I conquered.

TwitchyHD was definitely one of those all consuming projects. Not that it wasn’t fun – it was seriously fun combined with plenty of hard work, and my wife is an angel for putting up with me through out the entire development process. If you have a chance, give it a try and see what you think.

The goal with this app was much different than our approach to the first two Twitchy apps. Those apps (for Android and iPhone) were designed for rapid media consumption. They both use a very simple list of headlines and aim to present the Twitchy content as quickly as possible without much in the way of extra features.

TwitchyHD is exactly the opposite as it tries to provide a “laid back reading experience”. There is a much greater focus on design, animations and the user experience. We anticipate someone reading a post on the iPad version to spend more time reading posts, browsing comments and even watching the Twitter livestream than they would with the other two apps.

Special thanks to Twitchy for letting me work on their apps and for this great callout. If you ended up here through that link, welcome to Trionic and please excuse the mess. This site didn’t exist on Monday and it is still only about half complete.

, ,

Nestwork Launch

0 is a service that backs up your Twitter Network of Friends, Followers and Lists. It also tracks changes which might help you better cope with the infamous Twitter Unfollow Bug. If you are interested, follow the link below:

The site was actually live and functional last week, but today saw some graphic and interface updates that make things quite a bit more presentable!