You either develop with apple technologies, like Cocoa, or you don't have to develop for the Mac. There is a major overhead using 50 different technologies to develop an OS. These technologies are for convenience, to minimize the amount of code required to be written, and to lessen the understanding required by the developer of the actual system they are developing for.
On iOS, Apple was sure to make one thing clear: You develop with UIKit, and its API's. That's it. They don't want to be supporting other people and bogging ourselves down. UIKit is more than capable as a UI development framework, and even beats Cocoa (an industry leader).
Moving onto Mac OS X, Apple has decided that if it wants to support devices like a 1.4Ghz MacBook Air, then it needs to pare down its OS to avoid running multiple runtimes for nothing. There's no reason to have bloatware for the sake of developer convenience when you have 20% of the US computer market. Developers need to get with the program and deal with it: You're either with Cocoa, or you aren't. And to be honest, there's not that much difference. Except overhead on devices that realistically don't need it.
This is about Apple stripping away bloat from its OS, and streamlining developers to Cocoa. A good idea indeed.
You seriously believe all those Java developers using Mac OS X are developing FOR Mac OS X?
Sorry, that's one big misconception.
All the applications I develop for my company are developed on Windows for UNIX. That's why we use Java. I can also protoype my applications on Mac OS X and still deploy to UNIX or Windows without a rebuild.
That's the power Java has that no other Programming API currently has.
You seriously believe all those Java developers using Mac OS X are developing FOR Mac OS X?
Sorry, that's one big misconception.
All the applications I develop for my company are developed on Windows for UNIX. That's why we use Java. I can also protoype my applications on Mac OS X and still deploy to UNIX or Windows without a rebuild.
That's the power Java has that no other Programming API currently has.
So apple should promote bloat in their system to support devs on other systems? Apple has a responsibility to it's users with performance, not just to developers.
Speaking of journalism, can you cite your sources on Oracle committing to support Java on the Mac?
Hey, Daniel, nice sockpuppet account! You did that just for me? I'm touched! Hey, if you want to be a journalist, not just a blogger, I recommend doing some investigative *journalism*. Maybe call your sources at Oracle or the guys who used to work for Sun? Or your insiders at Apple? (This is Apple Insider, isn't it?) You know, as opposed to just being a "reporter"... Don't just repeat the facts that somebody else discovered, dig down, connect the dots, find the story! C'mon, every Journalism professor on the face of the planet bangs this into your head from day one!
What is Oracle's incentive to assume production of the Macintosh JVM ?
Uh, because that's what they do for every other platform including Windows, Linux, and various *NIX flavors?
As background information, Apple only rolled their own JVM when Sun/Java was at the pinnacle and it wasn't all that certain that Sun was going to bother supporting OSX. So Apple made their own OSX-friendly JVM. Now Java needs OSX more than Apple needs Java, so they are putting that responsibility back where it belongs. Trust me, this way developers will get more frequent and timely updates vs. what Apple has managed to get out the door in the past handful of years.
You're confusing things. Java is strong on the server, especially among Fortune 500 company, and your reasoning that Java is only good for GUI development is absolutely specious. I work for a Fortune 500 company doing Java server-side development, and I can assure you that Java's going nowhere.
Where did I say it was only good for GUI development? Don't assume things about people you are replying to. I did server side Java dev for 9 years before switching to .NET a couple of years ago.
Fact is, every place I have worked the IT department guys are Windows fanboys, they hate Linux/Solaris and can't wait to go all Windows on the server side. When that happens it will be short order before management wants to use pure Microsoft dev tools too. If you care about your career jump ship like I did.
Good Article. Hopefully this frees up some developers to work on Cocoa.
Cocoa is faster than Java and faster than managed .NET, in fact the whole idea of solving Run Anywhere by using a VM at the app level seems to be an idea that it fizzling out. Products like VMware which solve the problem at the hardware level are getting much wider adoption.
I predict Java will die and C# will lose it's CLR and go back to native code, and Objective-C/Cocoa will go from strength to strength.
So apple should promote bloat in their system to support devs on other systems? Apple has a responsibility to it's users with performance, not just to developers.
Your argument would stand if you were somehow forced to use java on your system, or if java runtime were loaded by the OS each time you boot. None of those assumptions are true.
What Apple are doing is basically saying to Java developers who were somewhat responsible for making the OS popular among developer circles, is thanks, we have used you to get to this point but now fuck off, we have no need for you any more.
I know for sure I will not only not be buying another mac for my development purposes, but will be installing Linux on my existing Mac hardware to leverage my hardware investment.
I live by writing software (not for Mac since no one uses it in the enterprise or otherwise, and the users that do use it mostly browse internet on it anyway and are usually confused/affraid of technology and that's why they use Macs to begin with).
What Apple are doing is basically saying to Java developers who were somewhat responsible for making the OS popular among developer circles, is thanks, we have used you to get to this point but now fuck off, we have no need for you any more.
That argument would hold a lot more water if Microsoft were maintaining their own JVM for Windows and the Linux "community" (all six of you guys ) were maintaining a Linux JVM for the myriad variants of Linux.
So apple should promote bloat in their system to support devs on other systems? Apple has a responsibility to it's users with performance, not just to developers.
What bloat? 100MB in your system folder, compared to gigabytes and gigabytes of assorted printer drivers, foreign languages, all of Apple's pre-installed iLife apps that you might never use, etc. Disk space being what it is, none of these are really an issue these days.
Java on the desktop for Mac-targeted consumer applications doesn't have much point (with one or two notable exceptions). The real point of Java is for the professional, scientific, engineering, educational and enterprise markets, where Java is absolutely essential. If Apple drop Java support (which I don't think this announcement means, just that they don't want people to write App Store apps using it) they would lose all credibility in those markets, and among developers for those markets.
For example, I recently worked on the development of a large web app for a Fortune 500 company. Support for Macintosh wasn't a high priority goal, but there were enough developers on the project using their own Mac Book Pros for development that they made it happen more or less off their own backs.
Or think of a large lab or university faculty suddenly turning round and telling all its staff and students "don't buy a Mac, or if you do make sure you don't upgrade beyond Snow Leopard, else you won't be able to run any of the simulation and training software you're going to need. Get a Windows or Linux laptop instead. Oh and while you're at it, you may as well get an Android phone too, because all our Mac developers have left now and we've abandoned development on our iPhone apps".
Apple may be arrogant, but they're not that stupid.
If Apple convince Oracle to pick up the maintenance of Java for the Mac platform, this may not be a bad thing. Java is maintained by oracle for Windows and Linux (not by Microsoft of the linux community), so if they take on one more, we might actually get more timely releases.
If Java goes away completely, then that could be a very bad thing. Many, many apps rely on Java, more so than many people realize. In business, webex, GoToMeeting, and similar all rely on Java. Many internal applications are developed in Java.
I wouldn't count on Oracle to be open minded or forward thinking, they very well may strangle Java out of their spite for the opensource community.
HTML5 is going to play an increasingly larger roll in desktop & mobile apps, in the long run this will be a good thing but in the short it will be an absolute pain if Oracle pulls the plug on Java sooner rather than later.
A lot of Universities teach Java in their CS programs. A lot of students now buy Mac and a lot of Universities recommend their students buy Macs because up to this point it was a viable platform for Java development/teaching. All that is about to change too. I'm sure they will recommend Linux/Windows from now on.
That also means that in 5 years time, students that now graduate and start working as developers will not be familiar with OS X nor care about Macs too much. This is exactly where we were not such a long time ago....
It's so easy to undo a lot of progress that has been made in making Mac OS X popular among developers with a "simple" announcement like this.
You either develop with apple technologies, like Cocoa, or you don't have to develop for the Mac. There is a major overhead using 50 different technologies to develop an OS. These technologies are for convenience, to minimize the amount of code required to be written, and to lessen the understanding required by the developer of the actual system they are developing for.
On iOS, Apple was sure to make one thing clear: You develop with UIKit, and its API's. That's it. They don't want to be supporting other people and bogging ourselves down. UIKit is more than capable as a UI development framework, and even beats Cocoa (an industry leader).
Moving onto Mac OS X, Apple has decided that if it wants to support devices like a 1.4Ghz MacBook Air, then it needs to pare down its OS to avoid running multiple runtimes for nothing. There's no reason to have bloatware for the sake of developer convenience when you have 20% of the US computer market. Developers need to get with the program and deal with it: You're either with Cocoa, or you aren't. And to be honest, there's not that much difference. Except overhead on devices that realistically don't need it.
This is about Apple stripping away bloat from its OS, and streamlining developers to Cocoa. A good idea indeed.
Well that and partially limiting their liability from an Adobe lawsuit calling Apple capricious for supporting the third party Java but not the third party Flash.
A lot of Universities teach Java in their CS programs. A lot of students now buy Mac and a lot of Universities recommend their students buy Macs because up to this point it was a viable platform for Java development/teaching. All that is about to change too. I'm sure they will recommend Linux/Windows from now on.
That also means that in 5 years time, students that now graduate and start working as developers will not be familiar with OS X nor care about Macs too much. This is exactly where we were not such a long time ago....
It's so easy to undo a lot of progress that has been made in making Mac OS X popular among developers with a "simple" announcement like this.
No, now we are all getting institutional iPhone Developer memberships and going back to teaching C/C++ and then Obj-C in iPhone dev classes. I think Apple sees that sex sells and the iPhone development experience removes the fear of objective-C while providing the sex appeal the students seek. Then Apple desktop development ain't no big thang anymore, you just do the same stuff. Then that gets reinforced after a student sees the Android dev process on Eclipse, because they think one phone can't be that different from another until the see a half bajillion simulators and SDKs to choose from. And that everything is different, with hardly any transferrable skills anywhere else.
Where did I say it was only good for GUI development? Don't assume things about people you are replying to. I did server side Java dev for 9 years before switching to .NET a couple of years ago.
Fact is, every place I have worked the IT department guys are Windows fanboys, they hate Linux/Solaris and can't wait to go all Windows on the server side. When that happens it will be short order before management wants to use pure Microsoft dev tools too. If you care about your career jump ship like I did.
Thanks for your free career advice, which I have no doubt is worth every penny
.NET is not a serious option for non-webapp server-side development because Microsoft has constantly broken backward compatibility with new .NET releases, whereas Sun/Oracle have been religious about it. The methods in java.util.Date that have been deprecated since Java 1.1 are still there. This is the kind of reliability that's crucial to large companies that have mission-critical Java apps. This is especially true for my company where not only backward compatibility but raw performance is important, which .NET still can't match on the server side.
Besides, I've used Visual Studio, and I'm sorry to say that it really doesn't match up to Eclipse as a development tool, but that's just me.
And, oh yeah, Java is still #1 on the Tiobe index.
You seriously believe all those Java developers using Mac OS X are developing FOR Mac OS X?
Sorry, that's one big misconception.
All the applications I develop for my company are developed on Windows for UNIX. That's why we use Java. I can also protoype my applications on Mac OS X and still deploy to UNIX or Windows without a rebuild.
That's the power Java has that no other Programming API currently has.
Apple isn't stupid enough to believe that Java server-side developers will magically transform into Objective-C Cocoa developers. They're more likely to jump ship altogether.
I wouldn't count on Oracle to be open minded or forward thinking, they very well may strangle Java out of their spite for the opensource community.
What spite? Java is still open source. OpenOffice is still open source. VirtualBox is still open source. Glassfish is still open source. Technically, OpenSolaris is still open source. Where did you get this information?
Quote:
HTML5 is going to play an increasingly larger roll in desktop & mobile apps,
Even the W3C recommends against using it.
Quote:
in the long run this will be a good thing but in the short it will be an absolute pain if Oracle pulls the plug on Java sooner rather than later.
You have absolutely no idea what you're talking about. Oracle practically runs their business on Java. They have zero incentive to pull it. What's more, they just convinced IBM to contribute to OpenJDK. Oracle has a strong incentive to support Java on OS X. Whether or not they'll be able to do so with Apple's Swing code is the open question here.
Apple isn't stupid enough to believe that Java server-side developers will magically transform into Objective-C Cocoa developers. They're more likely to jump ship altogether.
True, but Java server side developers weren't normally developing on OS X either. People tend to develop on the architecture they are primarily deploying on, and not many were deploying on Xserves. I'm sure a few were, but Apple probably isn't going to lose much business from this. It also tells me they aren't making a major play for that part of the business market. Essentially they have declared they won't come out to compete with IBM and Oracle/Sun.
Not entirely true. People and companies respond to demands.
We currently process credit card sales through a Java based system from our provider. We have two options: Select a "dumb," and minimalist interface intended for those completely oblivious to interfacing with their system, or develop our own system using their Java based technology. The "dumb" interface is exactly what it is, dumb. With Java, we're able to provide sophisticated interfaces, like ordering software online and then once a credit card approval is granted, allow the user to download it instantaneously. WIth the "dumb" method, an e-mail is generated, an individual needs to manually wait for an e-mail from the credit card company clarifying credit card approval, and then, once again manually, initiate an e-mail to the customer telling them how to download software.
The "dumb" method is archaic, time consuming, but it's provided by the provider as a means to allow someone to at least provide service, but certainly in a not-so-timely manner.
I should add, this service is not some archaic or unknown service provider for credit card processing, it's one of the biggest providers in the world. I didn't invent the system, that's what they've given us to deal with.
Our options, as of this announcement, are as follows:
Wait for a third party to develop a Java suitable for OS X, and just hope one comes.
Switch to alternate systems that will support the existing regime.
Adapt a different provider, one that's compatible with Apple (is there one???? I don't think so!)
Item 1. is a crap shoot at best. Item 3. likely doesn't exist. Item 2. is in reality, the only solution, meaning if you want to use Apple systems for any serious sort of work, then get off the crack pipe...it ain't going to happen.
Apple and Steve Jobs have a long standing history of remarkable successes, but they also have a history of remarkable failures. For example, just exactly how is it that a system using a much more sophisticated processor and GUI ended up losing a battle for dominance to a system based on a CPU that had to segment memory addresses and a user interface that looked like a terminal interface to a mainframe computer? That's kind of like a finely tuned Ferrari losing a race to an old VW beetle.
I put this decision in the same category, and it worries me extensively because of Steve Jobs own words [I paraphrase]
"This is all anyone needs...people don't need 'real' computers anymore"
in reference to the iPad.
There's something wrong here in that Apple seems to be misinterpreting, or not caring about users that use their units for something a wee bit more sophisticated than using checking facebook, e-mail, and watching videos. What I truly fear is that we're watching the core operating system being thrown out, in the long term, in favor of elaborate "idiot boxes" capable of little more than an iPhone.
This is a path I'm not willing to gamble on, and now the search for alternate systems begins. It was a nice, 8 year love affair I had with Apple, but I'm afraid I must go crawling back to my ex-wives, Linux and Solaris (if it's even alive) and beg for forgiveness.
Not on big iron in Fortune 500 companies, where it's used to run mission critical apps, and very well I might add.
No actually, this is the problem. It runs terribly everywhere and subverts the mission of the mainframe: thousands of users simultaneously. Get it off the mainframe!
Comments
Apple's plans here are simple, I'd say.
You either develop with apple technologies, like Cocoa, or you don't have to develop for the Mac. There is a major overhead using 50 different technologies to develop an OS. These technologies are for convenience, to minimize the amount of code required to be written, and to lessen the understanding required by the developer of the actual system they are developing for.
On iOS, Apple was sure to make one thing clear: You develop with UIKit, and its API's. That's it. They don't want to be supporting other people and bogging ourselves down. UIKit is more than capable as a UI development framework, and even beats Cocoa (an industry leader).
Moving onto Mac OS X, Apple has decided that if it wants to support devices like a 1.4Ghz MacBook Air, then it needs to pare down its OS to avoid running multiple runtimes for nothing. There's no reason to have bloatware for the sake of developer convenience when you have 20% of the US computer market. Developers need to get with the program and deal with it: You're either with Cocoa, or you aren't. And to be honest, there's not that much difference. Except overhead on devices that realistically don't need it.
This is about Apple stripping away bloat from its OS, and streamlining developers to Cocoa. A good idea indeed.
You seriously believe all those Java developers using Mac OS X are developing FOR Mac OS X?
Sorry, that's one big misconception.
All the applications I develop for my company are developed on Windows for UNIX. That's why we use Java. I can also protoype my applications on Mac OS X and still deploy to UNIX or Windows without a rebuild.
That's the power Java has that no other Programming API currently has.
You seriously believe all those Java developers using Mac OS X are developing FOR Mac OS X?
Sorry, that's one big misconception.
All the applications I develop for my company are developed on Windows for UNIX. That's why we use Java. I can also protoype my applications on Mac OS X and still deploy to UNIX or Windows without a rebuild.
That's the power Java has that no other Programming API currently has.
So apple should promote bloat in their system to support devs on other systems? Apple has a responsibility to it's users with performance, not just to developers.
Speaking of journalism, can you cite your sources on Oracle committing to support Java on the Mac?
Hey, Daniel, nice sockpuppet account! You did that just for me? I'm touched!
Sorry, it looks like you got scooped: Teh Steve says in the future this will be up to Oracle to implement, starting with the next version of Java and the next version of OSX.
What is Oracle's incentive to assume production of the Macintosh JVM ?
Uh, because that's what they do for every other platform including Windows, Linux, and various *NIX flavors?
As background information, Apple only rolled their own JVM when Sun/Java was at the pinnacle and it wasn't all that certain that Sun was going to bother supporting OSX. So Apple made their own OSX-friendly JVM. Now Java needs OSX more than Apple needs Java, so they are putting that responsibility back where it belongs. Trust me, this way developers will get more frequent and timely updates vs. what Apple has managed to get out the door in the past handful of years.
You're confusing things. Java is strong on the server, especially among Fortune 500 company, and your reasoning that Java is only good for GUI development is absolutely specious. I work for a Fortune 500 company doing Java server-side development, and I can assure you that Java's going nowhere.
Where did I say it was only good for GUI development? Don't assume things about people you are replying to. I did server side Java dev for 9 years before switching to .NET a couple of years ago.
Fact is, every place I have worked the IT department guys are Windows fanboys, they hate Linux/Solaris and can't wait to go all Windows on the server side. When that happens it will be short order before management wants to use pure Microsoft dev tools too. If you care about your career jump ship like I did.
Good Article. Hopefully this frees up some developers to work on Cocoa.
Cocoa is faster than Java and faster than managed .NET, in fact the whole idea of solving Run Anywhere by using a VM at the app level seems to be an idea that it fizzling out. Products like VMware which solve the problem at the hardware level are getting much wider adoption.
I predict Java will die and C# will lose it's CLR and go back to native code, and Objective-C/Cocoa will go from strength to strength.
I hope so. The quicker java dies, the better.
Java: runs everywhere! (very badly!)
So apple should promote bloat in their system to support devs on other systems? Apple has a responsibility to it's users with performance, not just to developers.
Your argument would stand if you were somehow forced to use java on your system, or if java runtime were loaded by the OS each time you boot. None of those assumptions are true.
What Apple are doing is basically saying to Java developers who were somewhat responsible for making the OS popular among developer circles, is thanks, we have used you to get to this point but now fuck off, we have no need for you any more.
I know for sure I will not only not be buying another mac for my development purposes, but will be installing Linux on my existing Mac hardware to leverage my hardware investment.
I live by writing software (not for Mac since no one uses it in the enterprise or otherwise, and the users that do use it mostly browse internet on it anyway and are usually confused/affraid of technology and that's why they use Macs to begin with).
What Apple are doing is basically saying to Java developers who were somewhat responsible for making the OS popular among developer circles, is thanks, we have used you to get to this point but now fuck off, we have no need for you any more.
That argument would hold a lot more water if Microsoft were maintaining their own JVM for Windows and the Linux "community" (all six of you guys
But hey, enjoy your Linux PC.
So apple should promote bloat in their system to support devs on other systems? Apple has a responsibility to it's users with performance, not just to developers.
What bloat? 100MB in your system folder, compared to gigabytes and gigabytes of assorted printer drivers, foreign languages, all of Apple's pre-installed iLife apps that you might never use, etc. Disk space being what it is, none of these are really an issue these days.
Java on the desktop for Mac-targeted consumer applications doesn't have much point (with one or two notable exceptions). The real point of Java is for the professional, scientific, engineering, educational and enterprise markets, where Java is absolutely essential. If Apple drop Java support (which I don't think this announcement means, just that they don't want people to write App Store apps using it) they would lose all credibility in those markets, and among developers for those markets.
For example, I recently worked on the development of a large web app for a Fortune 500 company. Support for Macintosh wasn't a high priority goal, but there were enough developers on the project using their own Mac Book Pros for development that they made it happen more or less off their own backs.
Or think of a large lab or university faculty suddenly turning round and telling all its staff and students "don't buy a Mac, or if you do make sure you don't upgrade beyond Snow Leopard, else you won't be able to run any of the simulation and training software you're going to need. Get a Windows or Linux laptop instead. Oh and while you're at it, you may as well get an Android phone too, because all our Mac developers have left now and we've abandoned development on our iPhone apps".
Apple may be arrogant, but they're not that stupid.
If Apple convince Oracle to pick up the maintenance of Java for the Mac platform, this may not be a bad thing. Java is maintained by oracle for Windows and Linux (not by Microsoft of the linux community), so if they take on one more, we might actually get more timely releases.
If Java goes away completely, then that could be a very bad thing. Many, many apps rely on Java, more so than many people realize. In business, webex, GoToMeeting, and similar all rely on Java. Many internal applications are developed in Java.
I wouldn't count on Oracle to be open minded or forward thinking, they very well may strangle Java out of their spite for the opensource community.
HTML5 is going to play an increasingly larger roll in desktop & mobile apps, in the long run this will be a good thing but in the short it will be an absolute pain if Oracle pulls the plug on Java sooner rather than later.
That also means that in 5 years time, students that now graduate and start working as developers will not be familiar with OS X nor care about Macs too much. This is exactly where we were not such a long time ago....
It's so easy to undo a lot of progress that has been made in making Mac OS X popular among developers with a "simple" announcement like this.
Apple's plans here are simple, I'd say.
You either develop with apple technologies, like Cocoa, or you don't have to develop for the Mac. There is a major overhead using 50 different technologies to develop an OS. These technologies are for convenience, to minimize the amount of code required to be written, and to lessen the understanding required by the developer of the actual system they are developing for.
On iOS, Apple was sure to make one thing clear: You develop with UIKit, and its API's. That's it. They don't want to be supporting other people and bogging ourselves down. UIKit is more than capable as a UI development framework, and even beats Cocoa (an industry leader).
Moving onto Mac OS X, Apple has decided that if it wants to support devices like a 1.4Ghz MacBook Air, then it needs to pare down its OS to avoid running multiple runtimes for nothing. There's no reason to have bloatware for the sake of developer convenience when you have 20% of the US computer market. Developers need to get with the program and deal with it: You're either with Cocoa, or you aren't. And to be honest, there's not that much difference. Except overhead on devices that realistically don't need it.
This is about Apple stripping away bloat from its OS, and streamlining developers to Cocoa. A good idea indeed.
Well that and partially limiting their liability from an Adobe lawsuit calling Apple capricious for supporting the third party Java but not the third party Flash.
A lot of Universities teach Java in their CS programs. A lot of students now buy Mac and a lot of Universities recommend their students buy Macs because up to this point it was a viable platform for Java development/teaching. All that is about to change too. I'm sure they will recommend Linux/Windows from now on.
That also means that in 5 years time, students that now graduate and start working as developers will not be familiar with OS X nor care about Macs too much. This is exactly where we were not such a long time ago....
It's so easy to undo a lot of progress that has been made in making Mac OS X popular among developers with a "simple" announcement like this.
No, now we are all getting institutional iPhone Developer memberships and going back to teaching C/C++ and then Obj-C in iPhone dev classes. I think Apple sees that sex sells and the iPhone development experience removes the fear of objective-C while providing the sex appeal the students seek. Then Apple desktop development ain't no big thang anymore, you just do the same stuff. Then that gets reinforced after a student sees the Android dev process on Eclipse, because they think one phone can't be that different from another until the see a half bajillion simulators and SDKs to choose from. And that everything is different, with hardly any transferrable skills anywhere else.
Where did I say it was only good for GUI development? Don't assume things about people you are replying to. I did server side Java dev for 9 years before switching to .NET a couple of years ago.
Fact is, every place I have worked the IT department guys are Windows fanboys, they hate Linux/Solaris and can't wait to go all Windows on the server side. When that happens it will be short order before management wants to use pure Microsoft dev tools too. If you care about your career jump ship like I did.
Thanks for your free career advice, which I have no doubt is worth every penny
.NET is not a serious option for non-webapp server-side development because Microsoft has constantly broken backward compatibility with new .NET releases, whereas Sun/Oracle have been religious about it. The methods in java.util.Date that have been deprecated since Java 1.1 are still there. This is the kind of reliability that's crucial to large companies that have mission-critical Java apps. This is especially true for my company where not only backward compatibility but raw performance is important, which .NET still can't match on the server side.
Besides, I've used Visual Studio, and I'm sorry to say that it really doesn't match up to Eclipse as a development tool, but that's just me.
And, oh yeah, Java is still #1 on the Tiobe index.
I hope so. The quicker java dies, the better.
Java: runs everywhere! (very badly!)
Not on big iron in Fortune 500 companies, where it's used to run mission critical apps, and very well I might add.
You seriously believe all those Java developers using Mac OS X are developing FOR Mac OS X?
Sorry, that's one big misconception.
All the applications I develop for my company are developed on Windows for UNIX. That's why we use Java. I can also protoype my applications on Mac OS X and still deploy to UNIX or Windows without a rebuild.
That's the power Java has that no other Programming API currently has.
Apple isn't stupid enough to believe that Java server-side developers will magically transform into Objective-C Cocoa developers. They're more likely to jump ship altogether.
I wouldn't count on Oracle to be open minded or forward thinking, they very well may strangle Java out of their spite for the opensource community.
What spite? Java is still open source. OpenOffice is still open source. VirtualBox is still open source. Glassfish is still open source. Technically, OpenSolaris is still open source. Where did you get this information?
HTML5 is going to play an increasingly larger roll in desktop & mobile apps,
Even the W3C recommends against using it.
in the long run this will be a good thing but in the short it will be an absolute pain if Oracle pulls the plug on Java sooner rather than later.
You have absolutely no idea what you're talking about. Oracle practically runs their business on Java. They have zero incentive to pull it. What's more, they just convinced IBM to contribute to OpenJDK. Oracle has a strong incentive to support Java on OS X. Whether or not they'll be able to do so with Apple's Swing code is the open question here.
Apple isn't stupid enough to believe that Java server-side developers will magically transform into Objective-C Cocoa developers. They're more likely to jump ship altogether.
True, but Java server side developers weren't normally developing on OS X either. People tend to develop on the architecture they are primarily deploying on, and not many were deploying on Xserves. I'm sure a few were, but Apple probably isn't going to lose much business from this. It also tells me they aren't making a major play for that part of the business market. Essentially they have declared they won't come out to compete with IBM and Oracle/Sun.
We currently process credit card sales through a Java based system from our provider. We have two options: Select a "dumb," and minimalist interface intended for those completely oblivious to interfacing with their system, or develop our own system using their Java based technology. The "dumb" interface is exactly what it is, dumb. With Java, we're able to provide sophisticated interfaces, like ordering software online and then once a credit card approval is granted, allow the user to download it instantaneously. WIth the "dumb" method, an e-mail is generated, an individual needs to manually wait for an e-mail from the credit card company clarifying credit card approval, and then, once again manually, initiate an e-mail to the customer telling them how to download software.
The "dumb" method is archaic, time consuming, but it's provided by the provider as a means to allow someone to at least provide service, but certainly in a not-so-timely manner.
I should add, this service is not some archaic or unknown service provider for credit card processing, it's one of the biggest providers in the world. I didn't invent the system, that's what they've given us to deal with.
Our options, as of this announcement, are as follows:
- Wait for a third party to develop a Java suitable for OS X, and just hope one comes.
- Switch to alternate systems that will support the existing regime.
- Adapt a different provider, one that's compatible with Apple (is there one???? I don't think so!)
Item 1. is a crap shoot at best. Item 3. likely doesn't exist. Item 2. is in reality, the only solution, meaning if you want to use Apple systems for any serious sort of work, then get off the crack pipe...it ain't going to happen.Apple and Steve Jobs have a long standing history of remarkable successes, but they also have a history of remarkable failures. For example, just exactly how is it that a system using a much more sophisticated processor and GUI ended up losing a battle for dominance to a system based on a CPU that had to segment memory addresses and a user interface that looked like a terminal interface to a mainframe computer? That's kind of like a finely tuned Ferrari losing a race to an old VW beetle.
I put this decision in the same category, and it worries me extensively because of Steve Jobs own words [I paraphrase]
"This is all anyone needs...people don't need 'real' computers anymore"
in reference to the iPad.
There's something wrong here in that Apple seems to be misinterpreting, or not caring about users that use their units for something a wee bit more sophisticated than using checking facebook, e-mail, and watching videos. What I truly fear is that we're watching the core operating system being thrown out, in the long term, in favor of elaborate "idiot boxes" capable of little more than an iPhone.
This is a path I'm not willing to gamble on, and now the search for alternate systems begins. It was a nice, 8 year love affair I had with Apple, but I'm afraid I must go crawling back to my ex-wives, Linux and Solaris (if it's even alive) and beg for forgiveness.
Not on big iron in Fortune 500 companies, where it's used to run mission critical apps, and very well I might add.
No actually, this is the problem. It runs terribly everywhere and subverts the mission of the mainframe: thousands of users simultaneously. Get it off the mainframe!