Skip to content

Blogging at the Speed of Updates to Gmail-Related Software

When I post to this blog, I prefer to do what I can to ensure that what I write here is well-written. So before publishing an entry here, I invest the necessary amounts of time to ensure that what I write here meets the standards that I have set for this blog. Unfortunately, the amount of time that I consider necessary to ensure that what I write here is well-written often exceeds the amount of time it takes for something to happen that necessitates that I make changes to these posts as I write them. I have written about this issue before, and I have found that this may be an issue that I must face when writing what I write about. I have been writing about software that has been frequently updated, and when these updates occur, these updates force me to update what I write as I write these entries. I have recently been writing about Gmail, which has been updated many times lately. So I have needed to get my most recent entries, including this one, published before it would be considered too late.

The updates made to Gmail have been well-documented on Lifehacker. In fact, you can see some of the updates that have been made to Gmail, in reverse chronological order, if you click here. Most recently, a few more keyboard shortcuts have been added to Gmail, as noted here. In fact, a number of updates to keyboard shortcuts have apparently been made after the update was made to add a keyboard shortcut reference guide to Gmail. And something interesting was said by Gina Trapani after that update was made to Gmail’s interface. She said that with this reference guide’s similarity to what was available through a Greasemonkey script, there seemed to be a “development arms race underway” between those who write Greasemonkey scripts and those actually employed at Google. After reading that, I considered writing a post here in which I would have written about what appears to be a race between these two groups of developers. I would have said that I do not think of this as a race. I would have said that, as Ms. Trapani said regarding who would win this race, the Gmail users are the ones who will ultimately be considered the winners. And I would have said that it was ultimately the users of Gmail that will be kept in mind, and these two groups of developers actually complement each other. This will lead to an increase in the number of features that Gmail can have, and it may all happen at a rate faster than I’ll be able to document.

My last blog entry here was published shortly after I found out about updates to Gmail. And I am not sure if I will be giving more immediate responses to what gets mentioned in the blogosphere. However, what I work with and write about has been changing at a rapid pace. And although I do prefer quality to quantity, I am going to need to write more to keep up with these changes. Those responsible for these updates have kept me busy, but in being busy, I’ll keep the end users in mind who will ultimately benefit from the reason I will be kept busy.

For Those Who Still Want Gmail the Old-Fashioned Way (Despite Improvements Made to Gmail 2.0)

I was going to write a short entry here in which I mention an update that I made to a Greasemonkey script that I wrote that works with Gmail. The update to this script that redirects the user from the newer version of Gmail to the older one was released two days ago. I am writing about this update this long after its release, as I considered it much more important to write the updated version of this script than the blog post associated with this update. I have found that the script works more reliably now, although that may not matter as much to those who have used it. It was as I was writing this post that the new version of Gmail, often referred to as Gmail 2.0, had updates made to it that should make more Gmail users prefer using the newer version to the older one. Much is being said about the new feature that enables a user to add colour codes to labels, which is a feature that can be considered a more user-friendly version of a feature that was previously only available via this Greasemonkey script. However, perhaps more importantly, Gmail 2.0 no longer seems to run as slowly as it did.

Many of the blogs that would be expected to have entries informing its readers of these changes have reported these updates that have been made to Gmail. In addition to this news being posted on the Official Gmail Blog, information on these updates has been posted on Lifehacker, and on Google Operating System. It was the post on Google Operating System in which it was said that Gmail “doesn’t cache messages so aggressively” anymore. And it certainly was quite important that this change was made to message caching, as this caching was apparently what caused Gmail to run slowly. If the feature that enabled users to add colours to labels were the only one added to Gmail, then this upgrade may have been considered equivalent to giving a car with engine problems a new paint job. There are those who may like having improved versions of features available via Greasemonkey scripts added to Gmail, but it was more important for the Gmail team to focus on the main issue that many users had with it.

Gmail may be considered by many to be the best web-based e-mail service currently available. However, there will continue to be changes made to it in attempts to improve it. In fact, it seems that another feature that may be inspired by a Greasemonkey script may be on its way. According to what was written in the post by Dave Cohen on the Official Gmail Blog, “work to add some folder-y-ish functionality” is being done by those working on Gmail. And so it seems that the next Greasemonkey script for Gmail to be made redundant by new Gmail features is the one known as Folders4Gmail.

Perhaps features we will see in Gmail in the future will be based on scripts that I mentioned in my last entry here. As you can see, one of these scripts has been rendered redundant, and another mentioned there may be considered unnecessary soon. And maybe a few new features will be based on those that can be used when one has the Better Gmail or Better Gmail 2 extensions installed on Firefox. According to some comments that I have read, not everyone seems to be pleased with the new features available in this new version of Gmail. However, there will be improvements made to it that could make more of its users prefer using the newer version. And so hopefully in the future, it is this script for redirection to the older version that I have updated that will be considered redundant.

Ten Greasemonkey Scripts for the New Version of Gmail

Much has been said about the new version of Gmail by those who have been able to use it. And much of what has been said about this new version of Gmail has not been particularly positive, according to this article. Those who have been able to use the new version have given a number of reasons they consider those still unable to use the new version fortunate. The most common complaints tend to be that this new version takes longer to load, and that it is more likely to cause the browser to crash. In addition, as has been said here before, many Greasemonkey scripts that have worked with Gmail do not work with this new version.

However, since this new version came out, some new and updated Greasemonkey scripts that work with this new version have become available. And coincidentally, news on Lifehacker was posted today about the Better Gmail 2 extension being updated with new scripts to give it new features. And here, I list some of these scripts that make some improvements to this version of Gmail. They are listed in no particular order. Those who would like to see them ranked in order of usefulness may collectively decide on which of these are most useful by participating in the poll at the end of this entry. And without any further ado, here are ten scripts that can be used with the new version of Gmail.

  1. Gmail Filter Assistant. This script allows you to quickly set up a filter for e-mails after you display a message. This is convenient for when you decide that you would like to quickly create a filter for e-mails that are similar to the one that you have just viewed. And this is one of the scripts that worked with the previous version of Gmail, and have been updated to work with the new version of it. In fact, the original version of it was once named the “Download of the Day” on Lifehacker, as you can see here. There may be those who find that the “filter messages like these” feature in the newer version makes this script unnecessary. However, the “filter messages like these” feature directs the user to a longer process for setting up filters. As the author of this script says, this script makes setting up filters much easier.
  2. Gmail Beautifier 2.1. Would you like to be able to widen the body of the e-mail you are viewing, and remove what is on the right side of the page in order to widen it? In addition to giving you this option, this script makes other improvements, such as the improvement of the appearance of buttons.
  3. Gmail Real Estate (Minimize Header, Nav or Ads). This is similar to the previous script listed here, except that it allows the user to minimize the header at the top of the page, the navigation panel on the left side, and the panel on the right side. It is also an updated version of a script that worked with the older version of Gmail.
  4. (New) Gmail Bottom Posting. This script is another one that worked with the older version, then was updated to work with the newer one. The original script, which can be found here, puts the cursor at the ended of quoted text when replying to an e-mail. And so if you would like to have the cursor after quoted text instead of having it before the text in the e-mail you were sent, then this script is for you.
  5. Gmail Fixed Navigation for Newer Gmail. If you want the panel on the left side to always be visible and accessible regardless of how far down the page you have scrolled, then this script is one you would want. However, unlike some other scripts that are listed here, there is no version of this script that works with the older version of Gmail.
  6. Gmail Unlabelled 2.0. Those who have used the original version of this script, which gives the option to display all unlabelled conversations, may be interested in this one. This is the new and updated version of the script for bringing up what is not labelled. The original script for selecting unlabelled conversations that works with the old version of Gmail can be found here. And more information on these scripts can be found here on the author’s page for them.
  7. Gmail + Reader Integrator. As the name of this script suggests, it integrates Google Reader into Gmail. According to the author, this script is still a work in progress. After installing it, you may want to periodically check for updates made to it.
  8. Folders4Gmail. It is good to be able to add labels to the conversations that you have. But what if you want to organize the labels that you have so that they are arranged in a folder-like hierarchy? This script, which also works with the older version of Gmail, allows you to have folders and subfolders for storing messages. Instructions on how it can be used can be found here.
  9. Gmail Label Colors NG. Here is another script that, like the previous one listed here, allows you to enhance labels by adding special syntax to the names of these labels. And this script, which also works with the older version of Gmail, highlights the labels in colours that you assign to them in the label names. More information on this script can be found here on the homepage for it.
  10. Gmail in Blue 2. Some might have noticed that among the scripts listed here up to this point, there are no skins. At this time, not many skins have been designed to work with this new version of Gmail. However, this skin, which was one that was made for the older version of Gmail, has been updated to work with the new version. And for those interested, the original version of this script, which works with the older version of Gmail, can be found here.

Of course, not all scripts that work with the newer version of Gmail are listed here, and scripts for the newer version are being worked on as I write this. So over time, users will have more ability to improve this new version of Gmail. Of course, these scripts do not do anything to solve the problems of lack of speed and stability that are associated with this new version. And some may consider speed and stability most important, and so some may say that the new features that these scripts provide would not matter. However, there may be at least a few who may like to have these scripts available to make it so that the new version would be considered adequate. And the many people who are using the Firefox extension known as Better Gmail 2 must find it good to know that the kind of scripts that it utilizes are being made available. That can lead to Better Gmail 2 being made even better still in the future.

[poll=3]

For Those Who Want Gmail the Old-Fashioned Way

I once again continue where I left off with my previous post here, as I write about the new and old versions of Gmail, and the Greasemonkey scripts that work with each of these versions. As I mentioned, a new version of Gmail has come out, and a number of Greasemonkey scripts that have been designed to work with Gmail do not work properly with this new version. This has been considered an issue by those who use these scripts, as was noted in a few comments posted after the announcement on Lifehacker about the release of the Better Gmail 2 extension. However, as Gina Trapani mentioned in those comments, the older version of Gmail could still be used. In fact, this older version is only one mouse click away from this newer version of Gmail. However, considering the number of Greasemonkey scripts that work only with the older version of Gmail, some may prefer to have this older version load by default when logging into Gmail. And in fact, you may have seen that in those comments in the Lifehacker post that I mentioned, I suggested that some might want to be automatically redirected to this older version after logging into Gmail. Although I got the impression that there was not much interest in automatic redirection to the older version, I decided to provide a solution for those who would want to be redirected to this version. And it only seemed appropriate to solve this problem that is related to use of Greasemonkey scripts by writing a Greasemonkey script. So I decided to write this simple Greasemonkey script that redirects the user to the older version of Gmail when logging into Gmail. And if you are using Firefox and have the Greasemonkey extension installed, you can install this script by clicking here.

This script may not be considered very useful. And if it were very useful, one like it would have likely been written and made available long before I released it. However, as long as there are reasons to use the older version of Gmail, there will be reasons to use this script. In addition to being able to continue using these previously mentioned scripts that one would want to use with Gmail, there are other reasons one might prefer to be redirected to this older version of Gmail. For example, it was said in comments here that prefetching of messages, which is done in the newer version, may not necessarily be a good idea. However, this script may not be considered useful at all for much longer. This new version of Gmail does have a number of useful features that many users may like to use. And newer Greasemonkey scripts for Gmail are already on the way anyway, and Gmail is becoming more Greasemonkey-friendly, as you can see in what was written here on the Official Gmail Blog. Still, for at least the time being, it is this Greasemonkey script that I wrote that you may want to be using when logging into Gmail.

Do-It-Yourself Upgrades to the Better Gmail Extensions

There are times that an event occurs that makes it necessary for me to rewrite what I was in the process of writing here. And it was while I was writing this particular entry that three events occurred that made me need to rewrite what I wrote.

I was going to write about Firefox extensions that could be written based on the Better Gmail extension code, and these extensions did not yet exist when I first started writing this entry. I was going to mention that the Better Gmail extension may occasionally require updates to the Greasemonkey scripts that it uses. And then this Lifehacker post came out about an upgrade made to a script that Better Gmail uses. So then I thought I should mention this upgrade here, as doing so would help illustrate a point that I was going to make. However, I was also going to write about how I was able to modify the Better Gmail extension to make it work with YouTube. Then I saw this post on Lifehacker that announced the release of a Better YouTube extension, making it unnecessary for me to speculate on when such an extension might appear, as I had originally intended. I then thought that I could at least mention why one might need to upgrade the Better Gmail extension, with the new version of Gmail rendering Better Gmail’s scripts useless. Then on Lifehacker, news was posted saying that a new extension was released, titled “Better Gmail 2”, which contained scripts that work with the new version of Gmail. And with these recent events, you may now understand why this entry is appearing a few days later than I wanted it to appear.

In this entry, I will mention how updates can be made to these extensions that improve Gmail. Occasionally, updates to scripts used by these two extensions do need to be made. And one could wait for the extensions to be updated, or one could perform the necessary updates by going through a fairly straightforward process.

Before I begin outlining this process, there are a few things that I should note. I am assuming that Windows is the operating system being used, as most of those reading this are likely using Windows. I also assume that those following the instructions have the Greasemonkey extension installed on Firefox. Firefox users that do not have it installed can either install this extension or go through a slightly different process to update the files that need to be updated. In addition, I assume that the user would be fine with installing other utilities if they are not already installed, such as the JDK. I should also note that I give upgrading of the Better Gmail extension as an example, as the only difference in upgrading Better Gmail 2 is that a directory name is slightly different. In Better Gmail 2, the directory in the extensions folder is bettergmail2@ginatrapani.org, rather than bettergmail@ginatrapani.org. Finally, I should note that the example given of upgrading Gmail Macros was rendered obsolete with the release of Better Gmail 2. I did not update this example because of a deadline I imposed upon myself in getting this blog entry published, and the reason for this deadline is one that I note at the end of this post. So for those who would like a step-by-step guide on how to perform their own upgrades of the Better Gmail extensions by adding newer versions of scripts to them, here it is.

  1. Download the updated Greasemonkey script that you would like to add. You will later need to ensure that you know the name of the file that you are downloading. For example, if you are downloading the new version of Gmail Macros and replacing the old version of it, the name of the file is gmailmacrosnew.user.js.
  2. Close your Mozilla Firefox web browser.
  3. Go into your profile directory. Instructions on how to find your profile directory are here if you need them. Then go into the Firefox directory. Then from there, go into extensions\bettergmail@ginatrapani.org\chrome.
  4. Extract the contents of the .jar file in that directory. 7-Zip is one utility that can be used to do this.
  5. Go back into your profile directory, then go into the gm_scripts directory.
  6. Copy the file that contains the new script to the user_scripts directory, which is within the content directory that was extracted from the .jar file. For example, to upgrade the Gmail Macros script, copy gmailmacrosnew.user.js to this directory.
  7. Delete the original script file from the directory to which the new script file was copied. For example, if upgrading Gmail Macros, you would delete the file named macrosbn.js.
  8. Rename the new script file that you copied to this folder to the name of the original file. For example, rename gmailmacrosnew.user.js to macrosbn.js if upgrading Gmail Macros. However, in most script upgrades, you may only need to remove “.user” from the filename.
  9. Through a command prompt, go into the directory where the .jar file was first extracted in step 4. You may need to download the JDK and install it first, and the JDK can be downloaded from here. Then the command that can be run would be “jar cvf bettergmail.jar .” to create the new .jar file.
  10. Start Firefox. Better Gmail should work with the new script now.

One may prefer to add more scripts to the Better Gmail extensions, instead of overwriting scripts already used by these extensions. And after working with the source code in the Better Gmail extension, I can say that adding new scripts to these extensions can be done more easily than one might think. Of course, the process of adding new scripts is more complicated than the process of updating existing ones. I could outline each step that would need to be taken in adding a script/feature to these extensions. However, I will leave that explanation out of this particular post. Whether or not one of my next posts here will be one where I give that explanation may depend on how much demand there might be for that explanation to appear here.

It might be considered more trouble than it is worth to add more scripts to these extensions, even though only a few of them can presently be used with Better Gmail 2. And one could simply look for and install scripts that work with the newer version of Gmail when they become available, and simply use them with the Greasemonkey extension. So why would one want to go through the process of adding scripts to the Better Gmail extensions? Well, once should consider the reasons these extensions exist. Having the scripts used by these extensions all grouped together with an interface that prevents enabling of conflicting scripts can be convenient, as some scripts do conflict with others. This is especially true in the case of skins. Also, when one has several Greasemonkey scripts work with all websites, the list of scripts that are available for use with a web page can be a cluttered list. Use of this extension prevents this from happening. And I must say that when I added new scripts to Better Gmail, I was more interested in seeing how adding new scripts to it could be done. Why? Because I wanted to see how I could modify the code in Better Gmail to make it work with other web pages, and with the scripts that work with these other pages. This was supposed to lead into me commenting on the possibility of a Better YouTube extension, however I can at least say I have verified that these extensions that make websites “better” can be easily developed.

There might be some who would want to go through the process of updating and adding scripts used by the extensions that I mentioned here. I am not sure how many people would actually go ahead with this, but the instructions I have listed here can be referred to by those who may want to update these extensions. And with the new version of Gmail coming out, we have recently seen that scripts in the Better Gmail extensions occasionally need to be updated. And with the Better Gmail 2 extension currently lacking features/scripts, perhaps it would have been a good idea for me to include instructions on how to add new scripts to Better Gmail 2. However, I must admit that a reason I decided to leave out those instructions for now is that I wanted to get this entry published as soon as possible. And that is because I wanted to make sure that I got this post published before a fourth event could occur that would make me need to rewrite what I wrote, and thus cause the publishing of this post to be delayed yet again.

Better YouTube: Coming Soon to a Browser Near You?

In the first few days after writing the previous blog entry here, I found myself uncertain of what to write here next. However, it seemed as if the decision regarding what I should write next was made for me after this previous blog entry was featured on Lifehacker. It was after this happened that I knew that I needed to follow up on what I had previously written, with everything that was said about what I wrote.

I would first like to say that I was flattered that something that I wrote was featured among the interesting material on Lifehacker. However, I would have preferred that they got my name right when mentioning who wrote the featured blog post. And it was my first name, not my often-misspelled surname that was not entered correctly there. And to those interested in how I reacted to seeing that I was twice referred to as “Jane Kasprzak” in that post, I would like to say that I laughed out loud. However, my name being entered incorrectly there was not something that mattered to me very much. The interesting discussions that resulted from what I wrote is a reason my name being entered incorrectly is not something I will focus on here.

Some interesting points were made by Adam Pash, and by those who have contributed comments in response to what I wrote. It was after Mr. Pash asked for comments on Greasemonkey scripts for YouTube (and other related YouTube tweaks) that some interesting comments were made. A few other interesting Greasemonkey scripts were mentioned both here and in the comments section of the Lifehacker post. In fact, when writing last week’s blog post, I considered mentioning that some may prefer the script for removing comments, rather than the one for moving comments to a different location. This is one example of two scripts for YouTube that users may want to have, but conflict with each other. And there are many other scripts that perform many other tasks that may conflict with each other, but are ones that users may still want enabled at certain times. For this reason, it would be good to have a Firefox extension that contains all of these scripts and only allows scripts that do not conflict with each other to be simultaneously enabled. And it is this kind of extension that Adam Pash less-than-subtly suggested be written, and this suggestion led to another discussion that I would like to join.

Mr. Pash alluded to the extension titled “Better Gmail” that contains over twenty-five (25) Greasemonkey scripts that a user can have enabled. Many of these scripts are considered features that can be added to Gmail, and others are considered skins to customize the appearance of Gmail. It is convenient to have an extension such as this, as it saves the user the time that would be spent looking for and downloading each individual script. In addition, with this extension, scripts that conflict with each other cannot be simultaneously enabled through the interface that it has. And so with the many scripts available for enhancing YouTube, would it not make sense for a similar extension titled “Better YouTube” to be made available? Well, such an extension may be on its way soon.

There certainly would be interest in this kind of extension, and it may be available sooner than one might think, because it may be fairly easy to develop. This extension could simply be based on the Better Gmail extension, which in turn seems to be based on the Better GCal extension. After looking through the source code for both of these extensions, it appears that few modifications of the Better Gmail extension need to be made for it to work with YouTube. It may need to be based on the Better Gmail code, as the code for the Better GCal extension does not appear to work with conflicting scripts. It might take some time to determine which scripts should be included in this extension, and to determine which ones might conflict with each other. However, Gina Trapani, who wrote these two extensions, has emphasized in her book that where there’s a will there’s a way. And it is not my intention to pressure Ms. Trapani or anyone else who might write this extension into getting it done quickly. I am only saying it can be done, and that it may be done soon.

When I wrote last week’s blog post, I never did expect it to lead to the kind of discussion that took place here, let alone on Lifehacker. I never did think that this post would lead to anything that might possibly be considered a catalyst for the development of a Firefox extension that many would consider useful. However, I am quite pleased to see this, as this extension that I am indirectly and accidentally responsible for creating interest in is one that I too would like to see.

Five More Useful Greasemonkey Scripts for YouTube

It was two blog posts ago that I released and wrote about a Greasemonkey script that adds links below embedded YouTube videos that, when clicked, take the user to the YouTube page on which the embedded video can be found. And it was during this time period that I describe as “two blog posts ago” that I have tried to find more and better ways of getting people to consider this script useful. In fact, I have been asked if this script was actually useful at all. I have mentioned a few ways in which it could be considered useful in that blog post that I use here as a reference point for measuring the passage of time. I mentioned that after seeing one of these embedded videos, some might want to view what is on the YouTube page for the video. Examples of what one might want to see on this page are comments on the video, the code for embedding the video, and links to related and similar videos. Another reason for viewing these YouTube pages that I mentioned is that there are Greasemonkey scripts that work with these YouTube pages that make it so one would want to view the page for the video, rather than the embedded video. And in this post, I discuss a few of these scripts.

Before I do begin discussion of these scripts, I should note that a discussion of Greasemonkey scripts for YouTube is already available elsewhere. It is on that social networking news blog named Mashable where there is a blog post titled “12 Essential Greasemonkey Hacks for YouTube.” I should mention that before finding out about this post, I did consider writing a blog entry in which I discuss useful Greasemonkey scripts for YouTube. And so it is quite fortunate that I found out about this post before publishing this entry, as I certainly would prefer that this post not be considered redundant by the many people who have already read that post on Mashable. I am writing this entry to complement that post that I mention, as listing twelve of these scripts is, in my opinion, not quite enough. There are other scripts like these that deserve to be mentioned, and so it is here that I mention another five of these scripts that YouTube users may be interested in using. And so without any further ado, here are another five Greasemonkey scripts for YouTube that are worth a look.

  1. YouTube Resizer. It was shortly after reading this blog post on Lifehacker about stretching YouTube videos to fit the width of the browser that I found out about this script. Adam Pash wrote about wanting to make YouTube videos larger, without having to having to use the “hugely pixelated fullscreen interface.” He mentioned that a bookmarklet or Greasemonkey script that redirects the user to a page in which the video display is larger would be good to have. Then I checked to see if a Greasemonkey script for doing this already exists, and I found this one, which is similar to what is described in that post, except that this one is better. It makes the area for displaying the video larger, without redirecting the user to another page.
  2. YouTube Prevent Autoplay. Have you ever wanted go to the page for a YouTube video without having the video immediately play? Perhaps you simply would like to read through comments on these videos, even if it sometimes seems that the majority of these comments are spam. Or you may only want to look for videos that are considered similar to the one you are bringing up. And this script is also one that is quite useful when testing out Greasemonkey scripts that work with YouTube pages, as I have found out. There may be a number of reasons for wanting the video on the page to be played only when you tell it to do so, and I personally have kept this script enabled at all times.
  3. YouTube BetterTitles. The individual who wrote this script puts it best by describing it as follows: “Many pages on YouTube have the same title: ‘YouTube – Broadcast Yourself.’ If you have several tabs open, things get confusing. This simple script changes the title on some often-used YouTube pages. Examples for improved titles include ‘Manage contacts’ or ‘Most Recent (page 3).'” So if you find that you would like to have several videos open in separate tabs, as I sometimes do, then this script is essential.
  4. YouTube Better Embed. I have mentioned in a previous blog post that the code for embedding videos that is included on the YouTube pages on which YouTube videos can be viewed is not compliant with XHTML 1.0. And so if you would like to copy and paste the code for embedding a YouTube video into the code for a web page, and would like to do so without using any tags that are considered deprecated, then you’ll find this script useful.
  5. YouTube Comments Next to Videos. There may be times that you would like to peruse comments comments on a YouTube video while watching the video. And this script, which was inspired by the design of Google Video pages, enables you to do so by putting these comments next to the video. There is the script named “YouTube Googler” that makes the design of YouTube video pages similar to the design of pages on Google Video. However, if it is only this one feature that you would like to borrow from Google Video, then this is the script that you would want.

In this post, I have mentioned scripts such as these as reasons to want to visit the YouTube page on which a YouTube video is located, after finding a YouTube video embedded in a web page. Some have already found these scripts that I mention useful, judging by the number of times they have been downloaded. And for this reason, perhaps a few more people will consider the script that I wrote for embedded YouTube videos useful. I may have more to learn about marketing of the software that I write, and informing people of what I write and why it can be useful is something that I would like to do well. And marketing of what I write is something I have considered writing an entire blog post about, and that may be a post that will appear a few blog posts from now. And hopefully “a few blog posts from now” will not be considered a very long time when measured in days or weeks.

My Last Idea: Even Less Original Than I Thought It Was

As I mentioned in my last blog post, the last Greasemonkey script that I released was one that may or may not have been inspired by a script that already existed. My script, which adds a link to the YouTube page for a video below places where that video is embedded, was similar this one that was already publicly available. I mentioned that I might have previously seen this script for replacing the place where an embedded video is played with a still image of the video that, when it is clicked, takes the user to the YouTube page for the video. However, after releasing this script, I searched Userscripts.org for scripts that are used with YouTube videos. And it was after doing this search that I discovered two scripts that add links below embedded videos to the YouTube pages for these videos, just as my script does.

Prior to writing this script, I searched for scripts on Userscripts.org that already performed this task of adding this link below embedded videos. And so I suppose I did not look carefully enough through the many scripts that were already there. Had I looked more carefully, I would have seen this script among the many scripts that could be found when searching for YouTube-related Greasemonkey scripts. In addition, I would have noticed that there was another script, based on the previous one, that had the additional feature of including the title of the embedded video in the link. Coincidentally, inclusion of the name of the video in the link was a feature that I considered adding to the script that I wrote. And after seeing these scripts there, I wondered why I did not look more carefully for similar scripts, and why I did not try harder to avoid writing something that was already written. I did previously mention that taking on the challenge of writing this script was one of the reasons I chose to write it. It might have taken less effort for me to look more thoroughly and carefully through scripts for YouTube that work with embedded videos, but I wanted to be able to say I could write this myself. However, is my script then redundant, and thus, not one that others would want to use? Not necessarily.

When I was writing this script, I was interested in seeing how the code that I wrote would compare with the code for a similar script that already existed. And after seeing this other script that performed the same task as mine, it was once again interesting to see the same problem solved with a different approach. In this other script, links would be added to videos that were embedded using the <object> tag. However, I ensured that the script that I wrote also added links below embedded videos that are embedded using only the <embed> tag. I wanted to ensure that this script would work with as many embedded videos as possible, and so I ensured that it would work with embedded videos that were embedded much differently from how it is suggested on YouTube. In fact, I was testing it out on this page that had the video embedded without the use of the <object> tag. I ensured that it worked there, as there may be other pages that embed videos this way. I’m not sure how often that page on which I tested the script gets visited, but I thought it might be visited at least often enough for me to try to make it work with that page. That SmartMirror, designed by students at the University of Waterloo, does look like an interesting idea, and thus, one that I think would lead to that page getting many hits. But being a UW graduate myself, I may be biased, and I digress.

When I first starting writing this script, I thought of simply getting it to work with videos when they are embedded the way it is suggested on YouTube, just so it would work with most embedded YouTube videos. However, it appears that my idea of making it work with as many embedded YouTube videos as possible turned out being a good one. Still, I may look to add more to this script to set it apart from scripts similar to it that already exist. But there are other scripts that I am working on (as I previously mentioned) and those ones are more likely to be what will be released next from me.

Link to YouTube Video Pages from Embedded YouTube Videos

In my last blog entry, I mentioned that there were two Greasemonkey scripts that I was working on, both of which would be used with Digg.com. However, putting finishing touches on these scripts is taking longer than expected because of the recent redesign of Digg. Functionality-wise, the scripts are complete, and I have, in fact, been using them. However, the design of them, which I must admit I cannot be excited about correcting, still requires some work. I did not find that correcting errors not related to functionality to be very interesting, although I might have worked on that if I did not come up with another idea for a Greasemonkey script. This idea, however, may not necessarily be considered my idea, and I discuss that next.

I recently came up with the idea of inserting links below embedded YouTube videos that would take the user to the YouTube page for the embedded video. When viewing a web page that has a video hosted on YouTube on it, the place where the video would be displayed can be clicked, and the video would be displayed there. And after viewing this video, one might want to view the page on YouTube for the video. One might want to get the information about how to embed the video in a web page. One might also want to check statistics on how many times it has been viewed. Perhaps one may want to read or post comments about the video on the page on which the video is hosted. And of course, there are those who may want to do what can only be done with the video by using Greasemonkey scripts that only work with the video when it is viewed on its YouTube page. For these reasons, it made sense for this kind of script to be made available.

I checked to see if any similar Greasemonkey scripts were already publicly available through Userscripts.org after I got this idea. And I saw one hosted on that site that I had not yet noticed before. There was this script there that was very similar to what I had in mind, in that it replaced the place in which the video would be viewed with a still image of the video. And when clicking on this still image, one would be taken to the YouTube page on which this video was hosted. I have periodically looked for scripts on Userscripts.org that were for YouTube and I had not noticed this one. Was it a coincidence that this script was recently added to the list of scripts with the “youtube” tag, or did I somehow subconsciously decide to “borrow” an idea from another script? In any case, I preferred having a choice between viewing the video where it was and going to the YouTube page for the video. And the script that I would write would give the user this choice.

So I decided to go about writing the script, knowing that if I had some difficulty with it, I could refer to the source code of scripts that did similar things. But I chose to avoid referring to the source code of these scripts. I could have looked up the answers to questions I had about writing this script, but I decided to put off looking up these answers until I finished working on this on my own. If I referred to the source code for these scripts, I could have released this script sooner. However, given the choice between getting this done quickly and taking on the challenge of finding out on my own how this could be done, I had to choose the latter option. The challenge of writing the script was one that I wanted to take on. It was not only the finished product that I was interested in.

After writing this script, I did refer to the source code of other scripts that work with embedded YouTube videos. I compared the way in which they were written to the way that I wrote mine. And although I did get some ideas on how they could be improved, I did not get all the answers that I wanted to find. I have found that YouTube videos do not always get embedded in web pages the way it is suggested on the pages for YouTube videos. In fact, if you click here or here you’ll see that the use of the <embed> tag may not always be used in embedding these videos. Some might copy and paste the code for embedding the video from the YouTube page for the video, but there are those who do not want to use a tag that has been deprecated in XHTML 1.0. In addition, an <embed> tag (that is not within an <object> tag) could also be used to embed videos. I have found that some Greasemonkey scripts that work with embedded videos do not handle the different ways in which videos are embedded. And I wanted to ensure that this script would be able to handle the different ways in which these videos can be embedded.

The script can be downloaded if you click here. And after downloading and installing it, you may want to try it out by visiting a page such as this one. If there are any pages with embedded videos that it does not work with, I would like to know about them. Any feedback on this script would be appreciated. And I am sure at least a few people will find this script useful, as the scripts that may or may not have led to me working on it are apparently being used by at least a few other people. It is however, interesting to note that this script that mine might be based on, was in turn based on this script.

Self-Imposed Software Release Deadlines and Blog Filler

A pattern appears to have formed thus far in the blog entries that I have written. I have been alternating between writing an entry about software that I have written and writing entries that are not specific to any particular software from me. The latter kinds of entries might be considered ones that are primarily there in order to maintain posting frequency, as I understand the importance of keeping this blog updated. This blog has so far been primarily about the software that I write, with entries where I comment on this software. And then there are the entries here where I post commentary in between the entries about this software. And this post is one of these latter kinds of entries.

At this time, I am working on two different Greasemonkey scripts that should be released shortly. Both of them will work with Digg, and one of them may make my previous script for Digg obsolete. Blog entries will be posted about these scripts here once they are released, as is the case with each one I write. They may be released soon, but not before I’ll need to enter at least one post here not related specifically to any software I have written. If I were able to make either of these scripts available at this time, this entry might not be here. So I maintain this blog by putting this entry here as something of a placeholder entry to inform users of my software of what I am doing. But would this be considered filler? That may depend on what one would define as filler. But perhaps it is an oversimplification to classify blog entries as filler and non-filler, and it might be best to not think of these entries in such a dichotomous way. This post might be here mostly because this blog is due for an entry, but it is serving the purpose of informing people who read this of what I am doing.

It is naturally easier to blog when there is something to blog about. And what this blog has been primarily about is the software that I write. And thus, it is easier for me to add to this blog when I have software posted here to write about. And as I try to keep this blog updated, I may occasionally need to write entries such as these that I, for one, do not consider as interesting as the software-specific entries. And as I want as little as possible of anything that could be considered filler here, I may be forced to release these scripts before they are quite as well-written as they could be. This blog, with the way I need to maintain it, has forced me to continue producing code to keep it interesting. However, it could also force me to release software that is not very well-written, with the way I now have these self-imposed deadlines for writing these scripts and their associated blog entries. Although I do plan on coming up with new versions of the software I write, I prefer not to release anything prematurely. Having said all of this, you may not be sure of exactly what I mean when I say this software may not be as good as it could be. Unfortunately, you may find out about what I mean when these scripts come out. However, when these scripts come out, I’ll be open to suggestions on how they can be improved. And opening discussions between myself and those who use what I produce is one of the main reasons for the existence of this blog.