Live data from Hacker News

We rebuilt Corewars and used it to teach Computer Science students in India

adinocap.com

31–38 of 38 posts

Re: We rebuilt Corewars and used it to teach Computer Science students in India

#31

I love your story and am glad to see the next generation of computer scientists thinking about education. It's a huge problem that is nowhere close to solved. I worked as a founder in the ed tech space for around six years and sold two profitable companies, so hopefully I can give you some insight after checking out the actual game. I really think you need to introduce each concept sequentially with periodic reinforc…

Heyo - OP here, thanks for the kind words. Periodic reinforcement and having a video based / more interactive guide than just an embedded gdoc would all be super useful in helping kids learn faster and get to a competitive level quicker ... but with that said, Corewars is not a great game to start teaching kids with limited coding experience by any means. It's too hard to pick up - other games would serve this purpose much better. However, if we ever hop back into the edtech space, we'd certainly be interested in chatting with you at some point :) Cheers

Re: We rebuilt Corewars and used it to teach Computer Science students in India

#32

> we’re thinking a little bit about a Git Version Control or github-esque software for storing, documenting, sharing and iterating on curriculum That could be wonderful. There've been attempts at creating sites for customizing OER texts. But creating communities is hard. Especially as a closed-source VC startup. It might be nice to support transclusion. Sort of the textual equivalent of importing a code library. So o…

[op here] - Yep, when we stumbled across this idea we really, really liked it... however, this appeared to be a really neat solution to a problem that didn't actually exist.

Lots of profs are super busy with grading, securing tenure, research, and ultimately don't really care that much about the fine details of their course content. Motivating profs to document their entire course, class by class, with teacher notes, is really hard.

Here's an example of an olin college course opened up to the public ... it's a pain in the ass to make a course 'teachable by others'. https://courses.olin.edu/e4h/

Also on top of the above barrier, +1, creating a strong community out of profs who care about teaching would be hard.

Re: We rebuilt Corewars and used it to teach Computer Science students in India

#33
post #7

Corewars, the Redcode programming game, is still around and active. There are on-going tournaments ("hills") of which my favourite is the 94nop hill ('94 rules, without pspace). http://www.koth.org/lcgi-bin/current.pl?hill94nop It has been in action for approximately 25 years. Some reference sites: https://corewar.co.uk/ And warrior library: https://users.obs.carnegiescience.edu/birk/COREWAR/corewar.h...

Yes it is... will have to give it a shot sometime!

Re: We rebuilt Corewars and used it to teach Computer Science students in India

#34
post #3

> we decided to move forwards with a game based software that: > Would have a low ‘barrier of entry’ > Be easy for students from any background to pick up > Be visual and simplistic to wrap your head around > Have some level of a competitive / addictive nature and well defined metrics of success ... > ... For the frontend, we had to create a clear visualization of what the processes were doing, and also had to build…

[op here] - thanks for the recommendation, we'll check out AntMe.

In hindsight, Corewars was a stupidly hard game to try to teach the intricacies of in a few hours, and because it's based in Assembly it's also mostly irrelevant to 98% of modern day programming students or new grads will be exposed to.

However, as an experiment in UI design and offering a visual portal into the internal game mechanics, this was a dope project.

Re: We rebuilt Corewars and used it to teach Computer Science students in India

#35
post #3

> we decided to move forwards with a game based software that: > Would have a low ‘barrier of entry’ > Be easy for students from any background to pick up > Be visual and simplistic to wrap your head around > Have some level of a competitive / addictive nature and well defined metrics of success ... > ... For the frontend, we had to create a clear visualization of what the processes were doing, and also had to build…

First - I strongly agree with everything you said. It's a steep learning curve to climb for something that doesn't really relate to any prior computing experience a typical student could be expected to have today. The teaching time will go down if they stick with this - they'll learn what the common errors are, what the common conceptual misunderstandings are, and how best to present the material to their students. T…

[op here] - thanks for your kind words.

This entire project really exposed us to some of the challenges of the edtech space - mainly how solving the problems of the current edu system and making an edu product that people want rarely actually overlap.

But regardless, developing a sort of custom curriculum for those couple hours of 1:1 teaching and refining that curriculum on the fly, and seeing what concepts kids picked up quicker was super interesting and honestly one of the most rewarding parts of the project.

Re: We rebuilt Corewars and used it to teach Computer Science students in India

#36

> we’re thinking a little bit about a Git Version Control or github-esque software for storing, documenting, sharing and iterating on curriculum That could be wonderful. There've been attempts at creating sites for customizing OER texts. But creating communities is hard. Especially as a closed-source VC startup. It might be nice to support transclusion. Sort of the textual equivalent of importing a code library. So o…

[op here] - Yep, when we stumbled across this idea we really, really liked it... however, this appeared to be a really neat solution to a problem that didn't actually exist. Lots of profs are super busy with grading, securing tenure, research, and ultimately don't really care that much about the fine details of their course content. Motivating profs to document their entire course, class by class, with teacher notes,…

> problem that didn't actually exist

Well, creating good education content is certainly an unsolved problem, but nod.

> document their entire course, [...] is really hard

That was the MIT OCW experience as well.

Hmm... thinking aloud...

I wonder how hard it might be to do bulk ingestion of existing OER content to seed such a literate-programming/github/npm but-for-text platform. Slice-and-dice and index, so it's immediately useful for easily pulling together custom content. Though profs creating slides are unconcerned by copyright, so obtaining material by googling seems likely easier than even well indexed ingested OER content.

And the challenges of an accessible UI are not small. One of the unrealized potentials of OneLaptopPerChild was having a community that mixed domain experts with software devs, so one could look ahead to a much lower-barrier MVPs for collaborative content creation. Hmm, so what might motivate people already skilled at git-horrible ui to work on text...?

Perhaps one could find some content niche which somehow inspired people to work together, using a platform with good bones, but without a so-hard-to-make broadly-accessible GUI. For illustration, introductory astronomy courses are common, and best-selling textbooks don't even bother to get the color of the Sun right. So one might imagine the astronomy community, which has coding skills, getting enthused by a "finally, an introductory astronomy textbook which isn't wretched". Or no, maybe not so much. It might be interesting to learn which OER textbooks have achieved wide use, if any. Use them as a market probe for communities which are already receptive to an OER-shaped effort? And hope one of those communities has unmet authoring needs, and the skills to tolerate an MVP ui. Ah well, thanks for the thought exercise.

Re: We rebuilt Corewars and used it to teach Computer Science students in India

#37
post #17
post #4

> Corewars proved itself really, really hard. Learning the assembly commands and how they edited the A and B values of each memory cell, understanding how the processes were executed and how data was stored was incredibly challenging for students to wrap their heads around. This surprised me. I wrote a Corewars system in compiled Basic for the Sinclair QL when the game became popular. Writing it was not particularly…

> This surprised me. When I read the intro, I was like „They want to teach beginners with Corewars? That‘s brave...“ I really like the idea of Corewars (and programmning games in general), but I never managed to get into it because the whole concept of assembly language was too foreign for me. I would have had to invest too much time up front, just understanding the basics. I loved Robocode, but then that uses Java ;…

I understand the feeling. However you can play some puzzle games that are much more difficult than the assembly of MARS. Furthermore any simple machine language traslates pretty well into a basic version of C: add, sub, pointer operations, bitwise operations, compare a value with zero and possibly move the program counter to a memory location, copy memory from RAM to a register (think of it as a predefined veritable). Everything is an int, maybe a float. All very low level.

Re: We rebuilt Corewars and used it to teach Computer Science students in India

#38
post #37
post #17

Earlier quoted context omitted.

> This surprised me. When I read the intro, I was like „They want to teach beginners with Corewars? That‘s brave...“ I really like the idea of Corewars (and programmning games in general), but I never managed to get into it because the whole concept of assembly language was too foreign for me. I would have had to invest too much time up front, just understanding the basics. I loved Robocode, but then that uses Java ;…

I understand the feeling. However you can play some puzzle games that are much more difficult than the assembly of MARS. Furthermore any simple machine language traslates pretty well into a basic version of C: add, sub, pointer operations, bitwise operations, compare a value with zero and possibly move the program counter to a memory location, copy memory from RAM to a register (think of it as a predefined veritable)…

s/veritable/variable, phone autocorrect (._.) and I forgot copy from register to RAM. Basically it's all we need.
Post reply on HN