Being that this is the first post for this project, I guess I should get into the idea first.
Does Anyone Want An App?
I am guessing that many HackADay readers would download and use a HackADay app if it was available. But even if no one wants one, I've been waiting since the first day I found HackADay for an iPhone app. And since I want one, that is enough for me.
Why Should I Build It?
Well, the app never came and I got tired of waiting. I realized months ago that I had the time, resources, and inclination to build one myself, so I decided to get at it.
The only problem was that I've never built an app, and wasn't familiar at all with Objective-C or the whole app design process. But I did manage to get an engineering degree in 4 years, surely that means I can figure this out.
This is where everything started to go wrong. I didn’t start off where I should have, and that meant a lot of time moving in the wrong direction. And yet, because I did what I did, I was able to prove to myself that my goal was reachable.
What I Did.
I started off by going to directly to Xcode and focused on learning how to program in Objective-C.
The problem with this is that I had no direction for all the key elements. What were all my different views? What was my app going to look like? What did I want my app to do besides display lists of articles and articles?
Either way, I spent about three weeks learning Objective-C. I definitely didn’t master Objective-C, but I learned enough to be familiar with it, and to be prepared to start coding on my own. If anyone is interested, I used the Big Nerd Ranch as a great learning source.
The next step I took was getting into Xcode, and figuring out how to build an app, connect to a website online, parse the data for what I was looking for, and getting that data to the user.
All of this went pretty well, except that when I took a step back, I realized that my app looked like an amateur had put it together.
Here are some screen shots from my phone:
Picture 1: Icon
Picture 2: Opening screen (With data hand typed)
Picture 3: Opening screen (With data pulled from HackADay by the app)
Picture 4: Article Screen (the screen when you select on of the cells from the list shown in Picture 2)
As you can see, the screen shots aren’t all that exciting. What is exciting (to me at least) is that I was able to write up a very simple app that was capable of connecting to HackADay to obtain and display the desired images!
But after the first two views, I didn’t know what the next step was.I obviously wanted more out of the app. So after some thinking, I realized that I wanted a way to see all of the content that I wanted to display, without having to write up a ton of code.So I started doing some research.
What I found was that I had started the process all wrong.I had no design process in mind (which is a little embarrassing, to be honest). This means that when I got lost in the details or didn’t know what the next step was, I didn’t have a way to step back to look at the entire scope of the project and decide what was next.
So I used Google, and looked for “developing your first app”. And what do you know? The second link gave me exactly what I was looking for! Apple gave a great step-by-step app design process list!
So the next step? Start over, this time with the confidence that
#1: I know that I can get the data I need from HackADay, because I've already done it.
#2: I now have a great step by step list to get from an idea to an app ready for the app store!
I'll focus on that in my next post, I think.