morenosan

Un blog a velocidad absurda

Newforms en Django

dom 28 enero 2007

Japan, Old & New

Desde que, hace algo más de año y medio se dio a conocer, Django se ha convertido en mi framework favorito para la creación de aplicaciones web. Lo he utilizado tanto en proyectos personales como profesionales y gracias a su potencia y sencillez siempre ha sido un placer trabajar con el. No dudaría en recomendarlo para la creación de casi cualquier aplicación web.

Aunque Django es un framework maduro y con multitud de webs, grandes y pequeñas, que lo utilizan, su API, tal y como da a entender la numeración de su versión actual, la 0.95.1, no está totalmente cerrada. En estos días, uno de los principales focos de desarrollo es el modulo newforms, la nueva librería para la creación y validación de forms que sustituye a la que se venia usando hasta ahora. El problema es que la anterior librería ha sido deprecada y desde su misma documentación se anima encarecidamente a no utilizarla para proyectos nuevos, dejándonos con una librería que aunque mejora en muchos aspectos a la anterior, tiene también algunas carencias como falta de funcionalidad respecto a la librería anterior y escasa documentación.

Por poner un ejemplo, una de las características que más me gustan de Django es la creación automática de forms a partir de los models de la aplicación. El tipo de campo de la form así como las validaciones que se le aplican se crean de acuerdo con el model. Un campo numérico en el model se traduce en un campo de texto en la form, cuyo valor se valida al enviar la form, las foreign keys aparecen como pulldowns, etcétera. Es DRY, uno de los mantras de Django, en estado puro. Y aunque newforms permite algo similar, no llega, de momento, al grado de integración con el model que tiene la antigua librería.

Es paradójico que un usuario que descubra estos días Django encuentre menos funcionalidad en el framework que si lo hubiese hecho hace unas semanas. Al menos temporalmente y a efectos prácticos, las "features" de Django han disminuido con el paso del tiempo.

De todas formas, y como en el resto del framework, el desarrollo de newforms es continuo, por no decir frenético, y las mejoras visibles casi a diario, así que no me cabe duda de que está situación es temporal y que estas carencias quedarán resueltas en poco tiempo.

Imagen © willposh. Some Rights Reserved.

O-souji y una batallita

sáb 30 diciembre 2006

cleaning line up

Llega el fin de año, y eso significa que es la hora del o-soji. El o-soji es una costumbre Japonesa que consiste en hacer una limpieza general y a fondo de toda la casa de modo que recibas al año nuevo con la casa arreglada y lista para pasar otros doce meses en ella. Aparte de limpiar en los lugares de siempre, se hace en lugares donde el resto del año no se suele hacer como por ejemplo debajo de los tatamis. El o-soji no solo se limita a la casa. En las oficinas es muy común que el último día laborable del año se dedique a limpiar por la mañana y a hacer la fiesta de fin de año por la tarde. En mi caso, aparte de la casa, también aprovecho la excusa para "limpiar" el disco duro, clasificando fotos, ordenando los bookmarks del navegador, haciendo copias de seguridad, y cosas por el estilo.

Ordenando fotos, me he topado con algunas del primer trabajo que tuve en Japón. Aunque aquel primer año tuvo momentos difíciles, también pude aprender mucho, tanto de los compañeros como de verme involucrado por primera vez en un proyecto medianamente grande.

Una de las primeras cosas que me preguntó el jefe de proyectos, nada más comenzar, fue si había leído "Code complete" de Steve McConnell. Cuando le dije que no, me dejó un ejemplar y me dio una semana para leerlo. Me dijo que no escribiría una linea de código hasta que no lo hubiese terminado. En aquel momento no me gustó tener que pasarme varios días leyendo un libro de programación, pero después he agradecido muchas veces aquella semana de lectura por que "Code Complete" es el mejor libro de programación que he leído.

Imagen © Bob Jones. Some Rights Reserved.

« Page 8 / 8

  • Archivo

Categorias

  • Software
  • Python
  • Personal
  • Japón

Links

  • APSL
  • Trespams
Proudly powered by pelican, and obviously python!