vivencias desarrollando cocos2d

44
Vivencias Ricardo Quesada

Upload: ricardo-quesada

Post on 13-Jun-2015

1.503 views

Category:

Technology


4 download

DESCRIPTION

Vivencias desarrollando cocos2d para iPhone. Incluye partes técnicas, partes de administración, lo importante del trabajo duro y la ejecución comparado con las ideas, y más.

TRANSCRIPT

Page 1: Vivencias desarrollando cocos2d

VivenciasRicardo Quesada

Page 2: Vivencias desarrollando cocos2d

Vivencias...

Desarrollo

Administración / Liderando

Viviendo

...de cocos2d iOS

Page 3: Vivencias desarrollando cocos2d

Busco transmitirles...

Dedicación

Ideas

Algo de suerte

...se pueden hacer cosas importantes

Page 4: Vivencias desarrollando cocos2d

Algunos logros de cocos2d

Page 5: Vivencias desarrollando cocos2d

Logros de cocos2d (I)

5 #1 Best Seller App en EE.UU

Varios en el Top #10

Muchos en el Top #100

Más de 2500 juegos en el App Store

Page 6: Vivencias desarrollando cocos2d

Logros de cocos2d (II)

4 libros exclusivos sobre cocos2d

Otros libros de iOS que lo tratan en menor medida

Conferencias: Siempre hay alguien que da alguna charla

Cursos especializados sobre cocos2d

Page 7: Vivencias desarrollando cocos2d

Logros de cocos2d (III)

Herramientas comerciales y gratis en torno a cocos2d

Varias empresas piden programadores cocos2d

centenares de usuarios lo mencionan en su CV de LinkedIn

Page 8: Vivencias desarrollando cocos2d

Quien lo usa

Page 9: Vivencias desarrollando cocos2d

Varios forks (I)

2008: cocos2d (python): Mac, Linux, Win

2008: cocos2d for iPhone (obj-c): iOS, Mac

2009: ShinyCocos (ruby): iOS

2009: cocos2d win32 (c++): Win

2009: cocosNet (c#): (Mono)

Page 10: Vivencias desarrollando cocos2d

Varios forks (II)

2009: cocos2d-android (java): Android

2010: cocos2d-android-1 (java): Android

2010: cocos2d-x (c++): iOS, Android, Win, Linux(*)

2011: cocos2d-javascript (js): Web

2011: cocosCairo (python): Linux, OLPC

Page 11: Vivencias desarrollando cocos2d

Varios forks (III)

2011: XMcocos2d (c++)

2011: WiEngine (c++)

[?]: AS3 / Flash

[?]: Otro port a mono

Page 12: Vivencias desarrollando cocos2d

Dedicación

Page 13: Vivencias desarrollando cocos2d

Desarrollo:

Desarrollar nuevos features

Features urgentes: Nuevo dispositivo, SDK

Integrar código de la comunidad

Integrar 3ros: editores, física

Arreglar bugs

Trabajo duro

Page 14: Vivencias desarrollando cocos2d

Trabajo duro (II)

Estar actualizado:

OpenGL ES 1.1 / 2.0

SDK: Que le sirve a cocos2d, que no

Videos de WWDC

Mejoras en el lenguaje

Hay algún nuevo editor ?

Page 15: Vivencias desarrollando cocos2d

Trabajo duro (III)

Testing

Casos de prueba para TODO

Multiples dispositivos + multiples SDK

Test de performance

Page 16: Vivencias desarrollando cocos2d

Trabajo duro (IV)

Documentación:

API

Programmer Guide

Tips & Tricks

Page 17: Vivencias desarrollando cocos2d

Trabajo duro (V)

Releases:

Frecuentes

Test de integración

Release Notes

Anuncios en foros, twitter, etc.

Page 18: Vivencias desarrollando cocos2d

Trabajo duro (VI)

Templates

cocos2d iOS / Mac

cocos2d iOS / Mac + fisica

Page 19: Vivencias desarrollando cocos2d

Trabajo duro (VII)

Comunidad:

Leer las preguntas

Contestar las que se puedan

Moderar: spam, tags, foros,

Page 20: Vivencias desarrollando cocos2d

Trabajo duro (VIII)

Administrativo:

Backups

Actualizar sitio / foro

Hosting

Page 21: Vivencias desarrollando cocos2d

Trabajo duro (IX)

Trabajo tiempo completo

...o más: desde la madrugada hasta la noche

...inclusive fines de semana

Page 22: Vivencias desarrollando cocos2d

Trabajo duro (X)

Todo es más fácil si...

Te apasiona lo que haces (+ energía)

Te sentis orgulloso de lo que haces (+ calidad)

Page 23: Vivencias desarrollando cocos2d

Ideas

Page 24: Vivencias desarrollando cocos2d

Ideas

¿Cómo surgen las ideas?

No se

Page 25: Vivencias desarrollando cocos2d

Ideas (II)

cocos2d Python: Surge de una necesidad puntual

Pyweek / Los Cocos

Alternativas: pygame, pygext

Page 26: Vivencias desarrollando cocos2d

Ideas (III)

cocos2d iPhone:

Surge de necesidad puntual

Oportunidad de llenar un vacio

Page 27: Vivencias desarrollando cocos2d

Ideas (IV)

¿Tienen que ser revolucinarias las ideas?

cocos2d: es un motor de juegos 2D

¿Tiene que ser buena?

Si es “buena”, mejor

Si es “mala”, no se

Page 28: Vivencias desarrollando cocos2d

Ideas (V)

¿Qué tan importante es la idea...

...comparada con la ejecución?

La ejecución es casi todo

Page 29: Vivencias desarrollando cocos2d

Factor suerte

Page 30: Vivencias desarrollando cocos2d

Suerte

c2d python: algunos no estabamos trabajando

c2d python: diseño ideal para iPhone

Antes de iPhone SDK me había comprado una MacBook

iPhone SDK: Nadie estaba haciendo algo similar

Page 31: Vivencias desarrollando cocos2d

Random

Page 32: Vivencias desarrollando cocos2d

Comunidad / Foro

Para todos: novatos hasta expertos

Foro vs. lista de email.

Importante de establecer ciertas reglas

ej: respeto hacia el otro

Dando el ejemplo

Page 33: Vivencias desarrollando cocos2d

poder -> responsabilidad

Page 34: Vivencias desarrollando cocos2d

Ideas / Ego

Usar la mejor idea:

No se trata de tener razon

No importa de quien venga

Ser el lider de proyecto != tener razon

Testear la idea con más personas

Page 35: Vivencias desarrollando cocos2d

Version de código

SVN vs. Git

Confianza vs. desarrollo

Branches baratos

Github

Simplificó administración en orden de magnitud

Pull request / forks

Page 36: Vivencias desarrollando cocos2d

Usuario

Pensar siempre como el usuario ¿Qué necesita?

Si vos fueras el usuario ¿que usuarias? ¿qué no? ¿qué cambiarias?

¿Tiene la calidad y/o features que necesito?

Page 37: Vivencias desarrollando cocos2d

Foco

2d vs 3D

motor vs. extensiones

motor vs. editores

Producto vs. servicio

iOS vs. multiplataforma

Compatibilidad para atras ?

Multi render ?

No incluir hacks

Page 38: Vivencias desarrollando cocos2d

Recursos

Administrar los recursos

tiempo

personas

¿Que hay que prioritizar ?

Page 39: Vivencias desarrollando cocos2d

Sub proyectos

Extensiones: cocos2d-extensions

cocos3D

• cocos2d-x

Page 40: Vivencias desarrollando cocos2d

Licencia

• MIT vs. LGPL

Page 41: Vivencias desarrollando cocos2d

Como vivir• Donaciones

• Haciendo juegos para 3ros

• Componentes “pro”

• Dando cursos

• Escribiendo libros y/o documentación

• Código fuente de un juego terminado

• Editores

• Publicidad / sponsorship

Page 42: Vivencias desarrollando cocos2d

• Indie -/-> no profesional

• Código abierto -/-> no profesional

• Código cerrado -/-> profesional

Page 43: Vivencias desarrollando cocos2d

¿ Preguntas ?

[email protected]

• @ricardoquesada

Page 44: Vivencias desarrollando cocos2d

Gracias