epelpad

Programar es ser como Sherlock (holmes)

Programar es ser como Sherlock (holmes)

Si él fuese programador


Programacion


Es un día normal de trabajo. Mi jefe me asignó un tema que no sé nada acerca de. Y debo resolverlo tan rápido como sea posible.

En alguna parte en un proyecto masivo hay un pedazo de código que sigue fallando. Para mí, se siente tan electrizante como un misterio de asesinato.

Por suerte para mí, depuración e investigación van de la mano.

Bienvenido a la escena del crimen!


Sherlock




Hay pistas. Algunas sospechas obvio. Algunas huellas dactilares.

Pero nada definitivo.


Localizar a los sospechosos de siempre, pero me llevan a ninguna parte.



"No hay nada más engañoso que un hecho obvio".
: Arthur Conan Doyle en El misterio del valle Boscombe


Pido la ayuda de mi equivalente de un Dr. Watson: mi IDE.


programacion en c


Coloco unos puntos de corte. Agrego unos relojes.


Pienso un poco más.


Reproduzco la escena del crimen una y otra vez, investigando los hechos.


Revisando el seguimiento de la pila, llego a un destello de perspicacia que me ayuda a restringir mi búsqueda.


Siento un tiro de júbilo mientras entro en la función y añado un punto de interrupción específico.
y unos instantes más tarde, salgo de mi estado de concentración, después de haber solucionado el error.



para programadores


¿Usted quiere saber cuál era el problema?

Si sabes algo básico de C , echa un vistazo a este bloque de código y ver si puede encontrar una pista sobre lo que pasó:






FILE *fd;
char *filename="models/";
strcat(filename,"bullet"
strcat(filename,".h3d"
if( (fd = fopen(filename,"r&quot)==NULL )
{
printf("nFile or Directory not found"
return;
}



resolucion de misterios



Bien, redoble de tambores... aquí está la causa del problema:

Fue un fallo de segmentación. Simple y llanamente.




¿Cómo lo resoelví?

Asigné un búfer de memoria lo suficientemente grande como para almacenar la ruta completa del archivo.





char filename[256]; // Alternativamente podés asignar valores dinamicos
strcpy(filename, "models/"
strcat(filename,"bullet"
strcat(filename,".h3d"


nueva temporada sherlock


Ahora verás cómo no puedo evitar ser Sherlock !!

Atentos para el siguiente misterio!


trabajo de un programador



Otros posts

http://www.taringa.net/posts/imagenes/18899224/Manipulacion-fantastica-de-la-realidad.html

http://www.taringa.net/posts/apuntes-y-monografias/18956712/El-Plusvalor-Marx---Definiciones-faciles.html

http://www.taringa.net/posts/imagenes/19044834/Tiempos-modernos-de-Charlie-Chaplin-Todos-los-gifs.html

2 comentarios - Programar es ser como Sherlock (holmes)

TyrellWellick
No me hagas acordar de C, que desaprobé hoy y me quede afuera de la universidad
nickv +2
Admiro q puedas jugar con tu realidad laboral y llevarla a un escenario divertido.