Jump to content

  • Log In with Google      Sign In   
  • Create Account

Negative programmer reaction of the Code.org Video


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
76 replies to this topic

#41 Oberon_Command   Crossbones+   -  Reputation: 1964

Posted 01 March 2013 - 03:20 PM


Computer science is a field that (generally) doesn't require much writing. Are you sure that's a good example?

In case you have missed it, there seems to be an undercurrent in this thread that implies that one has to give up cursive in order to teach computer science... Thus my comment that you quoted.


I wasn't saying anything of the sort. I'm just pointing out that the complexity and writing speed of one's longhand writing system is less important in computer science than, say, art history, or psychology.

I also think there's an aspect to this "undercurrent" that you're missing. One doesn't have to give up cursive to learn keyboarding (in fact, experience tells me that schools do both), but if one were to give up the time spent learning cursive and leave time for keyboarding, there might be extra time to learn other things, or to get very good at typing. There's only so much time in a school day.

Sponsor:

#42 swiftcoder   Senior Moderators   -  Reputation: 10364

Posted 01 March 2013 - 03:52 PM

I also think there's an aspect to this "undercurrent" that you're missing. One doesn't have to give up cursive to learn keyboarding (in fact, experience tells me that schools do both), but if one were to give up the time spent learning cursive and leave time for keyboarding, there might be extra time to learn other things, or to get very good at typing. There's only so much time in a school day.

Sure, but that's a finer line than you might realise.

 

Why not get rid of art, music, literature and sports as well? They don't directly contribute to a career in the sciences either.


Edited by swiftcoder, 01 March 2013 - 03:52 PM.

Tristam MacDonald - Software Engineer @Amazon - [swiftcoding]


#43 Toothpix   Crossbones+   -  Reputation: 810

Posted 01 March 2013 - 04:30 PM

Teaching computer programming to every child in school is the stuff of delusions. As it is, we can't even teach every kid how to use Microsoft Word. Not every child is smart, and it has nothing to do with their genetics (there is another massive Lounge post about that) but mostly with work ethic and motivation. Some kids aren't necessarily in a bad environmental situation, but turn themselves into stupid fools because of peers and what is viewed as the normal adult today (usually a false assumption). But, if you are to teach programming, I strongly believe you should teach it in a class using GCC on a Linux-based computer with X Window System disabled (no GUI whatsoever for anything, for all of you non-NIX-ers). That way you won't have a bunch of graduates from high school going into computer science expecting a drag-drop high level interface like in Alice or Scratch.


C dominates the world of linear procedural computing, which won't advance. The future lies in MASSIVE parallelism.


#44 Anri   Members   -  Reputation: 597

Posted 01 March 2013 - 05:39 PM

I think its good to have programming available to students, especially where Maths is concerned.

 

There are many people who simply hate maths and don't want anything to do with it. Many will flunk at maths because its not the easiest of subjects to teach.  If it were to be mixed with programming, it would allow a student to see Maths in action. The biggest hurdle for a student learning maths is understanding the need to learn it and the possibilities it brings. Programming will most likely make students more interested in Maths and vice-verca.   And of course Maths is a vital skill for science, so it has a benefit to that field as well.

 

I don't think children or young adults need to learn stuff like writing drivers and assembly, but I do remember some schools in the 80s - here in England - using the BASIC language via 8-Bit machines like the ZX Spectrum and C64. If the language used is simple enough and easy for graphics then it would be a powerful teaching companion for Maths.



#45 L. Spiro   Crossbones+   -  Reputation: 14258

Posted 01 March 2013 - 05:45 PM

Why not get rid of art, music, literature and sports as well? They don't directly contribute to a career in the sciences either.

Because no one said cursive should be eliminated (anyone who did doesn’t count).
Its priority within schools should be swapped with keyboarding, making it elective instead of mandatory, just like art, music, literature, and sports.

Cursive was mandatory teaching in my younger years. As a result of it being forced upon me when I was around 7, I can read and write cursive without having ever used it since. I have not written in cursive in 24 years nor even seen it in 10 years since I left America, but I just drew out the whole alphabet in my head.

That is how kids learn. If that were swapped with keyboarding mandatory at 7 and cursive as an elective at around 12 (when I got my first chance at a computer in school), all the slow typers, finger peckers, etc. who you meet today would instead be moderately decent with much less time spent to get there (since I started so late I was a pecker for years rather than months, as it would have been if I had started keyboarding between 5 and 7) and would have a much more useful skillset.


L. Spiro


Edited by L. Spiro, 01 March 2013 - 06:23 PM.

It is amazing how often people try to be unique, and yet they are always trying to make others be like them. - L. Spiro 2011
I spent most of my life learning the courage it takes to go out and get what I want. Now that I have it, I am not sure exactly what it is that I want. - L. Spiro 2013
I went to my local Subway once to find some guy yelling at the staff. When someone finally came to take my order and asked, “May I help you?”, I replied, “Yeah, I’ll have one asshole to go.”
L. Spiro Engine: http://lspiroengine.com
L. Spiro Engine Forums: http://lspiroengine.com/forums

#46 BGB   Crossbones+   -  Reputation: 1554

Posted 01 March 2013 - 05:57 PM

Teaching computer programming to every child in school is the stuff of delusions. As it is, we can't even teach every kid how to use Microsoft Word. Not every child is smart, and it has nothing to do with their genetics (there is another massive Lounge post about that) but mostly with work ethic and motivation. Some kids aren't necessarily in a bad environmental situation, but turn themselves into stupid fools because of peers and what is viewed as the normal adult today (usually a false assumption). But, if you are to teach programming, I strongly believe you should teach it in a class using GCC on a Linux-based computer with X Window System disabled (no GUI whatsoever for anything, for all of you non-NIX-ers). That way you won't have a bunch of graduates from high school going into computer science expecting a drag-drop high level interface like in Alice or Scratch.

"Alice", yep, saw that one... in college... a class for using it was part of the required curriculum for a CS major.

general response of people being "how is this programming?...", and yet you still had people in class who can't figure out the whole "drag and drop to make 3D characters do stuff" thing...

indirectly though, it did have a minor influence on something I called the "sequenced event" system for my 3D engine, so much as events can happen sequentially or in parallel and operate with delay-timers (partly as it is a little more usable for various tasks than building stuff via the more traditional Quake style "trigger_whatever" and "target_whatever" systems, but these also exist...). and, also, the sequenced-event system at least has the dignity of being text-based and being able to execute globs of script-code as well...

although, yes, it probably was still kind of a waste to have a whole semester about it...
(I think I got bored and mostly just did other stuff...).

yet, all this was paired up with *actually difficult* classes, mostly stuff like math and similar (then getting repeatedly owned due to not really being very good at math...). (fun time with derivatives, conic sections, limits, integrals, and a good helping of set-notation as gravy to put on everything... and generally at the mid point of a semester being like "I have no idea what is going on at this point"...).

Edited by cr88192, 01 March 2013 - 06:02 PM.


#47 Hodgman   Moderators   -  Reputation: 31818

Posted 01 March 2013 - 08:30 PM

In primary school, block printing and cursive writing styles were taught, and in high-school touch-typing was also mandatory.
Did other's with mid-90's onwards schooling not get taught to touch type?

What planet do you live on? Quite a number of my classmates didn't own their own computers, and that was at a fairly expensive private university.
 
When you factor in all the poor/rural/disadvantaged school systems, there is a very large body of students (~30%) who don't have a computer, even in the US.

These days in Australia, every single high school student is given a standard cheap laptop for use in classes, and teachers are encouraged to integrate these laptops into their lesson plans. Teachers also have access to projectors, electronic white boards etc, which are networked with the laptops.


The most fascinating thing that I've got out of this thread is all the discussion about cursive... For me, it's just a part of "learning to read and write", which has to be taught at a young age. It's the same as printing, but easier. It's not some completely different alphabet that has to be learnt!! Is it?! It's a completely foreign idea to me that people could baulk at not being able to read or write text where the letters have flowed together into a continuous line per word... It seems the same as being illiterate, to my culture-shocked mind..?

Edited by Hodgman, 01 March 2013 - 08:51 PM.


#48 tstrimple   Prime Members   -  Reputation: 1734

Posted 01 March 2013 - 11:01 PM

Teaching computer programming to every child in school is the stuff of delusions. As it is, we can't even teach every kid how to use Microsoft Word. Not every child is smart, and it has nothing to do with their genetics (there is another massive Lounge post about that) but mostly with work ethic and motivation. Some kids aren't necessarily in a bad environmental situation, but turn themselves into stupid fools because of peers and what is viewed as the normal adult today (usually a false assumption). But, if you are to teach programming, I strongly believe you should teach it in a class using GCC on a Linux-based computer with X Window System disabled (no GUI whatsoever for anything, for all of you non-NIX-ers). That way you won't have a bunch of graduates from high school going into computer science expecting a drag-drop high level interface like in Alice or Scratch.

I think you're missing the point. You can teach programming to every student the same way you can teach music or creative writing to every student. What it does is give every student the opportunity to experience these things. If they find that it clicks for them and they enjoy it, they can pursue it further.

 

I'm also annoyed by your smarts comment. There is nothing special about being a programmer. It doesn't require special intelligence, and it definitely doesn't make you better than non-programmers. I encounter just as many programmers with lousy work ethic, motivation and below average intelligence as I do people in other fields.  



#49 tstrimple   Prime Members   -  Reputation: 1734

Posted 01 March 2013 - 11:04 PM

It's a completely foreign idea to me that people could baulk at not being able to read or write text where the letters have flowed together into a continuous line per word... It seems the same as being illiterate, to my culture-shocked mind..?

I think you may have not had as much experience with the average American's cursive.

 

I can't read my own handwriting half the time. ;)



#50 Toothpix   Crossbones+   -  Reputation: 810

Posted 02 March 2013 - 01:15 PM

I'm also annoyed by your smarts comment. There is nothing special about being a programmer. It doesn't require special intelligence, and it definitely doesn't make you better than non-programmers. I encounter just as many programmers with lousy work ethic, motivation and below average intelligence as I do people in other fields.  

I think you misunderstood my point, and I'm sorry about that. My point was that some students who don't want to learn a subject and are in a class just because it is required by curricula are going to ruin the class and the learning experience for the people who do actually want to learn something and be there. If you look at an average high school calculus class, every student in there either wants to be in there themselves or their guardians pressured them into it, usually both (at least in America). It is not state required, and there are different levels of math for the different desire of depth. Everyone in American schools has to take at least Algebra to graduate (in my state), and there are Algebra classes for the older children who don't want to be there and for the younger who do. There are also subjects that students who are interested in can pursue at any depth. Computer programming should be (and already is to an extent) one of them. In converse, there are state-required non-leveled "Business Technology" classes where every student must take a class with everyone else regardless of interest or academic prowess and learn Microsoft Office. Some may want to learn, yes, but it is the smaller portion of the class that will not want to learn that creates distractions, slows progress, damages school equipment, and makes the classroom not a place of learning, but a place where different types of people are constantly clashing that destroy the purpose of the class. The reason I know these things is because I know several people who are teachers at these schools. Turning computer programming into a Business Technology class would be a poor choice. Everybody can learn to program, and learn to do almost anything else, but not everyone will. I think the schools should provide all of the required resources for the people who will, and that is only a minor adjustment from where it is now (at least in my state, which is statistically ranked 49th in overall progress).


C dominates the world of linear procedural computing, which won't advance. The future lies in MASSIVE parallelism.


#51 TheChubu   Crossbones+   -  Reputation: 4761

Posted 02 March 2013 - 01:27 PM

I strongly believe you should teach it in a class using GCC on a Linux-based computer with X Window System disabled (no GUI whatsoever for anything, for all of you non-NIX-ers).

X disabled? Think of the children!


"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

 

My journals: dustArtemis ECS framework and Making a Terrain Generator


#52 swiftcoder   Senior Moderators   -  Reputation: 10364

Posted 02 March 2013 - 05:14 PM

But, if you are to teach programming, I strongly believe you should teach it in a class using GCC on a Linux-based computer with X Window System disabled (no GUI whatsoever for anything, for all of you non-NIX-ers).

Are you for real? How relevant a skill is it in this day and age, to be able to operate bash and emacs on a 80-character display?

 

There is no harm in teaching friendly languages (say, python, or ruby), in a friendly environment (such as a slick IDE and/or text editor). There's no reason why you should make a student wade through an arcane an unfamiliar shell, just to edit or run their program.

 

Don't get me wrong, I am of the opinion that any engineer worth his salt can excel at working in such a limited environment - but it has nothing to do with computer science, or learning to program, and you are liable to scare off an entire generation of otherwise suitable candidates.


Edited by swiftcoder, 02 March 2013 - 05:15 PM.

Tristam MacDonald - Software Engineer @Amazon - [swiftcoding]


#53 Toothpix   Crossbones+   -  Reputation: 810

Posted 02 March 2013 - 05:55 PM

Are you for real? How relevant a skill is it in this day and age, to be able to operate bash and emacs on a 80-character display?
 
There is no harm in teaching friendly languages (say, python, or ruby), in a friendly environment (such as a slick IDE and/or text editor). There's no reason why you should make a student wade through an arcane an unfamiliar shell, just to edit or run their program.
 
Don't get me wrong, I am of the opinion that any engineer worth his salt can excel at working in such a limited environment - but it has nothing to do with computer science, or learning to program, and you are liable to scare off an entire generation of otherwise suitable candidates.

It's not about scare tactics, its about the modern kid being extremely impatient with technology and used to the instant gratification that comes with computing products like touch screens, ultra-user-friendly GUI's, mobile phones, digital media, and the overall misconception about what programming is, and the nature of computing machinery. Yes, we have popular culture to thank for that, but still, I am of the opinion that giving the student the limited tools is what increases attention span and patience, increases understanding, and breeds good engineers for when they get in the real world where everything isn't in ANSI C anymore and you end up using a plethora of tools and languages. That way, they aren't dependent on anything whatsoever and while you may use more convenient tools, you can master them and have a much more complete knowledge of things than someone who starts out on ruby and stays there, maybe dabbling a bit in C and/or Java.


Edited by MrJoshL, 02 March 2013 - 05:57 PM.

C dominates the world of linear procedural computing, which won't advance. The future lies in MASSIVE parallelism.


#54 FableFox   Members   -  Reputation: 526

Posted 03 March 2013 - 07:55 AM

People ... people ....

 

Let me add my 2 cent.

 

First, watch this Nova Science epsido

 

 

a) That will answer someone question on why learning a musical tool is important. Yes, it is.

b) That is also the reason why learning programming is logic. It's not about the syntax or Asm push and pop. It's about understanding a problem, use logical problem solving, solve it in the right manner to get the right result. And this will help you think, solve problem, and shape you brain to best use it.

 

Thanks.

 

EDIT:

 

I just notice that the video clip was a 30 second intro for the episode. i don't have the time now, but just search around for the complete episode. Sorry. I know it existed on youtube...

 

Here, straight from the source

 

http://www.pbs.org/wgbh/nova/body/how-smart-can-we-get.html


Edited by FableFox, 03 March 2013 - 09:07 AM.

Fable Fox is Stronger <--- Fable Fox is Stronger Project

#55 phantom   Moderators   -  Reputation: 7563

Posted 03 March 2013 - 01:25 PM

It's not about scare tactics, its about the modern kid being extremely impatient with technology and used to the instant gratification that comes with computing products like touch screens, ultra-user-friendly GUI's, mobile phones, digital media, and the overall misconception about what programming is, and the nature of computing machinery. Yes, we have popular culture to thank for that, but still, I am of the opinion that giving the student the limited tools is what increases attention span and patience, increases understanding, and breeds good engineers for when they get in the real world where everything isn't in ANSI C anymore and you end up using a plethora of tools and languages. That way, they aren't dependent on anything whatsoever and while you may use more convenient tools, you can master them and have a much more complete knowledge of things than someone who starts out on ruby and stays there, maybe dabbling a bit in C and/or Java.

And all I read here is 'blah blah blah instant this blah blah satisfaction that'.

I, like many others on this board, started out with BASIC (In 1991, I was 11) - the instant feedback and gratification of seeing something I wrote was what kept me going, interested and pushing forward with my knowledge. I tried a couple of times to learn C but it was just boring cruft, I had no interest in it and I was getting good results with BASIC and 68K Assembly so didn't bother to learn it.

If, when I was 11, someone had sat me down in front of the system you were describing... well, frankly chances are this board would be missing one of the best program solvers/coders on here (yes, egotistical but frankly its true smile.png) because when you are young you want that feedback.

Now, not everyone is going to go on in their own time and learn the guts of a computer, how things work from the ground up and pick up other languages - maybe they play around in their Python box for a bit while it interests them and you know what that is just fine.

Not everyone needs to know the ins and outs of a system, just being able to solve a problem using something like Python, or indeed access to the skill set that using it would develop, would be useful. But for some people exposure to this might well flip on a switch which causes them to go out and learn more, push the boundaries and generally experience a subject they would have otherwise missed out on because no one said 'hey, want to try this?'.

(Which is something I only had because we had a BBC Micro at home, my dad could code a little BASIC as he was interested in technology and I happened to have a friend who could code in BASIC.)

The idea isn't to turn out fully qualified C engineers who could write you the next doom; the idea is to expand the skill set of people in general and given those interested exposure to something else.

To draw upon the exposure to music example people have thrown around; going your route would be like asking people to start off with a stave of music and a harp to see if they liked music. Where as the better choice would be to start them with something simple like a Xylophone or keyboard and let them play around a bit, teach them some music theory and see how they like the subject... kinda like how I was introduced to it.

(Amusingly I have a GCSE in Music but no qualification in anything directly computer programming related until I got my degree in Software Engineering. There was an A-Level in computing but as I was already taking Electronics, Maths and Biology they wouldn't let me do that too, which is a shame on reflection as I recall writing someone's assignment for it in about 5 minutes during a maths lesson once... oh well)

#56 Toothpix   Crossbones+   -  Reputation: 810

Posted 03 March 2013 - 02:33 PM

The idea isn't to turn out fully qualified C engineers

I do see the great flaws in my logic, and I greatly admire and respect your skills and opinions, but don't you think that the purpose is defeated if you aren't training potential engineers to be the best there is, the "cream of the crop"?

 

I sometimes might say stupid, belligerent, and heedless things here, but if there are three points of what I'm trying to express in this thread:

1. To train tomorrow's absolute best engineers, you have to start from the core, just like we do in mathematics, among other subjects.

2. I admit that there has to be some kind of quick return on the initial time investment, but starting out with Scratch, Alice, Ruby, or other things is a mistake. Those things are definitely useful and wonderful later, but shouldn't be the base.

3. These classes should NEVER be mandatory, lest the purpose be utterly defeated.


C dominates the world of linear procedural computing, which won't advance. The future lies in MASSIVE parallelism.


#57 tstrimple   Prime Members   -  Reputation: 1734

Posted 03 March 2013 - 02:44 PM

The idea isn't to turn out fully qualified C engineers

I do see the great flaws in my logic, and I greatly admire and respect your skills and opinions, but don't you think that the purpose is defeated if you aren't training potential engineers to be the best there is, the "cream of the crop"?

 

I sometimes might say stupid, belligerent, and heedless things here, but if there are three points of what I'm trying to express in this thread:

1. To train tomorrow's absolute best engineers, you have to start from the core, just like we do in mathematics, among other subjects.

2. I admit that there has to be some kind of quick return on the initial time investment, but starting out with Scratch, Alice, Ruby, or other things is a mistake. Those things are definitely useful and wonderful later, but shouldn't be the base.

3. These classes should NEVER be mandatory, lest the purpose be utterly defeated.

 

The reason I think these classes should be mandatory and simple is to get people who otherwise would not have tried it engaged. How many people out there have the potential to be excellent engineers but never get into it because they are not exposed to it? That's why I think it doesn't matter how much the students actually learn about programming in these basic classes. It's just a teaser to get those who normally would not have signed up for a programming course a chance to try it out to see if it's actually a good fit for them. In addition, I do not think it's possible to turn out great programmers from an academic institution. The best that I have worked with have a passion for it and would have been great regardless of their education. However they all have to have been exposed to it at some point for it to click for them and for that interest to turn into a passion. That is the opportunity we should be giving to everyone.



#58 swiftcoder   Senior Moderators   -  Reputation: 10364

Posted 03 March 2013 - 02:46 PM

don't you think that the purpose is defeated if you aren't training potential engineers to be the best there is, the "cream of the crop"?

You are assuming that the purpose here is to train engineers, but I'd say that is missing the point.

 

The purpose is to give kids the tools they need to make an educated decision about whether they want to pursue training as an engineer. You can turn pretty much anyone into a competent engineer, given enough determination and time - but you can't do that unless they want to be an engineer.


Tristam MacDonald - Software Engineer @Amazon - [swiftcoding]


#59 BGB   Crossbones+   -  Reputation: 1554

Posted 03 March 2013 - 03:00 PM

And all I read here is 'blah blah blah instant this blah blah satisfaction that'.

I, like many others on this board, started out with BASIC (In 1991, I was 11) - the instant feedback and gratification of seeing something I wrote was what kept me going, interested and pushing forward with my knowledge. I tried a couple of times to learn C but it was just boring cruft, I had no interest in it and I was getting good results with BASIC and 68K Assembly so didn't bother to learn it.

If, when I was 11, someone had sat me down in front of the system you were describing... well, frankly chances are this board would be missing one of the best program solvers/coders on here (yes, egotistical but frankly its true smile.png) because when you are young you want that feedback.

Now, not everyone is going to go on in their own time and learn the guts of a computer, how things work from the ground up and pick up other languages - maybe they play around in their Python box for a bit while it interests them and you know what that is just fine.

Not everyone needs to know the ins and outs of a system, just being able to solve a problem using something like Python, or indeed access to the skill set that using it would develop, would be useful. But for some people exposure to this might well flip on a switch which causes them to go out and learn more, push the boundaries and generally experience a subject they would have otherwise missed out on because no one said 'hey, want to try this?'.

(Which is something I only had because we had a BBC Micro at home, my dad could code a little BASIC as he was interested in technology and I happened to have a friend who could code in BASIC.)

The idea isn't to turn out fully qualified C engineers who could write you the next doom; the idea is to expand the skill set of people in general and given those interested exposure to something else.

To draw upon the exposure to music example people have thrown around; going your route would be like asking people to start off with a stave of music and a harp to see if they liked music. Where as the better choice would be to start them with something simple like a Xylophone or keyboard and let them play around a bit, teach them some music theory and see how they like the subject... kinda like how I was introduced to it.

(Amusingly I have a GCSE in Music but no qualification in anything directly computer programming related until I got my degree in Software Engineering. There was an A-Level in computing but as I was already taking Electronics, Maths and Biology they wouldn't let me do that too, which is a shame on reflection as I recall writing someone's assignment for it in about 5 minutes during a maths lesson once... oh well)

yeah, I started off also with BASIC, generally with QBASIC.
the quick feedback was generally an advantage, as one could edit some stuff, and hit a key, and run it.

VS + C# sort of offers a similar experience (though IntelliSense is sort of a love/hate thing, like autocomplete is nice but I also like the ability to just type some crap without autocomplete expanding things to random crap and/or grabbing the cursor, so more generally prefer editors that use something like TAB-complete instead).

things like ability to edit code during debugging, ... can also be nice.


for C and C++, the need to go through an often long/slow rebuild process is kind of a drawback, but its advantages lie in other areas. for people new to programming, this itself is likely to be a bit of a disadvantage (though partly offset by the advantage that if using an IDE, at least probably their apps will be small enough that they wont be subjected to a several-minute rebuild cycle...).

how I originally moved over to C was mostly by messing with the Wolf3D and Doom source, and by the time I started getting a little better there was the Quake and later Quake 2 source to mess with (then I started messing a lot more with 3D via OpenGL, ...), ... (but, GPL meant I would later have to drop most of this code).

still mostly using C though, mostly at this point due to most of my tools being mostly C specific (the code is somewhat "tooled up", for better or for worse, sort of like Obj-C but without so much nasty-looking syntax). the second-place language is my script-language.

technically my engine also includes its own built-in code editor and can do "F5 to execute", but this is rarely used as the UI kind of sucks (it is sort-of part-way between something like QBasic and something like ViM), and it executes inside the console as well (FWIW, the console buffer is loosely comparable to text-mode graphics hardware, and it is possible for "programs" running in the console to hook into various events, ...). (I actually debated between this and using ANSI / VT100 control codes, which my console code also uses to some extent). its UI badness though still leaves it generally preferable to use a "real" text-editor, and then just do a ';load("whatever");' command from the console to reload it, or just use ";whatever" commands (";" prefix is magic), which immediately evaluate code fragments (not good for non-trivial code though, given nearly everything has to be typed into a single console command, *1).

ironically though, most of the script-code still ends up merged into the various engine DLLs at build-time though (generally post-link, a tool goes and shoves all the script-code/... into the DLL). (note: it is not compiled to native code at this stage, this part typically happens incrementally at run-time).

*1: note: turns out to be fairly useless for (standard) C, given how the language works. C turns out to make a pretty poor script language and is not well suited to interactive entry, and otherwise extensions and variations from the standard would be needed to increase suitability (though most code could probably still work, people can get into fights over the edge-cases, and strictly speaking, things like Ch and CINT aren't C).


but, yeah, in any case, immediate feedback is probably more useful in keeping peoples' interest...
the more painful or awkward it is made, the more likely they are to be scared off or loose interest and do something else...

Edited by cr88192, 03 March 2013 - 03:06 PM.


#60 Toothpix   Crossbones+   -  Reputation: 810

Posted 03 March 2013 - 03:27 PM

The reason I think these classes should be mandatory and simple is to get people who otherwise would not have tried it engaged. How many people out there have the potential to be excellent engineers but never get into it because they are not exposed to it? That's why I think it doesn't matter how much the students actually learn about programming in these basic classes. It's just a teaser to get those who normally would not have signed up for a programming course a chance to try it out to see if it's actually a good fit for them. In addition, I do not think it's possible to turn out great programmers from an academic institution. The best that I have worked with have a passion for it and would have been great regardless of their education. However they all have to have been exposed to it at some point for it to click for them and for that interest to turn into a passion. That is the opportunity we should be giving to everyone.

But then again, lets say there is a mandatory "Intro to JavaScript Programming" course at an average American high school. You take it after Algebra, and you have to get at least a C average in the course to graduate. Lets say the class consists of 35 kids. That's a lot of kids, but computers are expensive, and everyone at school has to take this class one year or another before graduation. How many do you think are going to have the "click" with programming that would make them want to pursue it? Not all of them, and by that I mean only a few. Nothing at all is wrong with not liking programming, but do you think if Jonathan P. Doe is in a class with a buddy or two who aren't good students and are only taking the class to graduate that they will behave? They will probably not. And when you have a classroom like that nothing gets done, distractions are made, and the class lags behind severely. The teacher might have to teach Randall P. Roe and 7 other kids a different way than Amy P. Soe and 11 other kids. What happens if Jonathan P. Doe is non-stop screaming with so many people that the teacher loses control? What do you do if Sarah P. Boe finishes all of her assignments early and spends the time undermining the teachers efforts? What do you do if all but a few kids are ruining the class for everybody? I'm sorry, but I don't see how that could work. I know a high school computer teacher, and my examples come straight from things they have said go on in their classes. Because they are mandatory and not leveled like the rest of classes, they become classes where no concentration or study is done whatsoever. That's why, IMO, if programming has to be taught, it should be an adjunct to math courses like Advanced Algebra, Calculus, but mostly Discrete/Analytical Mathematics. Even then, I don't believe enough people would even truly like it at all for such a program to be effective.


C dominates the world of linear procedural computing, which won't advance. The future lies in MASSIVE parallelism.





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS