You are not logged in. Login Now
 0-24   25-49   50-74   75-99   100-124      
 
Author Message
25 new of 124 responses total.
mdw
response 100 of 124: Mark Unseen   Oct 10 09:52 UTC 2003

C++ has more *visible* complexity.  But individual things implemented in
C++ can be less complicated than the same stuff in Java, because Java
adds gratuitous complexity and provides less flexibility.

I don't know that "bad features" are necessarily the absolute evil Dan
Cross paints.  To some extent, it's *useful* to have a language that
lets you do the wrong thing, because then you learn more of what's
happening and why it's important.  If you use a language that makes it
impossible to make certain mistakes, you won't necessarily learn not to
make that mistake, and you certainly won't learn how to recognize the
mistake or fix it.  You'll never learn, in Java, how to track down a
memory allocation error.  And nothing in Java will prepare you for the
absolute horror of an array overrun that wipes out random unrelated
memory in "neighboring" memory.  Of course this adds to the complexity
and potentially the stress of the person learning.  That can be either
good or bad depending on the student.  But if that's where the student
wants to wind up, it's probably better to address such pitfalls early,
and teach methods to recognize and avoid such, than to toss it all in at
the end and hope the student doesn't notice.
scott
response 101 of 124: Mark Unseen   Oct 10 13:52 UTC 2003

I actually liked learning C (which was mixed with learning vi, which was not
fun at all), since as a language it's pretty close to the hardware.  Same as
BASIC on a little 80's computer, actually.  

As computer language and practice became more abstracted from the hardware
I enjoyed it less, and that's a big part of my software burnout.

If the kid in question is more of a hardware type I'd really recommend C, and
to fool around with interfacing or something.  For all the web "programmers"
who got laid off, hardware geeks came out a lot better.
gull
response 102 of 124: Mark Unseen   Oct 10 14:02 UTC 2003

Re #95: I remember the main realization I came away with in my C++ class
was that compilers are often broken, and people will go to great lengths
to get them to work anyway.
flem
response 103 of 124: Mark Unseen   Oct 10 16:38 UTC 2003

Heh, I remember frustration with broken compilers for C++ too.  They've come
a long way since then, and I'm pretty happy with modern gcc versions.  

I think that while C++ has a ton of complexity, it's possible to deal with
it like an iceberg, leaving 90% of the crap out of sight until you really need
it.  The library works decently for simple tasks, with some warts.  My worst
complaint with C++ is that when something goes wrong, it can be
mind-crushingly difficult to figure out what's wrong, even for small programs.

I don't think there's much benefit to teaching object-oriented programming
to students right off the bat.  The benefits of OOP are almost all pretty
arcane, and a beginning programmer might memorize the arguments, but he/she
won't really understand them without having some experience of procedural
programming to put it in context.  
janc
response 104 of 124: Mark Unseen   Oct 10 19:37 UTC 2003

C is still the language I'm happiest programming in.
cross
response 105 of 124: Mark Unseen   Oct 10 19:37 UTC 2003

This response has been erased.

drew
response 106 of 124: Mark Unseen   Oct 10 21:12 UTC 2003

Forth.
aruba
response 107 of 124: Mark Unseen   Oct 11 01:44 UTC 2003

I programmed in C++ professionally too.  I don't quite agree with cross, but
I do think it's better to learn C before C++.  I think the real benefits of
object oriented programming don't manifest themselves in small projects;
they really show up in large projects with lots of programmers.  So to a kid
writing on his own, C++ would just look like so much beaurocracy, with no
real upside.
albaugh
response 108 of 124: Mark Unseen   Oct 14 16:36 UTC 2003

This may be a bad analogy, but consider this:  No one drives to work on a
tricycle.  But to get a child interested in "motion on wheels", we don't hand
him keys to a car or motorcycle, or give him a 2-wheeler (bicycle):  We give
him a tricycle, so that he can obtain skills in balance, steering, braking,
etc.  So don't worry about having the teenager start in on a programming
language that he'll be required to master in a job, get him "hooked" by
something fairly easy to pick up, and - I maintain - something that provides
quick feedback.  Thus I still recommend BASIC or html & javascript.
remmers
response 109 of 124: Mark Unseen   Oct 14 16:58 UTC 2003

I will confess that my own path to computer science (which commenced
after I got a PhD in mathematics) began with Basic (original Kemeny
version out of Dartmouth, late 1960s).  At that point, I'd had a little
experience with programming in connection with a computer operator
summer job that I had while in college.  But that had been years
earlier, with the machine language of a computer that nobody used
anymore.  I was a professional mathematician but a novice programmer.

I had some math problems whose solutions I wanted to automate.  Vintage
Basic enabled me to do that without mastering a lot of language
bureaucracy first.  Later I came to see the value of more sophisticated
langauge features, but then I just wanted to get something working with
a minimum of fuss and bother.  The simplicity and quick feedback of
Basic facilitated that.

So I'm inclined to agree with Albaugh.
tod
response 110 of 124: Mark Unseen   Oct 14 17:23 UTC 2003

This response has been erased.

gull
response 111 of 124: Mark Unseen   Oct 14 17:28 UTC 2003

I think it depends partly on what the kid wants to do.  If you try to teach
him a language that doesn't do anything he finds interesting, he's going to
lose interest quickly.
keesan
response 112 of 124: Mark Unseen   Oct 15 15:04 UTC 2003

A few people with poor balance commute on tricycles.
albaugh
response 113 of 124: Mark Unseen   Oct 18 06:01 UTC 2003

And some of us still program in BASIC!!!  :-)
asddsa
response 114 of 124: Mark Unseen   Oct 19 04:15 UTC 2003

re 113 wtf??
gull
response 115 of 124: Mark Unseen   Oct 21 14:15 UTC 2003

I mostly stopped programming in BASIC when I reached puberty. ;>
kit
response 116 of 124: Mark Unseen   Oct 21 20:38 UTC 2003

I had at one point an old (and i mean old) conputer, don't ask what it was
called but it was the one after commodore (a something) it used a tape player
to run it's programs. It only worked in basic so I inadvertentley learn't it,
that was when I was about 7 or 8. Shame i forgot it all but i didn't reliase
what it was. Damm!.
albaugh
response 117 of 124: Mark Unseen   Oct 22 16:54 UTC 2003

Sounds like one of them TI "hook it up to your TV" units...
bhoward
response 118 of 124: Mark Unseen   Oct 23 01:32 UTC 2003

I quite like ruby these days.  Wish it had been around when I was learning
object-oriented programming.
asddsa
response 119 of 124: Mark Unseen   Oct 24 01:17 UTC 2003

Are you related to Brian Howard, Bruce?
bhoward
response 120 of 124: Mark Unseen   Oct 24 05:32 UTC 2003

Our paths have crossed from time to time :-)

(Hey Bri, how's Mom doing?  Tell her I send my love...)
asddsa
response 121 of 124: Mark Unseen   Oct 25 05:21 UTC 2003

No way, you're brothers?  Where does Jamie fit in?
dcat
response 122 of 124: Mark Unseen   Nov 27 04:43 UTC 2003

speaking as one who has taken introductory programming classes at three
different colleges in two languages, I wouldn't recommend Java to anyone for
anything, least of all as a first language.  As others have said, it's just
simply too complicated and intorduces too many things which are unnecessary
to learning the fundamentals of how to program.  C++ wasn't much better.

Personally, actually, I like LISP.  LISP is pretty; I wish I had time to learn
more of it.  If he's more interested in web stuff, I'd say go with PHP.
willcome
response 123 of 124: Mark Unseen   Nov 27 07:54 UTC 2003

True story:  Napster's distribution system is modelled after Chinese
whore-rings.
mrbrett
response 124 of 124: Mark Unseen   Dec 10 23:03 UTC 2003

I am also new to programing and I am thinking of going with java.
 0-24   25-49   50-74   75-99   100-124      
Response Not Possible: You are Not Logged In
 

- Backtalk version 1.3.30 - Copyright 1996-2006, Jan Wolter and Steve Weiss