Hacker News new | ask | show | jobs
by webwielder 4365 days ago
At the end of the day, Apple has always delivered far superior tools, frameworks, and ecosystem (development-wise). That to me says a lot more than how friendly the staff is.
4 comments

Ugh, no. Ask anyone who has used both Xcode and Visual Studio. I used it once for porting a C/C++ project to OS X - it crashed a ton, the debugger integration was sub-par, the new window for everything thing was annoying. It did not really feel like a superior experience. If there's anyone delivering superior tools - it's Microsoft hands down.
>the new window for everything thing was annoying

This hasn't been the case since XCode 4, which was released in 2010 and introduced a single-window for everything.

Comment still relevant as the response was to "Apple has always", which implies that isn't entirely the case.
I suspect the original post was referring to XCode versus Android tools, given the post context of Google I/O, and if so, the statement that the tools have always been better is definitely correct.

At least on OSX, I doubt anyone would dispute that XCode 4 in 2010 was miles ahead of Eclipse and early versions of the Android SDK, and that arguably holds to today, though less so with Android Studio.

I might be misremembering but the tabs in XCode 4 did not work like tabs in any other IDE - there were some major annoyances around new window/tab open behaviour if I recall it right.
Eh, I have always preferred Xcode over VS. Maybe I just hated .Net.
Anecdotally, this is also my experience with using some of the lesser known frameworks in the Android ecosystem - nothing is documented properly or the documentation is years out of date and/or uses long deprecated methods, significant bugs remain open for years without attention, requiring time-consuming workarounds, and everyone just puts up with it, because that's the way things have always been.

An example of problematic documentation is Volley, which is a brilliant and totally needed framework and documentation that exists for it is a 45 minute presentation and a handful of StackOverflow posts.

While I'm not arguing against your overall point, your example is not a good one. Volley was unnecessary. It only got attention because Google did it but the community was already on top of the issue. From shipping their own, newer Apache Client libs, through koush's ion and picasso, to Square's okhttp, networking on Android is full of good libraries to use. Volley didn't anything dramatic to this and, judging by the amount of attention it has received, it was someone's side project.
I take your point, and that's exactly why I'm not using it in production, but it doesn't seem like Google should have drawn as much attention as they did to it, running a session on it within Google I/O, if it was just intended to be a side-project and not for widespread consumption.

I guess I'm just coming at this with a WWDC mentality, where a presentation would be run only on a completely production-ready and documented framework, and perhaps I/O does things differently.

>>Apple has always delivered far superior tools, frameworks, and ecosystem

Its easier to make good tools when they need to work on 5% market share (Mac only)?

Google Tools are free. Apple tools start with you buying their $2000 machine.

You can get a Mac Mini that more than suffices for around $600-$800. But honestly, if paying $2000 was the only way to get a set of Android SDKs and development tools of the same caliber as Apple's developer offerings, I would immediately do so. I like the idea of the platform and I believe in anything that makes it easier for developers to build better applications.
Excellent. Now I've bought my mac mini, I can plug it in and listen to it consume power. I wonder how I can see what it's doing?

Hrm... well, it can come with a monitor... for an extra thousand. Okay, scratch that, I'll get a cheap DisplayPort monitor... add a couple of hundred (or if I feel like splurging, get two). Oh, and a keyboard, another $50 (apple-branded, of course, because normal keyboards don't have apple keys). Mouse? Apple mouse at $50+? Maybe I'll go with a cheap logitech or something... 4GB memory standard? for a dev machine? OSX has trouble with that little memory. Up to 8GB for another hundred (or 16GB for three hundred). Spinning rust will do, but if you did want an SSD, throw on a couple hundred more.

The idea that mac minis are 'cheap development boxes' is nonsense. It's cheaper than a decent macbook pro, but it's not a cheap workstation.

You can buy the Apple-branded stuff. Or you can buy a KVM switch, a SSD, and two sticks of RAM off Newegg yourself. Monoprice has HDMI to DVI converters for less than $3. Upgrading the internals is about as challenging as upgrading the internals of a non-Apple laptop. It's honestly not that hard.

On the off chance you don't have a mouse, a keyboard, or a display, you can get a decent mouse for around $5, a decent non-mechanical keyboard for $30, and a high-quality display for $150. All three of these will improve your productivity on your laptop if you're not traveling. If you don't have a laptop or a desktop...how are you developing for Android to begin with?

how are you developing for Android to begin with?

Well, this requirement wasn't in the original brief. And in any case, you're trading your own labour and domain knowledge to shave a few dollars off. The scrounging you've mentioned is only a little cheaper than what I've mentioned - my point is that it costs more to set up a mac mini for a developer (rather than a headless server) than the throwaway line presented. Even with your cheaper, more-effort-given-to-scrounging pricing, the monitor + HIDs alone add 1/3 to 1/4 the price, never mind the ram or ssd.

Fine. Let's say that if you don't have HIDs or a monitor and you want a primary dev box, then it's not worth it. If you have the HIDs and monitor, are willing to do a little bit of third-party work, and want a machine that can competently serve beside whatever non-Apple machine you're currently using, then you can get started for far less than $2000. (I don't think this is a terribly uncommon use case, especially for people already developing for other platforms.) Would you say that is a fair assertion?
I would say that that is a fair assertion, but I would also say that it doesn't really detract from the OP's point: to get started with google, open a browser and start downloading; to get started with apple, first find a non-trivial lump of cash.
It's not like the effort to make a good tool scales proportionally to your user base or anything. Besides, the developer tools for Mac are the same used for iOS, which is a lot more than 5% of it's market. Microsoft could easily put out tools and frameworks on par (and do in some cases, VS is amazing) and would only do better if they'd drop support for OSes that have been obsolete for decades. There's no reason to have 16bit calls available any more.
Yet most Android devs I know use Macs....
In what country does a macbook air cost $2K?

Also, many people who use Google tools also have macbooks (e.g. all the Googlers I know), they have to use the tools with something.

Based on what I've seen, fellow Googlers use Macs as glorified ssh terminals + chrome machines. Most Google code isn't allowed on laptops per security policy, and most wouldn't build there anyway. I also think lots of people have Macs because, before the Pixel, they were the only laptop offered internally that qualified as a fashion symbol, and the only option with a Retina display.
I know a Googler with one MBP and 2 Pixels. Guess which computer he brought to the workshop we were in...
This is such a weird way to compare the costs. You still need a computer to use the Google tools. Also you can get a MacBook Air for less than half that price.
> Apple tools start with you buying their $2000 machine.

I bought a 27" iMac with a 2.7GHz Sandy Bridge i5 for $250 on Sunday. Try again.

I would love to get a deal like that. I just looked on craigslist, and can't find any 27" iMacs with an i5 for less than $950. In fact, I can't find anything for $250 that wasn't a piece of junk. In fact, if I could get that iMac for $250, I could turn around and resell it for $1000.
Friend was moving across the country, didn't want the hassle of craigslist. Point is, you can keep your ear to the ground and find some interesting stuff in the Apple space.
That could be a lo-o-ong wait. Your post makes it sound like the $250 deal was typical. Which it is not in my experience, or in reality.
I can guarantee you I could go lay hands on a Mac mini, older but quite capable of Xcode development, for $350 right now.

I'm not an Apple partisan; my last gig was Android development. But the idea that there's this massive barrier to entry is a complete joke.

This. We generally don't send employees to either WWDC or I/O. As a result, the tone, attitude of attendees or company reps don't matter to us much at all.

Our users and testers care about a great software experiences. So what matters most to us are stable, well designed and supported software platforms and ecosystems that let us deliver great experiences.