From what I've heard iCloud is primarily Java (and some C++)
Not that I'm blaming the technology specifically, but my impression is that Apple is being naive.
Of course you can build with Java, but if you knew better and have the resources Apple has, you would be aiming somewhere else. Google can do this because the infrastructure is there.
Not in the case of Apple
And as this shows, the concept itself of how the service works is broken. This is smelling of 'walled garden fundamentalism' + 'technical ineptitude'
You realize that a plurality of Google's backend is built in Java, right?
I know it's fashionable to hate on Java, for a lot of good reasons, but I think it's naive to dismiss the power of the platform itself.
We may all have (completely valid) complaints about the outdated and verbose syntax of the language, but the actual JVM itself is fantastic. There are more scalable, fault-tolerant, high performance Java systems out there than the rest of the implementations on all other platforms, combined.
"You realize that a plurality of Google's backend is built in Java, right?"
Yes, I know. The problem is not Java directly. Reread what I wrote
Google has the infrastructure and resources to make Java work for them at their size. Because they have whole teams dedicated to build their infrastructure (FS, storage, etc)
Apple has to optimize their resources. They're not going to rebuild what Google did and I'm not seeing them using, I don't know: Cassandra, Hadoop, etc
What I'm saying is that Apple is probably trying to reinvent the wheel. With their resources, they should go with Scala, Clojure or use helper technologies.
Apple has 72,000 employees while Google only has 54,000 employees. Apple is over 30% bigger than Google. I would guess that Apple has lots of infrastructure people too.
Apart from that, in Google most (core) jobs are software related, in Apple not so much (there's hardware, design, logistics, manufacturing specialists - even if the bulk is @ Foxconn and similar contractors).
Even if we consider software jobs only, I believe the bulk @ Apple is working in OSX/iOS, not to mention iWork, Final Cut, etc and not directly in Cloud infrastructure.
Practically speaking, for the problem in question, none of these employee counts matter much. 200 engineers is a large number to put on any project, but a tenth of a percent of their total employee count.
"
Employees
As of September 29, 2012, the Company had approximately 72,800 full-time equivalent employees and an
additional 3,300 full-time equivalent temporary employees and contractors. Approximately 42,400 of the total
full-time equivalent employees worked in the Company’s Retail segment.
"
That page says Apple has 80,000 employees, leaving them about the same size as Google. Google has people on the payroll buidling Google Glasses, The Google Car, Gmail, App Engine, Go, Macs, Docs, Chrome OS, and a lot more projects than we probably know. Remember this:
http://www.google.com/enterprise/search/
It's true that Apple is highly focused, and they probably have half, if not a quarter of the products that Google has.
> They're not going to rebuild what Google did and I'm not seeing them using, I don't know: Cassandra, Hadoop, etc
There is a non-zero amount of irony in your bashing of Java then picking out two projects that apple isn't using, but you apparently think they should but using, which are both written in Java.
I am not bashing Java and I know what these are built on, but apparently no one read what I wrote and stopped reading at 'Java'
I am saying is that probably Apple has a NIH mentality with regards to infrastructure and thus are trying to reinvent things like that. And of course, reinventing these in pure Java takes more time than using Go, for example.
Not that I'm blaming the technology specifically, but my impression is that Apple is being naive.
Of course you can build with Java, but if you knew better and have the resources Apple has, you would be aiming somewhere else. Google can do this because the infrastructure is there.
Not in the case of Apple
And as this shows, the concept itself of how the service works is broken. This is smelling of 'walled garden fundamentalism' + 'technical ineptitude'