Hacker News new | ask | show | jobs
by Todd 4393 days ago
Sorry to disagree with Gruber, but I don't think a set of devices made by one company is the future. It's always been Apple's play, in part because of the consistency of experience that it affords them, but it also let's them off the hook on the hard problems--device interop, working with varied OEMs, etc.

Whether open (Google) or closed (Microsoft), platforms that run on multiple OEM devices are the right way forward. I don't know about others, but I don't want to live in a world where my only option to control my house, car, and life is to go to an Apple store. At least Google and Microsoft give us some choices.

So far, there's been no mention here of the developer experience. Gruber only mentioned developers, but not the 'developer experience.' It's like it doesn't matter anymore. Apple is finally doing interesting things in the developer area with Swift. However, here, they're playing catch up with Microsoft and, to a lesser degree, Google. Their language at 1.0 is similar to Windows Phone 7--very late to the game. In addition, you're still left with much of the less than desirable developer toolset. Microsoft developed C# and Visual Studio more than 10 years ago now. They're way ahead here. They also open source much of their developer stack now (the new C# compiler, TypeScript, web stack, etc.). Gruber doesn't even mention this aspect. I guess it's not important to end users, but it does make a difference with the people building for their platforms, devices, and services.

I feel like we're living in a constant world of incompatible systems whose (nearly) sole purpose is to "own the market": VHS vs. Beta, GSM vs. CDMA, Canon vs. Nikon lenses, and so on. This world makes the Internet and the Web seem like a rare anomaly. Tesla's opening of the patent portfolio in an attempt to stave off incompatible fuel stations is apropos to this.

9 comments

> Whether open (Google) or closed (Microsoft), platforms that run on multiple OEM devices are the right way forward.

After a six-month experiment with Android on a Nexus 5, I couldn't disagree more. Separating the folks who make the OS from the folks who make the device just leads to compromises.

Apple has the right model. Just look at what they've managed to do, for example, with battery life. Nobody can match the hours of use per watt-hour of their tightly-integrated stack. This is the way forward. I'm extremely excited to see what Microsoft can do with Surface and Lumia brought under one roof.

I honestly couldn't find a complaint with the Nexus 5. It's a stunning, fluid device. The only leg up in my eyes for the iPhone is the better app curation, but as someone who uses mostly web apps and Hangouts that's not a big demerit to me.
My biggest complaint is that it's just buggier than the Lumia I had before, or the iPhone 5 I had before that.
IMHO, it sounds like your biggest complaint is "it's not an iPhone".
> Just look at what they've managed to do, for example, with battery life. Nobody can match the hours of use per watt-hour of their tightly-integrated stack.

That's not my (anecdotal) experience at all. My friends with similarly-specced phones like the Xperia Z1 Compact have their battery last way longer than my iPhone 5S. The iPhone may have better standby life, but we're heavy users, and as soon as you're using it the iPhone drains it like there's no tomorrow, and Apple arrogantly put a tiny battery in it (1400 mAh vs 2300 mAh for average Android phones).

Androids battery life woes are mainly due to the fact that apps can stay open in the background as much as they want, whereas on iOS Apple have strict limits (which is why stuff like IRC apps can't be done on iOS)

The problem with hacker news (and really all online forums) is how plagued it is by "anecdotal" experiences. I would appreciate if people took the time to Google for some facts instead of writing about random anecdotal experiences that might be exceptional or misinformed. rayiner's response is really what would've helped the original post, even if it was coupled with something anecdotal.
Part of the problem with discussions about phone battery life is that the available websites don't do a very good job of testing it. My anecdotal experience with carrying an iPhone 5 for years, then a Lumia for about a year, then a Nexus 5 for about six months is that the Nexus 5 is by far the worst at dealing with marginal signal conditions, like my train commute from DE to PA. I've never seen this sort of thing formally tested anywhere.
I'm a fan of Android, use a Nexus 5 as my personal phone (and used a Nexus 4 prior to that) and make my current living writing Android apps, but you're right about this.

On my list of annoyances with Android, the way it handles marginal signal conditions (on every Android device I've ever used, which is quite a lot of them) is very high up there. Android (relatedly) does not handle wifi/cell radio passing very well, it will hold on to a poor wifi signal long after it should have switched over to the much more usable cell connection. I find myself regularly having to explicitly switch wifi off when there is a poor wifi connection available (which is luckily pretty easy to do but annoying that you have to manage it manually) just to get a reasonably usable network connection for apps.

I've got to say that hasn't been my experience at all with online forums. Many times, I get insightful feedback or review of a post to the point where I needn't read the original. Maybe places like Reddit, etc. really bring out more personal experience since the topics and community are so varied, but there was a poll here not too long ago about how accurate the opinions are here. That's objective data showing you that the anecdotes are as right as you're going to get. It's a fact.
"...but there was a poll here not too long ago about how accurate the opinions are here. That's objective data showing you that the anecdotes are as right as you're going to get. It's a fact."

By definition, an opinion poll is not objective. Are the results of a presidential election objective data on who the best candidate for president is?

The z1c has a 60% larger battery and weights 25% more. Ounce for ounce, or per mAh, though, the iPhone has really impressive battery life. Where it really excels is standby and radio power management. 10 hours of LTE browsing on Anand's and GSMArena's tests. My Nexus 5 is often on its last legs by midday with less than two hours of screen-on, because it'll chew through its battery in weaker-signal conditions. The iPhone tends to avoid killing itself that way.

On the desktop side, Apple is in the 10-12 hour range of light use with the MBA and MBP Retina. Comparable ThinkPads require the six-cell add-on battery to get there.

I haven't seen much difference between Macs and other laptops. My current MBP 13" (non-Retina) lasts for about 5 hours when doing normal dev work (text editing, compiling, debugging), I would consider this "light use". This is similar to the Dells, Sonys and Lenovo's I had before or currently use. One difference I see is that battery life doesn't seem to degrade as quickly as on other laptops I owned a few years ago.

I don't have "cross-platform" experience with phones, but my iPhone4 running iOS7 is pretty much drained after a normal day's use (it was better with iOS6).

All "anectodical evidence" of course ;)

The MacBook Pro Retinas and MacBook airs take advantage of newer battery cells, and have greatly improved battery life in my experience. The 13" MBP battery never impressed me.

Also, not sure when you bought your particular iPhone, but the iPhone 4 is coming up on being 4 years old (announced round about the same time as the Galaxy S for comparisons sake) and it's still able to last a full day with the latest software, and all on single core processor. I find that really impressive, to say the least :)

10-12 hrs sounds exaggerated, I've never once seen a MPB last even ~5 hrs with light use.
No MBP boasts 10-12 hours, that's only the MBP Airs, which from my experience, follow up on that promise.

The MBP Retinas boast up to 9 hours, at the max, although those models I haven't used routinely. However it has been my experience that the MBP Retina's battery life are significantly more preferment than their non-retina predecessors.

I don't think it has anything to do with the hardware. Android does a lot more to drain the battery, the Android Sync mobile is constantly downloading stuff in the background, and Google Now runs continuously.

If you want to see an iPhone 5S have the same battery life as an Android device, turn on Google Now on iOS with Location History.

> Apple has the right model. Just look at what they've managed to do, for example, with battery life. Nobody can match the hours of use per watt-hour of their tightly-integrated stack.

Battery shouldn't even be the last thing someone advocating an iPhone must argue upon. iPhone's battery life is dismal in a way that it feels like Apple engineered it - for whatever reason. You want to see battery life? I'll give two examples that doesn't even cost a limb - Lenovo P780 and Lenovo S860. (There are more). The point is iPhone's battery just doesn't last long enough if you use it as a "smartphone".

>Whether open (Google) or closed (Microsoft), platforms that run on multiple OEM devices are the right way forward. I don't know about others, but I don't want to live in a world where my only option to control my house, car, and life is to go to an Apple store. At least Google and Microsoft give us some choices.

Platforms that run on multiple OEMs might be good, but you haven't proven that. Those choices would be good if they actually delivered a better experience than Apple's vertical integration. It doesn't matter to me (or any other end user) that its harder for Google or Microsoft to deliver a good experience with their strategy. That's their problem and something of their own choosing, so they don't get any points for that.

> Those choices would be good if they actually delivered a better experience than Apple's vertical integration.

"Experience" is not the only axis of a successful strategy.

Its odd to imply that Apple iOS has a worse developer experience than Google. IMO, MS is far and away the best but if I had the choice of targeting Apple's 5 devices vs Android 1000, I'd choose Apple. I have not heard spectacular things about Android development, especially with regards to fragmentation that would lead me to believe that from a developer POV Google is better than Apple. Granted that this is only for mobile.

Doubling down on mobile, say what you want about the walled garden, but it seems in "developer" experience Apple also wins when you consider the size of their developer eco systems. The App Store simply makes more money and it still seems that the iPhone still gets preferential treatment.

In the end open vs. closed or single OEM vs multi OEM doesn't seem to matter.

In my experience, the java code is more concise to read and easier to deal with. At work the android client is less 'visually ambitious' than our iphone client, but tends to actually have less bugs and faster development times. Android has put some thought into multi-sized layouts and had the right idea how to do ui layout files from the start with their xml layout files. Android accepts the reality that multiple versions exist and allow you to backport new libraries into old versions. iOS not so much and we feel the pain in our development times and bugs.

Apple did their GUI foundation right with CoreAnimation, touch recognition and choosing c++ & objective-c as the foundation of their mobile OS. Android didn't do it right with java, a garbage collected language and their UI rendering fundamentals, and everything suffers the consequences of that today.

I can almost hear the cringing of so many programmers at Apple right now as they read "finally doing interesting things in the developer area with Swift", considering the last 5 years saw tons of excellent improvements to Objective-C.
"I don't know about others, but I don't want to live in a world where my only option to control my house, car, and life is to go to an Apple store."

Me either. Even so, I still believe Apple got the model right. If only we could live in a world where we have a healthy competitive ecosystem of Apple-like companies. Then you would have many options at hand to control your house, car, and life.

> Me either.

I think this attitude is a very typical of HN and very atypical of the larger world. Almost everyone I know who does not work in tech would be completely enamored of a single Apple device which seamlessly interfaces with their house, car and life. They would love to live in that world--and soon will. All this hand-wringing by a niche community over Apple's lack of openness seems incongruous when compared to the literally tens of millions who would embrace such a thing with open arms. You really begin to wonder which side has the right of it.

We need forward thinking investors like pmarca to drop some of the VC cash on the W3C standards process. We have the most amount of innovations and investible companies when there are more open APIs. The image tag, the current implementation of which was first coded by pmarca, enabled tons of startups, the biggest of which are companies instagram, facebook, imgur, etc.

The one API that is languishing at the W3C that would help us immensely is the Contacts API. Right now your contacts is effectively owned by companies like Google (via Android), Facebook, and Apple (via iOS). Every other company that wants access to your address book for the purpose of a social experience, needs to go through those three gatekeepers 99% of the time.

The ideal gatekeeper of your contacts should be the browser. The term for them is "user agent", i.e. it acts as an agent on behalf of the user. Right now there are a lot of "skills" these user agents lack. Investing in giving them more skills creates more decentralization and debases the power of the giants we resent.

I think you're right about using the web as an interop protocol. I want to see that future (or that present, more evenly distributed).

But I believe the browser is NOT the ideal gatekeeper. The ideal gatekeeper for your contacts is, surprisingly enough, an app designed to manage contacts. And as long as the inerop protocols are respected, switching from one contacts app to another will never be a problem.

Browsers must be the gatekeeper, otherwise Facebook continues to be the only way to get your contacts into web apps.

What browsers need to do is leave more of the experience to end developers and expose as many low level APIs in a safe way. Browsers would do best if they focused on a sane approach to ACLs.

Browser plugins like SafeScript for example one basic way in which things could be better for users. What SafeScript lacks is reputation information on resources to help non-technical users make decisions about what to trust and what not to trust.

e.g. Alice and Bob are friends. Carol is a tech professional with a stellar reputation. Alice is tech savvy. Bob is a luddite. When Bob is presented with an ACL request for an unrecognized resource (such as an app or script from an unrecognized domain), Bob should be able to check if either Alice or Carol decided to trust that script.

Reputation systems, the web of trust, organizations like Spamhaus, EFF, Mozilla etc. can all go a long way to helping users make sense of what they can and cannot trust on the internet.

The ideal user agent would be like a docker container with an ACL for taking sensitive user information and sharing it with whatever is running in the container in a safe sane way that puts the user's safety and experience first.

I would love to see someone take the following things/features and mash them up:

* docker/lxc * chromeless browser windows controllable via API and any programming language (not just javascript) * QT like windowing system with URI routing and skinnable with the good parts of CSS. * ACL * reputation system for resources with URIs * Incrementally loadable

Linux containers provide the ideal technology to reimagine what the web could have been if Kay [0] and Engalls vision had become the predominant way of internetworked sharing of stuff.

[0] http://www.drdobbs.com/architecture-and-design/interview-wit...

And you would have to make sure you bought them all from the same company. That is the problem. What if the company makes a great phone but a terrible refrigerator?
Exactly. Apple has this issue. Their airports have excellent software but atrocious hardware with crappy antennas. I'm waiting until there is either decent dd-wrt support for Ubiquiti's UniFi AC enterprise router or until Securifi's Almond+ ships[0]. I can't wait until I have a solid alternative so I can dump my TimeCapsule. Alternatively, I've heard good things about pFsense on OpenBSD paired with a solid antenna card.

[0] http://www.securifi.com/almondplus

> If only we could live in a world where we have a healthy competitive ecosystem of Apple-like companies.

That would require these companies to share interoperability specification. Something Apple tries mightily to not do.

All that being said, Apple definitely sets the gold standard on the user-experience axis, and the entire landscape is better for it.

Actually we are worse for it. No one focuses on cooperating on standards that could provide better experiences anyone. How often do you meet an engineer that has contributed to an IETF RFC or a W3C specification, and implementations of that specification.

If anything, Apple has popularized the tragedy of the commons, giving everyone a false prophet to worship: walled gardens are the way to make seemless experiences.

The only reason walled gardens provide seemless experiences is because everyone trying to make their own walled garden fragments things further.

I know of know experience more seemless than Internet Protocol. RSS and XMPP were also pretty seemless for the user.

A vision of the world where walled gardens are viewed as the only path to a seemless experience produces a vicious cycle leading to a dystopian self fulfilling prophecy.

Not at all. Each Apple-like company would create their own inter-op ecosystem for their own devices. In this hypothetical world, Todd would get exactly the choice he asked for - all of the good user experience without the Apple brand.
Ugh, that sounds like a dystopian future to me. It reminds me of Sony's attempts at roping people into their media ecosystem during the 80s and 90s.
> I don't know about others, but I don't want to live in a world where my only option to control my house, car, and life is to go to an Apple store. At least Google and Microsoft give us some choices.

But you are okay with your only option being some humans on this planet, you just don't want them to be in the same company?

> I feel like we're living in a constant world of incompatible systems whose (nearly) sole purpose is to "own the market": VHS vs. Beta, GSM vs. CDMA, Canon vs. Nikon lenses, and so on.

Isn't that what you said you wanted?

>I feel like we're living in a constant world of incompatible systems whose (nearly) sole purpose is to "own the market": VHS vs. Beta, GSM vs. CDMA, Canon vs. Nikon lenses, and so on.

It is almost always the case that a company desires a monopoly on its market - despite whatever thin endorsement of "strong competition" they espouse.

I agree with the notion of a single vendor for all our needs is a scary future but AFAIC, we not moving in that direction. We have experienced first hand how it was like when Microsoft dominated the desktop space and I wouldn't want history repeat itself.

That said, that doesn't mean that I should choose my allegiance based solely on the point.

Years of development although does translate to maturity of the technology, it doesn't translate to superiority. Often, it could means lots of legacy, extra baggages in the name of backward compatibility and even stifled development.

If you consider Objective-C vs C#, Objective-C is over 20+ years old and have always been the main language for the Mac/iOS Platform. How have it served Apple? Many people here wouldn't argue against it. What do you think truly make C# much better than Objective-C? If we based our criteria on years of experience, Objective-C would be hands down winner here. But no, they have their pros and cons.

Xcode might not have been as well developed as compared to Visual Studio for a long time, but thats gap is closing rapidly. Since Xcode 5, I haven't been really haven't been mad at Xcode. I'm excited about Xcode 6.

Beneath Xcode is the amazing LLVM that provides a solid foundation. Previously, it was based on GCC. In the most simplistic term, think of LLVM as the .NET of Visual Studio. It allows multiple languages interoperability with the software interface, but LLVM did it in a much lower level and isn't specific for any single software interface. (This is a very dumb down explanation of LLVM capability and might not be true to its goal) It is being open sourced which spurs technologies like RubyMotion (Ruby to iOS/Mac/Android) and WebKit FTL JIT.

This bring me to Swift. Swift is technically 4 year old and designed by Chris Lattner, the creator of LLVM. I believe, my personal opinion, that Swift is born because optimising Objective-C with LLVM is reaching a point of diminishing returns. Objective-C is my favourite language but there are things that the compiler just can't statically analyse with high degree of confidence in Objective-C. A good example is NSArray or NSDictionary; You technically can store any object in a single array/dictionary, but its hard to be specific about the class/type of the objects stored at compile time. NSArray and NSDictionary is in NSFoundation API, rather and a language feature. I see no easy way to get around it, at least with my limited knowledge.

Swift is very strict about types and it learns heavily from other languages. That can only be good thing for Apple ecosystem. Not everything Apple does is to compete with others. They did it because they have set the foundation ready for this eventual transition. This is years in the planning, not out of the whim decisions.

Its a misconception for people to think of Apple technology of being incompatible with the overall technological ecosystem. But LLVM and WebKit have shown that Apple are extremely capable of building technology that play well and improve the overall technological ecosystem. Microsoft on the other hand haven't have such a good track record.

I welcome the more open Apple and I disagree with your second half of the comment as its a too simplistic and under appreciative view of Apple's technological stack.

I just hate that I can't charge my phone in my co-workers car because uses an iPhone. Vertical integration is great and all, but having horrible experiences with outside things isn't.