Wednesday, November 20, 2013

I've finally upgraded to Mavericks!



It only took me about 3 weeks but I'm finally running Mavericks, the latest version of Mac OS X, on all my computers! You might think being a big Apple fan I'd be first in line to install it. But sometimes there are good reasons not to be so eager to upgrade.

First, I use MacBook Pros both at home and work, and am running a number of non-Apple applications. At home I run VirtualBox and Parallels, virtualization applications that allow me to run different operating systems on my Mac, such as Windows and Linux. I occasionally use these applications when friends need help with their Windows machines (it came in handy recently when I helped a friend install Boot Camp). I also use Quicken to track our finances. I started this back in the early 1990s on Windows. When I started using Macs over a decade ago, I looked into switching to the Apple version of Quicken. Unfortunately Intuit has never done a good job of supporting Quicken on the Mac and I realized I would lose large amounts of historical data if I made the switch. So I use Parallels to run Windows XP, so I can keep using Quicken. I also do taxes for family members and friends, and some of them have complex tax structures like trusts that aren't supported in the Mac version of Turbo Tax, so I use Windows XP to run that. Given this, I want to make sure there aren't an incompatibilities with the new OS and my 3rd party applications.

Second, no matter how much beta testing Apple does, there are always issues. There are some problems that don't crop up until you have hundreds of thousands of users running the system. This year, one of the biggest issues was between Mac Mail and Google Mail (this issue was discovered during beta testing but I didn't hear about it until after the general release). This was an issue for us, as both my wife and I use Mac Mail to manage our Google Mail accounts, so I didn't upgrade until after Apple released a patch to fix it on November 7.

Third, I'm not just upgrading one computer, I have 3 computers (plus a 4th if you include a test laptop I have). And it's not just installing the new OS, there are backups that need to be done and updates afterwards. So it ends up taking me quite a bit of time to get everything to the latest release.

What this all means is I am cautious when upgrading my computers. Below is a summary of the steps I took to upgrade my computers.

I waited about a week before starting to upgrade. I watched the tech press to see what issues were being found and if there were any major incompatibilities. I found a good Ars Technica forum post with a list of known Mavericks incompatibilities, and I didn't see anything major. I was aware of the Google Mail issue, which slowed me down, as I wanted a fix for it before I upgraded my wife's and my main computer.

The first machine I upgraded is what I call my "test" machine. If you read my previous post on restoring from Time Machine, my test machine is the one I spilled coffee on and had taken it for dead. It turns out it survived, and since my company gave me a new laptop, I have this extra one. I've had a couple minor issues with the computer and don't know how long it will last, but for now I love having an extra machine I can try things out on! Being a test machine, I didn't do any of the usual backups I'd normally do. Before the upgrade I had taken the latest Time Machine backup from my main computer and restored it on this computer. I downloaded the Mavericks installation app (and saved the install app to a flash drive so I wouldn't have to download it again) and installed it.

The installation went well. After upgrading and logging in, I had to enter my Apple ID password to reconfigure iCloud. A new feature in Mavericks (and iOS 7.0.3) is iCloud Keychain. I had to enter my 4 digit security code that I used when I configured Keychain on my iPhone, then enter the verification code that was sent to my phone. I also had to install Java (since I primarily develop in Java, it would have been tough to do my job without it), and reconnect my Dropbox and Google Drive. For Google Drive, I had to first disconnect my account as I didn't have a local Google Drive directory (I don't back it up to Time Machine, so when I did the restore it didn't create it). When I signed back in, it recreated the local directory and began resyncing.

Shortly after, I checked for software updates, and installed updates for Pages and iPhoto. A new feature of Mavericks is to automatically download and install updates. The first time you receive an update you will be prompted to turn this feature on.

The second machine I upgraded was my work computer. I did this after a few days of using Mavericks on my test computer. I don't use Mac Mail at work, just the Google mail website, so I didn't have to worry about the Mail bug. Prior to upgrading, I made 2 backups. I discuss this in my backup strategy blog post, but to summarize, I make sure my Time Machine backup is up-to-date, and also do a full backup with SuperDuper!. I then booted from the flash drive image I had made on my test computer and installed the new OS. Again, I didn't run into any major issues. I had to reinstall Java, plus some other tools like Maven, Homebrew and the Xcode developer tools.

Once Apple released the fix to Mac Mail, I then upgraded my main computer. I spent a couple of days using the system and making sure Mail was behaving properly, then I finally upgraded my wife's computer. One of my measures of a successful upgrade is how much my wife complains. I usually upgrade her computer without telling her, then wait a day or two before asking how her computer is running. In the case of Mavericks, as was the case with Mountain Lion last year, she didn't even notice the change. I think this has to partially do with not upgrading immediately, but instead waiting for a few days. This alerted me to the Mail bug, which, if I had upgraded before getting fixed, would have caused us a lot of issues.

I'll hopefully post an update later with some of my initial thoughts and experiences with Mavericks.


Monday, November 11, 2013

TWiT TV Triangulation Interview with Ladar Levison

I know it was released a few weeks ago, but I recently finished listening to Triangulation episode 125 with Lavabit founder Ladar Levison, and I think anyone interested in what's going on with the NSA and its impact on Internet communication will find this interview informative and fascinating. It gives a ground-level view of how these probes have impacted Levison's business (basically shutting it down), and is a chilling view of what likely is happening to many other Internet-based companies - receiving government orders to give up private customer information without the ability to inform their customers of such orders. I admire Levison's willingness to stand for his principles of protecting his customers, as compared to leaders of other Internet companies like Verizon who seem to think it's just grandstanding for companies to push to be able to disclose more about their dealings with the NSA.

Wednesday, November 6, 2013

My Mac Backup Strategy

As I've been going through the process of upgrading to Mavericks (the subject of an upcoming post), a lot of my time has been spent backing up my systems. I thought it might be good to go through my backup strategy. This post will cover backing up my Apple laptops; I can see a future post on backing up iOS devices.

At this point, there really aren't many (any?) reasons why you aren't backing up your computers, tablets and phones. Apple provides Time Machine and backing up to iCloud for iOS devices. I'm not that familiar with Microsoft but I know they provide tools for doing automated backups. If you're an Android and Google user, the majority of your data should already be on Google servers, and Google provides ways of backing up photos and videos (you should be using Google+). There are other online services like Dropbox, Box and Google Drive, that are simple to setup and can be used to backup critical files. Yes, to use Time Machine or other local backup solutions you may have to buy an external drive or Time Capsule, but drives have come down in price so much that's not much of a detriment. So do yourself a big favor, get a drive, connect it to your computer and get backups turned on!

I have a couple of purposes for backups. The first is for accidental file removal or corruption. For this I rely on Apple's Time Machine. I used to use a Time Capsule connected via Wi-Fi, but found the backup speed to be very slow, especially the initial backup which could take days to complete. So now I have a 2TB external disk that I backup to. This is not a perfect solution as I must remember to connect and backup on a regular basis. I end up doing it at least once a month.

The second purpose for backups is disaster recovery. This would be if my Time Machine backups were corrupted, if something happened to the house (such as a fire), or something like spilling coffee all over your computer (does that sound like I'm speaking from experience?). There are some good online backup services like CrashPlan and Carbonite. But for me personally, I have a lot of sensitive data on my machine like tax returns and years of financial information that I would rather keep off the Internet as much as possible. So I use SuperDuper! for disaster recovery. SuperDuper! creates a bootable clone of your system. They have a free version, plus a paid version that gives some great features like the ability to schedule backups and scripting support. Once I backup my computers with SuperDuper!, I keep the drive at work. I only backup with SuperDuper a few times a year, plus when I'm getting ready to do major upgrades.

Speaking of upgrades, the final purpose for me is peace of mind while doing upgrades. Apple upgrades almost always go smoothly and I've never had to downgrade after upgrading, but at least with backups I have the ability to. Plus, if something gets removed during the upgrade process I can restore it from my backups.

When preparing for a major upgrade like Mavericks, I make sure my Time Machine backups are up-to-date and run a SuperDuper! backup immediately prior to performing the upgrade. Once the upgrade is complete and I am fairly confident in its stability, I will delete my Time Machine backup and do a fresh backup. I will leave my SuperDuper! backup with the previous version for a few weeks just to make sure I don't discover something later. A month or two after the upgrade I'll do another SuperDuper! backup, and so at that point everything is again back in sync.

Saturday, November 2, 2013

Welcome to the JKTimes2 Blog!

I thought I'd write a quick post to help introduce new readers to this blog.

So what's the story with this blog?
I'm a software engineer and spend a lot of time with computers and technologies. I try not bringing my work home with me, but I still spent plenty of time playing around with different technologies. I also like to help out family members and friends with the little day-to-day issues and questions that pop up. I'm hoping to write about the technologies I run into, either in my professional life, at home or as I help out family and friends. I expect this to be a fairly low volume blog, but will probably have a more active Twitter feed as I retweet articles and other news I find interesting.

You'll find I'm a big Apple fan and have drank the Apple Kool-Aid. We have half a dozen Apple laptops, a few iPhones, iPods, Time Capsules and an Apple TV. So expect many of my posts to deal with working with and supporting Apple products. But I will expand that to other areas; I've spent a lot of my career in telecommunications and networking so hopefully that will come into some posts. Plus I think security is a big deal so will hopefully discuss that.

Don't you also write a Pixar-related blog?
Yes, I'm the creator of the This Day in Pixar blog. I started that in early 2012. I haven't been as active on that blog for a while (that's probably an understatement), but I still have some good ideas for future posts and plan on keeping it going.

What's up with the name?
This blog actually began back in early 2010. A great friend of mine and I have worked together at a number of companies, and we began the blog hoping to discuss our day-to-day experiences of being software engineers. Both of our initials are "JK", so that's where the name came from. We didn't get very far with blogging but I hope to get back into it now.

And what about the design of the blog?
Yea, sorry, we didn't spend any time with the design (obviously). While I've worked on a number of websites, I focus mostly on the backend, integrating with databases and other services. So when we started the blog I just grabbed one of the first templates I saw. I have some ideas for a better design and custom domain, so if I stick with the blogging at some point maybe I'll do something different.

Thanks for visiting!

Monday, October 7, 2013

Apple Security, Part 1: Touch ID and Passcodes

Security has been a hot topic as of late. With the recent news regarding the NSA, Edward Snowden and allegations that Internet companies are capturing our data, it is imperative that we try to be aware of the risks and take steps to limit undesired intrusions. In this first of what I hope to become an ongoing series of posts, I'm going to discuss one of the security features Apple recently released: the Touch ID fingerprint sensor in the iPhone 5s.

Apple has stated that over 50% of smartphone users do not use a passcode to lock their phone. By not using a passcode, users are opening themselves up to easy unauthorized access to the data on their phone, like birth dates, home and email addresses, phone numbers of family and friends, and possibly other personal information. Granted, like most security measures, a passcode reduces the convenience of the phone. This is one of the reasons I really like Touch ID - it provides greater security and greater convenience. Once Touch ID is enabled, all it takes to unlock your phone is to place your finger on the home button for a second. Apple claims a fingerprint is 5 times more secure than a 4 digit passcode, so you get more security and convenience by this one mechanism.

If you use Touch ID, you will still need a passcode, which is required after rebooting your phone or if you haven't unlocked your phone with your fingerprint for over 48 hours. But there's another benefit I think Touch ID will bring about. Now that it should be rare to need the passcode, people can use longer, more complex passcodes, which will provide even greater security. I believe Apple will roll out Touch ID to their iPad and iPod products, and I wouldn't be surprised to even see it get integrated into their computers over time.

It's easy to add a passcode to your iOS device; go to Settings -> General -> Passcode Lock (on the 5s it's called Passcode & Fingerprint). The default is a 4 digit passcode; to create a longer one or one with letters and special characters, turn off Simple Passcode. Another option on this screen includes how long to wait after locking your phone before requiring the passcode to be entered (Require Passcode). There are other options for which actions are allowed when the phone is locked such as Siri and Passbook. Finally, the last option (Erase Data) gives you the choice of erasing all data on your device after 10 failed passcode attempts. I like this last option but haven't enabled it on my phone yet - I worry one of my kids will play around with my phone trying to guess my passcode and end up wiping it out! A related option is Auto-Lock on the Settings -> General page. This option specifies how much idle time must occur before locking your device.

If you want to learn more about Touch ID, check out this Apple article on it.

Touch ID and other security features like Activation Lock (I'll cover that in an upcoming post) are demonstrating Apple is listening to its customers and beefing up its security infrastructure. But Apple is not the only company doing this. Google has been in the news recently with their enhancements to make all searches secure. With the public's focus on security, I'm sure we'll see other technology companies follow suit.

Thursday, September 26, 2013

Restoring a Mac from Time Machine Backups, Part 2

As I described in Part 1, I fried my work 17" MacBook Pro laptop (I guess splashing coffee onto a computer is not good for it). My work gave me a new 17" laptop, and fortunately I had complete Time Machine backups of my old computer. This blog post will go through the steps of restoring the backup onto the new computer. Here are the 3 top-level steps:
  • Prerequisites and Preparation
  • Installing Mountain Lion and Restoring the Backup
  • Post-Installation

Prerequisites and Preparation

My situation was somewhat complicated by a couple of facts, the first being that the new computer was running Snow Leopard, but my old computer (and therefore the backups) was running Mountain Lion. So I was going to have to first upgrade the system to Mountain Lion, and then apply my backups.

New computers come with a hidden recovery partition that you can boot from, and then install. Since this computer was running Snow Leopard I didn't have a recovery partition. I should have been able to just download Mountain Lion from the App Store, but a second complication was that I wasn't able to log into the computer. So the first step was to use a second computer to get a copy of Mountain Lion and install it on a bootable USB drive. The Unofficial Apple Weblog (TUAW) wrote an excellent post on this process, so rather than try to write my own, feeble version, go read that article, then come back here for the rest of the steps.

Installing Mountain Lion and Restoring the Backup

  1. Plug the USB drive created above into the new computer.
  2. Start the computer, and immediately press the alt/option key until a list of boot devices is displayed. Select the USB drive.
  3. You will see the OS X Utilities screen. Pick Reinstall OS X and click Continue.
  4. Follow the prompts to install OS X Mountain Lion.
  5. There were a number of steps during the installation. The first was the preparation for installation and took approximately 7 minutes. It then rebooted and began the actual installation, which took less than 15 minutes. Finally I received the Installation Successful message and it again rebooted.
  6. At this point I had a good Mountain Lion install (just like what you would have buying a brand new computer). Now I needed to restore my backup. I removed the USB Recovery stick and connected my external disk that contained my Time Machine backups. Once the computer came up I answered the Welcome/Registration, Keyboard and Wi-Fi network questions. I was then given the Transfer Information to This Mac prompt. I chose From Another Disk and clicked Continue. I then chose the Time Machine disk as the Source and clicked Continue. On the next screen (Transfer Your Information), I kept all 4 choices selected (Users, Applications, Settings, Other files and folders), and clicked Continue. It took about 1 hour and 45 minutes to restore 166GB of data. Once the restoration was complete I had to answer a couple last questions and then the process was complete!

Post-Installation

I did have to re-enable a number of functions, including my iMessage credentials. I also had to reconfigure Dropbox and Google Drive. As a developer, I use Java quite a bit and discovered that Java had not been restored. This was easily resolved; the first time I typed java from a Terminal window it prompted me to install it.

At work we maintain all our source code in Version Control Systems (VCS) like Subversion and CVS. All I had to do was start Eclipse and re-check out my projects to get the latest code.

Restoring a Mac from Time Machine Backups, Part 1

We've all heard how important it is to backup our computers, but I have a real-world experience to demonstrate why it's important, and the advantages of using a backup system like Apple's Time Machine.

A couple months ago at work, my French Press, completely full of hot, ready-to-drink coffee, got knocked over and spilled all over my desk, splattering coffee and grounds onto my open MacBook Pro. It immediately powered off as the liquid created a short circuit. I quickly unplugged the computer and tilted it sideways to try to get the coffee and grounds off and from getting deeper into the system but I was quite sure the damage had been done.

After cleaning up I made a Genius Bar appointment for later that evening. At the Apple store, I explained the situation to the helpful Genius. I think the combination of the strong smell of coffee, the grounds that were still falling out of the USB port and inside the lid, and the liquid along the back panel convinced her that the system was likely beyond repair. She said that they could send it out to their repair location, where all the major components would likely be replaced to the cost of $1200. Given I could buy a brand new computer for that price, I thanked her for her time and left.

Since it was a work computer, they gave me an identical 17" Mac Book Pro. And this is where I finally get to the point of this blog post! Using Apple's Mountain Lion Recovery process and my Time Machine backups, I was able to copy my backup to the new system and get it to an identical state as my old computer in just a few hours. If you're interested in the details, check out Part 2 of this series on the process.

The point of this post is to show that accidents happen. Having backups can give you peace of mind that when an accident does happen, whether simply deleting the wrong file or a catastrophic event, you will be prepared. With utilities like Time Machine and iCloud, Apple has made it convenient and easy to have up-to-date backups of your Mac, iPhone, iPod or iPad. If you have one of these devices there really is no reason to not be doing backups! If you have questions on setting up Time Machine, using iCloud or enabling backups, leave a comment below or email me.

UPDATE:
After I got home from the Apple store (on the day the coffee was spilled), I removed the bottom case of the computer and let it sit overnight to dry out. About a week later, I decided to see what would happen if I tried turning it on. Amazingly, it came up! I ran a disk check and some other basic diagnostics and everything checked out fine. I used the computer for a day or so, and everything seemed fine. I thought the fan was louder than I remember, and was coming on more frequently. I also tried to load a disc in the CD/DVD player, but it never loaded. So while there may be a couple minor issues, I have to say I was surprised to see that it survived. I think computers and other devices like phones are getting better at handling moisture, if properly treated - getting it out of the water and shutting the device down immediately, removing the battery (if possible) and letting it dry for a long enough time. For phones, putting them in an airtight container filled with rice does work - leave it in the rice for at least 4 days, and hopefully when you take it out you'll have a working phone.