bdd - buzzword driven development - build the next cool app for fun and for... fun

Post on 08-May-2015

623 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Lamp stack is dead, long live the lamp stack!A quick overview of the technologies used in the "TISTIMO" project. with @cirpo

TRANSCRIPT

@_orso_

mo@ideato.it

@cirpo

ac@ideato.it

L

The act of creating a computer program in the company of your bros.

embrace brogramming

BROGRAMMING

The act of creating a computer program in the company of your bros.

embrace brogramming

BROGRAMMING

#lifeinideato

BROGRAMMING

nodejs

nosqljavascript

gamificationwebsockets

gattini

html5realtime

map/reduce

hadoopmvc

telecommuting

redis

microframeworkboook

backbonejs

agile

tdd

xp

mongodb

css3

cloud

responsive

startup

pair programmingbdd

publish/suscribe

server-side javascript

closure

functional programming

buzzwords

LAMP stack is dead,long live the LAMP

stack!

lamp stack

is PHP dead?

K

Jis PHP dead?

absolutely not!

#lifeinideato

USER STORIES

#lifeinideato

estimation

AS Ua I WANT register to the app SO THAT I can join

#lifeinideato

@_orso_

estimation

#lifeinideato

3

@_orso_

estimation

#lifeinideato

3

@cirpo

estimation

@_orso_

#lifeinideato

23

@cirpo

estimation

@_orso_

{telecommuting,agile}

#lifeinideato

php ecosystem

TISTIMO

{startup,agile}

php ecosystem tistimo

{agile}

php ecosystem tistimo

{agile}

php ecosystem tistimo

{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

{agile}

tistimo

{mvc,XP,tdd,closure}

tistimo

{mvc,XP,tdd,closure}

K

tistimo

{mvc,XP,tdd,closure}

K

IT’S TOO MUCH

SILEX

silex silex

J{mvc,XP,tdd,closure,microframework,rest}

SF2 vs SILEX

silex silex

J{mvc,XP,tdd,closure,microframework,rest}

100 MB vs 0.5 mb

Highly configurable vs simple config

Solid base vs prototyping

{mvc,XP,tdd,closure,microframework,rest}

silex silex

J

{bdd,}

B!"#$

behat

J

{bdd,} B!"#$

behat

J

{bdd,} B!"#$

behat

J

{bdd,} B!"#$

behat

J

{bdd,} B!"#$

behat

J

mysql

L

nosql

J{nosql}

nosql

J

every value is accessible by a key (string)

“project”

“user:cirpo”

{nosql}

nosql

JData types

string

hashes

lists

(sorted) sets

{nosql}

nosql

J{noslq}

id User Password Name Surname Created

234 cirpo c1rp0 Alessandro Cinelli 2012-03-03

nosql

J{noslq}

A redis user

“obj_type:id:attribute”

“user:234:name” => “Alessandro”

“user:234:username” => “cirpo”

nosql

J{noslq}

Users“user:username”“user:username:is_logged”“user:username:score” => int

Projects“project:projectname”“project:projectname:estimate_queue” => list

nosql

J{noslq}

User Stories“user_story:id”“user_story:status” => hash

Scores“users_scores” => sorted set“users_affinity” => sorted set

nosql

J{noslq}

w00t!J

tistimo

tistimo

L

tistimo

•php single request

•shared nothing architecture

nodejs

J{nodejs,serverside-javascript,websocketsrealtime}

nodejs

J

code

{nodejs,serverside-javascript,websocketsrealtime}

socket.io

J{nodejs,serverside-javascript,websocketsrealtime}

socket.io

J{nodejs,serverside-javascript,websocketsrealtime}

server side

socket.io

J{websocketsrealtime}

client side

nosql

J

code

{nodejs,serverside-javascript,websocketsrealtime}

backbonejs

J{mvc,javascript}

backbonejs

J{mvc,javascript}

backbonejs

J{mvc,javascript}

backbonejs

J{mvc,javascript}

backbonejs

J{mvc,javascript}

backbonejs

J{mvc,javascript}

nodejs

nosqljavascript

gamificationwebsockets

gattini

html5realtime

map/reduce

hadoopmvc

telecommuting

redis

microframeworkboook

backbonejs

agile

tdd

xp

mongodb

css3

cloud

responsive

startup

pair programmingbdd

publish/suscribe

server-side javascript

closure

functional programming

buzzwords

Who's using Redis?

J

Who's using Redis? (and our beloved PHP!)

JJ +

Who's using nodejs?

J

Who's using backbonejs?

J

• nodejsconf

Thank YOU!

@_orso_

mo@ideato.it

@cirpo

ac@ideato.it

top related