SlideShare une entreprise Scribd logo
1  sur  64
Developing a Coding
Program for Users
BRIAN PICHMAN | Evolve Project
What Code Should I Learn?
Welcome
Developing a coding program is important if you want to teach your community various programming languages. However, the challenge is which
language to choose. Do you train towards the blast to the past with Cobolt or a little more recent with HTML? Or currently, used technologies like
PHP or C++? Or what if you wanted to showcase technology that is up and coming, like programming in AI and learning python? Whatever the use
case, this session works through the different languages you can code, their applications in the real world, and resources for developing programs at
your library for all ages.
Evolve Project | Brian Pichman
3
The importance of coding is everywhere
Why Code?
• Can help teach troubleshooting in a more
meaningful way
• Make a “computer” do what you want it to
do
• Job market opportunities
• Build something useful and start a
business
• Most of todays technological
advancements are through the use of
code
• Automation of repetitive tasks or
procedures
Evolve Project | Brian Pichman
4
What we will cover today
Agenda
2
Resources
What you could use to get
started
4
Coding Platforms
What could you “code”
3
Coding Basics
Understand the commonly used
coding terms
1
Introduction
5
Requirements
What do you need to be
successful?
7
Job Applications
Understand what careers require
what languages
6
Coding Languages
What are the different languages
and what do they look like
8
Fun Things!
Evolve Project | Brian Pichman
5
A set of commands that a computer can understand
So What Is Coding?
Coding is involved in almost every aspect of our lives. From posting on Facebook, to your smart phones, to games, to websites, to this
very webinar. Coding makes things happen, and they are simply instructions to make the “magic” happen.
Think of coding for computer programs as writing down the steps needed to do something.
Evolve Project | Brian Pichman
6
How Do Computers Work
Coding is made up of three things
Algorithm
An ordered set of steps to solve a
problem (not always a mathematical
problem)
Process
A series of actions/steps to
achieve an end result
(do THIS to get THAT)
Procedure
A series of actions performed in a specific order.
(Follow these STEPS to get THAT)
Peanut Butter and Jelly
Describe in “Natural Language” how to make a peanut butter and jelly
sandwich
Evolve Project | Brian Pichman
8
To Get You Started
Resources
Codecademy is an online interactive platform that offers free
coding classes in 12 different programming languages
including Python, Java, JavaScript, Ruby, SQL, and Sass, as
well as markup languages HTML and CSS
The Open Education Consortium (OEC) is a non-profit,
global, members-based network of open education
institutions and organizations. OEC represents its
members and provides advocacy and leadership around
advancement of open education globally.
Evolve Project | Brian Pichman
9
To Get You Started
Resources
Coursera is an online learning platform founded by Stanford
professors Andrew Ng and Daphne Koller that offers *free*
courses, specializations, and degrees.
Code Avengers is an online education company based out
of Hamilton, NZ and founded in 2012 by Dr Michael
Walmsley (PhD computer-assisted learning). It is
subscription based and is made to make coding fun and
engaging.
Evolve Project | Brian Pichman
10
To Get You Started
Resources
CoderDojo is a global volunteer-led community of free
programming workshops for young people between 7 and 17.
The movement is a grassroots organization with individual
clubs acting independently.
Khan Academy is a non-profit educational organization
created in 2008 by Salman Khan with the goal of creating a
set of online tools that help educate students. The
organization produces short lessons in the form of
YouTube videos. Its website also includes supplementary
practice exercises and materials for educators
Evolve Project | Brian Pichman
11
So Many Options!
Evolve Project | Brian Pichman
12
To Get You Started
There are even great apps
GetHopscotch.com – an app that teaches coding through
building games. Make your own Pokemon Go game, frogger,
and more.
LightBot is an app that teaches programming concepts
through solving puzzles.
Evolve Project | Brian Pichman
13
Some Other Coding Resources
Code.org :
• Code.org ® is a nonprofit dedicated to expanding access to computer science in
schools and increasing participation by women and underrepresent ed minorities.
Our vision is that every student in every school has the opportunity to learn
computer science, just like biology, chemistry or algebra. Code.org provides the
leading curriculum for K -12 computer science in the largest school districts in the
United States and Code.org also organizes the annual Hour of Code campaign
which has engaged 10% of all students in the world. Code.org is supported by
generous donors including Amazon, Facebook, Google, the Infosys Foundation,
Microsoft, and many more .
• 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.kodable.com gives children opportunities to program in order to solve puzzles.
Looking for inspiration: https://medium.freecodecam p.org/successfully -teaching -
yourself -how-to-code -f6aac23db44a
Evolve Project | Brian Pichman
14
What is a programming language?
A programming language is set of rules that provide 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)
Evolve Project | Brian Pichman
15
Few Basic Programming Terms
Coding Basics
Variables and Arrays Operators Flow Control Functions
Evolve Project | Brian Pichman
16
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
Variables & Arrays
Coding Basics
Examples (concept)
$string_myhomelibrary = “Montgomery Library”;
$numeric_variable= 100;
$myname = “Brian”;
Evolve Project | Brian Pichman
17
An array is a type of variable (or bucket) that holds many pieces of
information.
Variables and Arrays
Coding Basics
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”
Evolve Project | Brian Pichman
18
• 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
Operators
Coding Basics
Evolve Project | Brian Pichman
19
Flow Control – Readable Programming Languages
Coding Basics
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.
Choice
With choice, instructions are executed based
on variables, commands, outputs, etc.
Continual
With continual, instructions are executed based
on variables, commands, outputs, etc … as
they remain true
Evolve Project | Brian Pichman
20
Flow Control – Readable Programming Languages
Coding Basics
Sequence
OPEN the door
WALK inside the room
SIT on a chair
PICKUP a book
READ the book.
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
}
Continual
While (or repeat)
while (something is true) {
do something here
}
for
for (something is true) {
do something here
}
Evolve Project | Brian Pichman
21
Putting Flow Control 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.
Evolve Project | Brian Pichman
22
A function is type of procedure or routine
• A function 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.
Functions
Coding Basics
What could you “code” for
23
Coding Platforms
With coding websites and web
apps; there are front end (what
users see) and back end (what
admins see) that have to be
considered
Websites and Web Apps
Web Based
You may not realize it, but the
servers and databases that run
the things you use every day
also has a level of coding
involved
Infrastructure
Databases / Servers
As more new technology for
self-driving cars and digital
assistants grows, there will be a
need for these kinds of
engineers
The Hottest Trend
Machine Learning / AI
Often referred to as “thick”
clients, applications that can be
installed are coded – and each
different operating systems
requires different code
Software
Applications
What could you “code” for
24
Coding Platforms
Video Gaming
Video games is much more
than great graphics, every
character interaction, move,
and story has to be coded
Make Games Work
Apps that run on mobile
devices need specialized
coders as well!
There’s an app for that
Mobile Apps
Evolve Project | Brian Pichman
25
Flash Light Examples
Understanding AI
If an ML algorithm makes an
inaccurate prediction, then the
engineer needs to correct. In DL,
the algorithms can determine on
their own if a prediction is accurate
or not.
Deep Learning
Allow machines to make to
their own accurate decisions
without intervention from
engineer
Neural Networks
If detects {dark} turn on {light}
Logic Rules
it’s performing a function with the
data given and gets progressively
better at that function
Machine Learning
Eventually, the system can
turn on the light with other
queues such as “I can’t see”
DL “Code”
Flashlight will turn on automatically
as it learns other words for “dark”
picking up on phrases that
contains the word
ML “Code”:
Evolve Project | Brian Pichman
27
Coding for Websites
Evolve Project | Brian Pichman
28
There are many ways to program
Requirements
Getting Started
If you’re programming, you’ll need a spot to “host” your code. If its web facing, you could
use sites like Blue Host or Google Cloud computing. For internal applications, you can
set up a “LAMP” stack, and often be able to host everything off a single computer. Lastly,
you’ll need to run software to actually code
There are are also different ways to code:
These would be often hardware specific applications that allow the
creation or customization of physical hardware, drivers, or firmware.
Machine Languages
Operating Systems like Mac, Windows, and Linux can be given
commands to do things. Job Control, Shell Scripting, Text Processing
Scripting
Use a computer screen to do most of the coding for you. For example, you don’t
need to code the dimensions of a “text box” just put one in and resize it to what you
need
GUI – Graphical User Interface
Evolve Project | Brian Pichman
29
Software to code: Microsoft Visual Studio
Evolve Project | Brian Pichman
30
Software to code: Dreamweaver
Evolve Project | Brian Pichman
31
Software to code: Notepad++
Traditional Programming Languages
• 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 (cont’d.)
• COBOL
• Common Business Oriented Language.
• Developed in 1959.
• Typically used for business applications.
Traditional Programming Languages (cont’d.)
• 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.)
• 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.
Object-Oriented Programming Languages
• 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
• 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.
Special Programming Languages
• Scripting Languages
• JavaScript and VBScript
• PHP and ASP
• Perl and Python
• Command Languages
• sh, csh, bash, cmd
Special Programming Languages
• 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.
Considerations when choose languages
• Proprietary
• Microsoft Languages (C#, C++, Visual Basic)
• Oracle (Java)
• Open Source
• PHP
• Python
• Standardized Languages
• HTML
• Databases
• Microsoft SQL (Microsoft), MySQL (Open Source), NoSQL (now Apples)
• Formerly: Run-time performance
• At one point, a well performing computer was costly, so
lightweight languages had to be used, concise commands, and
less “flashy” design
• Now: Life cycle (human) cost is more important
• Ease of use for both user and programmer
• Cost of maintenance (debugging, updates, etc)
What determines a “right” language
Source: https://www.udemy.com/
Source: https://www.udemy.com/
Source: https://www.udemy.com/
Source: https://www.udemy.com/
Evolve Project | Brian Pichman
46
Raspberry Pi (Teaching Python)
http://www.circuitbasics.com/how-to-write-and-run-a-python-
program-on-the-raspberry-pi/
Evolve Project | Brian Pichman
47
Arduino IDE
Evolve Project | Brian Pichman
48
Looking “Under the Hood” with Developer Tools
https://developers.google.com/web/tools/chrome-devtools/beginners/html
.mit.edu
Scratch is a programming language for everyone. Create
interactive stories, games, music and art and share them online.
B E E B OT S
M S R P : $ 8 9 . 9 5
Learn how to code without a
computer. Either using tactile
squares or pressing the buttons
on the bot, program your robot
to move.
https://www.terrapinlogo.com/beebot.h
tml
B LU E - B OT
M S R P : $ 1 2 0
Code a robot with tiles
OZOBOT
MSRP: $60
Learn how to program by drawing
https://ozobot.com/
Resources
• https://ozobot.com/stem-education their main education page
• https://portal.ozobot.com/lessons the lesson page
• Teachers Guide:
• https://files.ozobot.com/stem-education/ozobot-teachers-guide.pdf
Sphero – SPRK+
MSRP: $130
WINK
MSRP: $80
Fun activities to program a robot using Arduino.
This low cost robot allows students to program common robotic
tasks such as:
Line Following
Light Seeking
Barrier Detection
Autonomous Roaming
Creative Experimentation
https://www.plumgeek.com/wink.html
Resources
• Software Installations:
• https://www.plumgeek.com/wink-getting-started.html
• Quick Start:
• https://www.plumgeek.com/uploads/5/4/7/6/54769677/wink_coding_example_rev01
-1.pdf
• All Lessons: https://www.plumgeek.com/learn-to-code.html
• Scroll to the bottom; download both the example code and the lesson guides
Itty Bitty Buggy
MSRP: $59.99
The Itty Bitty Buggy kit comes with a base
Buggy plus four opportunities to build a
sloth, a ladybug, a dodo bird and an alien.
Learn to code, have your robot detect light,
lines, voice control, color, and more.
https://microduinoinc.com/itty-bitty-buggy/
https://idealab.microduinoinc.com/asset
Kano Harry Potter
MSRP: 99.99
Build a wand. Learn to code. Make magic.
https://kano.me/store/us/products/coding-wand
Finch
The Finch was designed to allow students to
write richly interactive programs. On-board
features include:
Light, temperature, and obstacle sensors,
Accelerometers, Motors, Buzzer, Full-color
beak LED, Pen mount for drawing capability,
Plugs into USB port - no batteries required
https://www.birdbraintechnologies.com/finch/
Resources
• Loan Program:
• https://www.birdbraintechnologies.com/finch-robot-loan-program/
• Curriculum Guides
• https://www.birdbraintechnologies.com/finch/curriculum/scratch/
Evolve Project | Brian Pichman
64
Feel free to reach out!
Questions / Contacts
815-534-0403
www.evolveproject.org
bpichman@evolveproject.org
Twitter: @bpichman
linkedin.com/in/bpichman
slideshare.net/bpichman

Contenu connexe

Similaire à Coding Platforms for Beginners

Enhancing student engagement with open source software
Enhancing student engagement with open source softwareEnhancing student engagement with open source software
Enhancing student engagement with open source softwareJames Richardson
 
Hello World - Introduction to coding.pptx
Hello World - Introduction to coding.pptxHello World - Introduction to coding.pptx
Hello World - Introduction to coding.pptxJennyGainsford
 
Schoo Innovation Project - Robotics and Coding
Schoo Innovation Project - Robotics and CodingSchoo Innovation Project - Robotics and Coding
Schoo Innovation Project - Robotics and CodingHillary Rogers
 
DOES SFO 2016 - Greg Padak - Default to Open
DOES SFO 2016 - Greg Padak - Default to OpenDOES SFO 2016 - Greg Padak - Default to Open
DOES SFO 2016 - Greg Padak - Default to OpenGene Kim
 
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
 
Becoming a Software Developer
Becoming a Software DeveloperBecoming a Software Developer
Becoming a Software DeveloperMuhammad Samu
 
What Projects Can I Do With Java
What Projects Can I Do With JavaWhat Projects Can I Do With Java
What Projects Can I Do With JavaLiveLectures
 
Как да станем софтуерни инженери и да стартираме ИТ бизнес?
Как да станем софтуерни инженери и да стартираме ИТ бизнес?Как да станем софтуерни инженери и да стартираме ИТ бизнес?
Как да станем софтуерни инженери и да стартираме ИТ бизнес?Svetlin Nakov
 
Low/No Cost Software is it right for your business
Low/No Cost Software is it right for your businessLow/No Cost Software is it right for your business
Low/No Cost Software is it right for your businessBill Maynard
 
Develop skills in functional and non functional testing
Develop skills in functional and non functional testingDevelop skills in functional and non functional testing
Develop skills in functional and non functional testingMaveric Systems
 
Py4 inf 01-intro
Py4 inf 01-introPy4 inf 01-intro
Py4 inf 01-introIshaq Ali
 
Practices of agile developers
Practices of agile developersPractices of agile developers
Practices of agile developersDUONG Trong Tan
 
Key Features Of The Pseudo Code
Key Features Of The Pseudo CodeKey Features Of The Pseudo Code
Key Features Of The Pseudo CodeAngilina Jones
 
How to become a Software Engineer Carrier Path for Software Developer
How to become a Software Engineer Carrier Path for Software DeveloperHow to become a Software Engineer Carrier Path for Software Developer
How to become a Software Engineer Carrier Path for Software Developerjeetendra mandal
 
Specification Of The Programming Language Of Java
Specification Of The Programming Language Of JavaSpecification Of The Programming Language Of Java
Specification Of The Programming Language Of JavaKim Moore
 
Future web developer, you are going to be tremendously valuable
Future web developer, you are going to be tremendously valuableFuture web developer, you are going to be tremendously valuable
Future web developer, you are going to be tremendously valuablePolcode
 
Six Month Industrial Training In Chandigarh.pdf
Six Month Industrial Training In Chandigarh.pdfSix Month Industrial Training In Chandigarh.pdf
Six Month Industrial Training In Chandigarh.pdfExcellence Technology
 

Similaire à Coding Platforms for Beginners (20)

Enhancing student engagement with open source software
Enhancing student engagement with open source softwareEnhancing student engagement with open source software
Enhancing student engagement with open source software
 
Learning Python
Learning PythonLearning Python
Learning Python
 
Back to School with 50 Tech Tips
Back to School with 50 Tech TipsBack to School with 50 Tech Tips
Back to School with 50 Tech Tips
 
Hello World - Introduction to coding.pptx
Hello World - Introduction to coding.pptxHello World - Introduction to coding.pptx
Hello World - Introduction to coding.pptx
 
Schoo Innovation Project - Robotics and Coding
Schoo Innovation Project - Robotics and CodingSchoo Innovation Project - Robotics and Coding
Schoo Innovation Project - Robotics and Coding
 
DOES SFO 2016 - Greg Padak - Default to Open
DOES SFO 2016 - Greg Padak - Default to OpenDOES SFO 2016 - Greg Padak - Default to Open
DOES SFO 2016 - Greg Padak - Default to Open
 
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
 
Becoming a Software Developer
Becoming a Software DeveloperBecoming a Software Developer
Becoming a Software Developer
 
What Projects Can I Do With Java
What Projects Can I Do With JavaWhat Projects Can I Do With Java
What Projects Can I Do With Java
 
Introduction
IntroductionIntroduction
Introduction
 
Как да станем софтуерни инженери и да стартираме ИТ бизнес?
Как да станем софтуерни инженери и да стартираме ИТ бизнес?Как да станем софтуерни инженери и да стартираме ИТ бизнес?
Как да станем софтуерни инженери и да стартираме ИТ бизнес?
 
Low/No Cost Software is it right for your business
Low/No Cost Software is it right for your businessLow/No Cost Software is it right for your business
Low/No Cost Software is it right for your business
 
Develop skills in functional and non functional testing
Develop skills in functional and non functional testingDevelop skills in functional and non functional testing
Develop skills in functional and non functional testing
 
Py4 inf 01-intro
Py4 inf 01-introPy4 inf 01-intro
Py4 inf 01-intro
 
Practices of agile developers
Practices of agile developersPractices of agile developers
Practices of agile developers
 
Key Features Of The Pseudo Code
Key Features Of The Pseudo CodeKey Features Of The Pseudo Code
Key Features Of The Pseudo Code
 
How to become a Software Engineer Carrier Path for Software Developer
How to become a Software Engineer Carrier Path for Software DeveloperHow to become a Software Engineer Carrier Path for Software Developer
How to become a Software Engineer Carrier Path for Software Developer
 
Specification Of The Programming Language Of Java
Specification Of The Programming Language Of JavaSpecification Of The Programming Language Of Java
Specification Of The Programming Language Of Java
 
Future web developer, you are going to be tremendously valuable
Future web developer, you are going to be tremendously valuableFuture web developer, you are going to be tremendously valuable
Future web developer, you are going to be tremendously valuable
 
Six Month Industrial Training In Chandigarh.pdf
Six Month Industrial Training In Chandigarh.pdfSix Month Industrial Training In Chandigarh.pdf
Six Month Industrial Training In Chandigarh.pdf
 

Plus de Brian Pichman

AI Coding, Tools for Building AI (TBLC AI Conference)
AI Coding, Tools for Building AI (TBLC AI Conference)AI Coding, Tools for Building AI (TBLC AI Conference)
AI Coding, Tools for Building AI (TBLC AI Conference)Brian Pichman
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Brian Pichman
 
CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024Brian Pichman
 
AI Workshops at Computers In Libraries 2024
AI Workshops at Computers In Libraries 2024AI Workshops at Computers In Libraries 2024
AI Workshops at Computers In Libraries 2024Brian Pichman
 
Community Health & Welfare: Seniors & Memory Care
Community Health & Welfare: Seniors & Memory CareCommunity Health & Welfare: Seniors & Memory Care
Community Health & Welfare: Seniors & Memory CareBrian Pichman
 
Robotics in Libraries - Education and Automation
Robotics in Libraries - Education and AutomationRobotics in Libraries - Education and Automation
Robotics in Libraries - Education and AutomationBrian Pichman
 
NCompass Live - Pretty Sweet Tech - Evolve Project
NCompass Live - Pretty Sweet Tech - Evolve ProjectNCompass Live - Pretty Sweet Tech - Evolve Project
NCompass Live - Pretty Sweet Tech - Evolve ProjectBrian Pichman
 
AI tools in Scholarly Research and Publishing
AI tools in Scholarly Research and PublishingAI tools in Scholarly Research and Publishing
AI tools in Scholarly Research and PublishingBrian Pichman
 
Tech Trends 2024 and Beyond - AI and VR and MOre
Tech Trends 2024 and Beyond - AI and VR and MOreTech Trends 2024 and Beyond - AI and VR and MOre
Tech Trends 2024 and Beyond - AI and VR and MOreBrian Pichman
 
Content Creation and Social Media Tools for Libraries
Content Creation and Social Media Tools for LibrariesContent Creation and Social Media Tools for Libraries
Content Creation and Social Media Tools for LibrariesBrian Pichman
 
Artificial Intelligence (AI) – Powering Data and Conversations.pptx
Artificial Intelligence (AI) – Powering Data and Conversations.pptxArtificial Intelligence (AI) – Powering Data and Conversations.pptx
Artificial Intelligence (AI) – Powering Data and Conversations.pptxBrian Pichman
 
Cybersecurity - Defense Against The Dark Arts Harry Potter Style
Cybersecurity - Defense Against The Dark Arts Harry Potter StyleCybersecurity - Defense Against The Dark Arts Harry Potter Style
Cybersecurity - Defense Against The Dark Arts Harry Potter StyleBrian Pichman
 
NCompass Live: AI: The Modern Day Pandora's Box
NCompass Live: AI: The Modern Day Pandora's BoxNCompass Live: AI: The Modern Day Pandora's Box
NCompass Live: AI: The Modern Day Pandora's BoxBrian Pichman
 
Lets Chat AI - and Not Just ChatGPT
Lets Chat AI - and Not Just ChatGPTLets Chat AI - and Not Just ChatGPT
Lets Chat AI - and Not Just ChatGPTBrian Pichman
 
Securing and Safeguarding Your Library Setup
Securing and Safeguarding Your Library SetupSecuring and Safeguarding Your Library Setup
Securing and Safeguarding Your Library SetupBrian Pichman
 
Lets Chat AI – And Not Just ChatGPT
Lets Chat AI – And Not Just ChatGPTLets Chat AI – And Not Just ChatGPT
Lets Chat AI – And Not Just ChatGPTBrian Pichman
 
Getting Started With Using AI In Libraries (PLAN)
Getting Started With Using AI In Libraries (PLAN)Getting Started With Using AI In Libraries (PLAN)
Getting Started With Using AI In Libraries (PLAN)Brian Pichman
 
Coding with Maker Tech
   Coding with Maker Tech   Coding with Maker Tech
Coding with Maker TechBrian Pichman
 

Plus de Brian Pichman (20)

AI Coding, Tools for Building AI (TBLC AI Conference)
AI Coding, Tools for Building AI (TBLC AI Conference)AI Coding, Tools for Building AI (TBLC AI Conference)
AI Coding, Tools for Building AI (TBLC AI Conference)
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )
 
CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024
 
AI Workshops at Computers In Libraries 2024
AI Workshops at Computers In Libraries 2024AI Workshops at Computers In Libraries 2024
AI Workshops at Computers In Libraries 2024
 
Community Health & Welfare: Seniors & Memory Care
Community Health & Welfare: Seniors & Memory CareCommunity Health & Welfare: Seniors & Memory Care
Community Health & Welfare: Seniors & Memory Care
 
Robotics in Libraries - Education and Automation
Robotics in Libraries - Education and AutomationRobotics in Libraries - Education and Automation
Robotics in Libraries - Education and Automation
 
NCompass Live - Pretty Sweet Tech - Evolve Project
NCompass Live - Pretty Sweet Tech - Evolve ProjectNCompass Live - Pretty Sweet Tech - Evolve Project
NCompass Live - Pretty Sweet Tech - Evolve Project
 
AI tools in Scholarly Research and Publishing
AI tools in Scholarly Research and PublishingAI tools in Scholarly Research and Publishing
AI tools in Scholarly Research and Publishing
 
Tech Trends 2024 and Beyond - AI and VR and MOre
Tech Trends 2024 and Beyond - AI and VR and MOreTech Trends 2024 and Beyond - AI and VR and MOre
Tech Trends 2024 and Beyond - AI and VR and MOre
 
Content Creation and Social Media Tools for Libraries
Content Creation and Social Media Tools for LibrariesContent Creation and Social Media Tools for Libraries
Content Creation and Social Media Tools for Libraries
 
Artificial Intelligence (AI) – Powering Data and Conversations.pptx
Artificial Intelligence (AI) – Powering Data and Conversations.pptxArtificial Intelligence (AI) – Powering Data and Conversations.pptx
Artificial Intelligence (AI) – Powering Data and Conversations.pptx
 
Cybersecurity - Defense Against The Dark Arts Harry Potter Style
Cybersecurity - Defense Against The Dark Arts Harry Potter StyleCybersecurity - Defense Against The Dark Arts Harry Potter Style
Cybersecurity - Defense Against The Dark Arts Harry Potter Style
 
40 Day Challenge
40 Day Challenge40 Day Challenge
40 Day Challenge
 
NCompass Live: AI: The Modern Day Pandora's Box
NCompass Live: AI: The Modern Day Pandora's BoxNCompass Live: AI: The Modern Day Pandora's Box
NCompass Live: AI: The Modern Day Pandora's Box
 
Lets Chat AI - and Not Just ChatGPT
Lets Chat AI - and Not Just ChatGPTLets Chat AI - and Not Just ChatGPT
Lets Chat AI - and Not Just ChatGPT
 
Securing and Safeguarding Your Library Setup
Securing and Safeguarding Your Library SetupSecuring and Safeguarding Your Library Setup
Securing and Safeguarding Your Library Setup
 
CES 2023
CES 2023CES 2023
CES 2023
 
Lets Chat AI – And Not Just ChatGPT
Lets Chat AI – And Not Just ChatGPTLets Chat AI – And Not Just ChatGPT
Lets Chat AI – And Not Just ChatGPT
 
Getting Started With Using AI In Libraries (PLAN)
Getting Started With Using AI In Libraries (PLAN)Getting Started With Using AI In Libraries (PLAN)
Getting Started With Using AI In Libraries (PLAN)
 
Coding with Maker Tech
   Coding with Maker Tech   Coding with Maker Tech
Coding with Maker Tech
 

Dernier

CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppCeline George
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 

Dernier (20)

CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website App
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Staff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSDStaff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSD
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 

Coding Platforms for Beginners

  • 1. Developing a Coding Program for Users BRIAN PICHMAN | Evolve Project
  • 2. What Code Should I Learn? Welcome Developing a coding program is important if you want to teach your community various programming languages. However, the challenge is which language to choose. Do you train towards the blast to the past with Cobolt or a little more recent with HTML? Or currently, used technologies like PHP or C++? Or what if you wanted to showcase technology that is up and coming, like programming in AI and learning python? Whatever the use case, this session works through the different languages you can code, their applications in the real world, and resources for developing programs at your library for all ages.
  • 3. Evolve Project | Brian Pichman 3 The importance of coding is everywhere Why Code? • Can help teach troubleshooting in a more meaningful way • Make a “computer” do what you want it to do • Job market opportunities • Build something useful and start a business • Most of todays technological advancements are through the use of code • Automation of repetitive tasks or procedures
  • 4. Evolve Project | Brian Pichman 4 What we will cover today Agenda 2 Resources What you could use to get started 4 Coding Platforms What could you “code” 3 Coding Basics Understand the commonly used coding terms 1 Introduction 5 Requirements What do you need to be successful? 7 Job Applications Understand what careers require what languages 6 Coding Languages What are the different languages and what do they look like 8 Fun Things!
  • 5. Evolve Project | Brian Pichman 5 A set of commands that a computer can understand So What Is Coding? Coding is involved in almost every aspect of our lives. From posting on Facebook, to your smart phones, to games, to websites, to this very webinar. Coding makes things happen, and they are simply instructions to make the “magic” happen. Think of coding for computer programs as writing down the steps needed to do something.
  • 6. Evolve Project | Brian Pichman 6 How Do Computers Work Coding is made up of three things Algorithm An ordered set of steps to solve a problem (not always a mathematical problem) Process A series of actions/steps to achieve an end result (do THIS to get THAT) Procedure A series of actions performed in a specific order. (Follow these STEPS to get THAT)
  • 7. Peanut Butter and Jelly Describe in “Natural Language” how to make a peanut butter and jelly sandwich
  • 8. Evolve Project | Brian Pichman 8 To Get You Started Resources Codecademy is an online interactive platform that offers free coding classes in 12 different programming languages including Python, Java, JavaScript, Ruby, SQL, and Sass, as well as markup languages HTML and CSS The Open Education Consortium (OEC) is a non-profit, global, members-based network of open education institutions and organizations. OEC represents its members and provides advocacy and leadership around advancement of open education globally.
  • 9. Evolve Project | Brian Pichman 9 To Get You Started Resources Coursera is an online learning platform founded by Stanford professors Andrew Ng and Daphne Koller that offers *free* courses, specializations, and degrees. Code Avengers is an online education company based out of Hamilton, NZ and founded in 2012 by Dr Michael Walmsley (PhD computer-assisted learning). It is subscription based and is made to make coding fun and engaging.
  • 10. Evolve Project | Brian Pichman 10 To Get You Started Resources CoderDojo is a global volunteer-led community of free programming workshops for young people between 7 and 17. The movement is a grassroots organization with individual clubs acting independently. Khan Academy is a non-profit educational organization created in 2008 by Salman Khan with the goal of creating a set of online tools that help educate students. The organization produces short lessons in the form of YouTube videos. Its website also includes supplementary practice exercises and materials for educators
  • 11. Evolve Project | Brian Pichman 11 So Many Options!
  • 12. Evolve Project | Brian Pichman 12 To Get You Started There are even great apps GetHopscotch.com – an app that teaches coding through building games. Make your own Pokemon Go game, frogger, and more. LightBot is an app that teaches programming concepts through solving puzzles.
  • 13. Evolve Project | Brian Pichman 13 Some Other Coding Resources Code.org : • Code.org ® is a nonprofit dedicated to expanding access to computer science in schools and increasing participation by women and underrepresent ed minorities. Our vision is that every student in every school has the opportunity to learn computer science, just like biology, chemistry or algebra. Code.org provides the leading curriculum for K -12 computer science in the largest school districts in the United States and Code.org also organizes the annual Hour of Code campaign which has engaged 10% of all students in the world. Code.org is supported by generous donors including Amazon, Facebook, Google, the Infosys Foundation, Microsoft, and many more . • 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.kodable.com gives children opportunities to program in order to solve puzzles. Looking for inspiration: https://medium.freecodecam p.org/successfully -teaching - yourself -how-to-code -f6aac23db44a
  • 14. Evolve Project | Brian Pichman 14 What is a programming language? A programming language is set of rules that provide 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)
  • 15. Evolve Project | Brian Pichman 15 Few Basic Programming Terms Coding Basics Variables and Arrays Operators Flow Control Functions
  • 16. Evolve Project | Brian Pichman 16 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 Variables & Arrays Coding Basics Examples (concept) $string_myhomelibrary = “Montgomery Library”; $numeric_variable= 100; $myname = “Brian”;
  • 17. Evolve Project | Brian Pichman 17 An array is a type of variable (or bucket) that holds many pieces of information. Variables and Arrays Coding Basics 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”
  • 18. Evolve Project | Brian Pichman 18 • 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 Operators Coding Basics
  • 19. Evolve Project | Brian Pichman 19 Flow Control – Readable Programming Languages Coding Basics 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. Choice With choice, instructions are executed based on variables, commands, outputs, etc. Continual With continual, instructions are executed based on variables, commands, outputs, etc … as they remain true
  • 20. Evolve Project | Brian Pichman 20 Flow Control – Readable Programming Languages Coding Basics Sequence OPEN the door WALK inside the room SIT on a chair PICKUP a book READ the book. 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 } Continual While (or repeat) while (something is true) { do something here } for for (something is true) { do something here }
  • 21. Evolve Project | Brian Pichman 21 Putting Flow Control 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.
  • 22. Evolve Project | Brian Pichman 22 A function is type of procedure or routine • A function 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. Functions Coding Basics
  • 23. What could you “code” for 23 Coding Platforms With coding websites and web apps; there are front end (what users see) and back end (what admins see) that have to be considered Websites and Web Apps Web Based You may not realize it, but the servers and databases that run the things you use every day also has a level of coding involved Infrastructure Databases / Servers As more new technology for self-driving cars and digital assistants grows, there will be a need for these kinds of engineers The Hottest Trend Machine Learning / AI Often referred to as “thick” clients, applications that can be installed are coded – and each different operating systems requires different code Software Applications
  • 24. What could you “code” for 24 Coding Platforms Video Gaming Video games is much more than great graphics, every character interaction, move, and story has to be coded Make Games Work Apps that run on mobile devices need specialized coders as well! There’s an app for that Mobile Apps
  • 25. Evolve Project | Brian Pichman 25 Flash Light Examples Understanding AI If an ML algorithm makes an inaccurate prediction, then the engineer needs to correct. In DL, the algorithms can determine on their own if a prediction is accurate or not. Deep Learning Allow machines to make to their own accurate decisions without intervention from engineer Neural Networks If detects {dark} turn on {light} Logic Rules it’s performing a function with the data given and gets progressively better at that function Machine Learning Eventually, the system can turn on the light with other queues such as “I can’t see” DL “Code” Flashlight will turn on automatically as it learns other words for “dark” picking up on phrases that contains the word ML “Code”:
  • 26.
  • 27. Evolve Project | Brian Pichman 27 Coding for Websites
  • 28. Evolve Project | Brian Pichman 28 There are many ways to program Requirements Getting Started If you’re programming, you’ll need a spot to “host” your code. If its web facing, you could use sites like Blue Host or Google Cloud computing. For internal applications, you can set up a “LAMP” stack, and often be able to host everything off a single computer. Lastly, you’ll need to run software to actually code There are are also different ways to code: These would be often hardware specific applications that allow the creation or customization of physical hardware, drivers, or firmware. Machine Languages Operating Systems like Mac, Windows, and Linux can be given commands to do things. Job Control, Shell Scripting, Text Processing Scripting Use a computer screen to do most of the coding for you. For example, you don’t need to code the dimensions of a “text box” just put one in and resize it to what you need GUI – Graphical User Interface
  • 29. Evolve Project | Brian Pichman 29 Software to code: Microsoft Visual Studio
  • 30. Evolve Project | Brian Pichman 30 Software to code: Dreamweaver
  • 31. Evolve Project | Brian Pichman 31 Software to code: Notepad++
  • 32. Traditional Programming Languages • FORTRAN • FORmula TRANslation. • Developed at IBM in the mid-1950s. • First programming language • Designed for scientific and mathematical applications by scientists and engineers.
  • 33. Traditional Programming Languages (cont’d.) • COBOL • Common Business Oriented Language. • Developed in 1959. • Typically used for business applications.
  • 34. Traditional Programming Languages (cont’d.) • 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.
  • 35. Traditional Programming Languages (cont’d.) • 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.
  • 36. Object-Oriented Programming Languages • 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
  • 37. Object-Oriented Programming Languages • 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.
  • 38. Special Programming Languages • Scripting Languages • JavaScript and VBScript • PHP and ASP • Perl and Python • Command Languages • sh, csh, bash, cmd
  • 39. Special Programming Languages • 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.
  • 40. Considerations when choose languages • Proprietary • Microsoft Languages (C#, C++, Visual Basic) • Oracle (Java) • Open Source • PHP • Python • Standardized Languages • HTML • Databases • Microsoft SQL (Microsoft), MySQL (Open Source), NoSQL (now Apples)
  • 41. • Formerly: Run-time performance • At one point, a well performing computer was costly, so lightweight languages had to be used, concise commands, and less “flashy” design • Now: Life cycle (human) cost is more important • Ease of use for both user and programmer • Cost of maintenance (debugging, updates, etc) What determines a “right” language
  • 46. Evolve Project | Brian Pichman 46 Raspberry Pi (Teaching Python) http://www.circuitbasics.com/how-to-write-and-run-a-python- program-on-the-raspberry-pi/
  • 47. Evolve Project | Brian Pichman 47 Arduino IDE
  • 48. Evolve Project | Brian Pichman 48 Looking “Under the Hood” with Developer Tools https://developers.google.com/web/tools/chrome-devtools/beginners/html
  • 49. .mit.edu Scratch is a programming language for everyone. Create interactive stories, games, music and art and share them online.
  • 50. B E E B OT S M S R P : $ 8 9 . 9 5 Learn how to code without a computer. Either using tactile squares or pressing the buttons on the bot, program your robot to move. https://www.terrapinlogo.com/beebot.h tml
  • 51. B LU E - B OT M S R P : $ 1 2 0 Code a robot with tiles
  • 52. OZOBOT MSRP: $60 Learn how to program by drawing https://ozobot.com/
  • 53.
  • 54. Resources • https://ozobot.com/stem-education their main education page • https://portal.ozobot.com/lessons the lesson page • Teachers Guide: • https://files.ozobot.com/stem-education/ozobot-teachers-guide.pdf
  • 56. WINK MSRP: $80 Fun activities to program a robot using Arduino. This low cost robot allows students to program common robotic tasks such as: Line Following Light Seeking Barrier Detection Autonomous Roaming Creative Experimentation https://www.plumgeek.com/wink.html
  • 57.
  • 58. Resources • Software Installations: • https://www.plumgeek.com/wink-getting-started.html • Quick Start: • https://www.plumgeek.com/uploads/5/4/7/6/54769677/wink_coding_example_rev01 -1.pdf • All Lessons: https://www.plumgeek.com/learn-to-code.html • Scroll to the bottom; download both the example code and the lesson guides
  • 59. Itty Bitty Buggy MSRP: $59.99 The Itty Bitty Buggy kit comes with a base Buggy plus four opportunities to build a sloth, a ladybug, a dodo bird and an alien. Learn to code, have your robot detect light, lines, voice control, color, and more. https://microduinoinc.com/itty-bitty-buggy/ https://idealab.microduinoinc.com/asset
  • 60. Kano Harry Potter MSRP: 99.99 Build a wand. Learn to code. Make magic. https://kano.me/store/us/products/coding-wand
  • 61. Finch The Finch was designed to allow students to write richly interactive programs. On-board features include: Light, temperature, and obstacle sensors, Accelerometers, Motors, Buzzer, Full-color beak LED, Pen mount for drawing capability, Plugs into USB port - no batteries required https://www.birdbraintechnologies.com/finch/
  • 62.
  • 63. Resources • Loan Program: • https://www.birdbraintechnologies.com/finch-robot-loan-program/ • Curriculum Guides • https://www.birdbraintechnologies.com/finch/curriculum/scratch/
  • 64. Evolve Project | Brian Pichman 64 Feel free to reach out! Questions / Contacts 815-534-0403 www.evolveproject.org bpichman@evolveproject.org Twitter: @bpichman linkedin.com/in/bpichman slideshare.net/bpichman