General question to other developers...

J

jehugaleahsa

Well I almost forgot about my pensive moment this afternoon. Thank you
all for weighing in...

Let me add some preface. My dad wrote Cobol in the Sixties for
Chrysler International out of their London offices. Later he wrote
Basic for an insurance company stateside. He wanted me to learn coding
when I turned 18 in 1973, but I had my head just about anywhere else,
despite the fact that I had the ability to learn programming then as I
do now. I finally got into writing code full-time for a living in 2000
(never actually had a computer until 1995!). This was after various
careers, mostly in construction and as a contractor. I still work in
the construction field, just as a developer for a larger construction
company that has some ambitious software ideas.

My son is now 18, and I want him to learn to write code. He's going to
go to a local school to learn Dreamweaver and graphic arts type
things, but he has the smarts to just dive in and learn code, if he
could develop the inclination and determination to do it. He has his
head in music and all the other kinds of things 18 year olds do.

It seems to me at least, that for a smarter individual, seeing
programs go together that right away have their own gui, colors,
tricks is more gratifying than doing things that just print results to
a screen. I know it did for me. I've shown him how to build a simple
sql server set of three or four tables and then query them from C# and
display results in an Infragistics grid. I'm sure he grasped all of
it, but kids nowadays are a lot harder to amaze and surprise than my
generation was 35 years ago.

I don't really think the whole OOP versus procedural thing is such a
big issue. You can use VB.Net or C# as mostly a procedural language
anyway until you start to grasp the concepts of how the tools you work
with are all object based and then start building your own little
classes and overrides as you see a need. All depends on the kinds of
things you're developing... But the gratification factor is much
higher, imho, with any "visual" language-ide.

Bob

I have ran into this issue myself. Most people like to see immediate
results, rather than having to work for them. I am still amazed by
pong because I see the immense amount of technology that goes into it.
However, and you can tell your son this, just making pictures becomes
less and less rewarding after a while. Once you learn the tool and how
to combine the features, graphic design becomes really, really tedious
and unrewarding.

When I first started programming, I wanted to be a game programmer
because I loved games. I loved how they looked, how they played. But
deep down there was always this question in my head asking, "What
magic makes thy computer run so?". And eventually the questions were
answered through my computer science courses. And now video games are
horribly boring to me. I am more interested in how they simulated that
fire, or the g-force or how the computer manages all those 3D points.
However, now I am more aware of what a computer is and I can use that
to do things like make computer games from scratch.

Most of the code I write for fun doesn't do anything. It helps me do
something. I like to write libraries. I like to fix other programmer's
code. I like to learn why code works. Screw the final result! I found
my niche.

Tell your son that programming is fun and keeps on coming. I think my
job is more fun than a job should be. It is frustrating, yes, but it
is also intense and when you finally get your head around it, it
becomes like a playland.
 
J

jehugaleahsa

Arguing semantics is pointless.


The only debate worth having is one about ideas.

If you really think that Dijkstra's meaning was that it is literally
impossible to teach good programming to someone who first learned BASIC
because their brain has literally been mutilated beyond hope of
regeneration, then you are 100% correct in calling his statement silly. In
fact, it's so obviously silly that it's clearly not what he meant - which,
of course, is the very definition of hyperbole.

I like you Scott Roberts. :)
 
J

Jon Skeet [C# MVP]

Scott Roberts said:
Arguing semantics is pointless.

To me, arguing semantics is arguing the meaning. Without agreeing on
the meaning of the quote we're discussing, anything else really is
pointless.
The only debate worth having is one about ideas.

If you really think that Dijkstra's meaning was that it is literally
impossible to teach good programming to someone who first learned BASIC
because their brain has literally been mutilated beyond hope of
regeneration, then you are 100% correct in calling his statement silly. In
fact, it's so obviously silly that it's clearly not what he meant - which,
of course, is the very definition of hyperbole.

So contrary to what you said before, you *don't* want to discuss what
was stated. You want to discuss what you happen to believe Dijkstra
meant.

That's absolutely fine, and almost certain to be a more useful
discussion, but I don't think it's reasonable to claim that what you
believe he meant was what he actually stated.
 
R

RobinS

Peter Duniho said:
[...]
And when I was writing software with other developers for chemical
plants, I explained repeatedly that pressure and temperature affect the
volume of a fluid, but still got the same questions over and over again
(the valve is open 100% all the time, but the volume fluctuates; why?)
from the same two people because they just could not comprehend that one
simple fact.

All due respect, those experiences do not show that those people were
unteachable. It simply shows that they failed to be taught.

In any case, we're not talking about people who are simply not "cut-out"
to learn something particular. The thesis here is that there are people
who cannot be taught to program well, but could have been if only they
hadn't learned BASIC.

I think it's a pretty lame excuse for a teacher to blame their failure to
be able to teach a person something on something that person had been
taught previously.

Pete

Thanks for the sideways insult; I appreciate that. I used to believe this,
too, but over time have changed my opinion about it.

In school (many years ago), there were people in my classes that studied
more than I did and just could not get some of the chemical engineering
concepts, could not think logically, could not see the patterns of how
things worked, while others (most) in the class could. Could the teacher
have explained things differently? Maybe. But there are only so many ways to
explain the pressure-volume-temperature relationship. It's a fairly simple
concept.

As for people being taught BASIC and not believing they could ever do OO,
I'm not sure I buy that. If you can figure out how to program in any
language, you can probably figure out another. And doing it effectively is
not the same thing as doing it correctly. I used to work with a guy that
would get programs to work, but they were easily breakable anbd poorly
designed. But he DID get them to work.

RobinS.
 
P

Peter Duniho

[...]
As for people being taught BASIC and not believing they could ever do
OO, I'm not sure I buy that.

I don't buy it either, and that's the point here. The original statement
as quoted is IMHO absurd, and not at all useful in the context of this
thread.
 

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

Top