OOP the Easy Way
Object-Oriented Programming the Easy Way: a manifesto for reclaiming OOP from three decades of confusion and needless complexity.APPropriate Behaviour
APPosite Concerns
FSF
Author Archives: Graham
Password checking with CommonCrypto
I previously described a system for storing and checking credentials on Mac OS and iOS based on using many rounds of a hashing function to generate a key from the password. Time has moved on, and Apple has extended the … Continue reading
Posted in Authentication, code-level, Crypto, password
1 Comment
Sound bites considered harmful
Knuth said: premature optimization is the root of all evil. Only, what he actually said was: There is no doubt that the grail of efficiency leads to abuse. Programmers waste enormous amounts of time thinking about, or worrying about, the … Continue reading
Posted in software-engineering
1 Comment
How people learn
Don’t you hate those times when you go to a talk or article that says “you should be doing this”, but then doesn’t explain how to do that? I just wrote one. In “Coding. Standards.” I explained that what software … Continue reading
Posted in advancement of the self, books, Talk
Comments Off on How people learn
Coding. Standards.
I just realised that this month marks the 10th anniversary of my first payment for writing software (on, of all the weird things to be writing software on in 2002, a NeXTstation)! What have I learned from those ten years? … Continue reading
Posted in advancement of the self, Business, code-level, OOP, software-engineering
2 Comments
Objective-C literals and subscripts
If you’re using clang from their website instead of sticking with Apple’s release, you get support for Objective-C literals and object subscripting. I thought I’d take the BrowseOverflow app and apply this new syntax to it. Notice that the code … Continue reading
Posted in code-level, OOP
2 Comments
Supporting both ARC and MRC build settings
Let’s face it, people don’t read `README`s. If you write library code that people are going to use in their own projects, you can’t rely on that bit at the bottom of the documentation that tells people to do -fobjc-arc … Continue reading
Posted in Uncategorized
2 Comments
App security consultancy from your favourite boffin
I’m very excited to soon be joining the ranks of Agant Ltd, working on some great apps with an awesome team of people. I’ll be bringing with me my favourite title, Smartphone Security Boffin. Any development team can benefit from … Continue reading
Posted in Business, ssl, threatmodel
Comments Off on App security consultancy from your favourite boffin
Class clusters, placeholder objects, value-oriented programming, and all that good stuff.
Have you ever seen this exception in your crash log? 2012-05-29 17:55:37.240 Untitled 2[5084:707] *** Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘*** -length only defined for abstract class. Define -[NSPlaceholderString length]!’ What’s that NSPlaceholderString class? Leaving aside NSMutableString … Continue reading
Posted in code-level, Foundation, software-engineering
Comments Off on Class clusters, placeholder objects, value-oriented programming, and all that good stuff.
Is privacy a security feature?
I’ve spoken a lot about privacy recently: mainly because it’s an important problem. Important enough to hit the headlines; important enough for trade associations and independent developers alike to make a priority. Whether it’s talks at conferences, or guiding people … Continue reading
Posted in Privacy, software-engineering
Leave a comment
Thoughts on Tech Conferences
This post is being, um, posted from the venue for GOTO Copenhagen 2012. It’s the end result of a few months of reflection on what I get out of conferences, what I want to get out of conferences, what I … Continue reading
Posted in advancement of the self, books, Business, NSConf, Talk, WWDC
Leave a comment