Programming
-

Unit Testing on iOS: Beyond the Model
→: Unit Testing on iOS: Beyond the ModelI want to introduce you to my app, it’s called Show and Hide. It’s an image processing app. This is V1, so the UI is pretty simple, so I think it’s a reasonable example. Briefly, what the app does is it detects the dominant color in an image, and creates these cool partially colored images…
-

Launching! iOS Unit Testing: Beyond the Model
→: Launching! iOS Unit Testing: Beyond the ModelI’m super excited to release something that I’ve been working on for a while. Unit testing on iOS is… not common. And part of the problem is that people don’t know where to start. It can be overwhelming. Building on my years of experience leading iOS apps with over 80% test coverage, including at Google,…
-

iOSNext: Paul Ardeleanu – 10 Reasons You’ll Love Swift
→: iOSNext: Paul Ardeleanu – 10 Reasons You’ll Love SwiftMy notes from Paul‘s talk at iOSNext. TIOBE Index for Nov 2014 – Swift is at #18. A language that is 5 months old – more popular than Scala, Haskell… Fortran! Proven to be quite a hit with developers, and there are reasons for that. Why do we have a new programming language? What is…
-

Creating and Comparing Images on Android
→: Creating and Comparing Images on AndroidA while ago, I wrote this blog post on creating and comparing UIImages. That code allowed me to develop the image processing part of the app against my unit tests, which was really, really helpful given that I rewrote it about four times to make it performant enough. So, when I started writing Android code…
-

Four Reasons Unit Testing Needn’t Be That Time-Consuming
→: Four Reasons Unit Testing Needn’t Be That Time-ConsumingOn my mind this week because I’m giving a workshop and a talk on unit testing UI code on iOS. Tests as Documentation. You think you remember what you did and why… but you don’t. Replace debugging. I almost never use the debugger. If something isn’t working as expected, I just start writing tests and figuring out…
-

Cross-Platform Development Decisions
→: Cross-Platform Development DecisionsI’ve started to port Show and Hide to Android. There’s still a lot to do, but I hit a milestone of having it working end to end on the emulator last week, which was exciting. One of my friends asked if I was using any libraries to make it easier, and the short answer is no. But…
-

Some Things I’ve Learned About Performance on iOS
→: Some Things I’ve Learned About Performance on iOSFiled under “things I didn’t realise anyone else would find useful”. The Hybrid App The second iOS app I worked on was a hybrid app, and I became a master of the UIWebView. It looked native. But it didn’t quite feel native because… performance. We had a bridge that connected the iOS to the Javascript…
-

Creating Test Images and Comparing UIImages
→: Creating Test Images and Comparing UIImagesI’ve been working on this app which relates to my obsession with color. It’s an image processing app, and you can see some pictures made with it on our Tumblr. This involved learning about how to take images apart and put them back together, rewriting a lot of stuff in C for performance, etc. But…
-

#iOSDevUK – Luke Rogers: The Logic of App Design
→: #iOSDevUK – Luke Rogers: The Logic of App DesignDesign is a skill you can learn, the same way development is a skill you can learn. Design is not about making it look pretty, small percentage of it. About working out hierarchy, working out what is important. Brainstorm what the user should be able to do. Not “have analytics” Instead “watch a video” Order…