Mensan seeks work

George Toft plug-discuss@lists.plug.phoenix.az.us
Mon, 11 Feb 2002 00:02:40 -0500


Hi Matt,

You are right.  I do not presume, however, to know everything.
OOP is a challenge for me, and operator overloading is one of the
dumbest ideas I've seen - too confusing.

Believe it or not, I do train.  The 20-somethings at work think
I'm pretty cool because I make a case and provide sound logic
and examples from material they are familiar with.  I tease them
about being 20-something, and they tease me about keypunch cards
and my 500Khz PC with 16KB of RAM, and 6-bit character generator,
so it didn't even have lowercase characters.  Perhaps that's why
we make a good team.  They instantiate their classes and I show
them how to validate data.  Together we make a good product.

I'm just frustrated by the macro-trend.  Let us project out another
generation, when you 20-somethings know everything I think you should,
and the latest and greatest Something-Oriented Programming is the
current trend.  That generation (the ones being born now), won't
know the basics of even OOP, much less even simpler things like
Boolean Algebra, powers of 2, or binary math, and of course, buffer
overflows and how to prevent them.  Hell, they probably won't even
know what a keyboard is used for.  At what point will four years of 
study be not enough?  I fear we are approaching that point now, and 
the trend is only going to get worse.  The curriclum I was teaching
was designed for High School students, so we are already getting
to the point that we are turning High Schools into tech schools so
the students can complete 5-6 years of education by the time they
graduate the 4 year college.

Will we be like Psychologists, where you have to have a PhD before
you can get a job that pays more than $20K/year?  

Mark my words, Steve Balmer will be flogging the programmers at 
Microsoft 20 years from now because of yet another buffer overflow
in IIS, just like he is now.  Unless C# (AKA MS Java - I looked at
a C# book yesterday - looks more like Java than C to me) will 
automatically take care of that, too.

Regarding your signature, is there a time frame associated with that?
I'm surely onto something brilliant soon.

George


Matt Alexander wrote:
> 
> George, expect the problem to get worse as time goes on.  There's just too
> much information and it's growing more and more each day.  A typical
> 4-year CS degree can no longer teach everything that a "programmer" should
> know, and most colleges just hit on the major themes, so these graduates
> are going to have to fill in a lot of the gaps as they go along in the
> workforce.  You should feel fortunate that you started when things were
> more simple, but instead of mocking the younger generation for not knowing
> everything you feel they should know, try to educate them so by the time
> they're 40 they will know everything.
> ~M
> 
> ------------
> The I Ching:
> "Before the beginning of great brilliance, there must be chaos.  Before a
> brilliant person begins something great, they must look foolish to the
> crowd."
> 
> On Sun, 10 Feb 2002, 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
> > > > > > > > >
> > > > > > > > ________________________________________________
> > > > > > > > See http://PLUG.phoenix.az.us/navigator-mail.shtml if your mail
> > > > > doesn't
> > > > > > > post to the list quickly and you use Netscape to write mail.
> > > > > > > >
> > > > > > > > PLUG-discuss mailing list  -
> > > PLUG-discuss@lists.plug.phoenix.az.us
> > > > > > > > http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
> > > > > > >
> > > > > > > ________________________________________________
> > > > > > > See http://PLUG.phoenix.az.us/navigator-mail.shtml if your mail
> > > doesn't
> > > > > post to the list quickly and you use Netscape to write mail.
> > > > > > >
> > > > > > > PLUG-discuss mailing list  -  PLUG-discuss@lists.plug.phoenix.az.us
> > > > > > > http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
> > > > > > ________________________________________________
> > > > > > See http://PLUG.phoenix.az.us/navigator-mail.shtml if your mail
> > > doesn't
> > > > > post to the list quickly and you use Netscape to write mail.
> > > > > >
> > > > > > PLUG-discuss mailing list  -  PLUG-discuss@lists.plug.phoenix.az.us
> > > > > > http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
> > > > >
> > > > > ________________________________________________
> > > > > See http://PLUG.phoenix.az.us/navigator-mail.shtml if your mail doesn't
> > > post to the list quickly and you use Netscape to write mail.
> > > > >
> > > > > PLUG-discuss mailing list  -  PLUG-discuss@lists.plug.phoenix.az.us
> > > > > http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
> > > > ________________________________________________
> > > > See http://PLUG.phoenix.az.us/navigator-mail.shtml if your mail doesn't
> > > post to the list quickly and you use Netscape to write mail.
> > > >
> > > > PLUG-discuss mailing list  -  PLUG-discuss@lists.plug.phoenix.az.us
> > > > http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
> > >
> > > ________________________________________________
> > > See http://PLUG.phoenix.az.us/navigator-mail.shtml if your mail doesn't post to the list quickly and you use Netscape to write mail.
> > >
> > > PLUG-discuss mailing list  -  PLUG-discuss@lists.plug.phoenix.az.us
> > > http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
> > ________________________________________________
> > See http://PLUG.phoenix.az.us/navigator-mail.shtml if your mail doesn't post to the list quickly and you use Netscape to write mail.
> >
> > PLUG-discuss mailing list  -  PLUG-discuss@lists.plug.phoenix.az.us
> > http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
> >
> 
> ________________________________________________
> See http://PLUG.phoenix.az.us/navigator-mail.shtml if your mail doesn't post to the list quickly and you use Netscape to write mail.
> 
> PLUG-discuss mailing list  -  PLUG-discuss@lists.plug.phoenix.az.us
> http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss