5 ms·
I work in IT, where we use C# and .Net exclusively, and would love to develop iPhone apps in MonoTouch. However, I also think Apple is doing the right thing by
by clawrencewenham 17y ago
I work in IT, where we use C# and .Net exclusively, and would love to develop iPhone apps in MonoTouch.
However, I also think Apple is doing the right thing by banning "meta-platforms" from the App store. Adding layers of abstraction that only serve the developer, rather than the phone's owner, is hard to justify on small, battery-powered devices. Especially when introducing multi-tasking features, RAM becomes even more precious, and fameworks, interpreters, cross-compilers, etc. will cause a bloating trend.
If OS 4.0 does indeed make it easier to deploy IT apps across the enterprise without going through the App store, and 3.3.1 only applies to the App store, then I know my problems are solved.
- davidw 17y agoI think some form of "caveat emptor" would be more appropriate than simply banning stuff. One man's bloat is another man's lower barrier to entry for an app that he really wants to write, but has trouble writing in ObjC. Maybe it's supremely useful for a niche group of users because the author is an expert in some domain...
- clawrencewenham 17y agoI hate to say it, but that actually sounds like another excellent reason to keep that developer out of the market. Remember that the App Store is a business and a marketplace, where products are being sold to real consumers who want their phone--and everything that runs on it--to be reliable. IE: this is a professional realm. Professional programmers don't have a problem with learning a new language, if that's what's required to target a new platform. If someone "has trouble writing in ObjC", then they really need to work on their skills. This person sounds like a hobbyist who probably shouldn't be selling his wares to run on consumer electronics devices with limited RAM and battery life.
- davidw 17y agoI'm not talking about professional programmers. Here's a use case: someone in a niche field - say, an archaeologist, just to pick something - has a clever idea for a phone app that will assist him in his job. He knows a little about programming, and manages to put together a Lua script that does most of what he needs. Several of his colleagues find his code really useful and recommend it to their friends too. You're probably right that the app store isn't the right place to distribute it, but Apple doesn't give you a lot of leeway there, does it? In any case, if it's some random app for a niche, and people find it useful, who cares if it's got some deficiencies?
- clawrencewenham 17y agoBut Apple does give you leeway. You can distribute up to 100 copies outside the App Store, and they're now adding the ability to distribute as many copies as you like to in-house users over WiFi: http://www.apple.com/iphone/business/preview-iphone-os/ http://www.apple.com/iphone/business/preview-iphone-os/ Such apps are not bound by 3.3.1.
- davidw 17y agoWhat you're calling leeway, I would call 'crumbs'. I'm not convinced in the slightest that that sort of world is one I'd want to inhabit or recommend to friends.
- pyre 17y ago> I hate to say it, but that actually sounds like another excellent reason to keep that developer out of the market. Remember that the App Store is a business and a marketplace, where products are being sold to real consumers who want their phone--and everything that runs on it--to be reliable. IE: this is a professional realm. By that argument, we should keep anyone that isn't professionally certified out of every activity where people are also professionals. Want to create a start-up? Sorry, you're not professional enough to create a start-up, so you're legally banned from doing so. > where products are being sold to real consumers who want their phone--and everything that runs on it--to be reliable How can you hope to speak for all iPhone users? Do you really think that the interests and goals of every single iPhone user align perfectly with no conflicts? > Professional programmers don't have a problem with learning a new language, if that's what's required to target a new platform. If someone "has trouble writing in ObjC", then they really need to work on their skills. This person sounds like a hobbyist who probably shouldn't be selling his wares to run on consumer electronics devices with limited RAM and battery life. We should also make it easier to identify 'professional' programmers from the lowly hobbyists by creating a 'professional programmer' certification program. Sort of like a bar-exam for programmers. Then we would know that no professional programmer was lacking in any respect. All code produced would be perfect and of the highest quality. I mean, it works for lawyers. No incompetent lawyer has ever passed the bar-exam, and no medical professional that was incompetent has ever received a license practice medicine.
- clawrencewenham 17y ago> By that argument, we should keep anyone that isn't professionally certified out of every activity where people are also professionals. Want to create a start-up? Sorry, you're not professional enough to create a start-up, so you're legally banned from doing so. That's what's called a slippery-slope argument. It's also a fallacy. A startup does not have to ask Apple to provide a storefront, distribution network and billing system for them. > How can you hope to speak for all iPhone users? Do you really think that the interests and goals of every single iPhone user align perfectly with no conflicts? By creating a marketplace with a baseline of quality, you improve everybody's bottom line. Developers can spend less effort convincing the customer that their product isn't a buggy piece of crap that won't run, or needs special access to a restricted service, or any of the other things that Apple's review process screens out. Apple is removing barriers-to-purchase for the customers by converting them into barriers-to-entry for the developers. Doing this has made the App Store an impulse-buyer's dream, and this benefits everyone. > We should also make it easier to identify 'professional' programmers from the lowly hobbyists by creating a 'professional programmer' certification program. Perhaps that's coming, too. Despite your sarcasm, a legal profession with Bar exams or medical profession with licenses is still substantially better than one without. Even if, at the very least, they only provide a mechanism for taking consistently poor practitioners out of the system. But that's unlikely, because professional certifications are used when the professional himself is the product. Here, the app is the product, and Apple is screening on the merits of the product. I'm going to guess it's logistically impossible to train so many reviewers to look at each product in detail (with turnover, very high submission rates, etc.), so they have to give them broad rules. Right now, someone is claiming that CS5-compiled Flash games HAVE made it to the App Store, and that they are slow pieces of crap: http://www.reddit.com/r/apple/comments/bpdpo/see_for_yourself_why_flash_was_banned_from_the/ http://www.reddit.com/r/apple/comments/bpdpo/see_for_yoursel... If CS5 unleashes a tidal wave of Flash games into the App store, then yes, I imagine that iPhone owners will be disgusted with the state of the market, hurting everyone trying to sell a product there. (Think of the "September that never ended" and what it did to Usenet.) Even developers who've spent a little more time learning Objective-C so they can create a better product.
- CWuestefeld 17y agoIt seems to me that what's led to the success of the Internet is that it's not a managed environment. Anyone is free to release anything (subject to it not harming the rest of the ecosystem), and either it sticks, or it dies. Thus, its users can pick out what balance is most useful to themselves. But Apple believes that they can judge our needs better than we ourselves can. They have the wisdom (so they believe) to say that this hypothetical niche vertical app is less important than having everything meet their own rules, so it's not allowed to exist. Apple may even find that this buys them some short-term success. But in the long term, this will eventually lead to ossification and the same scrap heap as mainframes et al.
- stuaxo 17y agoExactly, I don't see what learning an older style language buys me - having to deal with a noisier syntax, .h files, manual refcounting etc. I chose monotouch as having done more high level language development recently, I don't want to go back to those things - and even find them abhorent. I also don't want to learn a "ghetto" language, which is locked to one platform - I want to be able to do learn skills that are useful cross platform (getting more use of a language I can use elsewhere). I don't buy that I won't get the most out of the platform doing this either, if I need every last bit of CPU and memory I'm probably doing something wrong anyway.
- elai 17y agoTo be honest, Unity3D is a lot faster than Sio2 or someones whipped up 3d engine.
- chbarts 17y ago> However, I also think Apple is doing the right thing by banning "meta-platforms" from the App store. But didn't Apple also ban writing apps in, say, Haskell and all other non-C-family languages that compile to machine code? Writing in a language like that is no more a "meta-platform" than Objective-C itself is.
- MrFoof 17y agoIn Steve's response to Gruber, I think I have an idea on how you could summarize his stance. "OK, I realize that by banning other development platforms, I realize I'm making that initial hurdle painful for those who aren't familiar with our preferred tools or languages. However, our tools/languages are always at the forefront. After reviewing Gruber's comments I'm well aware that it seems like a harsh move, but I want developers to bite the bullet and deal with the learning curve now rather than wait while everything else attempts to catch up to what we already offer." Steve's at least acknowledged that it was harsh. However, the main argument holds: If you want everything the platform has to offer - including optimal performance - you're going to have to use Apple's tools anyways. As a developer I myself think it was a very harsh move, but I'll also agree that using alternative development tools has a significant performance/feature trade-off right now. It's a significant learning curve. I think he's incredibly wary about user perception of not only the platform, but it's ecosystem of apps. The effect of banning alternative development platforms will probably have a minimum effect of the quality of the app ecosystem, but any negative is still negative to a notorious perfectionist who caters to the premium market.