Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Java > Teaching Java, teaching what?

Reply
Thread Tools

Teaching Java, teaching what?

 
 
Stefan Ram
Guest
Posts: n/a
 
      12-08-2013
Many Java classes and Java books teach Java foundations and
then Java OOP to finally be able to show how Swing can be
used to create programs that look like beginners expect
programs to look like, i.e., they do not write some text to
an old-fashioned text console, but run as a GUI windows.

But then, I hear everywhere: »Java on the Desktop is dead.«.
Now I asked myself: Is it wrong to teach how to write Java
desktop applications in a class (using Swing)? After all,
you do not want to waste the time of the students by
teaching them something that is »dead«?

 
Reply With Quote
 
 
 
 
Eric Sosman
Guest
Posts: n/a
 
      12-08-2013
On 12/8/2013 11:00 AM, Stefan Ram wrote:
> Many Java classes and Java books teach Java foundations and
> then Java OOP to finally be able to show how Swing can be
> used to create programs that look like beginners expect
> programs to look like, i.e., they do not write some text to
> an old-fashioned text console, but run as a GUI windows.
>
> But then, I hear everywhere: »Java on the Desktop is dead.«.
> Now I asked myself: Is it wrong to teach how to write Java
> desktop applications in a class (using Swing)? After all,
> you do not want to waste the time of the students by
> teaching them something that is »dead«?


"Believe ninety percent of what you see, fifty percent of
what you read, and ten percent of what you hear."

That was my father's dictum when I was quite young, long
before the Internet came along (had the Internet been around,
he would surely have moved "fifty percent" to a lower figure).
Anyhow, he'd have said that what you "hear everywhere" is only
ten percent reliable, so although you should pay it some heed
you shouldn't let it influence you too strongly.

My own take (uninformed; peg this somewhere between the
ten- and fifty-percent level) is that Java applets have shown
themselves to be too dangerous for the lawless Net. This does
not, however, equate to "Java on the desktop is dead." Both
applets and Java Web Start *in a controlled environment* can
be safe and useful. Use them on the inTRAnet if you like, as
a way to deploy in-house applications. Also, Swing can put a
perfectly adequate (albeit not fancy) GUI on an application
launched from the desktop rather than in a browser, should you
wish to do so.

Does this make a case for, or a case against, teaching Swing?
Sorry; for that question I don't have even a ten-percent answer.

--
Eric Sosman
http://www.velocityreviews.com/forums/(E-Mail Removed)d
 
Reply With Quote
 
 
 
 
Jeff Higgins
Guest
Posts: n/a
 
      12-08-2013
On 12/08/2013 11:00 AM, Stefan Ram wrote:
> Many Java classes and Java books teach Java foundations and
> then Java OOP to finally be able to show how Swing can be
> used to create programs that look like beginners expect
> programs to look like, i.e., they do not write some text to
> an old-fashioned text console, but run as a GUI windows.
>
> But then, I hear everywhere: »Java on the Desktop is dead.«.
> Now I asked myself: Is it wrong to teach how to write Java
> desktop applications in a class (using Swing)? After all,
> you do not want to waste the time of the students by
> teaching them something that is »dead«?
>

It would be wrong to accept a student whose educational objective
misaligned with your syllabus. Are you seeking reassurance?
 
Reply With Quote
 
markspace
Guest
Posts: n/a
 
      12-08-2013
On 12/8/2013 8:49 AM, Eric Sosman wrote:

> My own take (uninformed; peg this somewhere between the
> ten- and fifty-percent level) is that Java applets have shown
> themselves to be too dangerous for the lawless Net. This does


Just to toss in my own two nickels, I don't believe that applets are
inherently more dangerous than Adobe Flash or JavaScript. The major
problems with applets lately was Oracle was slow to addressing security
issues. That's really a problem for any internet connected computer or
program. Heck Windows OS wasn't exactly known for its security on the
'net a few years ago.


 
Reply With Quote
 
Stefan Ram
Guest
Posts: n/a
 
      12-08-2013
Jeff Higgins <(E-Mail Removed)> writes:
>It would be wrong to accept a student whose educational objective
>misaligned with your syllabus.


There is no fixed syllabus. The school for adult students
just asks me to give a »Java class«, the details of the
syllabus are left to me. Every year I am trying anew to
write a good syllabus for my Java class that should be
aligned with as much student's educational objective's as
possible and also reflect what I deem to be important to
learn about Java. I am at liberty to include or exclude Swing.

I do not choose students, instead it's the other way round:
If my syllabus and the student's educational objectives are
misaligned too much, the student will not visit my class.

 
Reply With Quote
 
markspace
Guest
Posts: n/a
 
      12-09-2013
On 12/8/2013 11:12 AM, Stefan Ram wrote:
> Jeff Higgins <(E-Mail Removed)> writes:
>> It would be wrong to accept a student whose educational objective
>> misaligned with your syllabus.

>
> There is no fixed syllabus. The school for adult students
>
> I do not choose students, instead it's the other way round:


Do students ever return and tell you what they thought of their class?
What was their feedback? Do you consult with the employers of those
students to find what they want?

Both of these strike me as better ideas than asking us. Personally,
it's been so long since I learned both Java and especially my first
programming language, I wouldn't trust myself to give advice to anyone
starting out today without knowing some context.


 
Reply With Quote
 
Joerg Meier
Guest
Posts: n/a
 
      12-09-2013
On 8 Dec 2013 16:00:00 GMT, Stefan Ram wrote:

> Many Java classes and Java books teach Java foundations and
> then Java OOP to finally be able to show how Swing can be
> used to create programs that look like beginners expect
> programs to look like, i.e., they do not write some text to
> an old-fashioned text console, but run as a GUI windows.


> But then, I hear everywhere: »Java on the Desktop is dead.«.
> Now I asked myself: Is it wrong to teach how to write Java
> desktop applications in a class (using Swing)? After all,
> you do not want to waste the time of the students by
> teaching them something that is »dead«?


Ok, Java on the desktop certainly isn't dead, heck, even gaming in Java has
just recently excited millions and millions of people with stuff like
Minecraft.

But that being said, Swing/GUI is a comparatively 'hard' task, spanning a
huge VOLUME of information. By that I mean that unlike, say, Reflection, or
big O notation, Swing isn't just something you have to 'understand', but
also something that even while teaching the brightest students will take a
long time due to how many pieces there are that people will need to
understand to do the bare minimum.

If you can keep your students interested without touching Swing, I'd say
stay away from it, or maybe provide links to tutorials for the interested
students. If your students are not excited by console apps, you might want
to consider other things to teach that interest them.

For example, it is relatively trivial to produce a basic framework allowing
people to move things on the screen in a framework like libGDX (like, as a
game). It might not exactly be a job skill, but then neither will one
course of Swing intro be.

Liebe Gruesse,
Joerg

--
Ich lese meine Emails nicht, replies to Email bleiben also leider
ungelesen.
 
Reply With Quote
 
Jeff Higgins
Guest
Posts: n/a
 
      12-09-2013
On 12/08/2013 02:12 PM, Stefan Ram wrote:
> Jeff Higgins <(E-Mail Removed)> writes:
>> It would be wrong to accept a student whose educational objective
>> misaligned with your syllabus.

>
> There is no fixed syllabus. The school for adult students
> just asks me to give a »Java class«, the details of the
> syllabus are left to me. Every year I am trying anew to
> write a good syllabus for my Java class that should be
> aligned with as much student's educational objective's as
> possible and also reflect what I deem to be important to
> learn about Java. I am at liberty to include or exclude Swing.
>
> I do not choose students, instead it's the other way round:


> If my syllabus and the student's educational objectives are
> misaligned too much, the student will not visit my class.
>

The student visited my class.

Therefore my syllabus and the student's
educational objectives are not misaligned too much.

Good job!

My bet is that Swing will be a part of the JDK and JRE
for a long time. Yes, beginners expect to see windows.
With a current JDK what are the GUI alternatives?
Are you comfortable with teaching all of the alternatives?
So far it seems harder to pop up a dialog in JavaFX than Swing.
But then I don't yet have much experience with JavaFX.
If the adult students are learning to program for their
own enjoyment, then teach what you are most comfortable with.
They will explore the alternatives on their own once they
get over the hump. If it is vocational training then teach
what they are required to know.


 
Reply With Quote
 
Arne Vajhøj
Guest
Posts: n/a
 
      12-09-2013
On 12/8/2013 11:00 AM, Stefan Ram wrote:
> Many Java classes and Java books teach Java foundations and
> then Java OOP to finally be able to show how Swing can be
> used to create programs that look like beginners expect
> programs to look like, i.e., they do not write some text to
> an old-fashioned text console, but run as a GUI windows.
>
> But then, I hear everywhere: »Java on the Desktop is dead.«.
> Now I asked myself: Is it wrong to teach how to write Java
> desktop applications in a class (using Swing)? After all,
> you do not want to waste the time of the students by
> teaching them something that is »dead«?


Java on the desktop has not died - it never lived.



But I don't think it matters.

You students need to learn OOP and Java programming.

Creating desktop Java applications is fine for that.

JSF web apps, JAX-RS web services with non-Java frontend,
Spring MVC web apps, GWT etc. may be more common than
Java desktop apps, but I think they are less suited to learn
OOP and Java.

And Java desktop skills are not wasted:
* such apps do get written - maybe not as state of the art
commercial applications but still a lot of utility apps - and
even though maybe 90% of Java developers work in the Java EE
world, then my guess is that 95% of Java developers know how to
write a Java desktop app
* it is easier to learn writing desktop application sin another
language after having learned about it in Java - all the stuff
about event thread etc. also exist in other technologies

Arne




 
Reply With Quote
 
Arne Vajhøj
Guest
Posts: n/a
 
      12-09-2013
On 12/8/2013 2:03 PM, markspace wrote:
> On 12/8/2013 8:49 AM, Eric Sosman wrote:
>
>> My own take (uninformed; peg this somewhere between the
>> ten- and fifty-percent level) is that Java applets have shown
>> themselves to be too dangerous for the lawless Net. This does

>
> Just to toss in my own two nickels, I don't believe that applets are
> inherently more dangerous than Adobe Flash or JavaScript. The major
> problems with applets lately was Oracle was slow to addressing security
> issues. That's really a problem for any internet connected computer or
> program. Heck Windows OS wasn't exactly known for its security on the
> 'net a few years ago.


I mostly agree.

Executing code downloaded from the internet is very tricky
security wise.

And alternatives like Flash, SilverLigth and JavaScript has
certainly had their security vulnerabilities as well.

I do think Java applets has a few extra features that
may have contributed to the problems:
* the ability to be allowed privs by user
* full API

Arne


 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
oh perlbal you!!! you got what i need....but you dotn work with 5 16 johannes falcone Perl Misc 6 05-16-2013 08:11 PM
xmp, what to use instead of. myphplists@yahoo.com HTML 9 04-29-2013 03:35 PM
What is the reason for defining classes within classes in Python? vasudevram Python 6 04-24-2013 01:29 PM
what is the advantage of using maven for java standalone app mcheung63@gmail.com Java 13 04-16-2013 01:42 AM
What Linux freeware will blur faces & show all frames of a 30second AVI video? Danny D. Digital Photography 8 04-14-2013 10:18 PM



Advertisments