際際滷

際際滷Share a Scribd company logo
Sage Franch | @theTrendyTechie
Building a Game with
TouchDevelop
Meet Sage Franch | @theTrendyTechie
 Technical Evangelist
 Interfacing with developers
 Bringing Microsofts technology to you!
 Proud geek and Trendy Techie
 Find me online at my blog trendytechie.ca
 Advocate for equality in technology
 Student at Dalhousie University
Game Development with TouchDevelop
Why TouchDevelop?
 Its a snap to learn.
 You learn coding concepts without worrying about semantics.
 It makes building mobile games and apps easy.
 It runs on anything (laptop, desktop, tablet, phone).
 You can share your code and creations with friends.
 Its free
 All you need is a browser.
Which browsers can I use?
 TouchDevelop is supported on the latest versions of most
browsers.
 To avoid a delay in your classes, make sure ahead of time that
the browsers are updated
 For a full list of supported browsers, see here:
https://www.touchdevelop.com/app/current.browsers
The Agenda
 TouchDevelop tour
 Important Coding Concepts:
 Objects, Functions and Parameters
 Variables
 The TouchDevelop coordinate system
 Conditional statements
 On every frame
 Loops
 Play time! :D
 Resources for teaching and learning
touchdevelop.com
TouchDevelop Tour
build
testsave
sign in
build
testsave
sign in
What You Need to Know
Important Coding Concepts
Objects, Functions and Parameters
object function parameter
 Object: a representation of something in the game
 Function: performs an action on the object it is associated with
 Parameter: specifies the value of the function
Variables
 A variable holds data that can be used throughout a script.
 Every variable has a name, a type, and a value.
 A variables type describes the kind of data the variable can hold.
 For example: A number, a string, a sprite
 In TouchDevelop, a variables type is determined when it is
initialized.
The TouchDevelop coordinate system
(0, 0) x axis
y axis
yINCREASING
1234567
Conditional Statements
A conditional statement is special code for making decisions based
on some condition.
So whats a condition? Anything statement that can be either true
or false.
If I am hungry, then I eat.
The action taken if the
condition is false.
The action taken if the
condition is true.
Otherwise, I sleep.
The condition.
(Its either true or false.)
In code, conditional statements are also called
if-then-else statements
Condition
Code to execute if
the condition is
true goes here.
Code to execute if
the condition is
false goes here.
BUT you have to pay attention to when the condition
is checked
Computer games are a series of very fast frames
Frame 1 Frame 2 Frame 3
Frame 4 Frame 5 Frame 6
A game frame-by-frame
Use on every frame to perform checks continuously
Loops
A loop is a special tool in coding
that lets us write code once and
repeat it as many times as wed
like
Repeat the following block of code X times:
End of repeated block
You get to specify this value.
Whatever code you put here
gets repeated X times.
Tells the program that any
code after this isnt part of the
code to be repeated.
The syntax for a loop
The number of times the code is repeated.
The code that will be repeated.Tells the program that any
code after this isnt part of the
code to be repeated.
aka.ms/jetpackstarter
Lets play!
So how do I get started?
Its easy!
1. Go to http://www.touchdevelop.com
2. Click .
3. And .
Resources for Teaching and Learning
Two Recommended Formats
One-Day Event
 Provide students with a half-
baked game to fix and customize
 Jetpack Jumper prompted tutorial
 Estimated time: 2 hours maximum
Multi-Day Event
 Build a side scroller game from
scratch
 Use CODExist MVA as reference
 Estimated time: 6-12 hours
(flexible)
Pre-course checklist
 Will you provide students with devices or will they bring their
own?
 Do you have a reliable internet connection?
 If the students will be watching videos or working with tutorials,
have you asked them to bring headsets?
When teaching TouchDevelop
 Emphasize the excitement of coding
 Be prepared to handle students with different levels of coding
experience
 Make sure to leave time for customization
 Encourage students to share their games, both in show-and-tell
in person and online on social media
 Provide NEXT STEPS  how can they continue once the program
is over? Publish their game to app stores, build more games, etc.
TouchDevelop Resources
 Jetpack Jumper Tutorial with prompts: aka.ms/startcoding
 Broken Jetpack game without prompts: aka.ms/jetpackstarter
 Complete Jetpack Jumper: aka.ms/jetpackcomplete
 Hour of Code video: http://channel9.msdn.com/events/Hour-of-
Code/2014/LearningToCode
 CODExist: The Birth of Bot course on Microsoft Virtual Academy
(build a side scroller game from scratch):
http://www.microsoftvirtualacademy.com/training-
courses/codexist-the-birth-of-bot
Sage Franch
@theTrendyTechie
sage.franch@outlook.com
Adarsha Datta
@AdarshaDatta
addatta@microsoft.com

More Related Content

Similar to Game Development with TouchDevelop (20)

Oops concepts variables and How to handle variable in testing
Oops concepts variables and How to handle variable in testingOops concepts variables and How to handle variable in testing
Oops concepts variables and How to handle variable in testing
NILESH SAWARDEKAR
From SLO to GOTY
From SLO to GOTYFrom SLO to GOTY
From SLO to GOTY
ScyllaDB
The Science of Compliance - Early Code to Secure your Node (11/6/19)
The Science of Compliance - Early Code to Secure your Node (11/6/19)The Science of Compliance - Early Code to Secure your Node (11/6/19)
The Science of Compliance - Early Code to Secure your Node (11/6/19)
judy (fink) johnson
scratch.pptx
scratch.pptxscratch.pptx
scratch.pptx
DeepikaArya21
Training report anish
Training report anishTraining report anish
Training report anish
Anish Yadav
Bug Hunting Safari
Bug Hunting SafariBug Hunting Safari
Bug Hunting Safari
Janie Clayton
PROGRAMMING FUNDAMENTALS BASICS LECTURE 1
PROGRAMMING FUNDAMENTALS BASICS LECTURE 1PROGRAMMING FUNDAMENTALS BASICS LECTURE 1
PROGRAMMING FUNDAMENTALS BASICS LECTURE 1
AmmarAhmad42878
Software as a craft (February, 2018)
Software as a craft (February, 2018)Software as a craft (February, 2018)
Software as a craft (February, 2018)
Rachel M. Carmena
The Good, the Bad and the Ugly things to do with android
The Good, the Bad and the Ugly things to do with androidThe Good, the Bad and the Ugly things to do with android
The Good, the Bad and the Ugly things to do with android
Stanojko Markovik
It's XP Stupid (2019)
It's XP Stupid (2019)It's XP Stupid (2019)
It's XP Stupid (2019)
Mike Harris
It's XP, Stupid
It's XP, StupidIt's XP, Stupid
It's XP, Stupid
Mike Harris
Testing for the deeplearning folks
Testing for the deeplearning folksTesting for the deeplearning folks
Testing for the deeplearning folks
Vishwas N
TeelTech - Advancing Mobile Device Forensics (online version)
TeelTech - Advancing Mobile Device Forensics (online version)TeelTech - Advancing Mobile Device Forensics (online version)
TeelTech - Advancing Mobile Device Forensics (online version)
Mike Felch
Build tic tac toe with javascript (4:11 dc)
Build tic tac toe with javascript (4:11 dc)Build tic tac toe with javascript (4:11 dc)
Build tic tac toe with javascript (4:11 dc)
Daniel Friedman
Dodo does-math
Dodo does-mathDodo does-math
Dodo does-math
Mohammed Kemal
What schools should be teaching IT students
What schools should be teaching IT studentsWhat schools should be teaching IT students
What schools should be teaching IT students
Andy Lester
Assistive Technology Selection for Employment
Assistive Technology Selection for EmploymentAssistive Technology Selection for Employment
Assistive Technology Selection for Employment
Jeremy St. Pierre
Twelve practices of XP_Se lect5 btech
Twelve practices of XP_Se lect5 btechTwelve practices of XP_Se lect5 btech
Twelve practices of XP_Se lect5 btech
IIITA
Mobile Single Source Strategy
Mobile Single Source StrategyMobile Single Source Strategy
Mobile Single Source Strategy
Raja Nagendra Kumar
Game Development in VR
Game Development in VR Game Development in VR
Game Development in VR
Intel速 Software
Oops concepts variables and How to handle variable in testing
Oops concepts variables and How to handle variable in testingOops concepts variables and How to handle variable in testing
Oops concepts variables and How to handle variable in testing
NILESH SAWARDEKAR
From SLO to GOTY
From SLO to GOTYFrom SLO to GOTY
From SLO to GOTY
ScyllaDB
The Science of Compliance - Early Code to Secure your Node (11/6/19)
The Science of Compliance - Early Code to Secure your Node (11/6/19)The Science of Compliance - Early Code to Secure your Node (11/6/19)
The Science of Compliance - Early Code to Secure your Node (11/6/19)
judy (fink) johnson
Training report anish
Training report anishTraining report anish
Training report anish
Anish Yadav
Bug Hunting Safari
Bug Hunting SafariBug Hunting Safari
Bug Hunting Safari
Janie Clayton
PROGRAMMING FUNDAMENTALS BASICS LECTURE 1
PROGRAMMING FUNDAMENTALS BASICS LECTURE 1PROGRAMMING FUNDAMENTALS BASICS LECTURE 1
PROGRAMMING FUNDAMENTALS BASICS LECTURE 1
AmmarAhmad42878
Software as a craft (February, 2018)
Software as a craft (February, 2018)Software as a craft (February, 2018)
Software as a craft (February, 2018)
Rachel M. Carmena
The Good, the Bad and the Ugly things to do with android
The Good, the Bad and the Ugly things to do with androidThe Good, the Bad and the Ugly things to do with android
The Good, the Bad and the Ugly things to do with android
Stanojko Markovik
It's XP Stupid (2019)
It's XP Stupid (2019)It's XP Stupid (2019)
It's XP Stupid (2019)
Mike Harris
It's XP, Stupid
It's XP, StupidIt's XP, Stupid
It's XP, Stupid
Mike Harris
Testing for the deeplearning folks
Testing for the deeplearning folksTesting for the deeplearning folks
Testing for the deeplearning folks
Vishwas N
TeelTech - Advancing Mobile Device Forensics (online version)
TeelTech - Advancing Mobile Device Forensics (online version)TeelTech - Advancing Mobile Device Forensics (online version)
TeelTech - Advancing Mobile Device Forensics (online version)
Mike Felch
Build tic tac toe with javascript (4:11 dc)
Build tic tac toe with javascript (4:11 dc)Build tic tac toe with javascript (4:11 dc)
Build tic tac toe with javascript (4:11 dc)
Daniel Friedman
What schools should be teaching IT students
What schools should be teaching IT studentsWhat schools should be teaching IT students
What schools should be teaching IT students
Andy Lester
Assistive Technology Selection for Employment
Assistive Technology Selection for EmploymentAssistive Technology Selection for Employment
Assistive Technology Selection for Employment
Jeremy St. Pierre
Twelve practices of XP_Se lect5 btech
Twelve practices of XP_Se lect5 btechTwelve practices of XP_Se lect5 btech
Twelve practices of XP_Se lect5 btech
IIITA
Mobile Single Source Strategy
Mobile Single Source StrategyMobile Single Source Strategy
Mobile Single Source Strategy
Raja Nagendra Kumar

More from Sage Franch (6)

Crafting a Compelling (and Honest) Speaker Bio
Crafting a Compelling (and Honest) Speaker BioCrafting a Compelling (and Honest) Speaker Bio
Crafting a Compelling (and Honest) Speaker Bio
Sage Franch
The 2030 Workplace - Evolving Your Organization with Emerging Tech
The 2030 Workplace - Evolving Your Organization with Emerging TechThe 2030 Workplace - Evolving Your Organization with Emerging Tech
The 2030 Workplace - Evolving Your Organization with Emerging Tech
Sage Franch
Singularity-Proof Yourself by Sage Franch
Singularity-Proof Yourself by Sage FranchSingularity-Proof Yourself by Sage Franch
Singularity-Proof Yourself by Sage Franch
Sage Franch
Blockchain, Cryptocurrency, and the Cloud
Blockchain, Cryptocurrency, and the CloudBlockchain, Cryptocurrency, and the Cloud
Blockchain, Cryptocurrency, and the Cloud
Sage Franch
Artificial Intelligence as an Interface - How Conversation Bots Are Changing ...
Artificial Intelligence as an Interface - How Conversation Bots Are Changing ...Artificial Intelligence as an Interface - How Conversation Bots Are Changing ...
Artificial Intelligence as an Interface - How Conversation Bots Are Changing ...
Sage Franch
Turning Your Passion Into Your Career
Turning Your Passion Into Your CareerTurning Your Passion Into Your Career
Turning Your Passion Into Your Career
Sage Franch
Crafting a Compelling (and Honest) Speaker Bio
Crafting a Compelling (and Honest) Speaker BioCrafting a Compelling (and Honest) Speaker Bio
Crafting a Compelling (and Honest) Speaker Bio
Sage Franch
The 2030 Workplace - Evolving Your Organization with Emerging Tech
The 2030 Workplace - Evolving Your Organization with Emerging TechThe 2030 Workplace - Evolving Your Organization with Emerging Tech
The 2030 Workplace - Evolving Your Organization with Emerging Tech
Sage Franch
Singularity-Proof Yourself by Sage Franch
Singularity-Proof Yourself by Sage FranchSingularity-Proof Yourself by Sage Franch
Singularity-Proof Yourself by Sage Franch
Sage Franch
Blockchain, Cryptocurrency, and the Cloud
Blockchain, Cryptocurrency, and the CloudBlockchain, Cryptocurrency, and the Cloud
Blockchain, Cryptocurrency, and the Cloud
Sage Franch
Artificial Intelligence as an Interface - How Conversation Bots Are Changing ...
Artificial Intelligence as an Interface - How Conversation Bots Are Changing ...Artificial Intelligence as an Interface - How Conversation Bots Are Changing ...
Artificial Intelligence as an Interface - How Conversation Bots Are Changing ...
Sage Franch
Turning Your Passion Into Your Career
Turning Your Passion Into Your CareerTurning Your Passion Into Your Career
Turning Your Passion Into Your Career
Sage Franch

Recently uploaded (20)

Stronger Together: Combining Data Quality and Governance for Confident AI & A...
Stronger Together: Combining Data Quality and Governance for Confident AI & A...Stronger Together: Combining Data Quality and Governance for Confident AI & A...
Stronger Together: Combining Data Quality and Governance for Confident AI & A...
Precisely
Cloud of everything Tech of the 21 century in Aviation
Cloud of everything Tech of the 21 century in AviationCloud of everything Tech of the 21 century in Aviation
Cloud of everything Tech of the 21 century in Aviation
Assem mousa
Wondershare Filmora Crack 14.3.2.11147 Latest
Wondershare Filmora Crack 14.3.2.11147 LatestWondershare Filmora Crack 14.3.2.11147 Latest
Wondershare Filmora Crack 14.3.2.11147 Latest
udkg888
Gojek Clone Multi-Service Super App.pptx
Gojek Clone Multi-Service Super App.pptxGojek Clone Multi-Service Super App.pptx
Gojek Clone Multi-Service Super App.pptx
V3cube
Technology use over time and its impact on consumers and businesses.pptx
Technology use over time and its impact on consumers and businesses.pptxTechnology use over time and its impact on consumers and businesses.pptx
Technology use over time and its impact on consumers and businesses.pptx
kaylagaze
[Webinar] Scaling Made Simple: Getting Started with No-Code Web Apps
[Webinar] Scaling Made Simple: Getting Started with No-Code Web Apps[Webinar] Scaling Made Simple: Getting Started with No-Code Web Apps
[Webinar] Scaling Made Simple: Getting Started with No-Code Web Apps
Safe Software
UiPath Automation Developer Associate Training Series 2025 - Session 2
UiPath Automation Developer Associate Training Series 2025 - Session 2UiPath Automation Developer Associate Training Series 2025 - Session 2
UiPath Automation Developer Associate Training Series 2025 - Session 2
DianaGray10
World Information Architecture Day 2025 - UX at a Crossroads
World Information Architecture Day 2025 - UX at a CrossroadsWorld Information Architecture Day 2025 - UX at a Crossroads
World Information Architecture Day 2025 - UX at a Crossroads
Joshua Randall
AIXMOOC 2.3 - Modelli di reti neurali con esperimenti di addestramento
AIXMOOC 2.3 - Modelli di reti neurali con esperimenti di addestramentoAIXMOOC 2.3 - Modelli di reti neurali con esperimenti di addestramento
AIXMOOC 2.3 - Modelli di reti neurali con esperimenti di addestramento
Alessandro Bogliolo
Backstage Software Templates for Java Developers
Backstage Software Templates for Java DevelopersBackstage Software Templates for Java Developers
Backstage Software Templates for Java Developers
Markus Eisele
DevNexus - Building 10x Development Organizations.pdf
DevNexus - Building 10x Development Organizations.pdfDevNexus - Building 10x Development Organizations.pdf
DevNexus - Building 10x Development Organizations.pdf
Justin Reock
Computational Photography: How Technology is Changing Way We Capture the World
Computational Photography: How Technology is Changing Way We Capture the WorldComputational Photography: How Technology is Changing Way We Capture the World
Computational Photography: How Technology is Changing Way We Capture the World
HusseinMalikMammadli
EaseUS Partition Master Crack 2025 + Serial Key
EaseUS Partition Master Crack 2025 + Serial KeyEaseUS Partition Master Crack 2025 + Serial Key
EaseUS Partition Master Crack 2025 + Serial Key
kherorpacca127
TrustArc Webinar - Building your DPIA/PIA Program: Best Practices & Tips
TrustArc Webinar - Building your DPIA/PIA Program: Best Practices & TipsTrustArc Webinar - Building your DPIA/PIA Program: Best Practices & Tips
TrustArc Webinar - Building your DPIA/PIA Program: Best Practices & Tips
TrustArc
Technology use over time and its impact on consumers and businesses.pptx
Technology use over time and its impact on consumers and businesses.pptxTechnology use over time and its impact on consumers and businesses.pptx
Technology use over time and its impact on consumers and businesses.pptx
kaylagaze
L01 Introduction to Nanoindentation - What is hardness
L01 Introduction to Nanoindentation - What is hardnessL01 Introduction to Nanoindentation - What is hardness
L01 Introduction to Nanoindentation - What is hardness
RostislavDaniel
A Framework for Model-Driven Digital Twin Engineering
A Framework for Model-Driven Digital Twin EngineeringA Framework for Model-Driven Digital Twin Engineering
A Framework for Model-Driven Digital Twin Engineering
Daniel Lehner
Transform Your Future with Front-End Development Training
Transform Your Future with Front-End Development TrainingTransform Your Future with Front-End Development Training
Transform Your Future with Front-End Development Training
Vtechlabs
Replacing RocksDB with ScyllaDB in Kafka Streams by Almog Gavra
Replacing RocksDB with ScyllaDB in Kafka Streams by Almog GavraReplacing RocksDB with ScyllaDB in Kafka Streams by Almog Gavra
Replacing RocksDB with ScyllaDB in Kafka Streams by Almog Gavra
ScyllaDB
MIND Revenue Release Quarter 4 2024 - Finacial Presentation
MIND Revenue Release Quarter 4 2024 - Finacial PresentationMIND Revenue Release Quarter 4 2024 - Finacial Presentation
MIND Revenue Release Quarter 4 2024 - Finacial Presentation
MIND CTI
Stronger Together: Combining Data Quality and Governance for Confident AI & A...
Stronger Together: Combining Data Quality and Governance for Confident AI & A...Stronger Together: Combining Data Quality and Governance for Confident AI & A...
Stronger Together: Combining Data Quality and Governance for Confident AI & A...
Precisely
Cloud of everything Tech of the 21 century in Aviation
Cloud of everything Tech of the 21 century in AviationCloud of everything Tech of the 21 century in Aviation
Cloud of everything Tech of the 21 century in Aviation
Assem mousa
Wondershare Filmora Crack 14.3.2.11147 Latest
Wondershare Filmora Crack 14.3.2.11147 LatestWondershare Filmora Crack 14.3.2.11147 Latest
Wondershare Filmora Crack 14.3.2.11147 Latest
udkg888
Gojek Clone Multi-Service Super App.pptx
Gojek Clone Multi-Service Super App.pptxGojek Clone Multi-Service Super App.pptx
Gojek Clone Multi-Service Super App.pptx
V3cube
Technology use over time and its impact on consumers and businesses.pptx
Technology use over time and its impact on consumers and businesses.pptxTechnology use over time and its impact on consumers and businesses.pptx
Technology use over time and its impact on consumers and businesses.pptx
kaylagaze
[Webinar] Scaling Made Simple: Getting Started with No-Code Web Apps
[Webinar] Scaling Made Simple: Getting Started with No-Code Web Apps[Webinar] Scaling Made Simple: Getting Started with No-Code Web Apps
[Webinar] Scaling Made Simple: Getting Started with No-Code Web Apps
Safe Software
UiPath Automation Developer Associate Training Series 2025 - Session 2
UiPath Automation Developer Associate Training Series 2025 - Session 2UiPath Automation Developer Associate Training Series 2025 - Session 2
UiPath Automation Developer Associate Training Series 2025 - Session 2
DianaGray10
World Information Architecture Day 2025 - UX at a Crossroads
World Information Architecture Day 2025 - UX at a CrossroadsWorld Information Architecture Day 2025 - UX at a Crossroads
World Information Architecture Day 2025 - UX at a Crossroads
Joshua Randall
AIXMOOC 2.3 - Modelli di reti neurali con esperimenti di addestramento
AIXMOOC 2.3 - Modelli di reti neurali con esperimenti di addestramentoAIXMOOC 2.3 - Modelli di reti neurali con esperimenti di addestramento
AIXMOOC 2.3 - Modelli di reti neurali con esperimenti di addestramento
Alessandro Bogliolo
Backstage Software Templates for Java Developers
Backstage Software Templates for Java DevelopersBackstage Software Templates for Java Developers
Backstage Software Templates for Java Developers
Markus Eisele
DevNexus - Building 10x Development Organizations.pdf
DevNexus - Building 10x Development Organizations.pdfDevNexus - Building 10x Development Organizations.pdf
DevNexus - Building 10x Development Organizations.pdf
Justin Reock
Computational Photography: How Technology is Changing Way We Capture the World
Computational Photography: How Technology is Changing Way We Capture the WorldComputational Photography: How Technology is Changing Way We Capture the World
Computational Photography: How Technology is Changing Way We Capture the World
HusseinMalikMammadli
EaseUS Partition Master Crack 2025 + Serial Key
EaseUS Partition Master Crack 2025 + Serial KeyEaseUS Partition Master Crack 2025 + Serial Key
EaseUS Partition Master Crack 2025 + Serial Key
kherorpacca127
TrustArc Webinar - Building your DPIA/PIA Program: Best Practices & Tips
TrustArc Webinar - Building your DPIA/PIA Program: Best Practices & TipsTrustArc Webinar - Building your DPIA/PIA Program: Best Practices & Tips
TrustArc Webinar - Building your DPIA/PIA Program: Best Practices & Tips
TrustArc
Technology use over time and its impact on consumers and businesses.pptx
Technology use over time and its impact on consumers and businesses.pptxTechnology use over time and its impact on consumers and businesses.pptx
Technology use over time and its impact on consumers and businesses.pptx
kaylagaze
L01 Introduction to Nanoindentation - What is hardness
L01 Introduction to Nanoindentation - What is hardnessL01 Introduction to Nanoindentation - What is hardness
L01 Introduction to Nanoindentation - What is hardness
RostislavDaniel
A Framework for Model-Driven Digital Twin Engineering
A Framework for Model-Driven Digital Twin EngineeringA Framework for Model-Driven Digital Twin Engineering
A Framework for Model-Driven Digital Twin Engineering
Daniel Lehner
Transform Your Future with Front-End Development Training
Transform Your Future with Front-End Development TrainingTransform Your Future with Front-End Development Training
Transform Your Future with Front-End Development Training
Vtechlabs
Replacing RocksDB with ScyllaDB in Kafka Streams by Almog Gavra
Replacing RocksDB with ScyllaDB in Kafka Streams by Almog GavraReplacing RocksDB with ScyllaDB in Kafka Streams by Almog Gavra
Replacing RocksDB with ScyllaDB in Kafka Streams by Almog Gavra
ScyllaDB
MIND Revenue Release Quarter 4 2024 - Finacial Presentation
MIND Revenue Release Quarter 4 2024 - Finacial PresentationMIND Revenue Release Quarter 4 2024 - Finacial Presentation
MIND Revenue Release Quarter 4 2024 - Finacial Presentation
MIND CTI

Game Development with TouchDevelop

  • 1. Sage Franch | @theTrendyTechie Building a Game with TouchDevelop
  • 2. Meet Sage Franch | @theTrendyTechie Technical Evangelist Interfacing with developers Bringing Microsofts technology to you! Proud geek and Trendy Techie Find me online at my blog trendytechie.ca Advocate for equality in technology Student at Dalhousie University
  • 4. Why TouchDevelop? Its a snap to learn. You learn coding concepts without worrying about semantics. It makes building mobile games and apps easy. It runs on anything (laptop, desktop, tablet, phone). You can share your code and creations with friends. Its free All you need is a browser.
  • 5. Which browsers can I use? TouchDevelop is supported on the latest versions of most browsers. To avoid a delay in your classes, make sure ahead of time that the browsers are updated For a full list of supported browsers, see here: https://www.touchdevelop.com/app/current.browsers
  • 6. The Agenda TouchDevelop tour Important Coding Concepts: Objects, Functions and Parameters Variables The TouchDevelop coordinate system Conditional statements On every frame Loops Play time! :D Resources for teaching and learning
  • 10. What You Need to Know Important Coding Concepts
  • 11. Objects, Functions and Parameters object function parameter Object: a representation of something in the game Function: performs an action on the object it is associated with Parameter: specifies the value of the function
  • 12. Variables A variable holds data that can be used throughout a script. Every variable has a name, a type, and a value. A variables type describes the kind of data the variable can hold. For example: A number, a string, a sprite In TouchDevelop, a variables type is determined when it is initialized.
  • 13. The TouchDevelop coordinate system (0, 0) x axis y axis yINCREASING 1234567
  • 14. Conditional Statements A conditional statement is special code for making decisions based on some condition. So whats a condition? Anything statement that can be either true or false. If I am hungry, then I eat. The action taken if the condition is false. The action taken if the condition is true. Otherwise, I sleep. The condition. (Its either true or false.)
  • 15. In code, conditional statements are also called if-then-else statements Condition Code to execute if the condition is true goes here. Code to execute if the condition is false goes here.
  • 16. BUT you have to pay attention to when the condition is checked
  • 17. Computer games are a series of very fast frames Frame 1 Frame 2 Frame 3 Frame 4 Frame 5 Frame 6
  • 19. Use on every frame to perform checks continuously
  • 20. Loops A loop is a special tool in coding that lets us write code once and repeat it as many times as wed like Repeat the following block of code X times: End of repeated block You get to specify this value. Whatever code you put here gets repeated X times. Tells the program that any code after this isnt part of the code to be repeated.
  • 21. The syntax for a loop The number of times the code is repeated. The code that will be repeated.Tells the program that any code after this isnt part of the code to be repeated.
  • 23. So how do I get started? Its easy! 1. Go to http://www.touchdevelop.com 2. Click . 3. And .
  • 24. Resources for Teaching and Learning
  • 25. Two Recommended Formats One-Day Event Provide students with a half- baked game to fix and customize Jetpack Jumper prompted tutorial Estimated time: 2 hours maximum Multi-Day Event Build a side scroller game from scratch Use CODExist MVA as reference Estimated time: 6-12 hours (flexible)
  • 26. Pre-course checklist Will you provide students with devices or will they bring their own? Do you have a reliable internet connection? If the students will be watching videos or working with tutorials, have you asked them to bring headsets?
  • 27. When teaching TouchDevelop Emphasize the excitement of coding Be prepared to handle students with different levels of coding experience Make sure to leave time for customization Encourage students to share their games, both in show-and-tell in person and online on social media Provide NEXT STEPS how can they continue once the program is over? Publish their game to app stores, build more games, etc.
  • 28. TouchDevelop Resources Jetpack Jumper Tutorial with prompts: aka.ms/startcoding Broken Jetpack game without prompts: aka.ms/jetpackstarter Complete Jetpack Jumper: aka.ms/jetpackcomplete Hour of Code video: http://channel9.msdn.com/events/Hour-of- Code/2014/LearningToCode CODExist: The Birth of Bot course on Microsoft Virtual Academy (build a side scroller game from scratch): http://www.microsoftvirtualacademy.com/training- courses/codexist-the-birth-of-bot

Editor's Notes

  • #5: Lots of complicated stuff, like building a physics engine, is done for you.
  • #24: When you are signed in, your work is automatically saved.