You can think of this post as the first in a series of ‘The bits that nobody else explains very well’… An explanation ‘cheat-sheet’ article if you will, for anyone who’s starting to dabble in iOS or Mac OS programming and wants to not only ‘know’ how to program, but who wants to ‘understand’ what they’re coding as well. Many tutorials will gloss over these basic explanations, dismissing them as second nature, or failing to understand how fundamentally important it is that their readers understand the concepts behind the code they are being taught.
To some more experienced developers, these explanations might seem too simplistic and in some cases, even ‘wrong’ technically. That doesn’t matter here, what matters is that the fundamental concepts are understood. This article will be part of a series and if there’s a particular item you’d like me to cover just let me know in the comments section, or by heading to the contact form! Now without further ado, lets talk about Methods in Objective-C.
So, those who know me, will know me as an avid Apple fanboy through and through… But you know what? Okay, yeah they’re absolutely right. I love my Apple gear for its robustness, and its reliability. But recently, i’ve been becoming more and more frustrated with iOS. Specifically from a developer point of view, there are things I want to do, Apps i want to create that I just can’t because of Apples strict enforcement of the App store rules.
Now i’m aware that these rules supposedly lead to a lovely clean App store full of apps which all ‘just work’ etc, but in reality there are a ton of Apps out there that are utterly useless but have been ‘approved’ by Apple for sale. I’ll give you an example of an App I want on iOS, but can’t have (without jailbreaking of course!). An app that scans the air for all the WiFi signals in the area, tells me which channel / frequency is the best one to use for my wireless router for minimum interference. I also want to be able to monitor signal levels (in dB) around my house and make sure i get a strong signal everywhere. Basically that’s because i’m a
massive geek really cool guy, but also just a little bit because Apple won’t let me!
Android on the other hand… Well there’s no problem with android. I could make an app which did that, stick it up on the Google play store and have it ready for download in a couple of days if i really wanted to! My problem with Android, it’s not with Google and it’s nothing to do with the Core OS, rather it’s the crap that manufacturers and mobile carriers love to smother over the top of a perfectly nice clean operating system. HTC’s Sense UI is a perfect example, in my eyes it’s ugly, it’s dressing up android as a consumer level OS, when in reality it’s screaming out to be the OS of choice for geeks around the world. In some ways, efforts like HTC’s Sense is to Android, what OS X is to Unix (but not in a good way). It delays updates, performance improvements, and more… All for a (so called) pretty UI which consumers are supposed to like.
But here’s the thing, Google have had their line of Nexus devices for a fair while now, and what they provide is the very core of Android, the ‘vanilla’ kernel if you like. With no funky magical animated unicorn home screen backgrounds (although I’m sure you can enable that if you really must!) and finally with Jellybean, a system which is comparable (in my eyes) to iOS. Google have FINALLY sorted out the ‘Android Lag’ between touching the screen and stuff actually happening, and what’s more they have introduced a 7″ tablet, for under £200 that actually has some really nice specs. It really looks like a dream device for an App developer, which probably explains why i’m so very tempted to get my hands on one, and give Android development a go.
Couple this with the strange goings on at Apple of late, I’m talking about things like the sudden withdrawal of all machines from EPEAT only to have the decision reversed days later, in addition to the plain ugly leaks of what is rumoured to be the next iPhone. Apple appears to be faltering. I hate to say it, but i really think Apple is going to get some serious competition in the next year or two, from the likes of Google especially, but also Microsoft who appears to be trying to drag itself back into this century with PC+ and it’s Surface offering (supposedly a tablet, with no price or release date… We’ll see Microsoft, we’ll see!). Either way, it’s going to be an interesting couple of years, and it’s about time Apple got some serious competition… Now without further ado, i’m off to buy a Nexus 7, but don’t you think for one second that means i’m going to get rid of my iPad…
Let me know what you think, Android vs Apple… Will Microsoft even get a say in the tablet market, oh and does anybody remember the blackberries?
Welcome to the redesigned site, I hope you like it! The aim is to make it slightly more focused on mobile app development rather than my degree subject (Music Technology.) I am now ‘officially’ an iOS applications developer, and have had the opportunity to work on apps for companies such as Vodafone, Cablevision and Comcast. I’m learning a lot, and hope to continue learning something new every single day.
In this blog, i will gradually be uploading tutorials for basic iOS development techniques, through to hopefully some more advanced topics like Core Data, and Concurrency programming. Now, I don’t profess to be the master of all knowledge when it comes to iOS development, far from it… (I’ve only been doing this a few years!) But i hope i can create some high quality material to act as a starting point for some of the finer (less widely covered) topics of iOS development.
In addition to this, i aim to use this blog as somewhere to collect thoughts, links, and articles to interesting developments in the technology industry. It’s not going to be your go-to site for the latest news… Thats pretty well covered by The Verge, Engadget, and TechnoBuffalo and so on… My blog will be much more my views on relevant news stories etc…
Right, well that’s it for now. I hope you enjoy the new site (It’s still very much a work in-progress, so bare with me while i get the finer details sorted out) I’d love to hear what you think, feel free to leave a comment below, or send me a tweet (@sammio2).