|
Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development?
|
Posted: May 3, 2004 8:09 AM
|
|
Continuing where I left off ....
The question asked is whether OS X is the best, or even good for Java development. I am not answering this directly, since there are even more general issues - is OS X good for anything? OK - it can be cajoled into service, and my experiments comparing an 800 MHz iMac (G4) against a 1400c Powerbook showed that it was much faster in actually "doing" something - in particular generating a printable output from a Latex input. Using Oztex it took over 20 seconds on a 1400c Powerbook, and just over 2 on the iMac. However, for general operations, often the PowerBook feels faster - so why is this? Some have said that it makes a difference which version of the OS is used - 10.1, 10.2 or 10.3. I will concede that 10.3 is faster, and most probably the best, but it still exhibits significant problems, even on simple tasks.
Switching between tasks sometimes appears to take forever, and sometimes probably would, as some tasks (e.g mail in Mozilla or Thunderbird) can lock up. This wouldn't be so bad if it were easy to control the running tasks. Mostly I have to get up a Terminal window, and just use kill -9 nnn where nnn is the process id - hardly the sort of thing a typical user will want to do. The more obvious alternative which may be discovered by users who don't know Unix is to hit the power off button, and restart. Sometimes even this doesn't work - for example if using a laptop, and the power is low. My G3 iBook can lock up for no apparent reason if it goes into sleep mode due to power, and is then woken up. The only solution is then to disconnect the power, and take out the battery.
I have even written to Steve Jobs on a previous occasion pointing out problems with Mac OSs - but obviously the people there have no idea what they're doing - they're more interested in the shape of buttons on the screen.
Decent task control would make the machines very much more usable.
The Dock is more or less a disaster. It takes up space, unless the mode for hiding it is used. However, if it hides, then getting it back into sight when things go wrong is almost impossible. The magnification, which seems superficially good, is also a pain. If it is kept permanently in display, then it takes up useful screen space, and nearly always gets in the way of something - perhaps a scroll bar, for example.
When screens are active they can be stored in the Dock, which seems a good idea - but when they are re-activated they move out of the Dock, which is not clever. It would make much more sense to toggle them in/out.
The machines definitely seem to slow down if there are many tasks activated in the dock. It makes sense to only have a few active tasks, but most users won't know this. Noting the active tasks - the ones with the little black triangles - is something which all Mac users should be aware of. Of course it shouldn't really be necessary, with a decent virtual memory system and task management system, but the Mac OS just isn't up to that. Things are better with more memory, but even then there are still problems.
I have a G4 iMac with 768 Mbytes of memory and even this has problems similar to a G3 iBook with a mere 128 Mbytes. I suspect that memory handling is just poor.
OK - can Macs do anything well? Actually yes - they are perhaps much better at wireless networking than Win PCs, and there are other areas where they are very much simpler.
However, it is about time that Apple stopped being so damned complacent about their OS, and actually made it work properly. Most users will not have a clue about what is possible, or should be provided. Sadly quite a lot of Mac software is not that good either - which is sad in itself, and lets the machines down, but most users will find it impossible to tell whether problems are due to applications or their operating system.
If the OS could provide much better control over tasks, perhaps monitoring to detect deadlocks, or potential loops, and much speedier access to control panels to remove errant jobs, then I believe that most application developers may then take this system much more seriously. It would also be possible to fix the virtual memory so that it either works properly, or at the very least users receive a warning as soon as the ratio of working set pages to physically available memory pages gets near critical. As it is it is just a hopeless mess. It would be so easy to fix, if only Apple could get round to doing it.
|
|