Students’ Experiences from the use of MIT App Inventor in classroom Katerina Perdikuri 2 nd Senior...
Preview:
Citation preview
- Slide 1
- Students Experiences from the use of MIT App Inventor in
classroom Katerina Perdikuri 2 nd Senior High School of Salamina,
Greece
- Slide 2
- Introduction - research work objectives This research work
investigates whether MIT App Inventor : could be used for teaching
programming could be used as a facility to develop computing skills
and computational thinking to senior high school students The paper
reports advantages and disadvantages of its use in classroom
through students and teachers experiences A comparative study among
other Android Application Development Tools
- Slide 3
- Related research work Several research work has explored
whether App Inventor could be a suitable environment for bringing
computational thinking to K-12 and a number of projects have funded
efforts to engage K-12 teachers interested in bringing
computational thinking into their classrooms in USA. During school
year 2013-2014 a teaching hour was devoted in several schools in
Greece, named as the coding hour, to introduce programming to
students from different educational levels. A number of teachers
used App Inventor as an easily accessible platform to teach
programming to their students. However, to better understand such
possibilities, more data from actual classroom implementation are
needed. The research reported in this work is an attempt to address
this issue.
- Slide 4
- An Introduction to MIT App Inventor (i) Developed at Google
Labs by MITs Hal Abelson in 2009; It is now housed in the Center
for Mobile Learning (CML) of MIT; Its current version is a
cloud-based tool; It does not demand any prior programming
experience you do not have to write code; Designers window Blocks
Editor
- Slide 5
- An Introduction to MIT App Inventor (ii) Potential users:
students, teachers, developers, or hobbyists, to develop apps for
personal use, recreation, learning, or social good. Range of
applications: Business, entertainment, community activism, etc
Every application is stored in the App Inventor server; Real-time
compilation (test as you build); Tested in emulator or exported in
apk format for distribution;
- Slide 6
- MIT App Inventor: technical characteristics The Blocks Editor
has been written using the Blockly library, a web-based graphical
programming editor comparable to Scratch (http://scratch.mit.edu)
App Inventor provides 2 components to facilitate db activity:
TinyDB, to store data directly on the Android device; TinyWebDB, to
store data in a web database Other high-level components include:
GPS location and orientation sensors, text-to speech recognition,
scanning barcodes, etc.
- Slide 7
- Android Application Development Environments Free platformOpen
sourceAppsPrior programming experience Android SDKAll (mostly Java)
Android StudioAll (mostly Java) NDKAll (game engines and
simulations) Users with C, C++ experience HACNo AllNone MIT App
Inventor Growing dailyNone The above table summarizes 4
characteristics of Android Application Development Environments
from an educational point of view and their ability of using them
in classroom.
- Slide 8
- Methodology followed The teaching intervention was conducted in
2 classes of the second grade of Senior High School as part of an
introductory programming course. For each class 6 teaching hours
were devoted during the second term of the school year 2013-2014.
As part of the teaching intervention, students had to create
(working in pairs) a number of applications either following
specified instructions and worksheets given by the teacher or on
their own initiative.
- Slide 9
- Lesson plans NameTime devoted Goals to be achieved Getting
Started1 hour Obtaining an App Inventor account Getting familiar
with the App Inventor interface Setting up the computer and phone
Hello Purr1 hour Using the Pallete and learning to use the various
components Editing the properties of components Using the viewer
Using the blocks editor Packaging and testing an app
- Slide 10
- Hello Purr lesson plan
- Slide 11
- Lesson plans NameTime devoted Goals to be achieved Getting
Started1 hour Obtaining an App Inventor account Getting familiar
with the App Inventor interface Setting up the computer and phone
Hello Purr1 hour Using the Pallete and learning to use the various
components Editing the properties of components Using the viewer
Using the blocks editor Packaging and testing an app PainPot1 hour
Using advanced components (such as camera and canvas) Handling
touch and drag events on the device surface. Using event handlers
that take arguments. Introduction to variables
- Slide 12
- Paint Pot lesson plan On a historical note, PaintPot was one of
the first programs developed to demonstrate the potential of
personal computers, as far back as the 1970s. In this version the
user can also take his own picture and draw on it.
- Slide 13
- Lesson plans NameTime devoted Goals to be achieved Getting
Started1 hour Obtaining an App Inventor account Getting familiar
with the App Inventor interface Setting up the computer and phone
Hello Purr1 hour Using the Pallete and learning to use the various
components Editing the properties of components Using the viewer
Using the blocks editor Packaging and testing an app PainPot1 hour
Using advanced components (such as camera and canvas) Handling
touch and drag events on the device surface. Using event handlers
that take arguments. Introduction to variables Building my own App
2 hours Development of Computational skills in problem solving
Experimentation with new components and blocks
- Slide 14
- Apps developed by students piano Shooter game
- Slide 15
- Lesson plans NameTime devoted Goals to be achieved Getting
Started1 hour Obtaining an App Inventor account Getting familiar
with the App Inventor interface Setting up the computer and phone
Hello Purr1 hour Using the Pallete and learning to use the various
components Editing the properties of components Using the viewer
Using the blocks editor Packaging and testing an app PainPot1 hour
Using advanced components (such as camera and canvas) Handling
touch and drag events on the device surface. Using event handlers
that take arguments. Introduction to variables Building my own App
2 hours Development of Computational skills in problem solving
Experimentation with new components and blocks Evaluating
AppInventor 1 hour Recording students experiences and views from
the use of App Inventor in classroom
- Slide 16
- Students evaluation (i) The questionnaire included a total of
10 questions of which 7 were closed and 3 open-ended. 1. The first
question aimed to investigate students' previous experience on
programming languages and platforms. 2. The six subsequent
questions were devoted to assessing App Inventor as to the degree
of difficulty and its characteristics, the future use of the
platform, etc. 3. The three final questions were open-ended, in
which students were asked what they liked and what they disliked
using App Inventor. Formation of the questionnaire was based on the
Technology Acceptance Model proposed by Davis (1989).
- Slide 17
- Students evaluation (ii) During our research work 40
questionnaires were collected from 2 classes and a total of 42
students. Students prior experience to programming languages was
nonexistent, while few students were familiar with Pascal and
Java.
- Slide 18
- Students evaluation (iii) As far as the characteristics of App
Inventor are concerned, students rated: 1. "The making mobile
application development easy and accessible to anyone" 2. The reuse
of apps within a community of users", 3. "Online testing of
applications", 4. The syntax-free programming, and The web-based
architecture of the platform 5. "Visual environment for the
creation of an applications user interface
- Slide 19
- Students notes in open questions I could not believe that
creating apps for smartphones was so accessible and simple to test
I learned a program that I could use for creating something
interesting for my daily life
- Slide 20
- Advantages and Disadvantages of MIT App Inventor from using it
in classroom from a teachers point of view AdvantagesDisadvantages
App Inventor provides an intuitive programming metaphor, reducing
the frustration from text-based programming environments Requires a
permanent Internet access (long- term responses) and a google
account Direct applications to students interests and lives
(real-world motivation) The emulator is quite slow. Application
development is introduced as 2 main activities: (1) components
analysis and (2) components coding => problem solving skills The
Blocks editor requires scrolling up or down in the case of complex
or big applications Simple but also powerful tool (databases,
interactive maps, client-server communication, etc) It does not
constitute a cross-platform solution and it does not generate Java
source code (the source code cannot be exported to Eclipse or other
IDE to work on it further)
- Slide 21
- Conclusions The students successful experience albeit a small
sample- strengthens the observation that App Inventor could
successfully be used in introductory programming courses, making
programming an enjoyable and creative activity. Developing
applications for smartphones or tablets, which is important in
students lives was an incredibly motivating and empowering process
that led to a student-driven learning process in which the students
learn how to solve problems. The ease with which students used App
Inventor, along with the enthusiasm they displayed was truly
remarkable. Programming courses, promote the development of
computational skills in solving problems, such as abstraction and
algorithmic thinking.
- Slide 22
- Future work During the coming school year plans to continue the
use of App Inventor in programming courses with more classes have
been made and some of the future plans include: The development of
a community within the school to encourage students to share
applications and ideas; Studying other students applications or
adapting existing code could promote resourcefulness, creativity,
and self-initiative for students. Development of lessons plans to
teach basic programming structures, such as: if-condition, repeats,
etc; Explore the cooperation with different schools in order to
assess how learning programming is achieved through mobile app
development; A comparative study of App Inventor and other
programming environments, which are used to introduce high school
students to programming;
- Slide 23
- Thank you for your attention Any questions? Katerina Perdikuri
Computer and Informatics Engineer (MSc., Phd) E-mail:
perdikur@ceid.upatras.gr