Even in Java, I suck at GUI programming.

notfred

Lifer
Feb 12, 2001
38,241
4
0
Ok, so I'm working on this application, (calling it "phosphor" - here's a screenshot). Anyway, it's a PNG decoder/viewer/editor (no editing yet, but I will add that ability later). ANyway, you can see from the screenshot that the decoder is working, but my UI sucks. I really meed more practice with this whole "GUI" thing....

 

Adul

Elite Member
Oct 9, 1999
32,999
44
91
danny.tangtam.com
:)

have u come accross any java bases wusiwug editors used on content management systems?

I have something that could work in flash, but a java editor sounds like an idea :)
 

Darein

Platinum Member
Nov 14, 2000
2,640
0
0
Looks like quite a useful program you have going on there. Practice makes perfect I guess.
 

Iron Woode

Elite Member
Super Moderator
Oct 10, 1999
31,252
12,777
136
Originally posted by: Adul
:)

have u come accross any java bases wusiwug editors used on content management systems?

I have something that could work in flash, but a java editor sounds like an idea :)
There is Jamba and Jbuilder.

 

Soybomb

Diamond Member
Jun 30, 2000
9,506
2
81
Originally posted by: notfred
Originally posted by: gopunk
you're really into graphics eh?

I like graphics.

Me too, I have an extensive collection of graphics that I try to look at frequently ;)

Seriously though cool app you have in the works
 

ViRGE

Elite Member, Moderator Emeritus
Oct 9, 1999
31,516
167
106
Have you read the Aqua interface guidelines? Those really help a lot as I've heard.
 

notfred

Lifer
Feb 12, 2001
38,241
4
0
Originally posted by: ViRGE
Have you read the Aqua interface guidelines? Those really help a lot as I've heard.

It's jsut a lack of experience w/ AWT and swing than anything.
 

manly

Lifer
Jan 25, 2000
13,083
3,848
136
Actually HCI (basically the computer science of user interfaces) is not a simple concept picked up through hacking. You should at least take your university's course(s) as a good starting point. Read Donald Norman's books; not directly about programming, but fascinating stuff. Nielsen is considered a guru of Web usability, and the thin client interface is predominant nowadays.

At least with Java for example, I don't believe there were any good GUI/HCI books out for years. The only offerings were ho-hum AWT, then Swing texts. Sun finally came out with one (Java Look & Feel Guidelines) a few years back. I read most of it online, and it's high quality but falls short because it doesn't demonstrate proper code or patterns to implement successful designs. It needed more practical coding guidelines IMO.

Independent of Swing, part of what I'm saying is the vast majority of hackers and wannabe hackers are not successful GUI designers.

Edit:
Another reason exacerbating the Swing GUI usability situation is how relatively easy it is to program with the API. It may not be drag and drop just like VB (but there are too many two-way GOOD visual form designers for Java to count out), but even coding by command-line is quite accessible. Easy to pick up, but obviously challenging to master.

Btw, how do you like the MRJ for OS X? It's up to Java2 1.3 now? I wish they'd hurry up and port Apple's nifty shared memory JVM feature to other platforms. :(
 

FeathersMcGraw

Diamond Member
Oct 17, 2001
4,041
1
0
Originally posted by: manly
Actually HCI (basically the computer science of user interfaces) is not a simple concept picked up through hacking. You should at least take your university's course(s) as a good starting point. Read Donald Norman's books; not directly about programming, but fascinating stuff. Nielsen is considered a guru of Web usability, and the thin client interface is predominant nowadays.

Second the recommendation for Norman. "The Design of Everyday Things" was part of our syllabus for my HCI class, and even though it's more concerned with physical/industrial design, it illustrates the absolute necessity of considering clear metaphor when creating any interface.

Another reason exacerbating the Swing GUI usability situation is how relatively easy it is to program with the API. It may not be drag and drop just like VB (but there are too many two-way GOOD visual form designers for Java to count out), but even coding by command-line is quite accessible. Easy to pick up, but obviously challenging to master.

I haven't seen a WYSIWYG Java GUI builder yet that didn't produce incomprehensible code. Worse, a lot of them use null layout managers and absolute positioning (which flies entirely in the face of the layout manager design in the first place). Any recommendations are welcome.

The danger of the simplicity of the API is that it conceals the design tradeoff that enabled it -- lack of thread safety in all of the Swing classes. It's exceedingly easy to build a simple window/button/dialog interface, but a lot more insidious if you have complex tree/table models which you want to compute/update asynchronously to keep the interface from freezing up.
 

her209

No Lifer
Oct 11, 2000
56,336
11
0
VB is the easiest.

Actually, HTML forms are the easiest, if HTML counts.
 

CraigRT

Lifer
Jun 16, 2000
31,440
5
0
Originally posted by: her209
VB is the easiest.

Actually, HTML forms are the easiest, if HTML counts.

HTML isn't even programming... it's almost plain english!!!
 

ViRGE

Elite Member, Moderator Emeritus
Oct 9, 1999
31,516
167
106
Originally posted by: manly

Btw, how do you like the MRJ for OS X? It's up to Java2 1.3 now? I wish they'd hurry up and port Apple's nifty shared memory JVM feature to other platforms. :(

The version of Java shipping with OS X 10.2 is 1.3.1; 1.4 should be out real soon.
 

her209

No Lifer
Oct 11, 2000
56,336
11
0
Originally posted by: Yield
Originally posted by: her209
VB is the easiest.

Actually, HTML forms are the easiest, if HTML counts.

HTML isn't even programming... it's almost plain english!!!
That's the goal of higher level languages ;)

 

Beattie

Golden Member
Sep 6, 2001
1,774
0
0
A few comments...

you are working in OSX... use Project Builder and Interface Builder. They make everything really easy. Also learn Objective-C. It's a lot faster than the Java-Cocoa bindings.
 

manly

Lifer
Jan 25, 2000
13,083
3,848
136
Originally posted by: FeathersMcGraw

I haven't seen a WYSIWYG Java GUI builder yet that didn't produce incomprehensible code. Worse, a lot of them use null layout managers and absolute positioning (which flies entirely in the face of the layout manager design in the first place). Any recommendations are welcome.
Perhaps that's why to date, I still handcraft Swing UIs (mind you I rarely have the actual need or desire to). But this brings up one of the ironies of the Java L&F Guidelines. IIRC, all the recommendations were stated in PIXELS. As a whole, I thought the work was good and the standard GUI attractive and usable, but I scratched my head on how the team (JavaSoft) that brought the dynamic layout manager to the masses ended up with mostly recommendation in terms of absolute positioning.

Maybe I'm off base on the quality of Java RAD GUI development tools. I really thought they are at least 3rd generation by now, and mostly good. I was quite impressed with the unique IBM VisualAge for Java GUI builder back in 1997, but they've long since EOL'd that product in favor of Websphere/Eclipse.