how i entered the jailbreak scene aaron ash @aaronash@aaronash
TRANSCRIPT
I’ve always liked computers...
Popular Tweaks I wrote
Multifl0w Barrel
Tweak making
•It’s not as easy as it looks
•I promise! (always unexpected bugs)
•But it’s also not impossible
•If you work at it, you can do it
How I make tweaks
•Idea
•Hack at it
•Test it
•Share it
•Polish it
•Release it
•Improve it
•I
Idea
•Useful
•Looks cool
•(hopefully both of the above)
•It works well
Sources for ideas
•What can be improved?
•What is annoying?
•What could be given more shine?
•What do people want?
•What do you want?
Hack at it
•class-dump-z the binary
•Hack around with cycript (cycript.org)
•Log stuff to see what’s going on
•Figure out the best places to hook
•Code it (check out Logos/Theos framework by DHowett)
Test it
•Put it on your actual device
•If you can stand it, you’re off to a good start
•If you can’t, try fixing biggest bugs
•If it just won’t work, don’t force it
Share it
•See what your friends think about it
•Show Twitter
•Listen to feedback
Polish it
•Fix as many bugs as you can
•Fix crashes (nobody likes unexpected resprings)
•Double check for memory leaks
•First impression might be your only impression
Release it!
•Write up a clear description
•Maybe make a website
•Submit to a repo (I prefer BigBoss)
Improve it
•Tweet about it on release
•I normally make a YouTube video demonstrating the tweak
•Squash any bugs you missed
•Add features users request
•Repeat! Have fun
Multifl0w
•I had an iPhone, wanted to make stuff
•Was <18, couldn’t join Apple’s program
•Solution: jailbreak!
•Friend in high school had a Palm Pre
•I thought its “cards multitasking” was cool
•Why didn’t iPhone OS have it?
•“hmm, I could try making that”
•Problem: Didn’t have a mac (or money)
•Solution: Install SDK on windows!
•Problem: Couldn’t figure that out
•Solution: Install SDK on linux!
•Instructions are on saurik.com, couldn’t be that hard right?
•Problem: Couldn’t figure that out either (but I think I got close)
•Solution: need to research more...
•Answer: install toolchain on device!
•I used Notepad++ on Windows 7 RC
•Used WinSCP to autosync files and compiled on device through SSH
•Problem: Very little documentation on MobileSubstrate and/or examples + explanation
•Solution: check out open source projects, just keep hacking away at it...
It (kinda) works!
Made a video, put it on YouTube
•Got lots of attention
•Felt lots of pressure to release it
•So I did...
•But I should have waited. It could have used more work.
•Gizmodo article!
•Posts on almost all jailbreaking sites
•Engadget article
•got invited to “the cool” IRC channel
•It’s all good!
•Few weeks later, phone starts ringing...
•Caller ID says “Palm, Inc.”
•uh oh...
How my jailbreak time is normally spent
(estimated)
Icon effects
Barrel!
Barrel
•I wanted to make SpringBoard more fun
•Inspired by Compiz/Beryl
•Made mostly in my Econ class
How it works(in a nutshell)
•Hooks -(void)setContentOffset:(CGPoint)offset
•Calculates percentage between pages
•Uses CATransform3D to retain frame positions
Popular modes
Tweaks that didn’t make the cut
Icon Stack
Icon Stack
Icon Spiral
Multifl0w concepts
Questions?Aaron Ash @aaronash