Codeaholics
Pub Quiz
Presented by Matthew Rudy
@Codeaholics HK
Slide 2
Slide 2 text
The Rules
Slide 3
Slide 3 text
No Cheating
No Computers
No Phones
Slide 4
Slide 4 text
Teams of 4(ish)
One Answer Sheet per team
Choose a funny team name
Slide 5
Slide 5 text
Marking
We’ll mark the first 3 rounds
Then take a break, and finish it.
Slide 6
Slide 6 text
Have fun!
That’s the most important thing.
Slide 7
Slide 7 text
Round 1:
Codeaholics
Slide 8
Slide 8 text
10 questions:
1+1 points each
Slide 9
Slide 9 text
Extra point: Name a speaker at this meeting
#1
When was the first
Codeaholics meetup?
a) August 2010
b) December 2010
c) February 2011
Slide 10
Slide 10 text
Extra point: What is their github handle?
#2
Who created the name
“Codeaholics”?
a) Eddie Lau
b) Matthew Rudy
c) Steve Holmes
Slide 11
Slide 11 text
Extra point: What was their original name?
#3
Who sponsors Codeaholics?
a) Enterproid
b) Softlayer
c) Thought Sauce
Slide 12
Slide 12 text
Extra point: Which group did Codeaholics
come from?
#4
Which group did Steve
previously organise?
a) Agile Hong Kong
b) Hong Kong Java User Group
c) Hong Kong Linux User Group
Slide 13
Slide 13 text
Extra point: when did he talk about it at
Codeaholics?
#5
What is the name of Jonas
Karlsson’s language?
a) Bamboo
b) Beanstalk
c) Panda
Slide 14
Slide 14 text
Extra point: how many github stars does it have?
#6
What is the name of Jimmy’s
Backbone Data Grid library?
a) BackboneData
b) BackGrid
c) DataBack
Slide 15
Slide 15 text
Extra point: how many teams presented?
#7
How many teams took part
in Code Camp #01?
a) 7
b) 8
c) 9
Slide 16
Slide 16 text
Extra point: how many parts was it?
#8
Who gave “an Introduction to
Haskell” in 2011?
a) Leonard Siu
b) William Taysom
c) YKY
Slide 17
Slide 17 text
Extra point: which HK githubber joined first?
#9
How many Githubbers are
there in Hong Kong?
a) 624
b) 724
c) 824
Slide 18
Slide 18 text
Extra point: Where was it held?
#10
In which year was the first
Hong Kong Bar Camp?
a) 2006
b) 2007
c) 2008
Slide 19
Slide 19 text
Round 1:
* / 20
Slide 20
Slide 20 text
Round 2:
Initialisms
Slide 21
Slide 21 text
10 questions:
2 points each
Slide 22
Slide 22 text
#11
ACID
What do the letters stand for:
Slide 23
Slide 23 text
#12
BASIC
What do the letters stand for:
Slide 24
Slide 24 text
#13
CRUD
What do the letters stand for:
Slide 25
Slide 25 text
#14
FIFO
What do the letters stand for:
Slide 26
Slide 26 text
#15
MINASWAN
What do the letters stand for:
Slide 27
Slide 27 text
#16
PCCW
prior to 2001
What do the letters stand for:
Slide 28
Slide 28 text
#17
REST
What do the letters stand for:
Slide 29
Slide 29 text
#18
SGML
What do the letters stand for:
Slide 30
Slide 30 text
#19
VRML
What do the letters stand for:
Slide 31
Slide 31 text
#20
WYSIWYG
What do the letters stand for:
Slide 32
Slide 32 text
Round 2:
* / 20
Slide 33
Slide 33 text
Round 3:
Authors, Designers,
Dictators
Slide 34
Slide 34 text
10 Questions
2 points each
Slide 35
Slide 35 text
#21
C
Name the Designer of:
Slide 36
Slide 36 text
#22
Coffeescript
Name the Designer of:
Slide 37
Slide 37 text
#23
Django
Name a Dictator of:
Slide 38
Slide 38 text
#24
GNU, GCC, Emacs
Name the Creator of:
Slide 39
Slide 39 text
#25
Javascript
Name the Designer of:
Slide 40
Slide 40 text
#26
Linux
Name the Dictator of:
Slide 41
Slide 41 text
#27
Python
Name the Designer of:
Slide 42
Slide 42 text
#28
Ruby
Name the Designer of:
Slide 43
Slide 43 text
#29
Ruby on Rails
Name the Creator of:
Slide 44
Slide 44 text
#30
Scala
Name the Designer of:
Slide 45
Slide 45 text
Round 3:
* / 20
Slide 46
Slide 46 text
Halfway
Time for a break!
Slide 47
Slide 47 text
Round 4:
Name The Language
Slide 48
Slide 48 text
10 Questions
2 points each
Slide 49
Slide 49 text
#31
def fibIter(n):
if n < 2:
return n
fibPrev = 1
fib = 1
for num in xrange(2, n):
fibPrev, fib = fib, fib + fibPrev
return fib
What language is this?
Slide 50
Slide 50 text
#32
fib(0) -> 0;
fib(1) -> 1;
fib(N) when N > 1 -> fib(N-1) + fib(N-2).
What language is this?
Slide 51
Slide 51 text
#33
++++++++++
>>+<<[->[->+>+<<]>[-<+>]>[-<+>]<<<]
What language is this?
Slide 52
Slide 52 text
#34
iterfibo <- function(n) {
if ( n < 2 )
n
else {
f <- c(0, 1)
for (i in 2:n) {
t <- f[2]
f[2] <- sum(f)
f[1] <- t
}
f[2]
}
}
print.table(lapply(0:20, iterfibo))
What language is this?
Slide 53
Slide 53 text
#35
|fibo|
fibo := [ :i |
|ac t|
ac := Array new: 2.
ac at: 1 put: 0 ; at: 2 put: 1.
( i < 2 )
ifTrue: [ ac at: (i+1) ]
ifFalse: [
2 to: i do: [ :l |
t := (ac at: 2).
ac at: 2 put: ( (ac at: 1) + (ac at: 2) ).
ac at: 1 put: t
].
ac at: 2.
]
].
What language is this?
Slide 54
Slide 54 text
#36
(defn fibs []
(map first (iterate (fn [[a b]] [b (+ a b)]) [0
1])))
(nth (fibs) 5)
What language is this?
Slide 55
Slide 55 text
#37
fib_iter = (n) ->
if n < 2
return n
[prev, curr] = 0, 1
for i in [1..n]
[prev, curr] = [curr, curr + prev]
return curr
What language is this?
Slide 56
Slide 56 text
#38
FUNCTION itFib (n)
n1 = 0
n2 = 1
FOR k = 1 TO ABS(n)
sum = n1 + n2
n1 = n2
n2 = sum
NEXT k
IF n < 0 THEN
itFib = n1 * ((-1) ^ ((-n) + 1))
ELSE
itFib = n1
END IF
END FUNCTION
What language is this?
Slide 57
Slide 57 text
#39
a=0
b=1
max=$1
for (( n=1; "$n" <= "$max"; $((n++)) ))
do
a=$(($a + $b))
echo "F($n): $a"
b=$(($a - $b))
done
What language is this?
Slide 58
Slide 58 text
#40
-(long)fibonacci:(int)position
{
long result = 0;
if (position < 2) {
result = position;
} else {
result = [self fibonacci:(position -1)] +
[self fibonacci:(position -2)];
}
return result;
}
What language is this?
Slide 59
Slide 59 text
Round 4:
* / 20
Slide 60
Slide 60 text
Round 5:
General Knowledge
Slide 61
Slide 61 text
10 Questions
2 point each
Slide 62
Slide 62 text
#41
Where was Tim Berners Lee
working when he invented
the World Wide Web?
Slide 63
Slide 63 text
#42
What does HTTP status
code 418 stand for?
Slide 64
Slide 64 text
#43
Who did Charles Babbage
refer to as “The Enchantress
of Numbers”?
Slide 65
Slide 65 text
#44
What is the name of
Jetbrains’ web dev IDE?
Slide 66
Slide 66 text
#45
What is the development
version of Google Chrome
called?
Slide 67
Slide 67 text
#46
What does the prefix NS in
Objective-C stand for?
Slide 68
Slide 68 text
#47
What is special about
jQuery 2.0?
Slide 69
Slide 69 text
#48
Which JVM instruction was
added in Java7 to improve
dynamic language support?
Slide 70
Slide 70 text
#49
Which HTML 5.1 tag should
be used for
“content that is directly related to or
expands upon the central topic of a
document or central functionality of
an application”?
Slide 71
Slide 71 text
#50
Which “K” is the next
version of Android rumored
to be called?
Slide 72
Slide 72 text
Round 5:
* / 20
Slide 73
Slide 73 text
Round 6:
Anagrams
Slide 74
Slide 74 text
Anagram
• Take the given letters
• Rearrange them to form new words
• eg. “Acne Hijack”
Slide 75
Slide 75 text
5 Questions
2 points each
Slide 76
Slide 76 text
#51
“Choice Loads”
Slide 77
Slide 77 text
#52
“Romantic Yob”
Slide 78
Slide 78 text
#53
“Clip More”
Slide 79
Slide 79 text
#54
“Sly, Prim Oomph”
Slide 80
Slide 80 text
#55
“Due Icon”
Slide 81
Slide 81 text
Bonus Anagram
10 points
Slide 82
Slide 82 text
#56
“I’d Wow
Conformists”
Slide 83
Slide 83 text
Round 6:
* / 20
Slide 84
Slide 84 text
Round 7:
The Snowball Round
Slide 85
Slide 85 text
1 Question
9 Answers
2 points each
Slide 86
Slide 86 text
30 points for all 9
0 points any wrong
Slide 87
Slide 87 text
#SNOWBALL
HTTP 1.1 + RFC5789
Specify 9 HTTP Verbs!
Name as many as you can!