iOS Development Archives

Turning my iOS Dev Diary into a Membership Site

iOS-Podcast-Icon-2014I find it extremely important to document the things I learn on my coding journey. It has saved my (coding) life many times before. I do such documentations in form of websites which allows me to refer to my notes from any device in the world.

One of those sites is my iOS Dev Diary.

It’s on a spare domain I had lying around that wasn’t doing anything, and when I started adding notes to to the site in 2011 I hadn’t intended it to be a public facing project: I would usually add links to my other sites, add social widgets and make sure the site looks nice so that it makes for a pleasant reading experience.

I dispensed with all that for my iOS notes. I didn’t event pay attention to the traffic it was getting – because seriously: who would read scattered notes and ultra geeky code snippets without a context?

Turns out I was in for a surprise.

The site really isn't anything special to look at - but it's functional, human readable, and people seem to like it.
The site really isn’t anything special to look at – but it’s functional, human readable, and people seem to like it.

One day I tried some CSS tweaks and installed Jetpack so that I could easily apply additional CSS styles without the need for a Child Theme. Jetpack also counts the daily visitor traffic which was about 20 users per day when I installed it in March 2013, not including my own visits.

You can imagine my surprise when I saw that the traffic was steadily increasing to a point that impacted the server the site was hosted on. Today I’m getting nearly 700 hits per day on that site (!), a little less less at weekends, accounting for a whopping 15k visitors per month.

Stats at the end of March 2014


Luckily I’m in charge of the server that’s hosting my iOS Dev Diary, so I could use it as a test case for high traffic, and to see how different servers would cope with the load: I tried moving the site to a small Amazon AWS instance running Plesk on CentOS – which promptly crumbled under the load. I increased the power of that instance gradually and found that only a C3 Extra Large instance would hold out – not really an option considering its $300 per month price tag.

Other dedicated servers are more cost efficient, and currently the site is hosted on a dedicated machine at Strato which copes very well. The test provided me with valuable insights on many levels, but at the same time it poses a problem: I still need a place for my notes, and I’m happy for others to use them too. But without locking the site down to “private” I’m still stuck with a lot of traffic and therefore quite a bit of hungry infrastructure overhead.

Unless I find a way to subsidise the cost – which leads me to another exciting adventure: turning my iOS Dev Diary into a paid Membership Site.

Thanks to a couple of WordPress plugins I can partially protect content and ask visitors to join the site for a small fee.

Access is granted instantly after the system processes the payment. The membership protection is live since the beginning of the month and meant quite a bit of work and restructuring for Julia and me. Let me tell you more about the project.

Read more

That Bike App


Remember that bike app I’ve told you I wanted to write? I wanted to track all the miles we’re doing on our new bikes.

The app store has plenty of such apps already, but some of them are so complicated that it takes years to figure out how they work. I wanted to create something simple instead and went to work immediately.

I have to tell you it took a couple of weeks of tinkering and learning some new skills. In the end it wasn’t as easy as I thought it was going to be, but I’m proud to say that yesterday I’ve submitted Bike Tour Diary to Apple. Let’s see if they like it!

It’s been four months since I’ve submitted an app (which was TALK! – the speech synthesiser). Funny how quickly the brain forgets important steps and leaves you clueless. Let me tell you all about the writing process, what the app does and what features I’m working on next.

Read more

Over-the-air beta updates are not working on my iPad 2

Dear Apple, I must have a very special version iPad 2: mine simply refuses to install beta releases of iOS over the air. More specifically, it refuses to activate properly after the installation is complete. My iPod Touch does this without a hitch: under Settings – General – Software Update I just click on “Update …

Read more

iOS 7 has arrived! And here’s what it does…

icon-ios7-150x150On Speak Like a Pirate Day 2013, the 18th of September, Apple decided to release their latest and (apparently greatest) operating system for iPhones, iPads and iPod Touch devices: iOS 7.

Developers like me have had it since June and we were eased into what may well be a culture shock to many users. We were not allowed to talk about iOS 7 until today due to the non disclosure agreement that comes with the territory of using pore-release software.

Because I’ve been using iOS 7 for the last few months, I can finally tell you what’s changed, what’s better and what’s perhaps not so good about the latest release. Even if you’re itching to press that upgrade button, have a read and get into the mood.

Read more

Developing the Development Tools

PatchBay Icon 512x512Every major software company has a collection of internal tools to help them develop their software. These are either off-the-shelf apps like Photoshop, or they are so specialised that they have to be custom written in-house by a team of specialists, often by a dedicated department.

Right now I’m in a similar situation myself: We need a dedicated tool to create the data structure for future reference apps. Specifically we need a simple input mask that makes my iPhone App understand what data I’d like to display without having to tweak a text file.

I can’t quite believe that I have successfully written such a tool for precisely this purpose. Best of all, I did this almost without any code using Cocoa Bindings. Aptly titled PatchBay, this app allows us to create a Core Data store file which I can pick up in iOS and display on the iPhone.

Let me tell you how it came to be, why it’s useful for us and how gobsmacked I am that this has become a reality.

Read more

Seek and Ye shall find

folder_findFor the last week and a half I’ve been having fun researching and coding the search function in iOS Table Views.

You’d think there’s just a “thing” you drag into your view, hook it up somehow and “hey presto, it works” (alas that’s how you do it in jQuery Mobile).

Not so in iOS: we’ll have to deal with a search bar, a search display controller and its many intricacies, and then something called a Predicate.

I don’t mind telling you: my head has been smoking… but my hard work and perseverance has paid off, and now I can finally add a search function to all my iOS Apps!

Read more

Testing Views App for iOS

I was just browsing through my archive and stumbled upon an iOS App I’ve made a few months ago. It looks great on the new iPad due to really hi-res images – but what’s even better is that it’s written almost entirely without code!

It’s still using Xcode so it’s a native app of course, but there are no complicated Objective-C statements in there (apart from one but it’s not essential to the app).

Here’s how I did it – I even give you the source code too.

Read more

How exciting: I’ve just written a Web Browser for the iPad!

Today you find me rather speechless: because I’m sitting here with my iPad which is running a web browser that I’ve just written in Xcode!

As in “written myself, working and doing what I’m expecting it to do”. I’m in SHOCK!

This is seriously cool – and it didn’t take long either. Let me tell you how this happened, how it works and even share the code with you.

Read more

Dancing Robot Splash Screen

I thought I’d share a couple of Splash Screens I created for my (since rejected) iPhone Apps. Splash Screens are loading screens which are shown while the sometimes lengthy startup process would show a black screen – unless you provide an image. Makes for a much nicer user experience.

Dancing Robot (above) is lovely cartoon figure called Klank by 3D Universe – I absolutely love their style! I have a couple of other figures made by them and I’ll show you some pre-production artwork a bit later.

As you may have guessed, Dancing Robot is essentially the same app as Dancing Alien with a different character, an animated background and different music. Guess I won’t be submitting that one to Apple…

Read more

Steve Jobs resigns from Apple over the rejection of my Dancing Alien app

On Tuesday, my “Dancing Alien” App has been rejected by Apple on the grounds that “it wasn’t very useful”. They pointed me to Section 2.12 of their submission guidelines which explains this.

Today, only a couple of days later, my good mate Steve Jobs resigns from Apple, probably as a direct response to this appalling decision. This is the second time in his career that he had a falling out with management over decisions he’s just not 100% behind.

I’d like to say from the bottom of my heart: thank you so much for your support, Steve – but this wasn’t necessary. I appreciate the gesture though, and I’ll put you on my list of Beta Testers so you can run t he app anyway.

I’m already planning my next app which will include the alien, so I’ll let you know how that’s going. So please, nobody else needs to quite their job over this!

Read more

I’ve submitted my first iPhone App to Apple

I’ve just spent the last three hours trying to make sense of how to submit my first iPhone App to Apple. This is not an easy task, I can tell you that! Now the waiting game starts – let’s see if I’ve done everything correctly. As nice and easy as the end user experience is, …

Read more

Creating Dancing Alien v1.0 – Release Notes

It’s been an exciting day here at The Render Farm: we’ve decided we wanted to release our first app by tomorrow evening, and the next thing we knew was that Julia’s soundtrack was ready for it. Not even half an hour later we previewed stunning animations with several characters… we couldn’t believe it ourselves – since we’re neither musicians, animators or coders!

I had conducted several tests based on the ImageHop exercise from SAMS Teach Yourself iPad Apps by John Ray, all OK but implementing several views really was hard. I’ve decided instead to keep it ultra simple and literally only have one view for Dancing Alien and one lone “i” button at the bottom right as an About / Credit page with link to our website. Works much better, is much simpler – and more to the point it’s possible to implement by tomorrow evening.

Read more

Objective-C: The Final Frontier

It’s been a tough couple of days with my head spinning and – as my wife says – me being not very happy. This is because every book i read about iOS developing appears to be hopelessly out of date. My fault for wanting to get my hands dirty with bleeding edge shenanigans.

Book No. 1 “iPhone Apps for Absolute Beginners” is written really well, however 9 out of 10 examples don’t work. Outdated code, code not reprinted properly, instructions are for Xcode 3, you name it. There’s only so much frustration you can take until you put this to one side and look elsewhere.

Book No. 2 “Teach Yourself iPad Apps” started out a bit tough, but now that I’ve got my head buried deep in this matter sounds more promising by the minute. At least: the examples work, even if they’re based on Xcode 3 too. The author was nice enough to include an updated Xcode 4 chapter on his homepage.

Frustration and agony to one side, let me share with you the exciting things I have managed to build these past few days.

Read more

My first Test App: “How ya’ll doin?”

It’s exciting times here at the hacking front: I’ve deployed several test apps today and had a closer look at Xcode 4.1 – the latest coding environment for iOS and Mac.

After having spent most of the day downloading and installing Mac OS X “Lion” I found out the hard way that Xcode 4.02 was no longer working… so I had to download that as well. Once it was all working I found no major changes had been made in the software other than a spurious error message because I didn’t sign up for the Mac Developer programme and some library couldn’t be downloaded. Let’s ignore this message, shall we?

Read more

iOS Development: Let the journey begin

It’s only been 4 weeks since I’ve bought my first ever Apple product. We now have SIX in our household and my ISP has just informed me that I’m now downloading over 40GB per month (and should really pay more). I have to admit: iPad, iPod Touch and Apple TV have forever changed our lives for the better.

So much so that last week I went out and bought myself a Mac Book Pro for one simple reason: I want to write iOS Apps. For those of you who don’t know it’s the stuff you can download and run on your iPhone and iPads. Should have jumped on this project a year ago when I had a hunch that this could potentially be super cool.

Getting my teeth into this will be a challenge beyond belief, and I thought it would be a nice idea to jot down my progress here. I’ve done this with the WP Guru site where I write down notes so I can remember a few weeks later (I have a short attention span you know…). I shall call this category iOS Dev Diary.

Let me start by telling you all about what I want to do and why I’m doing it.

Read more