unreal4u's Personal Network Because my reality… is just your virtuality

30Ene/120

Algunas notas sobre el prefetching

Desde hace tiempo que sigo bien de cerca algo que me tenía bien intrigado: el prefetch de HTML5, que me parece demasiado buena idea y espero que todos los navegadores lo implementen ipso-facto. Sin embargo, quise echar una pequeña mirada a cómo funcionaba (si es que funcionaba) y específicamente a cuál era la sintaxis necesaria y cuáles son los pequeños trucos de la vida que se pueden aplicar para lograr el efecto deseado. Haz click en leer más para conocer los detalles de esta investigación que algunas sorpresas dio y también muchos dolores de cabeza.

4Dic/110

Índice de directorios con filtro

Hacía mucho tiempo que no escribía y era por una razón bien práctica: me cambié de país y como tal, he estado muy ocupado tanto con la mudanza, con el traerme mi mujer y trabajando, ya que de alguna forma hay que mantener la máquina andando y eso significa que aparte de todos los trámites regulares que hay que hacer y pagar, también hay que trabajar.

Lo bueno es que estoy trabajando hace cerca de 2 meses ya, encontré trabajo sumamente rápido y como recién llegado en la empresa, me llenaron de proyectos pasados, presentes y futuros. Cuando estaba trabajando en Chile, sólo tenía 3 proyectos permanentes, así que trabajar en localhost era bastante simple. Sin embargo, ahora tengo algo más de 18 proyectos y recordar el nombre de cada una no es tan simple como parece. Por eso, ya instalado en mi nueva casa y aprovechando un ratito de ocio, escribí un script que recorre un directorio y crea un link por cada directorio que encuentra para que de esa forma, pueda visitar http://localhost/ y hacer click en el proyecto que me interesa trabajar. Hasta ahí, no tiene ninguna maravilla; sin embargo; este script tiene algo especial, ya que permite esconder ciertos directorios y asignarles un alias a otros para que el listado no quede tan feo a primera vista.

Archivado en: Linux, PHP | Continúa leyendo
22Sep/110

Cinco maneras simples de acelerar tu aplicación

Estaba yo revisando mi twitter el otro día cuando me encontré con un artículo bien interesante acerca de cómo acelerar tu aplicación en PHP. De hecho, lo encontré tan bueno que decidí hacer el mismo listado, pero en español y poniéndole también de mi cosecha.

Instalación de un Opcode Cache

En general, se puede acelerar mucho una aplicación hecha en PHP con un simple programita, el cual es tan bueno que será incluida dentro del core de PHP en su próxima release principal (5.4). El funcionamiento básico de este programa sigue un esquema bastante básico, aunque para entender eso primero deberemos entender el cómo funciona el ciclo de entrega de una página Web. Básicamente, el ciclo completo es el siguiente:

Archivado en: PHP | Continúa leyendo
28Jul/116

Instalación de php-mssql y xDebug en Mac OS Lion

Ayer les contaba acerca de que Mac OS en su nueva versión del sistema operativo había actualizado la versión de PHP (sin preguntar) y que tenía que instalar las extensiones de nuevo. Hoy toca el día en que el artículo que explica cómo instalar dos de las extensiones más populares bajo este sistema operativo y con la nueva versión de PHP incluida.

Lo primero que hay que hacer es bajar las dependencias:
Freedts
PHP5.3.6
xDebug
Descomprimen todo en un directorio y hacen click en Continuar Leyendo.

25Jul/110

Nueva class publicada: Extended PGsql

Hice un submit de una nueva class basada en mi class ya existente para MySQL: Extended MySQLi. Hoy (bueno, más bien ayer) salió aprobada la segunda class que toma un approach algo distinto: es la misma class con los mismos métodos, pero esta vez hecho para PostGreSQL, ocupando PDO, ¿se acuerdan que hablé sobre eso hace algún tiempo?

Finalmente la class, después de mucho tiempo, vio la luz y como tal también es probable que el framework en el que estoy trabajando, realice el cambio a PostGreSQL. MySQL si bien es cierto bastante bueno, no tiene un buen sistema de transacciones, depende de muchas cosas para hacer las cosas bien y es muy fácil equivocarse, especialmente trabajando en equipo.

Sin más ni menos, les dejo el link para que puedan bajar la class Extended PGsql.

Archivado en: PHP | Sin Comentarios
24Jul/110

Firefox5 + IE9 y su nueva forma de redireccionar

Yo siempre he opinado, como desarrollador, que todos los nuevos cambios en un programa son bienvenidos, sobretodo si son buenos. Pero ocurre también que a veces estos nuevos cambios terminan siendo contra-productivos, ya que requiere una gran inversión de tiempo en acomodar lo que antes funcionaba bien y que ahora funciona mal o derechamente no funciona. A veces sólo es necesario una línea de código, pero llegar a esa conclusión puede ser una gran pérdida de tiempo.

En ese sentido, Firefox en su última versión del popular navegador, cambió la forma de tratar las redirecciones 302 y que pueden producir más de algún dolor de cabeza teniendo en cuenta lo poco difundido de esta nueva característica.

Archivado en: Mundo Web, PHP | Continúa leyendo
7Jun/113

¿Qué es más rápido? ¿Procedural u OOP?

Una de las dudas más recurrentes y que tiene mucha antigüedad ya sea en foros o listas de correo es si es mejor ocupar procedural u OOP para programar en PHP, particularmente desde el punto de vista de uso de los recursos y la velocidad. Desde hace algunos días que venimos discutiendo eso en CHW, y pensé que sería bueno expandirme un poco más en el blog.

Lo primero que se me pasó por la mente es que cómo era posible que procedural podía ser más rápido y ocupar menos recursos que la programación orientada a objetos, que la segunda era mejor en ambientes corporativos, que el puro hecho de ser encapsulado otorgaba mejor seguridad, portabilidad y mantenabilidad, pero luego me di cuenta que una cosa no tiene nada que ver con la otra: durante la investigación que hice del tema me di cuenta que en realidad estaba mezclando los conceptos. ¿Cuál es mejor? ¿Cuáles son las ventajas y desventajas de cada una? Averíguelo haciendo click en "leer más" (o algo así).

Archivado en: PHP | Continúa leyendo
10Abr/112

Instalar APC para PHP en Snow Leopard

Siguiendo con la tanda de instalar extensiones infaltables para PHP, tenemos el caso de APC. Como todo el mundo ya debería saber, APC acelera la ejecución del código en forma enorme, gracias a que almacena en caché una copia de nuestro script ya compilado y ejecuta directamente ese en vez de parsear y posteriormente compilar cada vez nuestro script.
Por si fuera poco, APC permite servirnos como un buen módulo de caché, y aunque me gustaría escribir al tiro sobre eso, el objetivo de este post no es para eso. Sepan que de todas formas estoy preparando otro post con justamente esa información.

Archivado en: Apple/Mac, Linux, PHP | Continúa leyendo
9Abr/117

Instalando PostGreSQL, php-pgsql y php-pdo_pgsql en Mac OS X

No me malentiendan: desde que ocupo Mac OS X que me encanta y no me cambiaría de vuelta a Linux ni menos a Windows, pero hay algunas cosas que son capaces de hacerte doler la cabeza. Una de ellas es justamente la instalación de PostGreSQL y sus conectores para PHP: php-pgsql y su driver unificado mejorado PDO. Entre medio, hay que borrar usuarios de sistema, compilar y parchear, así que preparaos porque esto se viene bueno.

Lo bueno de todo esto, es que la instalación de PostGreSQL está dentro de lo más fácil. Sólo basta con bajar un paquete, borrar un usuario de sistema e instalar para que todo resulte bien, lo cual se hace de la siguiente manera: (Todos los comandos se ejecutan como root o sudo, lo que prefieran)

dscl . delete /users/postgres
cd /Volumes/PostgreSQL\ 9.0.3-1/
./postgresql-9.0.3-1-osx.app/Contents/MacOS/installbuilder.sh
# seguir los pasos en pantalla.
# el siguiente comando crea el superuser de postgres:
# el nombre de la cuenta (segundo parámetro) puede ser cualquier cosa.
createuser pgsql --pwprompt --username=postgres
4Feb/11Off

Algunos links interesantes

Como siempre, navego en busca de información interesante, y aquí les traigo algunos links de interés (que además me servirán para desocupar un par de pestañas del navegador). Están ordenadas por temática, y hay de todo un poco, desde generadores de passwords hasta guías sobre cómo hacer extensiones de classes para Magento.

25Ene/11Off

phpDocumentor: Haciendo una buena documentación excelente

No fue sino hasta el otro día que le encontré un propósito y una utilidad a la documentación bien hecha.

Todo surgió debido a que andaba buscando un método determinado que había escrito una vez hace 5 meses atrás y que podría haber estado dentro de un par de classes o bien dentro de un par de archivos de distintas funciones: en resumen, no tenía idea de cómo se llamaba ni menos cómo se ocupaba. Incluso ni siquiera estaba seguro de si efectivamente podría hacer lo que tenía pensado ya que la función que había escrito hacía algo muy parecido, pero podría ser que no hiciera lo mismo. Traté de ubicarla mediante diversos términos con este script pero no hubo caso. Ya casi dándome por vencido se me ocurrió la idea de que en realidad la documentación del programa estaba mal hecha y con múltiples formatos distintos: había que unificar todo.

18Oct/10Off

Habilitar salida de errores en Magento

Si alguna vez les ha salido el mensaje "Exception printing is disabled by default for security reasons" entonces sabrán que algo se hizo mal. Sin embargo, tampoco podremos saber qué salió mal, algo relativamente importante en el caso de que estemos desarrollando algún plugin o modificando algunos comportamientos del mismo Magento.

Para activar la salida de errores, basta modificar un archivo:

cd /magento/
cp errors/local.xml.sample errors/local.xml

Y listo! Con este tip ya pueden revisar el trace que genera Magento y poder solucionar sus errores rápidamente.

Archivado en: Magento, Mundo Web, PHP | 5 Comentarios