Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1...

49
When IT Goes Bad From Software to Society Fluency with Information Technology 2012-01-27 Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel

Transcript of Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1...

Page 1: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

When IT Goes BadFrom Software to Society

Fluency with Information Technology

2012-01-27 Katherine Deibel, Fluency in Information Technology 1

INFO100 and CSE100

Katherine Deibel

Page 2: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Errors and IT

Basic fact: Technology can go bad At least two sources of fault

How the technology operates

How people use the technology At least two forms of correction

Debugging

IT Fluency

2012-01-27 Katherine Deibel, Fluency in Information Technology 2

Page 3: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

DebuggingTHE ANTS… THEY'RE IN

MY PANTS!!!

2012-01-27 Katherine Deibel, Fluency in Information Technology 3

Page 4: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

2012-01-27 Katherine Deibel, Fluency in Information Technology 4

But before we begin…

A Historical Note

Page 5: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

5

An Amazing Photo

Philadelphia Inquirer, "Your Neighbors" article, 8/13/1957

2012-01-27 Katherine Deibel, Fluency in Information Technology

Page 6: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

6

Grace Hopper

Education Vasser: B.S. in Mathematics & Physics

Yale: M.S. and Ph.D. in Mathematics

Naval Career Joined Naval Reserves (1943)

Assigned to work with Howard Aiken

Harvard First person to write a program for the Mark I

(arctangent calculations)

Member of the Mark II and III development teams

2012-01-27 Katherine Deibel, Fluency in Information Technology

Page 7: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

7

The Infamous Bug

While working on the Mark II, Hopper discovered a moth stuck in a relay.

Originated the term “debugging”

2012-01-27 Katherine Deibel, Fluency in Information Technology

Page 8: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

DebuggingTHE ANTS… THEY'RE STILL IN MY PANTS!!!

2012-01-27 Katherine Deibel, Fluency in Information Technology 8

Page 9: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Many Types of Debugging

Programming Debugging Writing HTML, CSS, Javascript, etc.

Software Malfunction Program crashes, feature doesn't work

as expected, etc. Hardware Debugging

Printer will not print

Wireless will not connect

2012-01-27 Katherine Deibel, Fluency in Information Technology 9

Page 10: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Your Role as the Debugger

Programming Debugging You are the chief mechanic

Software and Hardware Mechanic Your role is much more limited

2012-01-27 Katherine Deibel, Fluency in Information Technology 10

Historically, it was much, much easier for people without technical degrees to perform repairs on home electronics: televisions, radios, etc.

Page 11: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Programming Debugging

Ignore the number of errors Remember, errors propagate errors

Start with the error that first occurs Again, errors propagate errors

If there is error feedback, read it! Make a fix and then check

Do NOT fix repeated errors unless you are certain that you know the cause

2012-01-27 Katherine Deibel, Fluency in Information Technology 11

Page 12: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Example: XHTML Validation

We attempt to validate a page We get 24 errors and warnings.. EEK! What do we do?

2012-01-27 Katherine Deibel, Fluency in Information Technology 12

Page 13: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Example: XHTML Validation

We attempt to validate a page We get 24 errors and warnings.. EEK!

2012-01-27 Katherine Deibel, Fluency in Information Technology 13

Ignore the number of errors

Page 14: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Example: XHTML Validation

First error reported is an <h1> tag

<h1 class="banner>…</h1> We put in the missing quote

2012-01-27 Katherine Deibel, Fluency in Information Technology 14

Start with the first occurring error

Page 15: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Example: XHTML Validation

We save and revalidate Only 4 errors and warnings now

2012-01-27 Katherine Deibel, Fluency in Information Technology 15

Make a fix and then check

Page 16: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Example: XHTML Validation

All of our errors now look like this We need to put <img> inside <p>…

</p> We can do this for all four

2012-01-27 Katherine Deibel, Fluency in Information Technology 16

Line 11, Column 25: document type does not allow element "img" here; missin one of "p", "h1", "h2", "h3", "h4", "h5", h6", "div", "pre", "address", "fieldset", "ins", "del" start-tag

... <img src="photo.png" alt="a cute calico cat" />

Only fix multiple errors if certain of cause

Page 17: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Software/Hardware Debugging

Much more difficult If possible, first save and backup your work Look around and see what you know Read the screen

Write down any error messages to look up online

Is there a pointer/link that offers help When in doubt, restart

2012-01-27 Katherine Deibel, Fluency in Information Technology 17

Page 18: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Katherine Deibel, Fluency in Information Technology 18

The Levels of Restart

Close and restart the program Might need to close in Task Manager (Windows)

Log out and log back in Restart the machine (hot reboot) Shutdown the machine, wait a few

minutes, then restart (cold reboot)

2012-01-27

Page 19: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Why Restarting Helps

Think mental exhaustion When programs run

Memory gets allocated and deallocated (available for others to use)

Memory is not cleared when deallocated Legacies of past calculations build up

Minor things begin to snowball

Entropy ensues

2012-01-27 Katherine Deibel, Fluency in Information Technology 19

Page 20: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Why Restarting Helps

Helps flush away the clutter, clears the board, etc.

Power down causes most volatile memory to "zero" out

Basically gives programs a do-over, mulligan, fresh start, etc.

2012-01-27 Katherine Deibel, Fluency in Information Technology 20

Page 21: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

But I must whine…Why bugs will always occur

2012-01-27 Katherine Deibel, Fluency in Information Technology 21

Page 22: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

IT Cannot Be Perfect

Bugs, errors, etc. cannot be avoided beyond very simple situations Proven to be mathematically impossible

Unless you invoke a god-like being

But you cannot prove the god-like being will always work

Unless you invoke a god-like, god-like being…

Etc.2012-01-27 Katherine Deibel, Fluency in Information Technology 22

Page 23: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

We Do Our Best

Software engineering Testing before products hit market Upgrades and fixes Risk assessments and failure cost

analyses

2012-01-27 Katherine Deibel, Fluency in Information Technology 23

Debugging will always be necessary

Page 24: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

When Users Go BadDon't always blame the inventors and engineers

2012-01-27 Katherine Deibel, Fluency in Information Technology 24

Page 25: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

How IT Goes Bad

Spam Scams Phishing Viruses Trojans Malware Misinformation Pollution

2012-01-27 Katherine Deibel, Fluency in Information Technology 25

Page 26: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Spam – Not a pork product

Different definitions Informal: e-mail you don't want

Formal: unsolicited e-mail Estimated to be ≈80% of all e-mail Mostly sent by bot-nets

Virus-infected computers

Distributed across globe

No central means of takedown

2012-01-27 Katherine Deibel, Fluency in Information Technology 26

Page 27: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Spam – Address Collection

Some companies sell their lists Hacking of lists We give our e-mail addresses to them

Crawled from webpage mailto links

Our names are listed at organizations▪ John Smith is a student at UW

▪ UW e-mails are @uw.edu

▪ Try [email protected], [email protected], [email protected], etc.

2012-01-27 Katherine Deibel, Fluency in Information Technology 27

Page 28: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Avoiding Giving Out E-mail

Make it harder to crawl from a page I avoid mailto links

List e-mail verbosely: deibel AT uw DOT edu

Do not make your address an image file—This violates accessibility guidelines

Keep separate e-mail addresses An e-mail address purely for online shopping

A dump addresses for registering products, etc.

I never check these except when I am interacting with said companies

2012-01-27 Katherine Deibel, Fluency in Information Technology 28

Page 29: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Spam Filtering

Incorporated into e-mail clients and providers Series of filters that add “points” to email

score Examples

Forged header information

Suspicious content

No text, just an image

Foreign language email

Fonts all in Caps Threshold determines if e-mail is spam

Page 30: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

How Spam Filters Work

Spam filters cannot “understand” the content of a message, they just guess based on message characteristics

Spam score is computed by checking Forged message headers

Suspicious text content (keywords like “lottery” or “mortgage”)

No text, just as image (an attempt to foil text checks)

Foreign language text

Fonts styles – all caps, large font size, bright colors

Page 31: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

How Spam Filters Work

If the score passes some threshold, the message is quarantined, meaning put aside in a spam folder

User can scan the spam folder for legitimate messages that have been wrongly flagged

Page 32: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Spam Filtering Threshold

Set too high, you miss some e-mails Set too low, you get more spam No perfect value in general

Adjust until it works for you

Might need to 'whitelist' certain addresses

Page 33: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Whitelisting

Opposite of blacklisting A list of entities you want to allow in Examples for Kate:

E-mails from Sallie Mae (student loans)

Student e-mails▪ Hotmail addresses

▪ Foreign characters

2012-01-27 Katherine Deibel, Fluency in Information Technology 33

Page 34: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Spam Netiquette

Many of the commercial spam emails we receive seem unsolicited, but may not be so

We often have given our permission to the sender we may not remember doing this

it was in some small print or checkbox on some Web form or site we used

Reputable companies provide “opt out” addresses or links in the ads so we can get off the mailing lists

12-34

Page 35: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Scams

Nigerian E-mail Scam

SUBJECT: URGENT RESPONSEDEAR SIRIT IS WITH HEART FULL OF HOPE THAT I WRITE TO SEEK YOUR HELP IN THE CONTEXT BELOW. I AM MRS. MUNIRAT ABACHA THE SECOND WIFE OF THE FORMER NIGERIA HEAD OF STATE, LATE GENERAL SANI ABACHA, WHOSE SUDDEN DEATH OCCURRED ON 8TH OF JUNE 1998.

HAVING GOTTEN YOUR PARTICULARS FROM THE FAMILY LIBRARY, I HAVE NO DOUBT ABOUT YOUR CAPACITY AND GOOD WILL TO ASSIST US IN RECEIVING INTO YOUR CUSTODY (FOR SAFETY) THE SUM OF US $20 MILLION WILLED AND DEPOSITED IN MY FAVOUR BY MY LATE HUSBAND, PLUS 24 CARAT GOLD DUST WORTH USD5M.

Page 36: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Scams

Old tricks, new technologies You've won a lottery so we need your

bank account number

Forward this e-mail to collect money for a kidney transplant

Free chemicals at European prices

2012-01-27 Katherine Deibel, Fluency in Information Technology 36

Page 37: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Phishing

False web site for collecting personal information Most companies will not send e-mails such as this

Check the links

Contact the company directly

<a href="http://borscht.ru/custverifyinfo.aspx">http://trustedbank.com/general/custverifyinfo.asp</a>

Page 38: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Malware: Malicious Software

Viruses

SW that rides along on other software with the intent of doing damage and propagating

Worms

SW that transmits itself (often by email) with the intent of doing damage and propagating

Trojan

SW inside of other SW with monitoring or other malicious purposes

Spyware

SW resident in your computer trying to find information about you for malicious purposes

Page 39: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

First Virus: Morris Worm

The first major malicious attack on computers came from Robert Tappan Morris, Jr, a Cornell CS major who lost control of self-replicating software in 1988

It took down 10% of the Internet (~6000 machines) and cost millions to recover from

Morris got 3 years probation, 400 hrs community service, $10,000 fine

Page 40: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Vectors of Attack

E-mail attachments Even friends and family may send them

Facebook Apps Infected websites

Google warns you about these if it can Infected ads on websites

Rare nowadays Infected downloads from sketchy sites

Just buy your own copy of Plants vs Zombies

2012-01-27 Katherine Deibel, Fluency in Information Technology 40

Page 41: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Misinformation

Sometimes it's not the technology but the message Credibility of web pages

Appeal to popularity

Deliberate tampering

Fearmongering

2012-01-27 Katherine Deibel, Fluency in Information Technology 41

Page 42: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Googlebombing

Embedding links in web pages to change Google Search results

Positive and negative uses Positive:

Prevent an anti-semitic site from being the first result for 'jew'

Negative:Link "dumb motherf***er" to George W. Bush during the 2000 elections

2012-01-27 Katherine Deibel, Fluency in Information Technology 42

Page 43: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Wikipedia Falsehoods

Vandalism is frequent but gets caught usually quickly Easier for popular topics

Seigenthaler Incident

Palin-Paul Revere revisionism Neutral point-of-view contention

2012-01-27 Katherine Deibel, Fluency in Information Technology 43

Page 44: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Internet Diseases

Munchausen by Internet People self-diagnosing via WebMD

Faking illnesses for sympathy Morgellons

First Internet-spread epidemic

Non-existing illness that is a group think led hysterical delusional parasitosis

2012-01-27 Katherine Deibel, Fluency in Information Technology 44

Page 45: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Pollution

Disposing of old electronics Too hazardous for landfills

Few recycling options Recycling efforts are problematic

Shipped to third world countries

Sits outside and contaminates area

Poor working conditions for recycling staff

2012-01-27 Katherine Deibel, Fluency in Information Technology 45

Page 46: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Other Errors of IT Use

Intellectual Property Theft TV shows

Movies

Books Distractions

Productivity drops due to e-mail

Workers spend time on Facebook Cyberbullying, flame wars, etc.

2012-01-27 Katherine Deibel, Fluency in Information Technology 46

Page 47: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Not all IT is BadRight?

2012-01-27 Katherine Deibel, Fluency in Information Technology 47

Page 48: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Lots of Positive Aspects to IT

Greater access to information Connecting disparate groups New means of expression, sharing,

ideas, learning, etc. What are some others?

2012-01-27 Katherine Deibel, Fluency in Information Technology 48

Page 49: Fluency with Information Technology 2012-01-27Katherine Deibel, Fluency in Information Technology 1 INFO100 and CSE100 Katherine Deibel.

Summary

IT can and does go wrong at times. Sometimes it's the technology

Debugging can help you fix the problems

You just need to observe and think Sometime it's the use of technology

Be aware of how it can go wrong

Be smart, careful, and kind IT should be a net positive

2012-01-27 Katherine Deibel, Fluency in Information Technology 49