January 20, 2018

Review of the Monkey Mirror – A helmet mounted bicycling mirror

I’ve just discovered a great new mirror for cycling. It’s called the Monkey Mirror. It is a helmet mounted mirror–nothing new about that–but with a couple notable improvements over what you may be familiar with. The Moneky Mirror is handcrafted in the United States and that’s a big plus in my book. You could spend the same amount of money on an imported product and you’d be getting something of dubious quality and probably made of some sort of plastic. The quality of of the, Made in the USA, Monkey Mirror is top-notch: It has a hand-polished mirror that is larger than other helmet mounted mirrors that I’ve seen. The mirror is locked into final position by a small nut. The mirror is ingeniously attached to the helmet by an actual bicycle spoke It’s more sturdy than the plastic mirrors, is easily adjusted and has no parts that could snap or break off. The Money Mirror does not attach to your helmet using a conventional sticky-tape backed, plastic mounting plate. Instead it uses good ol’ friction provided by a spring-like metal rod which is actually a wheel spoke. Pretty cool. The implications of this are that you can easily remove the mirror from a helmet and switch it over to a different helmet. The mirror is a bit larger than the other helmet mirrors I’ve seen. Once you get it adjusted just right, it is out of your direct line of sight but right there when you need to check behind you for traffic. It’s decidedly better than the other plastic helmet mounted mirrors I’ve owned and since it’s mounted on your helmet, it is virtually vibration free. You can order these directly from the manufacturers website http://www.monkeymirrors.com. They come with a one-year warranty and you can even customize the graphic on the backside of the mirror with something of your own design. This would be great for bike clubs who want to brand their equipment. Love this mirror.

YouTube terminated my account.

I was having a fantastic day yesterday (Feb 4, 2012.) I had just uploaded a video review of a newly acquired Skytex Skypad Alpha2 7-inch Android Tablet to my YouTube channel–cnymike–and shortly after that I responded to several questions and comments that subscribers to my channel had published. Just another normal day for me, doing what I love to do and enjoying the social apsects of my YouTube channel as well as enjoying being a “Partner” with YouTube.

A few of my reviews had tens-of-thousands of views with spirited comments, lots of “thumbs up” counts and overall good feedback. I have to disclose that I am also an avid Top-25 product reviewer on Amazon, having reviewed over 302 products with an overall helpful rating of 95%.

I take my product reviewing very seriously. I am balanced in my reviews, pragmatic and sensible. I would never knowingly post a product review, or any video for that matter that was in poor taste or anything of objectionable content including nudity, profanity, slanderous statements or anything generally considered to be offensive or in poor taste.

So then, it was with great shock that I received an email with the subject “YouTube Video Notification.” It came in Saturday, February 4, 2012 at precisely 9:31 PM. I had not noticed the email sitting in my inbox at first because I was distracted by the fact that I could not get new mail from my Gmail account. Outlook kept popping up a dialog box saying that my login information was incorrect and it could not retrieve my email from Gmail. This was odd because I had been checking my email all day long with no issues and to my knowledge, I had done nothing that would have affected my login credentials. It was then that I realized something had gone terribly wrong. When I attempted to login to my YouTube account, I was confronted with a disturbing message that said…

Unable to access a Google product
If you’ve been redirected to this page from a particular product, it means that your access to this product has been suspended. Read on for more information.
Your access to this Google product has been suspended because of a perceived violation of either the Google Terms of Service or product-specific Terms of Service. For specific product guidelines, please visit the homepage of each Google product you’re interested in for a link to its Terms of Service.

Google reserves the right to:

Disable an account for investigation.
Suspend a Google Account user from accessing a particular product or the entire Google Accounts system, if the Terms of Service or product-specific policies are violated.
Terminate an account at any time, for any reason, with or without notice.

I was in shock. What had I done? How could this happen? I had no advance notice, no warning, no nothing. All of a sudden an innocent review I had done was flagged as inappropriate. It was, “Review of ICON Rogue 1 LED Flashlight” and it was flagged as being inappropriate and in violation of Community Guidelines. No specific reason was given however. And I can’t think of any reason it could be in violation of anything.

The email from YouTube continued to say that my account has received one Community Guidelines warning strikes, which will expire in six months. It went on to say that Additional violations may result in the temporary disabling of my ability to post content to YouTube and/or the permanent termination of my account.

What is most baffling is the apparent, immediate termination of my YouTube account. There was no other video that was flagged as far as I know, nor was there any reason for any of my videos to be flagged. And no explanation from YouTube to help me gain an insight how they could come down on me with such forcefulness for something I wasn’t even given the opportunity to know about or be able to correct.

BAM! Account Terminated. End of Story!

It’s like having a best friend, someone you just spent the afternoon with having a good time, grabbing a cup of coffee, talking. Then in the evening when you try to call your friend, the phone of your friend has been disconnected and a recording says, “Your friend no longer likes you and you have been permanently banned from ever calling him again.” No warning, no idea of what you said or did to deserve being treated like you did something incredibly inexcusable, malicious or malevolent.

Of course, I immediately began Googling for more information on this account termination and found other people discussing it. In particular I found this video blog post at “Marketing Online Today” website. The tale being told there was eerily similar to mine.

Checking Twitter yielded more tweets of people discovering an ever growing number of YouTube channels being terminated.

My recourse is limited. I did follow a couple links on YouTube that eventually got me to the Partner Network page where an online form was available to contest the decision to terminate my account, but I’ve gotten no response from that yet. Sadly there do not seem to be many more options available to me.

When I realize that several years of dedicated hard work, creativity and artful posting of videos including many nature videos have instantly disappeared from YouTube due to the termination of my account, it saddens me greatly.

The only thing I can think of as a possibility to explain this is that perhaps my account got hacked. If this actually happened, then maybe the perpetrator altered my video review in some way. That is about the only scenario I can think of that would result in a video of mine being flagged as inappropriate in some way. Otherwise, I know what the video was that I uploaded to YouTube and it was an innocent, straightforward review of an LED flashlight. It’s almost laughable to think that the review could be flagged for anything at all. It had been up on YouTube for well over a year and had already been viewed thousands of times… no complaints from anyone. How is it possible that all of a sudden my flashlight video review is against Community Guidelines?

It was suggested to me that Amazon Affiliate links in a video description are grounds for one-time, immediate termination of accounts. I did use Amazon Affiliate links in some of my video reviews. I did review guidelines and under spam, did not find a clear reference to affiliate links being barred. If it was the Affiliate links that caused my account to be terminated I think I should have at least had an opportunity to remove them–something that I would have done immediately.

YouTube, we were partners. I agreed to abide by your rules when I signed up and I did to be the best of my knowledge. You know, a partnership demands respect from each participant. I don’t feel the respect I gave you was reciprocated. You accused me of something unilaterally and gave me no opportunity to defend myself or simply remove the material that you deemed in violation of your guidelines. That’s no partnership.

I would do whatever it takes to get my channel back. My subscribers have been cutoff. You have severed an important social link that I had with all the people that respected my viewpoints, appreciated the time and effort I put into my reviews and engaged in conversation about my reviews by asking further questions or expressing their gratitude.

I’m disappointed more than these words can possibly convey.

Don’t you at least owe me an explanation and a chance for redemption?

UPDATE: Feb. 6, 2012 – I’ve made 6 attempts to reach someone at Google/YouTube. I used their online form for YouTube Partners and also used a link that alerts them that I am requesting a review of their decision. Complete silence on the other end.

Code of Conduct


“Don’t be evil.” Googlers generally apply those words to how we serve our users. But “Don’t be evil” is much more than that. Yes, it’s about providing our users unbiased access to information, focusing on their needs and giving them the best products and services that we can. But it’s also about doing the right thing more generally — following the law, acting honorably and treating each other with respect.

UPDATE: I do have an update to this issue:

Review of SkyTex Skypad Alpha2 7″ Android Tablet

Skypad Alpha2 Available on Amazon: http://amzn.to/xmNtaY

I recently purchased this Skytex Skypad Alpha2 as sort of an experiment. I’ve got an iPhone but have always wanted to explore Android OS so I decided to take the plunge and get an Android tablet as well just to learn more about Android and have an alternative to Apple in my hands.

So far, I’ve been reasonably happy with this tablet. The construction of the tablet is solid. It does not feel like a toy at all. I’ve picked up some small tablets that just feel like plastic…not this one. It has an aluminum body.

The placement of the front-facing camera is odd since I usually expect a front-facing camera to be at the top of the device. But I also expect the home buttons to be at the bottom of the device, so I’m not quite sure what constitutes “top” or “left” on this tablet because the camera is at the bottom right of the screen if you have the tablet oriented so that the home button as at the bottom. In this case, the volume rocker and on/off button are on one side of the tablet while the adjacent edge of the tablet has the mono speaker, microSD slot, DC power in, USB, HDMI and headphone jack. The layout of ports, buttons and camera are not in optimal positions but they work where they are, it just seems a little odd and when holding the tablet I am always accidentally hitting the power button.

The tablet starts up briskly and the responsiveness of the screen was actually better than I was expecting. I have not yet noticed-with my limited use so far- any sluggishness whatsoever. Screen sliding is smooth and quick. I have watched several YouTube videos and they were glitch-free. Not the same experience with Netflix however. I experienced really bad pixelation and gradient issues with Netflix as well as some seriously bad sound syncing issues.

The tablet easily and quickly connected to my home network and surfing was very snappy. It seemed on par with my MacBook Pro quite honestly.

I’ve installed a handful of apps so far:YouTube, Kindle, eBay, Google+, Wired, Twitter and so far everything has gone smoothly. The touchscreen is responsive. Sometimes the screen doesn’t reorient when I flip the orientation of the tablet, but that may be due to the fact that some apps don’t change orientation and I’m not exactly sure how to figure out whether it should reorient all the time or not. Yet, sometimes when it is supposed to reorient, it does not.

The camera resolution is dismal but at least there is a camera. Don’t expect much from it though as it’s only 0.3 megapixels.

Obviously, with a tiny, mono speaker, sound quality is not spectacular nor very loud. I’d call the speaker barely adequate. Of course, headphones are going to give you a tremendously better listening experience.

The microphone quality was a big disappointment. Everything I recorded sounded kind of muffled and scratchy. This would not make a very good lecture recording device, for instance.

I do wish this had bluetooth, but I guess you can’t expect everything at the price point. I do miss not having bluetooth built in though.

I can’t say too much more at this point since I’ve not had the tablet very long. Buy my initial impressions are moderately positive and I eagerly await the release of the next version of Android which I will install on the Skypad as soon as I get it and will report back here with my impressions.

This seems to be a great value in a sub-$200 Android tablet worthy of your consideration.

Book Review – CMS Made Simple Development Cookbook by Samuel Goldstein

PACKT Publishing recently released the book, CMS Made Simple Development Cookbook by Samuel Goldstein. The author states that the book “gets you started building feature-rich sites quickly, regardless of your experience level.” I might add that as long as your experience level isn’t that of beginner and as long as you a good familiarity with PHP, SQL and HTML the book may prove to be helpful. Beginners will be frustrated and therefore I would not recommend this book to them. Likewise, if you are a designer as opposed to a developer, this book is not for you because it is dealing with coding, not design, per se.

“Cookbook” style books generally provide targeted examples of features or methods you can add to extend the capabilities of an existing “thing” in this case the CMS, CMS Made Simple. By using recipes (code snippets) provided by the author, you are presumably able to add tags, user-defined tags and extensions to your installation of CMS Made Simple to give you functionality not present in the default installation. In my opinion, a recipe should  be able to stand on it’s own with minimal customization to be truly valuable. If you cannot simply paste in the code of a recipe to achieve immediate additional functionality, then the value of that recipe and in fact the entire book, is diminished. Thankfully you are able to obtain the code examples from the packtpub.com website after you register your book.

The books’ 10 chapters takes a good look at the various ways that CMS Made Simple allows a user to add capabilities. In Chapter 1, the author describes the differences between tags, user-defined tags and modules and in what circumstances you would choose one over the other.

Chapter 2 introduces the reader to Smarty, the templating engine that powers CMS Made Simple and various recipes are introduced to show you how to use Smarty variables to alter colors, do math in your stylesheet to enable you to change the layout of your site while retaining proportions and more. For instance you are shown how to embed JavaScript in your template (something that is generally discouraged) in a way that prevents Smarty from generating errors.

Chapter 3 dives into Tags and User-Defined Tags. Some of the recipes here show you how to add the ability to display a User’s IP address for a user-defined tag, display a stock price from Yahoo, or how to add a Registered Trademark symbol to a name automatically.

Chapter 4 is where you will learn about Modules. The file structure of a module is discussed then tips on how to create a framework for a new module are presented.  There is also discussion about a tie-in with Smarty that enables you to make the output of your module as flexible as the rest of the CMS system.

When you create a module that is intended to manage data, you will need to make decisions about how best to handle that in the database. If a module is deleted, do you want the corresponding data and tables in the database to be deleted? These and other  Database API questions are looked at in Chapters 5, 6 and 7.

Chapter 8 deals with Admin Panels and provides recipes that enable you to create an admin panel for a module, deal with permissions for the module’s administration, and much more.

Chapter 9 looks at handling and using Events. For instance,  if a user is searching for keywords on your site, you might want to know not only what keywords they searched for, but  how many results they got. A recipe for attaching a User-Defined Tag to an event is shown to accomplish something like that.

Chapter 10 presents tricks to help with additional module-related features and touches on some tSearch Engine Optimization tricks.

This is not easy stuff if you are not a developer or programmer. But assuming you have the skill set needed, the chapters provide a consistent and  good flow in the way that the material is presented. Although the book is written in a direct, no-nonesense style some of the recipies are not going to be too helpful to many people. The demonstration of building the recipes and discussion of the concepts involved should give the competent programmer all that he or she would need to get pointed in the right direction and should prove to be valuable.

CMS Made Simple Development Cookbook can be purchased from Amazon as well as from Packt Publishing.

Book review coming… CMS Made Simple Development Cookbook by Samuel Goldstein. Packt Publishing.

I have just placed an order for the book CMS Made Simple Development Cookbook by Samuel Goldstein and published by Packt Publishing. I’ll be reviewing it here once I’ve had a chance to work through it. Check back to read the complete review. In the meantime the book can be purchased from Amazon as well as directly from Packt Publishing.

How to combine PDF files in Preview under Snow Leopard

A handy feature of Preview is the ability to open two PDF files and combine them into a single PDF. The method used to accomplish this is different in Snow Leopard than it was in Leopard.

Here is the method to use in Snow Leopard

  1. Open each of the individual PDF files. This will result in two or more Preview windows being open, each of which containing a PDF file.
  2. Choose which PDF file will be the target file; the one in which all the other PDF files will be added to. PLEASE NOTE: if the PDF target file is actually a JPG image that has been opened in Preview, then you will need to convert the JPG into a PDF first or the combining operation will not be successful. To convert the JPG to a PDF, save it and be sure to choose “PDF” from the “Format” drop-down menu.
  3. Ensure that you have opened the sidebar for each PDF window and that the sidebar is in Thumbnail view.
  4. Drag the thumbnail of each PDF on top of the thumbnail in the target PDF (the one in which you are combining the PDF’s to.) NOTE: You cannot drag the thumbnail below the thumbnail in the target PDF or the files will not be combined, they will merely be two documents opened in the same window, but when you save the file, they will not be combined but instead will revert to their individual file state.
  5. Once you have dragged all the PDF’s to the target PDF window, you can easily rearrange the order simply by clicking and dragging each thumbnail to the order you want.
  6. When the order is how you wish, save the PDF. Congratulations. You have just combined multiple PDF files into a single PDF file.

In Leopard, the technique is similar. Instead of dragging the thumbnails on top of the target PDF thumbnail, you merely drop it underneath the thumbnail in the target. Then save as in Snow Leopard.

Here is a brief screencast demonstrating this.

Can I interest you in 16MB of RAM for $257.00?

I had a reality check earlier today while I was looking through my Quicken registers. I came across some old transactions for RAM, Hard Drives and other assorted equipment that I had bought in years past. It was quite an eye-opening experience. What I paid 15 years ago for memory and storage space was absolutely outrageous by today’s standards. Try these on for size….

March 1996: 16MB RAM cost me $257.00
May 1997: 48MB RAM cost me $358.00
August 1999: 64MB RAM cost me $120.00
November 2004: 1 GB RAM cost me $220.99

On June 20, 2000 I purchased an 18GB Hitachi hard drive for $215.00. Just a few weeks ago I bought a 2TB external HD for $97.19.

I know that anyone who has been buying computer stuff for 15 years or more will have similar remembrances, but it’s not always something we think about unless we’re prompted by an old receipt or something.

Just thought I’d share my “expensive” purchases. I’m kind of glad I don’t have access to my Quicken receipts prior to 1996 because looking at prices earlier than that would be really upsetting. In 1982 I remember buying a 64K RAM module for my Timex-Sinclair ZX81 computer. I think it cost about $49.95… for 64K! The computer itself cost about $149 as I recall. Ah, the good ‘ol days. Let’s see, about the same time as the ZX81, I had a Texas Instruments Ti-99/4a and that was followed closely by a Commodore Vic20 and then a Commodore 64. Then about 1989 I bought my first Mac, an SE/30.

Do you have any fond memories?

YouTube URL hack lets you access a precise point of a video

I just learned of a neat little hack with YouTube URL’s that enables you to begin viewing a video at a specific timeframe of the video.

Let’s say that you have a video you’d like to share with someone but you don’t want that person to have to watch the beginning of the video. Using this hack you can specify an exact timeframe simply by adding this to the end of the URL. Begin with a hashtag and a “t”, “#t”, then add an equal sign “=” then the number of minutes into the video you want to begin followed by an “m” then the number of seconds followed by an “s” so, “1m36s.” Put it all together and you get:


So if the YouTube URL were http://www.youtube.com/watch?v=dQw4w9WgXcQ but you wanted the viewer to join the video a 1 minute and 36 seconds in you would append the URL so that it looks like this http://www.youtube.com/watch?v=6_b7RDuLwcI#t=1m36s

Happy rickrolling.

CablesToGo USB 2.0 to IDE or SATA Drive Adapter

cablestogo usb ide sata drive adapter>The Cables To Go 30504 USB 2.0 to IDE or Serial ATA Drive Adapter (Black)Electronics Cable Adapters) is a new tool in my arsenal and it’s made a huge difference in productivity when needing to work with bare drives or do diagnostics/maintenance on hard drives.

Not having to install a hard drive into an enclosure before being able to access the drive is a very convenient thing to be able to do. Previously I would have to use a Firewire/USB/USB 2.0 enclosure that I purchased from OWC in order to access a drive. But now all I have to do is hook up two cables to the drive (a power cable and the actual IDE or SATA output cable) and then hook the USB to my computer. When I’m done, I just unhook everything. It is just that easy.

You really can’t go wrong with this kit from CablesToGo and the price is right.

The CablesToGo kit is available from Amazon.

Automatically update the copyright year in your footer

If you work on many websites it doesn’t take long before you realize how many of them have out of date copyright dates in the footer. Back in the good old days when sites were hand-coded and php was seldom used, copyright dates were hard-coded along with just about everything else.

It’s so easy to fix that problem and I”m going to show you how simple it is. You don’t need to know anything about php either. All you have to do is drop this little piece of php code into your footer and it will take care of the annual updating of the year for you. No more batch search and replace operations to replace 82 pages of out of date copyright years. Yay!

So let’s say your current footer looks something like this…

<p id="footer">copyright © 1998 by My Big Old Company, Inc</p>

To put that copyright year on auto-pilot, simply drop this bit of code in there and sit back and relax.

<p id="footer">copyright © <?php echo date('Y'); ?> by My Big Old Company Inc</p>

If your copyright is a range of years, like 2001-2011, just add the snippet after the dash of the first year like this…

<p id="footer">copyright © 2001-<?php echo date('Y'); ?> by My Big Old Company, Inc</p>

I don’t know much about PHP but I do know how to add that little bit of code and it takes away a big nuisance that used to occur every year. You can learn more about PHP and the date function by visiting PHP.net