May 2008

Giving MarsEdit another try

Pat was asking about a good offline blogging tool yesterday. I mentioned that I had a love-hate-hate relationship with MarsEdit. It stuck in my memory as a tool that was decent but had just enough major annoyances to keep it from being useful. Well that was all before the update to version 2 by Red Sweater software.

I'll take it for a spin and report what I find this time around.

Real Estate Bust

For Sale SignNary a day passes without some prognostication by our local realtor bloggers saying everything has turned around and the market is headed back up. What is most surprising about these is not that there are sales people who believe that they can still sell snake-oil but that there are sales people who haven't taken the time to understand that 2008 is not 2006 or 1989. Consumers are better informed and have access to more information than at any point in the past.

What is most surprising is that some of the very same folks who are trying to high-pressure customers into buying now are doing so online. In the very same environment that gives consumers access to the actual information about what is going on. Real estate sales people can say "the market is turning" till they are blue in their faces but we'll still know that the rate of foreclosures is increasing. We'll still see the new house each week that is bank owned on our streets.

Starting Time Capsule with only part of the disk

With a new laptop to backup to Time Machine the initial backup can be very long. In fact it takes many many hours to get the 100+ GB of my disk backed up. So I tried a different approach that is working quite well so far. Going to the Time Machine preferences on the laptop I setup the Time Capsule as the backup disk and then set Time Machine to exclude most of the top-level folders on the disk. This allows a relatively quick backup to the Time Capsule to succeed. Once that is done then each day when I connect the laptop I can go back to the preferences and remove a folder from the "excluded" list. In this manner I can add a little bit to the backup each day and in the hours the laptop is on at home it slowly all gets added to the backup.

Using named anchors with #redirect in forms

Working on a site using the jstabs module this evening I came across a bit of a challenge passing named anchors to the element of a form. The desired url for redirection in this case was /user/myuser#profile-tab-7.

Asking in led to the following tidbit from chx. (This is one of the many reasons Drupal is wonderful since Google searching didn't produce results and my experiments and requests of friends didn't produce the answer.) Anyway the challenge is that causes the form to call drupal_form_redirect() which in turn calls drupal_goto(). The drupal_goto() function takes the path, query and fragment as it's first three arguments.

drupal_goto($path = '', $query = NULL, $fragment = NULL, $http_response_code = 302)

Portland Airport (PDX) and the right way to do Wifi

PDX Wifi map At the Portland airport today traveling after an excellent Portland DrupalCamp. The day got busy yesterday and I fell behind in updating my post but that will come later. In the meantime it is worth sharing how an airport does Wifi the correct way.

So the first thing is that WiFi, yes even in airports, should be free. This is not a service to offer only to those who will pay for it. It is a way of making sure people like your airport and your city so they will come back again. Boise, Portland, Las Vegas and others get this. Unfortunately San Francisco and Denver are amongst the airports that don't realize this.

Some airport WiFi seems to work marginally. Portland on the other hand has a very solid service at PDX. In addition when you sign in instead of a generic page you get a very useful map showing what part of the airport you are located in and where other access points are.

Drupal Camp PDX


Off to a great start at Drupal Camp PDX. Ben Kaplan and Andrew Morton are kicking off the day with what Drupal is and is not. Some great analogs are being used to illustrate what Drupal is and is not. Of course having a Drupal Camp in the beautiful Portland area makes it all the better.

Solar Green Lawn Care

Solar Green Lawn CareHow does one green up their lawn while being true to keeping their carbon footprint small? We've got the push mower but it just doesn't leave the grass quite long enough and is tough to keep the blades sharp for really clean cutting. There have been times we've thought about going the lawn service route, but the noise, exhaust and annoyance factor is quite high.

Enter Solar Green Lawn Care. We recently signed up with this great new service. What's so different? Solar Green uses battery powered equipment that is charged from their solar-powered trailer. A few times a year they plug in to the house to run the edger, the one piece of non-battery powered equipment they have. It's a terrific concept and I'm quite happy to have such a service here in Boise.

On top of all that they have very reasonable rates and should be able to keep them reasonable even when the price of gas continues to spiral upwards.

A fun jquery trick

Working on the Forum Thread module I came across a bit of a challenge. On one user's site the call to add an inline javascript file (drupal_add_js()) was being called from nodeapi twice. Since it is calling inline javascript drupal_add_js happily puts the script on the page twice.

In this case the script in question calls a "toggle" function to hide and show the comments on a given forum node. Since the script was there twice it obediently displayed and then immediately hid the comment body. Evidently users aren't keen on this method of speed-reading.

The solution then is simple. Use an external .js file. However, in this case to make the module easy to configure I wanted to allow users the choice of which css element identifies a "comment title". (An aside that the way this works is to hide and show the siblings of the title which does impose some requirements about how the comment is formatted.) So this makes it more complex because I want to include the proper selector in the script and still include it in a file.

To accomplish this I ended up splitting the jQuery function into a couple of separate calls. The first, an inline script, does an addClass to the user-identified comment title class. Then a file-based javascript acts on the newly added class to hide and show the comments as a website user chooses on each page.

It is possible to see the results in action.

Druango's Mexican Grill, Meridian, ID

Just a quick post to note that Durango's Mexican Grill at 2951 E Overland Rd., Meridian, ID is open till 9PM. Sorry for all the RSS readers who won't care but I'm sick of looking up restaurants who don't have information online.

Search Twitter feeds

A Drupal Planet post pointed me towards Sumarize.com which makes easy work of searching Twitter. Though it still doesn't make Twitter a really useful tool in most cases it is rather fun to use it to search "follower whores". Now what is a follower whore? It is somebody who wants to crank up their followers so they make their updates "private" and then allow anybody who will "follow" them to see the updates. With the search engine you can't see their feeds but you can see the responses to them and get a pretty good idea what they're saying.

And you can use their tool for sentiment analysis. Though to be honest when I use it and then look at the resulting posts it's a really weak analysis with really tenuous scoring. But tenuous doesn't prevent it being fun.

Pages