Mensan seeks work

Digital Wokan plug-discuss@lists.plug.phoenix.az.us
Mon, 11 Feb 2002 17:26:42 -0700


Some 20-somethings have more experience with that than others.  Some of
us actually took the advice of the older programmers we worked with and
learned from.  Not everyone accepts that just because a book is
published on a subject, it's error free.
I agree whole heartedly on the never trusting the user or an outside
program handing in data, but I must admit being guilty of ignoring
unicode (doesn't crash what I've written, but I can't guarantee the site
I work on is bulletproof to it either).
Oddly enough, I do printout my code for tracking down bugs when it's a
big script (or a script with many functions being pulled into it during
execution) just to have it all laid out in front of me while going over
it.
I also write code under the assumption that something's going to drop
the ball and try to pass in a null value.
Maybe I aged a little faster than I thought.  I've been doing that since
27.
Of course, I did have a 40+ set up a database table using Char[10]
fields for integers (and mistakenly did it for a floating point value,
too).  I don't know what database he was used to, but he claimed
databases work better with text than numbers.  His second reason (cough
excuse cough) was that he only wrote it for testing and it was supposed
to be changed before going into production.  I have since gone through
and converted all such Char[10]'s to Integer and Float fields.  I can't
be too hard on the guy.  He was the first person to teach me how SQL
statements work.  (Now I am the master.  Sorry, couldn't refuse.)

George Toft wrote:
> Hi Doc,
> I've not seen your work.  I don't know you.  Do not be offended
> by what follows.
> Here's an example of the 40+ crowd:
> - An error manifests itself in the retrieval of data from the
> mainframe.  He picks up the PRINTOUT (you know - ink on paper)
> of the code, and finds the error in about 15 minutes.
> 
> Here are some examples of the under 30 crowd:
> - Write a java program that runs at 11:53pm via cron to process
> the day's transactions.  Unfortunately, a [well documented] bug
> in the JDK (1.1.8) does not recognize Arizona's lack of Daylight
> Savings shift, so six months of the year the java program thinks
> it is 12:53am on the next day, and it cheefully tries to process
> all of the transactions that have not yet occured.  This makes me
> wonder about the age of the programmer at Sun that didn't know
> that Arizona is not always in the Mountain Time Zone.
> 
> - Let's retrieve the CGI query string and search it for a "?".
> Guess what happens if there isn't a query string: Null Pointer
> Exception.  Java does not respond well to searching a null string.
> This 20-something never heard of the rule: Never trust anything
> another program sends you and didn't bother to add one line
> of code to see if the string was null.
> 
> - Another 20-something violated a corollary of the above: Never,
> under any circumstance, trust a user.  We service a Spanish
> speaking population.  Guess what happens to LDAP when you feed it
> non IA-5 data, like an "n" with a tilde.  It chokes with really
> geeky error message to the user.  This guy never gave any thought
> to the Unicode character set, either.
> 
> - An pair of almost 30-somethings wrote a program to accept data
> and pad it with spaces to fill the fields to form a fixed-length
> request header to a mainframe database.  They assumed the User ID
> field was 10 characters.  The program spec was 6-20 characters.
> Guess what happened when the first 11 character user ID was entered:
> It shifted all of the other fields right one space and the query
> blew up.  I know we can figure out the faults here (not
> programming to the spec, not checking the data, improper
> testing).
> 
> - Yet another 20-something (with 8 years experience) had no clue
> what the end of line terminator was for various operating systems.
> This was a shame since he was writing code on a Unix platform
> that wrote data for an NT system to process.  Unix uses 0x0A and
> NT/DOS uses 0x0A0D.  The NT system saw only one line in the file
> instead of the several hundred lines that the Unix program put in
> it.  I tried to discuss this with him, and he had no clue what
> hexadecimal was.  I had to send him references from the
> introductory section of the Java documentation that explained
> EOL terminators, and I had to send him hex dumps of good and bad
> data.
> 
> - Another 20-something wrote a program that retrieved information
> from a database.  If the query returned a null (data did not
> exist), or there was no connectivity to the database, the exact
> same error message was displayed.  When she finally connected
> to the database, she kept getting the same error.  Oh wait,
> there's no data in the database.  That only took 4 days to isolate.
> It would have only taken a few hours to fix if she actually took a
> few minutes to create two different error messages.
> 
> I taught networking for 4 semesters at the University of Hawaii.
> The first class was always spent teaching Binary Math so they
> could understand basic IP networking, like subnet masks.  The
> school's curriculum did not teach binary math.  I had almost
> 100 20-somethings go through my classes learn what a bit
> was, and what a bitwise AND was only because I made them.
> Otherwise, they would have graduated with a CIS degree without
> having ever performed any binary math.
> 
> Doc, I sincerely hope you don't do this this level of work.  When
> I was studying Computer Science, these pitfalls were preached in
> the 100 and 200 level classes.  Maybe you and I came from a really
> good school, or perhaps the programmers I deal with came from
> bad schools.  Maybe because I'm an old fart, that my school focused
> on the basics because that's all we had - OOP hadn't been invented
> yet.  It seems that schools now are so focused on Web and OOP
> technologies that they don't have time to teach the basics like
> binary math, bit operations, and data checking.  Maybe that's
> why the 20-something programmers at Microsoft still write code
> susceptable to buffer overflows - another pitfall that was
> crammed into my head in 1979.
> 
> Or maybe I just expect too much from someone who has a degree in
> Computer Science (like knowing how a computer works), and I become
> very disappointed when that doesn't happen.
> 
> I would like to say these are isolated incidents, but this is what
> I see every week.  Different problem, different programmer, same
> recurring theme.  I won't even go into the 24 year olds from
> [over]PriceWaterhouseCoopers with "5 years experience."  OK, they
> count funny - I didn't know college homework assignments counted
> as experience.
> 
> Even More Jaded and Searching for Some Alcohol,
> 
> George
> 
> "Dr. Ghastly" wrote:
> >
> > I'm Under 30. I don't consider myself clueless.
> >
> > ******************************************************************
> > Once you start down the dark path, forever will it
> > dominate your destiny, consume you it will...
> > ******************************************************************
> > ----- Original Message -----
> > From: "George Toft" <george@georgetoft.com>
> > To: <plug-discuss@lists.plug.phoenix.az.us>
> > Sent: Sunday, February 10, 2002 5:49 PM
> > Subject: Re: Mensan seeks work
> >
> > > I'm 50-50 on that issue.  Last job would hire based on ability, regardless
> > > of paper.  Current one requires paper to set foot inside.  From what I've
> > > seen of programmers, if they're under 30, they're still clueless, degreed
> > > or not (flame suit on).
> > >
> > > George
> > >
> > >
> > >
> > > "Dr. Ghastly" wrote:
> > > >
> > > > Not to mention that most places, my company especially, consider 2-3
> > years
> > > > experience equivalent to a degree.
> > > >
> > > > ******************************************************************
> > > > Once you start down the dark path, forever will it
> > > > dominate your destiny, consume you it will...
> > > > ******************************************************************
> > > > ----- Original Message -----
> > > > From: "George Toft" <george@georgetoft.com>
> > > > To: <plug-discuss@lists.plug.phoenix.az.us>
> > > > Sent: Sunday, February 10, 2002 12:11 PM
> > > > Subject: Re: Mensan seeks work
> > > >
> > > > > I second that.  We just lost a guy because he claimed to have a
> > Bachelor's
> > > > > Degree when he did not.  It only took them a week to figure it out.
> > He
> > > > > was a contractor for six months, so he knew his stuff.  When there is
> > > > > an abundant supply of talent, you can be choosy.  When there is a
> > scarcity
> > > > > of talent, you take whatever comes your way.  You know where we are
> > right
> > > > now. .
> > > > > .
> > > > >
> > > > > George
> > > > >
> > > > > "Dr. Ghastly" wrote:
> > > > > >
> > > > > > Uh, considering the work your looking for, I wouldn't consider
> > lying.
> > > > The
> > > > > > company I work for does EXENSIVE background checks.
> > > > > >
> > > > > > ******************************************************************
> > > > > > Once you start down the dark path, forever will it
> > > > > > dominate your destiny, consume you it will...
> > > > > > ******************************************************************
> > > > > > ----- Original Message -----
> > > > > > From: "Trent Shipley" <tcshipley@earthlink.net>
> > > > > > To: <plug-discuss@lists.plug.phoenix.az.us>
> > > > > > Sent: Wednesday, February 06, 2002 10:14 PM
> > > > > > Subject: Re: Mensan seeks work
> > > > > >
> > > > > > > I've seen really high numbers about lying on resumes.  I suspect
> > that
> > > > > > people
> > > > > > > usually get away with it.  Of course, if you don't then it can
> > really
> > > > bite
> > > > > > > you in the ass--especially if you claim to be an experienced
> > surgeon
> > > > or
> > > > > > > litigator.
> > > > > > >
> > > > > > > > Actually, another alternative is to lie about your
> > > > > > > > experience if you really know your stuff, but that usually comes
> > > > around
> > > > > > to
> > > > > > > > bite you in the ass.
> > > > > > > > ~M