Yo tiendo a decir de mí mismo que soy un "desarrollador científico". Realmente no existe tal cosa, al menos de momento. De algún modo, intento aplicar el método científico, inaugurado por el gran Galileo (que por muy pocos días no nació exactamente 400 años antes que yo), y otras características del trabajo científico, tan bien visto y del que tan poco se sabe en este país, al desarrollo de software. De esta manera, cuando tengo que tocar código que no es mío, siempre dedico un rato a echar un vistazo a lo que hay alrededor, buscando cosas que se puedan mejorar. Es entonces cuando me encuentro cosas que son inmejorables porque, al verlas, sufro alguna especie de colapso cerebral que me impide pensar en alguna mejora hasta que se me pasa el susto. Luego, con más calma, las vuelvo a mirar y me vuelve a dar otro susto.
Soy consciente de que hay veces que un desarrollador inexperto tiene que hacer algo, y lo hace como sabe y puede. Esto se me ha dicho muchas veces, y lo sé. Pero hay cosas que van más allá de la experiencia, en este caso, con Java. Yo creo que, realmente, reflejan algún tipo de condición psicológica que puede ser que esté bastante extendida y que merecería un estudio científico.
Veamos dos ejemplos. Y son dos porque, aunque son cosas hechas por gente que no tiene nada que ver entre sí en el espacio-tiempo, al verlas da la sensación de que, al menos, son del mismo pueblo.
En ocasiones veo Java
Allá donde los desarrolladores Java pierden su inocencia...
miércoles, 26 de febrero de 2014
API cultura
Decíamos ayer...
Aparentemente, este blog está más muerto que la cultura científica en España. Es una pena. De todas maneras, y tomadas en cuenta algunas sugerencias acerca de resucitarlo, y dado que esta es tarea bastante más fácil de llevar a cabo que lo de la cultura científica, he decidido hacer el intento. Pero no prometo nada.
En una entrada anterior mencioné el concepto de API (Application Programming Interface). He comprobado que hay muchos profesionales que no tienen claro que significa. Otros, en cambio, lo que no tienen es ni idea. El conocimiento acerca de qué implicaciones tiene esto en Java resulta deprimente. Intentemos solucionarlo.
Aparentemente, este blog está más muerto que la cultura científica en España. Es una pena. De todas maneras, y tomadas en cuenta algunas sugerencias acerca de resucitarlo, y dado que esta es tarea bastante más fácil de llevar a cabo que lo de la cultura científica, he decidido hacer el intento. Pero no prometo nada.
En una entrada anterior mencioné el concepto de API (Application Programming Interface). He comprobado que hay muchos profesionales que no tienen claro que significa. Otros, en cambio, lo que no tienen es ni idea. El conocimiento acerca de qué implicaciones tiene esto en Java resulta deprimente. Intentemos solucionarlo.
miércoles, 22 de junio de 2011
Un caso excepcional
No, no es que haya encontrado código Java bueno. Lo único que conozco más difícil que encontrar código Java de calidad es encontrar aparcamiento en Getafe. Hablo del uso de las excepciones en Java. Con esto reanudo este blog, que he tenido abandonado desde el principio por causas de fuerza mayor (es que la vagancia hace mucha fuerza).
Como todos sabemos, hay muchas posibilidades de hacer las cosas mal cuando se trabaja con las excepciones. Además de los típicos antipatrones, se puede meter la pata al empezar a pensar en ellas.
Está de moda por ahí la discusión acerca del tipo de excepciones que un sistema cualquiera debe declarar. ¿Deben ser
Como todos sabemos, hay muchas posibilidades de hacer las cosas mal cuando se trabaja con las excepciones. Además de los típicos antipatrones, se puede meter la pata al empezar a pensar en ellas.
Está de moda por ahí la discusión acerca del tipo de excepciones que un sistema cualquiera debe declarar. ¿Deben ser
Exception (checked) o deben ser RuntimeException?. La verdad es que no le veo mucho sentido a la discusión, si tenemos en cuenta para qué es cada cosa (y, recordad, siempre digo que cada cosa es para lo que es). Pero bueno, ya que últimamente me ha salido hasta en el trabajo, voy a ver si pongo esto un poco claro.domingo, 7 de noviembre de 2010
La maldición de la Perla Negra: perla 1.
Entre las cosas que pretendo tratar aquí habrá discusiones sobre algunas técnicas de desarrollo en Java, ejemplos de cosas que se suelen hacer y son incorrectas, patrones, idiomas y trucos, y, en general, lo que se me vaya ocurriendo o se me vaya proponiendo.
He pensado que cierta variedad de todo esto puede tener entidad propia: esas piezas de código que uno se encuentra a veces y que deberían estar en un museo o en algún tipo de centro de exposiciones. Al menos, deberían estar en cualquier sitio menos donde están. Son lo que llamo “perlas”: magníficos ejemplos de la inventiva humana que demuestran que las aptitudes del autor están llamadas a más altas metas, como sembrar patatas o vaciar papeleras. Evidentemente, no son perlas de gran brillo; más bien son perlas negras. He pensado también que podríamos hacer una especie de encuesta para elegir la más espantosa, digo espectacular. Por supuesto, esto no dejaría de ser una maldición para el autor.
Y todo esto para justificar el título.
Para abrir el juego, he seleccionado una que he encontrado recientemente en el código que está en uso actualmente en una importante entidad pública de nuestro país. Así nos va. Simple, pero sustanciosa. Creo que es una buena candidata al triunfo final. En una de las clases me encontré el siguiente método:
He pensado que cierta variedad de todo esto puede tener entidad propia: esas piezas de código que uno se encuentra a veces y que deberían estar en un museo o en algún tipo de centro de exposiciones. Al menos, deberían estar en cualquier sitio menos donde están. Son lo que llamo “perlas”: magníficos ejemplos de la inventiva humana que demuestran que las aptitudes del autor están llamadas a más altas metas, como sembrar patatas o vaciar papeleras. Evidentemente, no son perlas de gran brillo; más bien son perlas negras. He pensado también que podríamos hacer una especie de encuesta para elegir la más espantosa, digo espectacular. Por supuesto, esto no dejaría de ser una maldición para el autor.
Y todo esto para justificar el título.
Para abrir el juego, he seleccionado una que he encontrado recientemente en el código que está en uso actualmente en una importante entidad pública de nuestro país. Así nos va. Simple, pero sustanciosa. Creo que es una buena candidata al triunfo final. En una de las clases me encontré el siguiente método:
sábado, 6 de noviembre de 2010
Un saludo desde las trincheras
Bienvenidos a este nuevo blog. Aquí podremos tratar sobre lo que la gente hace con Java, al tiempo que puedo sacar mi vena Dr. House, que muchas veces se ve reprimida con el consiguiente perjuicio para mi salud (mental).
Hay un par de cosas que quisiera contar antes de empezar...
Primero, la historia e intenciones de todo esto. Hace ya algunos años, cuando Java se apellidaba 1.3, escribí lo que podríamos llamar un folleto (se me han sugerido peores apelativos), de cuarentaitantas páginas, donde trataba sobre técnicas recomendables y no recomendables de desarrollo con Java. De forma incomprensible, alguien sugirió el título de "Recetario Java". De forma no menos incomprensible, se lo puse. Desde entonces, Java pasó a ser 1.4, cambió a apellidos de persona mayor, y siguió con 5 y 6, con Java 7 a la vista. Mientras esto ha estado pasando, no puedo decir que la evolución del recetario o el esfuerzo dedicado hayan sido escasos: puedo decir que han sido nulos.
Hace unos meses, me puse a la tarea de reescribir el Recetario, actualizándolo y ampliándolo. Elegí un nuevo título: "En ocasiones veo Java", con varias posibilidades para el subtítulo: "...pero pocas", "Y me da la risa", "Pero normalmente tengo que salir corriendo al servicio", "En las demás comienzo a perder la fe que ya costosamente mantenía en la Humanidad"... y otras que no escribo aquí por puro decoro. El trabajo ha avanzado y ya tengo casi completa la introducción. Vale, hay cosas que avanzan más rápido, como la deriva continental, por ejemplo.
El caso es que, últimamente, he estado jugando con la idea de abrir un blog que me permita ir tratando cosas que pudieran abordarse en ese libro (porque eso sería, con un chorro de páginas), y ver qué resulta. Creo que hay probabilidades de que esto tenga cierto éxito. No muchas. Pocas. Para qué nos vamos a engañar: casi ninguna. En todo caso, aquí está la idea en marcha.
La segunda cosa que quería decir constituye un disclaimer, que dicen los de la parla inglesa. Una nota de exención de responsabilidad. En este blog se mostrará código fuente de terceros (o de primeros, porque no me libro ni yo). Procuraré camuflar el código en lo que pueda, si al hacerlo no se reduce su expresividad acerca de las sorprendentes capacidades de algunas personas. Pese a eso, alguien, en algún caso, puede pensar que estoy exponiendo algún tipo de propiedad intelectual o estratégica que, de esta manera, podría ser copiada para usos oscuros. A ellos les mando un mensaje de tranquilidad: maldita la gana que tendría una persona en su sano juicio de usar algo de lo que aquí aparezca.
Dicho esto, empecemos... más tarde.
¡Ah! Admito sugerencias sobre diseño y presentación: soy nuevo en esto.
Hay un par de cosas que quisiera contar antes de empezar...
Primero, la historia e intenciones de todo esto. Hace ya algunos años, cuando Java se apellidaba 1.3, escribí lo que podríamos llamar un folleto (se me han sugerido peores apelativos), de cuarentaitantas páginas, donde trataba sobre técnicas recomendables y no recomendables de desarrollo con Java. De forma incomprensible, alguien sugirió el título de "Recetario Java". De forma no menos incomprensible, se lo puse. Desde entonces, Java pasó a ser 1.4, cambió a apellidos de persona mayor, y siguió con 5 y 6, con Java 7 a la vista. Mientras esto ha estado pasando, no puedo decir que la evolución del recetario o el esfuerzo dedicado hayan sido escasos: puedo decir que han sido nulos.
Hace unos meses, me puse a la tarea de reescribir el Recetario, actualizándolo y ampliándolo. Elegí un nuevo título: "En ocasiones veo Java", con varias posibilidades para el subtítulo: "...pero pocas", "Y me da la risa", "Pero normalmente tengo que salir corriendo al servicio", "En las demás comienzo a perder la fe que ya costosamente mantenía en la Humanidad"... y otras que no escribo aquí por puro decoro. El trabajo ha avanzado y ya tengo casi completa la introducción. Vale, hay cosas que avanzan más rápido, como la deriva continental, por ejemplo.
El caso es que, últimamente, he estado jugando con la idea de abrir un blog que me permita ir tratando cosas que pudieran abordarse en ese libro (porque eso sería, con un chorro de páginas), y ver qué resulta. Creo que hay probabilidades de que esto tenga cierto éxito. No muchas. Pocas. Para qué nos vamos a engañar: casi ninguna. En todo caso, aquí está la idea en marcha.
La segunda cosa que quería decir constituye un disclaimer, que dicen los de la parla inglesa. Una nota de exención de responsabilidad. En este blog se mostrará código fuente de terceros (o de primeros, porque no me libro ni yo). Procuraré camuflar el código en lo que pueda, si al hacerlo no se reduce su expresividad acerca de las sorprendentes capacidades de algunas personas. Pese a eso, alguien, en algún caso, puede pensar que estoy exponiendo algún tipo de propiedad intelectual o estratégica que, de esta manera, podría ser copiada para usos oscuros. A ellos les mando un mensaje de tranquilidad: maldita la gana que tendría una persona en su sano juicio de usar algo de lo que aquí aparezca.
Dicho esto, empecemos... más tarde.
¡Ah! Admito sugerencias sobre diseño y presentación: soy nuevo en esto.
Suscribirse a:
Comentarios (Atom)