Title: Class 03 Errors in Computing
1 Class 03 Errors in Computing
- Todays Agenda
- A short video about the Y2K issues in Hong Kong.
- Classification and analysis of the error images
collected. - Common practices to create errors in software.
- The biggest error in computing technology.
- Errors used in digital art and music.
- Glitch art.
- Hands on exercises to go through the tactics of
Jodi and Jim Punk.
2 Class 03 Errors in Computing
- Y2K the Hong Kong Connection
- Ill go through the programming details
afterward. - You try to record the keywords that are often
used to describe the issues, the impacts and the
resolutions in the video.
3 Class 03 Errors in Computing
- Error sharing
- Based on the material collected over the last two
weeks, choose the 5 most interesting ones and
describe them to us with the following in mind, - Who are the victims of the error?
- What may be the causes of the error?
- What did the users respond to the error?
- What can be the impacts of the error?
- Do you feel good with the error?
4 Class 03 Errors in Computing
Error handling Assumption we do not want/like
errors. But why?
5 Class 03 Errors in Computing
Error handling Errors cause troubles. Outage,
blockage, interruption, etc. negative
impacts. Impacts on productivity, security,
stability.
6 Class 03 Errors in Computing
Mooninite http//edition.cnn.com/2007/US/02/01/bo
ston.bombscare/index.html
http//sweb.cityu.edu.hk/sm2263/class03/moon01.ht
m
7 Class 03 Errors in Computing
Error handling Scale / scope of the
error Natural error earthquake Mechanical
failure car engine breakdown Informational
error bug, programmed transaction Biological
error infection From local to global
8 Class 03 Errors in Computing
Error handling We somehow know we cannot
completely eliminate errors. To err is
human. We want to manage them. But how?
9 Class 03 Errors in Computing
Error handling Can we prevent the error? Can we
avoid the error? Can we fix the error? Can we
reduce the impact of the error?
10 Class 03 Errors in Computing
Error handling Our logic for every error, there
is a cause. When a machine is running smoothly
for a period and suddenly there is an error, what
will you think? Will you try to find out the
cause of the error?
11 Class 03 Errors in Computing
Error handling Someone has changed something.
12 Class 03 Errors in Computing
Error recovery If we undo the change made by
someone, can we resume the machine back to normal?
13 Class 03 Errors in Computing
Error resolution What if that someone makes the
change again in the future? Can we not allow
that someone to make any changes in the
machine? Can we kill that someone? Can we
modify the machine such that even if someone
makes the change again, it wont fail?
14 Class 03 Errors in Computing
Error preparation Can we try out the error
situation such that we can prepare for the
worst? Remember fire drill in primary school
15 Class 03 Errors in Computing
Benefits of errors Reveal exceptional
situations. Reveal the deficiency of the initial
design. Reveal a room for improvement. Reveal a
lack of quality assurance. Reveal a spark of
creativity?
16 Class 03 Errors in Computing
Common practices to create errors in
program Division by zero Mixing data
type Rounding error Index out of bound Confusion
with syntax Infinite loop File not found End of
file Overwrite existing file
17 Class 03 Errors in Computing
Division by zero trace("division by zero") var
mNumber 10 var nNumber 0 trace(m/n)
18 Class 03 Errors in Computing
Mixed data type trace("invalid datatype") var
mNumber 10 var nNumber 7 var qString
"12" trace(mn) trace(qn)
19 Class 03 Errors in Computing
Round error The integer 3 will equal 3.3 if the
later is rounded according to arithmetic function
round(). There are cases where programmers
purposely round down the dollar figures in bank
accounts and transfer the cents into their own
accounts which can be a significant sum.
20 Class 03 Errors in Computing
Index out of bound trace("array index
error") var mArray new Array(3) m0
3 m1 2 m2 1 trace(m) trace(m.length)
m5 167 trace(m) trace(m.length)
21 Class 03 Errors in Computing
Confusion with syntax var mNumber 0 var
nNumber 3 if (mn) trace("m n") else
trace("m not n")
22 Class 03 Errors in Computing
Infinite loop var iNumber 1 var sumNumber
0 while (ilt100) sum i
23 Class 03 Errors in Computing
The biggest error in our times Y2k, the
millennium bug Remember the coverage in media
just before the year 2000.
24 Class 03 Errors in Computing
Y2K error var birthNumber 87 var nowNumber
07 var ageNumber now - birth trace(age)
25 Class 03 Errors in Computing
Y2K fix var birthNumber 1987 var nowNumber
2007 var ageNumber now - birth trace(age)
26 Class 03 Errors in Computing
Y2K fix var birthNumber 83 var nowNumber
07 if (birthgt50) birth 1900 else
birth 2000 if (nowgt50) now 1900
else now 2000 var ageNumber now -
birth trace(age)
27 Class 03 Errors in Computing
Playing with the Y2K issue Y2K and the
Millennium Butterflies
28 Class 03 Errors in Computing
Glitch arts A glitch is a short-lived fault in a
system. The term is particularly common in the
computing and electronics industries, as well as
among players of video games, although it is
applied to all types of systems including human
organizations. From the German glitschen, meaning
'to slip.' from wikipedia
29 Class 03 Errors in Computing
- Glitch arts
- Glitch as aesthetic that plays with errors and
noise in the presentation of the artwork - Glitch as a component of the creative process
30 Class 03 Errors in Computing
Glitch music The use of digital artifacts, noise
like distortion, which sound like digital errors
in the process. Some artists physical scratch
the medium, like pouring acid onto the cd surface
to create glitch like sound.
31 Class 03 Errors in Computing
Glitch music Examples can be found in, Pan
Sonic (formerly known as Panasonic) Kid606 Oval
(Markus Popp) Autechre (Rob Brown, Sean Booth)
32 Class 03 Errors in Computing
Glitch music Pan Sonic
33 Class 03 Errors in Computing
Glitch music Kid606
34 Class 03 Errors in Computing
Glitch music Oval process
35 Class 03 Errors in Computing
Glitch music Autechre
36 Class 03 Errors in Computing
Glitch arts Tony Scott
37 Class 03 Errors in Computing
Glitch arts Tony Scott
38 Class 03 Errors in Computing
Glitch arts Tony Scott http//www.beflix.com
39 Class 03 Errors in Computing
Glitch arts Jason Salavon
40 Class 03 Errors in Computing
Glitch arts Alessandro Canova
41 Class 03 Errors in Computing
Glitch arts Alessandro Canova
42 Class 03 Errors in Computing
Glitch arts Alessandro Canova
43 Class 03 Errors in Computing
JavaScript exercises Understand scripting within
a HTML page. Defining a function. Using some
default events.
44 Class 03 Errors in Computing
JavaScript exercises ltscript language"Javascript
"gt function test01() document.write("I love
SM2263.ltbrgt") return test01() lt/scriptgt
45 Class 03 Errors in Computing
JavaScript exercises ltscript language"Javascript
"gt function test01() document.write("I want
to eat now.ltbrgt") return lt/scriptgt ltbody
onLoad"test01()"gt
46 Class 03 Errors in Computing
JavaScript exercises ltscript language"Javascript
"gt function test01() window.resizeTo(100,100
) window.moveTo(300,300)
return lt/scriptgt ltbody onLoad"test01()"gt
47 Class 03 Errors in Computing
JavaScript exercises ltscript language"JavaScript
"gt function test01() window.status "How
are you?" return lt/scriptgt ltbody
onLoad"test01()"gt
48 Class 03 Errors in Computing
JavaScript exercises ltscript language"JavaScript
"gt var i 0 function test01() i
window.status "counting to "i
return function test02()
window.setInterval("test01()",1000)
return test02() lt/scriptgt
49 Class 03 Errors in Computing
JavaScript exercises ltscript language"JavaScript
"gt var i 0 function test01() i
document.myForm.myNum.value i
return function test02()
window.setInterval("test01()",1000)
return lt/scriptgt ltbody onload"test02()"gt
50 Class 03 Errors in Computing
JavaScript exercises ltscript language"JavaScript
"gt function test01() var x
screen.availWidth var y screen.availHeight
document.write("screen width is
"x"ltbrgt") document.write("screen height is
"y"ltbrgt") return test01() lt/scriptgt
51 Class 03 Errors in Computing
JavaScript exercises ltscript language"JavaScript
"gt function test01() window.moveBy(10,0)
return function test02()
window.resizeTo(200,200) window.moveTo(0,200)
window.setInterval("test01()",1000)
return lt/scriptgt ltbody onload"test02()"gt
52 Class 03 Errors in Computing
JavaScript exercises ltscript language"JavaScript
"gt function test01() window.scrollBy(0,5)
return function test02()
window.resizeTo(700,180) window.moveTo(100,20
0) window.scrollTo(0,0)
window.setInterval("test01()",500)
return lt/scriptgt ltbody onload"test02()"gt
53 Class 03 Errors in Computing
Have Fun