Categories
life technology

Males and Power Tools

Working next to a major construction site I have been interested to see the reactions of myself and others working in my area. Despite the fact that we are all professionals in careers of our choosing we are also very interested in the work being done by the construction workers – who are in careers completely different from our own.

Usually when a loud sound draws many of us to the windows to see what just fell (the food court last week and much of a parking terrace today) the men tend to stay near the windows longer and often there is at least one person making comments about how exciting it would be to operate one of the large construction vehicles that are destroying buildings and sifting debris. We seem to watch a wrecking ball or a backhoe with the same interest that a three year old watches a cordless drill in action.

Speaking only for myself, it is not the destruction that makes it look interesting it is the skill of being able to manipulate heavy machinary to accomplish sometimes delicate work.

Categories
technology

I Finally Dig Digg

When Digg arrived on the web I wrote it off as another Slashdot – nothing wrong with it, but no reason for yet another account to remember. I change my tune today because of the fact that there are no editors deciding what submissions get posted. By itself that’s no big deal, but I was trying to get access to a story in the Wall Street Journal without paying $80 a year. I learned that you can access full stories when coming from sites like Google News or Digg.

When I couldn’t find the month-old story on Google News I registered with Digg and submitted the story myself (I had already found the link that leads to an article stub when coming from the sites of mere mortals like myself) – through Digg the link produced instant access to a valuable story.

Categories
meta pictures technology

Similarity

I have been using Darren’s Related Posts plugin (DRPP) for a long time. For my purposes it was the best plugin for showing related posts that I had encountered. After a while I decided that I was not completely satisfied with the way that it seemed to favor more recent posts. I developed a new algorithm that I felt would not give preference to newer posts unless they were actually more related.

When I learned that WordPress would be adding native tag support in version 2.3 I decided that I would create my plugin to work with tags after they arrived. Life got busy so I never worked on the plugin until version 2.5 came out (partly because I wanted to convert the post_meta “keywords” from DRPP to tags). I finally buckled down and created my Similarity plugin this week. I have tested it on version 2.3.3 and version 2.5 (I assume it will work with any version of 2.3). I will continue to test it on new versions of WordPress as they are made public. (Przeczytaj opis wtyczki po polsku)

Latest Version 2.13.1 (September 9, 2009)

New options make it possible to layout and style the php function generated lists (for sidebars) independent of the auto-generated list. – Version 2.13 was released with an incomplete development copy of the plugin so it did not have the promised functionality. (In other words, “Pay attention Miller.”)

To install it simply unzip the file linked above and save it in your plugins directory under wp-content. In the plugin manager activate the plugin. Settings for the plugin may be altered under the Similarity page of the Options menu (version 2.3) or Settings menu (version 2.5 or later).

Options include:

  • Number of posts to show – this is a maximum, it won’t invent connections that don’t exist, set it to 0 (or less) and it will display all matches.
  • Minimum match strength – enter a number between zero and one (one being a perfect match) and items related weaker than the number indicated will not be included – this limit is ignored for the one extra if that option is used.
  • Default Display if no matches – if there are no matches this is what will be displayed, this is not displayed if there are matches, but fewer than the set maximum.
  • Text and Codes before the list – assuming you want to do a list this is where you would place the <ul> or <ol> You may also place any other code you would like to have preceeding the list. (There are two boxes here – one for function calls in your template and one for auto-generated lists.)
  • Text and Codes after the list – this would be the place for </ul> or </ol> You may also place any other code you would like to have following the list.(There are two boxes here – one for function calls in your template and one for auto-generated lists.)
  • Output template – this would be where you place the <li> tags. (There are two boxes here – one for function calls in your template and one for auto-generated lists.) There are also 4 template tags you may use (in any configuration you can imagine) to define how the results are displayed
    • {link} – provides a link – equivelent to <a href=”{url}”>{title}</a>
    • {strength} – outputs the calculated degree of relatedness
    • {url} is the permalink for the related post
    • {title} is the title for the related post
  • Display format for similarity strength – Value displays the {strength} in a decimal format (0.873), Percent displays the {strength} in a percentage format (87.3%), Text displays {strength} as a word (Strong, Mild, Weak, and Tenuous are the defaults), and Visual displays a color block (Green for 100% fading to Yellow and then to Red for weak connections)
  • Relative mixing weights – these values determine the ratio given to the weight of tags vs categories when using the sim_by_mix function. Invalid ratios are treated as a 1 to 1 balance.
  • Custom text for strength – allows you to insert custom text (including markup) for the strength indicator when using the text display format. (Hint: using markup allows for the possibility of showing custom images.)
  • Show one more random related post – dig deeper into the related post list with one random selection (you can set a minimum strength for these random items).
  • Auto-display a Similarity list at the end of a single post – without modifying any templates.

The plugin allows for three function calls anywhere in your page templates or their shortcodes in text widgets (all use the same options):

  • <?php sim_by_tag(); ?> – determines similarity based on the tags applied to the posts (shortcode: SIM-BY-TAG)
  • <?php sim_by_cat(); ?> – determines similarity based on the categories assigned to the posts (shortcode: SIM-BY-CAT)
  • <?php sim_by_mix(); ?> – determines similarity based on the tags and the categories with the relative weights determined by the relative mixing weights setting (shortcode: SIM-BY-MIX)

Alternately you may choose to auto-display any of the similarity lists at the end of posts on single-post pages without getting into the php by selecting the function you wish to auto-display on the Similarity options page.

Categories
life meta

Another New Feature

I got a new plugin called In Series today. There have been a few times when I have written a series of posts that should be linked together. In the past I have tried to tie things together by referencing previous posts in the series, or by manipulating the tags so that the other posts in the series dominated the list of related posts. Neither of these methods is completely satisfactory because I prefer to avoid the “(here, here, and here)” links (not my style) and it’s hard to work in references to all the old posts if a series gets long – like my candidate endorsements series. Manipulating the related posts list only works for a series of less than 8 posts and it skews my tagging so that it is not truly representative.

After installing the new plugin I went back through my posts and added posts to various series’ as appropriate. I learned something interesting about my voucher posting, all my voucher posts have been in the last six weeks and I have written 15 times on the issue. Also, as I have read the news I have discovered that I am no longer interested in writing about vouchers ever since I came to my final decision. Like some other people I am ready to put this referendum behind us so that we can move forward on something better than HB148 and HB174.

Categories
meta technology

Archive Menu

I have created a new theme for my site (more like what I was unable to create before) which should render correctly in any browser. I know that the old theme was quirky in Internet Explorer. As part of creating this new theme I had to make a new plugin for WordPress. It’s called Archive Menu and it displays the archives as a two layer list of years and months. I took most of the code from Compact Archive by Rob Marsh (http://rmarsh.com/plugins/compact-archives/). I loved that plugin in my last theme, but it displayed in a very abbreviated format which would not work for the menu I was trying to create. This plugin displays the menus more like the standard monthly archive function of WordPress broken up in to years.

Once I have fully polished my theme I will release the code I used to implement the Archive Menu but I want to make the plugin available before then. Download the plugin here.

Categories
technology

Windows Genuine Safari

Apple ported their browser, Safari, to Windows and released a public beta this week. Having heard great things about Safari from a web-standards perspective I got it and had a look. Aside from the standards compliance it was just a browser – nice, but nothing compelling about it. Then this afternoon a window popped up on my screen:

Safari - Genuine Windows Software

Less than one week and Safari has its first security patch (it was cracked within hours) – I thought to myself “It’s genuine Windows software.”

Categories
technology

Wireless Electricity

I’ve always said that there should be a way to power devices wirelessly. Now MIT has proven that it can be done. Just think what that will mean for the world of mobile devices.

Categories
life technology

Help: I need PHP to actually work on IIS 6

I know this is a sidetrack from my normal topics, but I guess I’m testing the community out there. I have not been able to get reliable help on this problem even with Google.

I got PHP working on IIS 6 and then it magically stopped working. I got it working again (not sure what changed) and then it stopped working again as soon as the server got rebooted. Does anyone know how to make IIS play nice with PHP?

P.S. Let’s just pretend that I have no choice about IIS or PHP. It won’t help me to hear anyone suggest their favorite alternatives to either of them – if I could change the setup I would not bother with this combo.

Categories
culture technology

New-Tech Day

I think that today marks the first time that three new technology concepts that I could get excited about have land on my desk in one day. Two of the three are quickly spreading around the internet while the third has yet to gain a widespread following (as far as I know). The first item is Livescribe. The idea of smart paper infused with an invisible grid is not particularly new, but the people at Livescribe expect to have a time-synchronized audio recording to go with the smart paper and they hope to have the smart paper available at prices comparable to regular paper. The pen would be a scant $200 and they expect to be in the market by the end of this year.

The second item is an addition to Google Maps called Street View. Some members of my family will probably be familiar with the view I linked to. I can’t wait until they expand the coverage of this. It will make trip planning much different. As it is, I can sit in my own home and explore New York City.

The third item is Microsoft Surface. The concept of multi-point interactive touch screens that this is based on was demonstrated in February of 2006. I have been excited about the possibilities of this technology for months now, but Microsoft has added the interaction with objects on the surface which makes this idea even more appealing. Like Livescribe, they hope to have this to market by the end of this year although it will not be targeted at the consumer market by then.

Categories
meta technology

Classic Posts

I have been wanting to implement a “greatest hits” section in my sidebar ever since I read the lessons for would-be bloggers. Yesterday I discovered the classic posts plugin from Chris vs Chris which displays posts which you have designated as “classic.” That sounded like the kind of thing I wanted, except that I was looking for a sidebar list. I added a function to their plugin which returns a list of posts rather than the posts themselves. I also discovered that their plugin does not successfully handle selecting and deselecting posts as being “classic” if you are on anything except the default list of posts – in other words it only works on the last 15 posts. (I went into the database so that I cold manually select some older posts)

I have no particular desire to own this plugin so if Chris and Chris want to adopt my modification into their official plugin they are welcome to it. If they do I will link to their version of the file, but until then here is my version: Classic Posts plugin with List Option.

UPDATE: I found the error on the plugin (I had to add two characters to the code) and I have the working version up now (same link as before).

UPDATE 2: Chris has added my modification and the bug fix so I will include a link to the official version.