Este post es una recopilación charlas sobre como mejorar como desarrolladores. En estas charlas nos cuentan consejos, experiencias,.. y al menos a mi me han ayudado a replantearme una serie de creencias para seguir aprendiendo y mejorando no solo como desarrollador sino también como persona. @ladybenko es una personal que trabaja haciendo las DevTools de … Continúa leyendo Charlas interesantes 8 Marzo
2 años desde que dejamos Madrid para volver a Sevilla. En este tiempo han pasado muchas cosas: nuevo trabajo, nuevos compañeros, un par de mudanzas, una hipoteca,… voy a contaros como fue ese «salto».
Las razones por las que me cambié son claras: queríamos vivir más cerca de la familia (el AVE ya cansaba) y Madrid con un bebé lo veíamos logísticamente «complicado». En cuanto al salto… son muchas dudas empezando por: yo me voy con lo que parece un buen trabajo (incluso en las entrevistas hice preguntas que no se me hubiesen ocurrido hacer en otro caso), pero ¿qué pasa con mi pareja?
Trabajar con un buen equipo es una de las mejores cosas que puede pasarnos, tener a nuestro lado a gente que sabe más que nosotros, que nos ayuda, nos guía, nos reta hace que cada día saquemos lo mejor de nosotros e intentemos superarnos. Todo lo que vamos a leer en este post son experiencias personales, sobre las características que creo debemos fomentar en los equipos de desarrollo software para que sean efectivos, abierto y por tanto mejores.
Formar un equipo no es algo que podamos hacer de la noche a la mañana fichando buenos profesionales, creo que crear un gran equipo de desarrollo es un camino que hacemos paso a paso, equivocándonos, fallando aprendiendo y mejorando. Ninguno de los siguiente puntos funcionan de la noche a la mañana y creo que funcionarán aun peor si son impuestos. Solo existe una cosa que podemos hacer y es trabajar, trabajar y trabajar para conseguir resultados, y no me refiero solo a entregas, proyectos, funcionalidades, sino a trabajar para mejorar el entorno de trabajo, las relaciones con los compañeros y en definitiva crear un clima de con de confianza en el que se mantenga la motivación con proyectos, planes e incentivos que nos hagan estar feliz en nuestro día a día.
Object Calisthenics – Reglas de oro para escribir mejor código orientado a objetos
Object Calisthenics es un artículo de Jeff Bay escribió hace bastante en el que nos cuenta una serie de reglas para escribir mejor código orientado a objetos.
El planteamiento de Jeff es sencillo: es fácil conocer todos los conceptos básicos que rodean a un buen diseño: cohesión, poco acoplamiento, legibilidad, tests,… sin embargo es tremendamente dificil poner estos conceptos en práctica, ya que una cosa es entender la encapsulación y otra muy distinta es implementarla.
La idea es tener una serie de reglas que nos ayuden a saber si nuestro código va por buen camino.
Llevo algo de tiempo programando en PHP, al principio mi código era horrible pero poco a poco he ido aprendiendo más y más sobre buenas prácticas, SOLID, naming, uso de herramientas para mejorar el código (PHP Mess detector, PHP code Sniffer…). Además la serie de post sobre refactoring PHP legacy code he podido poner en práctica muchos de estos conocimientos.
Este post es un recopilatorio de buenas prácticas y consejos que he ido aprendiendo en estos últimos meses.
Instalación de PHP
Antes de empezar a desarrollar tenemos que tener bien configurado PHP y el archivo de configuración php.ini es esencial.
date.timezone -> tener bien definido la zona horaria nos evitará muchos quebraderos de cabeza.
charset -> trabajar con UTF-8.
error_reporting -> tener diferentes entornos (producción, desarrollo,…) y que cada uno notifique errores distintos.
Extensiones -> Instalar extensiones como XDebug,, mycript, intl,Imagemagick.*
Utilizar Composer
Existen miles de librerías en PHP, github esta lleno de componentes que puedes sernos muy útiles para ayudándonos en nuestro día a día. Librerías par manejar CSV, para log, para manejar peticiones HTTP,… Para gestionar todas estas dependencias creo que lo más útil es utilizar composer.