Teaching Programming Now Emphasizes Sharing 132
An anonymous reader writes "The NY Times explores some of the best ways to teach kids and finds that some of the new tools are encouraging the kids to share their work with each other. One teacher first tried to keep the kids quiet and staring at their own monitors but found it was better to let them copy each other. He calls MIT's Scratch a 'gateway' tool. Then the article points out that programming Blender with Python is not as hard to pick up as your grandparent's programming languages — and kids today are learning them in a few months." The Wikipedia entry on Scratch is worth reading, too.
FTFA: Not sharing so much as building together (Score:5, Insightful)
The summary makes it sound like these kids are being encouraged to cheat off one another. The actual article just says that they're looking at each others' work to build on one another to make more complex programs. That pretty much describes what any good programmer does. Unless you live in a bubble building all small projects solo, you're always going to be working together on a project with other programmers and designers. And even if you live in a bubble, you had to learn coding from SOMEWHERE. You look at code in a book or on a website, you learn how it works, you start using it and adapting it in your own projects. That's just learning.
I, for one, say "Huzzah!" for these kids. If they keep at it and get their CS degrees, they'll have a great future working for $3-an-hour in India someday.
Wait, that sounds cynical. I meant $4-an-hour.
Oh, and I've found Alice [alice.org] to be a great teaching tool for kids too. It teaches programming principles in a way that's a little more exciting for beginners than having to learn Commodore 64 PEEK and POKE coding (the way some of us came up).
Re: (Score:2, Informative)
The problem is, educationalists now believe that everything should be marked, as students try harder when they are micro-managed with incentives.
As a consequence, either group learning is bad, or cheating is OK.
Re: (Score:2, Insightful)
This is not a word.
Re: (Score:1)
Re: (Score:2)
You could learn a thing or two from an educatinator.
Re: (Score:3)
That's a perfectly cromulent term!!!
Re:FTFA: Not sharing so much as building together (Score:4, Informative)
An educationalist is someone who researches education, or shapes education policy. It's somewhere in between "education expert" and "education policy czar / ivory tower education academic" in flamebaitness. "Educationalist" *is* a word, in relatively common use (Google tells me it's about half as common as "critical theory" (in quotes) on the web), unlike flamebaitness which I just made up.
I won't be pedantic, and go into any detail as to what the definition of "word" is, as there are several different meanings, one of which ("a word in common use") which makes some kind of sense in the way you are using it.
Re: (Score:2)
An educationalist is someone who researches education, or shapes education policy. It's somewhere in between "education expert" and "education policy czar / ivory tower education academic" in flamebaitness. "Educationalist" *is* a word, in relatively common use (Google tells me it's about half as common as "critical theory" (in quotes) on the web), unlike flamebaitness which I just made up.
I won't be pedantic, and go into any detail as to what the definition of "word" is, as there are several different meanings, one of which ("a word in common use") which makes some kind of sense in the way you are using it.
Exactly. It is the same as the distinction between a musicologist and a musician, or even a dietologist and a dieter.
Re: (Score:2)
This is not a word.
Yes, it is. Just because you don't know it doesn't mean it is not a perfectly valid word in any decent dictionary.
Hint: try googling it first, it saves a lot of embarrassment.
Re: (Score:2)
NCLB is forcing teachers to be less rigor toward stopping cheating. When you have a child that just doesn't get a subject, but giving them the appropriate grade means mo funding and all children will suffer, I can understand the less rigor.
I don't agree with it. I think schools are being too nice regarding budget cuts. Personally, I would give the approprieat grade,a dn when the school system gets less money, start cutting minutes off every day.
Parent will get it.
Re: (Score:3)
Re:FTFA: Not sharing so much as building together (Score:5, Funny)
It's a more respectable title, created by conservative backlash against educologists.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
It's sorta like an educator but without the expected results?!?
Re: (Score:2)
WTF is an "educationalist"?
Let me explain:
Those who can do
Those who can't teach
Those who can neither do nor teach talk about teaching
The latter are educationalists
Re:FTFA: Not sharing so much as building together (Score:5, Insightful)
If that's the goal, then I don't know why the teacher doesn't give them a generic set of code to build off of (written by a make-believe programmer whom they "work with" or that existed in a book) - and each student still works entirely independently of each other. Then, at least the teacher could grade each student individually instead of making wild guesses about which student did which work and whether a particular student did any work at all.
Re: (Score:1)
Re:FTFA: Not sharing so much as building together (Score:5, Insightful)
If that's the goal, then I don't know why the teacher doesn't give them a generic set of code to build off of (written by a make-believe programmer whom they "work with" or that existed in a book) - and each student still works entirely independently of each other.
Because then students wouldn't be able to ask each other "hey, how did you do this?" or "hey, wouldn't this be a better way to do that?" Collaboration improves learning.
Re: (Score:2, Insightful)
Collaboration improves most ANY human endeavor.
Learning....Building...
Even Cooking.....even when there are lots of cooks.
Structure isn't the problem. It's the niching, and separation of minds that limits the results we can achieve.
Re: (Score:2)
Re:FTFA: Not sharing so much as building together (Score:4, Insightful)
Re: (Score:3)
So, teaching awards a "certificate" asserting competency of an individual, that others can then use as a shortcut to determining that individual's competency ... but there are so many problems, like cheating, arbitrary standards of competency, teacher incompetency, etc. that we might as well throw out the idea of certifying competency and all make our own determinations :) I suggest assuming competency until proven otherwise.
Re: (Score:2)
I agree, since this is usually easy to test for on the spot with probing questions.
Re: (Score:3, Interesting)
When I was taking my intro to programming classes, we were allowed to partner with one other person to do several of the main programming projects. On the first day of class, I had to show the person next to me how to turn on their computer, so of course I ended up being stuck with them as a partner. To my surprise it ended up being immensely helpful to me, mostly because I not only had to design the bulk of it, but I had to explain it all to them, and do a good enough job getting my ideas across so that t
Re:FTFA: Not sharing so much as building together (Score:4, Insightful)
Making the top 90% doesn't seem so hard. Or did you mean top 10%?
Re: (Score:2)
Also, you get this kind of learning in the work environment too (unless yer job is a dick). So this style of collaborative learning also does one really important thing for future developers: it ingrains a sense that teamwork is important and how to work well in team environments (and not be a dick).
Re: (Score:2)
Collaboration improves learning IF YOU WANT TO LEARN
In my experience in college (CS), collaboration was an obstacle to those who wanted to learn. One group project ended up falling behind for a week because one stubborn twit insisted that one of our DB relation diagrams was non-deterministic. A few of us kept trying to explain that he was confused, but he wouldn't budge.
Finally, half of the group just went on in spite of him.
Re: (Score:2)
Collaboration improves learning IF YOU WANT TO LEARN
In my experience in college (CS), collaboration was an obstacle to those who wanted to learn. One group project ended up falling behind for a week because one stubborn twit insisted that one of our DB relation diagrams was non-deterministic. A few of us kept trying to explain that he was confused, but he wouldn't budge.
Finally, half of the group just went on in spite of him.
You should just have planted some drugs on him and called the cops. Your problem solving skills were obviously not that great.
Re: (Score:2)
Actually, my solution was to run off with his laptop (which had a password like 1qaz2wsx), change his major to something in the Liberal Arts where he belongs, and free us all of his terminal lack of clue.
I was voted down. It was a collaboration, after all.
Re: (Score:2)
When I started learning programming in high school, I was exceptionally shy. I found that I understood it better than most, and would often help other people learn, which was a big thing for me. Part of the reason I latched onto programming since then is because I was able to be of value to the people around me. If I had understood it just as well, but had to sit there pretending to work together with imaginary people through bullshit code snippets, just so the teacher had an easier time grading my work,
Re: (Score:3)
That is probably because the goal of this one teacher wasn't to grade each studenty individually, but to help them learn something.
Re: (Score:2)
Re: (Score:1)
It leads to poverty, unemployment, and protests in the US.
And the living expenses won't be lower for much longer when companies realize they can charge you what they want and enough consumers will pay.
So, you believe people making $4/hr will still pay whatever companies want them to pay? With what money?
Re: (Score:2)
Re: (Score:2)
Check out the PC games,Books prices at www.flipkart.com and compare them with the Steam prices
Similarly, medicines cost around 10% of US costs
And the worlds cheapest telecom.
0.00020008 U.S. dollars (converted using Google) per second : and thats one of the more expensive plans
Re: (Score:2)
Re: (Score:2)
Calling $4/hour a low salary doesnt make sense if everything is proportionately lower.
Re: (Score:2)
Re: (Score:1)
But yeah, call quality on the cheaper networks does suck sometimes
Re: (Score:3)
Whats wrong with $4/hour if the living expenses are proportionately lower?
Well, nothing if you don't mind living in a city with an open sewer running down the street.
You have a very distorted vision of India.
What is it that makes you believe that a open sewer running down the street is common?
Re: (Score:2)
Re: (Score:2)
I, for one, say "Huzzah!" for these kids. If they keep at it and get their CS degrees, they'll have a great future working for $3-an-hour in India someday. Wait, that sounds cynical. I meant $4-an-hour.
Re: (Score:3, Informative)
Minimum wage in the US was under $4/hour in 1990. I must have missed the rivers of raw sewage flowing down the streets. In 1974, minimum wage was $2/hour. In 1956, it was $1 an hour.
Re: (Score:2)
Minimum wage in the US was under $4/hour in 1990. I must have missed the rivers of raw sewage flowing down the streets. In 1974, minimum wage was $2/hour. In 1956, it was $1 an hour.
You are aware of the concept of price inflation?
Re: (Score:2)
The summary makes it sound like these kids are being encouraged to cheat off one another.
Yeah for reals. In college there were those kids who just wanted to copy someone else's code to get an assignment done and those who worked in collaboration to make something truly excellent. There is a huge difference and for the summary to call it copying is not at all what the article was about. I also find the whole "learning them in a few months" highly suspect as well.
Re:FTFA: Not sharing so much as building together (Score:5, Insightful)
The problem is it is hard to draw the line between cheating and working in a group, for an educational setting.
I remember in fifth grade a "Progressive" teacher had the kids who are good at a topic to work with children who needed some help, to help them out. So I was helping someone with some Math. He got mad at me because I was explaining the steps and not giving him the answer. Because some kids want to learn and others just want to pass, he didn't care about learning, he cared about getting it done and getting a passing grade so he doesn't need to do it again.
Now in a programming class, this shared concept will work when the students are wanting to learn how to do something vs. just getting a passing grade. So if they want to learn working with peers is great (In any topic) but if they don't they will use it as a way to cheat, and get the answer from someone else.
I resent the statement about the $4 programmer. In the US there are a lot of jobs that needs Software Developers. That needs a good programming background.
A Programmer is a Job a Software Developer is a Career. If you need a programmer then you have done all the Architectural work and planning then yes you can hire a $4 an hour outsource to turn out code. But for most organization requirements are more organic and you need a Software Developer who does more then just write code he takes in the Problem, comes with a solution to a problem, figure out the business case, work with the end user for an appropriated solution , calculates the trade offs, then writes the code.
Most companies when they see a Programmer for $4.00 an hour try to go with them and then pay for it later. Because they soon realize they didn't hire a software developer they just hired a programmer.
Re: (Score:2)
I remember in fifth grade a "Progressive" teacher had the kids who are good at a topic to work with children who needed some help, to help them out. So I was helping someone with some Math. He got mad at me because I was explaining the steps and not giving him the answer. Because some kids want to learn and others just want to pass, he didn't care about learning, he cared about getting it done and getting a passing grade so he doesn't need to do it again.
No offence, but that just proves that you're rubbish at teaching, which is a valuable lesson to learn as it's always best to know your strengths and weaknesses.
Re: (Score:2)
>The problem is it is hard to draw the line between cheating and working in a group, for an educational setting.
Not if you make it a group project it isnt
Re: (Score:2)
That was where I got my start as well. We had four or five in our grade 5 / 6 classroom and were basically encouraged to do anything we wanted with them short of actually damaging them. It was awesome. (Whether or not BASIC is an ideal starting programming language is not a topic I want to get into here.)
Re: (Score:1)
Re: (Score:2)
Oh, and I've found Alice [alice.org]...
Alice? Who the fuck is Alice?
Sorry, couldn't resist... you may go about your business. Move along.
Re: (Score:2)
"Nope! That's piracy, copyright infringement, trademark violations, plagarism, and all around cheating! Keep your eyes on your own work or else! The minute each precious sentence is scrawled in blue pen, that's a copyrighted work! If you copy it you will be sued by RightHaven for $150,000 per note book page! Now, wasn't that a nice class?"
Re: (Score:1)
Your comment is a tad cynical. Especially since, at least in my area, we're not seeing a decline in salary for good developers at all. But maybe that is the point, good developers make money. The people who have a problem are those who spend 2.5 years running through a "CS" degree at ITT Technical Institutes home study program and then come out with a resume that reads like the who's who of fast food workers and yet expect a starting salary of $85,000 "because my college recruiter totally said that is what
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2, Insightful)
Do people really have to wave their massive dicks around every time someone mentions an outdated piece of technology? It gets old. You aren't cooler. You're just less lucky.
Re: (Score:2)
You learned on a Commodore 64? Lucky... way more convenient than having to save your programs on cassette tapes (the way some of us came up)
Disk drives were expensive back in -83... here in Norway, they cost about 800 USD or so. So tape drive [geekvintage.com] was the most common data storage for the first years, until the price on the 1541 dropped.
Re:Commodore Disk Drives (Score:2)
But the funny thing was, a 1571 drive was apparently affordable by 1986 when I got my C128, and I don't recall Dad making the fuss like "oh dear gawd this will cost more than a month's mortgage". I still sorta wish I were 10 years younger without all that "legacy baggage" but I still think amiga style tracker mods are better music than a third of today's stuff, so go figure.
Re: (Score:1)
Re: (Score:2)
Re:FTFA: Not sharing so much as building together (Score:4, Funny)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Can't we just say "Hurrah!" or "Hooray!"? Huzzah is sort of retarded, even if it is original, like "doth" or "thou." This isn't the 1600s.
It's being used ironically, genius.
Sharing (Score:5, Funny)
Sounds like a gateway drug into P2P, torrenting, and ultimately murder.
Re: (Score:2)
A good method (Score:5, Insightful)
In high school my math teacher organised us into pairs and encouraged us to work together on the problems. It's can be very enlightening to see a situation from someone elses point of view. And teamwork is also a skill that has to be learned, preferably in school.
Re: (Score:3)
Especially if your lab partner has big boobs.
A Bad Method (Score:4, Insightful)
In high school my math teacher organised us into pairs and encouraged us to work together on the problems. It's can be very enlightening to see a situation from someone elses point of view. And teamwork is also a skill that has to be learned, preferably in school.
That's annoying as hell for the smart kids paired with kids who just don't get it. Being one of those kids that didn't like "showing my work", I would have spent 50 minutes of a 60 minute class teaching my partner how I got the solutions. Conversely, there were kids smarter than me, and I didn't want them giving away the answer before I'd figured it out on my own. People need to learn how to solve problems on their own. In my humble opinion, math is only a team sport for anyone going above Calculus. I don't believe in that one for all, all for one junk in school. Let's save the teamwork for Phys-Ed.
Sounds like a great way for the teacher to make other students do the job of the teacher. I certainly don't want my son going to school and spending the majority of his time teaching rather than learning something new under some false assumption that they can all be winners. As the kid who always held the class record for math speed tests in elementary school, its a shitty teacher that would make that me spend most of my time helping other students on rudimentary problems when I could have instead moved on to something more challenging.
If that kid's parents want to pay me for after school tutoring, that's fine! Heck, I paid another student for music lessons over a summer in high school. He was a first chair, and I was 5th. My money resulted in him being paid for a valuable service that helped me make second chair the next year. But should he become the instructor of all the kids below him? Hell no, he was allowed to shine on his own. This guy went on with a music scholarship, and the rest of us just have band camp memories. Why hold him back? Why hold back excellence? I can only imagine someone like modern Einstein in high school wasting time trying to explain chemical bonding to a kid who will grow up to flip burgers. That's a far out analogy, but it highlights the problem, at least until later years of college where classes aren't just large groups of kids lumped together not by knowledge, but simply by age and geography.
I want kids to go to school to learn, not teach remedial topics to their classmates.
Re:A Bad Method (Score:5, Insightful)
But to learn what? I was in the very top percentile of my class at every school I went to. Unfortunately for me, very few of the teachers could teach me anything that I did not find remedial. In the 7th grade I had a math teacher give me the greatest insight I have ever had the pleasure of realizing. She said, I would never learn anything from the teachers or textbooks in school that I couldn't easily figure out on my own. She encouraged me to help others and learn new and interesting things from those around me by observation.
This opened up a whole new world for me. Yes, I tutored many people for a heft sum (enough to comfortable pay for college without incurring any debt). But I also helped those who couldn't afford my services, I made friends, I learned as I taught, I gained valuable social and managerial skills, and most of all I got a great experience out of school even though I hated just about every textbook I ever picked up and most of the lectures where teachers attempted to prepare me for "life" (which I guess is a code word for some standardized test that helps them get funding for the school).
For me I think collaboration is the way to go. Ultimately, in good companies, that is how things work. I have my strengths and the 6 people on my team sitting around me right now have their strengths. We complement one another and we work well. Personally, I am glad I learned that while I was in school, and have mostly forgotten about all the lectures that bored me so badly.
Re:A Bad Method (Score:5, Informative)
Sounds like a great way for the teacher to make other students do the job of the teacher. I certainly don't want my son going to school and spending the majority of his time teaching rather than learning something new under some false assumption that they can all be winners. As the kid who always held the class record for math speed tests in elementary school, its a shitty teacher that would make that me spend most of my time helping other students on rudimentary problems when I could have instead moved on to something more challenging.
I want kids to go to school to learn, not teach remedial topics to their classmates.
One of the best ways to solidify one's grasp of a topic is to teach it to someone else. Additionally, everyone has a different method of presenting information to others, and some people are more receptive to different methods of learning. Ideally, students of similar levels of aptitude would be paired together to learn from each other, increasing the knowledge of both, but we all know that the real world does not revolve around ideal situations at all times.
But Also Valuable if Done Correctly (Score:2)
I believe your premise has some merits (obviously, bright students should be allowed to progress), but I don't think it is a terrible idea to, at the end of every unit/chapter/major concept, quiz the class and let students take turns teaching other or flailing on a chalkboard in front of the class. Sure there's some pressure but you get used to it, and better because any job has a habit of putting you in the spotlight from time to time.
Sometimes it is incredibly instructive to "teach" another student, or a
Re: (Score:2)
I forgot to mention that the class was split into two groups based on skill, so differences weren't that big. Also, you were free to sit next to anyone.
Re: (Score:2)
I can only imagine someone like modern Einstein in high school wasting time trying to explain chemical bonding to a kid who will grow up to flip burgers.
By all accounts, Einstein was a generous, kind-hearted person willing to help others, not a stuck up little brat with deluded ideas of his own importance.
Re: (Score:2)
I recall in high school our programming class, Fortran, was a vey isolating experience, and though I learned I did not learn how to manage the writing of code. I could write any program you wanted to, as long as it was small enough to do on my own. One thing that changed my outlook
Why optional? Peer review should be required! (Score:5, Insightful)
If your students are motivated by "building cool stuff", sharing is great - they are trying to add the elements they find into their own designs. However, if your students are motivated buy "getting the passing grade", then sharing may become copy-pasting, and they will not retain any knowledge of the process. In real life, students are motivated, to a different degree, by building cool stuff, grades, and a host of other factors. My policy up to date has been "ideas sharing is fine, peering at screens and finding out how others did things is fine, but if I find evindence of significant copy-pasting, you will get a stern warning and/or a some sort of discipline". Works fine with undergrads learning compsci, especially once they learn that our in-house copy-pasting detection system is quite accurate at finding cases of badly-disguised cut&paste.
I am even going one step further, and *making* my students review each other's code (they get good grades for writing good reviews, not for receiving them, and reviews are anonymous, so there should be little incentive to 'cheat'). I find that far too many students are not exposed to a) the potential beauty and simplicity of good code vs. b) the horror that bad coding is to the unwary mind.
Does anyone know good systems to automate this peer-review for undergrad coding exercises?
Might and May are good policy indicators (Score:2)
I agree with you completely. Sharing may become copy-pasting, and putting off motivation is probably the better way to teach.
If only there were some way to compare different models of teaching to determine which way was better. Some process where the amount of learning could be measured in both methods.
Until that magical method is invented, I suppose we'll just have to keep teaching kids in the best way we know how.
Re: (Score:2)
I once gave a reviewing assignment in a graduate class -- only the language used was English, not computer code. Each of the students had a term project they had to do and report on (the projects were all different). I graded the projects. But along the way, each draft of the final report was handed out to several other students for review. Those other students where responsible for providing constructive criticism. I too reviewed the drafts. A student's final grade was based on my grading of his fina
Scratch is the new BASIC (Score:4, Insightful)
I've taught Scratch to kids before, though only briefly. None of the class picked up much on their own, so it's no replacement for good tuition.
Re: (Score:1)
And what about scratch makes it not a "real" programing language? All the rudiments are there, need I point you toward the ray tracers that have been written in scratch :)
Sharing is piracy!!!! (Score:3)
Or so the corps want us to think...
Re: (Score:2)
Sharing is theft
-- MPAA
Re: (Score:1)
"Remove scarcity, and you remove value."
so the value that you gain from having food to run your metabolism; the means of transportation you use to go here and there and materials with which to construct shelter comes from those things being scarce??? This notion of scarcity somehow *creating* value is absurd in the utmost. Is your health valuable to you because others are less healthy? Do you enjoy a piece music because it is rare? A piece of art because few have seen it?
Betting on the value of intangib
Re: (Score:2)
value is based directly on scarcity. Remove scarcity, and you remove value.
Quality is a great replacement for scarcity. Scarcity is a tool of the mediocre.
Re: (Score:2)
Since you obviously don't agree with this, I'm sure you won't mind when I share your paycheck with all of my friends.
His paycheck is scarce. where is knowledge is not sharing only increases it.
The problem isn't that it removes scarcity, the problem is that that scarcity has been artificially added in the first place. Maybe out of necessity.
But who should decide how much scarcity should be introduced, I don't think it should be either the one who directly benefits from that scarcity or the one who benefits from that lack of it, because neither one is likely to fairly judge its value.
It should be enough so that the creato
KTurtle (Score:4, Interesting)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
In my experience (Score:5, Interesting)
High school computer science teacher here in my 4th year of teaching. This year, I've emphasized group programming much more than the past 3 - I used to do 50/50 group/individual in-class stuff, but this year nearly every in-class exercise is done with randomly-assigned partners in my Intro and AP courses. The difference in comprehension is astounding - students are grasping concepts much quicker than usual. The thing is, when they go off on their own to do individual assignments now, they do so with much more confidence, thanks to the discussions they were able to have with their partners.
FYI, I teach at an all-girls school, so it's possible that these are unique results for girls, but I imagine that boys would similarly benefit from working with partners.
Re: (Score:2)
Only after the fundamental are covered (Score:2)
Once proficiency in fundamentals and advanced fundamentals are demonstrated should code sharing and collaboration be encouraged.
This kind of goes back to "when should math students be allowed to use calculators?" Obviously, it is established that they should be allowed only after they have a firm grasp of those functions which the calculator performs for them. Otherwise bad things begin to happen.
So what I am getting at is that once those fundamentals are present in the minds of these students, then they
Kudos (Score:2, Interesting)
I'm a high school comp sci teacher and I fully support this way of learning. Kids do much better when they collaborate because it's easier to remember concepts when you've had a conversation with someone about it. Cheating is different from collaboration. They aren't working together during the final exam.
Duh! (Score:4, Insightful)
Reading (and figuring out) someone else's code is one of the best ways to learn to program. It also teaches the value of commenting your code and making it understandable and maintainable by others.
As for the "cheating" aspect:
1. In the real world, programmers "cheat" by sharing code to get the job done with the least effort.
2. Switch up the groups after every assignment so the learn to work with different people, you'll see a pattern in who is productive and who is a slacker.
3. In the later phases, switch up the groups in the middle of the assignment, just like a real workplace.
Re: (Score:2)
10 ?"Wasn't that hard in old days either":RUN (Score:2)
Then again, who of these (grand)parents didn't (even have to) learn BASIC, Pascal, PHP, Perl or even assembler in a matter of days?
kids do what they want. (Score:1)
Re: (Score:1)