Hace bastante tiempo que tenía ganas de abordar varias cosas de MySQL, pero una de las más importantes (a mi juicio) es lo relativo a los COLLATIONs y los CHARSETs que tanto dolor de cabeza le pueden dar a aquellos de habla hispana. ¿Quién no ha tenido problemas con los tildes (no confundir con los acentos) en alguna página?

Y aunque este tema ya fue tocado en un post previo, éste será un poco más específico y aclaratorio sólo sobre estas dos propiedades de cada tabla y/o campo.

Hasta Snow Leopard, era bastante simple instalar las herramientas de desarrollo en Mac. Bastaba con bajar Xcode, instalarlo y listo. Sin embargo, con Mac OS X Lion esto cambió radicalmente. Algo que se supone iba a ser más fácil (ubicar Xcode en la App Store e instalarlo) terminó siendo mucho más complicado, teniendo incluso que compilar a mano para instalar todas las herramientas. A continuación, un pequeño tutorial para solucionar el típico problema de (sonido de tambores):

Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.

Aunque no es la tónica de este blog, sí hay una pregunta que me preguntan (valga la redundancia) bastante cuando alguien ve que saco mi MacBook y es la que lleva el título de este blog: “Tú que usas Mac, ¿me lo recomiendas? ¿Debería comprarme uno?”. Antes de escribir esta entrada, debo hacer una aclaración: no soy ni fan boy ni hater, mi filosofía de vida se define por irme por la mejor solución que se me dé en el momento, y da la casualidad de que en este momento Mac OS X es el sistema operativo que se ajusta mejor a mis requerimientos, por dos ventajas sobre sus competidores bastante definidas: Es un sistema operativo estable, mucho más estable que Windows (y más barato de mantener) y es mucho más rápido de asimilar que cualquier máquina Linux.

Cuando hoy ya estábamos a punto de lanzar un nuevo sitio web, empezamos a hacer los ajustes finales de ésta. Sin embargo, cuando estábamos probando los últimos ajustes, una gran sorpresa apareció: mientras que el sitio funcionaba bien en Safari, Firefox y demases, en Internet Explorer no había ningún estilo, ningún Javascript asociado y ninguna imagen. Investigando, nos dimos cuenta de que el problema estaba en la declaración <base>, ya que sólo al poner la URI completa (con http y todo incluido), Internet Explorer la tomaba en cuenta. Irónicamente, esta vez es Internet Explorer el que cumple con la norma, ya que el estándar de HTML 4.01 dicta que el valor a ponerse en esta directiva debe corresponder a una URI completa y absoluta tal como se denota en la RFC2396.

Así que ya saben, si no funciona:
<base href="/hola/chao/" />
Deben poner:
<base href="http://unreal4u.com/hola/chao/" />

Para que Internet Explorer la tome en cuenta.

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.

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.

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:

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.

Pequeño tip: el proceso para la creación de una firma que admita HTML en Mail5.0 es lijeramente distinto que en las versiones anteriores. En la nueva versión es:

  • Crear un archivo .html con lo que quisiéramos dejar de firma. Guardar en una ubicación temporal.

  • Abrir Preferencias en Mail y agregar una nueva firma.

  • Cerrar Mail

  • En Safari, abrir el archivo .html creado y guardarlo como un archivo tipo .webarchive

  • Copiar el archivo exportado por Safari a ~/Library/Mail/V2/MailData/Signatures/, teniendo cuidado en cambiarle el nombre al archivo sobreescribiendo el que ya esté. Si tienen varias firmas, primero revisen cuál es cuál, Mail5 le asigna una ID única a cada uno pero abriendo el archivo en un editor de texto, aunque verán mucha basura entremedio, igual se puede ver de cuál firma se trata.

[ACTUALIZACIÓN] Otro tip para volver a activar el apretar una tecla y que ésta se repita es poner en la terminal el siguiente comando: defaults write -g ApplePressAndHoldEnabled -bool false

Gracias a Rincón Apple por este dato.

[ACTUALIZACIÓN 2] Tuve un problema con la copia de archivos: sucede que copiaba o movía y éste movimiento quedaba sin efecto alguno. La solución a este problema proviene directamente de los foros oficiales de Apple y consiste en borrar un archivo ubicado en: rm -rf ~/Library/Preferences/com.apple.finder.plist

Solución encontrada gracias a los foros de Apple.

Este es un artículo que ilustra las ventajas y desventajas técnicas de Mac OS Lion en comparación con Mac OS Snow Leopard, si quieres saber las ventajas y desventajas generales, por favor visita este artículo que lo explica mucho mejor

La última versión del sistema operativo de la manzanita es, en muchos sentidos, un cambio para bien. Sin embargo, hay algunas cosas que no funcionan y otros que llegan a ser molestos y esta entrada pretende ser una suerte de guía para aquel que, como yo, simplemente actualizó a Lion sin leer antes de.

Una de las cosas que afecta directamente la temática de este blog, es que Lion actualiza la versión de PHP… y lo hace sin preguntar. Eso significa que tenemos que instalar php-mssql, xDebug, APC y todo eso nuevamente, así que aprovechando la ocasión, estoy escribiendo dos artículos a la vez: la primera que enseña a instalar xDebug y php-mssql (APC ya está cubierto) y esta misma.

u
n
r
e
a
l
4
u
.
c
o
m

Camilo Sperberg es Ingeniero Informático especializado en Linux y PHP. Éste es su blog oficial y aquí podrá leer mucha más información acerca de temáticas variadas en el bajo mundillo de la informática relacionada con esos tópicos

Because my reality... is just your virtuality

Camilo Sperberg

Debido a la gran cantidad de guiños y referencias relacionadas con el mundo informático, esta sección permanecerá siempre incompleta, al menos hasta que se complete

Futurama fan page

Oh, i'm very confortable with my sexuality, i just don't want to be slapped in the face with THEIR sexuality

Roy Trenneman en The IT Crowd S02E01