Mobile Development for COS216 @ Bethel University

552 views
508 views

Published on

Aaron Kardell's presentation on mobile development for the COS216 data structures class

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
552
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Mobile Development for COS216 @ Bethel University

    1. 1. Mobile Development (iOS Emphasis)for Bethel COS216 Aaron Kardell April 20, 2011
    2. 2. Agenda • Background • Smartphone Platform Overview • iOS Development Tools & Program Overview • iOS Development Tutorial • Additional Resources • Career • Question & AnswerTwitter: @akardellakardell [at] gmail.com
    3. 3. My Background • Bethel graduate (2002); Serial Entrepreneur • Altona Ed -> sold to Pearson • World Conquest -> sold to SGN • iGarageSale • • Locate My DealTwitter: @akardellakardell [at] gmail.com
    4. 4. Mobile Platform Overview • Smartphone Platforms in the US: Platform Language Notes Objective C requires ramp up time - iOS Objective C especially syntax and memory management Android Modern Java* Easiest for Java developers to get started on Weak SDK tools & libraries; Likely deprecated BlackBerry J2ME for new BlackBerry platform in 2012 Easy to develop for; lacks broad market Windows Phone 7 Silverlight / .NET adoption, but appears to have traction Palm webOS HTML / JavaScript Lacks broad market adoptionTwitter: @akardellakardell [at] gmail.com
    5. 5. iOS Development Options • Xcode - standard Need to use / learn Objective C • Other cross-platform options** • Appcelerator Titanium - JavaScript driven, native controls • Rhodes - Ruby • PhoneGap - HTML / JavaScript driven • Corona - Lua based / Flash-like • Flash via CS5(???)Twitter: @akardellakardell [at] gmail.com
    6. 6. iOS Developer Program • http://developer.apple.com/ios/ • Required to deploy apps on devices • $99 / year standard • $299 / year enterpriseTwitter: @akardellakardell [at] gmail.com
    7. 7. iOS Developer Program • Gatekeeper / rejected appsTwitter: @akardellakardell [at] gmail.com
    8. 8. App RejectionTwitter: @akardellakardell [at] gmail.com
    9. 9. App RejectionTwitter: @akardellakardell [at] gmail.com
    10. 10. Tutorial • Show top rated Italian restaurants near me using MapKit and Yelp API’sTwitter: @akardellakardell [at] gmail.com
    11. 11. Tutorial • What you’ll need: • iPhone SDK http://developer.apple.com/iphone/ • json-framework - http://code.google.com/p/json-framework/ • Need developer API key from Yelp - http://www.yelp.com/developers/Twitter: @akardellakardell [at] gmail.com
    12. 12. Tutorial • Tutorial broken down into seven goals • We’ll move quickly - catch up at: http://cdn.igaragesaleapp.com/COS216IPhone.zipTwitter: @akardellakardell [at] gmail.com
    13. 13. Tutorial • Goal #1: “Create a project”Twitter: @akardellakardell [at] gmail.com
    14. 14. Tutorial • Goal #2: “Show a map control in the app”Twitter: @akardellakardell [at] gmail.com
    15. 15. Tutorial • Goal #3: “Zoom map into a fixed point”Twitter: @akardellakardell [at] gmail.com
    16. 16. Tutorial • Alt / option key + double-click on an object name for help • When in doubt, look for SDK examples for given objectsTwitter: @akardellakardell [at] gmail.com
    17. 17. Tutorial • alloc + retain = releaseTwitter: @akardellakardell [at] gmail.com
    18. 18. Tutorial • Goal #4: “Zoom map into current location”Twitter: @akardellakardell [at] gmail.com
    19. 19. Tutorial • Delegate: assign an object that implements a protocol to receive notifications / callbacks • Protocol: similar to an interface in Java / C# nomenclatureTwitter: @akardellakardell [at] gmail.com
    20. 20. Tutorial • Goal #5: “Query Yelp when map boundaries change”Twitter: @akardellakardell [at] gmail.com
    21. 21. Tutorial • Goal #6: “Update map with annotations from Yelp results”Twitter: @akardellakardell [at] gmail.com
    22. 22. Tutorial • Goal #7: “View details for each annotation”Twitter: @akardellakardell [at] gmail.com
    23. 23. Additional Resources • Websites • Stack Overflow • Google Group – iphonedevmn • Hacker News / Y Combinator • Local User Groups - Twin Cities • CocoaHeads • Mobile Twin Cities • Lean Startup MeetupsTwitter: @akardellakardell [at] gmail.com
    24. 24. Career • Look to differentiate your skills • Combine deep knowledge in a couple areas with broad exposure to many • Consider pros / cons of small vs. large company • You may have to switch jobs twice in the first 6 years of your career to reach market salary (but tread carefully)Twitter: @akardellakardell [at] gmail.com
    25. 25. Career • Future of resumes: • Diminishing value of paper resume • Value in demonstrating what you’ve done, e.g.: •Open source project contributions •github repositories •Stack Overflow questions answered •Contributions to sites like Hacker NewsTwitter: @akardellakardell [at] gmail.com
    26. 26. Career • Seek companies where you can continue to learn on the job; ask about their: • Development process • Design process • Documentation & testing standards • Working in teams • How are roles & responsibilities split? • Opportunities for continued learning? e.g. conferences, classes, etc.Twitter: @akardellakardell [at] gmail.com
    27. 27. Question & Answer • More questions? akardell [at] gmail.com 651-308-4030Twitter: @akardellakardell [at] gmail.com

    ×