How to take a few more steps…
So, you’ve checked out some books and gotten truly started on learning Object Oriented programming and Objective C in particular. Are the books enough for you? You can find a lot online using google and sites like stack overflow.com as well, but again, is that enough for YOU? Have you thought about taking classes? I did. It’s just that every class I found didn’t seem to cater to beginners and either way they cost hundreds and sometimes thousands of dollars for a week or two long class. I don’t know about you but that was more than I was willing to pay getting started.
I did look around and I found some good classes offered by a company in the US that I’ll link to below. The classes are about $90 a piece, last for about a month if you take them “live” over the web, or you can take them “on demand” by viewing the videos of the classes that are updated each time they are given. The best part is that you get indefinite access, so you can take the classes again and again as you need to. If you’re doing it for your job or just want the satisfaction, you can even do the end projects for each class and get a certificate. There is a forum for support of the classes. Bottom line, in using the books I mentioned earlier and taking these classes, I got my first iOS app developed, approved and on the iTunes App Store within a little less than three months.
That’s not a typical result. It could take you more time or less. The point is that it can be done and YOU can do it! The major stumbling block, as I found, is your own self. Will you put the time in that you’ll need to learn this and get it done? Can you stay motivated? Do you need the motivation of taking a class or can you do it all on your own? All those questions have to be answered by you and only you. Take advantage of whatever resources you need, motivate yourself however you need to be motivated.
One thing that helped me was actually having a project to motivate you. A friend of mine was doing work for a local church, putting together a website for them. They had mentioned to him that they wanted an iOS app but that was beyond him. He brought that request to me since he knew I’d started learning programming and I reluctantly agreed. Understand, I only agreed because it seemed like they only wanted something VERY simple. It started out as an app that would just display their webpages within an iOS app. Not a big deal and really something that Apple doesn’t want apps submitted to it to do. But I didn’t know that, so I agreed.
Not long after I started, the scope of the project grew and grew a LOT. It ended up incorporating Twitter and FaceBook posts, sending emails, etc. Since I was committed, I HAD to try and try I did. I utilized sites like Stackoverflow.com, google, ANYTHING I could find to help me figure out how to pull things off. And you know what? I was successful! I had learned enough in classes that I could make things work. Actually the funny part was that I learned how to call up websites from within an app and use FaceBook, but I’d have to go back to my books and classes to figure out the “simple” things like how to pass a variable value between two views on the app!
For me though, having this project to do alongside of class and my own research kept me motivated. Fear of failure and not being able to deliver the app helped too, honestly. And it all worked out. I’ve learned to KEEP myself motivated this way and in my learning today I’m building my own projects at the same time. That way I learn what I need to know to get my own projects off the floor and it seems to help me learn faster. If this works for you, I’d encourage you to get yourself a project, and commit to building it. At least once you have some of the BASICS of OOP (Object Oriented Programming) down.
The other thing I’d recommend right off is to give yourself a break. You will NOT understand why everything works as you encounter it. Here’s a secret- you don’t NEED to understand it! All you need to know is how to make it work! Sound stupid? It’s true! You can “steal” code you find online and implement it (alway be careful to give credit if it’s something credit needs to be given for!) and make it work even if you don’t understand exactly how or why it does what it does. Rest assured, you WILL understand it sooner or later, but the overriding concern at first is just to make it work.
The same goes for what you read in books or do in a class. Just concern yourself with getting to where you can make it work. Understand it in depth later. Trust me, if you insist on understanding it all before you use it, you’ll slow yourself down considerably and you might even just frustrate yourself enough to where you give up. It’s fun enough just making things happen and grasping them gradually. You’ll make progress faster this way as well. So that’s my biggest advice. Give yourself a break!
Here’s the link to those classes. Please feel free to leave comments if you have other resources that have helped you as well. This is to help all of us!