Dead Metaphors
If you’re like me, you’ve grown up using computers and electronic devices of all types. By now you’ve amassed a large collection of discs and other storage mechanisms as you’ve witnessed the changing...
View ArticleTroolean ~ I can haz three states
Have you ever seen a web form that has a Yes or No radio button where NOT choosing either option is valid? I once worked on a project that was littered with these Yes or No questions which, due to...
View ArticleMyth: Consistency is everything
A myth that I seem to continually confront in software design is that applications should be consistent within their application family. A family of applications will typically include a full-featured...
View ArticleThe RGB Design Model
Design can be defined as “satisfying a set of requirements, subject to constraints”. Typically, large design projects will have many constraints which can be divided into many individual subject areas...
View ArticleHomebrew Whiteboard
How would like to have a HUGE whiteboard so that you could sketch diagrams while working on a project? I have always found that having a huge white board which lets me look at my writings from far...
View ArticleObjective-C copy paste detection using Jenkins
I recently configured a Jenkins job to execute CPD (copy paste detector) using PMD against an iOS project. For those of you who are not familiar with CPD, it is a tool which can analyze a code base to...
View ArticleTop 11 ways for developers to know that Apple is not following Steve’s vision
Here are the top 11 ways for iOS developers to know that Apple has strayed from Steve’s vision: Apple lets operators put shitty Apps on new Apple devices Apple allows third parties to create their own...
View ArticleFrom commit to Testflight – Part 1
Recently I have received several requests to explain how to automate iOS builds from checkin to Testflight. Since I have been using Jenkins to automate iOS applications for almost 2 years, I feel like...
View Article