Sun and Apple Team Up for StarOffice for Mac OS X 363
An anonymous reader writes, "CNET writes about Sun and Apple getting together to create StarOffice for the Mac OS X." Apparently, the Java-based OpenOffice app will be released before year's end (a developer release went out on Thursday), with a commercial StarOffice release sometime next year.
Java is NOT the way to go (Score:3, Insightful)
Even though JVMs improved a lot in the meantime, there's no way a JVM is going to make an app such as OpenOffice as smooth to use as a native version.
They'd better work on a native version, instead of working on something which has not a single chance of attracting users.
Re:Java is NOT the way to go (Score:4, Informative)
Apple can add functionality to Cocoa (Score:4, Interesting)
I wouldn't be suprised if OS 10.3 has a few new cocoa classes like NSWordProcessorView, NSSpreadSheetView, NSRelationalDatabase. These would be subclasses of existing Cocoa classes like NSTextView, NSTableView, and NSData.
I think this fits Apples strategy of making development for the Mac quick and easy. This benefits them in several ways: 1) They attract more badly needed developers to their platform 2) They can churn out iApps much more quickly than M$ 4) Once developers have tasted Cocoa, they don't want to go back 5) With so much work done in the Cocoa frameworks, Apple can make the frameworks run faster and make all the apps on a system runs faster. 6) If apple changes processors, they can make it real easy to port cocoa apps to the new architecture since all of the machine dependent stuff is done in their APIs.
Mod parent up (Score:2)
Re:Java is NOT the way to go (Score:2)
Exactly, so it's not cross platform. One of the things that people harp on against
Re:Java is NOT the way to go (Score:2, Insightful)
Re:Java is NOT the way to go (Score:2)
Re:Java is NOT the way to go (Score:2)
Open(Star)Office always had parts written in Java (Score:2, Informative)
So, the use of Java isn't really news, and any messaging around Java should just be seen as Marketing exploiting the fact that yes, indeed, parts are written in Java.
Java is the way to go (Score:5, Insightful)
Sure there is. Java is quite fast these days and it has gotten a lot more stable and robust. OpenOffice could actually become smaller and simpler if it is written in Java because much of the big and complex stuff in OpenOffice is already taken care of by the Java runtime.
Also, Sun finally needs to put the resources behind Java for client/desktop apps--that means developing large and complex client/desktop apps and fixing whatever problems remain in Java and the Java runtime.
Corel already tried and we all saw the result: slow and dismissed by the market.
Corel didn't know what they were doing and they didn't have the option of hacking the Java runtime much. Besides, there are an awful lot of bad or failed C and C++ applications--should we stop using C and C++ because of that as well?
Re:Java is the way to go (Score:3, Insightful)
It really doesn't make too much sense to compare Java and C++ in that way. For example, yes, "object creation" in Java is slower than in C++, but the two don't do the same thing.
In general, Java requires a different programming style from C++ to get efficient code. There are many habits C++ programmers acquire to keep their C++ programs from crashing and to interact well with C++'s constrained memory management. Many of those habits are meaningless and costly in Java. Java is not a "simple and safe C++", it's a very different language.
Ever try to debug a Swing problem? You often get stack traces that are more than 25 levels deep - all in Sun's Swing code. Temporary objects being created like there is no tomorrow. Any way you slice it, Swing is a horribly designed graphics toolkit.
I have had no problems with Swing--it seems like one of the better toolkits around in terms of its APIs. Its implementation is rather inefficient, but on modern hardware, it doesn't seem to matter all that much.
Re:Servlets are great... (Score:2)
Why Java? an intriguing possibility (Score:2)
But I'm betting it WILL be a native version. It will be a Cocoa app, just using Java as the programming language rather than Objective C. All the windowing, and UI widgets etc. will be Cocoa/Quartz/Aqua being invoked by a few lines of Java.
But why use Java instead of Objective C? It may just be Sun wanting to "eat their own dog food" or simply having more programmers familiar with Java than with Objective C.
But perhaps there is a more intriguing possiblity. Cocoa is just the upgraded OpenStep which could run as a layer on top of windows, and Solaris. It was a cross platform solution that handled all the platform specific UI (as well as a bunch of other stuff) so a simple recompile was all that was needed to get your app running on windows, NeXT, and Solaris (& maybe others?). Apple was originally going to keep things that way and add support for Java so you could build (semi)native windows/mac/solaris apps using Java & Cocoa without even a recompile. Only the Java bit is running under the JVM, the UI & all the other Cocoa stuff is native.
This plan was 'steved' when Steve Jobs took over. That was probably the smart thing to do, they needed to focus on getting their own house in order first. But now they have everything basically ship shape on the Mac side, maybe they are revisiting the idea of Cocoa as a cross platform API. Apple and Sun working together on StarOffice seems like a perfect oppurtunity to revive the old OpenStep on windows & Solaris. Maybe I'm just being clueless, after all Sun has their own approach for Java's cross platform UI. But it doesn't seem to be that great and isn't very popular. Maybe they are considering OpenStep/Cocoa as a better solution to getting Java used on the desktop, especially if Apple has already done (almost) all the work to develop it.
Re:Why Java? an intriguing possibility (Score:2)
To Quote O'Rielly.com's MacDev Center: [macdevcenter.com] Of course "Yellow Box" was Steve's technology from NeXT but it was Gil Amelio's business strategy. Once Gil was ousted Steve started working on and pushing Carbon becuase ithe big software developers were never going to completely rewrite their apps in OpenStep/Cocoa. Rhapsody for Intel and Windows was never mentioned again.
That was just good business at the time. Gil Amelio's plan was overambitious, vague and confusing. Job's believed that Apple needed M$ good will so he wasn't going to challenge them in their own market & he dropped the patent infringement lawsuit with that patent cross licensing agreement and stock sale.
I'm just intrigued about the possibiilty that part of Gil's original business plan might be plausible now that the situation has changed. Apple is profitable even in a tech sector downturn. Their OS strategy is solid and finally bearing fruit. Apple seems less overeager to stay in Bill Gates good graces (witness the quiet dropping of the patent swapping deal, the griping over Office v.X sales and the slap-in-the-face "Switch" ad campaign). Now might be the time to revive Rhapsody for Windows. It would increase the number of apps available for the Mac because by writing for the Mac in Cocoa a developer gets Windows and Unix for free. Apple could possibly make money from selling the IDE for windows or if their greedy a licensing fee for Cocoa on other platforms (have to be careful with that, don't want to kill it by being too greedy). And if it is successful it undermines Microsofts monopoly in the same way that java threatened to by making the OS irrelevant and having someone else own a layer between the OS and the application.
Of course if Apple pursues a plan that is so potentially threatening to M$ they will need to prepare to lose Office on the Mac in retaliation. Hmm... Maybe working with Sun to develop StarOffice using Cocoa (for windows & UNIX?) is a good first project!
Re:Java is NOT the way to go (Score:2)
Re:Java is NOT the way to go (Score:2)
I just know I'm going to get modded flamebate, but have you used the native version? Because I have, and I'm sorry to break everyone's heart but I wouldn't describe the UI as "smooth". Certain things like right-clicking cells in Calc 6.0 is slow compared to Excel, at least on my machine it is. If anything the Star Office team should be trying everything they can to make the *native* UI "smooth".
Re:Java is NOT the way to go (Score:4, Insightful)
It gets the job done okay, but gosh. If you need X, XFree86 works fine. I'm quite certain that the people who either don't know what it is, or can't figure out how to install it don't really need it, and it would add a whole 'nother layer of bloat to the OS that's just not necessary for 95% of users.
And from Apple's viewpoint, putting X into OS X would be a ghastly, stupid move. Apple's best interest is served by people producing beautiful, consistent Quartz applications. If you give people an escape hatch to write cross-platform ugly-as-ass X apps, Mac OS X loses a whole lot of its sex appeal in one fell swoop. Half of the little program writers would abandon Quartz for X in a heartbeat, and the integrity of both the UI and the OS experience would go right down the toilet, and that would sink everything Apple has going for it.
Re:Java is NOT the way to go (Score:2)
Also confused about Java (Score:2)
I think this is either a mistake or else they'll be using Java for some system glue or something I imagine.
Comment removed (Score:4, Interesting)
Re:Also confused about Java (Score:2)
Re:Also confused about Java (Score:2)
OS X and Java (Score:2)
Actually, MacOS X is probably the best platform for Java development [apple.com] and use [apple.com]. MacOS X has great, fast java support. I use jEdit [jedit.org] as my main gui text editor on my Mac.
In any case, I think the article got it wrong. I doubt that the StarOffice gui would be done in Java.
Summary (Score:5, Informative)
1) The relationship between Apple and Microsoft has been strained by the lackluster sales of Office v.X. Apple supports the porting of StarOffice because it doesn't want MacOS X to be cutoff from the ability to interact with the ever-important Microsoft dominated office file formats should Microsoft decide to abandon the platform.
2) Development hurdles that Sun must overcome are removing and redesigning X11 protocol specific code to work with Quartz 2D -- Apple's windowing API -- and redesigning the user interface such that it conforms to the Apple Aqua guidlines. (That's a tall order, especially considering that much of the Aqua guidlines are incomplete and still being formed.) Currently, StarOffice uses its own interface toolkit, built from the ground up.
3) The ever-pressing issue of how to make money by selling an essentially open-source product. Sun plans to do this not by merely offering support, but also adding special enticements to a commercial distribution that wouldn't be available in an open-source distribution. (An example is the bundling of commercial quality fonts with the software).
Re:OOo already themable. (Score:2, Insightful)
Re:OOo already themable. (Score:4, Informative)
In order to be in line with the Aqua UI guidelines, you have to implement them all, completely. You can't just get kinda-sort close, throw a pinstripe background behind your toolbar and some gummy window decorations, and call it a day.
You should read the Aqua HI guidelines [apple.com] sometime. (Also available in PDF [apple.com]. They just might open your eyes.
Re:OOo already themable. (Score:2)
> "theme" for the Toolkit OOo uses.
I don't think they'll be able to introduce an Apple-endorsed OpenOffice without direct calls to the Quartz APIs. A "theme" won't cut it. Think about what happened with the first version of Netscape 6.0; it didn't support Aqua, but there was a theme to make it look like Aqua. Apple immediately told the developer to quit developing the theme, although they did encourage them to use Quartz and Aqua.
As a Mac OS X user, I think that's the right move. Apple needs to make developers use Quartz and the real Aqua because the Aqua-look-alikes never look the same as a real app. If a developer isn't willing to spend the time to implement Quartz, then they're not likely to spend the time making their hacked version of Aqua look indistinguishable from the real thing.
However, the fact that Apple's working with Sun is a great sign. We may have a competitor to Microsoft Office yet.
Themes are only skin-deep, Quartz goes to the core (Score:5, Insightful)
One of the beauties of the Mac OS is that there's a unform, consistant, and universal interface and scratchpad model. IBM pioneered the idea of a standard interface and Apple brought it to the GUI and applications with a vengance.
Not only do the MacOS and applications follow the same behaviors they also allow universal cut-and-paste. Anything you see that's editable on a Mac can be cut-and-pasted anywhere else that is editable and supports the medium (eg no sound-for-text.) Styled text, QuickTime multimedia, everything. This is more thoroughly plumbed then on Windows and certainly more extensive then on X and traditionial Unix applications.
It has always frustrated me when someone puts together a Theme and presents it as being the same as another OS. No. There's more to an interface then window-dressing. Another misbegotten kinda-sorta-looks-like-Aqua (but doesn't use the System Services or Quartz engine etc.) is exactly the sort of half-assed implementation Apple is selling the alternative to. Without a doubt if Apple ships an Apple/Open Office it'll be as high-gloss and thoroughly native as any of the iApps. That they've chosen Java as the platform to work from rather then Cocoa is a "Good Thing" for everyone else.
Yes Java is a completely peer layer in MacOS but it is portable and so anything Apple & Sun produce is instantly applicable to all of the other Open Office platforms (if not as nicely as the Apple implementation - think of this as payback for Apple having really committed to making Java a native portion of their OS.) This will also allow all of those other wonderful Java libraries to be leveraged in a consistant manner and become directly usable by Open Office.
Is this worthwhile for Apple? Yes. They get the only robust MS Office alternative to run suh-weet on their OS, now the best-selling Unix out there. Sun gets a partner in melding Open Office and Java, pusing their jewels out into the marketplace. The Users gets a better GUI on Open Office, one that can build on lots of other work rather then being another home-grown roll-your-own deal. They also get an infusion of all of those new MacOS X (Unix) desktops all using and supporting and developing further Open Office.
Win-Win-Win.
preparing for the time after MS Office for Mac? (Score:4, Insightful)
btw, any new rumors about OS X for x86 out there?
No OSx86 for the same reason as NO Office Mac (Score:2)
For M$, too low ROI. Two orders of magniture to low. First order is sheer sales market. There's one tenths as many machines. Second order is market resistance. Apple owners have a deep and abiding hatred for M$ that makes Linux people look tame. And they vote with their wallets. Look for universal acceptance of StarOffice as fast as Sun & Apple can ship the CD-ROMs.
For Apple, they make hardware, they use Aqua to sell it. Giving away the crown jewels would be slitting their hardware revenue throats while M$ could drop-kick their OS sales revenues just like they did to NetScape (And fuck the DOJ.)
Re:No OSx86 for the same reason as NO Office Mac (Score:2)
Microsoft's Macintosh Business Unit [microsoft.com] (MBU) is raking in cash hand over fist (have you seen the prices of Mac Office?!?); there's a lot of money in it. However, there's MORE money in making people believe the Mac OS is not a viable alternative to Windows.
Re:preparing for the time after MS Office for Mac? (Score:2)
Before they introduce a version of Mac OS X to work on x86, they'll want to make sure there's a near-perfect substitute for Microsoft Office. This looks like Apple's considering contingencies. Call OpenOffice Step 3.5.
Java ? (Score:5, Interesting)
Porting StarOffice (once the biggest open source project) to Java would be an absolutly huge task. This rules out a full port. It leaves the option of using Java as the GUI. World+dog (including me) agree that Java's GUI is so-so, even if it is better on OS X than anywhere else. Anyway, what would be the point of using Java to interface between C/C++/Objective-C apps? None.
CNET just got it wrong one more time.
Re:Java ? (Score:2)
However, I'm theorizing here. Maybe someone from Open Office could post something about this.
Re:Java ? (Score:3, Informative)
Yeah, but who still uses the AWT? Swing has a JFileChooser which is loads better. Don't judge Java by the state it was in 4 or 5 years ago.
Re:Java ? (Score:5, Interesting)
Yes, but from what I understand Apple has provided hooks for Java to use all of the Cocoa API's in fact they bill Java as being coequal to Objective C for building Cocoa apps. In that case the GUI is not really java, java is just being used to invoke the native cocoa/quartz/aqua GUI. They could use Objective C instead but I would imagine that Sun would like to show off a Java app that surpasses peoples expectations (including the dog's) Also I'd imagine you can find more programmers at Sun that are proficient with Java than are proficient with Objective C.
Re:Java ? (Score:2)
And Java works pretty well on OS X, even if it usually breaks the human interface guidelines.
Re:Java ? (Score:2)
So if there's any *huge amount* of work required at all, it would simply be to get the Java version up to the 6.0 level, if it hasn't already been done (probably has).
Re:Java ? (Score:2)
Re:Java ? (Score:2)
For trivia purposes, note that there was also a Java version of Corel WordPerfect Office that ran on Linux (no, not the WordPerfect Office 2000 port that used Wine). Only a free test version was ever released, but I downloaded and used it for a few things.
Re:Java ? (Score:2)
http://web.archive.org/web/19980119143350/stardivi sion.com/staroffice/java.html [archive.org]
And one about corel's java port from network computing magazine...
http://www.networkcomputing.com/816/816sp3.html [networkcomputing.com]
-gleam
Re:Java ? (Score:2)
Re:Java ? (Score:2)
The Java Connection (Score:2, Insightful)
{Star,Open}Office preinstalled on Windows (Score:5, Interesting)
To me, it's incredible that no hardware vendor such as IBM or HP is offering StarOffice or OpenOffice preinstalled on personal computers. I see no reason for them to not install it.
Comment removed (Score:5, Informative)
Read the transcript not just the press releases. (Score:2)
Re: (Score:2)
Re:{Star,Open}Office preinstalled on Windows (Score:2)
Re:{Star,Open}Office preinstalled on Windows (Score:2)
Actually, eMachines [e4me.com] shipped several of their eTowers with StarOffice 5.2 a couple of years ago. One of the ones we bought for the office came with it preinstalled. On the brief look I just took on their website, I see no mention of StarOffice or OpenOffice; my guess is that 5.2 didn't fly with the consumers, so they went back to the traditional MS Works...
Just my $.02...
Re:{Star,Open}Office preinstalled on Windows (Score:2)
Java based OpenOffice app (Score:2, Informative)
OpenOffice includes support for Java but it is most certainly _not_ Java based.
Anyone who has not used OpenOffice really should take a look. IMHO is is a viable replacement to Microsoft Office at home while Star Office (based on OpenOffice) is a viable replacement for Microsoft Office at work.
Wish good luck to the OpenOffice guys and take a bit of time to wish Sun good luck with Star Office too.
Thanks.
compatibility, speed, cost (Score:3, Insightful)
Re:compatibility, speed, cost (Score:3, Interesting)
StarOffice Development a 2-Fold Strategy (Score:2)
I don't feel that Microsoft would drop Office for Mac OS X because antitrust red flags (and lawsuits) would be dropping into the Federal courts, placing MS in another legal pickle.
Apple's public support of StarOffice is actually another bow to the power of open source software (of which OpenOffice is, I know, but not StarOffice--uh..kinda?). The problem that Apple might see is that the "radical" OSS community that shuns ALL things MS would not buy or cannot afford Office X. So, for these users (as part of an incentive to pull them to OS X from other *nixes), StarOffice would be available and in a condition that works natively and well in OS X. (I'm not trying to avoid discussing AppleWorks, but it is not as robust as either Office or StarOffice.)
And, should MS discontinue development of Office, Apple also has a strong backup productivity suite that may be less expensive.
OS X on Intel/AMD last hurdle to World Domination (Score:4, Insightful)
Apple has had two achilles heels in the past. Number 1: Dependence upon Microsoft Office If Jobs is throwing some of the same programming talent that went into OS X onto Star Office, the result should be sensational. Apple surely has learned that it must lower it's dependency upon a Bill Gates controlled project. I'm sure they have been working on Star Office for some time.
Number 2: Dependence upon Motorola. Any company risks their entire future when they have a single point of failure and for Apple, that is Motorola. They have been limited by Motorola's ability to produce faster chips and enough of them in the past. They also lose mindshare with the "megahertz myth". I'm sure Apple by now has realized that most people don't give a damn about processor internals and pipelines. It is just going to be harder for Apple (in the mindshare department) once Intel is shipping 2 GHz processors in quantity, while Apple is just cracking 1 GHz.
Everyone knows that Darwin runs on Intel. What you don't see is how much more advanced development is going on at Apple to bring the full look and power to the Intel/AMD platform. In a Yahoo financial interview recently, Jobs played coy with the question but did not deny it.
This doesn't mean that Apple is turning it's back on the hardware business. Apple could easily make sure that it's OS X innovations became available first on it's own hardware. But an operating system that competes on traditional Windows platforms that includes great apps like iMovie, iPhoto, iDVD, iTunes, and Broadcaster (plus the new ones like iCal and iSync) for a prospective $129 must have the Microsoft honchos tossing in their sleep. Making the iPod available for Windows, is just another indication that Apple is opening up to a whole new market.
No, Windows isn't going away but now it must fight a strong competitor on two fronts: IBM/Linux and Apple/OS X. Linux shipping on Walmart computers for the average user may be a pipe dream, but do you think Walmart wouldn't love shipping Wintel platforms with OS X and saving the Windows OS fee?
I love Linux, but I encourage Linux programmers to take a good hard look at OS X (if you haven't already). Your product could run on both platforms with very little extra work. I have seen the future, and it is OS X.
Curious George
Re:OS X on Intel/AMD last hurdle to World Dominati (Score:2, Informative)
Re:OS X on Intel/AMD last hurdle to World Dominati (Score:2, Funny)
but do you think Walmart wouldn't love shipping Wintel platforms with OS X and saving the Windows OS fee?
In exchange for the Mac OS X fee? Why?
Dude, quit hogging the Kool-Aid.
Intriguing development (Score:2)
Microsoft has held Office over Apple's head as a sword of Damocles for many years now, always threatening to take it away and crush the Mac market. And to make sure Apple doesn't forget that, they make Office for Mac hideously expensive, knowing that Mac users have to pay.
Having Apple contribute to the OpenOffice project may finally give MS some real competition.
Isn't M$ obligated by law to make Mac software? (Score:2, Interesting)
October 24th, 1985: John Sculley signs the worst contract Apple ever has made. He agrees that Microsoft may use some Mac GUI (Graphical User Interface) technologies if it continues producing software for the Mac (Word, Excel). If Sculley wouldn't have signed this deal Windows would have never been introduced since the similarities to the MacOS were so obvious that Apple would have easily won any lawsuits against Microsoft!
January 1988: Microsoft releases Windows 2.0.3
March 17th, 1988: Apple sues Microsoft and Hewlett Packard accusing them of violating copyrights of Apple on the MacOS. Windows 2.0.3 features Mac-like icons.
(http://www.theapplemuseum.com)
(Good news but...) Amusing and Ironic (Score:5, Interesting)
WWDC did not have a single session on programming Quartz in Java. In the only mildly interesting session on Java, it was like pulling teeth to get concrete information out of the presenters in Q&A, and yet the presenters (Apple JVM guys) were incredibly arrogant about their work and how advanced it was (which in some ways it is) and how even Sun was considering incorporating their JVM innovations.
What was boggling was Apple's Java guys didn't _get_ that they should want Java to become a first class citizen on OS X (rather than a poor stepchild to OS X's (and NeXTstep's vaunted in their eyes) objective-c. Sure, I could see the obj-c guys being protective of their baby (even though it's basically stillborn by the time its reached OS X), but why would the Java guys be so lousy sharing information on Cocoa (OS X) programming in Java.
On the side, I got contradictory information about how to program in Cocoa using two different bridges across obj-c and java. In sum, neither really works so Apple doesn't support either really. (In particular, obj-c's reference counting doesn't mix well with Java's garbage collection.) Unfortunately, despite Apple's migration of WebObjects to Java (from obj-c), The rest of OS X and Cocoa (GUI) stayed in obj-c. Doh.
I even spoke with their then new head of software tools and engineering. As a smalltalk guy (skeptical of java and obj-c), he claimed that obj-c won him over. No love for Java there. Just more "not Apple's target market". It's hard to swallow paying thousands to go to a developer conference and have some pinheaded honcho tell you that despite Apple's "best platform for Java" campaign, that Java programmers are not allowed to program in Cocoa (OS X native) since Java Cocoa is not Apple's target market. What arrogance!
Unfortunately, one of Apple's catchy banners did not mean what I wanted it to mean: "Come for the Java, Stay for the Cocoa". Instead of providing the means to program Cocoa in Java, the banner really means come to learn about Java on OS X (and be profoundly disappointed), and we'll (try to) lure you to objective-c every step, session, and discussion along the way.
Cough-cough.
Unfortunately (or fortunately), I'm an ex NeXT enthusiast, so I've already tasted obj-c (not to my liking), reasonably informed about its strengths and weaknesses, and happy with Java.
-=-
So, why is Apple, its head of engineering so obstinate. I assume it's because he's in love with smalltalk and obj-c caters (a la obj-c tenuous lease on life) to smalltalk, his desired language. Fair enough (but too bad for Apple and its Java shortcomings).
But why oh why would lowly Apple Java grunts be so against first-class java support on OS X for Cocoa? That really confused the heck out of me, until I discovered that the very arrogant presenter(s) of JVM breakthroughs (yada yada yada about Apple innovations) was really the obj-c kernel team doing side work on the JVM. Doh!
Java not obj-c. Obj-c >> Java. You know?
There are not Java evangelists at Apple. The keepers of the Java VM are obj-c hacks. Their baby (albeit on life support) is obj-c. OUCH.
When I figured that out, beat around the bush at the top to discover the smalltalk allegiance, and just generally got stonewalled by too many (certainly not all) of the small team of java(obj-c) insiders, I just gave up.
Besides, the Quartz Extreme team had awesome presentations, was extremely humble despite their awesome GUI architectural innovations, and was just generally the real mccoy from an engineering point of view. My WWDC became a GUI tour rather than a deep tour of Java (as intended and paid for, as far as I was concerned).
One final note: my impression is that Java on OS X is good --- but only for Java only apps (i.e., use Swing, not Apple's Cocoa). Their target market (as I gathered anyway) is pure Java (as opposed to Java Cocoa apps). So, if you want to port and run pure Java on OS X, they (should) love you. FYI.
-=-
So, it's amusing and ironic to see Apple spending any resources on Java for Cocoa now as I assume (fingers crossed) they'll do for OpenOffice after telling me that's not their target market!
What happened to all the arrogance? Disdain? Curt political marketroid answers to basic engineering questions? Yada yada yada.
Too painfully amusing and ironic.
So I guess I am crossing my fingers that Apple separates the JVM team from their obj-c team, fires (or at least reassigns to obj-c only) their so-called "java evangelist", and gives java its own first-class political and technical citizenship at Apple.
Maybe next year's WWDC can have a banner which says (and means) "Come for the Java, and Stay for the Mocha". That would be a dream worth having.
= Joe =
Re:(Good news but...) Amusing and Ironic (Score:2)
Re:(Good news but...) Amusing and Ironic (Score:5, Insightful)
Most of your post sounds essentially like you didn't read up sufficiently before going to get the most out of the conference, quite frankly. I encourage you to take another look at Java in OS X.
Re:(Good news but...) Amusing and Ironic (Score:2, Interesting)
Programmers at Apple aren't supposed to write in 100% Pure Java for what I hope are obvious reasons (they
wouldn't take full advantage of the OS X user experience).
Good point. Java for Cocoa is a second class citizen to pure Java, and pure Java doesn't access Cocoa. That's clear.
Most (but not all) applications at Apple destined for OS X, meanwhile, are not written in Java
due to the fact that users find the speed unacceptable.
Decent point for now, and an issue raised in the defense of obj-c by the Apple folk.
Considering Java's current (long VM, libraries loading, and app) startup time and lack of shared VM images (as I understand it), Java is not totally ready for prime time for general one-use consumer apps (yet). The Apple folk did specifically mention that the startup time was a problem, so that is one of their concerns.
However, I believe one of their innovations for OS X 10.2 Java was getting the images to share, and they have apparently shared that technique with Sun. So, I do think they have some good reasons for hedging their bets somewhat, but their overall pure Java only approach was disappointing considering their 'best platform for Java' promise. So, if you're speaking about startup time, you have a good point, but startup time is not always a showstopper (or Java wouldn't be so compelling in so many server, handheld, and high uptime applications).
With the memory mapping features of Apple's 10.2 Java (due August 24, I believe), graphics is quite fast for general apps (and beyond) in Java and memory footprint for multiple apps should be down dramatically through VM footprint sharing (good stuff!) (but arguably still somewhat memory heavy). The rest of Java speed is a matter of taste since hotspot compiles dynamically depending on the nature of the app(s).
So, to finish your thought. Apple does not write in Java (for their reasons), e.g., their iApps are still being written in obj-c which pretty much aligns with their treating Java as a bastard child despite Steve's promise. Steve's promise should be "best platform for pure Java" to disambiguate the situation.
That's why Apple's VM team is so arrogant:
Let's clarify this issue.
Apple's VM (and Java, since they're the same) team or, more particularly, prominent members of their Obj-C/Java VM team and so-called "java evangelist" have no reason to be arrogant toward their developers. Arrogance is unprofessional, reckless, and offensive. Feel free to troll as hard as you want on this point, but they did themselves no favors with their arrogant and offensive attitudes.
specifically in order to allow Apple and others to write OS X-specific apps in Java using the Cocoa bindings without a performance penalty, Apple's been trying to squeeze every last ounce of performance they can out of the VM.
No, they've been squeezing performance for general performance.
Contrary to your speculation, they told me that they only care about pure Java apps. That's why (according to them) they do not support Cocoa from Java. The drive for speed is to win the (pure) Java platform speed title.
They aren't there [high performance Java Cocoa apps] yet,
Point is: they're not even trying (according to them) to support Cocoa Java. Their answer to that question is: program in obj-c, you'll like it. (Swing and miss.)
IOW, they're saying: pure java or bust on OS X. Java is no alternative to obj-c (c, obj-c++, etc.).
unlike some companies, they care enough about the end-user experience to keep Java off the front line until the 15% performance gap can be closed.
First of all, Apple does not choose whether Java is on front line for industry. Java already is front line. Also, they don't choose the user experience by determining languages. The developers of apps choose user experience by doing well designed, quality work using the tools of their choice, including Java.
Second, Steve chose to make the Java issue front line for OS X with his "best platform for Java" jingoism. So your comment is misleading.
Finally, what 15% gap? The startup time gap is >> 15%, so you're not talking about that. The memory footprint gap with multiple apps is variable according to the apps running and number of copies running (and Apple fares well on that with their promised shared memory for Java), so memory footprint should not be your issue. The execution speed is variable according to the app as well --- could be faster, same or slower. There's no well recognized 15% gap known --- it's totally app dependent when using hotspot optimization versus compile-time optimization. Bottom line: who cares about performance for general apps anyway as long as its speedy enough?
The driving value in programming languages (and environments) today is value to the customer for efficiency and effectiveness of programming (not necessarily speed of execution). Apple does not dictate whether Java is on front line. Apple determines whether Apple gives Java priority and native support.
For native apps, Apple supports obj-c, not Java. If they choose to support Java Cocoa in the future, that would be promising. According to them publically and behind the scenes at WWDC, they do not support Java for Cocoa (contrary to your opening assertions). IOW, despite your speculation otherwise, Java and obj-c (and therefore Cocoa on OS X) are not seamlessly integrated --- according to Apple.
Apple has two different bridges, neither of which work. They advised against using either one when pressed, and different engineers would give conflicting opinions about which one was better (i.e., neither one was feature-complete, sufficient, or robust). Take home message: run away. I.e., only pure Java gets their nod, or for Cocoa programming, use obj-c.
-=-
Obj-c is the VM team's baby. Java is new to OS X and doesn't even run the latest Java incarnation yet (10.2 in August should catch up most of the way).
If Apple does work with Sun to port OpenOffice using some aspect of Java to talk OS X Cocoa, then perhaps the waters will part and, lo and behold, Java will reach the promised land (Cocoa first class citizenship). However, as long as it's obj-c uber alles (with pure java second class citizenship), OS X Cocoa is basically an obj-c or bust platform which is not particularly appetizing when more modern, compelling, and popular languages are available.
IOW, I'll take a little Jython with my Java over obj-c anyday, and I'd like that with my OS X but it's not currently available (despite your speculative gestures).
Dependency on Java (Score:2)
What I ABHOR, is dependence on external libs. Just think of the Unix world... More and more I see apps depending on external libs. That's why KDE and GNOME users are so bent on destroying the other. If I was to use all the (console) apps out there, without choosing lesser implimentations due to dependencies, I'd have perl, python, ruby, lua, netpipes and any of dozens of other interperaters, all running at once. Since I'm a little more stubborn on the subject, I'm using a computer that is several years old, and still only utilizing a tiny fraction of it's resources. But resources are secondary as well.
Even C and C++ programs are increasingly being designed with increasing dependencies. The problem is, if any one of those libraries has even a minor change made, the program won't compile. Then, you need to find the older libary, and attempt to introduce it, without destroying all the programs compiled with the old lib.
Just look at OpenOffice.org itself. You've got to download several large libs (which really aren't used for any other program) and compile those, as well as already having several libs, which may or may not be installed due to other programs.
Well, I'll stop myself before this gets too long.
Increasing dependance on external libs (such as Java) wastes memory (you're usually using a handful of fuctions of a huge lib), increase complexity, increases problems (the new version of Java was installed by another program, now StarOffice doesn't work), and is just plain and simple bad practice, and bad coding.
Hilarious. Totally hilarious (Score:2)
Well, you know one thing. Microsoft can't dare say that it's not fair for Apple to bundle software.
Re:Java ?! (Score:5, Insightful)
CNet may be partially right... the article talks about Apple engineers having access to StarOffice source and working on moving the UI to Quartz... maybe just the UI work will be done in Java (which has the Quartz UI on MacOS X) with the core functionality being in C/C++ as per the other Star/Open Office platforms. Using JNI this would certainly be possible... as for performance, well, we'll have to wait and see.
Hmmm. (Score:3, Interesting)
They seem to build a native C++ interface for the windowing system of OSX.
CNET probably confused this with the Java of OpenOffice support.
It's very unlikely that someone tries to build a GUI via Java. People are not that stupid.
Re:Hmmm. (Score:2, Insightful)
Do I have to pull the Java version of Wordperfect out of it's grave to remind you of what people are capable of doing?
Re:Hmmm. (Score:3, Funny)
Re:Hmmm. (Score:2, Troll)
There are some serious rumours to the effect that product was deliberately ... how to put this ... less than polisished ... as an attempt to appease M$, who were in 'negotiations' for the 25% (hah!) buy-in.
That said, I've always prefered WP over Word (OK, excluding that Java pos) ... it's always been more stable, more customizable, generally more powerful, and basically just that much better for the thinking user than Word. I've seen people whacking their computers over 'smart' features built into Word.
And Star Office retails around ~$80 US hereabouts ... about ten bucks more than I paid two months back for the latest (legit) Corel Suite (WordPerfect, QuattroPro, Paradox, Dragon Speak (still the best voice recognition out there)).
Re:Hmmm. (Score:2)
Re:Hmmm. (Score:2)
If they write the UI using the Swing API then the Aqua L&F comes for free, according to this [apple.com] page on Apple's developer site. Sure would be cool to have Star/OpenOffice with Aqua... the perfect reason for not buying MS Office v.X! ;-)
Re:Appleworks dead? (Score:3, Insightful)
I could easily see Apple maintaining AppleWorks while simultaneously contributing to (or publishing under its own brand?) a Mac version of StarOffice/OpenOffice. Perhaps Apple could continue to bundle AppleWorks on its consumer systems while bundling StarOffice on its pro systems. Or perhaps it could license StarOffice from Sun and work with them to create its own, highly Mac-ified version and offer it as a higher-end alternative to the more consumer-oriented AppleWorks. Either of these could happen in much the same way they position iMovie and iDVD versus Final Cut Pro and DVD Studio Pro for consumers and professionals, respectively.
Re:Appleworks dead? (Score:2, Informative)
I think the idea that Apple might drop AppleWorks and try to replace it with the more robust StarOffice is definitely not without merit. Given the fact that StarOffice and OpenOffice share a common file format, and those suites together create a compatible document format across Solaris, Windows, and Linux (both x86 and PPC), Apple might be wise to join that group. If Apple and Sun create StarOffice for MacOS X, and Microsoft does pull the plug on Office for Mac, it will be Star/OpenOffice on five platforms versus MS Office on one. Star/OpenOffice would become the de facto choice for anyone not running Windows (or not wanting to spend $500 USD on a productivity suite).
If Apple decides to jump on the StarOffice bandwagon, I don't see them continuing to support AppleWorks. Everything I've seen about this indicates that StarOffice for MacOS X would be bundled for free with pro-level Macs (and most likely available for free or very little money for the consumer-level Macs). I don't see why anyone would choose AppleWorks if they could get StarOffice for less than AppleWorks or for free?
Re:Appleworks has to be free with iMachines (Score:2)
if anything i see this teaming up for the recently rumored "pro version" of Appleworks. i don't know if they will bundle it with the Pro machines or just sell it, or pack it with all machines. time and the economy will tell on that one. you figure Appleworks is good for home users and school kids. no reason to make then use the Pro software, and no reason to make the Pro software simple enough for a 1st grader to use. also if someone is in a dedicated M$ enviroment, then they will probably still use M$ Office (at least while one still exists).
Re:Appleworks dead? (Score:2)
Claris did (Score:3, Informative)
The team that was behind ClarisWorks then created Gobe Productive for BeOS, & just recently Windows & Linux too.
I wonder how similar Gobe Productive for Windows is to the current version of AppleWorks for Windows?
Apple didn't purchase Claris (Score:3, Informative)
In 1998 Apple restructed Claris as FileMaker, Inc. to focus on its most profitable product, FileMaker. Apple killed the other Claris-branded software (Emailer and Home Page being the most notable) and returned the office suite known as ClarisWorks to its pre-1987 name: AppleWorks.
Re:There is a native version (Score:3, Informative)
I mean no disrespect to the OpenOffice people but that build is not a 1.0 release.
Re:Sun's grammar (Score:2, Funny)
Cheers.
is this the Appleworks pro rumor sites spoke of? (Score:2)
there have been rumors of some sort of "pro" Appleworks for a while now.... Appleworks itself, if you have never ised it, couls be thought of as iOffice or something. it's bundled with the iBook, iMac (new and old) and the eMac. i don't remember if they started bundling it with the pro models (there was talk of it). it's good enough for home users, but i guess not quite up to corporate use. the recent versions have good translation from and into M$ Office formats, so in some situations when you need to translate documents you will be fine. if you were at work and constantly exchanging documents though you might still want M$ Office itself.
Re:AppleWorks goes all the way back to the IIe (Score:4, Informative)
You just referenced three different programs, each with entirely different codebases.
The first AppleWorks was text-based, in the days of the IIe. I associate the name Rupert Lissner with early versions of this; Beagle Bros. was involved in later versions, I think. I think there's also some connection to the early MSWorks team.
AppleWorks GS was an independent project, written by StyleWare, and originally to be called GSWorks. Claris bought StyleWare, and it became AppleWorks GS. This was a fairly typical module-based integrated app (i.e. mostly separate programs with a wrapper around them), but you would not believe the challenge of doing something like this with a color GUI on a 2.8 MHz machine. (One unusual feature was an integrated paint/draw environment: objects retained their integrity, but you could e.g. lasso or erase parts of them.)
Two of us from StyleWare (myself and Scott Holdaway) later left Claris, wrote what was to become ClarisWorks, and sold it to Claris. Comepletely independent codebase from AppleWorks GS, and a completely different design, much more integrated. (That's right, Claris was there long before ClarisWorks, although people sometimes say "Claris" when they mean "ClarisWorks" - always confuses me.)
Some subsets of the two of us and the other early CW developers worked on ClarisWorks through version 5. Most of this group was later at Gobe, writing Gobe Productive (originally for BeOS, now for Windows as well).
Eventually Apple dismantled Claris. What was left became FileMaker Inc.; ClarisWorks transitioned to Apple, renamed (confusingly) AppleWorks. None of the original ClarisWorks developers are involved with AppleWorks at this point.
Although I'm somewhat depressed at what's become of ClarisWorks, I'm hopeful that StarOffice will be good for the Mac. (Either that, or I'll have to go write another integrated app - I won't use MS software.)
Bob Hearn
Re:Java *is* interpreted (usually) (Score:4, Informative)
In the case of Sun's current HotSpot JVMs (1.3, 1.3.1, 1.4, 1.4.1beta), however, the basic execution is bytecode interpretation. Only when the HotSpot profiler determines that a piece of code would benefit from optimization does is (possibly) get compiled into native code. Many other optimizations are also possible, of course. This is part of why there is still hope for Java on the client and why Java on the server actually works quite well. For long running processes, the HotSpot optimizer can (more accurately 'could') do a bang-up job optimizing the code.
As for your statement that there are optimizations that a Java compiler can do that a C++ compiler cannot, that is true. Of course the reverse is also true; the Java bytecode compiler cannot do as much type checking as a C++ compiler can, and it cannot do some of the optimizations that C++ can because until runtime it cannot know if they will be usefull or not. Java's compilation environment is, in some ways, more complex than C++'s, even though C++ is a much more complex language. Java has two compilers: one source to bytecode compiler run at "compile time", and one bytecode to native compiler than [may] run at runtime.
This is mostly offtopic and mostly pedantic, but, as a developer who uses several languages, I hate to see silly comments by language biggots go unchallanged. Always remember: All languages suck; some just suck less in a given situation than the others do.
sorry, but you are wrong (Score:2)
There are interpreters for C and C++ as well. Does that make C and C++ "interpreted languages"? The fact is that there are excellent native code compilers for Java, both JIT and batch. Java is as much a compiled language as C++.
however, the basic execution is bytecode interpretation.
For some uninteresting definition of "basic" that may be true. In real life, however, with a good JIT, all compute-intensive Java code is compiled into native code. Java byte code that is executed rarely may be interpreted, but that doesn't matter for performance, exactly because it's rare (in fact, it saves memory).
Of course the reverse is also true; the Java bytecode compiler cannot do as much type checking as a C++ compiler can, and it cannot do some of the optimizations that C++ can because until runtime it cannot know if they will be usefull or not.
That is utter nonsense. A JIT has much more type information and much more statistical information available to it than any C++ compiler. Furthermore, the Java language spec prohibits aliasing in many cases in which C++ does not, giving Java compilers a lot more opportunity for optimization where a C++ compiler can't do anything. So, even a batch compiler for Java has a lot more opportunities for optimization than a batch compiler for C++.
This is mostly offtopic and mostly pedantic, but, as a developer who uses several languages, I hate to see silly comments by language biggots go unchallanged. Always remember: All languages suck; some just suck less in a given situation than the others do.
When arguments fail you, you resort to insults? All I said was that Java is natively compiled (i.e., that there are native compilers for it) and that it offers more opportunities for optimization, two statements that I completely stand by.
Re:sorry, but you are wrong (Score:2)
Perhaps I'm mis-interpreting you. If so, I owe you an appology. Your respose leads me to believe that I'm pretty close to the mark, though. Feel free to correct me.
KDE, Java, and PHP on Mac (Score:4, Informative)
I use my home x86 boxen for web development (php, mysql), with KDE/Qt for C++ development (and some Java).
Mac OS X out of the box includes extensive support for the Java platform [apple.com].
If you want to write KDE apps on the Mac, you're in luck: Fink [sourceforge.net], the most comprehensive distribution of free software for the Darwin operating system, now includes KDE [sourceforge.net]. Fink also includes PHP, Ruby, Python, MySQL, and PostgreSQL.
Re:Apple Convert (Score:5, Informative)
I develop 4 open source PHP/MySQL utilities, and have moved development of all of them over to OS X. Project Builder is pretty good, or if you use Vim or Emacs you can install X11 (I did). KDE is now in Fink, and Trolltech has also release an OS X native version of Qt.
One recommendation: put in a lot of RAM. When I first got the iBook (700MHz) I though it was kind of slow, but now that I maxed out the RAM (640MB), it's very nice. Also, my wife has one of the 800MHz 15" iMacs, and it's really nice as well.
Re:Apple Convert (Score:2)
After all, 640 megabytes should be enough for everyone... oh, wait... :-)
Re:Apple Convert (Score:2)
now that I maxed out the RAM (640MB), it's very nice
640MB is enough for anybody. :)
Re:Apple Convert (Score:5, Informative)
I got an iBook because I thought the hardware was sexy. I tought about installing Yellow Dog and a two button mouse. Guess what happened?
I ditched Linux for MacOS X but kept using my old apps, like mutt and so on. I kept writing C code with vi, et all
After 3 months, I found myself using the Mail app that comes with MacOS X, Project Builder, and Objective C.
Cocoa is wonderfull -- get the Hillegrass book, it's good beginning stuff.
I never intended to make the switch. It was the hardware that got me. Then, slowly I got hooked. I highly recommend the platform. I would never ever use a mac before MacOS X, but now I think of it as the NeXT box that I never got.
Sometimes I think of the non-free nature of the whole thing, but the fact that Darwin, gcc, and a lot of other stuff is Open Source/Free, it makes me feel a little better. Besides you can run Darwin, X and GNUStep.
Qt (Score:2)
Of course, the real joy of mac is learning cocoa... it's yummy.
Re:The end is near... (Score:2)
Re:The end is near... (Score:2)
Re:Bill Gates Nightmare (Score:2)
Welcome to Bill Gates Nightmare..
How exactly is this? Apple and Sun are going to compete with Microsoft with an inferior product (c'mon, even OSS zealots recognize this) on a platform that enjoys around a five percent market share. I seriously doubt that Bill is trembling over this.
Apparently Steve Jobs feels that Apple has nursed its wounds from six years ago, and no longer needs Microsoft to stay alive. He is wrong. Pretty much the worst thing that Microsoft could do to apple would be to cut them loose.
Re:OpenOffice is not javabased (Score:3, Informative)
No. You'd don't need Java to run. It's only used for the integrated browser and the Java API to access OpenOffice stuff. Last time I installed it was optional on both Linux and Windows.
(Open|Star)Office written in? Not Java. (Score:2)
Then your beliefs are wrong. If you wish to check things out you can go and get the source [openoffice.org]. Java is not used for the suite (and was not for StarOffice either), but instead is merely hooked up [openoffice.org] in case you want to show Java applets in the browser, or to have an API so that you can write Java programs that interface with OpenOffice.
Re:sigh... (Score:2)
OTOH, I think this article is more evidence that apple has learned their lesson. Macs used to rely on proprietary hardware, inflating prices, but no more. On the old MacOS they suffered for lack of software. By embracing a unix core, they've gained a huge base of pre-existing software, and added incentive for Windows developers to port to Mac/Unix. If they could find a way to incorporate X-windows (especially GTK) apps (and make command-line apps and functionality easily accessible from the Aqua gui - sort of a gui super terminal, kinda like shellshell) that would be perfect.
Apple did not and should not have designed the Aqua interface around the X windows style. On the contrary - they should make an open source Aqua-style gui for Unix to replace X windows, and make it that much easier to port/run Unix Apps on OS X!
I totally agree (Score:2)
Though I do like Entourage a lot for my own personal mail and calendar at home, I was very impressed with the improvements to Apple's own Mail, and iCal, and iSync to keep all my devices that need that data up to date. I have not yet made the plunge to OS X as my primary OS at home, because I don't have a Mac truly capable of running it. That will change, as my six year-old Power Mac 7600 with the G3/400 upgrade moves to the server room and a shiny, new G4/G5 tower being introduced in a few weeks (with Jaguar preloaded) replaces it. When that day comes, I will take a long, hard look at how much I *really* need Microsoft Office.
One of Apple's Jaguar pages [apple.com] vaguely hints at Exchange compatibility, but does not go into specifics. This worries me, because I'm hoping they don't just mean, "it's compatible with the POP/SMTP functionality of your company's Exchange server." Also, isn't Outlook/Exchange a proprietary enough system that Microsoft could raise a stink over Apple developing their own Outlook client, or even take measures (legal or technical) to stop/prevent it?
Oh, and don't get me started on those Quark assholes. They are just begging Adobe, "Please, please, keep polishing your X-native InDesign! Take our marketshare! Put us out of business!"
~Philly
Re:OpenOffice java based? (Score:2)
Thats about all the Corel story teaches us.