NSConference is an iOS developer community conference.
The presentations are more developer and designer oriented instead of business.
The programme was divided between session ( the main presentations), blitz talks ( smaller/faster presentations) and workshops where you can talk with the experts of one of the core techs
Bellow you can view the conference program and my notes for each presentation. I have highlighted some of the more interesting presentations ( red for coders, green for ux/ui)
DAY 1
Session 1 10:30-11:00 Opening Keynote (Scotty)
General presentation of the app
Blitz Talk A 11:07-11:22 Five sure-fire ways to sabotage a release (Kevin Hoctor)
– Money Well app owner/boss
– Money Well 2.0 took 4 years to develop
– A lot of mistakes where done
– Here are the errors he mande on the way (lessons):
– Announce future releases/features (Keep your mouth shut)
– Canibalize new features in free releases ( Don’t give away code)
– Rewrite all code ( Don’t rewrite functional/good code just becouse you feel like it)
– Do documentation last (Build documentation and code together)
– Extend Crunch Time for Months! (Don’t do it, maximum a couple of weeks)
Session 2 11:30-12:00 Patterns & Techniques For Cross-Platform Objective-C Code (Graham Lee)
– Strategy Pattern, One interface several implementations for each platform
– Cross plataforms compilers
– Gnu Step (shell only, all platforms)
– Cocoa Tron ( module for XCode, only 2 plataforms)
Blitz Talk B 12:07-12:22 Open Source Home Automation with Open Remote (Eric Bariaux)
– Talked about an open source plataform for home automation
– Try to push the standard to developers and tell him to avoid provider lock in.
Session 3 12:30-13:15 Know Your Tools (Nathan Eror)
– A lot of tips about XCode
– Keyboard shortcuts
– Custom Behaviors ( Shorcurts for code only views and others)
– Custom Breakpoints ( can avoid a lot of logging in code)
– Use Keynote to customize animations (it shares the same animation engine and effects as the ios)
– DIY
– script files to delete db files, launch then when building.
– script for rescaling of images to lower formats
– Automator for renaming files.
– Your body is your best tool ( sleep/eat well/exercise)
Session 4 1415-14:45 Being a Subject Matter Expert (Marcus Zarra)
– Bussiness models
– Write you own apps
– Write for others
– Solve domain tech problems ( CoreData, OpenGLES, Network, Audio)
– Tools: Github, BoxCard
– Payments tips:
– Payment first – source code after
– Payment first – app submited to store after
– If conflitct call Apple and tell them that the app infriges code copyrights
– Apple will take app out of the store until an agreement is made
Blitz Talk C 14:52-15:07 Dealing with a race condition (Jakob Egger)
– Didn’t see because I was networking with the previous speaker.
Session 5 15:15-15:45 You Too Can Speak Unicode (Ross Carter)
– Very geek talk about unicode strings!
Blitz Talk D 15:52-16:07 A Case Study in Storyboards (Martin Winter)
– An example of an full app developed using storyboards
– Good for initial storyboards.
– Big nib files!
– iOS 5 only
– it crashes
– can lead you to a lot of repeated code.
– Use categories for view dismissal
Session 6 16:15-16:45 Not Another Design Talk (Drew McCormack)
– Code Design
– Organize your views like this: View 1 -> View 2 -> Window -> VC1 -> VC2
– Create a Model Controlle for all your model operations, avoid to put model code inside view events.
– UX Design
– Optimizing for one type of user always make it worst for other users
– Use the iceberg principle ( show only a small part of your app on the beginning and then build from it)
– Graphical Design
– Contrast, Repitition, Proximity
– Good Book: The non-designers designers book
Blitz Talk E 16:52-17:07 Core Data Bit Me (Frédéric Sagnes)”
– Problems with core data, things to be carefull about
– Relationships (can cause faults even in simple operations)
– Trafeods betweens CoreData/SQLite/Plists
Session 7 17:15-18:00 WWSJD (Mike Lee)
– Talking about Steve Jobs live
– Didn’t like the book, nobody like it
– Its all about good products
– Is writing is own book about Jobs!
DAY 2
Session 8 10:30-11:15 Think Organic. (Tim Isted)
– Grown you apps slowly and
organic
– Don’t try do it all in one go.
– Listens to the users feedback.
– First impressions matter!
– Funny examples with music
Blitz Talk F 11:22-11:37 How to successfully sell iOS frameworks (Peter Steinberger)
– The speaker sell a iOS framework PSPdfKit, an PDF parsing library.
– How to promote the library:
– StackOverflow – answers framework related problems, and point to your library
– Twitter
– How to sell it:
– Don’t use PayPal ( a lot of issues with it)
– Use FastSpring ()
– Give users different choices:
– binary only
– binary and code
– special hard to implement features, propose a price to do it and wait to see if someone buys it!
– Automate all your build process
Session 9 11:45-12:15 KVO Behind the Magic Curtain (Danny Greg)
– How to implent KVO/KVC
– Check <objc/runtime.h> and see the “magic” methods
– obj_callocateClassPair() -> creates a new class
– class_copyMethodList() -> copy methods
– method_setImplementation() -> change method implementation
– IMP? function (id self, SEL _cmd, id newValue)
– object_setClass() -> change class of an object
Blitz Talk G 12:22-12:37 Enhancing Early Years Education with Speech Recognition (Emily Toop)
– A lot of kids with iPads
– Some nice apps out there: Booksy for Tiptap
– Some APIs out there Dragon/Siri/Google Voice/CMU Sphinx
– They are not optimized for kids speaking
– missing letters
– saying silence letters
– stoping in the beggining of words or breaking words in parts
– TinyEars is an API/project that tries to takles this problems
Session 10 12:45-13:15 Backstage Awesome (Jeff LaMarche)
– General recomendations to make your code easy to read and support
– Use good class, method, variables names instead of a lot of comments
– Only use comments to explain the “strange”/unusual code
Session 11 14:15-14:45 Consuming RAILS services from iOS (Matt Long)
– Missed it because I was in CoreData workshop
Blitz Talk H 14:52-15:07 The grown-up way to build and distribute iOS apps (Martin Reichart)
– Missed it because I was in CoreData workshop
Session 12 15:15-15:45 How to Create a Successful App (Michael Simmons)
– Missed it because I was in CoreData workshop
Blitz Talk I 15:52-16:07 iOS 5 Skinning: Make your Apps Lickable! (Nik Kuh)
– Missed it because I was in CoreData workshop
Session 13 16:15-16:45 Tools and Editors (Dave Addey)
– NSPredicateEditor (Mac editor for CoreData objects)
– Chameleon
– MacMapKit ( port of map kit to Mac OSX)
– Use GameKit to syncornize between simulator and devices
– Use NSFileManager to sync files between Mac and iOS simulator
Blitz Talk J 16:52-17:07 DEVONimboEverPad (Simon Wolf)
– Talk about how organize your notes worflow
– Talked a lot about Evernote
Session 14 17:15-18:00 Understanding the Medium (Aral Balkan)
– Talk about of user exprience
– Show a lot of UI mistakes
– Finished with examples of QRCode fails
– Organizer of the Update conf.
Session 15 10:30-11:15 Design Considerations for Educational Apps (Fraser Spiers)
– Teacher in an school in Scotland where all the kids have an IPad, provided by the school
– Avoid constant push notification in your app ( imagine all your kids receiving notifications at the same time during the class)
– Avoid buy buttons in you app, specially with names like “more fun”
– Avoid inApp buy ( hard to update content to all users)
– Don’t lock the content inside your app, allow to export to email/pdf/dropbox at least.
– If you do multiplayer test in scenarios with more than 16 devices in one room
– Don’t depend on youtube for video content, normally is blocked on school devices.
– Facebook, Twitter integrations also blocked on school device
– Don’t beg for stars, the kids cannot do it
– Do audio and text localization for the areas ( remember of the Gov. funding for localized apps in Wales and Scotland)
– Do easy apps where the level of dificulty grows slow, remember they are kids.
– Don’t ask for shaking
– Be carefull with the language you use in the app, kids joke with everything
– Lookout for ads in your app (what kind of content will be display in the adds?)
– Do guides for parents/teaches in how to use your app for teaching
– Support photo apps integration, makes sharing workflow easy.
– See IWork as an example of UI
– User AirPlay and AirStream, makes easy to show content to all class
– fraserspiers.com
Blitz Talk K 11:22-11:37 Automated UI testing using the Calabash framework (Miklas Saers)
– Demonstration of the Calabash test framework
– Allows user interface testing trough the use of accesibility features
– LessPainfull, a company that does testing for third parties in several devices using Calabash scripts
Session 16 11:45-12:15 Making Broad Decisions and Narrow Promises (Guy English)
– General talk about optimizations
Blitz Talk L 12:22-12:37 An introduction to localising your first app (Robert Lo Bue)
– Localization increases visibility fo you apps in countries stores
– Linguan – http://www.cocoanetics.com/apps/linguan/
– iLocalize – http://www.arizona-software.ch/ilocalize/
– Use a good UTF-16 compatible editor (Ex: BBEdit, TextMate, …)
– Don’t wait for the end to localize your app
Session 17 12:45-13:30 Core Data & iCloud (Daniel Pasco)
– Using Core Data and iCloud presents a lot of chalenges
– All mechanism is based on transaction logs between devices
– Delete of the database isn’t notified to the app
– Migrate in and out of an iCloud Core Data is easy.
– All the changes in an database are sync, there is no way to filter by fields or tables.
– You can create two db one sync to icloud and the other not.
– Get a second machine/device to check the syncronization
– Use this app key to see log messages:
– com.apple.coredata.ubiquity.loglevel 3
– If things get corrupted delete the database
– On Mac: rm -rd ~/Library/Containers/your.appid
– On iOS: delete app
– You can’t detect or be notified to:
– new data is available.
– or data is arriving and if its finished
– detect if something got corrupted
Session 18 14:30-15:15 Real World User Experience (Matt Gemmell)
– User exprience Talk
Blitz Talk M 15:22-15:37 Runtime Foolery (Saul Mora)
– More examples of using runtime.h
Session19 15:45-16:30 The Cocoa Rumble (Scotty & Guests)
– Funny stuff
Summary
Good conference regarding iOS development, if attending you should consider to stay in the conference hotel all 3 day. You will get to know the people in the community and get more inside knowledge.
Leave a Reply