iPhoneer Blog

October 13, 2009

Steps that worked for me to jailbrake my iPhone 3G 3.1.2 using #blackra1n

3G support in Blackra1n is "flaky", as GeoHot himself said on Twitter.
I tried several times and following different procedures described in related forums, but I always ended with the iPhone in recovery mode.

Until I found a sequence that worked for me in this post :
  1. Plug the iPhone in the computer.
  2. In iTunes uncheck the option "Automatically sync this iPhone when connected".
  3. Close iTunes.
  4. Optional: Several posts recommend to kill the iTunes/iPod processes, but I didn't see a difference doing this.
  5. Start Blackra1n and press the button "Make it rain".
  6. You should see the iPhone going to recovery mode (USB and iTunes logo) and Blackra1n changing to "Running". If you see this for more than 30 seconds then the process has failed. This is what happens on iPhones 3G.
  7. Close Blackra1n.
  8. Start Blackra1n again, but DO NOT press the button.
  9. Hold Power and Home buttons on your iPhone. Don't release the buttons, you must see the screen going black,
  10. After some seconds you must see the Apple logo, release the Power button, holding the Home button.
  11. Don't release Home button, you must see the recovery mode logo (USB + iTunes) and then press "Make it rain" in Blackra1n.
  12. Almost immediately you should see the GeoHot image instead of the Recovery mode logo.
  13. Release the button, and wait for the process to finish. Once the iPhone rebooted you'll see the Blackra1n app to install Cydia or RockApp.
This worked for me,
Good luck!

July 5, 2009

Deming Cycle and Software » Six Sigma + CMMi + PSP/TSP

Often I've been asked on how the quality methodologies used in software are related among them. For instance, talking about Six Sigma, CMMI and PSP/TSP.

My answer is always related to Deming Circle. Deming circle is an iterative problem-solving and quality-improvement process consisting in four steps: Plan, Do, Check, Act.

In software, we use the no-physical characteristics of the products we create as an excuse to not follow an industrial practice, "Why should I care about a free-defect product when fixing it is almost free??" But it is not free, and we must use a proven practice to ensure the little defects injected in design and code don't increase the product price and schedule.

The Deming Circle consists of (from wikipedia):

PLAN
Establish the objectives and processes necessary to deliver results in accordance with the specifications.
DO
Implement the processes.
CHECK
Monitor and evaluate the processes and results against objectives and Specifications and report the outcome.
ACT
Apply actions to the outcome for necessary improvement. This means reviewing all steps (Plan, Do, Check, Act) and modifying the process to improve it before its next implementation.

As you can see, this can be easily mapped to a common development practice. But that not always happen in real life. And when a methodology is followed, it's not always at all levels, meaning some developers don't understand how the quality of the code they produce affects the entire product.

Six Sigma uses industrial practices and tools to follow this improvement circle. In a typical DMAIC process you Define what are you trying to improve, then you define a way to Measure the process status, you Analyze the gathered metrics, then decide what to Improve and, finally, you Control the process to ensure the improvement doesn't fade away.

The problem here is that Six Sigma is generic, what makes it feasible to use in any industry, but not always the ideal tool on a given one, like the software industry. In our case we need first to define a way to measure the software process and then tailor the statistical methods.

With CMMI we have an improvement quality framework for software. For different process areas we can improve using practices from a set of defined maturity levels. First we need to Manage our process, then we are able to Define it for organizational use, once defined we can Quantitatively Manage it using statistical tools, and, finally, use all this data to Optimize it.

The problem is that these practices are relatively easy to deploy for departments, groups of projects, and project managers, but very difficult to find a practical usage in a developer daily work. I, a programmer in a CMMI-5 project, may not know how to apply the available quality tools on the lines of code that I need to write right now.

And here is where PSP and TSP can help us to apply the quality philosophy on a person level. PSP ensures every individual has the basic skills for estimating, planning, quality managing and measuring his/her development process. TSP launch is a set of planning sessions that ensures every one in the project agrees on what is needed to do, how to do it, and what is the plan to follow. During project execution we use TSP Managing to ensure the plan and process is followed, to monitor and evaluate project performance, and to improve individual and team processes and support artifacts.

May 15, 2009

Bruce Schneier on Online Privacy

http://tinyurl.com/pnv8vq

The courts need to recognize that in the information age, virtual privacy and physical privacy don't have the same boundaries. We should be able to control our own data, regardless of where it is stored. We should be able to make decisions about the security and privacy of that data, and have legal recourse should companies fail to honor those decisions. And just as the Supreme Court eventually ruled that tapping a telephone was a Fourth Amendment search, requiring a warrant -- even though it occurred at the phone company switching office and not in the target's home or office -- the Supreme Court must recognize that reading personal e-mail at an ISP is no different.

May 7, 2009

Restoring iPhone Apps Icons positions

During this period of multiple iPhone OS3.0 Betas, we need to update iPhone OS almost weekly. But the most annoying outcome is a completely scrambled springboard screens. In my case, I have 110 iPhone Apps, and the iPhone lack of categories and folders, leaves me with the springboard screens as the only way to arrange application icons (without jailbreaking).

It requires at least fifteen minutes after every restore to leave the app icons as they were before the update.

But keeping previous arrangement is actually pretty easy, you only need to restore from your backup twice:


  1. Sync and Backup before updating.

  2. Update iPhone OS

  3. When asked, choose the backup from step 1

  4. After the restore finishes (at least 1 hour if you have many apps and music), ^+click (or right-click) your iPhone on the device list and select “Restore from backup...”

  5. Choose the backup from step 1, again, and voilá, when it is done (this time is faster), the springboard icons are arranged just as before the update.

April 26, 2009

Storing sensitive information on iPhone

I come from a Palm world where I used YAPS to store sensitive information, instead of masking notes as privates because that way you had specific fields depending on the type of note you wanted (Bank info, ATM, SSN, etc).

Now with the iPhone I use this webapp: http://passvault.ktomics.net

I like it because:
- It's easy to use and really fast since it's formatted for the iPhone.
- It has templates and categories as YAPS had.
- You can add the page as an icon on the iPhone as any app.
- You can access your data from any online computer, so you don't need to worry about losing your data if you lose or misplace your iPhone.

Anyway, you must consider that all your sensitive data is stored online, so carefully read the conditions of the service and their online FAQ.

April 23, 2009

Flock Social Browser

I recently started to use Flock, a browser focus on easily connect to popular social and sharing services just as facebook, youtube, and blogger.

It’s a great idea, once you configured the supported accounts (with the exception of LinkedIn I could find the services I use the most), you can use sidebars to receive latest updates and to upload and share new content.

But yesterday I had a problem and the browser started blank, with all services and sidebars empty. Looking at GetSatisfaction.com I found a tip on deleting de sqlite configuration file, after that the services are fill again but the accounts are not configured, so I still thinking on going again, or not, through the accounts configuration procedure.