I've deprecated this Gist and migrated the CER FAQ to my faculty webpage:
https://github.com/amyjko/faculty/blob/master/components/cer.js
Feel free to submit pull requests on that file to make additions or corrections.
object DSL { | |
implicit def MkDSLRichAnyOps[T](elem: T) = | |
new DSLRichAny(elem) | |
} |
case class MyNum (val d: Double) extends Numeric [MyNum] | |
{ | |
def fromInt (n: Int) = MyNum (n) | |
def + (rhs: MyNum) = plus(this, rhs) | |
def plus (x: MyNum, y: MyNum): MyNum = MyNum (x.d + y.d) | |
def minus (x: MyNum, y: MyNum): MyNum = MyNum (x.d - y.d) | |
def times (x: MyNum, y: MyNum): MyNum = MyNum (x.d * y.d) | |
def negate (x: MyNum): MyNum = MyNum (-x.d) | |
def toInt (x: MyNum): Int = x.d.toInt | |
def toLong (x: MyNum): Long = x.d.toLong |
The MIT License (MIT) | |
Copyright (c) 2013 Michael E. Cotterell | |
Permission is hereby granted, free of charge, to any person obtaining a copy | |
of this software and associated documentation files (the "Software"), to deal | |
in the Software without restriction, including without limitation the rights | |
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | |
copies of the Software, and to permit persons to whom the Software is | |
furnished to do so, subject to the following conditions: |
I've deprecated this Gist and migrated the CER FAQ to my faculty webpage:
https://github.com/amyjko/faculty/blob/master/components/cer.js
Feel free to submit pull requests on that file to make additions or corrections.
Computing education research (CER) is the study of how people learn computing and the invention of better ways to teach computing. This FAQ will teach you more more about the field and how you might contribute to it.
First, CER is not teaching. Teaching is helping people acquire knowledge, skills, attitudes and beliefs. Research is discovering truth and inventing solutions. Teachers teach computing, whereas computing education researchers discover what is true about the teaching and learning of computing, and invent new techniques for teaching and assessing it (some pedagogical, some computational).
It's also important to note that I construe "computing" broadly: it's not just about programming, or even just about computer science, but also about all of the phenomena surrounding computing (including privacy, security, information ethics, software engineering, etc.). This means that computing education and computing education research can and do cover far more t