Apple's Bungled Battery Feature

Ever since iOS11 came out I had experienced a significant performance issue on my iPhone 6S. Animations and transitions were slow, app loading was noticeably and unbearably slower than iOS10 and my battery was draining faster. Many rumours swirled that others were experiencing this but not all. I did a settings reset which seemed to help a bit but it didn’t feel right and the battery kept draining. Even after point releases which improved responsiveness a bit my iOS10 like performance had not returned.

Then several weeks ago a Reddit conversation started spreading online that presented possible evidence Apple was reducing the performance of their iOS and possibly laptops when the battery life was sufficiently degraded. That day I decided to test the theory by getting my battery replaced at the Apple Store. After all my phone was almost two years old and surely the battery’s charge capacity was severely depleted as I’m a heavy user and I could determine if this rumour was true.

I explained the situation when meeting an Apple Genius and provided the Reddit theory. Her expression indicated that she has heard some wild theories before and although this was new it wasn’t truthful. She politely assured me that the OS isn’t designed to do such things but suggested we run a diagnostic. 

Customers aren’t able to run performance or battery diagnostics on their own phone without third party tools and even then they get limited information compared to Apple. Her results showed something very interesting. My phone was depleting the battery two to three times per day in some cases. After I confirmed with her that I was not using it that heavily and the battery setting statistics also didn’t show an application using a large percentage of the battery she suggested a rogue system process that somehow persisted through upgrades and restarts.

She also let me know that my battery was at 83% health and that Apple won’t even do a replacement unless it’s below 80%.

So I went home and immediately did a local backup, wipe and restore.  And voila! Performance issues were gone. 

Fast forward to a few days ago and headlines decrying Apple for purposefully degrading performance on old phones are appearing after Apple confirms it reduces device performance in order to prolong the battery life when the battery is degraded.

From an engineering point of view, this is perhaps a noble feature. If a customer’s battery is sufficiently degraded you want to do your best to prolong its life and more importantly prevent random shutdowns. It’s also the typical way Apple implements their software. Find the best scenario and automate it. Don’t ask the user to intervene, just pick the most likely and perhaps best for the majority scenario. In this particular case, thinking I have an issue and watching customer blowback on their interpretation of this admission it’s obvious the feature could have been implemented much more elegantly.

If a battery is degrading Apple will show an error in the Battery setting panel. But that’s an area which is buried. Ideally the customer should see a more prominent message indicating an issue with their battery.

Accompanying the message of a faulty battery, the phone should state “Your iPhone will run at a reduced speed in order to prevent unexpected shutdowns”, which is the intent of the feature.

Furthermore, my experience at the Apple Store left me frustrated with the data I have access to on my phone and its battery’s performance. Why can’t I see the number of charge cycles and battery performance history? It would have immediately shown me that my battery was healthy but that something was using up far more power than it should. In addition, an automated benchmark of the system processes should be a warning that something is amiss with the OS. Apple as far as I can tell has no such method on iOS or MacOS to identify out of scope system behaviour that could signal bugs and a poor customer experience. 

The result of this feature being revealed by Apple after the rumour, the lack of clear diagnostic information on the phone regarding the battery and actual bugs causing degraded performance and accelerated battery drain all add up to a miss-managed “feature”. Apple will now have to contend with conspiracy theories when a new OS comes out and probably increased support calls because information about an iPhone battery isn’t easily accessible by customers. 

I hope Apple introduces battery diagnostic tools for the customer in the next release of iOS or sooner. It would have saved me grief and a poor iOS11 experience as well as given their geekier customers a way to calm fears of a battery conspiracy.

Update: Apple posted a message to their customers addressing these concerns. They have reduced the cost of out of warranty battery replacement and this:

"Early in 2018, we will issue an iOS software update with new features that give users more visibility into the health of their iPhone’s battery, so they can see for themselves if its condition is affecting performance."


The recent ransomware scare and destruction of property as a result of hurricanes has me revisiting the topics of updates and backups.

Hard drives more recently have switched from high speed spinning platters to non moving chips called solid state drives or SSDs. These devices are generally more rugged and less prone to failure than hard drives but all tech eventually fails. It's not a question of if but when. If you don't have at least one copy of your data you have none.

Some people may think they don't need a backup. I would ask them how they would feel if all their photos were instantly gone. Gone forever. Those one set of files alone would crush most parents if they went missing never mind documents that may be related to your business or daily life.

I saw this in a recent video Casey Neistat posted. His in-law's home was one of the many wrecked by hurricane Harvey in Houston. The only thing the family was salvaging were photos. Precious memories, carefully scavenged from the house and laid out on the driveway to dry. 

“Backup is insurance. It's peace of mind.”

The most traditional type of backup is an additional hard drive or SSD externally connected to your computer using backup software. I have a 2TB (terabyte) drive that I periodically connect to my MacBook and use Apple's Time Machine software. This is good to have as it's close and quick to restore if you have a data loss.

The trouble with this method is that I often go through periods where I don't plug it in so there are gaps. I've recently acquired a newer WiFi router that I can plug the drive into an be always on and backing up when I'm connected at home but there is the additional risk of fire, water damage or theft where I would lose both the computer and the backup drive. 

Enter backup services. 

The cloud is a eufamistic term to describe data services connected to the Internet. There are many cloud backup services to choose from. My personal favourite is Backblaze. They have been a consistently well performing and reliable service for me. I actually had a drive failure a few years ago and Backblaze was able to mail me a hard drive with all my files including all my photos. Once installed it constantly runs in the background and uploads files it detects have been changed. The initial upload can take up to several weeks if your Internet connection is slow but once up to date it is the easiest way to keep your files always backed up.

Finally there are cloud file storage systems such as Google Drive, Apple's iCloud, Microsoft's OneDrive, and Dropbox. All these services are another way to keep your files in the cloud synchronized between all your devices. I personally use iCloud Drive since I own a MacBook and an iPhone. In particular I've enabled iCloud Photo Library in Photos on my Mac and my iPhone. This keeps a copy of the photos securely with Apple as well as syncing them between both devices so I don't have to import photos off my iPhone into Photos on the Mac. It also means my entire photo library is accessible on my phone but not taking up all the space. When I want to look at an older photo I tap on the thumbnail and it downloads the full size version. It's great when friends are talking about past memories and you can instantly recall a photo from the event. 

Unlike Time Machine or BackBlaze these services sync any changes from your file system. So if you accidentally delete a file as opposed to having a hardware failure it may be gone permanently when the changes synchronize. Some programs like Photos keep a copy of deleted photos for a period of time to restore mistakes but I would definitely sign up for this as a secondary or tertiary service. The syncing alone is worth the price of admission.

Backup is insurance. It's peace of mind. In some cases it can also be an incredibly convenient feature. It may seem like an expenditure you don't need but I can assure you it's not a question of if you will lose data but when.

Apple Headphone Jack

Companies usually continue to add features to future iterations of a product rather than remove them. They are scared that removing a feature will always be seen as a detriment by the customer and thus result in lower sales. Apple on the other hand is often the first in their industry to make bold moves in removing outdated technologies from their products in order to improve the overall experience.

Boardrooms still have VGA cables as the standard way of connecting to their screens and PC manufacturers continue to provide VGA ports on laptops. It’s a standoff where IT managers and PC manufacturers refuse to improve the video standard despite HDMI (now dated) being on most laptops. Meanwhile Apple has been through two video port evolutions dropping VGA in favour of DVI for video quality and Display Port for thinness.

Apple removed the DVD from all but one of their laptops, again to make their products thinner and lighter. I’ve had a MacBook Air for almost six years and almost never needed a DVD drive.

For ten years the iPod, iPhones, and iPads used Apple’s 30 pin wide dock connector. Apple dropped that for the faster, symmetrical, and smaller lightning format.

The new Mac Book has dropped all ports with the exception of a single USB-C port for charging and data as well as, ironically, a headphone jack. Again, to make the laptop thinner and lighter.

Apple’s goal has always been to make a product line more streamlined and lighter. Every two years the iPhone’s core design is refreshed and it has always been thinner to push the goal of having less weight while maintaining battery life. So why remove the headphone jack?

First, it’s worth noting that the recent stories are based on rumour and speculation. But at some point Apple will push the iPhone to be lighter and that means thinner. So even if the iPhone 7 and 7S won’t remove the headphone jack it will happen at some point. So how big a deal is this?

I suspect based on anecdotal observations that more than 95% of Apple iPhone customers use the standard headphones that come with the phone. So right off the bat the vast majority of Apple customers are not inconvenienced since they get a new pair of headphones that work with the phone.

Second, as Forbes has pointed out, Apple will of course sell an adapter. Will Apple make a profit from it? Of course. Are they redesigning their flagship product so that they can squeeze an extra $10-$15 in profit from less than 5% of their customers. I highly doubt that the small bump in profit is the motivation for the product that derives over 60% of their revenue. 

Power users like myself constantly complain about iPhone battery life. Batteries degrade in performance over time and eventually they don’t hold a full days charge if you’re frequently using it. So we want Apple to make phones with more battery but it sacrifices their primary goal which is a major factor in the smart phone arms race. Weight. Apple will push as fast as possible to loose weight on their portable products so long as it doesn’t sacrifice minimum benchmarks they set for battery, performance and durability. 

What led me to write this post was a petition that is floating around for Apple to keep the headphone jack. Apple sold over 230 million iPhones last year. A petition of 200,000 people sounds impressive but is less than a tenth of a percent of annual sales and half of their two year typical upgrade cycle. The petition also argues that removing a headphone jack will create mountains of waste. The waste is created whether they change the headphone jack or not. Apple already has a recycling program where you can bring it back to them to recycle and in many cases they will give you a store credit. 

If you really want to vote for Apple to keep the headphone jack there is only one way to send that message. Don’t buy it. But I’m willing to bet that Apple knows their customers and eventually you’ll have a new iPhone. 





TekSavvy - Third Party ISP Issues

I've been a TekSavvy customer for over two years. I was tired of the slow connection and ridiculously low caps that Rogers had put on my connection. I wanted to cut the cable for TV and use Apple TV exclusively but I knew that 60GB in bandwidth wasn't going to cut it. TekSavvy offered a 300GB cap which was perfect.

TekSavvy is an ISP but they don't own the very local infrastructure which connects to my house, that's owned by Rogers for cable and Bell for telephone/DSL. Starting in 2002 the CRTC established policy for the administration of third party access to Canadian cable television systems for data services, referred to as third party Internet access (TPIA). Years later this would come into fruition. in 2012 I changed from a Rogers cable Internet connection to TekSavvy and in the process disconnected my Bell phone service and Rogers cable television service.

The transition was relatively painless but took a few weeks as I recall. Rogers wasn't procuring spots fast enough for TekSavvy and there was a waiting list for me to get on board and then some time for my house to be "ported" from Rogers to TekSavvy. 

For almost two years the service has worked without major incident and I noticed only the occasional outage. Then in November and December I noticed outages had become more frequent or at least I noticed them more as I had transitioned to working from home. These drop outs would generally only last a few minutes but were unacceptable as they interrupted service and caused resets in some of my persistent connections. I suspect it also caused significant packet loss as well.

I contacted TekSavvy technical support on December 23rd and started to describe the problem. After getting familiar with the modem diagnostic pages it was determined that my return path channels (frequencies for sending / uploading data) were dropping out. I wrote a shell script to ping Google's name servers at regular intervals and quickly determined that I was getting random disconnections for minutes at a time. The modem would lose all of the return path channels and the error log would fill up. The modem would re-tune and the channels would return only to have one or two of the three channels start to drop off. I disconnected all splitters to no avail. No amount of power cycling or resetting of the modem helped. Clearly an issue.

TekSavvy arranged to have a Rogers technician appointment scheduled. The technician arrived during one of our bitterly cold winter days and guessed that it was either a bad splice near the modem or a faulty filter at the box on my house. After removing the filter and replacing the cable all I could do was wait. But within 24 hours the problem showed itself again. 

Over the next three months I repeated the process of troubleshooting with TekSavvy and having them scheduling new appointments with new technicians from Rogers sub-contractors such as Wirecomm. We replaced the modem but experienced the same problem. Technicians repeatedly tried to take the easy way out and say that cables were not connected properly or not tight enough. The second technician said he believed the problem was not at my house but in the neighbourhood and he would escalate to Rogers maintenance but nothing came of that. In each case Rogers would send a message to TekSavvy saying the problem was fixed even though I had almost immediate proof from diagnostics and pings that it was not. This meant resubmitting diagnostic screenshots to TekSavvy and going around again in the circle. TekSavvy was running out of suggestions. At one point they suggested finding a neighbour who had a Rogers cable connection, placing my modem at their house and testing the connection. Not only a burden for my neighbour but difficult to diagnose due to the unpredictability of the disconnects.

I insisted to the fifth and rather reluctant technician that he check the connection at the distribution pole behind my house but he said the weather (truthfully a sub-zero blizzard) prevented him from doing so and dispatch would reschedule. Rogers dispatch never called and after another go-around with TekSavvy a sixth (again, always a different technician) showed up and it took some convincing for him to check the distribution pole.

It's worth noting here that Rogers on site technicians keep no ticket history, at least not for TekSavvy customers like myself. Each time I had to personally explain the issue and in many cases explain in detail how it can't possibly be my router if the modem is dropping return path channels randomly and how it must be a cable issue if we've tried a new modem. Technicians really try to do the bare minimum at the house and aren't willing to explore connections away from the house unless pushed to do so.

The sixth technician stated that because the distribution pole was in my neighbour's yard and they weren't home he couldn't go look at it and I had to get their permission first. He said he would have dispatch call me to reschedule for a Saturday morning. I wrote a note to my neighbour informing them of the service and talked to another neighbour who actually had a better access path to the pole. I think that Rogers and Bell have access rights to their equipment but I wasn't about to challenge at this point.

This time dispatch did call and on Saturday the seventh technician arrived. Again, he had no ticket history, but I had run out of patience. He arrived near the later half of the service window when I had to drive my son to skating lessons. I briefly summarized the problem to date and basically stretched the truth saying the previous technician was going to completely replace the cable from the distribution pole but couldn't due to access permission which I had granted from my neighbour. Truthfully he was only going to inspect it but I had enough with rescheduling. 

As luck would have it the new cable seems to have solved the problem. After seven technicians visiting I finally have a stable Internet connection. I'll need to return the replacement modem I had to purchase from TekSavvy to get a refund as they don't provide test modems. They did provide pre-paid postage so I'm not out any money. TekSavvy also credited me for a month of service.

I'm grateful the CRTC ruled that third party ISPs have access to the existing infrastructure but it comes with a significant challenge. Clearly the incumbents who own the infrastructure don't want to be challenged or under cut by third parties renting their lines. Bell, Rogers and other incumbents have enjoyed an oligopoly for some time and they aren't just going to let it go. If I was still a Rogers customer it would be easier to short circuit the troubleshooting such that I wouldn't need sever technicians to determine that my local distribution cable was faulty. I could escalate within Rogers quickly to get it solved. As it stands, TekSavvy has no direct communication channel with senior Rogers technicians or their managers and must resort to a prescribed system that ties their hands. I admit, if replacing the cable didn't do it I was going to switch back to Rogers just to get the problem solved. (Bell or TekSavvy DSL wouldn't cut it. For some reason it only has slow speeds at my house).

TekSavvy's customer service reps are good at what they do. They are very nice, competent and answer the phone promptly. I don't wait on hold as long as I did with Rogers and they genuinely seem to care about any issues you're having. The problem is that they are limited in what they can do with a third party's infrastructure.

 I haven't yet determined what the municipal rules are for installing say fibre optic cable in a residential neighbourhood are but I suspect it would be met with heavy lobbying from Bell, Rogers and possibly Toronto Hydro.

Third party ISPs either need to start investing in their own local distribution network or find a independent vendor with dark fibre to the home. You can't run a reliable service on a competitors infrastructure.


End to End

Flying has generally been reduced to a commodity in most consumer's eyes. They search multiple sites over the period of 20-30 days looking for changes in prices, gunning for the lowest fare. Airlines in turns have become ruthless at reducing upfront costs and charging for extras such as baggage, meals, drinks, seat upgrades and even charging for the loo. This has led to razor thin margins for airlines and frequent bankruptcies when the economy has dips an airline can't absorb.

Lately our team at work has been contemplating how to stand out from competitors in a world of highly competitive pricing. As someone who flies a few times during the year, price is a factor but it is not the only one and not the highest. If a flight is for business for instance I will consider service and convenience as more important than cost when asked to spend even a few hundred dollars more. I will opt for Porter Airlines if I can fly out of Toronto's Billy Bishop airport located downtown or I'll choose Westjet or Air Canada for travel in North America before choosing a US based airline.

Case in point. I flew Porter Airlines to Montreal for an early morning business trip last week. I was telling my colleague on the flight down how people frequently leave their iPads in the seat pouch when they depart the plane because it's so convenient to put them there and they aren't obtrusive so it's easy to forget about it. An hour after touching down in Montreal we were at a cafe before the big meeting I realized rather ironically that my MacBook Air was left in the seat pocket back on the plane. I panicked and quickly called Porter Airlines baggage claim to see if anyone had found it. Sure enough the agent on the phone after confirming my flight, seat and name said that the file had a note that a MacBook Air was left in the seat pocket and could be picked up at the check in desk before the return flight. When I got to the airport the check in staff all knew about the laptop and I waited a few short minutes while an agent retrieved it from security. Perfectly executed customer service. I thanked the staff and was on my way. I was also sure to check the pocket before departing the plane in Toronto.

Compare this to United Airlines. A friend of mine and her husband were travelling and she forgot her iPhone on the plane. Her husband, using Find My iPhone on his iPhone was able to pinpoint her phone at the end of the gangway, presumably still on the plane. Her request to United agents to let her retrieve it were denied, they wouldn't get it for her and to this day it was never returned.

Contrast this with my experience. She was still at the airport and couldn't convince United agents to actually retrieve it where as I had a note on file about the specific make of computer to properly identify it and tied to my name. I suspect the only reason they didn't call my cell phone is that our office manager booked the flight and didn't provide it.

This isn't the first story I've heard of United's terrible service. Besides numerous anecdotes about rebooked flights we have the famous United Breaks Guitars and United losing a 10 year old girl. The common element to all of these is that United Airlines employees and thus by definition United Airlines simply does not care about their customers or their level of service. They are providing a service solely based on cost seemingly at the expense of all other service factors. Their brand to me is now synonymous with apathy and low cost simply isn't a factor.

It is quite clear to me that while most travel websites and travel advertising constantly focus on price there is a tremendous opportunity to differentiate your product by experience and service. The majority of time we spend on our trips is in destination and so consumers will rightly focus on the value of the resort or hotel but a flight is the beginning and end so it will leave a lasting impression in your mind. I frequently relax when I'm at a hotel and begin to feel the tension return as I make my way to the airport and fly home. The entire end to end experience needs to be rethought as a consumer's final emotional impression of the trip may be disproportionately associated with the flight or even a taxi ride home. But when we're think about an end to end experience, as a travel agency we must always remember the experience starts with us.

For You or Your Customer

I hate to start on a rant but that's how I get motivated to write. On a regular basis Rogers sends me an email newsletter called Connected in which they present new features and content they are offering across all their services. I recently cancelled my Rogers Television and Internet and only kept wireless so I get all my content now via Apple or other Internet services and view Rogers as a conduit. They're wireless service is fantastic so I'm happy to keep it, but I don't need their electronic newsletter so I click the unsubscribe link in the footer of the email.

I am then presented with this:

Rogers Connected Unsubscribe Form Screenshot






Rogers requires that I specify which communications I wish to opt out of (Connected eNewsletter and/or Connected Magazine), my first name, my last name, my postal code and then my account number.

My immediate reaction was "What the hell?". Besides the slightly laborious form filling I have to either retrieve my last paper bill or log into the Rogers customer portal and look up my account number. This seems asinine for an email unsubscribe. You know who I am since you sent me the email. Clearly the code can be embedded within the unsubscribe link and requires no further effort on my part.

I assume the reason for the complicated details in this case is the second option, Connected Magazine. Presumably if you're cancelling a print subscription Rogers needs more information.

The proper way to do this is:

1. Make the items mutually exclusive. If you want to unsubscribe from just email make it require nothing else.

2. Connect the accounts such that the code within the email can be linked to both email and print accounts and knows what to do. If Rogers truly believes someone will mass unsubscribe your customers using random account numbers then require the postal code as a confirmation but please don't make your customer look up their account number.

The situation here was either caused by a lazy programmer or interface designer who couldn't separate the two tasks, a programmer who is adhering to someone's over architected security requirements or a lazy systems architect who can't connect the print and email subscription systems and therefore puts the onus on the customer to do it.

In the end, you have a customer that is presumably annoyed that they are receiving a piece of email that they never read and annoying them more by having them fill out a form and then have to go look up their account information.

As a designer or programmer, when you're implementing a system you need to ask yourself if you're building it in such a way that has the least amount of friction for the customer to complete the task. Ask yourself if you would be happy as a customer going through this process. If you find yourself substituting a customer action for something you could implement then you need to change or enhance your implementation.

Path, Privacy and Permission

Earlier today Arun Thampi published his investigation into data uploaded by the iPhone application Path. Arun was participating in a hackathon when he noticed Path making an API call that indicated it was submitting a contact from his phone. Upon further inspection it was determined that Path had uploaded his entire address book to their servers.

Dave Morin the CEO of Path quickly responded on Arun's blog when negative sentiment started spreading online about Path's contact uploading.

"Arun, thanks for pointing this out. We actually think this is an important conversation and take this very seriously. We upload the address book to our servers in order to help the user find and connect to their friends and family on Path quickly and effeciently as well as to notify them when friends and family join Path. Nothing more.

We believe that this type of friend finding & matching is important to the industry and that it is important that users clearly understand it, so we proactively rolled out an opt-in for this on our Android client a few weeks ago and are rolling out the opt-in for this in 2.0.6 of our iOS Client, pending App Store approval.

Dave Morin

Co-Founder and CEO of Path"

The general sentiment on Twitter at least is that Path shouldn't be doing this or at the very least should be asking user's permission before uploading their entire address book. I don't know Dave but it appears from his swift response and continued response on Twitter that this was not a nefarious use of data and truly was designed to enhance the user experience. Dave seems like a stand-up guy and Path will weather this, but it does bring up a good lesson for those developing applications be they web apps or mobile apps.

You must put yourselves in the shoes of the user and respect them.

At my previous job we investigated the use of aggregated, largely anonymous data to compare an individual to a larger peer set. This was essentially utility consumption data (electricity and natural gas) that would be aggregated anonymously such that a peer comparing it would never see the original data points but only see three aggregate comparison groups to their own consumption. We didn't collect names or even specific addresses but we encountered enormous pushback from various partners that insisted this data could not be shared without explicit user permission.

As a developer and prolific user of online and mobile applications this seemed overly protective and pessimistic. I was initially not able to put myself in the customer's position. Personal data, any personal data carries with it details about someone's life. Potentially damaging or life threatening secrets in the case of who you might have in your address book. 99.9% of the time contact lists and information like energy consumption are probably benign but the customer doesn't know how that information is stored or the entirety of its use.

I think people are concerned for the most part about the things they can't conceive of, not the things they can. Add to that the general and justifiable mistrust of companies and you can see why many of the comments in Arrun's blog post are in my opinion exceedingly over the top in terms of criticism towards Path.

I believe Path are taking the right approach. 1. Admit to the mistake, quickly and honestly 2. Deal with feedback in a calm and professional manner 3. Define how you will address the problem

Developers need to be conscious of the information they're collecting. Keep it to a minimum and ensure your motivations are to improve the experience for the user. Ensure that you're explaining your reasons clearly and always ask for permission.

Update: Path has issued an update to the app and a statement that they will remove all uploaded contact information and have added an opt-in prompt in the new version when you add a contact.

Thank You Zerofootprint

A little more than three years ago Zerofootprint Software Inc. was born out of the not-for-profit Zerofootprint to service the burgeoning green house gas measurement market. Radiant Core, the company I founded along with Jay Goldman became Zerofootprint Software's initial development team and for the first time I lead a development team on the client side rather than the agency side of software development.  

I have learned a great deal about software development in the past three years. The most important lessons have been less about programming and more about the management of people, be that downward, upward or sideways within an organization. The nature of the rapidly evolving green market caused us to have to continually refocus and redefine the products in order to meet changes in legislation or lack thereof and new market opportunities. No two start-ups are alike and although I had previously been in two others this lesson was again apparent at Zerofootprint where new challenges were constantly keeping me on my toes and leading to constant self-discovery.
Along with its products the people at Zerofootprint have changed as well. I want to publicly thank the entire team at Zerofootprint including past employees, current employees and contractors that I have worked with. Each of them have contributed a portion of their knowledge to my learning experience that I will take forward. From all of them I have learned that the start-up is the employee. These are not large bureaucratic organizations that won't notice a few people that drag it off course. The start-up, due to its size and position must engage all of its employees or risk its demise. Each employee needs to understand they directly affect the outcome of the organization and must continually participate in direction and performance. The current group at Zerofootprint is fully equipped to handle this challenge and I have tremendous confidence in their ability to execute.
I recently had the opportunity to work with a former client from Radiant Core in the travel industry that I simply could not pass up and thus last week my time at Zerofootprint Software came to an end, ready to meet new challenges starting next week. I will take forward all that I have learned in the past three years and move forward fondly remembering the time I had at Zerofootprint.
Lastly, the time spent at an environmentally focused company have profoundly changed the way I look at the world and the choices I make. Although I still continue to strive to be green I will always consider the ramifications of my consumption in a far more critical way. That above all is perhaps the greatest impact Zerofootprint has made on my life.

The Warehouse - the difference between storage and memory

Every now and then I provide computer advice to friends and family. Eventually the subject of their computer's performance comes up whereby I state that the most cost effective improvement to a computer's speed is more memory. This inevitably leads to a disambiguation between memory and storage space. So for the record, here is the difference;

Memory is the working area of your computer and the hard drive is the storage area. The best analogy I can provide is a warehouse. 

In a warehouse you have floor space and shelf space. When you need to access a package you take it off the shelf, put it down on the floor, open the box and work with the item. When complete you put the item back on the shelf. A computer's hard drive and memory are analogous. The hard drive is the shelving and the memory is the floor space. There is a noticeable amount time between telling a program to run and that program being available to work with. Like shelf space, a hard drive is optimized for storage and not working with files. The process to retrieve and return items to a shelf is much more time consuming than moving them around on the floor. Memory is designed to be very fast and as such is relatively expensive compared to the space space on a hard drive. So similar to a warehouse there is much more shelf space compared to floor space.
The reason I say that adding more memory to a computer will make it faster is similar to the warehouse floorspace. As you take items off the shelf the floor becomes crowded. Eventually you can't take anything else off the shelf without putting something back because the floor is full. A computer has this problem as well. Eventually you can't run anymore programs because the memory becomes full. Computers, much like in a warehouse get around this problem by putting programs back onto the shelf in a special area called swap space. As I mentioned, the shelf space is much slower so as you switch between applications the computer starts to react much slower as it has to put an item on the shelf and take the requested item off.
By adding more memory or floor space to a computer you have more room to work and the computer will spend less time swapping (1) items back to the shelf or hard drive.
A as corollary, if you run out of space to store your application or files such as a glut of digital photos or home movies you need more shelf space and have to get a bigger hard drive. Typically though people run out of memory before they run out of storage space. This is largely due to the fact that each successive version of an application tends to get bigger requiring more memory or floor space when upgrading and users tend to run more programs simultaneously the longer they use their computer forgetting to shut down unused programs or getting more comfortable with multi-tasking.
(1) Computer scientists and geeks will no doubt want to correct the difference between traditional swapping and paging but that clearly doesn't matter for the sake of this article.

iPad as a Computer Replacement

Apple has cracked the problem of a computer for everyone else. iPad. I've now demoed and recommended the iPad to several people as a replacement computer to their desktop or laptop. It has been a fantastic success for them as their main use cases are email and the web. These people fall into two broad categories. CEOs and Moms. Both are essentially light computer users that are often confounded by traditional computer interfaces.

One curious side effect of the iPad being good enough is that they never plug it into their personal computer. Their desktop or laptop is collecting dust in the corner never to be used again as there is no need. It's heavy, complex to use and takes minutes to boot. Why would you want to use it?

The problem is that the iPad relies on a traditional computer. It's actually required to use iTunes in order to activate. But the real problem is that unless you plug the iPad into a personal computer from time to time the operating system is never upgraded and it's never backed up. The latter is bad for users but the former is bad for Apple. Users never get to experience the latest features and are subject to existing bugs. Apple isn't able to migrate their customers to mitigate support costs and open up new functionality for updated or related products such as Apple TV.

The iPad needs to break away from personal computers at some point. The latest rumours suggest the iPhone 5 is being released along with cloud support in the form of a free MobileMe account designed to help store and sync your content. Apple has positioned the Mac as the centre of your digital life over the past several years. I don't doubt that it will continue to support that role for years but requiring a Mac for AppleTV, iPhone and iPad limits the usefulness of these peripherals.

Sooner or later a friend or family member is going to get burned for not backing up their iPad often enough. Bad news for them and for Apple.

Configuring the ZTE MF668 HSPA Rocket Mobile Internet Stick on Snow Leopard

I'm posting this for the other poor souls who've purchase a Rogers ZTE MF668 HSPA Rocket Mobile Internet Stick and can't get it to connect using Snow Leopard. 1. Attach the stick to the computer. It should appear as a mounted volume. Run the Connection Manager install program to install the drivers. If you can't see this they may already be installed but you can download and install from Rogers the ZTE MF668 MAC OS 10.4 Software.

2. After the install, go into System Preferences > Network. Unplug and plug back in the stick to ensure the device is identified properly. Two devices should appear, ZTEUSBModem and ZTEUSBATPort. Follow the next to steps for each. (Note: the Rocket Stick should have a red light that turns blue when successfully on the network.)

3. Select the device and enter wapuser1 for the Account Name and wap for the Password

4. Click the Advanced... button and in the Modem tab that appears select Generic for the Vendor and GPRS (GSM/3G) for the Model. Enter for the APN and leave CID at 1. Click OK to finalize the Modem settings.

5. Click the Apply button to apply these settings and repeat steps 3 and 4 for the second device.

6. Select the ZTEUSBModem and click the Connect button to test. If all goes well you should be connected within 15 seconds.

7. Disconnect and exit System Preferences and use the Connection Manager to test the connection again. You can connect using either but the connection manager is slightly easier to open and connect with especially if the end user isn't that technical.

Weak Passwords

You can read this rather detailed Lifehacker article on Weak Passwords by John Pozadzides or you can simply follow these rules.

  1. Change all your passwords to be a minimum of eight characters long
  2. The password must be a mix of lower case letters, upper case letters, numbers and special characters (e.g. !#@$%^&*)
  3. Do not use similar passwords for all your accounts. If one is compromised it's more likely that all of them will be

Combinatorics can be surprising. Going from seven characters to eight characters using rule 2 increases the possible time to crack your password from two years to two centuries.

Smitten Kitchen

My new favourite website is a feast for the stomach and the eyes, Smitten Kitchen by Deb Perelman with assistance from her husband Alex. I have it on my RSS feed list but you have to visit the site to appreciate the labour of love that goes into this site. I'm going to try to make at least one of these recipes a week. I'm not sure if Deb is going for a cookbook after this but the photos that accompany these recipes are incredibly beautiful. Willam Sonoma needs to get in there before the ad rates go up. Follow on Twitter @smittenkitchen and Facebook. Great work Deb!

Faster than Ninjas

Mark Pilgrim pointed out that even Mozilla is having to put Flash integration on hold for their Maemo version. I am reminded of a post by John Chen in the Flash Poor Performance on Max OS X tracking bug indicating that OSX performance wasn't of primary concern to Adobe as

our highest priority will be optimizing our player to be faster than ninjas for mobile phones

The post has since been removed but I pulled it from an email update. It appears that John had revised the post and it was eventually deleted from the forums. Nevertheless the performance ninjas haven't shown up yet.

Faster Than Ninjas comment

Giving Back

I recently started using the mobile location application / game Foursquare. It allows you to share your location with friends and earn points and badges for how often you share. Foursquare also allows you to integrate with your Twitter account to announce when you've "checked in" at a location, earned a badge or earned the status of "mayor" at a particular location. I had thought this was all great fun until Mike Shaver popped up on my Twitter feed.

Foursquare Shaver Unfollow

I wouldn't say that I have a lot of followers on Twitter. 200 people seems like a lot but I'm sure a great deal is SPAM related so when someone like Shaver un-follows it makes me pause to assess the situation.

Twitter can be great fun to let your followers know what you're up to, where you are, what your eat or what's bugging you. There comes a time, however when you have to give back to the community. This applies not only to Twitter but to all internet content. If you're not creating and sharing, you're not adding to the community.

Also for what it's worth, I occasionally update Foursquare but have yet to figure out the long term value proposition.

Chest Pain at Toronto General

4:00PM - At the office. Still experiencing mild chest pains from the night before. These don't seem heart related but I decided to called Telehealth Ontario who had a nurse call me back five minutes later. Ran through a series of standard questions relating to chest pain and advised me to visit emergency at my local hospital even though it didn't sound like a heart event. 4:30PM - Leave office and walk to Toronto General Hospital

5:00PM - Arrive at Toronto General Hospital. Exterior construction keeps me searching for an entrance for five minutes.

5:05PM - Inspect the multi-stage process for seeing someone in emergency. Stage 1 - sign out form at triage station Stage 2 - wait in triage waiting area Stage 3 - consult with triage nurse Stage 4 - wait for registration in triage area Stage 5 - register Stage 6 - wait for doctor

5:15PM - Waiting for registration. Several people here. "Jeffery" is inibriated with a swollen and probably broken left hand which he announces to everyone in waiting is a result of punching a locked door.

5:20PM - "Rodney", inibriated, is brought in by EMT team strapped to stretcher. He is being told to behave.

5:25PM - Women asks EMT why her purse is humming. (Purse is not humming. There is a humming noise in the room from the ventelation system).

5:30PM - See triage nurse.

5:32PM - In response to my "I'm alergic to nuts" answer I'm branded with a red wristband that simply says "NUTS". I'm hoping the staff know this is an allergy and not my assessed mental state.

5:35PM - Register after a brief stage 4.

5:40PM - Jeffery believes Rodney is talking about him and he starts yelling explicatives in Rodney's direction.

5:50PM - Now at stage 6 waiting to be called. Rodney has been moved in and Jeffery leaves hospital obviously perturbed he had to wait so long. Hand is presumeably still broken as he did not see anyone.

6:00PM - Called by triage nurse to go in. Yes!

6:01PM - Arrive inside emergency room area only to be told that triage nurse made a mistake and there are no waiting rooms. No!

6:02PM - Waiting in hallway chair. Hey, Rodney is nearby sleeping it off! 20 something patient, Grant, waiting with his mom next to me.

6:10PM - Waiting. Realizing there appear to be several more stages to this game.

6:10PM - Rodney is awoken by nurse who is clearly not happy with the prospect that she has to clean him up as she announces to her colleagues that he's soaken wet.

6:15PM - Rodney protests but she eventually gets his wet shirt off (yes, I thought something else too) and gets him to put on a hospital gown and blankets.

6:20PM - Rodney continues to sleep it off.

6:25PM - Rodney wanders off to the bathroom.

6:30PM - Rodney returns.

6:35PM - Nurse asks me for a urine sample.

6:36PM - Bathroom was one Rodney used. Not pretty.

6:37PM - Realize that the name on top of the now complete urine sample is not my name. Hopefully it's the doctors?

6:39PM - Confirm that I was confused with Grant 20-somthing next to me. Now know Grant's last name. Sorry for stealing your sample bottle!

6:40PM - Let Christie know via text that I will confirm the nurses know who I am before accepting needles and medication.

5:50PM - Confirm with nurse that they're just busy and have not forgotten me.

7:00PM - Rodney now trying to steal medical supplies and disrupt things by dropping a medical waste bin on the ground. Nurse are oblivious to this and seem to be confused after I tell them.

7:05PM - Receive panicked tech related email from work. "Help to retrieve a deleted file!" Sorry, busy in emergency, please call our IT support firm.

7:10PM - Curious to see if I can read the eye chart bottom line from the required ten feed distance. Check!

7:15PM - Cell battery running low. Boot laptop to juice cell phone from laptop battery. Have to keep Christie informed.

7:20PM - Laptop battery now low from leeching cell phone.

7:30PM - UHN - Wireless Guest Network. Score!

7:31PM - Password required. THIS is how you treat your guests?

7:35PM - Waiting. Writing.

7:45PM - Waiting.

7:50PM - Start working on code. No wireless will make this less productive.

8:05PM - Noticing that even with all the signs, charts and process, nurses still seem to be confused as to who is in what room at what stage for what reason. Not inspiring confidence in the process. It seems like a busy night.

8:07PM - Now past the three hour mark.

8:15PM - Starting to think about the dinner I'm not having.

8:20PM - Laptop battery almost dead. Cell phone battery at 80%.

8:25PM - Nurse asked if I'd seen a doctor yet. Nope. Thinks perhaps my chart was misplaced after a doctor picked it up. Great. Checking to see who's got my chart.

8:30PM - Doctor sees me in the hall and performs brief examination. Examination reveals little. Possibly muscle related based on symptoms related to movement. X-Ray and blood work ordered

9:05PM - Four hours!

9:35PM - Brought to exam room. Confirmed they know who I am.

9:45PM - ECG and blood work.

9:50PM. - Gown for X-Ray.

10:00PM - Waiting at X-Ray. Now five hours.

10:15PM - X-Ray lady returns.

10:20PM - X-Ray lady leaves for the night saying "someone will be with you as soon as possible."

10:30PM - X-Ray dude shows up.

10:35PM - X-Ray taken. Dude apologized for wait. Busy night.

10:45PM - One hour since blood work.

10:50PM - Rodney is awake now. Laughing his ass off. Go back to sleep Rodney.

11:00 - 6 hours! Doctor says 10 minutes to diagnosis.

11:20PM - Diagnosis, muscle pain. Not through an injury, could be stress  Wait a few days.

11:22PM - Discharged! Night Rodney.

iPhone App: Need for Speed Underground

At the Apple 2008 Wordwide Developers Conference Phil Schiller gave an impressive demo of Electronic Arts new game, Need for Speed Underground for the iPhone. The game was promised by November 2008 but never surfaced. I waited and waited postulating that perhaps the app was too much for the iPhone to handle and then an announcement came that Apple was developing a special premium game section for the iTunes App Store. nfsu1

It seems Apple has yet to launch the premium section but to my delight when browsing the App Store last week I saw the banner ad I was waiting for and promptly purchased the game I had waited almost a year for $9.99. It did not dissapoint.


I've only played the Need for Speed series on a console a few times but the iPhone version comes as close as possible to simulating the console experience for such a compact device. The graphics are fantastic, includes a story arc to give the game a fun direction and provides levels challenging enough to hold you back long enough but not so hard as to force you to give up.


As you would expect there is a progressive series of street racers and exotic cars that become unlocked as you progress through the game from a Mazda MX-3 to a Viper, Porsche and Lamborghini.


Need for Speed Underground is a definite five star iPhone game and a must buy for racing game fans.



My Road to HD

For years I've watched with envy as others purchased their high definition flat screen televisions. Then a few weeks before Christmas my wife remarked that HD televisions had come down in price and would we be interested in purchasing one? Yes we would. We're big movie watchers and have grown to love our PVR for prime time shows. Those two areas were reason enough for me to jump into the fray. We were suddenly exposed to a world of a thousand flatscreen models and several add-on options. I decided to try to use my eyes to discern the possible differences in models with a quick trip to Best Buy.

Plasma or LCD

The debate starts at a rather large fork in the road. LCD or Plasma? Plasma has traditionally been heralded for its price, larger size and great contrast or rather, keeping the blacks really black. The downside is ghosting and screen burn in. LCDs traditionally have poor contrast ratios, suffer from a trailing effect and have been more expensive, but all that seems to have disappeared based on my research. My wife and I decided that for the size of our place a 42" would be the largest size we could accomodate, so we thought we'd lean towards LCDs.


The first thing we noticed when looking at LCDs is that the cheaper models (below $1,000) suffered from digital artifacting or jaggies around the edge of fast moving objects. What seemed to be the difference? Refresh rate. Or to be more specific, 120HZ.

At 60HZ fast motion in a scene seems to manifest itself in the form of jaggies around objects. At 120HZ the digital artifacting disappeared. I figured if we were going to spend a significant amount of money on a television that we would have for years we should spend a bit more to make sure the image looked clear.


Once we narrowed it down to an 120HZ LCD we did some online research using reviews. Fortunately 120HZ is a big selling feature. So much so that Amazon lists it in the title of their LCDs so it was easy to search for "LCD 120HZ" to get a rather wide selection of reviews. Being a guy I of course wanted the largest TV I could get so I was concentrating up around the 40" and 42" range. LG, Sharp, Samsung and Sony seemed to consistently get between 4 and 5 star reviews. The LG Scarlett series which is LGs 120HZ models seemed to have some of the highest scores. So it was back to Best Buy with my wife to validate the reviews.

Image Quality

In the end, it's your eye that does the talking. We honed in on 120HZ LCD models for the side by side test. I was surprised that for me the LG Scarletts did not appear to have the best picture but it came down to the  Samsung versus the Sony Bravias. In the end, for us, the Sony Bravias looked the best.


Since we were at Best Buy we decided to fan out to the other nearby box stores to get the best price. Trying to get big box stores to match on price is crazy because if it's not on the competitors website they won't believe you can get the lower price. Also, if you're looking to buy a Sony, the Sonystyle store won't be able to match prices.

I decided to call G&G Electronics out in Scarborough. I had purchased equipment years ago from Gary who owns G&G and got great prices. Gary did not dissappoint.

The Package

Going in we wanted to buy the Sony Bravia KDL-40WL140. Gary offered us Sony's new KDL-40XBR6 at a substantial discount (still higher than the 40WL140) but with a Rogers HD PVR for only $20 for the first six months (Sony pays Rogers for six months of a yearly rental). The XBR model had 10bit colour versus the WL's 8bit, so better colour, and the XBR has a better built in speaker. Since we didn't have a surround system in the budget for this round the better sound was also attractive. The XBR also has a thinner bezel so the TV actually takes up slightly less visual room. We had difficulty comparing the WL140 with the XBR6 as they were running different content. The picture on the XBR6 was running a Blue-ray disk while the WL140 was on HDNet. The XBR6 looked better but I now realize that television runs at 1080i as opposed to Blue-rays 1080p. In the end we decided the XBR6 was probably the better television and the difference in price was worth it. I would suggest if you're comparing ensure the source content is identical. The 40XBR6 it was!

Blue-ray and the Accessories

Gary to help sweeten the deal was attempting to disway us from purchasing a Blue-ray player to save money and afford the better model. He explained that he didn't own one himself and watched all his movies on Rogers Pay Per View. Something in my gut, or perhaps just my technolust was telling me to get the Blue-ray. Plus, we have a small DVD collection and since our previous DVD player was integrated with our old TV we needed a new player if we wanted to watch them at all. So it was a Rogers HD PVR and a Blue-ray player.

We purchased the Sony BDP-S550. In addition to playing Blue-ray discs it also plays DVDs and upconverts them to high definition. Not quite as good as a HD movie but better than a standard DVD player. What most impressed me about high definition playback was Blue-ray movies at 1080P. Sorry Gary, I can tell the difference.

Once we got the Rogers HD PVR authorized and up and running I could immediately see the difference. 1080i or 720p are excellent quality compared to standard definition but 1080p movies are incredibly sharp and free of digital artifacts. It's probably the combination of only 720 lines of interlaced video compared with 1080 combined with additional compression that Rogers puts on the signal that weakens the quality. In the end the clarity of Blue-ray really blew me away. I'm sure when next year's budget for a 7.1 surround sound system kicks in I'll appreciate the audio as well.

I purchased The Dark Knight for our first Blue-ray title and the IMAX content Christopher Nolan shot really shines. Now I'm waiting for Contact, the Star Wars series and the Star Trek series to come out on Blue-ray. The Pixar movies I suspect will look fantastic as well.


I think I found out what we liked so much about the Sony Bravias though I would have to return to the store to test this theory. Most of the competing sets seemed to be too sharp. That is, we saw too many of the pixels which seemed unatural to us. The Sony Bravia didn't seem to suffer from this and gave us a more pleasing image to watch. Upon renting our first Blue-ray we noticed up close an image that was still slightly more pixely than we liked. It quickly dawned on me that this was probably the default sharpness setting. A quick adjustment to slightly dull down the sharpness and we were very pleased.

I suggest when shopping that you access the sharpness settings first and move up and down the dial to make sure the image your looking at isn't the result of some over-eagar techie thinking the sharpest setting is the best for the shopper. While you're at it, if the colour also doesn't look right try exploring those settings. The Bravia by default has Vivid mode which boosts the saturation and provides for some very colourful but very unatural images. We dropped ours to Standard colour when we hooked it up.

Bravia Motion Enhancer

In addition to a Vivid colour mode the Bravias have a Motion Enhancer option that is turned on by default. Both my wife and I noticed that when watching certain content the actors seemed to pop out from the background. I think I've traced this back to the Motion Enhancer which we disabled. Motion Enhancer gets the image to 120HZ through interpolation rather than just repeating the frame multiple times but there is some sort of visual effect that we find distracting.


What has disappointed me most about this experience has been the lack of available HD channels and programming on Rogers, or rather in general. It has been almost 12 years since CBS first broadcast in HD and I'm surprised how slowly the market has been to react. Unless you're a sports nut the content lives mainly in prime time. The slow uptake by consumers probably due to cost, the chicken and egg problem and the high cost of HD television sets. I'm hopeful that since we purchased a higher quality 1080p set which has proven very capable by the Blue-ray content that we'll have this set for a while as shows continue to roll over to HD.

Should I Buy?

If you're not into sports on television and don't watch a lot of movies at home you may be dissapointed by the poorer quality image of standard definition shows on an HD set. That said, if you're only watching prime time most of your shows may be in HD. Check your television guide for the HD channels and see if your shows have an HD indicator on them (Rogers shows this for the HD channels in the on-screen guide).

If you're a movie fan then I highly recommend moving up to Blue-ray for the superior picture.

Behold the Power of the Twitter

The terrible news out of Mumbai was a global news event that really showed me how Twitter is so well integrated into the social networking news stream. Last Monday night, the Toronto tech community amplified the power of Twitter. I recently started using TweetDeck to follow my Twitter stream. Besides separating my public and private timelines, it provides a tagcloud showing trending keywords. Before the news broke over major news networks I noticed something very big in the tagcloud. In a font significantly larger than all the rest of the tags was written one word.


The next several hours were dominated by that word and variations. Twitter had become not only an immediate source of news but also a means of on the ground communication for friends and loved ones. It served as a jumping off point to other destinations for finding loved ones.

On November 27th, the first mention of #hohoto from ryantaylor (Fair Trade Jewellery Company) with a reference to rhh (Rob Hyndman) appeared on Twitter.

It started as a simple notice, shortly after, that some people were going to get together at The Drake to organize a tech industry related Christmas party. Two weeks later on December 15th a sold out Mod Club had donated space for over 600 tech industry revelers to attend a Christmas charity event that raised over $25,000 and donated food for the Daily Bread Food Bank.

I was blown away by the speed at which a small and dedicated group of individuals were able to spread the word of this event within two weeks. On a daily basis I saw the hashtag #hohoto appear from my fellow Twitterers all providing their support for the Daily Bread Food Bank through their commitment, purchases and donations via the HoHoTo party. It compelled me and I'm sure others to purchase a ticket, make a donation and contribute non-perishable items for this excellent cause. Alexa Clark and Rob Hyndman give a nod to Austin Hill for inspiration and give credit to Twitter for promotion in this video by Mark McKay.

Twitter allowed a small group of individuals to leverage their social network connections and quickly promote an event in a way I've not seen before.  Being able to watch the momentum was fascinating and shows that Twitter is both useful as a communication tool and a promotional tool. As Rob Hyndman said when I was leaving the event, "Just think what we could have done if we had more time".

See you next year!