More Related Content Similar to BDD - Buzzword Driven Development - Build the next cool app for fun and for... fun (20) More from Alessandro Cinelli (cirpo) (16) BDD - Buzzword Driven Development - Build the next cool app for fun and for... fun1. BDD
Buzzword
Driven
Development
Build the next cool app (for fun and for profit fun)
2. @_orso_ @cirpo
mo@ideato.it ac@ideato.it
5. BROGRAMMING
The act of creating a computer
program in the company of your bros.
embrace brogramming
6. BROGRAMMING
The act of creating a computer
program in the company of your bros.
embrace brogramming
8. telecommuting agile
functional programming
mongodb tdd
startup map/reduce
gattini
publish/suscribe nosql xp
realtime redis javascript
mvc closure hadoop
backbonejs html5
gamification
cloud websockets
microframework
boook bdd responsive
pair programming nodejs
css3 server-side javascript
buzzwords
12. J
• big (and funny) community
• lots of libraries
• history
• web oriented language
php ecosystem
13. USER
STORIES
#lifeinideato
14. AS <role>
I WANT <do something>
SO THAT <benefit>
user story
15. AS Ua I WANT register to the app SO THAT I can join
estimation
#lifeinideato
16. @_orso_
estimation
#lifeinideato
17. @_orso_
estimation
3
#lifeinideato
18. @_orso_ @cirpo
estimation
3
#lifeinideato
19. @_orso_ @cirpo
estimation
3 2
#lifeinideato
25. {
agile
}
AS Ua I WANT vedere la lista progetti ancora da stimare
AS Ua I WANT vedere la lista dei progetti stimati
AS Ua I WANT voglio autenticarmi con il mio account twitter
AS Ur I WANT rimanere in attesa che un altro ua si unisca al progetto
AS Ur I WANT visualizzare una storia
AS Ur I WANT votare una storia
AS Ur I WANT voglio assegnare una stima ad una storia senza votarla
AS Ur I WANT voglio vedere le storie stimate fino a quel momento
AS Ur I WANT voglio vedere quante storie mancano alla fine della stima
AS Ur I WANT voglio vedere il mio grado di affinità con i miei colleghi
AS Admin I WANT voglio inserire le storie
tistimo
28. {
K
mvc,
XP,
tdd,
closure
}
IT’S TOO
MUCH
tistimo
29. {
J
mvc,
XP,
tdd,
closure,
microframework,
rest
}
SILEX
silex
silex
30. {
J
mvc,
SF2 vs SILEX
XP,
tdd,
closure,
microframework,
rest
}
100 MB vs 0.5 mb
Highly configurable vs simple
config
Solid base vs prototyping
silex
silex
31. {
J
mvc,
XP,
tdd,
closure,
microframework,
rest
}
silex
silex
39. J
{
nosql
}
every value is accessible by a key (string)
“project”
“user:cirpo”
nosql
40. J
{
nosql
}
Data types
string
hashes
lists
(sorted) sets
nosql
41. J
{
noslq
}
id User Password Name Surname Created
234 cirpo c1rp0 Alessandro Cinelli 2012-03-03
nosql
42. J
{
noslq
}
A redis user
“obj_type:id:attribute”
“user:234:name” => “Alessandro”
“user:234:username” => “cirpo”
nosql
43. J
{
noslq
}
Users
“user:username”
“user:username:is_logged”
“user:username:score” => int
Projects
“project:projectname”
“project:projectname:estimate_queue” => list
nosql
44. J
{
noslq
}
User Stories
“user_story:id”
“user_story:status” => hash
Scores
“users_scores” => sorted set
“users_affinity” => sorted set
nosql
48. • php single request
• shared nothing architecture
tistimo
49. {
J
nodejs,
serverside-javascript,
websockets
realtime
}
nodejs
50. {
J
nodejs,
serverside-javascript,
websockets
realtime
}
code
nodejs
51. {
J
nodejs,
serverside-javascript,
websockets
realtime
}
socket.io
52. {
J
nodejs,
serverside-javascript,
websockets
realtime
}
server side
socket.io
54. {
J
nodejs,
serverside-javascript,
websockets
realtime
}
code
nosql
55. {
J
mvc,
javascript
}
backbonejs
56. {
J
mvc,
javascript
}
backbonejs
57. {
J
mvc,
javascript
}
backbonejs
58. {
J
mvc,
javascript
}
backbonejs
59. {
J
mvc,
javascript
}
backbonejs
60. {
J
mvc,
javascript
}
backbonejs
61. telecommuting agile
functional programming
mongodb tdd
startup map/reduce
gattini
publish/suscribe nosql xp
realtime redis javascript
mvc closure hadoop
backbonejs html5
gamification
cloud websockets
microframework
boook bdd responsive
pair programming nodejs
css3 server-side javascript
buzzwords
63. J + J
Who's using Redis? (and our beloved PHP!)