The title of this article may be overstating my expertise with git slightly, but that’s how I feel having successfully tackled what is, I think, a fairly non-trivial task with git: managing changes across multiple branches and multiple remotes using a single working directory.
Continue reading →
Achievement Unlocked: Git Ninja
Posted in: iDevBlogADay, Software Development
Lockbox: Easily Secure Your App’s Sensitive Data
It seems like there has been a lot in the “developer” news lately about the secure storage of user data in iOS apps, as well as related topics around securely replacing the venerable but now deprecated device unique identifier, or UDID. For the latter, more than a few replacement schemes have been offered up, most with a “secure” storage element. This all got me thinking about other reasons one might want to store something securely in an app, and how to do it.
Continue reading →
Posted in: iDevBlogADay, Software Development
Pulling in Many Directions
Sometimes there is no time to focus on just one or two things. No, sometimes things get busy and between day jobs, and night jobs, and family, and all those other obligations we have in our lives, there is time only to touch on a few things briefly. That’s what my development life has been like lately, moving from project to project to project. Read on for a cornucopia of stuff…
Posted in: iDevBlogADay
Geofencing: What do you do with it?
Location Services are one of the most interesting capabilities available in iOS. One interesting feature therein is “geofencing”, also known as “region monitoring.” I recently investigated how this works and what you can do with it. While easy enough to use, region monitoring alone isn’t enough to bring your user back to your app.
Posted in: iDevBlogADay
Core Data Image Caching
It is a common pattern for an app to do something with data that is not local. Maintaining decent app performance while fetching the data is one challenge (and not the focus of this article). Keeping the data, and enough of it, for later use and to prevent having to get it again, is another challenge. There are obvious solutions, some easy and some not, and all with their own advantages and disadvantages.
Posted in: iDevBlogADay
Animation Revelation
For the newcomer to iOS development, “animation” may seem like a daunting proposition. That’s how I felt when I wanted to animate a game board 90 degrees in my very first app. How could I possibly do that!? It must be difficult! And so off I went to see how to do it….
Posted in: iDevBlogADay
OS X Lion + Oracle + ruby-oci8 Gem Solution
In my day job, we have need to interface with an Oracle database, from ruby. There’s a gem for that: ruby-oci8. The problem, since OS X Lion came out, is that installing the gem with it’s native extensions (i.e. compiled C code) fails. Why? Because the native extensions cannot be built using the default 64-bit architecture.
The solution? Build it for a 32-bit architecture! Unfortunately, that is a little easier said than done. So, last week I set out to see what it would take to actually move to Lion. Turns out, it wasn’t that bad.
Posted in: Software Development
Project X Has Begun
In my last post, Something Old or Something New?, I talked about my own mental process for choosing what to do next that would be meaningful, i.e. worth doing and doing well, and ultimately profitable (for a reasonable definition of that word.) I am pleased to say: Work has begun!
Posted in: iDevBlogADay
Something New or Something Old?
What’s my “Next Great App” going to be? No one knows, of course, since almost anything can be a hit, or not! I’ve experienced this phenomena with my own, current apps. And this leaves me with an ever-present quandary: Should I conceive and develop something new and (maybe) awesome, or update/re-implement something old? What to do, what to do… Continue reading →
Posted in: iDevBlogADay
Many From One
Building one app from one code base is pretty straight forward (all other complexities of Xcode development notwithstanding, of course). Building more than one app from one code base is a bit less intuitive, however. Recently someone wrote about using git, a source code control tool, to manage multiple app versions. This is an interesting approach, but I think breaks down when you start needing to churn out say… 7 or 8 or more distinct renditions of the same app. It also suffers from then having multiple full copies of the code base to, one for each version. Bug fixes have to be applied to all of them. A current project with which I am involved is facing this challenge now: many apps from one code base. Here’s what we’re doing (so far) to keep the “pain” to a minimum in order to produce 7+ apps at once.
Posted in: iDevBlogADay



