How difficult is it to learn the iPhone OS programming language for someone that knows PHP (Procedural, not OOP) and MySQL?
Your SQL knowledge will still be useful.
But PHP is just different. The iPhone is like a desktop environment, very different from producing pages for a Web server.
The logical way to start is to learn Objective-C (the language) and Cocoa or Cocoa Touch, the Mac and iPhone frameworks, respectively. In XCode, these are integrated into a nice, fairly complete IDE.
I started on the Mac with Aaron Hillegass's "Cocoa Programming for Mac OS/X", though there are a number of specifically iPhone books if you want to jump straight into that.
Objective-C is object-oriented but simple. Not like C++ and better than Java for writing UI type stuff. It does help if you have some experience with a C derivative of some kind, just to be comfortable with the general syntax.
Or install in a different folder as said in the Dev Forums beta and recommended by Apple's Developer Tools evangelist...
That leaves the issue with not being able to go back to an earlier version once you install a Beta.
PS: I could be wrong (I'm probably wrong) but Beta 5 is the first that seemed to preserve my content after the install. I seem to recall that the others had reinstall all my media.
How difficult is it to learn the iPhone OS programming language for someone that knows PHP (Procedural, not OOP) and MySQL?
I don't know about PHP and MySQL but I came from Visual Basic and used RealBasic. The best thing about RealBasic was that you can compile your code for Mac, Windows, or Linux without any modifications. I am not a software developer but an architectural engineer who like to make my own programs.
I wanted to learn and understand Cocoa for Mac OS programing. I started from the basics with C programing and moved to Objective-C and then Cocoa. Except for C language, I used Apple documentation to move from C to Cocoa, Xcode, and Interface Builder. Don't waste your time and money buying books and use the documentation. I was surprised how easy it was to learn Mac and iPhone programing.
That leaves the issue with not being able to go back to an earlier version once you install a Beta.
PS: I could be wrong (I'm probably wrong) but Beta 5 is the first that seemed to preserve my content after the install. I seem to recall that the others had reinstall all my media.
No Solopism, that isn't correct. When you install in two separate directories, you can use each separately. I have iPhone 2.2.1 in /Developer and 3.0 betas in /Developer3.0.
Any installs of betas do on the 3.0 partition. To go back to 2.2.1, just open the other Xcode.
Projects opened on 3.0 can't go back and thats annoying yes, but uninstalling the 3.0 beta is simple. There's a terminal code to do it provided with the SDK.
No Solopism, that isn't correct. When you install in two separate directories, you can use each separately. I have iPhone 2.2.1 in /Developer and 3.0 betas in /Developer3.0.
Any installs of betas do on the 3.0 partition. To go back to 2.2.1, just open the other Xcode.
Projects opened on 3.0 can't go back and thats annoying yes, but uninstalling the 3.0 beta is simple. There's a terminal code to do it provided with the SDK.
I should have clarified more. Since you said there is an approved easy way to use each SDK, that only leaves the issue of testing your app on an earlier Beta of the iPhone OS, because you cannot go back to an earlier version of iPhone OS X after you have installed the Beta.
The main problem I have is that testing an app on hardware requires having 3.0 on your iPhone/iPod Touch. Most "little guys" don't have multiple units lying around for testing, since Apple has said not to install the beta firmware on your primary device. This leads me to believe that the firmware needs to come out sooner rather than later, because it puts a developer in limbo if they want to test their apps for 3.0, but want to keep a stable iPhone OS on their phone for typical usage.
Can you actually imagine that any developer would not care that his (her) app didn't work on 3.0? It doesn't matter how small they are, or even if their app is free. It must work with 3.0. I have almost 6 full pages of apps, I would get really ticked off if some of those apps stopped working after I updated my phone. I would give them a couple of weeks to get their act together, but really, there's no excuse.
The thing that sucks about this is as a developer once you upgrade to 3.0 you can't use the same build environment to update your 2.x code. This means you have to have 2 separate Xcode environments or separate machines, as well as two separate phones/ipod. Not really ideal.
Such is the life of someone who ties their fate to another company's rules. It's to be expected.
I don't see this as being a big problem. After a while, you will be able to forget the older OS.
Considering that Apple is giving the OS away for free to iPhone users, and for $9.95 to iTouch users, most everyone will upgrade quickly. At some point, you will simply need to tell your users to move to 3.0. If they don't want to, for whatever reason, too bad. It's no different with computer programs. All of them require an OS that's no earlier than some update that has something the program needs.
syndrome and all the associated negative publicity. Which is smart.
Like it or not, hardly anyone blamed driver manufacturers when stuff didn't work with Vista, no they mostly blamed the operating system.
most of that was probably just guerilla marketing from apple. like when the original EDGE iphone was released which was an overpriced piece of junk you had people posting how good it was all over the internet and their posts read a lot like talking points
Likely this is to force people to update their phones. Their have been stories about a large number of iPhone users scattered across all update points.
The jailbreakers write a lot about this on their sites and argue strongly against testing an app "needlessly" against a new firmware. It's certainly an obvious fact that it's better for the jailbreak community as a whole to have multiple firmwares "in play. Erica Sadun on Ars who is a big developer on the scene pushes quite hard for this.
Personally, I don't think that the jailbreakers are right when they imply that Apple is out to get them. It's too close to exactly what paranoid conspiracy types *want* to be true to actually be true. Apple has a vested interest in having a small jailbreak community so it can get a handle on what people think is missing from the product they are offering IMO.
I think there is a better reason to force developers to test against 3.0, and that is the sheer amount of absolute dreck in the store.
There are lots and lots of apps that are hardly above the level of a tech demo, that took all of five minutes to create and haven't been updated since the day they were loaded in the store. Possibly Apple is just sick of all the trash and wants an excuse to take out some really dumb old apps that are just getting in the way. There has to be some reason to remove apps or the store will gradually get out of control.
Maybe something to ponder over a refreshing glass of Coca Cola!
Quote:
Originally Posted by al_bundy
most of that was probably just guerilla marketing from apple. like when the original EDGE iphone was released which was an overpriced piece of junk you had people posting how good it was all over the internet and their posts read a lot like talking points
Such is the life of someone who ties their fate to another company's rules. It's to be expected.
I don't see this as being a big problem. After a while, you will be able to forget the older OS.
Yeah thats true, but when you first start testing your app with the 3.0 (in this case) apps using 2.2 are still being updated. It's a pain in the ass but it's not an insurmountable problem.
No, just speculation, from reading recently about one such developer who had to use unique ways to make his app more responsive on the iPhone. I am not sure what exactly was involved. The app is Now Playing, my preferred movie app. I'm using Showtime in the interim. Dictionary.com's app won't work either. I can't recall other off the top of my head.
I have that app and it crashes on me too, I hadn't tried it since updating. It's also possible that an app using an API that has change may behave this way too, but I'm not sure about the backward compatibility issue.
Gotta wonder when developers are going to start charging for upgrades. Perfectly reasonable, but you've got to wonder about people with 50 paid apps that will have to start paying developers to keep their software up-to-date with Apple's software and hardware changes (especially if Apple's changes don't fall in line with a developer's product cycle). It has to happen sooner or later.
Gotta wonder when developers are going to start charging for upgrades. Perfectly reasonable, but you've got to wonder about people with 50 paid apps that will have to start paying developers to keep their software up-to-date with Apple's software and hardware changes (especially if Apple's changes don't fall in line with a developer's product cycle). It has to happen sooner or later.
Yeah, going back and putting in those extra hours to retest the software adds to the cost somewhere down the line.
The main problem I have is that testing an app on hardware requires having 3.0 on your iPhone/iPod Touch. Most "little guys" don't have multiple units lying around for testing, since Apple has said not to install the beta firmware on your primary device. This leads me to believe that the firmware needs to come out sooner rather than later, because it puts a developer in limbo if they want to test their apps for 3.0, but want to keep a stable iPhone OS on their phone for typical usage.
The 'little guys' making money from their sales need to reinvest in another unit then.
Comments
How difficult is it to learn the iPhone OS programming language for someone that knows PHP (Procedural, not OOP) and MySQL?
Your SQL knowledge will still be useful.
But PHP is just different. The iPhone is like a desktop environment, very different from producing pages for a Web server.
The logical way to start is to learn Objective-C (the language) and Cocoa or Cocoa Touch, the Mac and iPhone frameworks, respectively. In XCode, these are integrated into a nice, fairly complete IDE.
I started on the Mac with Aaron Hillegass's "Cocoa Programming for Mac OS/X", though there are a number of specifically iPhone books if you want to jump straight into that.
Objective-C is object-oriented but simple. Not like C++ and better than Java for writing UI type stuff. It does help if you have some experience with a C derivative of some kind, just to be comfortable with the general syntax.
Or install in a different folder as said in the Dev Forums beta and recommended by Apple's Developer Tools evangelist...
That leaves the issue with not being able to go back to an earlier version once you install a Beta.
PS: I could be wrong (I'm probably wrong) but Beta 5 is the first that seemed to preserve my content after the install. I seem to recall that the others had reinstall all my media.
That is a good thing. It force developers to update the program otherwise have it pulled.
Yeah, but what does the license or whatever say about putting apps up on the store?
Does it say anything about having to keep your apps current/compatible with the latest iPhone OS
How difficult is it to learn the iPhone OS programming language for someone that knows PHP (Procedural, not OOP) and MySQL?
I don't know about PHP and MySQL but I came from Visual Basic and used RealBasic. The best thing about RealBasic was that you can compile your code for Mac, Windows, or Linux without any modifications. I am not a software developer but an architectural engineer who like to make my own programs.
I wanted to learn and understand Cocoa for Mac OS programing. I started from the basics with C programing and moved to Objective-C and then Cocoa. Except for C language, I used Apple documentation to move from C to Cocoa, Xcode, and Interface Builder. Don't waste your time and money buying books and use the documentation. I was surprised how easy it was to learn Mac and iPhone programing.
That leaves the issue with not being able to go back to an earlier version once you install a Beta.
PS: I could be wrong (I'm probably wrong) but Beta 5 is the first that seemed to preserve my content after the install. I seem to recall that the others had reinstall all my media.
No Solopism, that isn't correct. When you install in two separate directories, you can use each separately. I have iPhone 2.2.1 in /Developer and 3.0 betas in /Developer3.0.
Any installs of betas do on the 3.0 partition. To go back to 2.2.1, just open the other Xcode.
Projects opened on 3.0 can't go back and thats annoying yes, but uninstalling the 3.0 beta is simple. There's a terminal code to do it provided with the SDK.
No Solopism, that isn't correct. When you install in two separate directories, you can use each separately. I have iPhone 2.2.1 in /Developer and 3.0 betas in /Developer3.0.
Any installs of betas do on the 3.0 partition. To go back to 2.2.1, just open the other Xcode.
Projects opened on 3.0 can't go back and thats annoying yes, but uninstalling the 3.0 beta is simple. There's a terminal code to do it provided with the SDK.
I should have clarified more. Since you said there is an approved easy way to use each SDK, that only leaves the issue of testing your app on an earlier Beta of the iPhone OS, because you cannot go back to an earlier version of iPhone OS X after you have installed the Beta.
The main problem I have is that testing an app on hardware requires having 3.0 on your iPhone/iPod Touch. Most "little guys" don't have multiple units lying around for testing, since Apple has said not to install the beta firmware on your primary device. This leads me to believe that the firmware needs to come out sooner rather than later, because it puts a developer in limbo if they want to test their apps for 3.0, but want to keep a stable iPhone OS on their phone for typical usage.
Can you actually imagine that any developer would not care that his (her) app didn't work on 3.0? It doesn't matter how small they are, or even if their app is free. It must work with 3.0. I have almost 6 full pages of apps, I would get really ticked off if some of those apps stopped working after I updated my phone. I would give them a couple of weeks to get their act together, but really, there's no excuse.
The thing that sucks about this is as a developer once you upgrade to 3.0 you can't use the same build environment to update your 2.x code. This means you have to have 2 separate Xcode environments or separate machines, as well as two separate phones/ipod. Not really ideal.
Such is the life of someone who ties their fate to another company's rules. It's to be expected.
I don't see this as being a big problem. After a while, you will be able to forget the older OS.
Considering that Apple is giving the OS away for free to iPhone users, and for $9.95 to iTouch users, most everyone will upgrade quickly. At some point, you will simply need to tell your users to move to 3.0. If they don't want to, for whatever reason, too bad. It's no different with computer programs. All of them require an OS that's no earlier than some update that has something the program needs.
I upgraded and all my apps broke, bad Apple
syndrome and all the associated negative publicity. Which is smart.
Like it or not, hardly anyone blamed driver manufacturers when stuff didn't work with Vista, no they mostly blamed the operating system.
My guess is that version 3 will add code that they hope makes it very hard indeed to jailbreak phones.
sure, dream on...
I'd like to get in before all the ranting and cries of "Apple is evil!" just to say that this seems eminently reasonable to me.
Like it or not, hardly anyone blamed driver manufacturers when stuff didn't work with Vista, no they mostly blamed the operating system.
And since beta versions of vista had been released with proper documentation for these driver manufacturers, it really made no sense.
i had more stuff written but i'll try not to go off topic lol
This is no doubt to avoid:
syndrome and all the associated negative publicity. Which is smart.
Like it or not, hardly anyone blamed driver manufacturers when stuff didn't work with Vista, no they mostly blamed the operating system.
most of that was probably just guerilla marketing from apple. like when the original EDGE iphone was released which was an overpriced piece of junk you had people posting how good it was all over the internet and their posts read a lot like talking points
Likely this is to force people to update their phones. Their have been stories about a large number of iPhone users scattered across all update points.
The jailbreakers write a lot about this on their sites and argue strongly against testing an app "needlessly" against a new firmware. It's certainly an obvious fact that it's better for the jailbreak community as a whole to have multiple firmwares "in play. Erica Sadun on Ars who is a big developer on the scene pushes quite hard for this.
Personally, I don't think that the jailbreakers are right when they imply that Apple is out to get them. It's too close to exactly what paranoid conspiracy types *want* to be true to actually be true. Apple has a vested interest in having a small jailbreak community so it can get a handle on what people think is missing from the product they are offering IMO.
I think there is a better reason to force developers to test against 3.0, and that is the sheer amount of absolute dreck in the store.
There are lots and lots of apps that are hardly above the level of a tech demo, that took all of five minutes to create and haven't been updated since the day they were loaded in the store. Possibly Apple is just sick of all the trash and wants an excuse to take out some really dumb old apps that are just getting in the way. There has to be some reason to remove apps or the store will gradually get out of control.
What's that?
Maybe something to ponder over a refreshing glass of Coca Cola!
most of that was probably just guerilla marketing from apple. like when the original EDGE iphone was released which was an overpriced piece of junk you had people posting how good it was all over the internet and their posts read a lot like talking points
Such is the life of someone who ties their fate to another company's rules. It's to be expected.
I don't see this as being a big problem. After a while, you will be able to forget the older OS.
Yeah thats true, but when you first start testing your app with the 3.0 (in this case) apps using 2.2 are still being updated. It's a pain in the ass but it's not an insurmountable problem.
No, just speculation, from reading recently about one such developer who had to use unique ways to make his app more responsive on the iPhone. I am not sure what exactly was involved. The app is Now Playing, my preferred movie app. I'm using Showtime in the interim. Dictionary.com's app won't work either. I can't recall other off the top of my head.
I have that app and it crashes on me too, I hadn't tried it since updating. It's also possible that an app using an API that has change may behave this way too, but I'm not sure about the backward compatibility issue.
Gotta wonder when developers are going to start charging for upgrades. Perfectly reasonable, but you've got to wonder about people with 50 paid apps that will have to start paying developers to keep their software up-to-date with Apple's software and hardware changes (especially if Apple's changes don't fall in line with a developer's product cycle). It has to happen sooner or later.
Yeah, going back and putting in those extra hours to retest the software adds to the cost somewhere down the line.
The main problem I have is that testing an app on hardware requires having 3.0 on your iPhone/iPod Touch. Most "little guys" don't have multiple units lying around for testing, since Apple has said not to install the beta firmware on your primary device. This leads me to believe that the firmware needs to come out sooner rather than later, because it puts a developer in limbo if they want to test their apps for 3.0, but want to keep a stable iPhone OS on their phone for typical usage.
The 'little guys' making money from their sales need to reinvest in another unit then.