SlideShare una empresa de Scribd logo
CÓMO SER UN JEDI DEVELOPER
RODRIGO DE FRUTOS $> t3chfest
Leganés, 11 y 12 de febrero
‣ android developer
‣ bq
‣ tuenti
‣ UC3M
‣ cofundador t3chfest
‣ betabeers
‣ aprendiz de impro
¿Y QUIÉN ES ESTE TÍO?
¿QUÉ ES PROGRAMAR?
¿Y CÓMO ES UN BUEN
PROGRAMADOR?
ES FÁCIL SER TENTADO POR
EL LADO OSCURO
MALAS
ESTIMACIONES
PARECE QUE
FUNCIONA
QA MANUALCOPY-PASTE
MAL
DISEÑO
REQUISITOS
VAGOS
CONOCE TUS HERRAMIENTAS
TIP 1
APRENDE A USAR LA CONSOLA
CONOCE TU ENTORNO DE DESARROLLO
UTILIZA SISTEMAS DE CONTROL DE
VERSIONES
Dropbox is no the
v e r s i o n c o n t r o l
s y s t e m y o u a r e
looking for.
CUIDA TU CÓDIGO
TIP 2
“CÓDIGO DUPLICADO, OBJETOS DIOS, MALOS
NOMBRES, EL LADO OSCURO ELLOS SON. SI
ALGÚN DÍA RIGEN TU VIDA, PARA SIEMPRE TU
DESTINO DOMINARÁN.” Maestro Yoda
http://blog.codinghorror.com/code-smells/
CLEAN CODE
Midiendo la Calidad de Código: WTF/Minuto https://youtu.be/wHeGmWXT-eU
‣nombres significativos
‣clases y métodos cortos
‣responsabilidad bien
definida de métodos y
clases (S.R.P.)
‣cuidado con los
comentarios
‣Ley de Demeter
‣fail fast, fail soon
‣guias de estilo
K.I.S.S.!
KEEP IT SIMPLE, STUPID!
D.R.Y.
DON’T REPEAT YOURSELF
PATRONES DE DISEÑO
LA REGLA DEL BOY SCOUT
SIEMPRE DEJA EL LUGAR MÁS LIMPIO
QUE COMO LO ENCONTRASTE
TESTEA, TESTEA, TESTEA
TIP 3
TEST UNITARIOS
https://twitter.com/dave1010/status/613601365529657344
TEST DE INTEGRACIÓN
giphy.com/gifs/unit-test-integration-3o7rbPDRHIHwbmcOBy
DISEÑA
PARA
TESTEAR
ADMINISTRA TU TIEMPO
TIP 4
UTILIZA METODOLOGIAS ÁGILES
POMODORO
http://pomodorotechnique.com/
AUTOMATIZA TAREAS REPETITIVAS
NUNCA HAGAS LO MISMO MAS DE DOS VECES
http://uk.businessinsider.com/programmer-automates-his-job-2015-11
PREOCÚPATE POR TU TRABAJO
TIP 5
UN BUEN DISEÑO ES
UN BUEN COMIENZO
“CONSIDEREN UN EDIFICIO CON UNA VENTANA ROTA. SI LA
VENTANA NO SE REPARA, LOS VÁNDALOS TENDERÁN A ROMPER
UNAS CUANTAS MÁS. FINALMENTE, QUIZÁS HASTA IRRUMPAN EN
EL EDIFICIO; Y, SI ESTÁ ABANDONADO, ES POSIBLE QUE LO
OCUPEN ELLOS Y QUE PRENDAN FUEGO DENTRO”
James Q. Wilson y George L. Kelling The Atlantic Monthly (1982)
TEORÍA DE LAS VENTANAS ROTAS
APRENDE A DECIR “SI”
APRENDE A DECIR “NO”
MEJORA TUS CONOCIMIENTOS
TIP 6
“LA CAPACIDAD DE HABLAR
NO TE HACE INTELIGENTE”
Qui-Gon Jinn
APRENDE UN LENGUAJE DE
PROGRAMACIÓN AL AÑO
generated using http://brorlandi.github.io/StarWarsIntroCreator/
http://www.slideshare.net/alotor/codemotion-2014-20-lenguajes-en-40-minutos
LEER ES
IMPORTANTE
LIBROS
NOTICIAS
BLOGS
https://github.com/kilimchoi/engineering-blogs
ASISTE A CHARLAS, MEETUPS Y
CONFERENCIAS
PRACTICA Y MEJORA TU TÉCNICA
KATAS, HACKATHONES, PROYECTOS OPEN SOURCE
QUE LA FUERZA
OS ACOMPAÑE
Recommended Books
CLEAN CODE by ROBERT C. MARTIN
CLEAN CODER by ROBERT C. MARTIN
PRAGMATIC PROGRAMMER by HUNT and THOMAS
DESIGN PATTERNS by GANG OF FOUR
REFACTORING by MARTIN FOWLER
XUNIT TEST PATTERNS by MESZAROS
PRO GIT by SCOTT CHACON
97 THINGS EVERY PROGRAMMER SHOULD KNOW

Más contenido relacionado

La actualidad más candente

Retos de la participación
Retos de la participaciónRetos de la participación
Retos de la participación
Cristina Juesas
 
Quo vadis Joomla?
Quo vadis Joomla?Quo vadis Joomla?
Quo vadis Joomla?
Isidro Baquero Portero
 
Menu principal
Menu principalMenu principal
Menu principal
Remn
 
Paasalo - Usando plataformas como servicio para publicar tu aplicación
Paasalo - Usando plataformas como servicio para publicar tu aplicaciónPaasalo - Usando plataformas como servicio para publicar tu aplicación
Paasalo - Usando plataformas como servicio para publicar tu aplicación
Israel Blancas
 
Practica nº28 de flash
Practica nº28 de flashPractica nº28 de flash
Practica nº28 de flash
Rafael Carlos
 
Power point
Power pointPower point
Como crear un blog de manera divertida¡¡¡¡¡¡¡¡
Como crear un blog de manera divertida¡¡¡¡¡¡¡¡Como crear un blog de manera divertida¡¡¡¡¡¡¡¡
Como crear un blog de manera divertida¡¡¡¡¡¡¡¡
Jose Escobar
 
Tutorial ThatQuiz
Tutorial ThatQuizTutorial ThatQuiz
Tutorial ThatQuiz
Beatriz Rodriguez
 

La actualidad más candente (8)

Retos de la participación
Retos de la participaciónRetos de la participación
Retos de la participación
 
Quo vadis Joomla?
Quo vadis Joomla?Quo vadis Joomla?
Quo vadis Joomla?
 
Menu principal
Menu principalMenu principal
Menu principal
 
Paasalo - Usando plataformas como servicio para publicar tu aplicación
Paasalo - Usando plataformas como servicio para publicar tu aplicaciónPaasalo - Usando plataformas como servicio para publicar tu aplicación
Paasalo - Usando plataformas como servicio para publicar tu aplicación
 
Practica nº28 de flash
Practica nº28 de flashPractica nº28 de flash
Practica nº28 de flash
 
Power point
Power pointPower point
Power point
 
Como crear un blog de manera divertida¡¡¡¡¡¡¡¡
Como crear un blog de manera divertida¡¡¡¡¡¡¡¡Como crear un blog de manera divertida¡¡¡¡¡¡¡¡
Como crear un blog de manera divertida¡¡¡¡¡¡¡¡
 
Tutorial ThatQuiz
Tutorial ThatQuizTutorial ThatQuiz
Tutorial ThatQuiz
 

Similar a Cómo ser un jedi developer

Curso TDD Ruby on Rails #01: Introducción al testing
Curso TDD Ruby on Rails #01: Introducción al testingCurso TDD Ruby on Rails #01: Introducción al testing
Curso TDD Ruby on Rails #01: Introducción al testing
Alberto Perdomo
 
Bugs patches, trabajando con la comunidad de Drupal
Bugs patches, trabajando con la comunidad de DrupalBugs patches, trabajando con la comunidad de Drupal
Bugs patches, trabajando con la comunidad de Drupal
Manuel Garcia
 
Digital Invaders - Introducción al Prototipaje
Digital Invaders - Introducción al PrototipajeDigital Invaders - Introducción al Prototipaje
Digital Invaders - Introducción al Prototipaje
Richard Kaufman
 
M2 consumer 2.0 2021 p
M2   consumer 2.0 2021 pM2   consumer 2.0 2021 p
M2 consumer 2.0 2021 p
Juan Carlos Briceño Trujillo
 
Deuda técnica
Deuda técnicaDeuda técnica
Deuda técnica
Rodrigo Corral
 
Scrum e-tic MALAGA y SEVILLA abril 2011
Scrum e-tic MALAGA y SEVILLA abril 2011Scrum e-tic MALAGA y SEVILLA abril 2011
Scrum e-tic MALAGA y SEVILLA abril 2011
xtremobyte
 
¡Deja que lo hagan por ti!
¡Deja que lo hagan por ti!¡Deja que lo hagan por ti!
¡Deja que lo hagan por ti!
Antonio López Marín
 
#Aprender3c presentación @pbongiovanni Códigos QR
#Aprender3c presentación @pbongiovanni Códigos QR#Aprender3c presentación @pbongiovanni Códigos QR
#Aprender3c presentación @pbongiovanni Códigos QR
Pablo Bongiovanni
 
Scrum, no eres tú, soy yo
Scrum, no eres tú, soy yoScrum, no eres tú, soy yo
Scrum, no eres tú, soy yo
Carlos Buenosvinos
 
Antipatrones de desarrollo de software
Antipatrones de desarrollo de softwareAntipatrones de desarrollo de software
Antipatrones de desarrollo de software
Pablo Bouzada
 
Usabilidad Temari
Usabilidad TemariUsabilidad Temari
Usabilidad Temari
Digital Granollers
 
El efecto mariposa
El efecto mariposaEl efecto mariposa
El efecto mariposa
Software Guru
 
Proyekto d rene manual
Proyekto d rene manualProyekto d rene manual
Proyekto d rene manual
Brandon Cervantes Garcia
 
3 Presentación Taller UX - Ideación 2017
3  Presentación Taller UX - Ideación 20173  Presentación Taller UX - Ideación 2017
3 Presentación Taller UX - Ideación 2017
taller_ux
 
Curso UX Tenerife (No maltrates a tus usuarios) FG ULL - Día 5 - Testing auto...
Curso UX Tenerife (No maltrates a tus usuarios) FG ULL - Día 5 - Testing auto...Curso UX Tenerife (No maltrates a tus usuarios) FG ULL - Día 5 - Testing auto...
Curso UX Tenerife (No maltrates a tus usuarios) FG ULL - Día 5 - Testing auto...
Romén Rodríguez-Gil
 
Prácticas ágiles y software abierto para poner en órbita tu startup
Prácticas ágiles y software abierto para poner en órbita tu startupPrácticas ágiles y software abierto para poner en órbita tu startup
Prácticas ágiles y software abierto para poner en órbita tu startup
Ruben Orta
 
Crear contenidos y de paso mejorar el seo -
Crear contenidos y de paso mejorar el seo - Crear contenidos y de paso mejorar el seo -
Crear contenidos y de paso mejorar el seo -
Edison Monsalve
 
Curs reputació online
Curs reputació onlineCurs reputació online
Curs reputació online
Fundació Bit
 
SEGURIDAD INFORMÁTICA
SEGURIDAD INFORMÁTICASEGURIDAD INFORMÁTICA
SEGURIDAD INFORMÁTICA
valen1298
 
Consejos de un perro viejo programador
Consejos de un perro viejo programadorConsejos de un perro viejo programador
Consejos de un perro viejo programador
Braulio Diez Botella
 

Similar a Cómo ser un jedi developer (20)

Curso TDD Ruby on Rails #01: Introducción al testing
Curso TDD Ruby on Rails #01: Introducción al testingCurso TDD Ruby on Rails #01: Introducción al testing
Curso TDD Ruby on Rails #01: Introducción al testing
 
Bugs patches, trabajando con la comunidad de Drupal
Bugs patches, trabajando con la comunidad de DrupalBugs patches, trabajando con la comunidad de Drupal
Bugs patches, trabajando con la comunidad de Drupal
 
Digital Invaders - Introducción al Prototipaje
Digital Invaders - Introducción al PrototipajeDigital Invaders - Introducción al Prototipaje
Digital Invaders - Introducción al Prototipaje
 
M2 consumer 2.0 2021 p
M2   consumer 2.0 2021 pM2   consumer 2.0 2021 p
M2 consumer 2.0 2021 p
 
Deuda técnica
Deuda técnicaDeuda técnica
Deuda técnica
 
Scrum e-tic MALAGA y SEVILLA abril 2011
Scrum e-tic MALAGA y SEVILLA abril 2011Scrum e-tic MALAGA y SEVILLA abril 2011
Scrum e-tic MALAGA y SEVILLA abril 2011
 
¡Deja que lo hagan por ti!
¡Deja que lo hagan por ti!¡Deja que lo hagan por ti!
¡Deja que lo hagan por ti!
 
#Aprender3c presentación @pbongiovanni Códigos QR
#Aprender3c presentación @pbongiovanni Códigos QR#Aprender3c presentación @pbongiovanni Códigos QR
#Aprender3c presentación @pbongiovanni Códigos QR
 
Scrum, no eres tú, soy yo
Scrum, no eres tú, soy yoScrum, no eres tú, soy yo
Scrum, no eres tú, soy yo
 
Antipatrones de desarrollo de software
Antipatrones de desarrollo de softwareAntipatrones de desarrollo de software
Antipatrones de desarrollo de software
 
Usabilidad Temari
Usabilidad TemariUsabilidad Temari
Usabilidad Temari
 
El efecto mariposa
El efecto mariposaEl efecto mariposa
El efecto mariposa
 
Proyekto d rene manual
Proyekto d rene manualProyekto d rene manual
Proyekto d rene manual
 
3 Presentación Taller UX - Ideación 2017
3  Presentación Taller UX - Ideación 20173  Presentación Taller UX - Ideación 2017
3 Presentación Taller UX - Ideación 2017
 
Curso UX Tenerife (No maltrates a tus usuarios) FG ULL - Día 5 - Testing auto...
Curso UX Tenerife (No maltrates a tus usuarios) FG ULL - Día 5 - Testing auto...Curso UX Tenerife (No maltrates a tus usuarios) FG ULL - Día 5 - Testing auto...
Curso UX Tenerife (No maltrates a tus usuarios) FG ULL - Día 5 - Testing auto...
 
Prácticas ágiles y software abierto para poner en órbita tu startup
Prácticas ágiles y software abierto para poner en órbita tu startupPrácticas ágiles y software abierto para poner en órbita tu startup
Prácticas ágiles y software abierto para poner en órbita tu startup
 
Crear contenidos y de paso mejorar el seo -
Crear contenidos y de paso mejorar el seo - Crear contenidos y de paso mejorar el seo -
Crear contenidos y de paso mejorar el seo -
 
Curs reputació online
Curs reputació onlineCurs reputació online
Curs reputació online
 
SEGURIDAD INFORMÁTICA
SEGURIDAD INFORMÁTICASEGURIDAD INFORMÁTICA
SEGURIDAD INFORMÁTICA
 
Consejos de un perro viejo programador
Consejos de un perro viejo programadorConsejos de un perro viejo programador
Consejos de un perro viejo programador
 

Último

herramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcel
herramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcelherramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcel
herramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcel
Eduardo455921
 
Introduccion al Lenguaje de Programación C++
Introduccion al Lenguaje de Programación  C++Introduccion al Lenguaje de Programación  C++
Introduccion al Lenguaje de Programación C++
PaulDelgadoSoto
 
primer manual de nuestra compañía de soporte
primer manual de nuestra compañía de soporteprimer manual de nuestra compañía de soporte
primer manual de nuestra compañía de soporte
eliersin13
 
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
micarnavaltupatrimon
 
DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.
DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.
DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.
Maria Celeste Trujillo Cruz
 
Buscador de Eventos y Fiestas en España - Buscafiesta
Buscador de Eventos y Fiestas en España - BuscafiestaBuscador de Eventos y Fiestas en España - Buscafiesta
Buscador de Eventos y Fiestas en España - Buscafiesta
holabuscafiesta
 
TARJETA MADRE DE DAYRON FABRI RUIZ-1.pptx
TARJETA MADRE DE DAYRON FABRI RUIZ-1.pptxTARJETA MADRE DE DAYRON FABRI RUIZ-1.pptx
TARJETA MADRE DE DAYRON FABRI RUIZ-1.pptx
dayronfabricioruizmo
 
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
micarnavaltupatrimon
 

Último (8)

herramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcel
herramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcelherramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcel
herramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcel
 
Introduccion al Lenguaje de Programación C++
Introduccion al Lenguaje de Programación  C++Introduccion al Lenguaje de Programación  C++
Introduccion al Lenguaje de Programación C++
 
primer manual de nuestra compañía de soporte
primer manual de nuestra compañía de soporteprimer manual de nuestra compañía de soporte
primer manual de nuestra compañía de soporte
 
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
 
DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.
DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.
DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.
 
Buscador de Eventos y Fiestas en España - Buscafiesta
Buscador de Eventos y Fiestas en España - BuscafiestaBuscador de Eventos y Fiestas en España - Buscafiesta
Buscador de Eventos y Fiestas en España - Buscafiesta
 
TARJETA MADRE DE DAYRON FABRI RUIZ-1.pptx
TARJETA MADRE DE DAYRON FABRI RUIZ-1.pptxTARJETA MADRE DE DAYRON FABRI RUIZ-1.pptx
TARJETA MADRE DE DAYRON FABRI RUIZ-1.pptx
 
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
 

Cómo ser un jedi developer