Programming
-

Interview Prep Tips
→: Interview Prep TipsI have done a lot of technical interviews. And mainly I think that interviewers have to change, but I do have some suggestions for interviewees. Ages ago I wrote up my prep list for interviewing at The Conglomerate, which is comprehensive, and frankly excessive. This is the short version with the benefit of spending more…
-

Bad Interviews are a Company Problem, not a Candidate Problem
→: Bad Interviews are a Company Problem, not a Candidate ProblemWe know technical interviewing is a problem but rather than asking interviewers to do better, a lot of suggested solutions push that problem off onto people we interview rather than those who are doing the interviewing. This comes up a lot because the hiring process is the second most popular place to improve “diversity” after…
-

Categories Considered Harmful
→: Categories Considered HarmfulTL;DR – Don’t use categories. They just create different problems. Categories in Obj-C are a way to add (or expose) functionality to a class without subclassing it. You can see why this might be tempting, right? File getting a bit big, too many pragma marks, stick that bit in a category. I want to expose this…
-

Android: Touch to Change Image
→: Android: Touch to Change ImageOn iOS I do this using a button (with different pressed state), and I figured it would be the same on Android, but turns out, no. Step 1: Add a second image to the XML, and set the visibility to “gone”. This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently…
-

OCMock and Values
→: OCMock and ValuesOCMock is mostly great! And I use it a lot! But there’s one problem with it – handling values. I was debugging some asynchronous tests and having this problem, which I assumed at first came from the asynchronicity but it turns out, no, it’s just CGFloat being CGFloat. Clue for this kind of bug is…
-

Launching: Show & Hide
→: Launching: Show & HideI launched a thing. You can buy it for your iThing. Please upvote it on ProductHunt. What is the thing? It’s an image processing app. It allows you to make cool, partially colored images. It’s called Show & Hide. The longer and more personal story is: this has been a long term side project for me, and…
-

Technical Interview Questions and Time Management
→: Technical Interview Questions and Time ManagementWhat Makes a Good Technical Interview Question? Three criteria of a good interview question: Gives a sense of problem-solving and understanding. Explorable and extendable. Deeply understood by the interviewer. Problem Solving and Understanding What does this look like? The problem presented needs to be decomposed into smaller problems in order to be solved. There are…
-

Further Adventures in Android Development
→: Further Adventures in Android DevelopmentI suspect one of my limitations as a programmer is that I don’t hack. I don’t beat away at something until it works. I read things, and I reason about it, and I write a lot of tests. This makes me very effective on platforms I’m familiar with, but I worry I’m as a result…
-

Replacing KIF Tests with XCUI Tests
→: Replacing KIF Tests with XCUI TestsI thought about doing this in Swift but decided to take this one thing at a time (I haven’t written any Swift yet). My strategy: 1) get tests working and then 2) convert them to Swift. This post focuses on (1). As for what tests to write, I had a full suite of KIF tests…