25259 >> Nikolai Tillmann: Welcome. It's my pleasure today... Kurkovsky from Central Connecticut State University, and I was

advertisement
25259
>> Nikolai Tillmann: Welcome. It's my pleasure today to have Stan
Kurkovsky from Central Connecticut State University, and I was
fascinated by his long history of trying to teach mobile application
development to beginning students.
I'm very excited to hear more about this today.
>> Stan Kurkovsky: Nikolai, thank you very much for introducing me.
Well, whether it's a long history or not, you know, longevity is a
very, very subjective issue.
I have been doing this since probably 2008. Maybe 2009.
talk some more about that a little later today.
But I will
So what I wanted to talk about is not just any kind of application
development for mobiles, but specifically mobile game development.
where it fits into the academic curriculum.
And
Well, to begin with, I think it's quite obvious. It doesn't matter how
serious a person is, how many academic or other achievements a person
has, we grow up with games, whether they're mobile games, toys,
whatever it is. That's where we start.
Just like 5-year-old will take a toy car, you know, when he goes
shopping with his mom, a 10-year-old will take maybe an iPod packed
with games and 15-year-old and onwards will take a mobile phone,
because not only can they play games they can do other things.
An interesting trend that's been going on for some time is that not
only we're playing with toys, we are playing with gadgets that are far
more than toys. And all these gadgets walkman, portable radios,
they're converging.
So today the thing that you carry in your pocket is no longer just a
mobile phone. Let's say ten years ago it could have been a device
designed for just one purpose. Today, that one little tiny box or
whatever shape it is, it's suited for so many different things. It's
your media portal. You can watch videos. You can keep in touch with
friends. You can play games, you can do all sorts of things.
Capturing video in a picture it's all in your pocket all the time. The
question is, how is this all happening? Today -- well, these are quite
obvious things. But we don't really notice all these obvious things
because we kind of are surrounded with them.
If you told anybody, let's say 15 years ago, that hey, you know, you
will be able to browse the Web -- well, some people 15 years ago didn't
even know what the Web was.
But if you could browse the Web using this little tiny computer to
carry in your pocket, that was very -- would have been quite difficult
to imagine.
These little tiny things, these mobile phones that we carry in our
pockets today, well, they pretty much have the same power that the
desktop computers had 15 years ago.
Again, right now we are kind of taking it for granted. But if anybody
told me that this is how things are going to be to myself 15 years ago,
that would have been quite difficult for me to wrap my head around
this.
So not only technology evolves, the way how us, how people and young
people, school kids, high school kids, how they interact with
technology, it also changes.
I like to ask my students a question, a very, very simple question.
Okay. So if I ask you: What comes to your mind when you think about
computers or technology in general, what would that be? And, again,
when envisioning their answer, I'm trying to answer this question to
myself 15 or 20 years ago, and I would think, well, probably a PC that
I had when I was I don't know 17 or 18, and I was playing games,
writing some basic programs. For me that was technology. That was
computer. And a 17-year-old or an 18-year-old or 20-year-old in my
classroom would say, well, PC, what's that. I don't know what PCs are.
It's my mobile phone.
That's what I use for basically everything. For a lot of kids these
days, the first technology device that they get is a mobile phone or
perhaps an iPod or something like that. And later on maybe they'll get
a laptop or a PC. PCs are a lot of people would say they're on the way
out. It's kind of -- the technology platforms there are moving away
from that.
The only reason why I'm talking about PCs is although the technology
overall is evolving, the way how we're teaching technology or anything
in general, it seems to be stalled and kind of frozen in literally the
last century.
And it's not only about teaching computer science. It's just teaching
in general. Now, I have to make a very important disclaimer. I'm not
trying to say, oh, because there is this new technological innovation
we have to immediately switch the way how we're teaching using that new
technology.
What comes to mind, even though I'm not that old, but let's say when
these are the stories I hear from my senior colleagues. They said when
TV was first invented and was brought into everybody's homes, everybody
was saying: Okay, distance education. Taking courses via TV or mail
order VHS tapes, that's the future.
How far did this get us? Probably not that far. But distance
education, hybrid courses, as an idea, it's kind of taking off. So I'm
not talking about education in general. I'm talking about education in
computer science.
Today, if you walk into a typical classroom, a lab, a studio, what do
you see? You see desktops. And to a typical freshman, that's not what
they envision as a high tech environment. It's not what they perceive
as the embodiment of modern technology. Again, to them it's something
small. Something that you have in your pocket with a simple GUI, but
not that monster that they would see in a lab. I'm not exaggerating.
It's not just smaller universities that they're stuck with PC labs,
even bigger very well funded universities there, kind of mass access
computer labs are still dominated with PCs. Not that this is a problem
at all, but this mode of teaching, it has a certain number of
implications.
And, again, I'm talking only about computer science, only about -well, specifically about introductory computer courses. Well,
traditionally, when you get into CS-1. So what are you taught?
Structured programming, maybe Java, classes and such. And what kind of
examples are you getting? Let's calculate average salary of some
employee. Well, that's really exciting.
Really. And these kinds of examples that students see in their
classes, I mean, if they have their mind already made up that, yes,
studying computer science and programming this is what I want to do and
nothing is going to change my mind, fine. No problem. However, for a
typical student these days, kind of thinking maybe I like this, maybe I
don't like that, maybe I want to take this course. I kind of think I
want to do computer science but I'm not sure. I'm going to try this
CS-1 and see how it goes.
Oftentimes the feeling that they get is that computer science is
coding. Well, is computer science coding or not?
Coding or programming some people would say is the same thing. Some
people would argue that it isn't. Regardless. But programming is a
necessary component some people would say it's a necessary evil.
Doesn't matter how you perceive that. There's no computer science
without programming. That's granted.
But is computer science just about coding and programming?
isn't. There's so many more other things going on there.
Hell no it
And it's really, really important to convey these ideas to students in
introductory classes because we are literally at risk of losing that,
and I'm not saying this because this is my subjective opinion.
If you look at the enrollment trends after the big peak around late -I'm always confused how to call these years -- 1990s, right, 1990s to
early 2000s, there was a big peak. And it kind of fell off a cliff.
In the last three or fours years -- maybe two or three, I should say -the enrollment started climbing up very, very slowly. But there is an
upward trend, but still they're not anywhere near where they used to
be.
And granted enrollments in programs such as computer science are
cyclical. But nevertheless we have to fight for whatever students
we've got. Whoever -- whichever student has indicated that they have
some interest in computer science, we have to grab them while they're
there and try to convince them that yes indeed if they have some
interest, we have to kind of keep that going and try to make them as
engaged in the material as we possibly can.
So how do we motivate students? It's always a question. Some people
say well let's play games. And I'm not talking about -- I'll be
talking about game development but there is a bigger trend about using
educational gains.
In fact, so my semester started about a month ago. And as usual there
was an introductory meeting with the provost. Chief academic officer.
And he was all about games. He said, well, games is the latest trend.
We have to embrace it.
What kind of games again. We're not just talking computer science or
technology or computers or whatever. Well, so we can teach through
games. Well, in fact I have a colleague from a journalism program and
she says: Well, she's using educational games that teach journalism.
It was a little bit difficult for me to kind of process that. How do
you play a game and teach journalism. But she explained it to me and
it made perfect sense.
It's like you talk about some made-up story and you're trying to dig up
some sources for that and you work within a team and it's all about
journalism. And, again, I'm probably making no sense here, but the way
how she explained it to me it was actually quite interesting.
If I were to study journalism that kind of would make sense. The
question is, can we teach everything through a game? Can we teach I
don't know English or biology? We probably can. The question is,
would that be more appropriate for, I don't know, elementary or middle
school or a university? That's where it gets me. I'm not sure that,
you know, this game-playing kind of stuff is really appropriate to the
university environment.
I don't want to make a blank statement. I'm sure there are some
instances where it's basically just what the doctor ordered, but is it
the panacea, the solution for all the problems? I'm not quite sure.
Still I'm talking about games. I'm not talking about playing games.
I'm talking about developing them. So developing -- well game
development, in the developing computer games as a motivating technique
is nothing new. It's been practiced in computer science courses for
quite some time now. And it's very, very important to visit two points
that critics of well game development and computer science have raised.
The first -- not an objective -- but a concern that they would normally
voice is that, okay, so students are playing games or developing games
to a software developer there is really a blurry line between the
development of a game and playing a game. Both is essentially the same
thing.
So question is, how do we balance fund that students are having with
the educational value? And it's a very, very valid concern. If all
you're doing is playing games are you really learning anything from
that? So we have to keep that in mind.
The second objection or concern was that they're saying, well, look at
the market of console games that are on the market today. They are
very heavily male oriented. There's blood and gore -- yes, it's fun
but it's fun for male audience. If we're trying to squeeze that into a
computer classroom, we're going to alienate whatever females we're
getting there, because they're not into that. Well, I know some female
students are quite into that. But there are too many critics who would
say that this is a problem.
And this is another important concern. So how can game development
really be integrated into computer science courses? First of all, as I
mentioned I would like to reiterate, this is not a new concept. It's
been done. There are entire programs aimed at teaching students game
development, game design and production. There are individual courses.
So it's been done. There's absolutely nothing new there. The thing to
remember here is that developing of a playable game is a rather complex
task. Well, anybody who have ever played any kind of engaging game,
anybody who understands what it takes to develop a piece of software
would be able to appreciate how much effort it would have taken to
program this game and design the game play, design the graphics and
sounds and everything else, and how much skills it would require -- the
diversity of all the skills that would be required to actually create a
product like that.
Now, if you are in a program, in an entire curriculum, which
incorporates many different courses aimed towards producing somebody
capable of developing a computer game, yes, absolutely. But remember
the focus of what I'm trying to look at is, okay, so we have this kid
in CS 1, how do we motivate them? Can we give them a console game and
say, here, let's develop that? No, it isn't going to work because they
simply do not have the skills for that.
It will be really exciting if they could do that. But they're not
anywhere near the skill level and the diversity of different areas and
computing and related areas that would be necessary to create a
playable game.
Now, there is one class of games that people typically call casual
games that actually may solve the problem. Again, I'm not trying to
say this is the solution to all the problems, but casual games, think
about it. Games like this one, Angry Birds. Any kind of puzzle.
Anything like that, what do they have in common? They're simple.
Meaning simple implies a lot of different things.
Typical that there's not that much animation going on and whatever
animation there is it's typically very, very simple. The logic is
fairly straightforward. The game play is, again, simple. There is no
long scenario that they have to go through or if there is, it's kind of
compartmentalized into levels and you can pause it at any time. As a
consequence, you can play these games in short periods of time, or in
long periods of time. It's really up to you, you can start and stop at
any time. So you can play during a break between classes, while you're
waiting for a bus at the bus stop or during a boring lecture, why not.
It's certainly doable.
A couple of other things quite good things going on for going for
casual games. Statistics show, and again I'm not making this up,
statistics show that these kinds of games, puzzles, whatever, they are
what they call gender neutral. Meaning that both males and females
enjoy and play these games equally.
There will be no possibility to alienate or to attract disproportionate
males or females. Everybody should be fine with these kinds of games.
Because of all of these properties if I might say of these casual
games, they actually might be quite suitable for using them in
introductory classes.
One other thing, it's these casual games that -- well, I don't want to
say dominate -- but they -- if you think about the market share of
different kinds of games that other people have on their mobile phones,
these are the kinds of games people play predominantly on mobile
phones.
What else is good about mobile phones? Is that all students pretty
much have them. Whether we like it or not, they do have them, and they
will use them no matter what you do. If you tell the students that you
have to turn it off during class, will they? No. They won't. They'll
just keep on texting and all you're going to see is like -- and they
will be looking at their crotch somewhere and smiling at it. Yeah,
what's so funny going on down there.
It's probably your phone, you're texting your friend and hopefully
you're not doing it during your test because your friend may be sitting
out in the hallway and giving you the answers.
Anyway, question is this
do anything about it, it
it a fight? We might as
these phones that you'll
technology is already there, and if we don't
will be used in a quite disruptive way. So is
well just embrace it and say let's take all
have and do something productive with them.
Let's try to use them and develop games for them. So why -- what are
the other reasons why we should be using mobile phones? In addition to
well that they already have them. As already mentioned, to a typical
college student a mobile phone is what they think is the technology
today. If you tell them, okay, so we're going to create this program
that [inaudible] command line on this desktop, boring. Now, you tell
them all right so we're going to write some code and you'll have maybe
a very simple but still a game that you can run on your phone.
I mean, you're probably going to have to run an emulator on your
computer, but as soon as you're done you can boot your phone and off
you go. That's exciting. At least well may not be exciting to my
senior colleagues, they probably hate me for saying this -- I know they
do -- but to students, that's their life. That's what they perceive as
the cutting and bleeding edge of technology these days.
Instant gratification is a very, very important factor why students
like that. With mobile phones, with mobile devices, when they put a
piece of software on it, they can see it run right there and then.
They can take this program with them and show it off to their friends
who otherwise might dismiss them as a computer geek, but they're not
computer geeks, they have mobile phones just like everybody else. And
it simply raises their cool factor when they say oh I'm not just
downloading some stupid app from somewhere, I'm developing my own and
you can try it also.
Again, studies and surveys and everything else that I could possibly
find and my own surveys that I gave to students indicate that that this
is exactly what students like.
They do like not just the fun factor, not just the factor that it's in
their pocket, but the fact that they can enjoy the results of their
work immediately and show it off.
To them, it's I don't want to say it's a decisive factor, but it weighs
very heavily on students' approval level, so to speak, of what they
think is is cool, what they think is a good way of doing things and
teaching computing.
So I've been pondering all these things for some time around 2008. And
then I thought, well, wouldn't it be nice to actually put together a
course that will incorporate all these ideas? For the time being again
it was 2008 or 2009, it was just -- I was just looking for a fun
course, to do something different.
So I taught a course on mobile game development. Worked fine. I kind
of liked what I did. So I put together a paper and sent it to CCSE.
It's the conference in computer science education in the United States.
Again it's not a national, it's an international conference but it
takes place every year in the United States. And it is just a
conference, EDC, where Nickolai and I met this summer, which is focused
on exactly the same topics.
But anyhow I believe it was in 2009 where I had a paper at CCSI talking
about these things, it was well received and somebody told me well are
you applying for some money to get this going? I was like should I?
They said absolutely.
So I wrote a grant proposal to National Science Foundation. And they
said go for it. So for the next two years I was kind of locked into
this project which was funded by NSF and working on developing these
mobile game development modules.
The idea here is to create a number of projects that are reportable,
that an educator could take and incorporate into, incorporate these
modules one or more into their computer science courses.
This project -- this NSF-funded project has been going on for two
years, as I mentioned, and I've been developing it together with a
friend of mine from Rose Hall International Technology. The way these
modules work, the focus of each module is not just to play a game.
Yeah, students will get to play and develop a game. Well, in the
opposite order. Develop and then play the game.
But it's not playing for the sake of playing. It's about two things.
Trying to reinforce some of the core topics such as, for example,
arrays or loops or decisions or whatever. And at the same time
introduce one or more advanced topics. Artificial intelligence.
Networking, databases, security.
Why am I doing this? Remember, one of the premises that I made in the
beginning was that students do get disillusioned in early computer
science courses.
If we expose them to all the visions of discipline yes, there is
coding, you have to do that, but once you are done with that you'll be
able to do all these other interesting things, well, we hope they're
interesting to them, which may or may not be directly related to
programming.
So AI. Or databases. How much programming is there in these two
disciplines? Well, probably there's some but it's not programming for
the sake of programming.
So whatever might tickle their fancy, hopefully students might get to
see something other than just programming and see that, oh, so this is
what computer science is about. This is what you can do with a
computer science degree.
So each of these modules focuses on one or more of these,
quote/unquote, advanced areas. There are no interdependencies among
these modules. Instructors can take one or two or several and put them
into their courses.
And the primary audience is CS-1 data structure in the courses at a
similar level. Although, I know these models have been -- somebody
used them in more advanced courses.
So I'm using Java on these courses, on these modules. And the
questions that I'm getting asked a lot is why. Why oh why will you
ever use Java. I'm asking that question myself, why. Well, if I were
to do this now, I would stay away from this as far as possible. Not
because I dislike Java. No, just before coming here I spent a few days
in San Francisco JaveOne conference, and you have to admire Oracle for
all the support that they're drumming up.
But well there are a couple of reasons why Java is the platform for
this project.
Again, I started this in around 2008. So what kind of alternatives are
there or were there, should I say, in 2008 for any kind of mobile
application development? Well, Android was not anywhere to be seen.
IOS was taking off. But as with anything coming from apple, you have
to develop your code on an Apple computer. Which is great, except
they're expensive and very few universities have dedicated labs with
Macs.
Perhaps the most important reason is that Java is the language we're
teaching students these days. If you look at the national curriculum
for computer science it's Java, Java, Java everywhere.
One of the objectives of my project is to try to engage students that
are coming in. A lot of better students, should I say. They take
advanced placement courses in high schools. There they really don't
have an option. If such courses are offered in their high schools,
they are in Java.
So that was pretty much the primary reason why I stuck with Java. And,
again, at that time it was not just the environment that we're teaching
Java as educators. Well, the vast majority of us, at least.
But also for the lack of alternatives. The biggest reason why I regret
that is because, well, oh, well, one other thing. Again, back then in
2008, pretty much -- or 2009. Pretty much whichever platform you look
at, except for IOS, those phones, those operating systems running on
those phones, they could run Java applets, and that wouldn't be a
problem. They could run native code, written in whatever it might be.
Or they could also run Java applets.
These days, how many operating systems, mobile
there that actually run Java applets? Not too
to teach these things, but the skills that the
mobile application developers in Java, they're
anywhere.
operating systems are
many. So yeah, it's fun
students would get as
not really leading them
>>: Android ran Java.
>> Stan Kurkovsky: Yes, but it's a little different. Java libraries
I'm using there, there's a special Java API for Sprite, and canaba and,
et cetera, et cetera, which there's a subset of Java called J2EE. I do
love Java but it's a little bit different. It's something else.
I want to make a step back and say the objective of this project does
not teach students not to make them proficient mobile developers, not
at all. The objective is to allow them to have some fun while actually
learning things and trying to enjoy the richness of the discipline.
Through all the diversity they can find in the mobile game development.
So I would like to use one of the modules and try to illustrate what's
in there. Every single module is based on some well known game.
Some are ages-old board games. Some are, some of the games, some of
the modules are based on a well-known console games or arcade games.
So there is this Battleship game that everybody I hope played once in
their lives. I was completely appalled when I saw a recent movie, it
was a [inaudible] experience, I'm not sure how I managed to be dragged
into that movie, but my decision to use Battleship as a platform for a
game module had nothing to do with the movie. That's a disclaimer that
I feel I had to make. The movie was that bad.
Anyway, so Battleship. Everybody knows how to play it. It's a
two-player game, and you exchange some moves and when you tell your
opponent what move you're making they tell you the result. So
everybody knows this.
So this is
little bit
Well, come
central to
the kind of game that we could use to teach students a
about computer networking. Where are networks in here?
to think of it, the idea of communication protocols is
computer networking.
And when the two players exchange information about their moves, well,
they are communicating using a certain protocol. So we do a couple of
things here. First of all, the students get a big scaffolding code,
which already has quite a bit of the GUI infrastructure and most
importantly message passing protocol. We wouldn't want CS-1 students
to program sockets. No, it's already there for them. What they need
to do, they need to understand what a communication protocol is and to
implement their own.
It might sound like a tall order, but actually it's fun. And most
students are quite capable of doing this. Before they get to play
this, before they get to implement this in mobile devices, I asked them
to -- well, play the game on paper and pencil. And think about the
information that they're exchanging. And try to formalize, put it in
some kind of format, by that time in the course in the CS-1 data
structures they would know about formats. They would know about
different ways how they can formally explain the information that
they're send back and forth and rules and decisions that they're making
based on what they receive. All they have to do is play the game on
paper and pencil ask try to think about the formalities of that
information exchange that's going on and simply take that information
and put it into simple code.
And they can do it. I'm saying it not because I think they can do it.
I'm saying it because I know they can do it because they did it. And
there's a couple other things going on in a typical module. Of course,
there are learning objectives and learning outcomes. In this
particular case we expect students to learn basics of communication
protocols and be able to implement a simple protocol in Java. And
most -- so this would be their exposure to an advanced topic. A core
concept that they would be reinforcing here is, of course,
decision-making.
So this being a module that we would like other educators to adopt, we
have to bundle it with lecture notes and all that good stuff. But
we're trying to make it fun for students and for every module we're
trying to give suggestions as to, okay, what else can they do? What
else can students do with scaffolding or the code they're going to
create? Well, in this particular case, the framework that we're giving
them essentially would allow them to use that framework for any kind of
turn-based game because that's what it is it's a turn-based game. They
can use the message passing sensor between the phones to implement
similar games that they use two players.
Also every single module incorporates this element which I like to call
creative exploration. So using the same game, sometimes it's -- I'll
be honest with you -- it's often quite easy how you can completely turn
the semantics of a game kind of on top of its head.
So for the battleship game, there is a game called Crazy Gardeners. We
don't implement it, we just give students enough graphic experimentives
and background and everything else to do that. So Crazy Gardeners is a
game of two gardeners who have flower beds what are they trying to do,
destroy their flower beds. Sounds ridiculous but actually students
like that, especially those who like to destroy things.
And they don't have to fiddle too much with the code once they have it.
All they need to do is replace the graphics assets. Of course, while
knowing what they're doing.
Just to give you an idea, there is another module that implements a
Connect four. This module, of course, is aimed at teaching some -- not
teaching -- introducing students to basics of artificial intelligence.
With this particular module I would like to illustrate why a game like
this would be a special interest to be offered on a mobile device.
So with all the good things about mobile operating systems and
everything, the devices on which this code runs, they are reserved
constraint. There's not as much memory you would find on a typical
desktop and no virtual memory to speak of.
And the processors as good as they are they're still much slower. When
you give students some scaffolding with different handlers where they
can write their own or substitute different search heuristics they can
easily run into situations where their search space just explodes and
the program runs out of memory, and that's a very, very good teaching
moment to explain to them what search space is and how it relates to
memory, or another situation when -- well, maybe the game would not run
out of space but it might grind to a screeching halt if the search
heuristics just happen to be too slow. Again, a good teaching moment
explaining what is going on and teaching them the balance between space
and time in terms of computer programming.
So it's all good. But we have to figure out whether this is actually
working and see what the students think. So we enlisted a couple of
professionals who all that they do is they do additional research.
They give different surveys to students and they do their own magic.
So I won't bother you with all the boring acronyms and stuff like that.
But what we're trying to measure here is did our -- so when we give
students this game development project, does it have any kind of effect
on student persistence, on student engagement and motivation?
One important thing to keep in mind it was not our objective to try to
improve student grades. We want them to be more interested. We want
them to be more motivated in what they do. Boosting the grades would
be great but this was not our objective.
As a consequence, we were
grades would not go down,
students are spending too
something through playing
trying to make sure that at the minimum the
because that was a possibility. What if
much time playing games instead of learning
these games.
So over the course of four different semesters, we offered these gaming
modules in several sections of CS-1 course at different institutions at
my school and Rose Holland and for every offering we had a test and
control group, a control group would be traditional section taught as
it did before. And the test group would be typically a section of the
course taught by the same instructor, but with this module
incorporated. Other than that the students would have exactly the same
experience, the same tasks, same lectures, same labs, same instructor
same everything.
The differences were actually quite interesting. And I'll just
probably skip to the summary of these results. Even though the overall
report is quite large, with lots and lots of interesting or actually
boring statistics, the underlying theme of the results was this:
Students definitely liked it. And why wouldn't they? Again we were
trying to look at the metrics of their engagement. How interested they
are in learning about things. And there were clear positive trends in
both institutions. However, it was quite interesting that it appeared
based on the analysis of the statistics that it worked better at my
school, not because it was me -- actually it wasn't me offering these
modules there.
But the demographics, student demographics, are a little bit different
between Canadian State University and Rose Hulman, it's pretty much the
top-most school in the United States in terms of engineering, computer
science, education like that. My school is quite an ordinary regional
university.
So we have all kinds of students whereas at Rose Hulman they basically
have the cream of the crop. And we kind of did it deliberately. When
we were writing this proposal, we wanted to have two different, quite
different universities to prepare our results. What it boils down is
something I did not really expect. Kids at Rose Hulman turns out
expected a very, very traditional experience.
They did want to see those boring examples about calculating average
salary. They were absolutely fine with that. And based on the
comments and based on the statistics that we got, the effects were such
that, okay, games, we don't want that. We're here to learn about
boring, dry coding. That's what we want. And why are we doing all
that? Mobile devices, no, no, we don't like that. We don't care about
that.
Whereas more traditional students said, oh, great, we get to play
games. The most important thing is that the grades stayed level
between test and control group. There was no decrease and no
statistically significant increase.
But motivation clearly went up. Student engagement with the course
material and their opinion about the course instructor, course
material, et cetera, et cetera, went up regardless of -- well,
especially at my university, but overall with the statistically
significant measure, these metrics did go up.
So, again, going back to that big concern that I indicated at the very
beginning, was there a balance between fun and learning? The students
have fun, most definitely. There is no doubt about that. And, again,
it's based on the statistics that we collected.
Did they learn something? Again, we're not trying to teach them how to
become proficient game developers. We're not trying to teach them how
to become really good at mobile application development. We're simply
trying to keep doing the good job that we hope we're doing and teaching
them CS-1 material. Did they learn all that? Yes they did, because
their grades as I mentioned they stayed level or even improved, but
again not at the statistically significant level.
So in that respect I believe that we did achieve the objectives that we
set in front of ourselves, which were trying to boost student
engagement motivation.
So I hope I did not bore you to death, and if you have any questions,
feel free to throw them at me yes.
>>: You mentioned some surveys and saying that the students wanted this
kind of teaching. When these students showed what they had done to
their friends, did they sit there and play the game, or did they show
them the code?
>> Stan Kurkovsky: No, they did not show the code. Well, typically it
would be quite -- again, when we're talking about showing off what they
have in the mobile device. On the mobile device normally you wouldn't
be able to show the code. I mean, you can do this, but it's not
what -- it's not what students would want to show off to their friends.
I would hate to go off on a tangent here, but I have done a lot of
research which really isn't CS-related. It's more sociology, if you
will. You know, things that students perceive as cool. Things like
that.
So to a computer science student, if they have a non-CS friends, they
would be terrified of showing them code. Because if they do that their
non-CS friends might perceive them as too geeky and a typical CS major
would not want that to happen. However, if you show them a working
product, you know, typical -- a typical non-geek person they do not
have a clear association between code, boring, working product, cool.
They don't have the connection. So if you show -- if a non-geek sees a
nice game or something on the phone, that's great, fine. If they see
that, oh, that's what your code does, that might have some negative
connotations. Anything else? Well, thank you very much.
[applause]
Download