Digital
Technology &
Programming
1
Merit Badge Presentation by Robert Casto
Robert Casto
Troop 952
Dan Beard Council
Cincinnati, OH
Counselor / Presenter
Participation and Content
• Everyone is expected to participate
• Don’t be afraid to ask questions
• Attitude determines altitude
• Be prepared to experiment!
• We have a LOT to do! Raise a hand if
you need help so I can stop.
Please show your Cyber Chip card.
Safety
DT-1, P-1a
Letter from your Scoutmaster
or parent will vouch for you.
No
Cyber
Chip
Card?
DT-1, P-1a
First
Aid
Health
P-1b
Evolution
of the
Cell Phone
DT-2a
1 minutes 44 seconds
Future
Digital
Technology
DT-2b
5 minutes 58 seconds
Brief
History of
Program-
ming
P-2a, DT-4a
4 minutes 7 seconds
Computing
Milestones
1949 – First stored program
1955 – RAM was introduced
1956 – First transistor
1975 – First personal computer
1981 – First laptop
1990 – World Wide Web created
1992 – First multimedia PC
1996 – Google search engine
1999 – Wi-Fi created
2003 – First 64-bit processor
2004 – Firefox browser created
2005 – YouTube, Android is bought by Google
2010 – iPad unveiled
2012 – Facebook hits 1 billion users on Oct 4
P-2b
Programming
Language
Introduced
1954 – Fortran numeric computation
1958 – LISP list processing
1960 – Algol algorithm description
1964 – BASIC general and easy to use
1966 – Logo educational
1970 – Pascal procedural, data structure
1970 – SQL relational database
1973 – C general, system level
1983 – C++ object oriented
1987 – Perl Unix scripting, reporting
1991 – HTML markup language for www
1994 – Java portable virtual machine
1994 – Ruby dynamic OO general
1995 – PHP general scripting, WordPress
1995 – Javascript browser scripting
2000 – C# general OO part of .NET
P-3a
Concepts
Introduced
The first procedural language: FORTRAN (1954-58).
Execution model. Data types. Control structures. Storage. Subroutines and
functions. Parameter passing.
The first declarative language: LISP (1958-62). Expressions,
statements, and declarations. S-expressions and lists. Recursion. Static and
dynamic scope. Abstract machine. Garbage collection. Programs as data.
Parameter passing. Strict and lazy evaluation.
Block-structured procedural languages: Algol (1958-68) and
Pascal (1970). Block structure. Parameters and parameter passing. Stack and
heap storage. Data types. Arrays and pointers.
Object-oriented languages -- Concepts and origins: Simula (1964-
67) and Smalltalk (1971-80). Dynamic lookup. Abstraction. Subtyping.
Inheritance. Object models.
Types. Types in programming languages. Type systems. Type safety. Type
checking and type inference. Polymorphism. Overloading. Type equivalence.
Data abstraction and modularity: SML Modules (1984-
97). Information hiding. Modularity. Signatures, structures, and functors.
Sharing.
The state of the art: Scala (2004-06). Procedural and declarative
aspects. Blocks and functions. Classes and objects. Generic types and
methods. Variance annotations. Mixin-class composition.
P-3a
Top 5
Languages
to Learn
in 2017
P-2b
3 minutes 58 seconds
Top
Coding
Languages
P-3a
Programmed
Devices
Name 3 devices you rely on every
day that are programmed.
P-3b, DT-4b
Code  Hardware
P-3b
P-3b
P-3b
P-3b
P-3b
Intel Core
i7-5960X
Processor Die
Map
22nm Tri-Gate
3D Transistors
2.6B Transisters
.7” x .8”
(not even a
square inch!)
P-3b
Code  Hardware
Describe why it is important to properly
dispose of digital technology. List at least
three dangerous chemicals that could be
used to create digital devices or used
inside a digital device.
Do an Internet search for an organization
that collects discarded digital technology
hardware or devices for repurposing or
recycling. Find out what happens to that
waste. Share with your counselor what
you found.
Find a battery recycling center near you and
find out what it does to recycle
batteries. Share what you have learned
with your counselor about the proper
methods for recycling batteries.
Recycling
DT-8a, DT-8c, DT-8e
Recycling
Toxic
Chemicals
DT-8a, DT-8c, DT-8e
Recycling
DT-8a, DT-8c, DT-8e
Recycling
What
happens
to
batteries
that are
recycled?
DT-8a, DT-8c, DT-8e
Image
Digitization
DT-3a
5 minutes 49 seconds
Data
Compression
DT-3b
3 minutes 23 seconds
Discuss the similarities and
differences between
computers, mobile devices, and
gaming consoles.
Computing
Platforms
DT-3d
Networks
What is
the
Internet?
DT-3e
3 minutes 44 seconds
Home
Network
DT-5a
HTTPS
Securing
the
Internet
DT-5b
HTTPS
DT-5c
Malware
Trends
DT-3d
Brand new malware
specimen every 4.2 seconds
Malware
Mobile
Not
Immune
DT-3d
90% of new mobile
malware is on Android
Malware
Motiva-
tion
DT-3d
Making money is the main motivation
How do they try to do this?
Malware
Types
DT-3d
Malware
Ransom-
ware
DT-3d
Malware
Spyware
DT-3d
Malware
Adware
DT-3d
Malware
Worms
DT-3d
Malware
Spam
Click-Bait
DT-3d
Malware
Key-
logger
DT-3d
Malware
Key-
logger
DT-3d
Malware
Key-
logger
DT-3d
Malware
Key-
logger
Software
Based
DT-3d
Scams
How do
scammers
operate?
DT-3d
Create an emergency
 You need to act now
 Your computer is compromised
 Your friend is in trouble
Payment method requested
 iTunes cards
 Cashiers checks from 24-hour stores
 Access to your account information
Will be unable to answer simple questions
 What is the capital of the state they are in
 What is the weather like right now where they are
Scams
Common
types of
scams
going on
right now
DT-3d
1. Phishing
2. Free trial offer
3. In the name of love
4. A friend sent you an E-Card
5. The Wifi Danger Zone
6. It’s “too good to be true” offer
7. Your computer is infected!
8. Tugging at your heart-strings
9. Ransomware
10.Not really your Facebook friend
Scams
How to
avoid
being a
victim?
DT-3d
1. Use common sense
2. Never use the same password on multiple
accounts
3. Change your password to important
accounts every 6 months. (use a generator)
4. Avoid opening email attachments
5. Pay attention to spelling and grammar
6. Never share financial information unless
you called them
7. Offers that are too good to be true usually
are
8. Use security measures like two-factor
authentication
9. Only make purchases with known legitimate
organizations
10.Change your smartphone settings so they
Requirement 4
Intellectual property. Do the following:
a. Explain the four types of intellectual property
used to protect computer programs.
b. Describe the difference between licensing and
owning software.
c. Describe the differences between freeware,
open source, and commercial software, and
why it is important to respect
the terms of use of each.
Describe the difference between
licensing and owning software.
Licensing
Vs
Owning
DT-7a
Trade
Secrets
P-4b , DT-7a
Trade
Secrets
P-4b , DT-7a
Describe the difference between
licensing and owning software.
Licensing
Vs
Owning
P-4bP-4b, DT-7a
IP Law
P-4c, DT-7c , DT-
IP Law
P-4c, DT-7c , DT-
Apple sued Samsung in 2011 for
creating a phone with a black
rectangular front with rounded
corners and won $399 million.
Samsung says the fine should
only be on the case, not the
entire device. The supreme
court will be ruling later this
year.
• Why is this important?
• What could it change?
Recent
IP Cases
P-4c
Apple sued Samsung in 2011 for
creating a phone with a black
rectangular front with rounded
corners and won $399 million.
Samsung says the fine should
only be on the case, not the
entire device.
• Why is this case important?
• What could it change?
• What would your ruling be?
Recent
IP Cases
P-4c, DT-7c , DT-
Apple won its lawsuit against
Samsung in May of 2018.
Samsung was ordered to pay
Apple $533.1M. This was
reduced from $1B which was
what Samsung had made
selling the copied device.
Do you agree with the
Supreme Court?
Recent
IP Cases
P-4c, DT-7c , DT-
PayPal filed suite against Pandora
for trademark infringement.
• Do these marks confuse you?
• Did Pandora do this on
purpose?
• How about on a small screen?
Recent
IP Cases
P-4c, DT-7c , DT-
In November of 2017, both PayPal
and Pandora reached a written
settlement agreement and
agreed to dismiss the lawsuit.
New Pandora Logo
Recent
IP Cases
P-4c, DT-7c , DT-
Digital
Technology
Projects
Example
Spread-
sheet
P-6a
Digital
Technology
Projects
Example
Word
Processor
P-6b
Digital
Technology
Projects
Example
Drawing
Program
P-6c
Digital
Technology
Projects
Example
Presentation
P-6d
Digital
Technology
Projects
Example
Image
Recording
P-6e
Digital
Technology
Projects
Example
Audio
Recording
P-6f
Digital
Technology
Projects
Example
Blog
P-6a
Digital
Technology
Projects
Example
Web Page
P-6a
Use 3 of the following to create
something useful.
• Spreadsheet
• Word Processor
• Drawing
• Presentation
• Camera
• Audio
• Blog
• Web Page
Digital
Technology
Projects
Choose
3
DT-6
Careers
P-6 P-6, DT-9a
Requirement 5
Projects. Do the following:
a. With your counselor’s approval, choose a sample program. Then, as a minimum,
modify the code or add a function or subprogram to it. Debug and demonstrate
the modified program to your counselor.
b. With your counselor’s approval, choose a second programming language and
development environment, different from those used for requirement 5a and
in a different industry from 5a. Then write, debug, and demonstrate a
functioning program to your counselor, using that language and environment.
c. With your counselor’s approval, choose a third programming language and
development environment, different from those used for requirements 5a and
5b and in a different industry from 5a or 5b. Then write, debug, and
demonstrate a functioning program to your counselor, using that language and
environment.
d. Explain how the programs you wrote for requirements 5a, 5b, and 5c process
inputs, how they make decisions based on those
inputs, and how they provide outputs based on
the decision making.
With your counselor’s approval,
choose a sample program.
Then, as a minimum, modify
the code or add a function or
subprogram to it. Debug and
demonstrate the modified
program to your counselor.
Modify
Code
Debug
Program
#1
P-5a
Web
Languages
HTML
CSS
Javascript
P-5a
https://liveweave.com/YaXY18
Show me the results after you do
each of the following tasks
• Change H1 font size to 4em and
color to green.
• Add CSS to make Hide button
bigger and change background
color
• Add another button to ask for
text and change the headline
• Add a button with the label Grow
• Create a Javascript function that
grows the H1 font size by .1 each
time the Grow button is clicked
Web
Languages
HTML
CSS
Javascript
P-5a
https://liveweave.com
Some Examples
• https://liveweave.com/TcZrXF
• https://liveweave.com/GoGhKy
• https://codepen.io/pens/
With your counselor’s approval, choose
a second programming language
and development environment,
different from those used for
requirement 5a and in a different
industry from 5a. Then write,
debug, and demonstrate a
functioning program to your
counselor, using that language and
environment.
2nd
Language
Write
Debug
P-5b
https://blockly-games.appspot.com/maze
Write code to complete each of the mazes.
There are 10 and each one gets more
difficult. You should be able to complete the
first 9. Number 10 is quite difficult to solve.
2nd
Language
P-5b
https://blockly-games.appspot.com/turtle
Write code to complete each of the
drawings with the turtle. There are 9 with
the last one drawing a game character. See
if you can recognize it.
2nd
Language
P-5b
With your counselor’s approval, choose
a third programming language and
development environment,
different from those used for
requirements 5a and 5b and in a
different industry from 5a or 5b.
Then write, debug, and demonstrate
a functioning program to your
counselor, using that language and
environment.
3rd
Language
Write
Debug
P-5c
Caesar Cipher Encoder/Decoder
• Accept 2 input values and an flag
– The first is a shift value
– The second is the coded message
– The flag tells the program to encrypt or decrypt
• Output the message descrambled using an
alphabet shifting algorithm
• Decode the following 3 messages and
present the answers
• 14:Qcbufohg cb rsqcrwbu mcif twfgh
asggous
• 6:zu qkkv seykrl vneyoigrre yzxutm,
sktzgrre gcgqk, gtj suxgrre yzxgomnz
• 5:10:15:Vemwi csyv lerh mj csy aerx e
wrego
3rd
Language
Show
Your
Code
P-5c
Explain how the programs you
wrote for requirements 5a, 5b,
and 5c process inputs, how they
make decisions based on those
inputs, and how they provide
outputs based on the decision
making.
Requirement
5d
Explain
P-5d
My
Contact
Info
• EMAIL:
casto.robert@gmail.com
• POST:
7723 Tylers Place Blvd #180
West Chester, OH 45044
Help clean up please!
History
Videos
Are you ready for Change2?
Blue Cards
• Fill all dates, even those for the counselor
• If getting partial, fill out numbers and dates on
back in table. I will initial each as I review.
• Do not present card unless it is filled out

Digital Technology and Programming Combined Presentation

Editor's Notes

  • #3 Tell a bit about myself so they know who I am, why I’m there, and that I’m happy to be able to share the next few hours with them.
  • #7 Right – something no one can take away from you Duty – required service or assigned task Obligation – something you are bound to do; promise, commitment, responsibility
  • #24 Vehicle computer, Traffic Light Controller, Microwave Oven Interface