Everyone who thinks "I should be developing for platform X" is thinking far too small. Take a look around you.. how many of the great companies were formed developing for a particular platform (unless it's their own)? Almost none. In 10 years, do you want to be the old and busted equivalent of the MFC expert whose software was hot in year 2000?
You don't make the Googles, Facebooks, Twitters, of the world by developing just for iOS. Or just for Android. If that's your business plan, tear it up and start over. Because $0.99 a pop doesn't amount to jack-all unless you're Angry Birds. And even they, if they got $1 for each of their 500MM downloads, have still not made as much as Modern Warfare 3 made last week ($738MM in revenue).
Go create a market. Stop being part of Apple's/Google's market for drumming up hardware sales and/or serving ads.
1) You might not want to build the next Facebook. Many developers don't actually plan to start multi-billion-dollar companies. If you are an individual developer, or a small team, you cannot cater to everyone, you must pick the one platform most suitable for you. And then you can go create a niche app and make a decent living from it.
2) Even big and successful companies started on a single platform. A classic example would be Adobe: Photoshop was initially a Macintosh-only application, and has been ported only when it was already hugely successful. But actually Rovio is the best example that the choice of platform is extremely important: They have been hugely successful only when they started selling their iPhone app, and started porting to other platforms only when they were already extremely successful.
Hell, even Facebook, Twitter, Google started on a single platform: the web.
Whatever you create, even if it's for iPhone first, don't get bogged down on it being on "platform X". Photoshop, as you mentioned, is a great example, it didn't need to be on a Mac to be great. It just was developed there first, and now sells more on Windows (I think).
If you focus too much on the platform, once that market wanes, you end up nowhere. This is what I meant by the MFC guy -- maybe an even better example is the VB 6 guy. We know this guy, right? He's an expert with VB 6. He made a damn good VB6 app 10 years ago, which he's supported since then. But he spent too long focused on VB6, so god help him trying to get a job today doing C#.
Your idea doesn't have to be as big as Facebook. All I'm saying is, don't get so focused on the platform that you become that VB6 guy. Focus now, sure, but developers over time should be broad and flexible. And if you are starting something new, your idea should be too.
I don't think that everyone should develop for the iPhone or for the Mac. There are plenty of possibilities elsewhere. But if you happen to really like your Macbook, you can actually make a living developing Mac or iOS apps today.
I don't think most developers are capable of being excellent at iOS development, web development, Android development, desktop development, etc.
Certainly it's not advantageous to specialize only in a particular language (particularly a dying or dead one), but that's quite different from a specializing in a particular platform.
If they have worked with developing in these many areas, they'd likely have some experience in each, but be not experts in any -- there are just too many.
But the title of this thread is about "career advice", so if taken to mean "what's going to make me employable in the coming years?", Gruber may have a point. There will be a large number of jobs at ad agencies making cookie cutter "branded experiences" on top of iOS (unless it's swept away by HTML5). It may be a good career choice for people who used to specialize in Flash.
Personally, I don't find it particularly appealing to say the least.
Apple's goal (and every other platform maker's goal) is to commoditize app development. There are already hundreds of thousands of apps in the store. I don't say that developers shouldn't develop for iOS, I just say that Gruber's article generates false hopes for the developer masses.
Modern Warfare 3 didn't create their own platform, and no sane game studio will create their own platform. They'll follow what people buy. People bought xBox, okay, get that game on Xbox. People bought schelabiza to play games, okay, get that game on schelabiza.
Modern Warfare 3 made much more money because it's not Angry bird. Like GTA, Skyrim... these are games that you pay $30-$50 for and not a buck.
What Gruber meant is this: This platform is going to be huge. Really huge. He is betting on iOS. Investing your time learning/developing on iOS is good for your career because you'll be able later to create apps, work on companies, do consulting...
Modern Warfare 3 made much more money because it's
not Angry bird. Like GTA, Skyrim... these are games
that you pay $30-$50 for and not a buck.
Pretty sure angry birds didn't cost that much.
I started to develop for the web and the browser "platform" in the late '90 and it is still going strong. Maybe it is _you_ who are thinking too small? Back in the '90 we knew that the next big thing would be mobile, but it never happened. It was first when Apple introduced the iPhone, iOS SDK and the AppStore that we got a breakthrough and everyone could develop and get their app on a mobile device. Before Apple, only a select few, anointed by telecom operators and for a step price could get their app on a mobile set. I say that Apple paved the way for making development for the mobile platform accessible for "everyone" and now finally, mobile might just be the next big thing. What is interesting is that the browser "platform" still is a strong alternative for mobile and native apps.
TLDR: Do not be a sharecropper, it sucks.
I'm going to go out on a limb here and guess MW3 cost a little more to make.
Tons. But depends what you mean by great. I hear that that Angry Birds company is doing ok. And I know there are thousands of companies making Windows only products that make quite well.
"""In 10 years, do you want to be the old and busted equivalent of the MFC expert whose software was hot in year 2000?"""
Neither I want to be the old and busted failed startup founder.
"""You don't make the Googles, Facebooks, Twitters, of the world by developing just for iOS."""
More like: you don't make the Google's, Facebooks, Twitters, period. Those kinds of companies are so few, you are almost as likely to win the lottery than create one.
It's just the protestant ethic of "hard work = success" and the retroactive worshiping of their founders that makes it seem not so.
There's nothing wrong about building a smaller business, either a lifestyle mom+pop shop, or a 100 employee company. Not only there's nothing wrong about it, but you are far more likely to succeed.
Just the same, though, Markdown is a pretty big deal. It's the de facto standard for content markup. I wouldn't call John Gruber a nobody.
He developed much of Firebug and worked at Facebook in the mobile division (creating the Facebook iPhone app), for those who don't know him.
Gruber's technical abilities and his keen understanding of how Apple works give him more bonafides than most of the people writing tech columns in the field today.
That's one simple way to look at it. Another slightly less simple way is that the ones that already have Apple devices are the savviest, hippest, and spendiest consumers around, and you can't possibly hope to milk as much money per person from the ones that adopt later.
Here in Dublin, at least, iPhones are becoming extremely popular, even with the losertechnicians of the world. Businessmen with no tech skills are replacing Blackberries with them, teenagers are flocking to get them, and there are even dodgy-looking iPhone accessory shops in bad neighbourhoods.
Over here, since around the start of this summer, the iPhone 4 has been available for free on a 40 euro per month contract with unlimited data and enough minutes/texts for the vast majority of people, on pretty much every network. That's a really good deal, and a huge number of people bought into it, figuring that they spend at least that on credit anyway.
When the iPad 2 launched over here, there was a period of 8 months where you could not find ANY, at all, even in the authorized resellers that Apple likes the most. At any one time there might have been one for sale in the whole city.
Android is gaining momentum here too, and I don't know figures for any of this, but I definitely haven't seem them on as many non-hackers as I have iPhones.
In conclusion, no, the people who have iPhones are not the Apple-savvy hipsters. At least in this city.
The first wave are the tech enthusiasts, these people are not big app buyers but are interested in finding a good SSH tool, or an mail client that supports PGP. These were the main customers of the first iPhone.
I'd say we've been in the second wave for the last couple years. These people are seeing TV the ads and are curious. Their friends buy iPhones, it makes sense for them too as well. They're not "hackers", just people that are willing to try apps. These are your Angry Birds players, and where the main revenue comes from.
The third and final wave will be moms and general folk who will never sync with iTunes. It's those people that are never going to buy an app because they won't know what an app is. And that's fine, they'll like how their phone talks to them and how they can Facetime to their kids.
I don't mean to say that all iPhone 1 users are "hackers", just that a higher percentage of them were than are now iPhone 4S users. A lot of those people likely went off to Android in the recent years, anyhow.
Given that the first iPhone had no 3rd party apps apart from web apps, this seems highly unlikely.
It's more likely true of early Android phone buyers.
I have a handful of uncles/aunts who'd disagree.
You can still make fortunes and/or have an interesting career with other platforms and technologies too.
About 77 million of the "big two" (60 million Android, 17 million iPhone) smartphones shipped in Q3 2011. Apple has a huge install base, but it's not Apple's game anymore - Android has more than 3x Apple's marketshare, and is on a meteoric rise in contrast to iOS's slow marketshare decline. More and more customers are being introduced to mobile devices, and we're still in the early stages of the mobile landgrab. There's a lot to be won, but it's disingenuous to focus on Apple as the nexus of that growth.
Because this (and several other comments on this submission) appear to attack Gruber for not talking about Android, and I think that is an extremely unfair criticisim given that he was speaking to iOS and Mac developers at an event about iOS and Mac development.
More generally, I have a morbid interest in HN's tendency to flip it's collective shit whenever Gruber's name is mentioned, and have honestly lost faith in my ability to tell when that sort of criticism is intentional or not. So when presented with something that sounds a little dubious, I'd like a clarification. There have been times in this site's past where that was not offensive to anybody.
I hope that answers your question.
You know that's not what he said.
I don't understand why you take issue with my asking a question but then feel permitted to tell me what I know, but I don't care, either, so there's that.
His summary: Android=$4428.08, iOS=$5914 (over the same time period)
So it is true that Android users spent less, but not by a huge amount.
iOS = $5914, Android and iOS = $10342.08
Between the question of statistical significance and the vagaries of mobile app promotion and discovery, it's hard to say that one clearly pays better. However, both usually pays more if one is paying well, so it would often pay to support both as soon as it is practical to do so.
Did I miss something?
I mean, writing good technical reviews and opinions about iOS is a very nice thing. But give advise to mass developers should be done from experience, rather than theory.
As for the advice itself, it is right that in five years from now, mobile devices will be all over the place and today's sales volumes are just the iceberg's tip, yet, a developer should think about the opportunity of "mobile-computing" rather than a particular "mobile device". For me, it is a web developer who decide his web apps are to be working with chrome browsers only, since the number of chrome installations today is nothing comparing to what it will be in 5 years from now, and simply ignoring safari, firefox (and even ie, oops).
Five years ago, when Chrome didn't even exist, someone could've said the same thing about Firefox. Funny how fast things change, eh?
What Gruber is saying is that anyone who is developing for Apple's platforms is about to enjoy an enormous surge of opportunity. As these platforms see even further adoption, their capability will only increase. So if you're in Apple's playground, you're watching it turn into Disneyworld in a way that will never come again once these devices are baked into people's assumptions about how the world works.
Of course he is. That's all he ever does. Everything he says is worthless because you already know how lacking in substance the man is. Damn the Apple users who keep upvoting his garbage.
Even so, competition is fierce. In May this year there were 85,560 unique developers writing apps for the store.
Having said that, gold rushes are how big cities are built.
That's a hilarious sell. Better not mention the bigger, even faster growing Android market.
Not that you shouldn't develop for it (hell, >1 million activations/day), but the climate over there is very different.
So, don't believe the hype.
Theoretical computer science is also in an exciting time--it is a nascent field with many exciting discoveries and inventions to be made even without gigantic budgets. I think it's something like physics in the early 20th century, before they started needing gigantic particle accelerators and the like (I'm sure physics is still exciting and I'm just showing my ignorance, but I think there's a parallel nonetheless).
Right now is a perfect time to be a developer or computer scientist anywhere, not just at Apple.
Most of the stuff I see in academia is incremental improvement. Not that this should ever be downplayed.
We also have the misfortune of struggling with the deep unknowns, as all of the trivial theorems have already been proven before (consider Feynman's definition of trivial in 'Surely You're Joking, Mr. Feynman!', New York: W. W. Norton, pp. 69-72, 1997.)
But some improvements are greater than others. The question is where you draw the line. And I hold that most researchers' line encompass more then yours. Consider, for example, Jiří Matoušek's opinion of Computational Geometry in 2010 (to save you the reading, he called it no less than an annus mirabilis. You can read his reasoning here: http://kam.mff.cuni.cz/~matousek/mor.pdf)
No disrespect intended to the kings of disco, but being a successful in a fashion bubble doesn't make you cool or give you shelf-life. I hate this sort of talking up. Gruber has been really hard to stomach since iOS took off.
"unless something unbelievable, dramatic changes" - You should expect surprise and drama in a walled garden. Facebook apps have been a lasting source of substantial revenue for only a few companies.
Why has this story got 118 points?
You bring the dynamite, I'll bring the pickaxe & canary, let's gold rush!
In my opinion, the real issues about web apps are: performance, lack of the Device API and a lack of matured tools. Solving first two is, luckily, a question of "when", not "if". The latest phones are already fast enough to handle even the heaviest jQuery monsters; LTE and 4G are getting traction and Device API is a work in progress (eventually, there's a PhoneGap).
Perhaps the route forward is a simple web app to cover everyone, then focus on the top platforms for native.
In the mid 80's I used to see into Bobby Peterson of The McCoys at various parties around Gainesville.
Hopefully, it is a poor simile.
Developer Daniel Markham calls iPhone development “App Store Roulette,” and Andy Finnell of the software studio Fortunate Bear cautions against hoping for App Store success. “You’re betting a lot of this on luck, and the odds are stacked against you," Finnell says. "You’d have better odds playing slots at a casino.”
Indeed, as much as app development has been called a gold rush, there is an equally loud theory that it operates more like a casino.
“The closest thing I’ve seen to a ‘business model’ for marketing iPhone apps is to advertise like crazy until you get into the top 50,” says David Barnard of AppCubby. “Once you’re there, the top 50 list will start generating its own buzz...But that’s not a business model, that’s like rolling the dice at a casino.”
The one difference is that a lot of people still made good money on that flop.
Is there any platform out there where you're guaranteed to make money just by showing up?
I doubt it's any different with software sold at Best Buy or Target or Amazon. I doubt that it has ever been much different.
It astounds me that there are still jobs for developers. I'm not talking about SV stars, I mean the hundreds of thousands of programmers writing CRUD apps around the country. That is eminently moveable, and if the stereotypical code quality of the stereotypical foreign outsourcing shop is sub par, it's not because they don't have the same brains as we do, it's merely because a) they haven't caught up with us yet (they will), and b) they haven't captured that work as primary developers yet, they're still learning to take that work by being (at the moment) sub contractors.
Japan after World War II, for example, broke into the market by making "cheap plastic crap" and motorcycles. Then better plastic crap and small cars (remember the Honda 600?). Then really good plastic crap and really good cars, and now that pie is divided among many more people around the world, including "our" pie.
Why will software be any different? It takes no resources except a brain, a computer and a connection. The whole world has the same quality of brains and computers as we, and their connection quality is often much better and cheaper than ours.
It takes one more resource: communication. Custom software development is quite different from motorcycles. If you need custom software development, and your business is going to depend on the result, outsourcing that effort to another country, especially across cultural and maybe language barriers, can be a disaster. You need developers who understand your business and the expectations of your customers.
In fact, take your argument and apply it to every other position in a company. Only a few of them, like sales, truly require an in-person presence, yet companies don't outsource most of them. Are they crazy, or are there good reasons for that?
For now. Yes, today it often is a disaster. It won't always be so. We didn't used to have an Indian software industry at all, for example. Now there is one. And one day it will be a no brainer to send most CRUD work there. In fact it won't be "sent" there, that function will exist there. And not only because India and other countries catch up on an industrial scale, but because businesses will demand it. Supply and demand has two sides, and demand will be filled, however slowly.
"yet companies don't outsource most of them. Are they crazy, or are there good reasons for that?"
They haven't got good at it yet, but they're trying and learning, and suppliers are getting better.
Large corporations only make one thing, money. Each one happens to do it by selling something different, but what they sell is incidental, what they're good at is making money. Part of making money is not spending money. If you're a bank, your software systems may be crucial to your business, but they're two steps away from the primary business of making money: 1) Make money, by 2) selling bank services, enabled by 3) software and other systems.
If you can get the same or better quality outside your building you'll do it if it's cheaper and good enough. If you have a communication problem between the software department and the investment department, one solution is to send both departments outside the building, and let them communicate with each other in a cheaper venue. If it's possible, it will be done.
I'm not saying don't go into software development. I'm saying that the world changes, and my 13 year old son's career is going to be much different than yours, inevitably. And your career is going to be much different in twenty years than it is today, not only because you'll have changed and grown, but because the world will have changed out from under you. And it gets faster every day.
Here's hoping that we're all rolling in dollars in twenty years. Or rupees.
What would be really interesting is microsoft getting in the desktop app store game with windows 8. There's a gigantic potential market, if they manage to unlock it. I doubt they will, but still ... interesting.
That was the beautiful thing about developing software in the 90's: people were still willing to pay for stuff, you just had to figure out the (often insurmountable) distribution. Now, it seems like the only way to make a meaningful income is to insert yourself between layers of large business.