Calendario del Blog
Estadísticas de visitantes








Archivo de Blog
- August 2010 (7)
- July 2010 (4)
- June 2010 (1)
- May 2010 (3)
- February 2010 (1)
- January 2010 (2)
- October 2009 (3)
- September 2009 (2)
- July 2009 (1)
- June 2009 (1)
- May 2009 (1)
- April 2009 (1)
- March 2009 (1)
- January 2008 (1)
- November 2007 (3)
- March 2007 (3)
- February 2007 (1)
- January 2007 (1)
- December 2006 (6)
- November 2006 (3)
- October 2006 (3)
- September 2006 (9)
- August 2006 (6)
- July 2006 (4)
- June 2006 (3)
- May 2006 (3)
- April 2006 (1)
- March 2006 (7)
- February 2006 (13)
- January 2006 (6)
- December 2005 (4)
- November 2005 (5)
- October 2005 (7)
- August 2005 (4)
- July 2005 (4)
- June 2005 (9)
- May 2005 (6)
- April 2005 (3)
July 2010
Código con aroma de mujer
Si, eso es! ... como cualquier ejemplar de la especie humana de sexo masculino (ok, no discriminemos, igual las les, bi y hetero) que aprecie la belleza de las féminas, me declaro susceptible a la esencia de una mujer o a su perfume.
Que agradable es percibir el aroma de una mujer cuando pasa cerca de ti, cuando te saluda, te besa, se sienta a tu lado o un sin fin de sucesos que pueden despertar tu interés en el momento, si no te habías percatado de su presencia con anterioridad, en ese momento te obligue a voltear en su dirección para saber el origen del aroma.
¿Y a que viene todo ese rollo del aroma? Resulta que encontré un texto escrito por Martin Fowler que menciona un termino llamado "Olor en el código" (CodeSmells) y se me ocurrió escribir una entrada en mi blog que me permita expresar lo que pienso de un buen desarrollo de software basando mis comentarios en el texto que encontré de Fowler.
![]() |
Dicen algunos amigos que suelo ser muy criticon, realmente no tengo nada que decir al respecto. Si ellos lo dicen, ha de ser verdad (me queda de consuelo que suelo ser más critico con mi persona que con los demás =P ). Así que aprovechando que critico muchas cosas (objetivamente), el código no puede ser la excepción ya que es a lo que dedicamos muchos de nosotros (informáticos) la mayor parte de nuestro tiempo. ¿Te imaginas que el código fuera tan agradable como el aroma de una mujer? Que cuando lo veas puedas decir, me gusta, quiero saber quién lo escribió, quiero conocer como decidió el autor que debía estructurarse así para que yo lo pueda leer sin pasar horas rastreando variables, métodos, instancias y artefactos fumados. Que no necesite documentación para saber que el código hace lo que debe de hacer. Que simplemente el código me susurre al oído como si quisiera seducir mis sentidos y hacerme parte de él. Te sugiero leas el artículo de Fowler, lo tienes en inglés y español. Se despide, /me ... disfrutando de sus problemas =). |
Lo sabroso de la vida
Desde hace unos años, me doy cuenta que cuando mejor hago las cosas es cuando tengo más problemas. Con el siguiente extracto escrito por Albert Einstein puedo confirmar que, la necesidad te ayuda a mejorar.
|
Sin crisis no hay desafíos, sin desafíos la vida es una rutina, una lenta agonía. Sin crisis no hay méritos. Es en la crisis donde aflora lo mejor de cada uno, porque sin crisis todo viento es caricia. Hablar de crisis es promoverla, y callar en la crisis es exaltar el conformismo. En vez de esto trabajemos duro. Acabemos de una vez con la única crisis amenazadora que es la tragedia de no querer luchar por superarla.
|
Y tu, ¿Obtienes lo mejor de ti mismo cuando tienes problemas? ¿Te la pasas quejando de lo mal que te va? ¿Todo te molesta? ... no, no te voy a recomendar a neuróticos anónimos. Solo era curiosidad, total, existimos otras personas que si disfrutamos la vida aún con todo y los problemas que se nos presentan. Eso "my friend" es lo sabroso de la vida!.
Enjoy your life!
Cuando los Identities se revelan
Que bonito es eso de que el motor de SQL haga las cosas más comunes automáticamente, ejemplo de esto pueden ser los valores calculados, un trigger o insertar un valor numérico auto incremental, los tres son muy similares.
Sin embargo esto puede causar un dolor de cabeza si no sabemos como emplearlos, a veces necesitamos usar el identificador de un registro que apenas insertamos en una tabla desde la sesión 52 en la sesión 53 del SQL o bien puede ser útil el conocer el último identificador insertado en una tabla sin tener que hacer un max sobre el campo.
Haber, tenemos IDENT_CURRENT tal como en el SQL Server 2000 SCOPE_IDENTITY y @@IDENTITY. Las tres funciones regresan el ultimo valor generado automáticamente. Peeeeroooo, tienen un alcance de sesión que se pueden definir de la siguiente manera:
- IDENT_CURRENT Regresa el último valor generado por una tabla específica en cualquier sesión y cualquier alcance(scope).
- @@IDENTITY Regresa el último valor generado por cualquier tabla en la sesión actual en todos los alcances (scope).
- SCOPE_IDENTITY Regresa el último valor generado para cualquier tabla en la sesión actual y el alcance actual (scope).
Osea, si me explican ... entiendo! Ahora si ya todo claro =).
NOTA: cuando el valor de IDENT_CURRENT es null (porque la tabla ha sido truncada o no contiene datos), la función regresa el valor de siembra (seed), esto es el valor autoincrmental.
Ahora los ejemplos, que "hermosa weba"... para que hacerlo todo? mejor reutilizo lo que está en la ayuda de MSDN
Que se puede encontrar en http://msdn.microsoft.com/es-es/library/ms175098.aspx
Vale la pena darle un vistazo a :
- IDENT_SEED ( 'table_or_view' )
- IDENT_CURRENT ( 'table_or_view' )
- DBCC CHECKIDENT()
SVN ignore list
|
Si has usado la consola para hacer "commits" del subversion (¿Con que se come? o_O!! consulta aquí) , sabrás lo molesto que resulta que te muestren archivos que se generan automáticamente con la creación de nuevos proyectos. Para esos momentos tan molestos tenemos un comando (como casi siempre >P)
svn propset svn:ignore *.suo .
Donde propset nos permite asignar la propiedad de svn que en este caso es ignore, *.suo es el patrón que queremos ignorar y "." es el directorio al que se le aplica la propiedad. |
|
Ahora bien, como nunca estamos contentos y siempre queremos hacer más (lo se, lo se, soy positivo
). Que tal si le agregamos más patrones, resulta que el svn nos ignora los anteriores y solamente asigna el nuevo patrón. ¿Esto es un error? nones, el detalle está en que para facilitar la vida podemos emplear una lista de patrones y para esto se aplica el siguiente comando:
Donde "-F" le indica al comando que espere un archivo (exacto! [ignore_list_file]) y le decimos en que directorio queremos que se aplique la propiedad, en caso de querer que sea recursivo (osea que se actualicen los subdirectorios) simplemente se agrega la opción "-R"
Si todo sale como debe en la consola aparecerá lo siguiente:
property 'svn:ignore' set on 'dir_name\sub_dir_name'
Sencillo, ¿Que no?
¿Quieres saber más? ... consulta: http://subversion.apache.org/faq.html



Comentarios Recientes