Dave’s List: Training Resources…

This post focuses on training resources for iOS and Mac OS X. If you have any suggestions, please post a comment with your adds. Periodically, I’ll fold the suggestions into the main list.

NOTE: There are other posts relating to this one, including one post on Apple dev tools, and another covering Apple’s Documentation, Mailing Lists, Discussion Forums, Web Sites, Blogs, and Conferences. I will eventually break each section into its own separate post.

Of course, please do follow me on Twitter (@davemark). As you make your way through this list, please let me know if I’ve missed any important, active Cocoa or Cocoa Touch resources or if any of these links are bad or no longer in use. Enjoy!

Training Resources

There are lots of training resources out there. These first few were suggested by Jon Flanders. You can follow Jon on Twitter at @jonflanders. Thanks, Jon!

Online:

http://www.learnnowonline.com/appdev/courses
http://tekpub.com/
http://www.pluralsight.com/training/Courses#ios (This is where Jon Flanders works)
https://www.udemy.com/the-art-of-real-ios-programming/
http://www.lynda.com/iOS-training-tutorials/413-0.html
http://teamtreehouse.com/library/ios-development

On-site:

http://www.bignerdranch.com/training


Dave’s List: Apple Dev Tools…

This post focuses on dev tools for iOS and Mac OS X. If you have any suggestions, please post a comment with your adds. Periodically, I’ll fold the suggestions into the main list.

NOTE: There are other posts relating to this one, including one post on training resources, and another covering Apple’s Documentation, Mailing Lists, Discussion Forums, Web Sites, Blogs, and Conferences. I will eventually break each section into its own separate post.

Of course, please do follow me on Twitter (@davemark). As you make your way through this list, please let me know if I’ve missed any important, active Cocoa or Cocoa Touch resources or if any of these links are bad or no longer in use. Enjoy!

Tools

These tools are just some of the many. The little writeups are my edits of copy I pulled from the product site, not necessarily my opinion. Also, the tools are presented in alphabetical order. I think every one of these tools is worth exploring.

Briefs: Lifeless mockups don’t tell the entire story, but you don’t have time to build a prototype. Create a brief and you can hand your designs to people in a way they can play with. You can quickly incorporate their feedback and create new iterations quickly for them to retest. Build a mockup with Briefs, share the mockup with your clients.

http://giveabrief.com

Charles Web Debugging Proxy: Charles is an HTTP proxy / HTTP monitor / Reverse Proxy that enables a developer to view all of the HTTP and SSL / HTTPS traffic between their machine and the Internet. This includes requests, responses and the HTTP headers (which contain the cookies and caching information).

http://www.charlesproxy.com

Dash API Documentation Browser, Snippet Managaer: Dash is an API Documentation Browser and Code Snippet Manager. Dash stores snippets of code and instantly searches offline documentation sets for 80+ APIs. You can even generate your own docsets or request docsets to be included.

http://kapeli.com/dash

Deploymate: We’ve all been there. Your app is targeting an older OS version and you have used an API introduced later than your target OS. Xcode didn’t warn you about it, did it? Now your app crashes. Deploymate helps you identify unavailable, deprecated and obsolete API usage in your Xcode projects.

http://www.deploymateapp.com

Kaleidoscope: Use Kaleidoscope to spot the differences in text, images, and folders. Review and merge changes in seconds.

http://www.kaleidoscopeapp.com

Reflector: Have you ever wanted to see your iPhone or iPad on a larger screen? Reflector lets you play games, watch movies, demo apps or present to your computer from your iPhone or iPad. Everything you do on the device is shown on the computer screen, wirelessly.

http://www.airsquirrels.com/reflector/

Reveal: Reveal lets you see your application’s view hierarchy at runtime, debug view layout and rendering problems in seconds. Edit and modify views in your running application to see the effect immediately without recompiling.

http://revealapp.com

Tower Git Client: Powerful Git Client offers single line staging, submodule support, file history. They offer a 30-day free trial.

http://www.git-tower.com

Xscope: Brought to you by the folks at Iconfactory, Xscope is a powerful set of tools that are ideal for measuring, inspecting & testing on-screen graphics and layouts. Works with Retina Display!

http://xscopeapp.com


Resources for Mac and iOS Developers…

I was working on an article for Jim Dalrymple (@jdalrymple) and Loop Magazine (http://appstore.com/TheLoopMagazine). The topic? Getting started with Mac and iOS development.

I went looking for a reasonably recently updated list of dev resources to link to from the article. Couldn’t find one I was happy with, then remembered that we included a pretty solid list at the end of the book Beginning iOS 6 Development. Since that list needed to be updated for the iOS 7 rev of the book, I thought, why not pop the list into a blog post. And here we are.

At its core, programming is about problem solving and figuring things out. It’s fun, and it’s rewarding. But, at times, you will run up against a puzzle that just seems insurmountable—a problem that appears to have no solution. In those situations, it’s good to have friends in high places. This post outlines some resources you can turn to when you’re in a bind.

I also posted a separate list of dev tools right here and a another post listing training resources right here.

Of course, please do follow me on Twitter (@davemark). As you make your way through this list, please let me know if I’ve missed any important, active Cocoa or Cocoa Touch resources or if any of these links are bad or no longer in use. Enjoy!

Apple’s Documentation

Become one with Xcode’s documentation browser, grasshopper. The documentation browser is a front end to a wealth of incredibly valuable sample source code, concept guides, API references, video tutorials, and a whole lot more.

If you are just getting started with Mac or iOS development, here are a few places I would look through, some excellent foundational material.

Building for iOS: A terrific introduction to the process of building an iOS application.

https://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOS/
chapters/RM_YourFirstApp_iOS/Articles/01_CreatingProject.html

Building for Mac OS X: This tutorial takes you on a tour of the Mac OS X development process.

https://developer.apple.com/library/mac/#referencelibrary/GettingStarted/RoadMapOSX/
chapters/01_Introduction.html

Objective-C: This is the official Apple Objective-C documentation. If you are new to development, you might want to read a book for beginners before you dig into this documentation. But definitely dig into this documentation at some point. It is very well written and contains some very important detail that will complement any beginner book you read.

https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/
ProgrammingWithObjectiveC/Introduction/Introduction.html

Xcode: This is Apple’s official Xcode user’s guide. There’s a lot to dig into here, so you might start by clicking around the document, just to get an idea of what areas are covered so you can make your way back as you dig into Xcode.

https://developer.apple.com/library/mac/#documentation/ToolsLanguages/Conceptual/
Xcode_User_Guide/000-About_Xcode/about.html


Mailing Lists

You might want to sign up for these handy mailing lists:

Cocoa-dev: This moderately high-volume list, run by Apple, is primarily about Cocoa for Mac OS X. Because of the common heritage shared by Cocoa and Cocoa Touch, however, many of the people on this list may be able to help you with iOS questions as well. (Do make sure to search the list archives before asking your question.)

http://lists.apple.com/mailman/listinfo/cocoa-dev

Xcode-users: Another list maintained by Apple, this one is specific to questions and problems related to Xcode.

http://lists.apple.com/mailman/listinfo/xcode-users

Quartz-dev: This is an Apple-maintained mailing list for discussion of the Quartz 2D and Core Graphics technologies.

http://lists.apple.com/mailman/listinfo/quartz-dev

IPhone SDK Development: Another third-party list, this one is focused entirely on iOS development. You’ll find a medium-sized community here, with a nice cast of regulars.

http://groups.google.com/group/iphonesdkdevelopment

Realtime Chat

If you are at all a fan of Internet Relay Chat, you no doubt know all about http://freenode.net. If you are new to IRC, start by reading the FAQ. Once you register an IRC nickname, you’ll want to join a channel. Before you get started, be sure you’ve read the FAQ (did I mention the FAQ yet?) and you should also take a moment to read Mike Ash’s most excellent Getting Answers blog post. Here’s a starter channel list:

#macdev: Founded on the EFNet IRC network around 1993, #macdev is one of the oldest IRC channels dedicated to Mac-related development.

#iphonedev: Another IRC channel, this one dedicated to iOS Development.

#coreaudio: And another channel for development using Core Audio.

Discussion Forums

These discussion forums allow you to post your questions to a wide range of forum readers:

Learn Cocoa Forum: This is the official forum for books like Learn Cocoa on the Mac and Beginning iOS Development. It features an active, vibrant community with both beginners and experienced developers.

http://forum.learncocoa.org

Cocoa Cafe, France: This is a French Cocoa discussion forum. In French. :)

http://www.cocoacafe.fr

Apple Developer Forums: This is a web forum set up by Apple specifically for discussing iOS and Mac software development. Many iOS programmers, both new and experienced (including Apple engineers and evangelists), contribute to these forums. It’s also the only place where you can legally discuss issues with prerelease versions of the SDK that are under nondisclosure agreements. You’ll need to sign in with your Apple ID to access these forums.

http://devforums.apple.com

Apple Discussions, Developer Forums: This link connects you to Apple’s community forums for Mac and iOS software developers:

http://discussions.apple.com/category.jspa?categoryID=164

Apple Discussions, iPhone: This link connects to Apple’s community forums for discussing the iPhone:

http://discussions.apple.com/category.jspa?categoryID=201

Web Sites

Visit these web sites for helpful coding advice:

CocoaHeads: This is the site of a group dedicated to peer support and promotion of Cocoa. It focuses on local groups with regular meetings where Cocoa developers can get together, help each other out, and even socialize a bit. There’s nothing better than knowing a real person who can assist you, so if there’s a CocoaHeads group in your area, check it out. If there’s not, why not start one?

http://cocoaheads.org

CocoaHeads.tv: This is a collection of videos from some CocoaHeads groups.

http://cocoaheads.tv

NSCoder Night: NSCoder Nights are weekly, organized meetings where Cocoa programmers get together to code and socialize. Like CocoaHeads meetings, NSCoder Nights are independently organized local events.

http://nscodernight.com

Seattle Xcoders: Seattle Xcoders are an alternative to CocoaHeads and NSCoder Night for folks who live in or near Seattle. Two meetings a month alternate between west side (Seattle) and east side (usually Redmond).

http://seattlexcoders.org

Stack Overflow: This is a community Q&A site targeted at programmers. Many experienced iOS programmers hang out here and answer questions.

http://stackoverflow.com

Apart from accessing the main site, you may also want to use tags to browse topics relevant to iOS developers:

http://stackoverflow.com/questions/tagged/objective-c

http://stackoverflow.com/questions/tagged/iphone

http://stackoverflow.com/questions/tagged/xcode

http://stackoverflow.com/questions/tagged/ios

Objective-C Stack: Twitter user with a fee of questions from StackOverflow.

https://twitter.com/ObjectiveCStack

MacForge: MacForge is a web site dedicated to Mac-specific open source projects brought to you by the folks who created MacTech Magazine. A brilliant resource.

http://macforge.net

iDeveloper TV: This is a great resource for in-depth video training in iOS and Mac development, for a price. It also contains some nice, free video content, mostly from NSConference (listed in the “Conferences” section of this chapter), which is run by the same people behind iDeveloper TV.

http://ideveloper.tv

Cocoa Controls: Here, you’ll find a huge range of GUI components for both iOS and Mac OS X. Most of them are free and open source. These controls can be useful as is or as examples for further learning.

http://cocoacontrols.com

NSHipster: This site’s slogan says it all: It’s “a journal of the overlooked bits in Objective-C and Cocoa.” You can learn about a whole slew of underused pieces of our favorite frameworks here.

http://nshipster.com

iOS Fonts: Love this site. A detailed list of fonts available on iOS, organized by iOS release number. So good!

http://iosfonts.com

Blogs

If you still haven’t found a solution to your coding dilemma, you might want to read these blogs:

Matt Gemmell’s blog: Matt has a lot of experience and a lot of strong opinions about development in Objective-C. We think these opinions are usually right, and always worth paying attention to.

http://www.mattgemmell.com

Cocoa is my Girlfriend: This is a group blog, spearheaded by Marcus Zarra, focusing on iOS and Cocoa development issues. These guys cover a wide range of topics useful to everyone working in this corner of the field.

http://cimgf.com

Ray Wenderlich’s blog: Ray’s site has expanded so much it can hardly be described as a blog at all anymore, but we’re putting it here anyway! This is a fantastic resource for iOS developers, full of tutorials on a wide range of topics. Much of this content is directed toward game developers, but there’s really something for everyone here.

http://www.raywenderlich.com

Wolf Rentzsch’s blog: Wolf is an experienced, independent Cocoa programmer and the founder of the (now defunct) C4 independent developers’ conference.

http://rentzsch.tumblr.com

iDevBlogADay: This is a multiauthor blog, whose authorship rotates daily among several indie developers of iOS and Mac software. Follow this blog, and you’ll be exposed to new insights from different developers every day.

http://idevblogaday.com

Wil Shipley’s blog: Wil is one of the most experienced Objective-C programmers on the planet. His Pimp My Code series of blog postings should be required reading for any Objective-C programmer.

http://blog.wilshipley.com

Jeff LaMarche’s blog: Jeff is one of the founders of MartianCraft, founder and co-author of the Beginning iOS Development book series, and one of the most knowledgable developers I’ve ever had the pleasure to know. Read anything he writes.

http://iphonedevelopment.blogspot.com

@ObjectiveC on Twitter: The @objectivec Twitter user posts about new Cocoa-related blog posts. It’s worth a follow.

http://twitter.com/objectivec

Mike Ash’s blog: Mike is “just this guy, you know?” This RSS feed presents Mike’s collection of his ongoing iOS Friday Q&A.

http://www.mikeash.com/pyblog/

Joe Conway’s blog: Joe was a long time part of Big Nerd Ranch and his blog is chock full of useful iOS/Cocoa code and tips. BTW, Joe, I like your WordPress theme. Very clean.

http://thejoeconwayblog.wordpress.com

objc.io: This newsletter was founded in Berlin by Chris Eidhof, Daniel Eggert, and Florian Kugler. It’s new (as of this writing), so it’ll be interesting to see where it goes.

http://objc.io

iOS Developer Tips: John Muchow started the blog back in 2008 when the iPhone was first announced. It was one of the first blogs dedicated to developers writing applications for the iPhone. A fantastic resource, one of my new favorite reads.

http://iosdevelopertips.com

Gregory Hill’s Blog: iOS Dev Gregory Hill created a series of iOS dev posts, most recently on the localization process. Keep ‘em coming, Greg!

http://blog.appliedis.com/author/gregory-hill/

iOS Dev Weekly: This newsletter, put together by Dave Verwer, comes to your email inbox once-per-week. Full of useful links.

http://iosdevweekly.com

Developer Podcasts and Screencasts

Thanks very much to Kirschen Seah for starting this list of developer podcasts. Got any more? Add a comment, I’ll fold it into the list.

Core Intuition:

http://www.coreint.org/podcast.xml

Debug:

http://feeds.feedburner.com/debugshow

Edge Cases:

http://www.edgecasesshow.com/rss.xml

Developing Perspective:

http://developingperspective.com/feed/podcast/

iDeveloper Podcast:

http://feeds.feedburner.com/IdeveloperLive

Software Indie:

http://softwareindie.com/feed/podcast

NSScreenCast:

http://nsscreencast.com

Conferences

Sometimes, books and web sites aren’t enough. Attending an iOS-focused conference can be a great way to get new insights and meet other developers. Fortunately, this is an area that has really boomed over the past few years, and iOS developers have no shortage of interesting conferences to attend. Here are a few:

WWDC: Apple’s World Wide Developer Conference is the annual event where Apple typically unleashes the next great new things for its developer community.

http://developer.apple.com/wwdc

MacTech: This is a conference for Mac and iOS programmers and IT professionals. It’s hosted by the same people who publish MacTech Magazine.

http://www.mactech.com/conference

NSConference: This multiple-continent event has been held in both the United Kingdom and United States, so far. It’s run and promoted by Steve “Scotty” Scott, perhaps the hardest working man in the Mac/iOS conference scene.

http://nsconference.com

360 iDev: This approximately once-a-year conference, which is hosted in either San Jose or Denver (flipping between the two year after year), began in 2009.

http://www.360idev.com

Çingleton: So far, there have been two instances of the Çingleton Symposium, so it’s not a singleton any more. But it is a great conference that attendees rave about.

http://www.cingleton.com

CocoaConf: No one else seems to be operating as many iOS developer events in so many different cities as CocoaConf.

http://www.cocoaconf.com

Lanyrd iOS Conference List: Last but certainly not least, Lanyrd.com maintains a list of iOS conferences. Take a look!

http://lanyrd.com/topics/ios/


Looking for Dave Mark?

It’s been a while! I’ve been head down, deep into startup creation mode. I’ve come up for a bit of air and realized that I’ve been incommunicado for quite some time. Not quite ready to restart my blogging, but I have returned to Twitter so, for the moment, that’s the best way to connect.

My Twitter name is @davemark. Hope to see you there…

– Dave

The Amazing HexaKopter

As its name implies, the HexaKopter has six propellors. That alone is mildly more interesting than the QuadCopters that I’ve seen demos of, but the incredible control, speed, lift, and GPS make this one simply breathtaking to watch. Take a look at the video below. Well worth your time, especially if you are an RC or robotics enthusiast…

– Dave

Apple Confirms iPad 3G Shipping Soon…

Earlier this morning, got the letter below from the Apple Store. Looks like my iPad 3G is shipping soon. Yay!!! :)

– Dave

————–

Sold-to address: David Mark
Date: 04/19/2010
Our order number: 71331xxxxx
PO number: xxxxxxxxxx
Web order number: W69xxxxxx
Apple customer no: 90xxxx

To Our Valued Apple Customer:

Thank you for your recent order of the magical and revolutionary
iPad 3G.

We would like to confirm that your order will be shipped in late
April as communicated at the time you placed your order. You will
receive a confirmation notice when your order has shipped.

You can get up-to-date information about your order, including
shipping status and tracking number, at http://www.apple.com/orderstatus

Thank you for choosing Apple.

Sincerely,
The Apple Store Team