Scale is hard: gmail edition

Sometime on or about August 8th, IMAP access to Gmail stopped working for me. I don’t depend on Gmail so I ignored the error messages for 6 days. Then I simulated an IMAP session and was able to authenticate to Gmail, but after that, all IMAP commands timed out. So I looked to the Google Apps Dashboard which reported that everything was fine. Lies. Then I found the Gmail Known Issues page where I found this:

We are aware of an issue where users are receiving an error that ‘”imap.gmail.com” is not responding’ when using IMAP on their computers, mobile devices, or tablets. We are currently working on resolving this issue.

In the meantime, you can sign in to Gmail through a web browser. For Android and iOS users, you can also download the Gmail application in the interim.

Then I found the Gmail Forum within the Google Product Forums where many other users were reporting this issue. What I find interesting about this failure was that it took 7 days before my account access was restored and many users are still affected, 9 days later.

 

Mobile mapping isn’t good enough

Today I confronted a limitation of Google Maps. I’m in Buena Park and I need to be in downtown LA around 8AM. Last night, I consulted Google Maps on my iPhone for planning purposes. It answered 31 minutes. I also checked in a browser on my laptop, in case a feature existed that would let me choose a departure or arrival time that accounted for Monday morning’s typical traffic. There is no such feature.

Because of LA’s infamous traffic, I gave us 2 hours to assure we arrived on time. I also consulted Google Maps at 6:00AM when we departed. It offered up 38 min with traffic accounted for. I checked again after arrival and Google Maps predicts 55 minutes. The actual time: 77 minutes.

Perhaps the Google Maps time estimates are typically reasonable in typical cases and LA traffic is an edge case that is poorly handled (as I learned several times in the past week). However, I think this is a limitation of how Google calculates traffic times. It only accounts for traffic as it is at this moment. It doesn’t account for the typical traffic patterns that predictably recur on given days of the week.

This is where other competitors such as Waze and hopefully the new iOS maps app can offer a significant advantage by mining crowd sourced data to make much better predictions. This is almost certainly something we’ll see in a future version of Google Maps.

Microsoft Introduces a Challenger to the iPad

http://www.nytimes.com/2012/06/19/technology/microsoft-unveils-a-tablet-to-challenge-the-ipad.html

Another quarter, another iPad competitor. But the headline is misleading. I watched the announcement. Microsoft didn’t introduce anything. They merely announced the Surface. This one had better be good, Microsoft is running out of marketable words to name their tablet attempts.

The keyboard idea is clever. It’s original. It might even work. It will take up less space than my iPad plus bluetooth keyboard. But is it better?

Ballmer has been watching Apple product introductions. He was trying hard to channel Steve Jobs. The hushed invites. The buildup music. The decor of the stage and slides. The introduction and invites. The structure of the presentation. The lack of PowerPoint looking slides. The Jonny Ive inspired “design” video. Microsoft is trying really hard to be like Apple.

They talked about the Surface and the ability to do all our Windows tasks on it. But they didn’t actually demonstrate the tablet doing any of them. Lots of talking and hand waving. Here’s the NetFlix screen, here’s the, oops, hang on while I grab another tablet. What? A crash during the announcement? That’s not the part of Windows we want you to bring to the mobile computing world Microsoft. Sad, sad, sad.

They let journalists touch them afterwards. For 90 seconds. With the power turned off. No typing on the vaunted keyboard. If these products worked even modestly well, you can bet they’d have been showing them off, like Apple did at the iPad announcement.

The announcement reeked of desperation. They announced a product so buggy it can’t survive a live demo. It may ship in the 3rd quarter, but Microsoft isn’t known for nailing their ship dates. There’s no pricing, likely because they’re having trouble sourcing components in quantity, because a certain dominant tablet maker owns the tooling and factories that create all the hi-res tablet displays. They have zero third party apps optimized for a tablet, and little enthusiasm from mobile developers. They are paying developers of popular 3rd party apps to port them to Windows Phone 7.

The saddest part of all this is the powerlessness at Microsoft. Back in the 90’s, I recall Microsoft product announcements instilling a sense of doom in anyone competing in a market. Competitors scurried. Projects and sometimes products were cancelled at the mere announcement of a Microsoft initiative, because competing with Microsoft was certain death. Now Microsoft makes an announcement and it’s just sad. Memories of greatness are replaced with memories of PlaysForSure and Zune trying to compete with the iPod. Then the Danger fiasco, the Kin disaster, and the underwhelming Lumia trying to complete with the iPhone. Then there’s the list of Windows powered tablet flops, crowned by the HP Slate. It’s just sad.

What I find most telling is that Microsoft and Google have both publicly confessed that Apple’s integrated approach is best. The modular solutions they previously championed (hardware from them, software from us) are not good enough. Google bought Motorola and will soon announce its own hardware, and now Microsoft has announced their own.

I think it’s premature to declare the Surface an iPad challenger. But one thing is for sure, it’s going to get even tougher for HTC, Samsung, and LG to complete in the mobile computing race.

Flashback and Mac OS X security

I’ve had several people inquire about the security of their Mac, particularly since the media began exploiting the Flashback trojan with sensational titles and coverage that I refuse to link to. If you want a good summary of the Flashback trojan, Macworld has an excellent writeup: What you need to know about the Flashback trojan. As for what you should do, read on.

We need to remember that absolute security is impossible to attain. Safety and security are more accurately described in degrees. What we mac users are accustomed to is a greater degree of security than other PC users. So long as we employ a bit of caution when downloading, we can surf the big bad internet with very little concern.

That’s not so say we’ve had absolutely nothing to worry about. Every year, there’s been an exploit or two and the page view generators declare that “The Mac is no longer secure.” Never mind that no platform is secure. Such facts do not generate page views. Here in reality, we Mac users have seen three primary vectors of security exploits on the Mac platform: QuickTime, Flash, and Java.

  • QuickTime: There have been quite a few QuickTime exploits, often as the underlying open source applications discover and patch exploits. Apple has been pretty good about getting these patches applied and pushed out to users quickly. Software Update is easy to use so most users see and install these updates.
  • Flash: Flash is the gift (to those with malicious intent) that keeps on giving. For a while, it seemed that Flash Player needed to be updated every week to remain secure, where by secure we meant it had no known vulnerabilities. A few years back, I realized that nothing I cared about required Flash, so I manually deinstalled it. John Gruber has a few tips for going Flash free. The benefits I noticed from disabling Flash were the disappearance of animated ads, faster page loads, greater battery life, and a cooler laptop. I was pleased when Apple shipped Lion without Flash and Java. With Flash use on the decline, the internet is already a better place.
  • Java: For the same reason that Java is popular in enterprises (write once, run anywhere), Java is popular with malware authors. Apple has a history of slow Java updates which you can read about at Macintouch. The short version is that just like Flash, Java updates on the Mac require cooperation with a third party (Oracle, and previously Sun). That often delays the release of new features as well as security fixes for Java on the Mac platform.

The only web site I use that utilizes Java is one bank, and it uses Java only for its online check deposit feature. Since I rarely use that feature (there’s an App for that), and having Java enabled poses real security risks, I have little reason to have Java enabled in Safari. Apple has made it very easy to disable Java: Safari -> Preferences -> Security -> Enable Java and click that checkbox off. I recommend that everybody does the same. It is comparably easy to disable Flash and Java in FireFox, Chrome, and Opera. Doing so inoculates you from nearly all internet nasties.

In summary, Mac users can continue to eschew antivirus software and still remain reasonably secure, so long as we employ three basic precautions: apply security patches that Apple releases, disable Flash, and disable Java. This is the way it has been for years. The thing that has changed the most regarding Mac security is that now it’s easier than ever to live without Flash and Java.

Green built houses

With house prices and interest rates low, we are considering homeownership again. We have looked at hundreds of houses in the past year and found a half dozen that we really liked. What we haven’t found is a house we like at a price we like.

In 2011 we learned about three standards in the green building industry:

  • Passive House: limits household energy consumption to 120 kWh per cubic meter. A Passive House is very efficient and there are tens of thousands of houses built to this standard in Germany, Scandanavia, and Canada.
  • Net Zero: consume zero energy and zero carbon emissions annually.
  • Energy Plus: produce more energy annually than is consumed.

In 2011 we attended several green energy festivals. We toured a couple Passive Houses and the only Net Zero homes in the Puget Sound area. The cost of getting to net-zero is 15% more than building a traditional home. Our goal is to get as far as we can towards net-zero. A net-zero home has a monthly gas and electric bill of $0. Getting to net-zero requires reducing energy consumption through:

  • an efficient building envelope (super insulated, tightly sealed, oriented for beneficial solar gain)
  • highly efficient fixtures and appliances (LED lights, induction cooktops, solar water heaters, heat pumps)
  • a heat recovery ventilator (recover heat from ventilation air before exhausting it)

The other ingredient required to achieve net-zero is energy production. Solar has long (at least since the Chinese & Greeks oriented their buildings to face the winter sun 2,500 years ago) been the first answer for harvesting energy. Until the 1970s, the best available technology was exposing internal masonry to the sun. The thermal mass of masonry would warm up in the day and then give off the stored heat at night.

Using solar exposed masonry is still an excellent and highly efficient way to collect heat. The obvious limitation is availability of sunshine, which is often meager in Seattle’s heating season.

Retrofitting an existing house to achieve green building standards is more complex than building the house well initially. This has made choosing a house more challenging. I desire the ability to retrofit a house up to at least the Passive House standards. Some house designs make this more challenging than others. For example, I can’t easily change the orientation of a house to capture beneficial solar gain. Generally, houses are sited for the convenience of the builder rather than the long term benefit of the occupants.

In the meantime, we aren’t waiting for a new house to be more environmentally aware. We have reduced our household waste to less than one kitchen bag per week. The majority of food waste is diverted to my compost pile and the rest is recycled. I have replaced all our household lights with LED bulbs. In areas where lights were typically left on, I installed motion sensors with timers. We have a hybrid Ford Fusion and a Nissan Leaf, greatly reducing our gasoline consumption.

Deposit checks to EverBank with a ScanSnap scanner

I have a bank account with EverBank. They have a feature that enables check deposits from home. It uses a Java applet that runs in the browser. The applet includes a scanner driver that directly controls any TWAIN compliant scanner. The general idea is that a customer will go to their web site, log in, turn on their scanner, click the “make an online check deposit,” and then the Java app will scan and upload the image.

That scenario doesn’t work for me because my ScanSnap document scanner is not TWAIN compliant and likely never will be. So I contacted EverBank and their support staff “changed” my account so that it runs a different Java applet. Instead of controlling a TWAIN scanner, it accepts two scanned JPEGs. Once the changes to my account were completed, I tried using the feature and got this error message.

There’s two straight forward ways to tackle this problem.

  • Do as they suggest and select 32-bit Java. Run the Java Preferences app in Applications / Utilities. Reorder the list so 32-bit Java is first. This works, but it means that all Java apps will run 32-bit instead of 64-bit.
  • The other workaround is to set one web browser to run in 32-bit mode and always use that browser for online banking. Since I rarely use FireFox, I set FireFox to run in 32-bit mode and it worked as expected.

Then I set up a new ScanSnap profile for scanning checks. I named it “EverBank” and configured the following options:

  • Application: Scan To File
  • Image Quality: Best (slow)
  • Color Mode: Color
  • Scanning Side: Duplex
  • File format: JPEG
  • Paper size: Auto
To deposit a check, I switch to the EverBank profile, scan the check, and then choose the resulting files in the Java applet. It works.

Minivan + kids + interior lights = dead battery

Our family vehicle is a Honda Odyssey. The dome lights are toggle switches. Push the light, it’s on. Push again, it’s off. There’s no visible way to tell which position it’s in. If a child pushes the light and it gets left on, the next morning we have no minivan until after a date with Mr. Battery Charger. Since the kids were able to reach the dome lights, we’ve been vigilant. There are ways to be vigilant. We’ve tried:

  1. Exit the vehicle. Close all doors. Lock with the remote so interior lights turn off. Peer inside to see if any lights are on.
  2. Disable interior lights entirely with switch on dash.
  3. Re-enable interior lights, but forbid children from ever, ever, ever touching the light switches.

The third solution works most of the time. On Nov 3rd, I gave some neighbor kids a ride home from school. When they got out, one of them pushed the light switch to turn it off. The lights don’t turn off when the door is opened, so nothing happened. The child exited the van. Having trained my kids not to touch the switches, I didn’t perform #1. On Nov. 4th, we biked to school while Mrs. Odyssey and Mr. Charger hooked up.

On Nov. 5th, I found this post on the OdyClub site, detailing the LED bulbs another Honda owner ordered from China and installed in his Odyssey. I paid $28 for the following ten LED bulbs, shipped: (1) 51109, (4) #51002, (2) 35725, (1) 34641, and (1) #34608. When they arrived a couple weeks later, I installed them in about 15 minutes.

Last night, both kids were reading books on the ride home from swim classes. Both kids left their interior lights on. Both parents failed to notice. This morning, I opened the garage and saw the lights on. I smiled. When I got in, the van started. Mission accomplished.

My Top iOS Apps

iPad Most Used Apps: Mail, Notes, Epicurious, Safari, Instapaper, FeedlerPro, PasswordWallet (PW)

Mail & Safari: neither require much explanation. Both apps are mature and reliable. Mail works great for presenting a unified view of my 6 email boxes (iCloud, Gmail, 2 personal, 2 business). Reading mail and browsing on the iPad are more enjoyable. If the iPad is nearby, it gets grabbed before an iPhone.

Notes and I weren’t very fond of each other at first. The awful Marker Felt font and no decent sync consigned it to an unused app screen. When iOS 4 brought sync support, I finally began using the Notes app as well as Notes feature in Mail.app on my Mac. On the Mac, I can change the font. What a relief! Since the two sync, I can make changes on the Mac or iPad.

I enter my recipes as notes on my Mac. Then I view them on the iPad in the kitchen. I often make small edits in the kitchen too. All those, “I should update that…” things actually happen now, while I’m thinking of it. Here’s a few of the notes I have: Apple Pie, Whole wheat pie crust, Gordon’s Chili, Carrot Cake, Yogurt [making] notes, Blackberry Pie. I do use notes for other things, like Perl Best Practices, Javascript Cheat Sheet, W3C DOM, Climbing: Plan Trip, Climbing: Packing List, Seattle Bucket List, and notes I’ve taken while reading numerous books.

Epicurious: I like the Epicurious app. It’s rather poky, but it has a recipe sync feature that makes it worthwhile. I can browse through the epicurious.com site and find recipes, add them to my “recipe box” and then go to the kitchen, pull up Epicurious, and then view the recipe I just chose. The laptop in the kitchen idea never worked well (I tried several times) but the iPad in the kitchen is delicious!

Instapaper: Go get it. Use it for a week. You will love it. Trust me.

Feedler Pro: RSS feed reader. An excellent one. If you subscribe to RSS feeds, it’s indispensable.

Password Wallet: I have 788 passwords. Every web site, computer, app, software registration, etc has it’s own password. Most are randomly assigned by PW. They are stored in an encrypted file that syncs between my Mac, iPhone, and iPad.

Less Used But Great iPad Apps: Twitter, Facebook, AIM, iSSH, Photos, Redfin.

iPhone Most Used Apps: Mail, Grocery IQ, Calendar, Camera, Safari, Notes, PW, FeedlerPro, Instapaper, Google Maps, OmniFocus, USAA (killer feature: deposit checks with my phone), Chase (killer feature: the only business checking with iPhone deposit, else I’d be rid of my TBTF bank account entirely), Scrabble, Facebook, Instagram, Reminders.

I have at least a dozen other apps I love, but only use on occasion. For example, the Airport Utility, for configuring my WiFi. I don’t use it often, but when I do, I’m really glad to have it. Apps like that: Stocks, Vanguard, Waze, AIM, WordPress, Skype, NPR, My TSA, FlightView, iBooks, Kindle, Remote, Youtube, Allrecipes, Dropbox, Zillow, Reunion, Epocrates, WordBook, iGrill (bluetooth remote for my kitchen temp probe), and of course, a handful of games and edu apps for kids.

wordpress blank page when updating

WordPress provides an upgrade feature that makes it point and click easy to upgrade themes, and plugins. For years, this has never worked for me. Anytime I click the “update” button, I get the FTP login tab. I enter my credentials and then I get a blank page in the right pane. No error message. No error logged. This broken feature didn’t bother me much because it’s pretty easy to update the plugins manually. But it was annoying.

Today I installed another WP blog for a client and decided I really ought to make this work. I double checked permissions, and then noticed that even after providing credentials, I wasn’t seeing a FTP connection arrive when I attempted an upgrade. It was then that I had my ‘duh’ moment. I have a minimal PHP install, with only required plugins. I installed the FTP plugin for PHP and voila, plugin and template install/updates work.

If you are getting a blank page when upgrading a wordpress plugin, verify that PHP’s FTP module is installed and active.

Form 1120S Schedule K-1 Worksheet

After my corporation bought back some stock certificates, the method I used to calculate Item F, “Shareholder’s percentage of stock ownership for tax year,” became more complex. Neither Google nor WolframAlpha led me to an equation so I set about creating a spreadsheet to simplify the problem.

The IRS instructions for form 1120S Schedule K-1, Line F, describe the method to use thusly:

Each shareholder’s pro rata share items are figured separately for each period on a daily basis, based on the percentage of stock held by the shareholder on each day.

…..

If there was a change in shareholders or in the relative interest in stock the shareholders owned during the tax year, figure the percentage as follows.
• Each shareholder’s percentage of ownership is weighted for the number of days in the tax year that stock was owned. For example, A and B each held 50% for half the tax year and A, B, and C held 40%, 40%, and 20%, respectively, for the remaining half of the tax year. The percentage of ownership for the year for A, B, and C is figured as presented in the illustration and is then entered in item F.

IRS Form 1120S Schedule K-1 Item F table

I built myself a spreadsheet to calculate Item F correctly in the simple and complex cases. My spreadsheet implements the IRS described method without requiring the preparer to manually perform all the interim calculations. The only required inputs are the quantify of shares held by each shareholder and the number of days they were held.

Without any alteration, it supports up to 4 changes in shareholders and there’s no limit to the number of shareholders. I just plop in the raw numbers from the Stock Transfer Ledger and the spreadsheet does the rest.

I post it in Numbers and Excel formats, hoping that others will find it useful as well.

1120S_Schedule_K-1_Worksheet.xls

1120S_Schedule_K-1_Worksheet.numbers