¿Cómo no te voy a querer?
- 11:00 p.m. Necesitaba urgentemente capturar mi miniinventario para futuras operaciones
- 11:05 p.m. Abro mi versión de evaluación de Quickbooks y busco como añadir items a mi inventario
- 11:11 p.m. Después de picarle a todos lados descubro un pequeño ícono que dice “items” allá arriba
- 11:15 p.m. Por fin descubro como añadir un item nuevo
- 11:22 p.m. No puedo dar de alta el item porque necesito definir una
income account
, me pregunto:¿Qué rayos es eso?
- 11:30 p.m. Ya estoy harto de Quickbooks, busco en Google la frase “Inventory software”.
- 11:34 p.m. Todo se ve demasiado caro o demasiado complejo. Sigh. Pruebo con la frase “Open Source Inventory Software”.
- 11:38 p.m. Nada que parezca servirme. Voy a Zoho Creator a ver si hay alguna aplicación que me sirva.
- 11:40 p.m. Nada. Decido darle otra oportunidad a Quickbooks (pienso que por algo es el lider).
- 11:50 p.m. Es oficial: Odio Quickbooks. Pruebo con otra busqueda
Open source POV
. - 11:55 p.m. Qué sitios tan feos. ¿Como esperan que les confíe mi negocio con esa presentación?
- 12:59 p.m. Desilusionado y después de razonar qué es exactamente lo que necesito, abro phpmyadmin decidido a crear mi base de datos.
- 12:02 p.m. Descargo la última versión de CakePHP
- 12:06 p.m. Executo el script bake.php que viene con Cake
- 12:07 p.m. Descubro que no puedo tener un modelo que se llame Model porque sobreescribe una clase interna de Cake d’oh! Renombramos la tabla y va de nuevo.
- 12:11 p.m. Tengo una aplicación scaffoldeada completa con tres modelos relacionados entre si: Modelos, Colors e Items
- 12:36 p.m. Capture todo mi inventario con los campos exactos que necesito y estoy feliz.
- 12: 38 p.m. Abro MovableType y comienzo a escribir una anotación con título
Como no te voy a querer
dedicada a mi framework preferido.
Lanzan CakePHP 1.0 con todo y sitio nuevo

Acaba de ser liberada la primera version estable del entorno de desarrollo CakePHP, la 1.0. Ya en anteriores ocasiones he manifestado mi fascinación por ésta excelente herramienta de trabajo ya que hace que programar aplicaciones web sea una cosa facilísima. Ya hace poco publiqué un tutorial que mostraba las bondades de este framework.
El problema con la fundación CakePHP siempre ha sido que aunque está formada por programadores muy talentosos capaces de hacer cosas francamente increíbles les urge una mejor estrategia de marketing para que el producto pueda despegar. Eso y una killerapp.
Por lo pronto, junto con ésta nueva versión se ha lanzado un renovado sitio oficial que creo que es un gran avance respecto al diseño anterior. Y por supuesto que haría mal en no creerlo dado que yo soy, en parte, responsable de este nuevo diseño.
Si están interesados en ver la propuesta original del nuevo diseño de Cake, se las puedo mostrar pero no se lo digan a nadie.
Confusion de la función Submit
Mi nueva obsesión es Javascript, y ahora mientras programaba una función para validar una forma me di cuenta de algo que parece un extraño bug en Firefox.
Lo que se hace en estos casos es interceptar el envío con javascript mediante el evento onSubmit, se hacen las validaciones necesarias en una función aparte y después — si es pertinente— se reanuda el envío mediante el método submit() del objeto form. Un formulario de ejemplo:
Asi todo funciona perfectamente, pero si añadimos un atributo name="submit" al botón de envíar
todo se complica. En este caso f.submit() me da un error que dice f.submit is not a function
puesto que firefox está refiriendose al dichoso botón en lugar de referirse al metodo submit().
Sé que la respuesta más obvia es cambiar ese atributo name por cualquier otra cosa, pero en el script en el que estoy trabajando esa es una opción, ya que no tendré control sobre el formulario sobre el que se ejecutara el script. Siendo asi, no tengo idea como solucionar este pequeño problemilla.
¿Hay en la audiencia algun gurú de javascript que quiera ayudarme?
Idea para aplicación web
Hay una aplicación web 2.0 que me gustaría que existiera en este momento, pero como mis capacidades técnicas-económicas no alcanzan para programarla yo mismo, la suelto al aire a ver si alguien la cacha.
Ésta aplicación permitiría a quien lo deseara vender archivos descargables en línea, cómo una especie de cafepress pero para productos no tangibles.
Supongan que quiero vender mi última novela en formato e-book, el #3 del Sensacional de Blogs, mis emoticons, algun software que programé o el demo de mi banda en internet. Nuestra aplicación no-existente-todavía debería funcionar mas o menos así:
- Yo como vendedor, me
loguearé
en una cuenta segura a mi panel de control. desde ahí subiré un archivo zip (con opciones de .rar u otro) que contenga lo que quiero vender. Podré asignarle un precio, tal vez definir algunos codigos de descuento y al dar aceptar me generará automaticamente una especie de tienda virtual, desde la cual mis usuarios pueden realizar la compra de mis productos. La tienda generada debería tener un “markup” transparente a la que fuera posibleconectarle
una hoja de estilos personalizada (más flexible que permitir solamente cambiar colores) para que se viera como el resto de las paginas de mi sitio. - Como comprador, seguiría un enlace desde la pagina de mi blogger favorito hasta la pagina del producto que me interesa en una tienda electrónica de confianza bajo una conexión segura. Ahí podría pagar con la tarjeta de crédito de mi elección o con paypal y en cuestión de minutos recibiría por correo un enlace especial desde la cual descargar lo que acabo de comprar, asi como una contraseña con la cual pueda volver a descargar el archivo en caso de ser necesario.
- De nuevo yo, como vendedor. Entraría a mi panel de control para ver las estadísticas de todos los productos que he puesto a la venta, descargar informes y retirar el dinero que me he ganado.
Subir archivos para vender no tendría de inicio ningun costo, por lo que el modelo de negocios del servicio sería quedarse con un porcentaje de todas las ventas tal vez entre un 5% y un 10% dependiendo del ancho de banda utilizado.
Adicionalmente, el servicio podría tener un frontstore
desde la cual se pueda navegar a través de todos los productos virtuales ofrecidos por los usuarios del servicio.
Algo así verdaderamente me sería muy útil en estos momentos. ¿Se les ocurren otras características?
Urls con intuición
Visitando la nueva encarnación de A List Apart me di cuenta de una convención a la que ya me había acostumbrado, pero ahora la recordé porqe no estaba ahí. Resulta que y estaba viendo el numero mas reciente (con el url alistapart.com/issues/204) y se me ocurrió que quería ver el numero anterior, asi que cambié el ultimo 4 por un 3 en la barra de direcciones de mi Firefox, enter, y ¡saz! el numero 203 frente a mis ojos. Más como al parecer tenía mucho tiempo libre (en realidad no) quise ver todos los numeros publicados a la fecha asi que recorte la dirección a alistapart.com/issues/ y lo unico que recibí a cambio fue un error 404. ¿De quien es el error aquí? ¿Mío, por andar metiendo las narices donde no debo o de ellos por no anticiparlo?.
Flickr debe haber sido el que me acostumbro a andar merodeando por las URLs. Miren, elegí esta dirección al azar para probar mi punto: flickr.com/photos/brdriscoll/sets/954709/ asi me lleva a un determinado set de fotos, pero si quito el ultimo argumento (954709) me lleva a ver todos los sets definidos por este usuario, y si vuelvo a recortar la URL hasta .../brdriscoll/ veo todas las fotos de ese usuario, y en flickr.com/photos/ veo las fotos mas recientes. ¿Ahora ven a que me refiero? Direcciones intuitivas y nada de 404s.
Me sorprende que los de ALA hayan dejado ir una cosa tan obvia, sobre todo porque con RoR — el framework sobre el que está escrito — y otros entornos de programación moderno, dotar al sistema de esa funcionalidad es cuestion de unos pocos minutos. Y aunque fuera complicado, es una cosa que me parece importante tomar en cuenta al realizar un sitio web: hay que llenar todos los niveles de una URL con algo, algo util para el usuario porque yo al menos, me apeno cada que recibo un 404. Los 404 me hacen sentir como si me sorprendieran solo en el cuarto vacío de alguna chica junto a su cajon de la ropa interior abierto (no es que me haya pasado).
Señores webmasters, por favor evítenme el bochorno.
Meetbake

Desde hace aproximadamente dos meses y medio empecé a experimentar con cake y me gustó tanto que me dieron ganas de escribir una aplicación y así nació Meetbake
La idea original era hacer algo bien sencillito, una aplicación que permitiera postear anuncios de eventos proximos y compartirlos con los demás. Luego se me ocurrió que habría quienes quisieran hacer invitaciones que solo algunos pudieran ver, así que añadí post privados. Entonces pensé que uno querría ver sólo los posts de la ciudad donde vive asi que añadí clasificación por ciudad.
Ya entrados en materia y queriendonos montar en el tren del web 2.0 añadimos algunas características sociales. Vimos que era necesario poder clasificar los eventos de alguna manera, y obviamente nos decidimos por los tags. Tambien añadimos RSS feeds para cada tag y por ciudad para que los usuarios siempre estuvieran al tanto de eventos que podrían ser de su interés.
Si el usuario encuentra un evento que le interese (pienso en Ahogadas&Blogs o algo así) puede confirmar su asistencia, envíarlo a un amigo y agregar un recordatorio a su iCal o Sunbird.
Además, cada evento está formateado de acuerdo al microformato hCalendar aún no se por qué o para qué pero estoy seguro que en un futuro habrá aplicaciones importantes relacionadas con los microformatos.
Cake ciertamente no es Rails y ni PHP es tan bonito y sencillo como Ruby pero tiene sus ventajas. Como ya tenía un conocimiento básico de PHP, pude navegar por el código de Cake y entender cómo funciona. Cuando me topo con algo confuso basta con googlear e inmediatamente me encuentro con cientos de explicaciones y ejemplos, ha sido una experiencia muy enriquecedora. Una cosa que me pareció desmoralizante de Rails es la dificultad que supone poner en un servidor la aplicación que construíste y la poquísma oferta de servidores gratuitos que tienen soporte para Rails. Pero la mayoría de los hostings, aun los mas piteros, tienen soporte para PHP y solo hace falta subir el folder de la aplicación, ajustar un archivo con los datos de la base de datos y ¡voila! está corriendo en el servidor.
Pero bueno, a Meetbake sólo le faltan afinar algunos detalles para liberar una versión alfa, para lo que necesitaré algunos alfatesters y luego betatesters para la versión beta, así que si alguien me quiere ayudar a probarla solo escribanme a arm.sosa [arrobilla] gmail.com y les paso el URL pa que hagan y deshagan.
Si alguien le ve futuro a mi aplicación y quiere invertir pos tambien escribame.
Rolando sobre rieles
Ustedes no están para saberlo ni yo para contarlo, pero soy un programador frustrado.
Junto con la prepa estudié una carrera técnica en programación, pero ahí sólo aprendí Pascal y Clipper. ¡Rayos! De verdad que era muy bueno programanado en Clipper, lamentablemente apenas me gradué, me di cuenta que eso ya no servía para nada. Posteriormente coqueteé con Delphi, Visual Basic, Cold Fusion, ASP y más recientemente PHP pero nada, son muy complicados de aprender si se les dedicas el poco tiempo que tengo libre.
El lenguaje de moda ahora es Ruby on Rails que es un framework de desarrollo que permite desarrollar aplicaciones de una forma rapidísima con un lenguaje sumamente sencillo de entender y un modelo de programación sumamente elegante. Por si esto fuera poco, trae integrado todo lo necesario para desarrollar interfaces con AJAX, — otra tecnología de moda— sin escribír una sola línea de Javascript.
Se rumora que eventualmente RoR tomará el lugar de predilección que ahora tiene PHP — yo creo que en tres se dirá Pe Hache Qué?— entre los desarrolladores. Ahorita su mayor defecto es su evidente falta de documentación. Y aunque los pocos tutoriales que existen son muy buenos, en español no me he encontrado absolutamente nada y yo creo que va a ser así otro rato más. Otro problema es la falta de hostings que soporten la tecnología, hay pocos y son algo caros, pero en el último mes he visto que han aumentado notablemente asi que auguro que a más tardar en un año va a ser una característica obligada en los mejores hostings.
Yo ya hice mi primera mini-aplicación con rails siguiendo este tutorial ¡en apenas una hora!.
Voy a seguìr experimentando y por aquí les platico algo de lo que vaya aprendiendo (o el momento en que me frustre, lo que suceda primero)