I think there's an "Android Audience". Regardless of device, they/I want portrait and landscape, android look 'n feel (Actionbar, etc), desktop widgets, background push, and so on.
There are fairly easy ways to support some new and old APIs without resorting to lowest common denominator, such as checking the version before making the API call, and reflection. It is a continuing support and testing issue to support "This works on 4.0+ only" features.
The big problem with testing is interacting with OEM and 3rd party apps for your own core app functionality. Such as launching an external camera to take a picture: who knows what camera app the user has installed, and what it will return back to your app.
Read the terms of service for the sites. Who owns the data and when are they allowed to turn off? Answer: you "own" it but they can do whatever they want with your content, and they can turn off the service any time. Boot up that server in your livingroom if you want your content to live on.
Posterous :
however, by submitting material to Posterous you grant Posterous the irrevocable, fully transferable rights to use, reproduce, distribute, modify, transmit, prepare derivative works of, display and produce the material in connection with Posterous and Posterous's business, but solely in accordance with these Terms of Use and our Privacy Policy.
Posterous is provided 'as-is' with no warranty of any kind. You use the service at your own risk. Posterous expressly disclaims any warranty, express or implied, regarding the site or its content, including any implied warranty of merchantability, fitness for a particular purpose, or non-infringement.
I know what the terms of service say, and I certainly know the terms of service allow Twitter to be assholes about this particular issue. They're still assholes, though, and they're assholes because they're getting in the way of their own users.
I like reinventing the wheel. If someone makes a good wheel, it's not much fun or educational to just say wheel.roll();
It's much more interesting to write it and work through the issues. Guess it depends on the context, if you just need a wheel to roll vs if you need to know how it works.
He makes an interesting/controversial point:
"It still takes ten years to become a success, web or no web."
...
"Listen instead to your real customers, to your vision and make something for the long haul."
I wonder how many people doing startups are prepared for success to take ten years.
I've heard that it takes 10 years to achieve true mastery of any craft. He said it took ten years to "become a success", but that isn't limited to just one company. Personally, I plan on trying and failing as many times as necessary over the next 10 years until I get to be really good.
10 years to achieve true mastery? Sounds about right. I've also often said it takes 3 years to "get dangerous," in both senses. My data is from studying and teaching music.
On an even shorter time frame: once you get to the point that you're enjoying what you're doing, the only one who can stop you is yourself.
I wouldn't look too far into the number "ten years" and think it applies to every single startup. Obviously, this isn't true, and I think he's using it more as just a way of saying "it takes a while."
Right, "ten years" probably means "way longer than you think". Or maybe he does really mean about ten years.
Anyway, it's an interesting path to the ten years. Maybe you've just (http://www.paulgraham.com/bronze.html) got a bad idea that's not worth hanging on for ten years as it'll always suck. Probably an early milestone is to get (http://www.paulgraham.com/fundraising.html) ramen profitable. If you can't get there in n years, reboot (?)
Maybe (http://www.paulgraham.com/bio.html) some comp sci phd angel/vc former founder will figure out the algorithm to optimize the ten years to reduce it by an order of magnitude.
The big problem with testing is interacting with OEM and 3rd party apps for your own core app functionality. Such as launching an external camera to take a picture: who knows what camera app the user has installed, and what it will return back to your app.