En nuestro Blog encontrarás todo tipo de información tecnologica asi como tambien las ultimas tendencias sobre desarrollo, la nube y nuestros productos.


Pago de su deuda Técnica

La deuda técnica es una metáfora maravillosa desarrollado por Ward Cunningham para ayudarnos a pensar acerca de este problema. En esta metáfora, hacer las cosas de manera rápida y sucia nos deja con una deuda técnica, que es similar a una deuda financiera. Al igual que una deuda financiera, la deuda técnica incurre en el pago de intereses, que vienen en la forma de un esfuerzo extra que tenemos que hacer en el desarrollo futuro debido a la elección de un diseño “rápido y sucio”. Podemos optar por seguir pagando los intereses, o podemos hacer el pago completo refactorizando a un “nuevo y limpio” diseño. 

A pesar de que cuesta pagar la deuda principal, pagándola ganaríamos más porque solo tendríamos que hacer pagos de interés reducidos en el futuro.

La metáfora también explica por qué puede ser fácil hacer el enfoque “rápido y sucio”. Al igual que una empresa incurre en una cierta deuda para tomar ventaja de un mercado de oportunidad; desarrolladores pueden incurrir en deuda técnica para alcanzar una fecha importante.

El problema es que es muy común que las organizaciones de desarrollo permitan que su deuda se salga de control y pasan la mayor parte de su esfuerzo de desarrollo futuro a el pago de intereses paralizantes.

No importa lo talentoso o lo inteligente que sean los desarrolladores de software, todos esos pequeños aplazamientos comienzan a sumar y acumulativamente a “pesar” sobre el proyecto, arrastrándolo hacia abajo.

Creo que acumular deuda técnica es inevitable en cualquier proyecto de software real. Claro, usted refactoriza a medida que avanza , e incorpora mejoras cuando se puede; pero es imposible predecir exactamente cómo esas decisiones clave que se han hecho desde el principio en el proyecto nos las van a jugar . Todo lo que se puede hacer es lidiar con los golpes, y presupuestar un poco de tiempo en el horario para pagar periódicamente su deuda técnica.

El tiempo que toma fuera del horario para hacer pagos de la deuda técnicas normalmente no resulta en nada para los clientes o algo que los usuarios verán. Esto a veces puede ser difícil de justificar.

Steve McConnell tiene una larga entrada de blog con un examen de la deuda técnica . Los peligros de no admitir las deudas son claras:

Una de las consecuencias importantes de la deuda técnica es que debe ser atendida, es decir, una vez que se incurre en una deuda habrá cargos por intereses. Si la deuda crece lo suficiente, con el tiempo la empresa va a gastar más en el servicio de su deuda de lo que invierte en el aumento el valor de sus otros activos. un ejemplo común es una base de código heredada en el que se invierte mucho trabajo para mantenerlo funcionando en producción (es decir, "pagando la deuda") que hay poco tiempo de sobra para añadir nuevas capacidades al sistema. Con la deuda financiera, los analistas hablan de la "relación de la deuda", que es igual a la deuda total dividido por el total de activos. coeficientes más altos son vistos como más riesgosos, lo que parece cierto para la deuda técnica, también.

Cuando llega el momento de pagar su deuda técnica, no tenga miedo de romper cosas . Es liberador, incluso energizante derribar código con el fin de construirlo más fuerte y mejor de lo que era antes. Sea valiente, y dese cuenta de que el pago de su deuda técnica de vez en cuando es una parte normal y necesaria del ciclo de desarrollo de software para evitar el pago de intereses masivos después. 

Fuente Original: http://blog.codinghorror.com/paying-down-your-technical-debt/

 


Las habilidades más importantes que necesita un programador profesional

Estamos en la era de la información y el mundo está constantemente en cambio. Se podría decir que los programadores tenemos parte responsable de este cambio.  Muchas personas creen que los programadores siempre tenemos las respuestas a todo sobre la red, sistemas operativos o aparatos tecnológicos que fascinan en el mundo de la tecnología, se puede decir que si, aunque no puedo hablar por todos. Pero algo que aplica a todos los programadores es que todos deberíamos de tener algunas de estas habilidades o aptitudes siguientes:


  • Curiosidad
  • Pensamiento claro
  • Leer y comprender rápido
  • Atención a los detalles
  • Aprender rápido temas fuera de la programación
  • Autodidacta
  • Pasión
  • Adaptabilidad
  • Comunicación efectiva
  • Explora código
  • Manejo de la Sintaxis
  • Capacidad de Maquetación
  • Programación del Backend
  • Capacidad de Integración
  • Análisis de Fallas
  • Diseño de Bases de Datos
  • Manejo de Servidores
  • Manejo de Plataformas
  • Conocimiento de la Infraestructura IT 


 

Mi consejo es que sean curiosos y alimenten su mente con información útil. Nunca pares de leer y estudiar.

Ejercita tu lógica a través de las matemáticas.

Si quieres seguir actualizado con nuestros conocimientos mantente al día con los nuevos artículos que publicamos en Solvex Dominicana.


La importancia de la especialización

Vivimos en tiempos donde la tecnología se vuelve cada día más volátil, y es importante mantenerse a la vanguardia para estar al tanto de las nuevas tendencias.

En un mundo cada día mas cambiante se hace necesario conocer las ultimas soluciones que proponen los expertos, pero es aquí donde surgen los laberintos y llegamos a perder el foco de nuestra solución tratando de emerger en tecnologías que carecen factibilidad. El error que muchos cometemos es tratar de perseguir y adquirir todos los nuevos conocimientos y desafíos que las nuevas tendencias proponen.

En mi opinión los informáticos debemos tener un rumbo y ser cautos a la hora de elegir un noviazgo con una tecnología dada, porque esto es lo que nos van a distinguir en nuestro ámbito profesional.