Archive for the ‘Internet’ Category

Encuestas en Google Docs

Saturday, April 4th, 2009

Las últimas actualizaciones de Google Docs (en este tipo de aplicaciones no hay numeración, ¿o sí?) permiten realizar formularios para encuestas y luego enviarlos por email, embeberlos en una página, o demás…

¿Se te habría ocurrido este servicio antes?

El futuro y la distribución de contenido online

Wednesday, February 18th, 2009

img_2224

Los sistemas basados en P2P pueden ayudar a aliviar el tráfico de los servidores de empresas de creación de contenidos. Vale, es preferible el “todo gratis”, pero estamos todos de acuerdo en que los contenidos, de calidad, cuestan mucho de hacer. ¿Cuánto pagarías por un servicio como el de eztv ofrecido, pongamos, por la NBC, Fox o una empresa que ofreciera de forma legal? Yo calculo que valoro el poder ver las series que me apetece al día siguiente de su emisión en unos 10€ al mes. Si fuera más caro y no pudiera acceder a ello por otras vías, seguramente me dedicaría a leer más. Y sí, lo de la imagen es contenido legal…

PHP_Incomplete_Class

Monday, July 14th, 2008

Hoy toca un tema de PHP duro, black metal que dirían algunos. Dándole caña al PHP con los alumnos, hemos encontrado un error de esos que parecen inexplicables, pero que al final tienen explicación. Realmente creo que nunca he encontrado un bug de PHP, al menos un bug bug, ya que esto podría considerarse como, al menos, falta de información útil. No he encontrado nada de esa información útil en castellano, así que vaya, seamos los primeros, allá vamos.

Pues bien, si utilizas la variable $_SESSION para almacenar objetos, y te encuentras al recuperarlo con algo como: Error”__PHP_Incomplete_Class”. Es que ha sucedido un problema en la deserialización, osea, en el proceso de convertir un objeto de una dato binario a algo en memoria, con sus variables, arrays, etc… El tema es que, si cuando la deserialización tiene que ser realizada, el intérprete no sabe de qué tipo de datos es el objeto, no tiene ni idea de cómo hacerlo. Por tanto, esto se soluciona de dos formas:

  1. Mandando todo al garete
  2. Incluyendo la definición de la clase (normalmente a través de un include) ANTES del session_start(). Ten en cuenta que antes de un session_start (o un header) no puede haberse sacado NADA por stdout. Si en el archivo en el que se define la clase se muestra algún carácter (esos echo $query, o espacios antes o después de las etiquetas de php) PHP nos voceará con el tan manido “headers already sent”.

Conclusiones, o conclusions que dirían los ingleses, hoy en día con estos lenguajes interpretados tan maravillosos parece que ellos lo hacen todo por nosotros, pero hay casos en los que o bien no son tan listos como deberían, o les creemos más listos de lo que son. Y sí, quizás PHP ante un proceso de deserialización debería analizar el script a ver si se va a incluir la clase… De cuando en cuando es cuando uno se plantea “¿es PHP un lenguaje poco serio?”. Pues seguramente sí, pero ahí bastante de su gracia.

HTML 90 – kTzAR 46

Friday, March 14th, 2008

He hecho una prueba que ví en Minid.net y que me ha parecido curiosa. Se trata de escribir en 5 minutos todos los tags que puedas de HTML. Yo, sin mirar, he hecho sólo 46 de los 90 que hay. Viendo luego los que me faltaban la verdad es que la mayoría eran desconocidos para mí, por lo que me siento orgulloso de mi memoria, pero no tanto de mis conocimientos de html…

Si tienes curiosidad puedes intentarlo:
46

¡Canciones gratis oiga!

Thursday, March 13th, 2008

Ya son varias las páginas de grupos musicales que he visto en las que tienen un reproductor en el que puedes oír su disco entero. Bien por ellos, no restringir la escucha de la música es la mejor forma de forrarse… pero trabajando (léase haciendo conciertos).

Lo que quizás muchos no saben, ya que los diseñadores gráficos o pseudo-entendidos que les hacen las páginas web les mienten (o aun peor, son unos ignorantes) es que aun poniendo la música en flash sí se puede descargar. ¡Craso error corregidor!

La verdad es que para conseguir la discografía de Marc Parrot, o el último disco de Marlango no tienes que ir al Top-Manta más cercano, ni siquiera abrir tu querido [e|a]Mule, no.

Pues sí, se puede descargar, y no diré cómo porque si no es el deseo de los autores el que su música sea descargada no seré yo quién diga cómo se hace. Pero hija, descargarse Interferència a 900 kB/s es una gozada (sí, un disco entero en 30 segundos, lo que dura un bostezo largo), y da un gustirrinín el hacerlo así de estrangis que… Y codificadas a 128kb, 44100Hz de frecuencia de muestreo y 16 bits por muestra. A muchos quizás esta calidad “no os va”, y otros quizás no hayáis entendido nada de la última frase; pero a mi me gusta, la calidad y la frase.

Pues eso, menos intrusismo y más gente que sepa lo que hace. Y por intrusismo no me refiero a que no me gustan los biólogos que hacen webs, sino que no me gustan las personas que no conocen el medio y se venden a precios de oro… De hecho me encanta que haya químicos expertos en web.

Ah, y sí se puede hacer que se pueda descargar tan solo por el reproductor Flash y restringir el que se baje con wget como hago yo, eso sí, los consejos profesionales no son gratis :P

Magento, un osCommerce bien hecho

Thursday, September 20th, 2007

Vía Sentido Web he conocido Magento, un CMS centrado en tiendas virtuales. El rey en el mercado ahora mismo es osCommerce, que ya lleva varios años en pie y poco a poco se va anquilosando por no utilizar técnicas “modernas” de programación PHP. Cualquiera que haya echado un ojo al código y lo haya comparado con, digamos, WordPress, me dará la razón.

Como ha coincidido que me está empezando a interesar bastante el tema pues me he puesto a probarlo. La verdad es que no es un CMS normal, ya que “requiere” que el servidor ofrezca páginas bajo SSL (en el caso de una tienda es bastante lógico), y requiere algunos módulos en PHP que no suelen venir de serie.

La verdad es que bajo Linux la instalación ha sido bastante sencilla (exceptuando un bug en el paquete apache2-common que hace que no se incluya el script apache2-ssl-certificate, que se soluciona descargando un tar.gz que alguien ha puesto en ese foro y descomprimiéndolo donde se indica), hay varios tutoriales que lo comentan.

En la web de Enrique Parreño se comenta también el uso de ZenCart, que tiene buena pinta. Pero como siempre, lo que hay que hacer es instalar varios, crear templates, ver cómo funcionan las pasarelas de pago, echar un ojo al código, ver módulos disponibles, … Es decir: trastear. Espero sacar una horilla al día para ir viendo este, ya que el que osCommerce no traiga de serie un sistema de plantillas es imperdonable.

Iré contando novedades… Y ya he perdido la cuenta de la de proyectos que tengo a medias.

Blog plurilingüe

Monday, August 6th, 2007

Acabo de llegar al blog de Miriam Ruiz vía Barrapunto, y la verdad es que hay cosas interesantes; pero lo que más me ha sorprendido es que alterna posts en inglés y en español. En español cuando es algo local de España, como quejarse de una compañía local de reserva de vuelos, y en español cuando es algo más “internacional” (normalmente relacionado con la programación de software).

La verdad es que abrir un blog en inglés siempre me ha provocado mucho interés, pero nunca me he lanzado. Y viendo lo que hay en el blog de Miriam quizás me plantée, de vez en cuando, escribir algún post en inglés. ¿Qué te parece? ¿Crees que tiene algún sentido un blog escrito en dos o varios idiomas distintos? ¿Leerías los posts que no están en español?

Ahora que lo pienso, Diego Lafuente escribe en su blog algunos posts en catalán, así que ya hay jurisprudencia ;)

Harry Potter en la Wikipedia

Friday, May 11th, 2007

Buscando información sobre los directores de la serie de películas de Harry Potter (qué fuerte que desde la segunda película cambien de director en cada una) llegué al artículo de la Wikipedia sobre Lord Voldemort… Y me fijé en la cantidad de artículos que hay sobre el mundo fantástico de Harry Potter.

Personalmente no me parece bien que en una enciclopedia generalista se dedique a Harry Potter más de un artículo, largo quizás eso sí, pero llenar la Wikipedia con 40 ó 50 artículos sobre esto (para hacerte una idea, hay un artículo sobre Seamus Finnigan) no me termina de parecer bien.

Pero bueno, como para opiniones los colores… Y además, hay artículos como el de Hogwarts que están maravillosamente escritos y son muy ricos en detalles. La última vez que escribí sobre Harry Potter se me llenó esto de hoygans, a ver qué pasa ahora :)

Curiosidades de CSS

Tuesday, March 13th, 2007

El otro día me surgió la necesidad, osea que lo pidió un cliente, de tener una tabla que se desplaza pero la cabecera siempre se ve, para no perder las referencias de qué contienen cada una de las columnas.

Le dí mil vueltas (algunas rozando lo paranormal) con iframes, divs con la propiedad “position:fixed” y demás cosas. Y cuando tuve acceso a Internet busqué una solución y encontré Pure CSS Scrollable Tables with Fixed Header. Es interesante echarle un ojo, pero tras analizarlo a fondo, se basa en CSS hacks (utilizar errores de parseo de Internet Explorer para que sólo él lea algunas cosas) y, específicamente para IE5, utiliza lo siguiente:

top: expression(
document.getElementById("tableContainer").scrollTop
);

¿Javascript en CSS? Qué raro… ¿Qué será esto? Como me suponía, en la MSDN aparece documentado como si tal, y en el W3C ni habla de él… Osea, que no es estándar, pero con el hack utilizado en esa página se consigue que esto funcione en todos los navegadores.

Puedes leer más sobre expresiones en CSS en CSS Expression Optimization y CSS expressions in browsers other than IE.

Ruby on Rails

Thursday, March 8th, 2007

Tengo ganas de escribir, me pasan muchas cosas, pero esas ganas se esfuman cuando llego a casa después de la mitad del día programando y la otra mitad estudiando… Cuando llego a casa me olvido de las cosas que tenía ganas de contar y me centro en otras que están en otro plano.

Hace una semana y media cogí de la biblioteca de mi escuela Agile Web Development with Rails, que trata desde cero (incluye una introducción al lenguaje Ruby) el framework para realizar webs Ruby on Rails. Conocía su existencia desde hacía un año y medio, pero esta semana lo he conocido más a fondo. Quizás la evolución que ha sufrido mi opinión con respecto al tema es por culpa de lo que comentaba al principio, que al llegar a casa no me apetece tocar un ordenador. Pero ha resultado que el primer día me fascinó, el segundo me enamoró, y poco a poco voy viendo que es muy complicado diseñar niveles de abstracción, que al fin y al cabo es lo que hace Rails.

Se basa en el paradigma MVC, algo a lo que si no coges malos vicios al programar, acabas tendiendo a hacer por tí mismo. Este paradigma separa el código que maneja los datos (modelo), del que los muestra (vista) del que recibe las acciones que manejan los datos (controlador). Puedes conocer más sobre este paradigma, o patrón, en el artículo de la Wikipedia sobre MVC.

En la web de Ruby on Rails hay una serie de screencasts que muestran algos desarrollos. Parecen muy bonitos, pero toda la “magia” que tiene eso por debajo “no es gratis”, parafraseando a un profesor mío de la Universidad. Algo parecido se discute en un post en Quoderat: Rails vs PHP: MVC or view Centric?

Mi opinión sobre Ruby on Rails es peor ahora que hace una semana, pero necesito probarlo más allá de instalarlo y hacer cuatro pruebas pequeñas, quiero plantearme una aplicación concreta y desarrollarla, apuntar los problemas que me han surgido y plantearlos aquí. ¿Has usado Ruby on Rails? ¿Después de conocerlo volviste a PHP/JSP/ASP?

Si no me vuelve a entusiasmar, probaré con PHP on Trax o CakePHP, que también tienen una misma filosofía, pero implementada en PHP, lo cual tiene muchas ventajas en la práctica; como que no te costará encontrar un ISP que te ofrezca proceso de PHP en su servidor.