SlideShare una empresa de Scribd logo
1 de 59
Introduction to Coding
Agenda:
• Understand how computers work and learn basic computer
programming concepts (e.g., variables, syntax etc.)
• Gain an appreciation of the various programming languages and study
what they can do.
• Develop a resource list of computer programming tutorials and tools.
• Become inspired to learn programming basics to help you work smarter
and more efficiently.
Is coding a cryptic visual of typed languages?
Or a process? Or both?
Computer programming has a reputation of
being cryptic and too complex for the
average person; however, when you get
familiar with basic programming logic you
will see patterns everywhere!
What is computer programming?
• A set of commands a computer understands – like a recipe.
• Computer programs can help cure diseases; drive cars; create video
games; make animated movies/graphics; build websites and apps; and
much more.
• Basic coding concepts are used by most every program and most every
programmer.
• To learn more visit http://www.bfoit.org/itp/Programming.html
Why learn to code?
• Why not?
• Learn the importance of clarity/brevity of expression.
• Be able to think and problem solve more accurately.
• Have a better understanding of how technology works.
• Create a tool that can make your life and many others’ lives easier.
Read more at http://goo.gl/Hgy16A
“It has often been said that a person does not really understand
something until he teaches it to someone else. Actually a person
does not really understand something until after teaching it to a
computer, i.e., express it as an algorithm.”
Donald Knuth, in American Mathematical Monthly
Describe in natural language how to make
a peanut butter and jelly sandwich.
Some great resources to help you learn to code
.com
Learn to code interactively, for free.
http://www.oeconsortium.org/
https://www.coursera.org/
https://www.codeavengers.com/
https://www.khanacademy.org
https://teamtreehouse.com/
https://www.codeschool.com/
http://coderdojo.com
Some Other Coding Resources
• Lightbot is a programming puzzle game that gives the user a one-to-one relationship with programming concepts. Try it today at
http://light-bot.com/!
• Hopscotch: Coding for Kids is an iPad programming language. Download it today at https://www.gethopscotch.com/ .
• Code.org wants to bring Computer Science classes to every K-12 school. Check it out at http://code.org/ and find some excellent
computer programming tutorials.
• Scratch helps children create stories, games, animations, and also lets them share these projects with others around the world.
More info at http://scratch.mit.edu/.
• www.scratchjr.org is a free iPad app that brings coding to students as young as age five.
• www.kodable.com gives children opportunities to program in order to solve puzzles. http://www.allcancode.com is similar.
• Visit Medium for a “2 minute read” listing other ideas and resources to help inspire children and teens to code.
• There are several MOOCs (Massive Open Online Course) and other freely available resources that offer computer programming
classes. Coursera, Udacity, and Edx are great examples. Also, Khan Academy has some great resources for kids and adults too!
• A Google search query for computer programming resources for kids limited to the last year can be found at
http://goo.gl/RaUups.
What is a programming language?
• A programming language is set of rules that provides a way of telling a
computer:
• What operations to perform
• Communicating an algorithm
• Receives an input from the user and generates an output.
• A programming language is a system for describing a computation
(math) or algorithms (logic) in a machine-readable and human-
readable form.
• Has words, symbols, and grammatical rules (natural language)
• Grammatical rules = Syntax
• Each language has a different set of syntax rules
• Has semantics (meaning)
Slide courtesy of Brian Pichman
Tons of example code in the Arduino IDE
(Integrated Development Environment)
Raspberry Pi (Python) programming
Blinking LED code at: http://goo.gl/O3yozd
.org/downloadshttps://www.
Python Shell is where you enter commands
and/or lines of code.
At the prompt type: print(“Hello, world!”)
IDLE - Integrated DeveLopment Environment)
# is a comment and the computer ignores it.
The second line asks the user to enter their name and remembers it as "name.” This is a variable!
The third line is a print statement, which prints the stored name.
demos
2.
1.
A Few Basic Programming Components
(pretty much regardless of language)
• Variables & Arrays
• Operators
• Flow Control
• Functions
Slide courtesy of Brian Pichman
Variables & Arrays
• A variable is a bucket that holds one piece of information. A
variable can change value when
• Specific conditions are met
• Based on user input
• Examples (concept)
• $string_myhomelibrary = “Montgomery Library”;
• $numeric_variable= 100;
• $myname = “Brian”;
Slide courtesy of Brian Pichman
Variables & Arrays
• An array is a type of variable (or bucket) that holds many pieces of
information.
• Example (language doesn’t matter here; the concept does):
• $FavoriteCities = array(“Orlando”, “Boulder”, “Miami”)
• $FavoriteCities[0] holds “Orlando”
• $FavoriteCities [1] holds “Boulder”
• $States = array(“1” => “Prime”; “FL”=> “Florida”, “CO” => “Colorado”)
• $States[“FL”] holds “Florida”
Slide courtesy of Brian Pichman
Operators
• Arithmetic
+, -, *, / (add, subtract, multiply, divide)
• Assignment
= (assign the value of 2 to the variable called v)
$v = 2;
+= (“Add the value of 3 to the variable that already holds 1”)
$v += 3; // $a now holds 5
Slide courtesy of Brian Pichman
Flow Control - Sequence
• Reads like a book, the instructions are executed in the same order
they where given:
• OPEN the door
• WALK inside the room
• SIT on a chair
• PICKUP a book
• READ the book.
Slide courtesy of Brian Pichman
Flow Control - Choice
• If Then
if (something is true/conditions are met) {
then do this
}
• If Then Else
• Else: XYZ
• Starts the same as “If Then” but allows a result if condition is false
• Else If
if (something is true/conditions are met) {
then do this
} elseif (another something is true/conditions are met) {
then do this instead
}
Slide courtesy of Brian Pichman
Flow Control - Continual
• With continual, instructions are executed based on variables,
commands, outputs, etc … as they remain true
• While (or repeat)
while (something is true) {
do something here
}
• for
for (something is true) {
do something here
}
Slide courtesy of Brian Pichman
Flow Control – Putting It Together
• 1) Sequence
• Go to the library
• Check out a book
• Read the book
• Return the book
• 2) Choice
• If you have a library card, you can check out books. Otherwise open a library card account.
• 3) Repeat
• Continue to read the book till there are no more pages.
Slide courtesy of Brian Pichman
Functions
• A function is type of procedure or routine and usually returns a value.
• A procedure preforms an operation, but typically doesn’t provide a value.
• Most languages have pre-built or pre-defined functions in its library.
• For instance, the “delete” function means to “remove”. You don’t have to
code what “remove” does; only what to remove.
Defining a function in Python
Download it for free and get great handouts at
http://raptor.martincarlisle.com
RAPTOR is a flowchart-based
programming environment.
DEMO
FORTRAN
• FORmula TRANslation.
• Developed at IBM in the mid-1950s.
• First programming language
• Designed for scientific and mathematical applications by
scientists and engineers.
Traditional Programming Languages
Slide courtesy of Brian Pichman
COBOL
• COmmon Business Oriented Language.
• Developed in 1959.
• Typically used for business applications.
BASIC
• Beginner’s All-purpose Symbolic Instruction Code.
• Developed at Dartmouth College in mid 1960s.
• Developed as a simple language for students to write programs
with which they could interact through terminals.
Traditional Programming Languages (cont’d.)
Slide courtesy of Brian Pichman
C
• Developed by Bell Laboratories in the early 1970s.
• Provides control and efficiency of assembly language
• Often used for system programs.
• UNIX is written in C.
C++
• It is C language with additional features.
• Widely used for developing system and application software.
• Graphical user interfaces can be developed easily with visual
programming tools.
• Windows Based
Object-Oriented Programming Languages
Slide courtesy of Brian Pichman
JAVA
• An object-oriented language similar to C++ that eliminates lots
of C++’s problematic features
• Allows a web page developer to create programs for
applications, called applets that can be used through a browser.
• Objective of JAVA developers is that it be machine, platform and
operating system independent.
• Scripting Languages
• JavaScript and VBScript
• Php and ASP
• Perl and Python
• Command Languages
• sh, csh, bash, cmd
Special Programming Languages
Slide courtesy of Brian Pichman
• HTML
• HyperText Markup Language.
• Used on the Internet and the World Wide Web (WWW).
• Web page developer puts brief codes called tags in the page to
indicate how the page should be formatted.
• XML
• Extensible Markup Language.
• A language for defining other languages.
Special Programming Languages
Slide courtesy of Brian Pichman
What do you want to make?
Source: https://www.udemy.com/
Source: https://www.udemy.com/
Source: https://www.udemy.com/
Source: https://www.udemy.com/
Other ways to learn coding
http://getfirebug.com/
See how things on the Web work behind the scenes using …
.mit.edu
Scratch is a programming language for everyone. Create
interactive stories, games, music and art and share them online.
Finch Robot, ca. $100
http://www.finchrobot.com/
Ozobot, ca. $60
http://www.ozobot.com/
Lego WeDo / Lego Mindstorms
Sphero – ca. $130
http://www.sphero.com/
Dash and Dot, ca. $149
https://www.makewonder.com/
Interact with the real world
using the Tickle App
https://tickleapp.com
Learn to program Arduino, drones, robots, connected
toys, and smart home devices, all wirelessly.
Hopscotch App
https://www.gethopscotch.com/
pinocc.io, ca. $197
http://www.slideshare.net/chadmairn
@cmairn
Want to
Hangout?
gplus.to/chadmairn

Más contenido relacionado

La actualidad más candente

High level and Low level Language
High level and Low level Language High level and Low level Language
High level and Low level Language adnan usmani
 
Programming Fundamentals lecture 1
Programming Fundamentals lecture 1Programming Fundamentals lecture 1
Programming Fundamentals lecture 1REHAN IJAZ
 
Lect 1. introduction to programming languages
Lect 1. introduction to programming languagesLect 1. introduction to programming languages
Lect 1. introduction to programming languagesVarun Garg
 
Chapter 1 introduction to computers
Chapter 1   introduction to computersChapter 1   introduction to computers
Chapter 1 introduction to computershaider ali
 
Types of software
Types of softwareTypes of software
Types of softwarelatifah2001
 
Programming Paradigm & Languages
Programming Paradigm & LanguagesProgramming Paradigm & Languages
Programming Paradigm & LanguagesGaditek
 
Compiler vs interpreter
Compiler vs interpreterCompiler vs interpreter
Compiler vs interpreterParas Patel
 
Programming languages
Programming languagesProgramming languages
Programming languagesAsmasum
 
Intro to software development
Intro to software developmentIntro to software development
Intro to software developmentHawkman Academy
 
What Is Coding And Why Should You Learn It?
What Is Coding And Why Should You Learn It?What Is Coding And Why Should You Learn It?
What Is Coding And Why Should You Learn It?Syed Hassan Raza
 
Language translator
Language translatorLanguage translator
Language translatorasmakh89
 
Introduction to Computer Science
Introduction to Computer ScienceIntroduction to Computer Science
Introduction to Computer ScienceKalpit Jain
 
1 introduction to problem solving and programming
1 introduction to problem solving and programming1 introduction to problem solving and programming
1 introduction to problem solving and programmingRheigh Henley Calderon
 
Why to learn programming
Why to learn programmingWhy to learn programming
Why to learn programminggdgjss
 
Programming languages
Programming languagesProgramming languages
Programming languagesvito_carleone
 
Introduction to Python - Training for Kids
Introduction to Python - Training for KidsIntroduction to Python - Training for Kids
Introduction to Python - Training for KidsAimee Maree Forsstrom
 

La actualidad más candente (20)

High level and Low level Language
High level and Low level Language High level and Low level Language
High level and Low level Language
 
Programming Fundamentals lecture 1
Programming Fundamentals lecture 1Programming Fundamentals lecture 1
Programming Fundamentals lecture 1
 
Lect 1. introduction to programming languages
Lect 1. introduction to programming languagesLect 1. introduction to programming languages
Lect 1. introduction to programming languages
 
Chapter 1 introduction to computers
Chapter 1   introduction to computersChapter 1   introduction to computers
Chapter 1 introduction to computers
 
Coding with kids
Coding with kidsCoding with kids
Coding with kids
 
System software
System softwareSystem software
System software
 
Types of software
Types of softwareTypes of software
Types of software
 
Programming Paradigm & Languages
Programming Paradigm & LanguagesProgramming Paradigm & Languages
Programming Paradigm & Languages
 
Compiler vs interpreter
Compiler vs interpreterCompiler vs interpreter
Compiler vs interpreter
 
Programming languages
Programming languagesProgramming languages
Programming languages
 
Intro to software development
Intro to software developmentIntro to software development
Intro to software development
 
The Loops
The LoopsThe Loops
The Loops
 
What Is Coding And Why Should You Learn It?
What Is Coding And Why Should You Learn It?What Is Coding And Why Should You Learn It?
What Is Coding And Why Should You Learn It?
 
Language translator
Language translatorLanguage translator
Language translator
 
Introduction to Computer Science
Introduction to Computer ScienceIntroduction to Computer Science
Introduction to Computer Science
 
1 introduction to problem solving and programming
1 introduction to problem solving and programming1 introduction to problem solving and programming
1 introduction to problem solving and programming
 
Why to learn programming
Why to learn programmingWhy to learn programming
Why to learn programming
 
Programming languages
Programming languagesProgramming languages
Programming languages
 
Internet ppt
Internet pptInternet ppt
Internet ppt
 
Introduction to Python - Training for Kids
Introduction to Python - Training for KidsIntroduction to Python - Training for Kids
Introduction to Python - Training for Kids
 

Destacado

Why learn how to code
Why learn how to codeWhy learn how to code
Why learn how to codeJoey Rigor
 
Kids computer-programming
Kids computer-programmingKids computer-programming
Kids computer-programmingEdward Burns
 
How to Teach Yourself to Code
How to Teach Yourself to CodeHow to Teach Yourself to Code
How to Teach Yourself to CodeMattan Griffel
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with DataSeth Familian
 
An Introduction to Community Coding Clubs - CoderDojo WA
An Introduction to Community Coding Clubs - CoderDojo WAAn Introduction to Community Coding Clubs - CoderDojo WA
An Introduction to Community Coding Clubs - CoderDojo WACoderDojoWA
 
Learn to Code, Code to learn
Learn to Code, Code to learnLearn to Code, Code to learn
Learn to Code, Code to learnSamantha Morra
 
Hornung's Wonderleague Robotics Club Parent Meeting
Hornung's Wonderleague Robotics Club Parent MeetingHornung's Wonderleague Robotics Club Parent Meeting
Hornung's Wonderleague Robotics Club Parent Meetinggiannaa
 
Inspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other ToolsInspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other ToolsSt. Petersburg College
 
Learning the Niche of Theme Setup & Customization
Learning the Niche of Theme Setup & CustomizationLearning the Niche of Theme Setup & Customization
Learning the Niche of Theme Setup & CustomizationZac Gordon
 
Th writing-grammar-mistakes-140501125825-phpapp01
Th writing-grammar-mistakes-140501125825-phpapp01Th writing-grammar-mistakes-140501125825-phpapp01
Th writing-grammar-mistakes-140501125825-phpapp01Bipin Kujur
 
Inspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other ToolsInspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other ToolsChad Mairn
 
How to Think in the Information Age: Finding Facts in a Post-Truth World
How to Think in the Information Age: Finding Facts in a Post-Truth WorldHow to Think in the Information Age: Finding Facts in a Post-Truth World
How to Think in the Information Age: Finding Facts in a Post-Truth WorldSt. Petersburg College
 
10 things I've learned teaching coding to kids
10 things I've learned teaching coding to kids 10 things I've learned teaching coding to kids
10 things I've learned teaching coding to kids gicelamorales
 
21 Essential JavaScript Interview Questions
21 Essential JavaScript Interview Questions21 Essential JavaScript Interview Questions
21 Essential JavaScript Interview QuestionsArc & Codementor
 

Destacado (20)

Why learn how to code
Why learn how to codeWhy learn how to code
Why learn how to code
 
Kids computer-programming
Kids computer-programmingKids computer-programming
Kids computer-programming
 
How to Teach Yourself to Code
How to Teach Yourself to CodeHow to Teach Yourself to Code
How to Teach Yourself to Code
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
 
Dream Big. Learn Code.
Dream Big. Learn Code. Dream Big. Learn Code.
Dream Big. Learn Code.
 
An Introduction to Community Coding Clubs - CoderDojo WA
An Introduction to Community Coding Clubs - CoderDojo WAAn Introduction to Community Coding Clubs - CoderDojo WA
An Introduction to Community Coding Clubs - CoderDojo WA
 
Learn to Code, Code to learn
Learn to Code, Code to learnLearn to Code, Code to learn
Learn to Code, Code to learn
 
Hornung's Wonderleague Robotics Club Parent Meeting
Hornung's Wonderleague Robotics Club Parent MeetingHornung's Wonderleague Robotics Club Parent Meeting
Hornung's Wonderleague Robotics Club Parent Meeting
 
Inspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other ToolsInspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other Tools
 
Learning the Niche of Theme Setup & Customization
Learning the Niche of Theme Setup & CustomizationLearning the Niche of Theme Setup & Customization
Learning the Niche of Theme Setup & Customization
 
Th writing-grammar-mistakes-140501125825-phpapp01
Th writing-grammar-mistakes-140501125825-phpapp01Th writing-grammar-mistakes-140501125825-phpapp01
Th writing-grammar-mistakes-140501125825-phpapp01
 
RA Programming for Kids
RA Programming for KidsRA Programming for Kids
RA Programming for Kids
 
Bootstrap 4 n00bz
Bootstrap 4 n00bzBootstrap 4 n00bz
Bootstrap 4 n00bz
 
Inspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other ToolsInspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other Tools
 
STEAM @ Your Library
STEAM @ Your LibrarySTEAM @ Your Library
STEAM @ Your Library
 
How to Think in the Information Age: Finding Facts in a Post-Truth World
How to Think in the Information Age: Finding Facts in a Post-Truth WorldHow to Think in the Information Age: Finding Facts in a Post-Truth World
How to Think in the Information Age: Finding Facts in a Post-Truth World
 
10 things I've learned teaching coding to kids
10 things I've learned teaching coding to kids 10 things I've learned teaching coding to kids
10 things I've learned teaching coding to kids
 
12 Reasons Why Hot Entrepreneurs Fail
12 Reasons Why Hot Entrepreneurs Fail12 Reasons Why Hot Entrepreneurs Fail
12 Reasons Why Hot Entrepreneurs Fail
 
CMD in 2013
CMD in 2013CMD in 2013
CMD in 2013
 
21 Essential JavaScript Interview Questions
21 Essential JavaScript Interview Questions21 Essential JavaScript Interview Questions
21 Essential JavaScript Interview Questions
 

Similar a Introduction to Coding

Apresentação - Minicurso de Introdução a Python, Data Science e Machine Learning
Apresentação - Minicurso de Introdução a Python, Data Science e Machine LearningApresentação - Minicurso de Introdução a Python, Data Science e Machine Learning
Apresentação - Minicurso de Introdução a Python, Data Science e Machine LearningArthur Emanuel
 
Introduct To C Language Programming
Introduct To C Language ProgrammingIntroduct To C Language Programming
Introduct To C Language Programmingyarkhosh
 
Coding with Maker Tech
   Coding with Maker Tech   Coding with Maker Tech
Coding with Maker TechBrian Pichman
 
Developing a Coding Program for Users - SWFLN Makerpalooza - Session 4
Developing a Coding Program for Users  - SWFLN Makerpalooza - Session 4Developing a Coding Program for Users  - SWFLN Makerpalooza - Session 4
Developing a Coding Program for Users - SWFLN Makerpalooza - Session 4Brian Pichman
 
Introduction to Python Programming
Introduction to Python ProgrammingIntroduction to Python Programming
Introduction to Python ProgrammingAkhil Kaushik
 
Basics of Computer Coding: Understanding Coding Languages
Basics of Computer Coding: Understanding Coding LanguagesBasics of Computer Coding: Understanding Coding Languages
Basics of Computer Coding: Understanding Coding LanguagesBrian Pichman
 
How To Learn Programming For Beginners | How To Start Coding | Learn Programm...
How To Learn Programming For Beginners | How To Start Coding | Learn Programm...How To Learn Programming For Beginners | How To Start Coding | Learn Programm...
How To Learn Programming For Beginners | How To Start Coding | Learn Programm...Simplilearn
 
Python-unit -I.pptx
Python-unit -I.pptxPython-unit -I.pptx
Python-unit -I.pptxcrAmth
 
Python programming
Python programmingPython programming
Python programmingMegha V
 
Computer science and engineering assignments: lesser known tools that you sho...
Computer science and engineering assignments: lesser known tools that you sho...Computer science and engineering assignments: lesser known tools that you sho...
Computer science and engineering assignments: lesser known tools that you sho...Thoughtful Minds Web Services Pvt. Ltd,
 
An Introduction To Python - Python, Print()
An Introduction To Python - Python, Print()An Introduction To Python - Python, Print()
An Introduction To Python - Python, Print()Blue Elephant Consulting
 
Programing fundamentals with C++
Programing fundamentals with C++Programing fundamentals with C++
Programing fundamentals with C++farooq2016
 
Introduction to computers
Introduction to computersIntroduction to computers
Introduction to computersLearn By Watch
 

Similar a Introduction to Coding (20)

Apresentação - Minicurso de Introdução a Python, Data Science e Machine Learning
Apresentação - Minicurso de Introdução a Python, Data Science e Machine LearningApresentação - Minicurso de Introdução a Python, Data Science e Machine Learning
Apresentação - Minicurso de Introdução a Python, Data Science e Machine Learning
 
Introduct To C Language Programming
Introduct To C Language ProgrammingIntroduct To C Language Programming
Introduct To C Language Programming
 
Coding with Maker Tech
   Coding with Maker Tech   Coding with Maker Tech
Coding with Maker Tech
 
Developing a Coding Program for Users - SWFLN Makerpalooza - Session 4
Developing a Coding Program for Users  - SWFLN Makerpalooza - Session 4Developing a Coding Program for Users  - SWFLN Makerpalooza - Session 4
Developing a Coding Program for Users - SWFLN Makerpalooza - Session 4
 
Beginning Python Programming
Beginning Python ProgrammingBeginning Python Programming
Beginning Python Programming
 
Compilers.pptx
Compilers.pptxCompilers.pptx
Compilers.pptx
 
Introduction to Computer Programming
Introduction to Computer ProgrammingIntroduction to Computer Programming
Introduction to Computer Programming
 
Learning Python
Learning PythonLearning Python
Learning Python
 
Introduction to Python Programming
Introduction to Python ProgrammingIntroduction to Python Programming
Introduction to Python Programming
 
Basics of Computer Coding: Understanding Coding Languages
Basics of Computer Coding: Understanding Coding LanguagesBasics of Computer Coding: Understanding Coding Languages
Basics of Computer Coding: Understanding Coding Languages
 
How To Learn Programming For Beginners | How To Start Coding | Learn Programm...
How To Learn Programming For Beginners | How To Start Coding | Learn Programm...How To Learn Programming For Beginners | How To Start Coding | Learn Programm...
How To Learn Programming For Beginners | How To Start Coding | Learn Programm...
 
Plc part 1
Plc part 1Plc part 1
Plc part 1
 
Python-unit -I.pptx
Python-unit -I.pptxPython-unit -I.pptx
Python-unit -I.pptx
 
Python programming
Python programmingPython programming
Python programming
 
Presentation-1.pptx
Presentation-1.pptxPresentation-1.pptx
Presentation-1.pptx
 
Computer science and engineering assignments: lesser known tools that you sho...
Computer science and engineering assignments: lesser known tools that you sho...Computer science and engineering assignments: lesser known tools that you sho...
Computer science and engineering assignments: lesser known tools that you sho...
 
An Introduction To Python - Python, Print()
An Introduction To Python - Python, Print()An Introduction To Python - Python, Print()
An Introduction To Python - Python, Print()
 
Programing fundamentals with C++
Programing fundamentals with C++Programing fundamentals with C++
Programing fundamentals with C++
 
Introduction to computers
Introduction to computersIntroduction to computers
Introduction to computers
 
py4inf-01-intro.ppt
py4inf-01-intro.pptpy4inf-01-intro.ppt
py4inf-01-intro.ppt
 

Más de St. Petersburg College

Introducing Immersive Technologies for Libraries
Introducing Immersive Technologies for Libraries  Introducing Immersive Technologies for Libraries
Introducing Immersive Technologies for Libraries St. Petersburg College
 
Introducing How to Build a Personal Voice Assistant (AIY Edition)
Introducing How to Build a Personal Voice Assistant (AIY Edition) Introducing How to Build a Personal Voice Assistant (AIY Edition)
Introducing How to Build a Personal Voice Assistant (AIY Edition) St. Petersburg College
 
Taking the Magical Leap with Immersive Technologies in Libraries
Taking the Magical Leap with Immersive Technologies in LibrariesTaking the Magical Leap with Immersive Technologies in Libraries
Taking the Magical Leap with Immersive Technologies in LibrariesSt. Petersburg College
 
How to Repurpose Library Space: Listening Lab Edition
How to Repurpose Library Space: Listening Lab EditionHow to Repurpose Library Space: Listening Lab Edition
How to Repurpose Library Space: Listening Lab EditionSt. Petersburg College
 
Using CoSpaces Edu to Create Virtual and Augmented Reality Experiences
Using CoSpaces Edu to Create Virtual and Augmented Reality ExperiencesUsing CoSpaces Edu to Create Virtual and Augmented Reality Experiences
Using CoSpaces Edu to Create Virtual and Augmented Reality ExperiencesSt. Petersburg College
 
What’s New With 3D Design and Printing?
What’s New With 3D Design and Printing?What’s New With 3D Design and Printing?
What’s New With 3D Design and Printing?St. Petersburg College
 
Creating a Program to Assist Users Cutting Cable
Creating a Program to Assist Users Cutting CableCreating a Program to Assist Users Cutting Cable
Creating a Program to Assist Users Cutting CableSt. Petersburg College
 
Understanding Artificial Intelligence
Understanding Artificial Intelligence Understanding Artificial Intelligence
Understanding Artificial Intelligence St. Petersburg College
 
Learn to Compose, Record, and Produce Songs and Podcasts Using GarageBand
Learn to Compose, Record, and Produce Songs and Podcasts Using GarageBandLearn to Compose, Record, and Produce Songs and Podcasts Using GarageBand
Learn to Compose, Record, and Produce Songs and Podcasts Using GarageBandSt. Petersburg College
 
Learning Kodu: Basic Video Game Design for Kids
Learning Kodu: Basic Video Game Design for KidsLearning Kodu: Basic Video Game Design for Kids
Learning Kodu: Basic Video Game Design for KidsSt. Petersburg College
 
What’s New and Exciting in Library Makerspaces
What’s New and Exciting in Library MakerspacesWhat’s New and Exciting in Library Makerspaces
What’s New and Exciting in Library MakerspacesSt. Petersburg College
 

Más de St. Petersburg College (20)

Introducing Immersive Technologies for Libraries
Introducing Immersive Technologies for Libraries  Introducing Immersive Technologies for Libraries
Introducing Immersive Technologies for Libraries
 
Introducing How to Build a Personal Voice Assistant (AIY Edition)
Introducing How to Build a Personal Voice Assistant (AIY Edition) Introducing How to Build a Personal Voice Assistant (AIY Edition)
Introducing How to Build a Personal Voice Assistant (AIY Edition)
 
360° Tours and More
360° Tours and More360° Tours and More
360° Tours and More
 
Taking the Magical Leap with Immersive Technologies in Libraries
Taking the Magical Leap with Immersive Technologies in LibrariesTaking the Magical Leap with Immersive Technologies in Libraries
Taking the Magical Leap with Immersive Technologies in Libraries
 
Open Education Resources in Libraries
Open Education Resources in LibrariesOpen Education Resources in Libraries
Open Education Resources in Libraries
 
How to Repurpose Library Space: Listening Lab Edition
How to Repurpose Library Space: Listening Lab EditionHow to Repurpose Library Space: Listening Lab Edition
How to Repurpose Library Space: Listening Lab Edition
 
Using CoSpaces Edu to Create Virtual and Augmented Reality Experiences
Using CoSpaces Edu to Create Virtual and Augmented Reality ExperiencesUsing CoSpaces Edu to Create Virtual and Augmented Reality Experiences
Using CoSpaces Edu to Create Virtual and Augmented Reality Experiences
 
Understanding Artificial Intelligence
Understanding Artificial IntelligenceUnderstanding Artificial Intelligence
Understanding Artificial Intelligence
 
Web Design Trends: 2018 Edition
Web Design Trends: 2018 EditionWeb Design Trends: 2018 Edition
Web Design Trends: 2018 Edition
 
What’s New With 3D Design and Printing?
What’s New With 3D Design and Printing?What’s New With 3D Design and Printing?
What’s New With 3D Design and Printing?
 
Creating a Program to Assist Users Cutting Cable
Creating a Program to Assist Users Cutting CableCreating a Program to Assist Users Cutting Cable
Creating a Program to Assist Users Cutting Cable
 
Understanding Artificial Intelligence
Understanding Artificial Intelligence Understanding Artificial Intelligence
Understanding Artificial Intelligence
 
3D Design Fundamentals
3D Design Fundamentals3D Design Fundamentals
3D Design Fundamentals
 
STEM Demystified
STEM DemystifiedSTEM Demystified
STEM Demystified
 
Learn to Compose, Record, and Produce Songs and Podcasts Using GarageBand
Learn to Compose, Record, and Produce Songs and Podcasts Using GarageBandLearn to Compose, Record, and Produce Songs and Podcasts Using GarageBand
Learn to Compose, Record, and Produce Songs and Podcasts Using GarageBand
 
Open Education Resources in Libraries
Open Education Resources in LibrariesOpen Education Resources in Libraries
Open Education Resources in Libraries
 
Learning Kodu: Basic Video Game Design for Kids
Learning Kodu: Basic Video Game Design for KidsLearning Kodu: Basic Video Game Design for Kids
Learning Kodu: Basic Video Game Design for Kids
 
Learn to Code and Have Fun Doing It!
Learn to Code and Have Fun Doing It! Learn to Code and Have Fun Doing It!
Learn to Code and Have Fun Doing It!
 
Technologies to Watch: 2017 Edition
Technologies to Watch: 2017 EditionTechnologies to Watch: 2017 Edition
Technologies to Watch: 2017 Edition
 
What’s New and Exciting in Library Makerspaces
What’s New and Exciting in Library MakerspacesWhat’s New and Exciting in Library Makerspaces
What’s New and Exciting in Library Makerspaces
 

Último

Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencessuser9e7c64
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesVictoriaMetrics
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...OnePlan Solutions
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?Alexandre Beguel
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingShane Coughlan
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfRTS corp
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecturerahul_net
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITmanoharjgpsolutions
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...Bert Jan Schrijver
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 

Último (20)

Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conference
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 Updates
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecture
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh IT
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 

Introduction to Coding

  • 2. Agenda: • Understand how computers work and learn basic computer programming concepts (e.g., variables, syntax etc.) • Gain an appreciation of the various programming languages and study what they can do. • Develop a resource list of computer programming tutorials and tools. • Become inspired to learn programming basics to help you work smarter and more efficiently.
  • 3. Is coding a cryptic visual of typed languages? Or a process? Or both?
  • 4. Computer programming has a reputation of being cryptic and too complex for the average person; however, when you get familiar with basic programming logic you will see patterns everywhere!
  • 5. What is computer programming? • A set of commands a computer understands – like a recipe. • Computer programs can help cure diseases; drive cars; create video games; make animated movies/graphics; build websites and apps; and much more. • Basic coding concepts are used by most every program and most every programmer. • To learn more visit http://www.bfoit.org/itp/Programming.html
  • 6. Why learn to code? • Why not? • Learn the importance of clarity/brevity of expression. • Be able to think and problem solve more accurately. • Have a better understanding of how technology works. • Create a tool that can make your life and many others’ lives easier.
  • 7. Read more at http://goo.gl/Hgy16A
  • 8. “It has often been said that a person does not really understand something until he teaches it to someone else. Actually a person does not really understand something until after teaching it to a computer, i.e., express it as an algorithm.” Donald Knuth, in American Mathematical Monthly
  • 9. Describe in natural language how to make a peanut butter and jelly sandwich.
  • 10. Some great resources to help you learn to code
  • 11. .com Learn to code interactively, for free.
  • 19. Some Other Coding Resources • Lightbot is a programming puzzle game that gives the user a one-to-one relationship with programming concepts. Try it today at http://light-bot.com/! • Hopscotch: Coding for Kids is an iPad programming language. Download it today at https://www.gethopscotch.com/ . • Code.org wants to bring Computer Science classes to every K-12 school. Check it out at http://code.org/ and find some excellent computer programming tutorials. • Scratch helps children create stories, games, animations, and also lets them share these projects with others around the world. More info at http://scratch.mit.edu/. • www.scratchjr.org is a free iPad app that brings coding to students as young as age five. • www.kodable.com gives children opportunities to program in order to solve puzzles. http://www.allcancode.com is similar. • Visit Medium for a “2 minute read” listing other ideas and resources to help inspire children and teens to code. • There are several MOOCs (Massive Open Online Course) and other freely available resources that offer computer programming classes. Coursera, Udacity, and Edx are great examples. Also, Khan Academy has some great resources for kids and adults too! • A Google search query for computer programming resources for kids limited to the last year can be found at http://goo.gl/RaUups.
  • 20. What is a programming language? • A programming language is set of rules that provides a way of telling a computer: • What operations to perform • Communicating an algorithm • Receives an input from the user and generates an output. • A programming language is a system for describing a computation (math) or algorithms (logic) in a machine-readable and human- readable form. • Has words, symbols, and grammatical rules (natural language) • Grammatical rules = Syntax • Each language has a different set of syntax rules • Has semantics (meaning) Slide courtesy of Brian Pichman
  • 21. Tons of example code in the Arduino IDE (Integrated Development Environment)
  • 22. Raspberry Pi (Python) programming Blinking LED code at: http://goo.gl/O3yozd
  • 24. Python Shell is where you enter commands and/or lines of code. At the prompt type: print(“Hello, world!”)
  • 25. IDLE - Integrated DeveLopment Environment) # is a comment and the computer ignores it. The second line asks the user to enter their name and remembers it as "name.” This is a variable! The third line is a print statement, which prints the stored name.
  • 27. A Few Basic Programming Components (pretty much regardless of language) • Variables & Arrays • Operators • Flow Control • Functions Slide courtesy of Brian Pichman
  • 28. Variables & Arrays • A variable is a bucket that holds one piece of information. A variable can change value when • Specific conditions are met • Based on user input • Examples (concept) • $string_myhomelibrary = “Montgomery Library”; • $numeric_variable= 100; • $myname = “Brian”; Slide courtesy of Brian Pichman
  • 29. Variables & Arrays • An array is a type of variable (or bucket) that holds many pieces of information. • Example (language doesn’t matter here; the concept does): • $FavoriteCities = array(“Orlando”, “Boulder”, “Miami”) • $FavoriteCities[0] holds “Orlando” • $FavoriteCities [1] holds “Boulder” • $States = array(“1” => “Prime”; “FL”=> “Florida”, “CO” => “Colorado”) • $States[“FL”] holds “Florida” Slide courtesy of Brian Pichman
  • 30. Operators • Arithmetic +, -, *, / (add, subtract, multiply, divide) • Assignment = (assign the value of 2 to the variable called v) $v = 2; += (“Add the value of 3 to the variable that already holds 1”) $v += 3; // $a now holds 5 Slide courtesy of Brian Pichman
  • 31. Flow Control - Sequence • Reads like a book, the instructions are executed in the same order they where given: • OPEN the door • WALK inside the room • SIT on a chair • PICKUP a book • READ the book. Slide courtesy of Brian Pichman
  • 32. Flow Control - Choice • If Then if (something is true/conditions are met) { then do this } • If Then Else • Else: XYZ • Starts the same as “If Then” but allows a result if condition is false • Else If if (something is true/conditions are met) { then do this } elseif (another something is true/conditions are met) { then do this instead } Slide courtesy of Brian Pichman
  • 33. Flow Control - Continual • With continual, instructions are executed based on variables, commands, outputs, etc … as they remain true • While (or repeat) while (something is true) { do something here } • for for (something is true) { do something here } Slide courtesy of Brian Pichman
  • 34. Flow Control – Putting It Together • 1) Sequence • Go to the library • Check out a book • Read the book • Return the book • 2) Choice • If you have a library card, you can check out books. Otherwise open a library card account. • 3) Repeat • Continue to read the book till there are no more pages. Slide courtesy of Brian Pichman
  • 35. Functions • A function is type of procedure or routine and usually returns a value. • A procedure preforms an operation, but typically doesn’t provide a value. • Most languages have pre-built or pre-defined functions in its library. • For instance, the “delete” function means to “remove”. You don’t have to code what “remove” does; only what to remove. Defining a function in Python
  • 36. Download it for free and get great handouts at http://raptor.martincarlisle.com RAPTOR is a flowchart-based programming environment. DEMO
  • 37. FORTRAN • FORmula TRANslation. • Developed at IBM in the mid-1950s. • First programming language • Designed for scientific and mathematical applications by scientists and engineers. Traditional Programming Languages Slide courtesy of Brian Pichman COBOL • COmmon Business Oriented Language. • Developed in 1959. • Typically used for business applications.
  • 38. BASIC • Beginner’s All-purpose Symbolic Instruction Code. • Developed at Dartmouth College in mid 1960s. • Developed as a simple language for students to write programs with which they could interact through terminals. Traditional Programming Languages (cont’d.) Slide courtesy of Brian Pichman C • Developed by Bell Laboratories in the early 1970s. • Provides control and efficiency of assembly language • Often used for system programs. • UNIX is written in C.
  • 39. C++ • It is C language with additional features. • Widely used for developing system and application software. • Graphical user interfaces can be developed easily with visual programming tools. • Windows Based Object-Oriented Programming Languages Slide courtesy of Brian Pichman JAVA • An object-oriented language similar to C++ that eliminates lots of C++’s problematic features • Allows a web page developer to create programs for applications, called applets that can be used through a browser. • Objective of JAVA developers is that it be machine, platform and operating system independent.
  • 40. • Scripting Languages • JavaScript and VBScript • Php and ASP • Perl and Python • Command Languages • sh, csh, bash, cmd Special Programming Languages Slide courtesy of Brian Pichman
  • 41. • HTML • HyperText Markup Language. • Used on the Internet and the World Wide Web (WWW). • Web page developer puts brief codes called tags in the page to indicate how the page should be formatted. • XML • Extensible Markup Language. • A language for defining other languages. Special Programming Languages Slide courtesy of Brian Pichman
  • 42. What do you want to make?
  • 47. Other ways to learn coding
  • 48. http://getfirebug.com/ See how things on the Web work behind the scenes using …
  • 49. .mit.edu Scratch is a programming language for everyone. Create interactive stories, games, music and art and share them online.
  • 50. Finch Robot, ca. $100 http://www.finchrobot.com/
  • 52. Lego WeDo / Lego Mindstorms
  • 53. Sphero – ca. $130 http://www.sphero.com/
  • 54. Dash and Dot, ca. $149 https://www.makewonder.com/
  • 55. Interact with the real world using the Tickle App https://tickleapp.com Learn to program Arduino, drones, robots, connected toys, and smart home devices, all wirelessly.