Error Handling

R

Rhino

Eric Sosman said:
Oh please! Could YOU pick up a significant amount of detail - either via
memorization or making notes - from a 400 or 500 page book in just a
couple
of hours of reading?

No. And it's clear that *you* can't, not even with far more
time spent studying:

May 17, 2010: "I used to know how to [use instanceof]
several years ago"

Feb 13, 2006[!]: "I've been writing Java code [...] for
several years now and feel that I could do a decent job
at an intermediate level"

Dec 22, 2005[!!]: "I've been writing Java for several years"

Dec 6, 2004[!!!]: "I have been writing Java for several
years and am fluent enough that I don't have to post
questions here very often" [!!!!!!!!]

If "several plus five and a half" years of Java experience have
left you unaware of instanceof, baffled by the use of interface types,
and still asking long-winded elementary questions about exceptions,
I'd guess that you will not benefit from any book, however excellent.
Something in your brain resists Java, and you'd just be wasting time
and money trying to pound square-pegged Java into your head's round
hole. Forget Java and take up set design or viola playing or politics
or something -- there must be *some* field for which you have more
talent, because your talent for Java seems small indeed.
As the Brits would say: "Charming!"

I had expected better of you. I certainly hadn't imagined that you would
take time from your busy schedule to research past posts to try to find
things to throw in my face. Try taking nearly four years away from Java and
then see how much YOU remember when you come back to it....
 
R

Rhino

Lew said:
Yes, if that couple of hours is repeated, say, weekly, and accompanied
with actual practice in the art.

So now I'm supposed to go back to that bookstore say, weekly, for a couple
of hours each time and work on my memorizing and note-taking until I have
found all that is of use to me in Robust Java. We're assuming that the staff
of the store won't mind if I keep showing up and studying that book every
week, right? Ok, just so I'm clear on the plan you've laid out for me....
In fact, that pretty much describes how I learn to program Java. I don't
spend much money on books at all, so when I do buy it has to really be
worth it.
I certainly didn't get this good at Java by protecting my ego at the
expense of my skill.
You know, I don't get my jollies from responding to character assasination
so I am going to be brief. I _DO_ spend a signficant part of my day writing
and reworking my Java code. But it's pretty hard to make it better if I
don't know what I'm shooting for. That's why I ask questions here, so that I
can try to find out how to do it better. So if you want to assume that I am
just lazy and waiting for all the answers to be given to me, that's up to
you.
Nor by making pathetic excuses that somehow not buying books should in any
way impede my learning.
And I say again, for the LAST time, that memorizing large tracts of a
complex book where you have to get the details right is just not something I
can do. In fact, I don't think it's something ANYONE can realistically do,
unless perhaps they have so called eidetic ("photographic") memory, which I
don't. And making handwritten notes of that same book while sitting in a
bookstore/coffeeshop is only marginally more plausible. I don't have a
laptop and can't afford to buy one either so it would take ages to write
down any significant part of a book that size. And unless bookstores are
radically different in your part of the world, I don't think you'll be
surprised to hear that photocopiers aren't available in the bookstores
here....
Maybe a week. And that's just the normal public library, no special
influence needed. So?

How is never better than a week's delay?
I have never done an interlibrary loan but I seem to recall that friends who
tried it waited several MONTHS for the book they wanted.

And "never" didn't figure into any discussion about Interlibrary Loans. I
said that if it was going to take a long time - by which I meant months
since that was what friends had told me - I would just have to wait until I
could afford to BUY the book.

Just to show you my heart's in the right place, I will put in an
Interlibrary Loan for Robust Java this afternoon and see how long it takes.
 
M

markspace

Rhino said:
And I say again, for the LAST time, that memorizing large tracts of a
complex book where you have to get the details right is just not something I
can do. In fact, I don't think it's something ANYONE can realistically do,
unless perhaps they have so called eidetic ("photographic") memory, which I
don't.


Just a brief note before I disappear for the (American) holiday weekend:
this is exactly how I learned Java. Or one of the ways, at least. I
got a copy of Kathy Sierra's book for the SCJP exam, went through each
chapter, took notes, took the exams at the end of each chapter,
corrected my own exams, etc.

It's tedious and frustrating work, but it will teach you Java. You just
have to preserve and keep at it.

The other thing that teaches Java is taking a structured course with
programming exercises. Hands on work is essential to learning. (At
college, they call this a "lab" class.) I used the javapassion.com site
when it was free. I'd still recommend that site if you have the $39US
to spare, as it was a step above what you'd normally get at a local
community college.

You can simulate this yourself with your own self-programming studies,
but one also tends to get stuck in a rut this way and not learn new
things. Having a lab designed by someone else can move you into new
areas of learning.
 
T

Tom Anderson

May 17, 2010: "I used to know how to [use instanceof] several years
ago"

Feb 13, 2006[!]: "I've been writing Java code [...] for several years
now and feel that I could do a decent job at an intermediate level"

Dec 22, 2005[!!]: "I've been writing Java for several years"

Dec 6, 2004[!!!]: "I have been writing Java for several years and am
fluent enough that I don't have to post questions here very often"
[!!!!!!!!]

If "several plus five and a half" years of Java experience have left
you unaware of instanceof, baffled by the use of interface types, and
still asking long-winded elementary questions about exceptions, I'd
guess that you will not benefit from any book, however excellent.
Something in your brain resists Java, and you'd just be wasting time
and money trying to pound square-pegged Java into your head's round
hole. Forget Java and take up set design or viola playing or politics
or something -- there must be *some* field for which you have more
talent, because your talent for Java seems small indeed.

As the Brits would say: "Charming!"

I had expected better of you. I certainly hadn't imagined that you would
take time from your busy schedule to research past posts to try to find
things to throw in my face. Try taking nearly four years away from Java
and then see how much YOU remember when you come back to it....

I did - well, except it was nearly ten years rather than nearly four. I
had a paying java job in 1998, then stopped and went off to pursue a
career in biology. Gave up on that in 2008 and returned to the fold. I
wrote the odd bit of java in my time away, but mostly switched to python
for my programming needs. I had quite a bit of catching up to do, and a
lot of stuff to remember, but i did. In fact, it was easy; i suspect
because i'd learned it fairly well before i left, so it call came flooding
back.

The fact that you are not finding it as easy suggests to me that despite
your several years of experience before your break, you had never really
understood java. This fits with an impression that i am developing of you:
you are energetic, interested, and clever, but you are lacking in
attention span. To understand something, you need to take time to sit down
and think about it, really think about it, to do your own reading and work
through problems, learning from them as you do so. From your posts, it
seems like you tend to work in a more reactive, superficial way: hit a
problem, post about it, get answers, try to apply them, then come back
with more questions. There is a flow of information, but it seems to
bypass the part of your brain that does learning. Now, that might actually
be a reasonably effective way of getting things done - indeed, i think it
might be the way in which the vast majority of working programmers
operate! - but it is not a road which leads to mastery.

tom
 
R

Rhino

Tom Anderson said:
May 17, 2010: "I used to know how to [use instanceof] several years ago"

Feb 13, 2006[!]: "I've been writing Java code [...] for several years
now and feel that I could do a decent job at an intermediate level"

Dec 22, 2005[!!]: "I've been writing Java for several years"

Dec 6, 2004[!!!]: "I have been writing Java for several years and am
fluent enough that I don't have to post questions here very often"
[!!!!!!!!]

If "several plus five and a half" years of Java experience have left you
unaware of instanceof, baffled by the use of interface types, and still
asking long-winded elementary questions about exceptions, I'd guess that
you will not benefit from any book, however excellent. Something in your
brain resists Java, and you'd just be wasting time and money trying to
pound square-pegged Java into your head's round hole. Forget Java and
take up set design or viola playing or politics or something -- there
must be *some* field for which you have more talent, because your talent
for Java seems small indeed.

As the Brits would say: "Charming!"

I had expected better of you. I certainly hadn't imagined that you would
take time from your busy schedule to research past posts to try to find
things to throw in my face. Try taking nearly four years away from Java
and then see how much YOU remember when you come back to it....

I did - well, except it was nearly ten years rather than nearly four. I
had a paying java job in 1998, then stopped and went off to pursue a
career in biology. Gave up on that in 2008 and returned to the fold. I
wrote the odd bit of java in my time away, but mostly switched to python
for my programming needs. I had quite a bit of catching up to do, and a
lot of stuff to remember, but i did. In fact, it was easy; i suspect
because i'd learned it fairly well before i left, so it call came flooding
back.

The fact that you are not finding it as easy suggests to me that despite
your several years of experience before your break, you had never really
understood java. This fits with an impression that i am developing of you:
you are energetic, interested, and clever, but you are lacking in
attention span. To understand something, you need to take time to sit down
and think about it, really think about it, to do your own reading and work
through problems, learning from them as you do so. From your posts, it
seems like you tend to work in a more reactive, superficial way: hit a
problem, post about it, get answers, try to apply them, then come back
with more questions. There is a flow of information, but it seems to
bypass the part of your brain that does learning. Now, that might actually
be a reasonably effective way of getting things done - indeed, i think it
might be the way in which the vast majority of working programmers
operate! - but it is not a road which leads to mastery.
You may well be right, Tom, particularly about the part where I'd never
really understood Java before my four year hiatus. That seems likely given
that I'd learned whatever I knew from a handful of books - not the ones that
people recommend now as the great Java books, since those hadn't even be
written in some cases - some trial and error and some posting to newsgroups.
I have a fair amount of code that works but I realize that a lot of it
leaves something to be desired in the design department.....

I'm playing a wicked game of catch-up now and I'm under the gun too since I
need to find a job soon. I'd much rather write code than sell french fries
so I am trying to polish a decent-sized sample of my existing code for my
"portfolio". Filling in the various gaps in my understanding IS on the
agenda but I'm hoping I can get paying work with Java FIRST so that I have
access to mentors to guide me on my way. I simply don't have the time to do
all the reflecting necessary to get my head around Java design right now.
But it's high on my "to do" list once I get work!

Clearly, in an ideal world, I would do things the other way around - get OO
Design down first, THEN look for a Java job - but I simply can't do that
right now.

Just one of many things I would do very differently if I had to do it over
again....
 
R

Rhino

markspace said:
Just a brief note before I disappear for the (American) holiday weekend:
this is exactly how I learned Java. Or one of the ways, at least. I got
a copy of Kathy Sierra's book for the SCJP exam, went through each
chapter, took notes, took the exams at the end of each chapter, corrected
my own exams, etc.

It's tedious and frustrating work, but it will teach you Java. You just
have to preserve and keep at it.

The other thing that teaches Java is taking a structured course with
programming exercises. Hands on work is essential to learning. (At
college, they call this a "lab" class.) I used the javapassion.com site
when it was free. I'd still recommend that site if you have the $39US to
spare, as it was a step above what you'd normally get at a local community
college.

You can simulate this yourself with your own self-programming studies, but
one also tends to get stuck in a rut this way and not learn new things.
Having a lab designed by someone else can move you into new areas of
learning.
Thanks for your input, Markspace.

One thing I have learned over the years is that we each have our own best
way of learning. Like you, I am a "hands-on" guy. I need some theory so that
I know why I am doing what I'm doing but the hands-on is where I really
start to understand things, at least the "how" if not always the "why". So
my time with Java has mostly been hands-on, working with a handful of Java
programming books. As I acknowledged with Tom elsewhere in the thread, I
have a lot of gaps in the theory department and I'm trying to pick that up
now. I'm way overdue on that for a variety of reasons and if I had it to do
over, I would have done it sooner but this is where I find myself.

I've met people who can just hear the theory - or read the product manuals -
and they know everything they need to know. I envy those people but I am not
one of them.

I'm glad your approach to learning Java worked for you. It's probably a
matter of not having started with the right books. For instance, I've never
heard of Kathy Sierra and Joshua Bloch hadn't written the first edition of
his book at the point where I started writing Java. So I started working
through 1001 Java Programming Tips. I got quite a lot out of that book in
terms of programming basics but it was written in the Java 1.0 or 1.1 days
and a lot has changed. My local bookstore didn't have a lot of Java books to
choose from and my library had even less. But that was 1997 and a lot has
changed. I rather wish I had started Java later when it was more mature and
there were more good books. I also wish I had made more of an effort with
learning theory rather than leaving it so late. But that's water under the
bridge and I need to move on from here and fill in my gaps as best I can
now.....

I checked last night to see if there was a JUG (Java user group) in my area
but, unfortunately, there's not. The nearest groups are two to three hours
drive (in each direction) away and I don't trust my ancient car to get me
there. Once I have work and can afford a car though, I will look into
joining a JUG. Or maybe start one here. There must be other Java developers
in this area; I'm not THAT far off the beaten path ;-) Relocating to an area
that has more Java development is also a distinct possibility if I don't
find Java work here....

I hope you have/had a great Memorial Day weekend, Markspace!
[/QUOTE]
 
R

Rhino

Patricia Shanahan said:
I would combine the two suggested free reading strategies. First check
whether the book is available in your local library, and if not place an
inter-library loan request for it. Meanwhile, start hanging out at
Borders. Even if you do not have the money for coffee, they have chairs
scattered around the shelf area.
Actually, I'll be putting in an Interlibrary Loan request for both books,
Robust Java and Effective Java, tomorrow when I go to the library. I've
already gathered and printed the titles and ISBNs. The local library has
neither book. The big bookstore chain can get both books but they are too
pricey to buy right now. If the interlibrary loan comes through quickly,
great, I'll learn in my own home and take copious notes directly on the
computer. But if the loans look like they're going to take a long time to
come through, I'll consider hanging out at the coffee shop within the
bookstore and seeing how much I can pick up that way. Honestly, I'm not
optimistic of covering much ground that way; the sheer tedium of
hand-writing notes in a way that I'll be able to read later is going to keep
me from covering ground at any decent pace.....
You need to get away from thinking of programming in terms of a set of
rules of thumb that you would have to write down. Look for understanding
and ways of thinking. Those can be absorbed and internalized by a mix of
reading and practice. Until you get the library book, go to Borders,
read a bit, then go home and practice what you read. Repeat.

Unless you have enough money for a shelf full of Java books, you need to
apply the free reading strategies to get a good range of viewpoints.
Fair enough. I _have_ been tending to use the newsgroup as a poor man's way
of accomplishing the same thing but you're probably right: I should read
full books with properly argued points of view. Although some of the
regulars here do an outstanding job of giving "nutshell" versions of key
points, sometimes, you need to see the whole idea developed and elaborated
before you REALLY understand the points.

Thanks for the advice, Patricia!
 
J

Jeff Higgins

Fair enough. I _have_ been tending to use the newsgroup as a poor man's way
of accomplishing the same thing but you're probably right: I should read
full books with properly argued points of view. Although some of the
regulars here do an outstanding job of giving "nutshell" versions of key
points, sometimes, you need to see the whole idea developed and elaborated
before you REALLY understand the points.

Have you considered contributing to an open source community project.
All of the things that you have been asking for are there:

Tons of excellent documented example code to study.
Tons of design documentation.
Tons of helpful mentors.
You get to pick exactly what you want to work on.
At interview just point to your contributions.
All free.
 

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,774
Messages
2,569,596
Members
45,135
Latest member
VeronaShap
Top