martes, 15 de junio de 2010


Nueva Jerga del Programador


Aquí les mando algunas nuevas palabras del mundo del desarrollo de software , va para todos aquellos Heroic Programmers.


Hydra Code
Código que no puede ser corregido. Una correccion causa dos nuevo bugs. Este no puede ser corregido , debe ser reescrito.

Jenga Code
Cuando todo el sistema esta hecho de cierta forma que puede colapsar cuando le mueves a una parte del código.

HEISENBUGS
Un heisenbug es un bug que desaparece o altera su comportamiento al intentar depurarlo.
El nombre es un juego de palabras con el “Principio de Incertidumbre de Heisenberg”, que erróneamente se suele identificar con el efecto observador, y que, este si, afirma que el simple hecho de observar un fenómeno puede cambiar su resultado (vaya, yo soy uno de estos que confundía ambos, ¿quizás por Jurassic Park?).

Una causa común de los heisenbugs es que al ejecutar un programa en modo de depuración a menudo se limpia la memoria antes de lanzar la ejecución.

BOHRBUG
El bohrbug (del modelo atómico de Bohr) sería el antónimo de los heisenbug. Es un bug que no cambia su comportamiento.

MANDELBUGS
Un mandelbug (por el conjunto de Mandelbrot) es un bug cuyas causas son tan complejas que su comportamiento parece caótico.

SCHROEDINBUGS
Un schroedinbug es un bug que no se manifiesta hasta que alguien, leyendo el código o usando el programa de forma inusual, descubre que nunca debió haber funcionado, momento en el cuál deja de funcionar para todo el mundo. Y aunque parezca imposible, este tipo de bugs existe.
El nombre de schroedinbug deriva de la paradoja del gato de Schrödinger, en el que teniendo un gato en una caja, no podemos saber si está vivo o muerto sin abrir la caja, y por lo tanto se considera que se encuentra vivo y muerto a la vez hasta que la abramos.

Bug “Monstruo del Lago Ness”
Cualquier bug que sólo ha podido ver una persona, y no puede ser reproducido. Primo hermano del heisenbug, el mandelbug o el schroedinbug

BUGS DE FASE LUNAR
Se usa de forma humorística para referirse a bugs que parecen depender de factores aleatorios y casi esotéricos.


STOTLE
El stotle se da cuando, al introducir una serie de datos al programa que parecen correctos (pero no lo son), obtenemos una salida incorrecta. Como la entrada no era correcta, no se trata de un bug, pero lo puede parecer.

Su nombre deriva de Aristotle (Aristóteles), porque el programador asume que el error se encuentra en el programa y no la entrada, al igual que mucha gente asumía en su día que Aristóteles debía estar siempre en lo cierto y no cuestionaban sus ideas.

FANTASMA EN EL CÓDIGO
Se llama así a cualquier bug que no se identifica durante la fase de pruebas. Esta clase de bugs se pueden encontrar a menudo en porciones de código que no suelen ejecutarse a menudo.

Banana banana banana
Texto a utilizar como sustituto de documentación que todavía no se ha escrito.

AhTeJodesException
nombre dado a esas excepciones en las que estás jodido hagas lo que hagas

Captura de excepciones estilo Pokemon
Debido a su eslogan, “Gotta Catch ‘Em All” o “hay que capturarlos a todos”. Describe la práctica de utilizar un único bloque catch para capturar todos los tipos de excepciones, en lugar de utilizar varios bloques catch y dar un tratamiento específico dependiendo del tipo de error.

Programación tipo Yoda
Por la famosa frase “Hazlo o no lo hagas, pero no lo intentes”, o lo que es lo mismo, “Do, or do not. There is no ‘try.’“. Utilizada para referirse al estilo de los programadores que nunca capturan ningún tipo de excepción.

svn vomit
En lugar de "svn commit" cuando todo en el repositorio esta tan desordenado que parece vomito.

Código spaguetti
Es un término peyorativo para los programas de computación que tienen una estructura de control de flujo compleja e incomprensible. Su nombre deriva del hecho que este tipo de código parece asemejarse a un plato de espaguetis, es decir, un montón de hilos intrincados y anudados.

Unicornio
El adjetivo para describir una funcionalidad tan lejana en la planeación que bien podría ser imaginaria.

Condicion Yoda
Al acto de usar:
if ( constante == variable )
en lugar de:
if ( variable == constante )

Es como decir "Azul cielo es".


Pasta orientada a objetos
Código spaghetti metido dentro de una clase para dar la impresión de que se están utilizando orientación a objetos y otras buenas prácticas. También conocido como “código ravioli”

Granja de bichos
Dicese a aquel software que está siendo tan mal programado que es un caldo de cultivo de bichos para cuando se empiecen a hacer las pruebas.

Experimental programming
Escribir código sin saber realmente lo que se está haciendo, y repetir el proceso hasta que pasa las pruebas.

Confuckuration
Cuando tienes un framework o software que puede hacer mucho , pero que por el momento no hace nada , porque le falta alguna configuración intrincadamente escondida.

Protoduccion
Refiriendose al prototipo que por alguna razón se quedo como la aplicación final y llego a producción.

Swiss army software
Software al que se le van agregando cambios funcionales , hasta que queda como una navaja suiza perdiendo el sentido con el que fue hecho originalmente.

Contra bug
Un bug del que tomas nota para contra atacar a un compañero cuando este descubra un bug causado por ti.

Refucktorizar
Juego de palabras con refactorizar (fuck significa joder en inglés). Se trata del proceso de tomar un código bien diseñado y, a través de una serie de pequeños cambios reversibles, convertirlo en algo completamente imposible de mantener por ninguna persona excepto por la que realizó los cambios

Fear-Driven Development
Cuando el Líder o jefe mete más presión, como despedir a un miembro del equipo.

Ping Pong Development Methodology
Hacerle Hacks al código hasta que testing ya no lo regrese.

Codificación del vaquero
Es la ausencia de un método definido: los miembros del equipo hacen lo que se sienten tienen razón. La nueva evaluación frecuente del desarrollo ágil de planes, del énfasis en la comunicación cara a cara, y del uso relativamente escaso de documentos hace a veces a gente confundirlo con la codificación del vaquero. Los equipos ágiles, sin embargo, siguen (y a menudo muy disciplinado y riguroso) procesos definidos.

HeroicProgramming
Se utiliza para describir el gasto de enormes cantidades de (codificación) esfuerzo por personas con talento para superar las deficiencias en el proceso, gestión de proyectos, programación, arquitectura o cualquier otras deficiencias en la ejecución de un proyecto de desarrollo de software con el fin para su realización. HeroicProgramming es a menudo el único curso de acción cuando la mala planificación, falta de fondos, y la planeaciones irrealistas dejan a un proyecto con pocas probabilidades de terminar con éxito. Es muy probable que más proyectos son, de hecho, completados por los actos de HeroicProgramming que por un análisis adecuado, diseño, arquitectura de la planificación, programación, presupuestación y ejecución combinados.

Fuente(s):
Cunningham & Cunningham Wiki
Mundo Geek
Wikipedia
Stak Overflow
10Things

No hay comentarios:

Publicar un comentario