cómo ser un jedi developer
TRANSCRIPT
CÓMO SER UN JEDI DEVELOPERRODRIGO 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 MANUAL COPY-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 Yodahttp://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 SCOUTSIEMPRE 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ÓNgiphy.com/gifs/unit-test-integration-3o7rbPDRHIHwbmcOBy
DISEÑA PARA
TESTEAR
ADMINISTRA TU TIEMPO
TIP 4
UTILIZA METODOLOGIAS ÁGILES
POMODORO
http://pomodorotechnique.com/
AUTOMATIZA TAREAS REPETITIVASNUNCA 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ÉCNICAKATAS, HACKATHONES, PROYECTOS OPEN SOURCE
QUE LA FUERZA OS ACOMPAÑE
Recommended BooksCLEAN CODE by ROBERT C. MARTIN
CLEAN CODER by ROBERT C. MARTINPRAGMATIC PROGRAMMER by HUNT and THOMAS
DESIGN PATTERNS by GANG OF FOURREFACTORING by MARTIN FOWLER
XUNIT TEST PATTERNS by MESZAROS PRO GIT by SCOTT CHACON
97 THINGS EVERY PROGRAMMER SHOULD KNOW