Skip to content

Instantly share code, notes, and snippets.

View jkereako's full-sized avatar

Jeff Kereakoglow jkereako

View GitHub Profile
@jkereako
jkereako / ios-developer-reading-list.md
Last active January 15, 2024 14:23
This is a list of documents I have read and plan to read. Speaking from experience, if you take the time to pour over these documents and take notes on topics of interest, you will greatly improve your skill.

iOS developer reading list

The best way to learn and master iOS development is to read the official documentation. It can be boring but you can trust its accuracy and the information will be presented without opinion.

Read documents in order where indicated.

Topics

@jkereako
jkereako / ios-development-notes.md
Last active August 29, 2015 14:15
Notes I've taken on iOS development

Sections

Glossary

On message sending

Objective-C sends messages to objects, it does not call functions. A function call has a section of code bound to the target object at compile time. A message is resolved to a pointer at runtime.

Static binding is the concept of associating data or code with an identifier at compile time. Late binding is associating data or code with an identifier at run time.

NSSets offer a performance benefit over NSArrays when checking for memebership.

@jkereako
jkereako / Contract Killer 3.md
Last active January 21, 2021 20:22 — forked from malarkey/Contract Killer 3.md
This is a more serious version of Contract Killer 3. Some language and provisions were taken from a lawyer-speak contract and injected here.

date

Identification of parties

This agreement is made between customer name ("you") of company name located at customer address and developer name ("us") of developer's company located at company address.

Purpose of agreement

You desire to retain us as an independent contractor to develop the name of application (the "application") described in the section, Technical specifications.

We are ready, willing and able to undertake the development of the application and agree to do so under the terms and conditions set forth in this agreement.

@jkereako
jkereako / genstrings.sh
Last active August 29, 2015 14:16
Execute genstrings on all implementation files of your XCode project and save them into the directory en.lproj. Credit: http://www.objc.io/issue-9/string-localization.html
# Copy and paste this command into your terminal.
find . -name "*.m" | xargs genstrings -o en.lproj
# Copy and paste these commands in your terminal
# Directories
find /path/to/dir/ -type d -exec chmod 755 {} \;
# Files
find /path/to/dir/ -type f -exec chmod 644 {} \;
@jkereako
jkereako / .git-commit-template.txt
Last active August 29, 2015 14:16 — forked from Linell/.git-commit-template.txt
A modified version of Sparkbox's Git commit template.
#<Type>: <subject>
#<body>
#-------------------------------------------------------------------------------
#<footer>
#-- Commit types
# - Add; a new file
# - Chore; files which are neither code nor documentation (i.e. .gitignore)
@jkereako
jkereako / nokogiri.sh
Created March 7, 2015 05:38
Installing Nokogiri 1.6.6.2 on OS X 10.10.2 (Yosemite) with Clang 6.0
# If you don't have libxml2 installed, download the source and compile it. It's easy.
sudo gem install nokogiri -- --use-system-libraries --with-xml2-include=/usr/include/libxml2
@jkereako
jkereako / git-restore.sh
Last active February 4, 2018 04:03
Restore files in Git
# `git clean` removes all untracked files and `git checkout` clears all unstaged changes.
# see: http://stackoverflow.com/questions/52704/how-do-you-discard-unstaged-changes-in-git#12184274
git clean -df
git checkout -- .
# @see: http://stackoverflow.com/questions/953481/restore-a-deleted-file-in-a-git-repo#4332209
# Restore all deleted files in Git
git ls-files -d | xargs git checkout --
@jkereako
jkereako / cookie.coffee
Last active August 29, 2015 14:18
Cookie class
@jkereako
jkereako / SynchronousReachability.m
Created April 14, 2015 13:35
Simple routine for synchronously checking whether an address is reachable
@interface SynchronousReachability ()
@property (nonatomic, readonly, getter=isNetworkReachable) BOOL networkReachable;
@end
@implementation SynchronousReachability
- (BOOL)isNetworkReachable {
SCNetworkReachabilityFlags flags;