Hack Day PowerPoint

advertisement
Hack Day
Tweet about Hack Day
today! _technovation_
Welcome to Hack Day!
Meet your mentor and your
teammates!
Share:
– What’s your name?
– What school do you go to (or company do
you work for)?
– What’s your favorite app?
– Why are you excited about the
Technovation Challenge?
Technovation Mission
and Vision
Technovation strives to promote women in
technology by giving girls the confidence and
skills they need to succeed in computer
science and entrepreneurship.
Our goal is to empower every girl to see
themselves not just as users of technology--but as inventors, designers, builders, and
entrepreneurs.
Technovation PSA Video
Peer To Peer
University: P2PU
P2PU Task #1: Survey
and Team Registration
• Before you begin Hack Day, you’ll need to
take your pre-survey:
surveymonkey.com/s/presurvey2013
• …and register your team (see next two
slides)
Register your team
1. Create an account on P2PU: www.p2pu.org
Register your team
2. Complete the Technovation registration form: bit.ly/TCteam13
Earn Badges on P2PU
A digital badge indicates your team's
achievement of a skill, quality or interested
through your Technovation Challenge
Journey. These badges let the
Technovation Community know a little more
about your team and help us all work
together.
Earn Badges on P2PU
Each time you
complete one of
the Technovation
Tasks, your
mentor can give
your team a
badge to award
your hard work.
App Inventor
• Beginner-level app building language
• Completely web-based tool, requires an
internet connection to use
• Must be signed into your Gmail account
first
• Two major parts: Designer and Blocks
Editor
App Inventor: Designer
Design the user interface of the app!
App Inventor: Blocks Editor
Program the functionality of the app how it works!
App Inventor: Emulator
In case you don’t have
a real phone to test with
you can use the
emulator. It simulates a
phone on your
computer.
Set-up Wireless
– Click on Settings App
– Select Wireless &
networks
– Select Wi-Fi settings
– Select Wi-Fi. A green
check will appear by it.
– Select Wi-Fi settings.
Choose the network
and password (if there
is one) written on the
board.
Phone Settings for Development
– Click on the Settings App
– Select Applications. This
will open a new page.
– Select "Unknown
sources". A green check
will appear by it.
– Select Development. This
will open a new page.
– Select "USB debugging". A
green check will appear.
– Select "Stay awake". A
green check will appear.
– Hit back button until back
at Settings screen.
Start thinking…
You’ll get to create your very
own app after lunch today
(not for the competition, just
as a practice exercise).
What kind of simple app could
you create based on what you
are learning today?
Activity: CrystalBall
Hack
In this tutorial, you’ll create
an app that works like a
crystal ball. Users think of a
question such as “Will I win
my soccer game?” and then
shake the screen to see the
crystal ball’s response. We’ll
walk through it together.
CrystalBall: Getting
Started
• To begin, go to gmail.com and sign into
your email account
• Create a Gmail account if you don’t have
one
• Open up a new tab in your browser, go to
http://appinventor.mit.edu/ and click
“invent”
• Under My Projects, click “New” and name
your project CrystalBall
Activity: CrystalBall
Hack
In the Designer
• Add a label with the text “What do
you want to know?”
• Add a label with the text “Shake the
crystal ball and all will be revealed”
• Put the 2 labels in a vertical screen
arrangement
• Add a button named “FortuneText”
and set the background to be the
Crystal Ball Image
• Set the text of the button to be “”.
• Add a label under the the button
that says “Tap to Clear..”
• Add an accelerometer
sensor
Activity: CrystalBall
Hack
In the Blocks Editor
• Get the Shaking Event
Handler for the
Accelerometer.
• Put in a Set Fortune.Text
block in the event handler.
• Connect a call pick random
item from the list to the Set
Fortune.Text block
• Connect a make a list block
to the list value in the pick
random item block.
• Add the text “Yes”, “No”,
“Maybe”, and “time will tell”
to the list as items
Activity: CrystalBall
Hack
In the Blocks Editor
• Find the
FortuneText
clicked event
handler.
• Set the
FortuneText.Text
to a blank text
box.
Activity: CrystalBall
Hack
On the phone
• Package for the phone
• Test it!
Event-driven Programming
• An event is an action that
occurs outside the program
• Usually from the User!
• Examples:
–Key presses
–Screen Touches
Events in Real Life
• Just like with a computer,
program events happen in
your life everyday
• Examples
–Phone rings
–Your friend tosses a ball at you
Events in Real Life
• What do you do when an event
happens?
–Phone rings
• Answer the phone!
–Your friend tosses a ball at you
• Catch the ball!
• These are called Event Handlers
– Notice they can be different for each event
Event-driven Programming
• In CrystalBall, what was our
event?
–Phone was shaken
• What did our event handler
do?
–Displayed an answer from the
list!
Variables
• A named container that holds a value
• The value can change
• Your wallet
– Sometimes might have $5
– Other times it might have $20
• Hair Color
– Sally’s is Brown
– Michael’s is …
Customizing Your App
• Most fun part of app-building!
• It’s good to always be thinking
how you can make things better
• Customizing your app helps you
learn the tools better and prepare
to make an app on your own
Activity: CrystalBall
Hack
How can we customize
this app?
• Change the look
– Background picture
• Add a sound
• Add more answers
• Other ideas?
Work Time
• Create a customization for your
app—make it your own!
• Show your customization to another
team, and post a screenshot on
P2PU to earn a badge
• Answer the tutorial questions on your
worksheet, discuss with your group
• Turn worksheet into your teacher
PaintPotHack
In this tutorial, you
create an app that
allows the user to
draw lines and dots
of various colors on
the screen.
Pair Programming
• Driver – hands on keyboard & mouse
• Navigator – reads instructions and tells
driver what to do
• Switch every 5-10 minutes
• Two brains are better than one
Pair Programming in
Practice
Resources
If you have problems
• Watch the YouTube videos (Part 1 & 2)
• Post questions to the P2PU forum
PaintPot
How can we
customize the app?
– Add more color
buttons
– Have a random color
button
– Use camera to add
background image
– Others?
Camera Demo
Work Time
• Create a customization for your
app—make it your own!
• Show your customization to another
team, and post a screenshot on
P2PU to earn a badge
• Answer the tutorial questions on your
worksheet, discuss with your group
• Turn worksheet into your teacher
MoleMash
In this app you will
create a game that has
a mole that jumps
randomly around the
screen every half
second. If the user
successfully touches the
mole, then the score
increases by one point.
Resources
If you have problems
• Watch the YouTube videos (Part 1, 2 & 3)
• Post question P2PU forum
Procedure
• A named sequence of steps
• Why is it useful to make
procedures?
–Code Reuse, less coding
–Only need to change code in
one place if there are bugs or
updates
Procedures in Real Life
• What do you do when brushing your
teeth?
– Put toothpaste on brush, add water,
brush, spit, rinse your brush
• It’s actually several steps represented by
“brushing your teeth”
• But your mom only needs to say “brush
your teeth” and you know what she
means
Procedures in MoleMash
What procedures did we use in
MoleMash? What did they do?
–MoveMole
• Update the position of the mole
–UpdateScore
• Print the new score
Debugging
What are some ways you have found
that work well to find errors in your
app?
–
–
–
–
–
Proper Naming
Test frequently
Reread your code
Add Comments
Deactivate code that’s not
in use
– Use the Watch feature to
see variables
MoleMash
How can we customize it?
– Add a second mole
– Speed up the mole
– Change the look
• Change the mole
• Change the background
– Add a sound
– Others?
Work Time
• Create a customization for your
app—make it your own!
• Show your customization to another
team, and post a screenshot on
P2PU to earn a badge
• Answer the tutorial questions on your
worksheet, discuss with your group
• Turn worksheet into your teacher
LUNCH BREAK (30 min.)
Tweet us: @_technovation_
#technovation
Join our Facebook community:
Technovation Challenge
Activity: Create Your
Own App
• Work alone or in pairs to design and develop your
own application
• Try to use the tools you’ve learned
–
–
–
–
–
–
Events
Variables
Lists
Procedures
Camera
Buttons
– Labels
– Accelerometer
– ImageSprites
– Timer
– Sound
Activity: Create Your
Own App
• Have another pair/person test your app
– Do they like it?
– Is it easy to use?
– Do they have suggestions for improvement?
• Describe your app to your group
• Continue to work on your app at home
• Show your friends & family!
Work Time
• Read the tutorial questions on your
worksheet
• Discuss the answers in your group
• Turn in to your teacher
• Be prepared to share your answers
with the group
Activity: No Text While
Driving Hack
In this tutorial, you’ll
create an app that
autoresponds to text
messages while the user
is driving. The user also
has the option to have the
app speak the message
that was received.
Resources
If you have problems
• Watch the YouTube videos (Part 1, 2, 3, 4 & 5)
• Post questions to P2PU forum
Activity: No Text While
Driving
How can we customize
this app?
– Custom responses for
different phone numbers
– Others?
Work Time
• Create a customization for your
app—make it your own!
• Show your customization to another
team, and post a screenshot on
P2PU to earn a badge
• Answer the tutorial questions on your
worksheet, discuss with your group
• Turn worksheet into your teacher
Wrap Up
• Think-Pair-Share
–Share 2 things you learned with a
partner
–Be prepared to share with the
group
• Get the contact info for your
team and set up your first
Download