The Roof

Kelly and I recently bought a house I Provo, and I climbed onto the roof to clean some things off. When I got up there parts of the roof were squishy. These are some pictures of what we found when we looked in the attic.

Using the Tinyurl API

Lately I’ve had a need to use the API. The API has been usefull for a couple of things since I started using it.
Shortening URL’s

This is obviously the intended purpose of the Tinyurl API. With a very simple function you can shorten urls very easily. This function passes the url to the Tinyurl API which shrinks it and then it is pulled back using file_get_contents()

Lately I’ve had a need to use the API. The API has been useful for a couple of things since I started using it. 

Shortening URL’s

This is obviously the intended purpose of the Tinyurl API. With a very simple function you can shorten urls very easily. This function passes the url to the Tinyurl API which shrinks it and then it is pulled back using file_get_contents()

function shrinkUrl($url){
    $url = file_get_contents(''.$url);
    return $url;
$tinyurl = shrinkUrl('');// equal to

Generating a Random Key

The Tinyurl API can also be used to generate a random key specific to the information you pass in. As long as you don’t pass in a url Tinyurl will only return the the code at the end of the url (6lbwc4) The service now attaches the first part of the url to the code also so the random key function takes a little more code.

function randomKey($url){
    $key = file_get_contents(''.$url);
    $key = str_replace('', '', $key);
    return $key;

New Formatting for XMLHttpRequest

Recently I decided to try reducing the size of hacking the HTTP request for cross browser support in AJAX. This little snippet has been tested and is working.

// new xml http object
var xmlHttp = new XMLHttpRequest() ? new XMLHttpRequest() :
( new ActiveXObject(“Msxml2.XMLHTTP”) ? new ActiveXObject(“Msxml2.XMLHTTP”) :
( new ActiveXObject(“Microsoft.XMLHTTP”) ? new ActiveXObject(“Microsoft.XMLHTTP”) : null ) );

Recently I decided to try reducing the size of hacking the HTTP request for cross browser support in AJAX. This little snippet has been tested and is working.

I find this new method easier to read and is much more elegant than the method bellow; which is the only method I’ve seen out there.

I know that I am not the only who has tried to shorten this section of code. Let me know what you think or how you handle it yourself.

Locks of Love

Yesterday I completed one of my life goals of donating my hair to Locks of Love. A charity which takes donations of hair and make wigs for financially disadvantaged children with long-term medical hair loss. I certainly got plenty of surprised comments/looks afterwards and I greatly dislike the haircut. This is all easier to think about when I think of the fact that an underprivileged cancer victim is profiting from my small loss it makes me feel much better about it.

new hairnew hair side

Acceptable academic use of social media

Last week John Krutsch asked me “do you think there is ever an ok way for teachers to use social media in classes or for course work without being creepy?”. My answer was yes if they are used in the right way, and that is what I would like to elaborate on.

The thing I find about integrating classroom tools into social media, is that for me to truly accept it the tool needs to serve a purpose. If the tool is just a calender that is inserted into the normal interface of a social device like Facebook or Myspace what is the point? what purpose does it serve? Student’s will still have to go to their course web site to truly do anything of importance, so in my opinion the app is just adding to the noise. I feel that the use of networks like Facebook, Myspace, and Twitter should not be used in classes. (the one exception are classes on society or social behavior.) The use of these networks invades student’s private lives which they may want to keep separate from their school work.

While I find social devices mentioned above to not be acceptable there are platforms that are acceptable. Blogs for instance are a great source of information that are often used in a social way. The use of these for academics is highly acceptable because they can be used for the purpose of study or a way to get feedback from classmates. While blogs can be very effective they like other forms of social media need to be implemented correctly. The use of these types of media while less invasive can still feel very invasive to college students. That is why the way they are implemented is very important. Just requiring the use of blogs in your class can cause a creepy tree house effect, and may meet rejection from your students. I believe that if you explain the use of the blogs in class it will most likely have a much better effect. Also offering an alternative to blogging in your class may also accent this effect. While the use of social media in the classroom is acceptable you need to implement it correctly to achieve the desired effect.

Students should build their own tree house.

A big issue in the Ed Tech world is the idea of the proverbial Creepy Tree House. A Creepy Tree House is what a professor can create by requiring his students to interact with him on a medium other than the class room tools. Examples of this would be requiring students to follow him/her on peer networking sites such as Twitter or Face book. ( for a better definition of a Creepy Tree House see John Krutsch’s blog post “Are You Building a Creepy Tree House?” ) Although I find Creepy Tree Houses to be one of the worst things in Education Technology; this is not to say that students following their professors on these types of applications. I personally follow two of my professors, and I believe this has only helped to build my enthusiasm for the class and for continuing my studies. This scenario may sound like the Creepy Tree House that I have just claimed to have feelings of disdain, but it is a different form of interaction. I sought out these individuals of my own accord, and was in no way directed to do so. I find that I enjoy the interaction, and it has provided me with a great amount of information that I can apply to my chosen profession.

As a student I would most likely run from any online class in which I was required to network with the professor outside of the class, or to use tool like Black Board Sync. I personally feel these tools too fully integrate class into the students’ everyday life. Yes this is what they are meant for, but I find that as a student I like to have a break from my studies. I do try to fully integrate myself with the class and participate as much as possible, but I find that situations like these remind me of the annoying kid in class. We’ve all had that experience; there is the one kid in class that bugs the heck out of the rest of the class. You know the kid the one who seems to talk just to make noise or interjects into a conversation in which he is not welcome. You rejected that student then, so why would it be any different with these new apps and possibilities in teaching?

Students reject Creepy Tree Houses for one reason they are creepy. I think a better approach to education is the idea of a Personal Learning Environment (PLE). This allows a student to build their own tree house, which they can invite the professor into when they feel comfortable doing so. This allows students to shut class off when they need to and turn it on when it is time. This method does not mean that the position of the teacher is in any way disintegrated. It has the opposite it allows the teacher to take on their true roll of mentor. Teachers in this system will move to the position of a mentor because they will be moved into the background and will just provide support through needed interaction (materials, demonstrations, Q/A). This allows student to learn how to truly learn by letting them build their own tree house into which they can incorporate anything.

WordPress plugins, widgets, and layouts

Recently my boss/professor had me find some widgets for his WPmu install. I spent several days looking at many different sites, and here is what I came up with to fill his needs. cached++ cached++ uses the built-in MagpieRSS engine functions to create a list of the latest bookmarks on a account, from its RSS feed, keeping the feed cached in the database.This plugin respects’ ToS and will not to overload the feed with subsequent requests, since the default cache refresh period is 60 minutes.Since version 1.3, the plugin is wigdet compatible. To take advantage of that, you’ll need either 1) WordPress 2.2 or higher, or 2) the Widgets plugin. You can still use the plugin without this feature (on WordPress 2.0/2.1 and/or along with a theme that’s not widget compatible); just check the FAQ.

Related Entries plugin will output a series of “related” entries based on keyword matching.

flickrRSS plugin allows you to easily display Flickr photos on your weblog. It supports user, public and group photostreams. The plugin is relatively easy to setup and configure via an options panel. It also has support for an image cache located on your server.

Sideblog Plugin is a plugin for WordPress Blog Platform. It is one way ofimplementing “Asides” – a series of “short” posts, 1-2 sentences inlength. Sideblog is now in version 3.Sideblog v3 differs from previous version in that it is SidebarWidgets enabled. For those whose theme do not support Sidebar WidgetsSideblog v3 can still be use. In Sideblog v3, multiple categories canbe published in the sidebar.

ReCAPTCHA reCAPTCHA WordPress plugin uses a CAPTCHA to prevent comment spam.


Live amazon data feeds, product links, wishlist links, keyword lookups, all product types/catalogs, article inlined and sidebars, keyword lookups, admin interface, caching system.

PhotoXhibit, formally Benjamin Sterling Galleries, was born out of the fires of so many not-so-great gallery/image manager plugins for WordPress.This plugin uses photos from your Flickr, Picasa, and/or SmugMug accounts as well as allows you to upload and build Albums to help you build inviting Photo Galleries on and through out your site.

Twitter Tools plugin creates an integration between your WordPress blog and your Twitter account. Pull your tweets into your blog and create new tweets on blog posts and from within WordPress.

Mowser Word Press Mobile ( includes a service that allows publishers to display their existing web content to users on mobile phones and other handheld devices. This plugin detects when a user is on a mobile phone and automatically redirects them to the Mowser optimized version of the page they were trying to access.The plugin also adds headers that inform search engines that the Mowser version of pages should be used for mobile devices, and can be used to insert information about how to add mobile advertising. For more information about the headers that Mowser uses see: the plugin is installed, and if you’re using a recent version of WordPress that support widgets, you can add a Mowser button to your sidebar using the Widgets tab under the Presentation heading. Drag the Mowser Widget box to the sidebar area on that page to add the widget, and click “Save Changes” to make it active.

3 Column Layouts

Flickr Tag Cloud Widget is plugin for the Widget Sidebar in WordPress. It will display your flickr tags as a tag cloud in your blog’s sidebar.Please visit the official website for the latest information on this plugin.

Elegant Twitter Widget WordPress widget that displays twitter updates in yummy valid semantic XHTML code. The code is heavily commented and the output is in template functions so everything is fully customizable.In this version, the plugin grabs the XML twitter feed and parses it using the PHP XML parser, instead of SimpleXML, to support PHP 4.

WPG2 is a WordPress Plug-in that embeds Gallery2 within WordPress to share photos, videos and any other Gallery2 content seamlessly into the WordPress Sidebar and Blog entries.

WPG2 Features

  • G2Image insertion tool in your Edit Toolbar to help you select one or more Gallery 2 Images, Videos, Albums (displays the Album Highlight Image) in your Blog Posts or WordPress Pages
  • Random, Recent, Daily, Weekly, Popular Images and/or Albums can be displayed as widgets in the WordPress Sidebar
  • Single Signon of WordPress Users into Gallery2, with the ability to restrict Gallery2 Sign on through WordPress User Roles and Capabilities
  • Display your Gallery2 Page(s) from within the automatically created WordPress Page.
  • Add Lightbox Effects for your Gallery2 Images

Category Cloud Widget Category Cloud Widget is a widget that displays your categories as a tag cloud in your sidebar.

Portfolio page ideas

About 20 minutes ago I was hit with an idea for my portfolio web site that I’ve been meaning to build for some time now hopefully something will come of this epiphany. Also sorry about the clutter on the images I had to get my ideas down before they left me. 

Home Page

The background for the home page would have the look of a weathered sketchbook page. There would be perforations along the left side giving it the look of having just been torn out of a sketchbook. The head image or logo at the top may change randomly on load; I’m not sure about that yet. This drawing actually has three different Ideas for navigation on it.

Navigation Option 1

Located along the left side of the main content block. The idea for this navigation is that it would go along with the paper idea of the site. The background for the links would have the appearance of lined notebook paper that had been torn into squares. The link’s text would sit on a blue line like it had been written on the paper.

Navigation Option 2

Location attached to the right side of the main content block. I believe that this form of navigation would have to be images to gain my desired effect. I would set text inside the link to display none to help with accessibility. The tabs would have a look very similar to that of the main content, which could give the look of multiple pages of paper stacked on top of one another. The tabs could give the site more depth, but I am worried about the issue of accessibility.

Navigation Option 3

Located at the top of the page. About the same as Option 2, but they will probably be different colors and look like sticky tabs that can be inserted. The pro’s of this idea is that the tabs would not have to be images and would increase accessibility. The cons I don’t really like the Idea.

I’m not sure on the content just yet.

Gallery Page

The gallery page will have the same style of background and navigation as the home page so I didn’t bother drawing it on this image. The only thing that is really important on this page is the thumbnails. I believe I will go with larger thumbnails than usual the thumbnails will have the look of being taped or pasted onto the page. I left it out but the description will be right bellow the images probably in the same style as the links in “Navigation Option 1”

This is all I can come up with right now. Please leave feedback it will be greatly appreciated.