Re: Another JUnit scenario
On 25-05-2010 11:45, Rhino wrote:
Arne Vajh?j<arne@vajhoej.dk> wrote in
news:4bfb1918$0$286$14726298@news.sunsite.dk:
On 24-05-2010 01:54, Rhino wrote:
Hey, I'm not happy to have to give you that answer but I didn't want
to BS either. I've been taking in a LOT of information in the last
few days and some of it is turning things I thought I knew on their
heads. I have a lot to digest and my memory has never been great so
sometimes I coast a bit and do what I'm told and simply resolve to
clear up the whys and wherefores somewhere down the road. And I don't
always get to that point....
I know that. I'm just not sure HOW to reason some of this stuff out.
Maybe I'm missing some fundamentals or something. Even the simplest
things sometimes turn out to be very complicated and non-obvious. In
fact, I'm fast coming to the point where I'm beginning to think
NOTHING in Java is simple, obvious, or intuitive....
Note that usenet is more an academic place than a job place
meaning that there are always some people willing to
find problems in a solution and come up with clever ways to
refine it.
I had been wondering if some of the criticisms of my code were a bit
purist/perfectionist and could correspondingly be taken with a bit of
salt....
I will recommend a few hundred pounds ...
Which is not to say that they are wrong or unimportant, just
that they may represent a standard higher than an employer might
typically have.
Maybe more like: make it as good as possible, but accept that
in real life code will usually ship when it is good enough
(sometimes even before!).
But what you did not get perfect in project N that you can
make perfect in project N+1.
And I probably am a little lazy at time. But I'm really burned out.
We have a three day weekend here and I had planned to code, code,
code my little heart out this weekend and finish my code portfolio.
Instead, I've mostly been in and out of this newsgroup trying to
understand and absorb all the things people are throwing at me. I've
actually accomplished very little of the coding I wanted to do. And
now I find that most of what I have is bad, maybe very very bad. So
that big pile of code has turned into a mountain.
Maybe it is time to focus on writing some 90% good code and
let the last 10% come over time.
I had hoped I was nearing the point where my code was at the 90% level.
But some of the responses I've received have made me think I was more at
the 10% level....
I truly don't know right now. Obviously, no one can say without looking
at more of my code.
I'd like to think that the deficiencies are ones that could be rectified
fairly easily in most cases but that might be wishful thinking. I can
picture a few bumpy code walkthroughs at the beginning with lots of
criticism of the code I write but, as my mistakes are explained to me, I
see those criticisms diminishing quickly and my code becoming much
better. For instance, someone might point out that I overuse constants or
put them in the wrong place but if they give me some guidelines on
when/where to use them, I feel sure that I can start following those
suggestions fairly easily.
The bottom line is that learning programming is never complete.
You should continue to learn forever.
I definitely have to give up on the idea of having a portfolio of
good code in the next few days. I think I'm still months, maybe YEARS
from having anything decent to show. Like I said in the other thread,
I need to find an employer that sees some potential and beg them for
a job so that I can learn from people who know what they're doing.
Maybe if I can convince them that I love to write code, especially in
Java, and that I can at least get code to work, even if I have a
thousand mistakes, and that I really want to learn to do it right,
they'll decide to give me a chance. Then I can find a mentor and
start to write good code, not this apparent crap....
Now if I could just think of a reason why they'd hire me if they had
the chance of hiring someone who knew what they were doing already.
It would be one thing if I was fresh out of school and 20-something
but those days are way behind me....
Don't be so pessimistic.
Sorry about that, Arne, but I've gotten into a rather pessimistic mood
;-). It's a mix of the criticisms of the last few days and some general
stuff that goes back for years.
One of the most startling job-hunt experiences I've ever had was some
years ago where someone put a job ad on one of the Java newsgroups. They
were insisting on 5 years of solid, full time experience with several big
aspects of Java. (I don't remember the specific areas but it was
something like CORBA, JNDI, servlets, midlets, and several other things
as well). Now, I started coding in Java when it was still in beta
(version 0.x) and had been coding it (for my own amusement, not for
money) for six months. Java itself had only existed, as best I could
determine, for only two years but these employers were INSISTING on FIVE
years experience!! It was like someone taking out an ad looking for
commercial airline pilots with five years experience the year after the
Wright Brothers first flew at Kitty Hawk! And I'd be tempted to write
this off as a simple anomaly - one employer who was either completely
clueless about the history of Java or someone who was playing some sort
of game - but I have seen many ads like it since. Ads containing long
lists of "must have" experience insisting on multiple years in each of
several major areas of Java. I look at those ads and find myself doubting
that more than five people with all of that experience could exist in the
entire WORLD, and yet this is a local ad for a mid-level sort of
position, not an international recruiting campaign for a senior architect
of a major multinational.
Many HR departments are rather hopeless in creating job ads.
They usually think like:
- more years = better
- more matching keywords = better
but usually they do not really understand the substance at all.
Applying for jobs is like playing the lottery.
But eventually you will find something.
Very few if any programmers are perfect.
The fact that you do not write perfect code is not a reason
not to hire you.
They would never hire anyone if they were so picky.
I can not see why they should not hire you instead of
a few hundred thousand other.
My optimistic side wants to believe you, Arne, it really does, but the
pessimistic side is having trouble.
Am I just getting a very very inaccurate impression of the job market on
the basis of the immense, almost inhuman, expectations that are stated in
job ads these days? Is that just a fad that everyone else knows not to
take seriously? Or are the Java shops really that demanding?
Different companies different hiring policies.
In many cases I think the biggest hurdle for you will be to get
through HR. If you get to an interview with the hiring manager
and possibly some of your potential future colleagues, then
ability to learn, ability to apply common sense etc. starts
counting more than the TLA's on the resume.
And is "learning on the job" completely abandoned as a principle?
Probably very few companies will want to pay for training you from
scratch.
Lots of companies will expect you to learn things along the way
on your own time.
Arne