Hardcoding == Art

Blogging About Work is Hard.

I can’t really describe how hard I find blogging to be. Tumblr isn’t even really the most ideal platform for blogs, but a friend of mine (Corbin Lewis) convinced me that there were many features that make Tumblr an idea application to blog on, and he was right. However, even with all the bells and whistles and mobile-access candy I still find it difficult to blog on a consistent basis. The closest analogy I have is to compare my blogging experience to someone updating their CV. You have had tons of experience, most of which are worth describing to a recruiter, but for some reason you just can’t get yourself to actually sit down and write without what feels like pulling teeth. I would like to blame my lack of leisure time as the main proponent to this issue, but the honest truth is that I hate writing about the stuff I work on. It makes me happy enough to look around my room or on my hard drive and see all the different widgets I’ve made and achievements I’ve accomplished, but I also can’t shake the feeling that I should be documenting everything I work on and that everything I work on needs to have a valid application or to be marketable. “Companies want to see your accomplishments”, they say. “They” being your co-workers, friends, inner-coding circles, etc. For me, social media environments like blogging and the public side of open-source (GitHub) have affected me through some virtual pressure of competition. It is as if that my blog and GitHub is a reflection of my skills and motivation, and by comparison of my blog compared to other tech and developer blogs my worth is measured. But I don’t know… I am just complaining. Sometimes I need to vent, even if it is directed to the Internet. To put it simply, I like making and breaking things, but I just don’t really like talking about it so much.


Transparent Apple Prototypes →


1 Corinthians 13:11 *Fixed

11 When I was a child, I talked like a script kiddie, I thought like a script kiddie, I reasoned like a script kiddie. When I became a man, I put the ways of childhood behind me.


FIX: Simple Bank App Blocking iOS ver. < 7.0.6

This could also be entitled: Prevent losing your jailbreak for apps requiring 7.0.6, after the GOTO fail bug was discovered

*Although, this may not work for every app.

Short version:

1. Install Ryan Petrich’s SSL Patch from Cydia

2. Modify both the ProductBuildVersion and ProductVersion fields in /System/Library/CoreServices/SystemVersion.plist to look like:

<?xml version=”1.0” encoding=”UTF-8”?>

<!DOCTYPE plist PUBLIC “-//Apple//DTD PLIST 1.0//EN” “http://www.apple.com/DTDs/PropertyList-1.0.dtd”>

<plist version=”1.0”>

<dict>

  <key>ProductBuildVersion</key>

  <string>11B651</string>

  <key>ProductCopyright</key>

  <string>1983-2013 Apple Inc.</string>

  <key>ProductName</key>

  <string>iPhone OS</string>

  <key>ProductVersion</key>

  <string>7.0.6</string>

</dict>

</plist>

3. Reboot

Long Version:

After the big GOTO fail, Apple facepalm’d and many app developers responded. At the time 7.0.6 was released, I was still on 7.0.4, was developing Roast, and was testing it on my phone unsigned. Because finals were coming up, I wasn’t really in the position to upgrade, breaking the jailbreak. By the time I was ready to upgrade, 7.1.0 had been release due to Apple’s compulsive desire to release firmware’s with stupid UI modifications that screw up everyone else’s jailbreak fun. Even worse my bank, Simple (Bancorp Bank), had just released a forced update that disallowed users access to their accounts if their firmware was below version 7.0.6. I had to find another way.

My first guess was that the Simple app checked for the firmware version string, which is held in a plist. I edited /System/Library/CoreServices/SystemVersion.plist, replacing the 7.0.4 string with 7.0.6, checked if it registered in Settings.app, and rebooted. This first attempt failed as the Simple.app still rejected any login attempt. 

My second guess was the Simple servers compared incoming non-decrypted connections to check whether they appeared in plain-text. In-order to fix this I knew that I needed some sort of third party SSL library to replace the one Apple fudged on. Thankfully, Ryan Petrich released a SSL Patch on Cydia. I had to undo my changes to the SystemVersion.plist and reboot before I could install the patch. This attempt also failed.

I was nearly stumped until I realized that I had forgotten about spoofing the firmware build number in my first attempt. Looking up “7.0.6 build number” returned the proper results and I changed both the firmware version and build number in the SystemVersion.plist and rebooted, and voila! It worked.