Bump.
I have now clocked in a little over 141 hours over the past 40 days and have actually coded on 35 of them.
I am getting better at objective-c every single day. I have definitely become addicted to this stuff and truly enjoy myself every minute of it. I was slamming my head against the wall this morning because I could not get my app to communicate properly with my BaaS and then finally got it to work.
It feels great every time I solve a problem and get to move on to the next line of code.
One thing that has really helped me is writing pseudocode. I write pseudocode for every couple of lines of code, sometimes for just one single statement.
If you type out what you want to accomplish in plain english first it is a lot easier to break down a complex feature into simple steps.
I just go down the list and mark the different pieces of pseudocode complete when I'm done with them.
Taking the time to write pseudocode has been one of the biggest GAMECHANGERS for me which is ironic because it's so simple, but seriously it helps a lot and here's why I think it works so well:
When you write out pseudocode aka code in plain English and then go into your IDE and type the actual code I think a special connection is being made in your brain that wouldn't otherwise be happening.
Your brain thinks in normal language first, and I've noticed while taking breaks or while running that if I think about a feature, like a user typing text into a field and being able to submit it, that I can easily do the translation to code in my head.
Other than the pseudocode breakthrough it all just definitely comes down to practice. One thing I am really excited about is that things that were difficult a couple weeks ago are sticking with me and I am able to solve certain problems very quickly without checking stackoverflow for help.
For example today I had an object and I needed to store it's data inside an NSString object but it wouldn't work because my original object was of another class. So I simply instantiated the NSString object and called it's initWithFormat method and gave it the correct input.
I've been able to solve a lot of problems, or at least chunks of them on my own and I'm able to think critically and map out how data needs to be passed around.
Really exciting and if anything I'm mad that I didn't discover my passion for programming at a younger age but glad that I'm on a roll now.
One of the funniest things is that I always assumed that you needed to be good at math in order to be good at programming. While I'm sure it doesn't hurt, I can guarantee you that you can suck at math and still be good at programming.
I remember doing google searches before I started and people were saying that being good at math was a requirement to ever be a good programmer. This is total BS.
I am absolutely terrible at math and I'm starting to get really good at this stuff. All programming is, is being able to sit down and think logically about things. What order should this happen in? What piece do we start with, and then what piece does that one need to send a message to?
If scenario A happens then we should do this, but if scenario B happens we'll just do this instead.
It's just a bunch of objects and data with different names and different prebuilt functions and uses being passed around to one another.
Anyways, I'm taking my first vacation in 4 years this weekend and look forward to taking a break. As much as I don't want to, I know that when I get back next week I'll be fresh and will have a ton of built up energy.
So far with my app I have finished the initial View Controller, the Login View Controller, a UIImagePicker controller which allows the user to take photos, videos, and access their photo albums, The Signup View Controller complete with registration functionality, a Verification View Controller where the user can enter their phone number. Twilio then sends an SMS to that number with a 4 digit pin code. Then on my pin submit VC they can enter in the 4 digit pin.
If they enter the correct pin number then the phone number is successfully attached to their profile in my BaaS.
Next week I'll be finishing the Add Friends VC. My goal is to have my app completed and submitted to the app store by the end of the 2nd week of February. Not sure how long it will take for approval.
From there I have 2 more apps I'm going to build and should be able to complete both by the end of March.
Well, that's about it for this update and I hope you guys are having a good start to the new year.
Cheers to 2014.