Older Programmer Looking to Learn Java on his own.

L

len

Hello All

I am looking to learn java to impove my chances of landing a new job.

I have been unemployed for about 6 month and doing contract work to
bring money in. I do not anticipate getting re-employed for several
more
months with my current skill set and due to my age. So I am looking
to update my skill set.

Current skill set;

Have coded in cobol, assembler, MSAccess, and for the last several
years in a language called Topspeed by Clarion (its dying now). I
have
played with Ruby and more recently in Python. At one time I was
an IMS DB/DC database administrator and have used SQL with
MS SQL, PostgresSQL, and MySQL.

I understand the concepts of OOP although I have done very little
coding using classes and objects.

My initial goals would be the following;

1. Learn to write business applications using GUI.
2. Then the ability to write Web applications.

My current learning environment is Linux Ubuntu. Funds are tight
but I'm sure I can manage a book or two if needed.

I have looked through this group at the other learning requests and
I have started going through the Sun Java tutorials as a starting
point.

My current contract work gives me the freedom to use what ever
I need to get the work done so I would hope to use these new Java
skill to build up a portfolio of work both application and web.

I know you can't learn a language in a day or even a month but
urgency is always a great motivator.

Any advice or suggestions would be greatly appreciated.

Thank
Len
 
A

Arne Vajhøj

len said:
I am looking to learn java to impove my chances of landing a new job.

I have been unemployed for about 6 month and doing contract work to
bring money in. I do not anticipate getting re-employed for several
more
months with my current skill set and due to my age. So I am looking
to update my skill set.

In my book experience is a big plus.

But ...
Current skill set;

Have coded in cobol, assembler, MSAccess, and for the last several
years in a language called Topspeed by Clarion (its dying now). I
have
played with Ruby and more recently in Python. At one time I was
an IMS DB/DC database administrator and have used SQL with
MS SQL, PostgresSQL, and MySQL.

I understand the concepts of OOP although I have done very little
coding using classes and objects.

My initial goals would be the following;

1. Learn to write business applications using GUI.
>
> 2. Then the ability to write Web applications.

If you are focused on getting a Java job then drop AWT/Swing/SWT
and focus entirely on web front ends.
My current learning environment is Linux Ubuntu. Funds are tight
but I'm sure I can manage a book or two if needed.

I have looked through this group at the other learning requests and
I have started going through the Sun Java tutorials as a starting
point.

My current contract work gives me the freedom to use what ever
I need to get the work done so I would hope to use these new Java
skill to build up a portfolio of work both application and web.

I know you can't learn a language in a day or even a month but
urgency is always a great motivator.

Use Java tutorial to learn the language, download the Java API docs
and familiarize yourself with it and use the Java EE tutorial to
learn the Java EE concepts.

Arne
 
T

Tom Anderson

Any advice or suggestions would be greatly appreciated.

Firstly, forget about GUIs and start with web interfaces. I think they're
actually easier, and are probably better aligned with the kind of work you
want to get.

Secondly, the only way you learn anything is by doing it, and then
thinking and reading about what you're doing. So, grab a compiler and an
IDE, work through the tutorials, and then start coding. Get back to us
when you have questions!

Oh, and learn to love javadocs. 90% of the questions people bring to this
group could have been answered by reading the right bit of javadoc.

Learning good design is perhaps more complicated, Getting a copy of the
Design Patterns and Refactoring books might be helpful:

http://www.amazon.com/Design-Patterns-Object-Oriented-Addison-Wesley-Professional/dp/0201633612
http://www.amazon.com/Refactoring-Improving-Existing-Addison-Wesley-Technology/dp/0201485672

But the most important thing is to read good code, and then write code of
your own and get feedback from other people. Getting involved with an open
source project might be helpful.

In fact, if you're going to be doing web apps, you need a way of testing
them (you can't write code without tests - i will not allow it). The best
option in java is HtmlUnit:

http://htmlunit.sourceforge.net/

As well as being a tool which will be useful to you, i think it's a fairly
well-written package (having spent quite a bit of time inside it in the
course of my work), and one from which you could learn more about OOP in
action - although there are certainly elements of the design with which i
disagree, and those are perhaps informative as well. It's also a project
which still needs work, so you could perhaps cut your teeth contributing
to it. They maintainers are a nice bunch, and run a strict test-driven
shop, so you could learn good habits. Of course, as a user, i have a
selfish interest in having more people contribute to it, too!

tom
 
M

Mark Space

len said:
played with Ruby and more recently in Python. At one time I was
an IMS DB/DC database administrator and have used SQL with
MS SQL, PostgresSQL, and MySQL.

To be honest it sounds like you have quite a bit of experience with
databases. I think you may want to consider a DBA job, they can make
excellent money.

1. Learn to write business applications using GUI.
2. Then the ability to write Web applications.

My personal advice would be to learn the core language first. GUIs and
esp. web pages will be much easier then. Both require at least some
knowledge of multi-threading, which is not terribly easy on the rank
beginner.

Lots of free online courses can be found here:

http://javapassion.com/

These courses are hard, and require a lot of time, but you do learn.
Doing all the homework and reading all the lessons is required if you
are going to actually learn, which is where the time and effort comes in.

Specific introductory course for Java:

http://www.javapassion.com/javaintro/

There are also classes on Java EE (Web programming) on that site too.

In addition, my favorite dead tree book is Learning Java by O'Reilly,
now in it's third edition. That book has quite a bit of good
information in it. It often goes beyond just the basics and shows
useful examples how to implement things in a given API. It isn't 100%
perfect, but it's the best bridge between basic syntax and starting with
the API that I have found.

Sun's tutorial is ok, but not really great as a tutorial. It works
better as a cookbook of examples how to use specific parts of the API.
Once you get the basics down, Sun's tutorial will help you expand your
knowledge or show you how to get a specific class working.

And obviously there's the Java doc and the language spec once you really
get going. Don't ignore the Java memory model, be sure to read through
it in the language specification, at least.

(Oh yes, for a free IDE consider NetBeans. It just upgraded to 6.5 too,
and it's excellent. It does both Swing (the main GUI API right now) and
Web pages natively.)
 
S

Stor Ursa

In addition, my favorite dead tree book is Learning Java by O'Reilly,
now in it's third edition.  That book has quite a bit of good
information in it.  It often goes beyond just the basics and shows
useful examples how to implement things in a given API.  It isn't 100%
perfect, but it's the best bridge between basic syntax and starting with
the API that I have found.

I've read both Learning Java and Thinking in Java by Bruce Eckel's and
would recommend Thinking in Java over Learning Java.
Also you can get old editions of Thinking in Java for free (Thanks Mr.
Eckel's) here: http://www.mindview.net/Books/TIJ/
Another thing to keep in mind is your town you work in. I live in the
Southeastern United States and cities here seem to be either be Java
cities or .NET cities. If there are more .NET jobs in town you might
consider learning .NET instead.
 
L

Lew

Stor said:
I've read both Learning Java and Thinking in Java by Bruce Eckel's and
would recommend Thinking in Java over Learning Java.
Also you can get old editions of Thinking in Java for free (Thanks Mr.
Eckel's) here: http://www.mindview.net/Books/TIJ/

I don't really recommend /Thinking in Java/ as the best way to learn - it
isn't really very idiomatic to Java. The online tutorials from Sun are a good
start, and /Effective Java/ by Joshua Bloch will get you farther along.
 
A

Andrew Thompson

If you are focused on getting a Java job then drop AWT/Swing/SWT
and focus entirely on web front ends.

As a long time advocate of rich client GUIs, I would
agree with that. The ratio of web based to 'rich client'
Java positions (in Australia, at least) runs about 20/1.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,484
Members
44,903
Latest member
orderPeak8CBDGummies

Latest Threads

Top