Created by the same team that also brought us the indispensable YSlow tests, Boomerang allows us to collect the page load times from actual visitors.
While performing page load testing on your development machines using Firebug, YSlow, and other tools is important, nothing beats getting real world “perceived” page load times from your real visitors, along with other useful metrics.
The software works by adding some javascript to the page(s) that you’d like to benchmark and then deploying some php or other code that will save the incoming results into a database. The website below offers example code:
Rather than asking your visitor to provide their operating system and browser information by asking them to go through various Help -> About menus on their computer, send them to www.supportdetails.com.
This simple, free service will display all of their pertinent information and provide a handy form that they can use to email it to you. Tracking down problems that might or might not be related to browser compatibility is tricky enough, this makes the “OK, what browser are you using?” step much simpler.
Thank you to Imulus Design+Interactive for supplying this service.
This works on most Android 1.6 or greater version phones, like the Motorola Droid and the Nexus One.
Long-pressing on the microphone button next to the home screen search box widget or on the hardware itself to bring up the Voice Search window. Any word or phrase spoken will open a google search page for those terms.
You can also speak certain keywords or shortcuts into this prompt to make the phone take certain actions.
List of Android voice shortcuts:
- Call <contact name> (+ <home|mobile|work>): Dial this contact. If the contact has multiple phone numbers, and you don’t specify which number to dial (i.e. “call Dad work”), you will receive an on-screen prompt to select which number.
- Dial <phone number>: Dial your selected number: “Dial 3-1-0-5-5-5-1-2-1-2″. I’ve found that you have to speak the number fairly quickly before the voice prompt times out and starts dialing.
- Find <location>: Open a map a Google Maps displaying pins with the location(s).
- Specific business name: “Find Staples”, “Find McDonalds”,
- Type of business: “Find gas station”, “Find grocery store”, “Find yogurt”,
- Specific location name: “Find Disneyland”, “Find
- Type of location: “Find dog parks”
- Map of <location>: See Find, above.
- Directions to < location>: Open Google Maps providing driving, mass transit, biking or walking directions to your selected place from your current location. You can use the same types of locations as with Find, above.
- Navigate to <location>: Start Google Navigate with <location> set as the end point. You can use the same types of locations as with Find, above. General requests like “Navigate to gas station” will produce an on-screen prompt to select which local gas station.
- Open <application name>: Open the desired application: “Open calendar”, “Open Facebook”, “Open Battery Info”. I’ve seen this shortcut mentioned in forums, but have not been able to get it to work.
- Post buzz <message>: Generate a Google Buzz posting of your phrase. Posting will be geolocated with your current position. More info.
* Note that other installed Android Marketplace applications can also set custom voice shortcuts.
* Please leave a comment below if you discover any additional voice shortcuts for any Android application.
Tips:
- Speak normally and be articulate. No mumbling!
- Use conversational volume and speed; no need to raise your voice or to speak verrrryyy slowwwlllyyy — your phone will feel like it’s being patronized.
- Use in a noisy environment will give you random results.
- When Froyo (Android 2.2) is released, it should be possible to trigger the Voice Search window by briefly holding down the button on your bluetooth headset.
Bonus tip: The voice-to-text functionality in Android 2.1+ is actually quite amazing. If your phone supports this feature, you will have a small microphone button next to the spacebar on the soft keyword. Press this button and speak phrases into the prompt to quickly send text messages or short emails.
blockOptions.cgi, afterworkOptions.cgi and others are requests from visitors who have tried to access your website from behind WebSense content filters and were likely blocked (or only allowed to see your website during certain sanctioned hours.) I discovered this after seeing these types of requests in my own referrer reports for guyzero.com.
If you see these types of accesses, you can possibly check for other accesses that occurred at the same time to discover which IP address or domain was trying to access your website.
Its not clear what factors can cause a website to be blocked. They might have some hand-created blacklist and there is likely also some automation — perhaps having certain words or phrases contained on any of your pages will get your entire site blocked. A site might be blocked because another website at the same IP (most webservers host multiple sites) had content that tripped the filter. Websense also mentions some kind of mysterious “reputation” criteria in their documentation.
I believe, but am not certain, that blockOptions.cgi referred requests are from the IT administrator at the company that is running a Websense filter, probably checking up on your content to see what their employees are trying to browse during work hours.
Its also not clear what you can do as a webmaster to have your site unblocked. A quick perusal of the Websense company website did not provide an easy link to appeal my suspected block. There is a way to navigate to open a Service Request, which I suspect is the right venue, but you are required to do the standard website registration rigmarole in order to start the request, so I lost interest and gave up. Besides, it feels kind of cool to be on a list of banned websites somewhere, especially given all my dirty Android tips and subversive web developer links.
I don’t specify a license for the content that I publish here at guyzero.com other than asserting copyright. Someday I’ll get around to specifying some form of CC-SA (Creative Commons – Share Alike), which would allow folks to be able to easily use my content. Maybe I’m just waiting to have some content that is actually worth using!
Anyhow, I noticed some additional traffic to one of my screenshot images. The owner of an Italian website must’ve found my image using some form of image search (the name of the image was the topic of his own content.) He could’ve simply downloaded the image and placed it on his site and I probably would’ve never known, and in this case, since the image was a program’s screenshot, I would not have cared. But instead, he linked to the image on my webserver, so that whenever a visitor loads his page, the image is pulled from me, utilizing my bandwidth each time.
Spotting a hijacker
Resource hijacking, where a website links to your image, movie or javascript file, will not be displayed in Google Analytics or most other common web metrics programs as they require the HTML or PHP page that contains both the call to the resource and the call to the metrics program to be read.
One way to spot this activity is to parse the raw logs that your web server generates for every access. These logs include the hits to every page, every image, every file on the file system, so requests for resources that have been hijacked will appear here. This is how we did web metrics in the old days (i.e. 2004) and there is useful software that can parse these logs and generate nice reports for you. Check “Top Image” or “Top Resource” reports to see if any item is getting out-of-the-ordinary usage, and if you spot something, check your “Top Referrers” reports which may identify the hijacker. Please comment if you want an article about setup and use of log based web metrics software.
Another way to spot this activity is to use Yahoo Site Explorer or Google Web Master Tools, which can sometimes identify when an external site has linked to a resource within your site and may provide the added benefit of identifying the site that is hijacking your image.
Possible responses
So now that you’ve identified that somebody is linking to your work on the site, what do you do? Well, you’ve got options:
- Contact the website that is linking your resource and ask them to comply with your license. You may want them to simply stop linking to your work, or you may want to give them permission to continue to link to your work as long as they also provide a visible link back to your website or some other attribution.
- Rename the image to another name, and fix your content to point to the new image. This has the effect of displaying a broken image box on the hijacker’s page. You will continue to get requests to your webserver for the missing image.
- Rename the image to another name and substitute a new image for the old one. With a bit of imagination, this can have hilarious results.
For both of the last two options, you should consider adding “Disallow: /path/to-your/image.jpg ” to your robots.txt file. This will force well-behaved search engines to forget about your old image.
In this case, I choose the last option as I wanted to see how long the replaced image might continue to live on the hijacker’s website. Rather than replace the old image with an image of b00bies, or a message to not hijack my images, which was my first instinct, I instead placed a highly visible watermark across the image, giving my little low-traffic blog some free advertising to Italian computer enthusiasts. Buongiorno my friends!
I believe that it is possible to automatically show a “Do Not Hijack My Images” image in place of any single resource on your website by adjusting your website configuration to look for visitors with initial accesses to an image rather than a page. This issue has not yet become painful enough for me to look into how to do this, but if you can point me in the right direction, please share in the comments below.
Surprise! If you are using either Zune or Pandora, you might be surprised at the extra information you are sharing 0n the internet.
For example, the account that you create to use Microsoft Zune by default displays your name, your location, your bio, the names of your friends, any comments left for you or by you, and your recent music played to everyone. If you have an XBox Live account, Zune Social will import all of your XBox friends. Imagine your prospective employer googling your name to find out you have a friend named “PooBurgler.” That said, you may want to share all of this information – I personally don’t mind sharing it with the world – but you may also want to set this to Friends Only. To get to your profile, click on your name in the upper right corner of your Zune window, then select “zune.net Profile”. You can probably also login at social.zune.net.
Pandora by default will allow your Facebook friends to be able to see (and listen to) your playlist titles. Again, maybe not a big deal, but I was surprised to be able to see this information and even more surprised to find out that one of my dear friends has a Vanilla Ice station. You can disable the sharing of your information by clicking here and then Disconnect from Facebook. If the prior link does not work, click on Account on the Pandora page, then click Sharing, and finally Disconnect from Facebook.
iTunes does not yet have any privacy issues that I’m aware of, but the much anticipated social media functions iTunes are coming soon.
I find that taking photos with my Android phone to immediately upload into Facebook to be a great convenience.
It’s easy! Take your photo with the Camera app, select your new photo by tapping it’s icon in the upper right corner while still in the Camera, or selecting your photo in the Gallery, and then tap Share. From there, you can share the photo via Facebook, Email, Twitter, etc.
Unfortunately, sometimes the uploaded photos are rotated incorrectly when sharing with Facebook, usually portrait photos are rotated to landscape mode. The work-around for this problem is to first select to Crop your photo in the Gallery.
You can resize the crop box back to the original size of the image, effectively not losing any image information, and then click Save. A duplicate of your original image will be created that you can now upload to Facebook – it will appear with the correct rotation.
While Joomla 1.5 in general supports many good SEO features, most templates will only display the name of the site in the <title> tag on the homepage, and will use article names as the page title everywhere else. This can produce undesired results when displaying your site’s links on a google search page, for example.
Ercan Özkaya provides a free Joomla 1.5 plugin that will allow you to insert a customized site name into the <title> tag for all of your pages. It works great and solves the problem with ease.
Before: Contact Us
After: guyzero.com | Contact Us or guyzero.com’s blog | Contact Us
Get the most out of your cellphone battery life with these helpful power saving tips and apps, and these suggestions for better charging habits and equipment.
Check your current Android power use
- Settings -> About phone ->Battery use
Optimize your display
The biggest power consumer for your Droid phone is the beautiful 480×854 pixel screen. It typically consumes 1/3rd of my total battery between charges.
- Dial down your display brightness (Settings ->Sounds & display -> Brightness) and experiment with enabling the Automatic brightness option to see if will reduce your display’s power use. I have found that Automatic brightness makes my screen too dim in a lit room, but your mileage my vary.
- Adjust your screen timeout, which is the delay before the screen automatically shuts off after the last phone use. In the menu found at Settings -> Sounds & display -> Screen timeout, set the timeout to either 30 seconds or 1 minute.
Disable WiFi until you need it
Leaving wifi enabled when you are away from the home or office where you might be connecting to it is a constant drain on your battery as Android will be constantly powering up the wifi antennae to check for available wifi networks.
- You can access the WiFi settings to disable it under Settings -> Wiresless & networks -> WiFi)
- You can create a button to give you one-touch enable and disable of WiFi (and GPS, Bluetooth) on your Android desktop with the Power Control widget. Long-press on the desktop to bring up the widget selector.
-
If the Power Control widget is too large, you can download a one-button WiFi widget from the Android Market. One such widget is WiFi OnOff. Once downloaded, you can place that widget by long-pressing on your desktop, and selecting WiFi OnOff from the widget selector.
3G is fast, so I almost never enable wifi on the phone unless I’m home and planning on some extensive internet use with my phone or when I’m somewhere that has limited or no 3G connectivity.
Adopt new charging habits
Acquire charging equipment (see below) to make it easier to charge at your desk and on the go.
Charge your phone at your work and home computers. Get two micro-USB cables and leave them plugged into your computers so that you can simply plug your phone in if you know that you are going to be at your desk for awhile. The cables are cheap, so get a spare micro-USB cable for your bag – it will let you charge your phone from any device with a USB port: any computer, a Playstation 3, some newer TV’s, and many other electronic devices.
Li-Ion batteries do not suffer from the “memory effect” where a battery may hold less charge over time or after being over-charged, so it is OK to leave your phone plugged in, even after fully charged, though it does waste electricity.
These cost much less than buying from the Verizon store:
Kill background processes
A cool feature that sets Android apart from the iPhone is better multitasking – the ability to run several processes/programs at once in the background. Nearly every app that is started on an Android phone continues to run in the background after you’ve navigated away from it. Android apps will continue to download Facebook and Twitter updates, or check for new e-mail, or update your position on the map in realtime – and apps that are already running are display instantly when selected.
The Android operating system manages those apps that are running in the background, and will shut down apps that are no longer needed or to automatically free up memory. The problem is that it doesn’t automatically shut down background apps simply because they are consuming too much power or resources.
The solution is to install and use an Android task manager that can also kill running applications. I recommend Advanced Task Killer (free).
You can either search for it on the Marketplace or use Barcode scanner on this barcode:
Launching the Advanced Task Killer gives you a screen like this:
Tapping Kill selected apps will force those apps to stop running and free up the memory and resources that they were using. Most apps are selected by default, but you can de-select an app from being killed by unticking the box next to it. I will generally de-select Messaging and E-Mail from being killed, though E-Mail should be killed it least once per day to free up memory.
Advanced Task Killer sets itself to Auto Start – start automatically when the phone is started – and to Show Notification – display an icon in the notification bar. I choose to disable both of these default settings as I don’t need ATK itself running in the background and consuming memory, resources and power, and I don’t access it enough (see below) to want an ATK icon in my notification bar.
I usually only launch ATK and kill all of my background apps when:
- I’ve just spent several minutes using my phone and starting several apps that I am no longer using, especially GPS-enabled or auto-updating apps like Facebook. Those types of apps consume the most power over time.
- The phone seems to be running slower or lagging when starting apps or switching screens. Killing all running apps will make the phone much more responsive.
- I’ve received the “15% Battery Left” alert. Killing all running apps when seeing the alert usually gives me approx 4 hours of additional, reasonably heavy, usage before having to recharge.
As a pretty heavy Android user, I typically only need to launch ATK maybe once or twice per day. It makes a huge difference in both the battery life and the responsiveness of my Android phone.
Summary
Simply by disabling WiFi and killing running background processes when the phone seems to be operating slowly, I’m able to get at least 19 hours of heavy usage off of a full charge. I’m able to easily keep my charge topped-off by plugging in when I know that I’m going to be at my desk for an hour or two. Keep an occasional eye on your Battery use screen under the About Phone menu in Settings to identify any power hungry apps you may have installed.
Please share any other power use or charging tips in the comments section!
You can enable the tagging of your current location into the metadata of the photos you take using the default Android Camera application. Having this information stored inside your photos will let you be able to recall the location into an Android map or displayed in your Browser as a googlemap.
To enable GPS-tagging your images: access the Settings menu in the Camera application by either swiping from edge or click the hardware Menu button, followed by Settings, and then click the toggle to enable Store Location.

This feature will remain enabled until you turn it off. Each time you start the Camera app, the phone’s GPS will enable and locate your current position to store within the metadata of the pictures you take.
View the location information of your photos
In Gallery, long-press on a photo’s thumbnail in the icon view and select Show on Maps. If you are viewing the photo full screen, you can click the hardware Menu button, followed by More and then Show on Maps. Show on Maps will be greyed out and unselectable for photos that do not contain location information.
You can then choose to open your Browser with the location in http://maps.google.com or to display the location in the Android Map app or in another location-aware app. I recommend choosing the Android Map app as it allows you to apply layers (satellite, traffic), and get directions / navigate to that location.
Share photos with location information
From within Gallery, selecting to Share a photo provides several options:
Picasa
Photos with geolocation data uploaded to Google’s Picasa web service (which is Google’s competition to Flickr) will display with a googlemap of the location.
Flickr
The best way to upload to Flickr from an Android phone is to enable your Flickr mobile upload email address. Share via E-mail from within Gallery and enter the email address provided by Flickr. You can add a name, description, and tags associated with this image by following the instructions. You can adjust the privacy settings of each image by following these instructions.
You can access your online photostream from your phone and use other Flickr features, including the ability to see pictures that have been taken near your current location, by visiting m.flickr.com.
I tested several of the free Flickr apps, and none seem to support preserving your photo’s geolocation information when uploading to Flickr. I’m hopeful that the upgraded Gallery app in the upcoming Android 2.1 software release will add this functionality.
Email, Messaging, Facebook
Geolocation information is preserved in photos that you share via email and messaging too!
Unfortunately, Facebook doesn’t support the display of geolocation information in photos in their standard photo applications.
Privacy Concerns
Please keep in mind that photos you share with geolocation information will reveal the locations in which you took those photos, including possibly your home or workplace. Consider whether the photos you are sharing are going to be publicly viewable and think about whether you want that type of personal information about you available to anyone on the internet.
Resources
- General introduction to GPS photo tagging
- EXIF (photo metadata) information from Wikipedia
- Website that diplays JPG photo EXIF data (including geolocation)
- Firefox Plugin that allows viewing of EXIF data (including geolocation)
- GalleryMap is an Android app that allows you to view all of your geotagged images within the Android map applet at the same time.

QR barcode to GalleryMap app








