The Artima Developer Community
Sponsored Link

Weblogs Forum
Is Apple's OS X The Best (or even A Good) Platform for Java Development?

28 replies on 2 pages. Most recent reply: May 5, 2004 4:02 PM by David Ramsey

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 28 replies on 2 pages [ « | 1 2 ]
Todd Blanchard

Posts: 316
Nickname: tblanchard
Registered: May, 2003

Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development? Posted: Oct 14, 2003 12:48 AM
Reply to this message Reply
Advertisement
Any problems with your Mac are Your Fault. Any perceived shortcomings are Your Bad Attitude that Needs Changing.

Sorry to hear that. I've had stellar support. I got a TiBook with a broken screen latch (I think it broke in the 3rd week or so). Call to support, desicription of problem, next day box shows up, I put powerbook into box and call pickup number, one week later it returns fixed - no charge.

As for Swing - I find it has (a different set of) problems everywhere. I think its a failure in general. Java just isn't any good at desktop applications.

Robert P

Posts: 1
Nickname: robertp
Registered: Oct, 2003

Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development Posted: Oct 25, 2003 5:05 PM
Reply to this message Reply
As a Java programmer and *nix user, I have some strong opinions about this myself . . .

Recently I purchased an Apple, wanting to play with OS X. I'd used Macs before, but stability (pre OS X) and usability (yes, usability) was always an issue for me. I prefer to use the keyboard whenever possible, and I require my GUI/workspace to be very configurable. The Mac interface historically - and currently - does not support these needs.

I am most comfortable when I have multiple desktops, flexible focus options (easy keyboard focus switching, focus follows mouse, etc.), the ability to easily shade, minimize, and select different windows, and easy keyboard rebinding. Although there's a slew of free or payware Mac utilities to give OS X these capabilities, I tried most of them and found them all lacking.

I love my Mac - but I run linux on it now.

However, this kind of gets away from the original intent of the discussion, which is Java programming on Apple computers. The thing I found disconcerting with it is that Apple (typically) decided that the standard Java library and extension library location would be OS X-specific. That just doesn't do it for me. Again, the flexibility was lacking. Yes, you can set things up pretty much any way you like, but why not just be more like Java on other platforms? Why? Because it's Apple, and Apple always does things differently. Like it or not, take it or leave it, attitude counts, and Apple's attitude (and Apple supporters/fanatics attitudes) come up short.

Marcus Sundman

Posts: 4
Nickname: msundman
Registered: Sep, 2003

Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development Posted: Oct 25, 2003 5:19 PM
Reply to this message Reply
> My point exactly, Keith. However, Apple could give us
> something that people do want: the capability to type the
> first letter of the menu option. Right now, hitting a
> letter key does NOTHING. Seems cruel and unusual to me.

I think that sounds much better than how it works in windows and in linux (well, at least in KDE). You can't believe how many times my girlfriend has had accidents because of this. It usually goes something like this: she's happily typing away in OOo Writer, and every once in a while she switches to an Opera window and back, using Alt-TAB. Then at some point she is about to look at the Opera window (and presses Alt) but decides not to (releases Alt). Instead she continues typing in OOo Writer, but suddenly, out of nowhere, all these windows flashes before her but vanish immediately. Huh? Yes, you guessed it. Pressing and releasing Alt placed the focus on the menu bar, and when she started typing she was actually selecting a menu and a menu item, a dialog box came up for a fraction of a second until she typed the next character which performed some action on it since it is so "userfriendly" that it allows you to select actions by pressing a single key. So, by pressing Alt (accidentally only once) and just starting typing she actually managed to change various options, "accept" the changes and have no clue what just happened and why everything suddenly is displayed in some foreign language, or how to undo it.

She had complained about this happening but I was clueless about the cause, because she just said that sometimes when she starts typing all hell breaks loose and boxes flashes and settings change and other weird things happen. Then once I saw this happen to her and I immediately realized what was going on (after all, it has happened to me, too, several times). The point is that she really had no clue why her program suddenly flashed dialog boxes at her, making changes that she might or might not notice.

Things like this should never, ever happen. I suspect the only reason why it is this screwed up in kde is because so many kde developers are totally clueless about UI design and just copies whatever Microsoft does, and Microsoft UI designers are almost as clueless, starting the tragedy in the first place.

Cay Horstmann

Posts: 13
Nickname: cay
Registered: Apr, 2003

Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development Posted: Oct 27, 2003 1:33 PM
Reply to this message Reply
Thanks to all who responded to my blog entry.

My apologies for the unfair comparison between Apple drones and Linux users. Of course, there are friendly and fanatic members of both groups.

Thanks for pointing out that the latest batch of notebooks no longer has the peeling-paint problem. Hopefully they can ruggedize the power adapter soon.

Nobody challenged my complaints about Swing flakiness on the Mac, even with the latest production release. I stand by that. Blaming Swing in general is no excuse. As a Java developer, I use Swing apps, and I want them to work.

Someone asked whether the Mac would be better for server-side development. I think that's a good point. My co-author David Geary uses a Mac for Java Server Faces, and he seems to do ok.

Finally, regarding keyboard access to menus, I stand unrepentant. I don't care if someone's girlfriend is confused by the Windows Alt key. I am not swayed by the argument that Apple should punt on useful keyboard menu access so that CE Software Inc. can make a dime.

I've certainly never heard that kind of argument in the Linux world :-)

Cheers,

Cay

Brendan Johnston

Posts: 10
Nickname: bjsyd70
Registered: Jun, 2003

Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development Posted: Oct 27, 2003 4:41 PM
Reply to this message Reply
If you had to hold down the alt key the usability problem goes away.

Marcus Sundman

Posts: 4
Nickname: msundman
Registered: Sep, 2003

Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development Posted: Oct 27, 2003 7:17 PM
Reply to this message Reply
> If you had to hold down the alt key the usability problem
> goes away.

Yes. This is one solution. IMHO it'd be a good solution, even. There are other simple solutions, too, so the current situation on windows and linux can only be a result of actively ignoring usability issues.

Marcus Sundman

Posts: 4
Nickname: msundman
Registered: Sep, 2003

Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development Posted: Oct 27, 2003 7:42 PM
Reply to this message Reply
> Finally, regarding keyboard access to menus, I stand
> unrepentant. I don't care if someone's girlfriend is
> confused by the Windows Alt key. I am not swayed by the
> argument that Apple should punt on useful keyboard menu
> access so that CE Software Inc. can make a dime.

You're not the sharpest knife in the drawer, are you? Never did I say that there shouldn't be keyboard access to menus. Of course there should be keybord access to (almost) everything! (There should be a proper accessibility system in place to support other kinds of access, too.)

Nowadays I use linux/kde, but I used to use windows and what I miss most from windows is keyboard access. As I said, linux ui designers are even more clueless than windows ui designers. I have no idea why linux ui designers seem to think that people would want to move their hand between the keyboard and the mouse hundreds of times a day. (I certainly don't want to do that.)

Nevertheless, even no keyboard access is better than one that easily causes you to lose important data. So many times have I been typing something and some windows program has asked a critical question by showing a "userfriendly" dialog box, and as a result of the focus moving to the dialog box my typing unintentionally answered whatever question it displayed for that fraction of a second. Did it ask if I was sure I wanted to format E:? I don't know. Or was it my firewall asking whether or not to allow an incoming virus attack? I don't have a clue. And I don't even know what my "answer" was. That is simply unacceptable. (E.g. forcing the user to hold down Alt when using mnemonics would fix this problem in över 99% of the cases.)

Matt Gerrans

Posts: 1152
Nickname: matt
Registered: Feb, 2002

Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development Posted: Oct 27, 2003 7:51 PM
Reply to this message Reply
Maybe CE Software Inc. can make another dime by writing a program for Windows that automatically hits the Esc a second after users unintentionally hit the Alt key. This would be pretty easy to do with WinBatch, but the deluxe solution would be a keyboard filter driver.

Todd Blanchard

Posts: 316
Nickname: tblanchard
Registered: May, 2003

Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development Posted: Oct 27, 2003 9:33 PM
Reply to this message Reply
Nobody challenged my complaints about Swing flakiness on the Mac, even with the latest production release. I stand by that. Blaming Swing in general is no excuse. As a Java developer, I use Swing apps, and I want them to work.

I suspect the reason nobody challenged it is that the only platform Swing seems to not suck on is Windows (and even then it looks ugly and pixellated). Which I don't use. Oh well. Sorry I can't get too worked up about this.

I've written a fairly extensive swing app that is used to do ER modeling for databases. The result was so incredibly disappointing that I won't bother writing another one. Every point release the layouts get hosed, the icons get resized, the SystemColor's change. There simply isn't enough control in the api to do what you want in a straightforward way with adequate control.

Plus its still pretty slow. If I need a portable UI, I know where to download VisualWorks.

Jim Cushing

Posts: 2
Nickname: jimothy
Registered: Oct, 2003

Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development Posted: Oct 28, 2003 3:24 PM
Reply to this message Reply
Regarding the one button mouse: With an actual (desktop) mouse, I'll agree that it is unfortunate that Apple ships a one button mouse. On a laptop, however, I find it is much more convenient to control-tap than right-click. My right hand can tap on the track pad, where it already is when I'm "mousing," while my left hand presses the control key. Contrast that to the awkward thumb movement required to right click on a PC laptop.

This may sound trivial, but one of my biggest gripes about developing on Windows (as I do at my day job) or Linux is that lack of a command key (aka "FunkyKey") or its equivalent. On the Mac, the command key is used to activate keyboard shortcuts. On Windows, the control key is. But if you've got a command prompt, bash shell, telnet window, etc., you can't use the control key to copy, because control-c will break the current process. You gotta use the mouse!

Ironically, for all Windows users' talk about keyboard access, in my own observations of fellow developers working on Windows, they use the mouse a lot more than I do. Open, save, copy, paste; they all go to the menu or toolbar, where I use a keyboard shortcut.

bala

Posts: 1
Nickname: bala1
Registered: Jan, 2004

Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development? Posted: Jan 16, 2004 10:06 PM
Reply to this message Reply
Does anyone really think this article deserves its title? For someone who writes big fat books on java, I would have expected something a littlemore worthwhile and to the point from the author.

David Martland

Posts: 2
Nickname: dave2002
Registered: May, 2004

Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development? Posted: May 3, 2004 7:44 AM
Reply to this message Reply
What can I say! I've been using Apples for many, many years. In the early days I loved the Classic Mac, and later developments. I thoroughly disliked Windows, right through the 1990s until 1997. Even then I disliked Windows - though by then it was getting slightly more reliable than the then Mac OS (I used OS 7, then OS 8.0P, and I used Win NT for years). I also tried Linux briefly at the end of the 1990s, though I don't use it regularly and haven't used it for years.

Things have moved on. Now we have Linux, Windows XP and Mac OS X. Win XP on a good day is OK. It has many failings, and Windows systems still need far too much TLC. However, it is possible to use the system for basic operations once set up, and common things, such as word processing, and net surfing, and sending email work more or less OK, even for naive users. There is often a need for a resident systems admin (that's my role) for home users - but at least the system works.

Mac OS X? Many of my colleagues say they love this system and the machines it runs on. I think they're misguided. IMHO they are actually quite good hardware but hopelessly let down by the OS and the interface, and some of the software available. I do believe that in raw power terms that the Apple hardware is really quite good, and perhaps not too far behind the fastest Intel based machines. The software usually manages to slow this down to a snail's pace. I recently commented on a friend/colleague's laptop computer - a PC which we were testing in a wireless environment. "What's the speed?", I asked. I was surprised when he said "433", and queried whether he meant the bus speed. No - the processor speed. Why did I ask? It was faster than my iBook (an 800 MHz G3), and had an old processor. Not only that, but it was faster than my Intel based PC with a 2.4 GHz processor. More recently I resurrected an earlier 1.3 GHz PC with Win XP Pro, and that's the fastest system I currently have access to.

Almost certainly the speed differences are due to the software, and the way the interfaces work. The software could be OS software and/or also poorly written application code. Most users don't have time or knowledge to troubleshoot, and optimise.

To be continued - must go out!

David Martland

Posts: 2
Nickname: dave2002
Registered: May, 2004

Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development? Posted: May 3, 2004 11:09 AM
Reply to this message Reply
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.

David Ramsey

Posts: 34
Nickname: dlramsey
Registered: Apr, 2002

Re: Is Apple's OS X The Best (or even A Good) Platform for Java Development Posted: May 5, 2004 4:02 PM
Reply to this message Reply
>
> Observers with stop-watches can confirm that the
> mouse-whip-click-drag-release is often faster than some
> keyboard-only equivalents, even though the keyboardist
> THINKS he's going faster.
>

I find the above assertion incredible (as in not credible at all) given that mouse usage requires moving the hands off the home row to the mouse, committing the action, then returning to the keyboard. Can you supply a URL that also explains the conditions of this "test" that supposedly supports the above (unbelievable) assertion?

Flat View: This topic has 28 replies on 2 pages [ « | 1  2 ]
Topic: Why is Distributed so Hard? Previous Topic   Next Topic Topic: The Great Theoretical Architecture


Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2014 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use - Advertise with Us