Live data from Hacker News

CS Unplugged: Computer Science Without a Computer

csunplugged.org

11–20 of 47 posts

Re: CS Unplugged: Computer Science Without a Computer

#11
post #5
post #4

Earlier quoted context omitted.

"Calling it 'computer science' is like calling surgery 'knife science'." ~ also Dijkstra

My professor says that it would be like calling astonomy telescope science. In Danish it is called "Datalogi" the teaching of data because the founder of danish computer science, Peter Nauer, called it that.

I also like wiskunde for mathematics, I've been told it means something like the study of certainty.

Re: CS Unplugged: Computer Science Without a Computer

#13
Tim Bell, one of the creators of CS Unplugged, was one of my lecturers at the University of Canterbury, and before that he taught me the fundamentals of computer science at the NZ Olympiad of Informatics training camp when I was at high school. It would be fair to say that he's a significant part of the reason I'm a software developer.

I've never met a man so passionate and interested in the pedagogy of computer science. I'd say that he's one of the leading figures in pre-tertiary (primary and secondary school) computer science education in New Zealand. I think that science pedagogy is a massively underserved field of academia. Everyone wants to create new theories and breakthroughs, but nobody wants to figure out how to teach them.

The way that he manages to use practical demonstrations to teach computer science theories and algorithms is brilliant. It really helps make algorithms click with a lot of students. It was refreshing to have him as a lecturer as opposed to some of the lecturers who were clearly did it because they were required to, not because they wanted to.

Re: CS Unplugged: Computer Science Without a Computer

#14
post #6

I heard that many CS majors in India have never used a computer, some of them have impressive theoretical knowledge and become successful in real jobs.

“Computer Teacher With No Computers Chalks Up Clever Classroom Plan” is still blowing my mind months later. https://www.npr.org/sections/goatsandsoda/2018/03/01/5895194...

> For Hottish, who spends about 30 minutes making these drawings before every class, teaching this way is really no big deal. "Every subject is taught on the blackboard here," he says.

Re: CS Unplugged: Computer Science Without a Computer

#15
post #5

Earlier quoted context omitted.

My professor says that it would be like calling astonomy telescope science. In Danish it is called "Datalogi" the teaching of data because the founder of danish computer science, Peter Nauer, called it that.

Dataology would have been a great name. I would have loved to be a dataologist.

I am a dataologist, even if my title says software something something. Commercial software development is about getting data from point A to point B more than anything else. There's a little bit of logic, a little bit of munging, but almost all of what could be called an algorithm is done by a library or some other system--probably a database. It's maybe once a year that doing something algorithmic, e.g. reduce a regex to a hand-coded FSM, or write an exponentially decaying counter, is actually the best thing I can do to solve the problem at hand.

Re: CS Unplugged: Computer Science Without a Computer

#16
post #14
post #6

I heard that many CS majors in India have never used a computer, some of them have impressive theoretical knowledge and become successful in real jobs.

“Computer Teacher With No Computers Chalks Up Clever Classroom Plan” is still blowing my mind months later. https://www.npr.org/sections/goatsandsoda/2018/03/01/5895194... > For Hottish, who spends about 30 minutes making these drawings before every class, teaching this way is really no big deal. "Every subject is taught on the blackboard here," he says.

Wow, I was envisioning discrete math, but he is teaching modern computer skills. I would find this incredibly intimidating. Well, I guess necessity is the mother of invention—he clearly figured out how to get some decent teaching out of it.

Great penmanship, too. Surreal for this field.

Re: CS Unplugged: Computer Science Without a Computer

#18
I find that the list and ordering of topics is... unusual:

https://csunplugged.org/en/topics/

It starts off with binary numbers (and actually more on the idea of representation and interpretation of data), which is a perfectly good place to start; but why is ECC, of all things, the next topic? Then comes "Kidbots", which is an overview of programming in general, followed by searching algorithms (fair enough), but sorting networks feels like another big jump in topic.

One thing I've noticed in a lot of CS curriculum plans is this "detached binary" phenomenon and the effects thereof; like I said, it's an excellent place to start, with data representation and all the elegant yet immensely powerful implications of it. However, like the sequence here, the next topic is often only vaguely related or something completely different. To use a car analogy, it would be like spending the first lesson of a mechanic's course on the chemical properties of petrol with a brief mention that it's used in engines, and the second on suspension alignment. There's a lack of a coherent "story" that keeps the students focused and understanding "what's next".

The effect of teaching "detached binary" is that you get people who can count perfectly well in it, and will tell you they "know" binary, yet can't figure out e.g. why random 4294967295s (or 542393671s[1]) are appearing in their program's output.

IMHO the next step after learning about binary and data representation is how to actually compute with it. Logic gates, adders, latches, flops, sequential circuits, etc. The observation that one can build counters, automated adding machines, and then automated any operation machines (using data itself as instructions) quickly leads to the development of actual computers and what programming one actually means.

It is unfortunate that this codedata duality is for many developers only ever encountered in discussions about security vulnerabilities, but it is probably one of the most important and powerful features (not bugs) of digital computing machines, alongside the generic digital representation and interpretation of data. In my experience, misunderstanding of these two concepts are a large source of bugs and confusion among both beginning CS students and long-time HLL developers (Asm'ers are, not surprisingly, far more comfortable with those concepts.)

[1] https://news.ycombinator.com/item?id=13132688 (I urge you to think about this puzzle a bit first ;)

Re: CS Unplugged: Computer Science Without a Computer

#19

I find that the list and ordering of topics is... unusual: https://csunplugged.org/en/topics/ It starts off with binary numbers (and actually more on the idea of representation and interpretation of data), which is a perfectly good place to start; but why is ECC , of all things, the next topic? Then comes "Kidbots", which is an overview of programming in general, followed by searching algorithms (fair enough), but so…

It's really hard to come up with this "story" for CS because different folks will have different needs. If you're going into hardware/embedded systems/firmware then ECC makes total sense. If you're going into academia, then maybe it's time to introduce the fields/groups portions of number coding. If you're going into high-level (web) software, then maybe it doesn't make sense. CS has so many different routes that there isn't one "story" that appeals to everyone.

Re: CS Unplugged: Computer Science Without a Computer

#20
Inspired by this, I led a group of 5th graders and high school students through a "peanut butter and jelly sandwich robot" exercise.

I had a blast and so did the kids.

We had them list some steps to make a pb&j sandwich, and then I, as the robot acted the steps out as literally as possible.

When they said "gather materials", I went around the room and picked up erasers, markers, water bottles; whatever I could find.

When they said "put the knife in the peanut butter" I stabbed the (plastic) knife through the cardboard seal.

When they said "put the peanut butter on the bread", I put the jar of peanut butter on a slice of bread.

After all of that we showed a video of an industrial robot applying sealant, just like we spread the peanut butter and jelly.

At the end we asked how we could have done it better, and one of the kids said "Get a smarter robot"

I'd highly recommend doing something like this for a STEM day, or just for fun.

Post reply on HN