Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Sample code shown in NSScreencast episodes.

branch: master
Octocat-spinner-32 001-objective-c-basics Episode 1 example app February 05, 2012
Octocat-spinner-32 002-diagnosing-memory-problems Added episode 2 source code February 06, 2012
Octocat-spinner-32 003-tableview-basics Added episode 3 sample code February 12, 2012
Octocat-spinner-32 004-bdd-style-testing-with-kiwi Episode 32 sample code September 05, 2012
Octocat-spinner-32 005-cocoa-pods added episode 5 source February 26, 2012
Octocat-spinner-32 006-afnetworking episode 6 source code March 08, 2012
Octocat-spinner-32 007-serializing-data Finished sample for episode 7 March 14, 2012
Octocat-spinner-32 008-automatic-paging Show notes as readme March 22, 2012
Octocat-spinner-32 009-automatic-reference-counting Finished sample for episode 9 March 29, 2012
Octocat-spinner-32 010-fun-with-blocks Episode 10 sample April 04, 2012
Octocat-spinner-32 011-core-data-basics Episode 11 sample code April 13, 2012
Octocat-spinner-32 012-core-data-importing-data Fix bug where subsequent refresh duplicates data November 27, 2012
Octocat-spinner-32 013-jenkins Fix broken test April 21, 2012
Octocat-spinner-32 014-tracking-download-progress Tracking download progress example May 03, 2012
Octocat-spinner-32 015-http-caching Episode 15 source code May 10, 2012
Octocat-spinner-32 016-kvo Episode 16 sample code May 17, 2012
Octocat-spinner-32 017-app-provisioning Episode 17 sample code May 24, 2012
Octocat-spinner-32 019-push-notifications Episode 19 sample code June 25, 2012
Octocat-spinner-32 021-custom-navbar Swapped episode 21 & 22 June 26, 2012
Octocat-spinner-32 022-custom-tabbar Swapped episode 21 & 22 June 26, 2012
Octocat-spinner-32 023-intro-to-storyboards Added episode 23 July 18, 2012
Octocat-spinner-32 024-pull-to-refresh Finished pull to refresh sample July 11, 2012
Octocat-spinner-32 025-custom-picker-component-part-1 Episode 25 July 18, 2012
Octocat-spinner-32 026-custom-picker-component-part-2 Fix warnings with iOS 6 April 08, 2013
Octocat-spinner-32 027-new-objective-c-syntax Episode 27 sample code July 29, 2012
Octocat-spinner-32 028-creating-a-cocoapod Readme pointing to the real code for ep 28 August 16, 2012
Octocat-spinner-32 029-rubymotion ep 29 sample code August 16, 2012
Octocat-spinner-32 030-parse Finished parse example August 23, 2012
Octocat-spinner-32 031-forms Added epsisode 35 sample code September 26, 2012
Octocat-spinner-32 032-core-graphics-gradients Fix ARM+ARC EXC_BAD_ACCESS in glossy gradient drawing September 19, 2012
Octocat-spinner-32 033-core-graphics-polygons fix incorrect sin/cos for x & y April 14, 2014
Octocat-spinner-32 034-upgrading-to-ios6 Added ep 34 sample code September 20, 2012
Octocat-spinner-32 035-autolayout-fun Added epsisode 35 sample code September 26, 2012
Octocat-spinner-32 036-searching-in-uitableview Fix crash for nil moc December 02, 2012
Octocat-spinner-32 038-class-introspection Episode 38 sample code October 25, 2012
Octocat-spinner-32 039-smart-json-parsing Episode 39 sample code October 25, 2012
Octocat-spinner-32 040-shine-effect episode 40 sample code November 01, 2012
Octocat-spinner-32 041-authentication-with-afnetworking Finished ep 41 sample app November 08, 2012
Octocat-spinner-32 042-retrying-requests Completed episode 42 sample code November 16, 2012
Octocat-spinner-32 043-avaudioplayer AVAudioPlayer sample November 28, 2012
Octocat-spinner-32 044-in-app-purchases Removed weird chars December 06, 2012
Octocat-spinner-32 045-validating-iap-receipts Finished episode 45 sample December 13, 2012
Octocat-spinner-32 046-fun-with-uicollectionview episode 46 sample code December 20, 2012
Octocat-spinner-32 047-gesture-recognizers Using the shouldRecognizeSimultaneouslyWithGestureRecognizer April 09, 2013
Octocat-spinner-32 048-code-snippets Sample code snippets January 09, 2013
Octocat-spinner-32 049-slide-out-menus Added replacement list icon January 25, 2013
Octocat-spinner-32 050-custom-cells Finished episode 50 sample code January 24, 2013
Octocat-spinner-32 051-intro-to-restkit-mapping Finished episode 51 January 30, 2013
Octocat-spinner-32 052-restkit-core-data Finished example February 03, 2013
Octocat-spinner-32 053-restkit-object-manager Added readme for 53 February 13, 2013
Octocat-spinner-32 054-pony-debugger Added ep. 54 source code February 21, 2013
Octocat-spinner-32 055-versioning Episode 55 sample code February 28, 2013
Octocat-spinner-32 056-twitter-integration Twitter integration episode March 03, 2013
Octocat-spinner-32 057-facebook-integration Added facebook sample code March 13, 2013
Octocat-spinner-32 058-container-view-controllers Added episode 58 sample code March 20, 2013
Octocat-spinner-32 059-windows-azure-mobile-services Added episode 59 sample code March 27, 2013
Octocat-spinner-32 060-windows-azure-mobile-services-part-2 Added ep60 code directly April 02, 2013
Octocat-spinner-32 061-cocoa-lumberjack Added episode 61 sample code April 03, 2013
Octocat-spinner-32 062-mailing-logs Add ep62 sample code April 10, 2013
Octocat-spinner-32 063-from-scratch Episode 63 April 17, 2013
Octocat-spinner-32 064-mapkit-annotations Episode 64 April 24, 2013
Octocat-spinner-32 066-processing-shape-files Episode 066 sample code May 08, 2013
Octocat-spinner-32 067-map-overlays Add 067 map overlay sample May 16, 2013
Octocat-spinner-32 068-xcode-project-templates Add episode 68 May 22, 2013
Octocat-spinner-32 069-nsfetchedresultscontroller NSFetchedResultsController example May 30, 2013
Octocat-spinner-32 070-autolayout-with-cells add ep 70 June 05, 2013
Octocat-spinner-32 071-nsnumberformatter Episode 71 sample code June 12, 2013
Octocat-spinner-32 072-objective-c-collections Episode 72 sample code June 21, 2013
Octocat-spinner-32 073-ssl-pinning Pinning demo for episode 73 June 28, 2013
Octocat-spinner-32 074-oauth2 Oauth2 sample project July 05, 2013
Octocat-spinner-32 075-a-tale-of-uiscrollview-customization Scroll view examples July 09, 2013
Octocat-spinner-32 076-extracting-data-from-strings added e76 July 18, 2013
Octocat-spinner-32 077-tdd-money-with-specta-and-expecta Episode 77 July 25, 2013
Octocat-spinner-32 078-tdd-money-part-2 Episode 78 August 01, 2013
Octocat-spinner-32 079-sketch Sketch assets August 07, 2013
Octocat-spinner-32 081-associated-objects ep 81 August 22, 2013
Octocat-spinner-32 082-tdd-view-controllers-with-specta-and-ocmock Episode 91 October 16, 2013
Octocat-spinner-32 083-tdd-view-controllers-part-2 Episode 83 September 04, 2013
Octocat-spinner-32 084-xctool Episode 84 September 11, 2013
Octocat-spinner-32 085-hello-ios7 Episode 085 September 18, 2013
Octocat-spinner-32 086-ios7-view-controller-transitions Episode 86 September 18, 2013
Octocat-spinner-32 087-xcode5-autolayout-improvements Episode 087 September 25, 2013
Octocat-spinner-32 088-interactive-view-controller-transitions Episode 88 September 24, 2013
Octocat-spinner-32 089-networking-in-ios7 Episode 89 October 03, 2013
Octocat-spinner-32 090-tableview-images-in-ios7 Check for error in response October 15, 2013
Octocat-spinner-32 091-afnetworking-2-0 remove some files October 16, 2013
Octocat-spinner-32 092-background-fetch Episode 92 October 23, 2013
Octocat-spinner-32 093-background-transfers Create bg session lazily November 17, 2013
Octocat-spinner-32 094-upgrading-an-old-project-to-xctest Episode 94 November 06, 2013
Octocat-spinner-32 095-fun-with-i-beacons Episode 95 November 13, 2013
Octocat-spinner-32 096-face-detection Episode 96 November 21, 2013
Octocat-spinner-32 097-scrolling-nub Episode 97 completed November 27, 2013
Octocat-spinner-32 098-camera-capture Episode 98 December 04, 2013
Octocat-spinner-32 099-parsing-and-formatting-dates Episode 99 December 11, 2013
Octocat-spinner-32 100-particle-systems Episode 100 December 18, 2013
Octocat-spinner-32 101-nspredicate Episode 101 January 02, 2014
Octocat-spinner-32 102-refactoring-view-controllers Add episode 102 January 09, 2014
Octocat-spinner-32 103-refactoring-view-controllers-part-2 Episode 103 January 15, 2014
Octocat-spinner-32 104-blur Episode 104 January 22, 2014
Octocat-spinner-32 105-strong-versus-copy Episode 105 January 29, 2014
Octocat-spinner-32 106-uitableviewcell-swipe-action Episode 106 February 04, 2014
Octocat-spinner-32 107-swipe-to-reveal-cells Episode 109 February 27, 2014
Octocat-spinner-32 108-unwinding-segues Episode 108 February 19, 2014
Octocat-spinner-32 109-mdmcoredata Episode 109 February 27, 2014
Octocat-spinner-32 110-swipe-to-reveal-redux Fix retain cycle by setting tableView pointer to weak March 06, 2014
Octocat-spinner-32 111-xcode51 Episode 112 March 20, 2014
Octocat-spinner-32 112-giggletouch Episode 112 March 20, 2014
Octocat-spinner-32 113-giggletouch-part-2 Episode 113 April 03, 2014
Octocat-spinner-32 114-playing-sounds-with-sprite-kit Episode 114 April 10, 2014
Octocat-spinner-32 116-mantle Episode 116 April 20, 2014
Octocat-spinner-32 .gitignore gitignore/readme February 05, 2012
Octocat-spinner-32 .gitmodules Fixed submodules August 27, 2012
Octocat-spinner-32 README.md Update README.md October 30, 2013
README.md

NSScreencast Example Code

Here you'll find the sample code used in NSScreencast episodes.

Requirements

Most of the samples will require the most recent version of Xcode.

Dependencies

Many of the videos include references to 3rd party libraries. Please be aware that these libraries are bound by their own respective licenses.

License

Copyright (c) 2012 Ben Scheirman.

Use of the code provided on this repository is subject to the MIT License.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Something went wrong with that request. Please try again.