Habit List for iOS

Habit List is a great looking don’t-break-the-chain style todo app for iPhone. I was hoping to make an app similar to this at some point but I’m very happy about being beaten to the punch on this one, they did a great job.

Give Me Your Password

Ars Technica had an article today about insecure password practices at Best Buy. There is a  “PC Recommendation Worksheet” used by GeekSquad employees to setup a customer’s new PC and there is a space for the customer’s password. While I don’t particularly care for Best Buy or GeekSquad I don’t really have a problem with this, assuming they are stored in a safe place and destroyed after use(that’s a big assumption).

Now you might ask “You would trust a random Best Buy employee with your email password”? No, of course not, but this service isn’t for me, these services are used solely by people who are not tech-savvy. 
I think the alternatives to that are more insecure or to costly for Best Buy to support, here are some examples:

Don’t have a password on the admin account – ’nuff said.

Use a default password for everyone (w/ explicit instructions to make their own later) – Nearly as useless as no password at all, it does not work, people are lazy and will keep the default password nearly every time.

Randomly generate one – What if the customer forgets it? If Best Buy keeps a copy around that would be just as bad as if they had the customer’s email password written down. Customers would call Best Buy when they can’t remember their new, complicated password and need it reset. This either cost Best Buy money to support or makes customers pissed at lack of support.

When issues like this pop up that affect non-tech-literate people, I use getting my car repaired to draw a parallel to what they experience. I don’t go around giving my car keys to strangers all day but if my car needs fixed, I have to give my keys to a mechanic, who I don’t know that well. I guess you can call it professional trust, the mechanic trusts that I will pay and I trust that my car won’t be stolen.

If you don’t trust Best Buy, don’t get your computer worked on by them, same with any other service out there.

CNET is Wrong, Apple Never Changed Siri’s Response

CNET has an article saying Apple made changes to Siri’s response to the question “What’s the best smart phone ever”, that is wrong. I actually asked that question back when I first got my iPhone 4s in January and I can verify that “You’re kidding, right” and “The one your holding” we’re the original answers.

I wonder what would have caused Wolfram|Alpha’s results for a question to all of a sudden rank higher than one of Siri’s own answers to a question. For everyone who thinks Apple just changed this response I have one question: What do you Siri said before the Lumina was released?

Using GMP in Xcode 4 With the Help of GMPInt

One of the issues I have run into trying to solve some of the Project Euler questions is that some of the numbers are too big for any of the Objective-C primitives. Some Googling shows that GMP is the answer to my problems but being a pretty novice programmer I have had issues making it work, that is until I found GMPInt, an Objective-C wrapper for GMP.

Setup went pretty smooth following the instructions on the GMPInt Github page but there were a few issues. Here is the steps it took for me to get it to work: 

  1. Install Homebrew
  2. Run the command “brew install gmp” in Terminal, having sudo infront of that command gave me an error about being cowardly, but dropping sudo made it run fine
  3. Add the libgmp.dylib file to your project under Target > Build Phases >Link Binary with Libraries
  4. From there I had to correct the line ‘#import “/usr/local/Cellar/gmp/5.0.1/include/gmp.h”‘ to 5.0.5 as that was the version of GMP I had installed
  5. I also had to go through the GMPInt.m file and comment out any autorelease/release references as I selected ARC for the test project I made

From there I setup a simple test and ran the app, worked perfectly, now I can attempt some of the Project Euler problems I couldn’t before.