June 23 2008

SuSE 11, primeras impresiones

Hola, soy el Dr. Aoyama y soy un adicto… pero a SuSe Linux, ese sistema operativo todo verdoso y cuya mascota es una asquerosa iguana. Y como tal, vengo a dar mis primeras impresiones y quejas sobre lo que le han hecho a la distro favorita de millones de g33ks en el mundo. Y es que después de esperarlo con mucho entusiasmo y esperar ansioso el día de su descarga, y luego pasar dos días enteros descargandolo (mi conexión anda “patosa” de nuevo), me lleve una gran decepción en muchos aspectos.

¿Qué es lo que no me agradó?

Primero que nada, debo decir que esa carrera que tienen las distros actuales por “awindosear” (palabra inventada por algunos g33ks) el entorno gráfico ha empezado a fastidiarme, y no por la parte de la sencillez y faciildad que quieren añadirle al sistema para atraer a más usuarios comunes, no. Es por el horrendo abuso de elementos propios de Windows que han empezado a hacer.

  1. Las fuentes y los gráficos del instalador son demasiado grandes y a veces se aglutinan impidiendo de repente ver que estabas seleccionando o escribiendo.
  2. La ventana de login esta horrible en comparación con la de la versión 10.3, ese verde / negro que impera, es mala combinación. No es para nada elegante y esa fuente que le pusieron hace que se vea horrenda, a tal grado, que por un momento creí que estaba teniendo un deja vú y me encontraba frente a la ventana de login de Red Hat 6
  3. KDE 4 Apesta: Si, señores de KDE, por si ustedes lo olvidaron, una de las razones de que KDE sea muy utilizado, es la capacidad de múltiples escritorios con múltiples backgrounds. KDE 4 mató esa sútil pero hermosa diferencia que lo separaba de gnome y de como quiera que se llame el entorno gráfico de Windows. Matar eso, es matar el core de todo KDE. Es frustrante la ventana para cambiar el background de tu escritorio y encontrarte con que ahora solo puedes usar uno para todos.
  4. Delphin es limitativo: KDE 4, le da una patada en el trasero a Konqueror y adopta un nuevo gestor de archivos, Dolphin. Al más puro estilo gnome, Dolphin no tiene barra de dirección (lo cual me frustra) y hay que navegar solo con botoncitos que se van generando según vayas entrando a tu sistema de archivos. Incluso, en ciertas ventanas, no encontré jamás el botón de “Ir arriba” y no trae por defecto un “árbol” de directorios.
  5. El cambio de nombre de algunos elementos sin previo aviso siempre es algo que frustra a los usuarios. Se que es un detalle menor, pero, ¿cuantas veces no hemos ido recien instalada la nueva versión a buscar algo y no lo encontramos porque resulta que cambio de nombre? Se que para eso está la documentación, pero vamos, de YAST a Sistema del Administrador hay una gran diferencia, si van a cambiarle el nombre a una herramienta tan importante, al menos pongan un aviso en su sitio web. Por lo menos yo se que puedo llamar a YAST desde la línea de comandos, pero los usuarios acotumbrados a usar el menú, ¿qué hay de ellos?
  6. Incluyan las cosas completas o mejor no las pongan. Con alegría abrí mi Amarok y me regocije cuando ví que ya tenía soporte nativo para mp3 (Ya saben, el detalle ese de las patentes) Pero con frustración pude notar que no está bien implementado y parece que lo metieron a la prisa y de “a porrazo” cuando lo único que tenían que hacer, era incluir la versión completa de la xine-lib y listo. La reproducción de mp3 no está bien implementada, se recorta cada dos minutos, a veces el reproductor se “ahogaba” (y probé con XMMS también) y en ocasiones saltaba libremente de pista a pista cuando estaba a medio reproducir. Lo más frustante de todo, fue abrir banshee, kafeine y noatun y no poder reproducir DVD porque el soporte para MPEG no viene tampoco (por la misma razón de arriba).

¿Qué es lo que me agrada hasta ahora?

Vamos, que también hay que verle las cosas positivas. Desgraciadamente, están son menores en comparación con las negativas.

  1. Añadir widgets de forma nativa al escritorio: Esto me gusto mucho porque antes lo había hecho pero algunos de ellos me generaban una ventana o un ícono en el área de notificación. KDE 4 trae widgets al estilo Mac y son muy llamativos y fáciles de utilizar. Me agrado en especial el widget para twitter
  2. Los botones de acciones sobre un ícono, está es otra mejora que se agradece, al posar el ratón encima de un ícono, tienes acciones directas a realizar como Actualizar, Eilminar, Cambiar nombre, etc.
  3. El loggueo es más rápido en comparación con las versiones anteriores. Y es que una de las mejoras anunciadas, era precisamente esa, el tiempo que tardaba en logguearte al sistema
  4. El rediseño de la ventana de Apagar / Reiniciar / Cerrar sesión también se agradece, ahora tenemos una ventana igual de informativa y directa que la anterior, pero con un diseño mejorado y sin esa insufrible mascota que nunca les funciono

Debo decir, que después de analizar un poco las “mejoras”, me doy cuenta que en realidad el sistema base no fue prácticamente tocado, por lo que la mayoría de las mejoras se basan en improvisaciones a los gestores gráficos y de ventana. Definitivamente me regresaré a SuSE 10.3 que a mi juicio es la mejor versión hasta ahora creada y como ya es costumbre, tendré que esperar a que salga una o dos versiones más para ver si ya maduraron la idea de este nuevo SuSE, pero definitivamente la idea de ver a mi distribución predilecta un día convertida en un Windows con una robusta interface de comandos no me agrada.

June 19 2008

Descarga OpenSuSE 11

OpenSuSE 11

Dado que el Download Day de Firefox se llevo toda la atención y aún lo sigue haciendo, les recuerdo a toda los suseros que anden por aquí que desde hoy 19 de Junio, ya pueden descargar OpenSuSE 11. Pueden ver el anuncio de su liberación con todas las nuevas características pinchando aquí (¡Trae Firefox 3 incluido!).

June 17 2008

Download Day Hoy!

No te olvides que hoy es el Download Day, algo de lo que todo el mundo está hablando y que se había esperado con ansía en la comunidad. Por fin, después de varios RC, Firefox 3 verá la luz y tan solo quedan unas pocas horas. Puedes ser notificado del minuto exacto de la liberación de FF3 o simplemente estar a pendiente en la web de descarga. En México será a las 12:00 PM Hora de la ciudad de México.

Update: Checa la hora del DD en tu país

May 16 2008

El camino hacía Tail

Tail es un programa que se encarga de leer las últimas líneas de un determinado archivo y enviarlo a la salida estándar, de ahí su nombre (tail significa cola, lo que supone muy bien su utilización). Tail es una herramienta imprescindible para un buen administrador de sistemas, así que, vamos a echarle un vistazo. La sintaxís de tail es como sigue

CODE:
  1. tail (opciones) (archivo)

Las opciones más importantes de tail son:

  1. --retry : Intenta abrir un archivo, aún si este deja de estar disponible
  2. --bytes=N : Muestra la N cantidad de bytes que se le especifique
  3. -f : Mantiene el seguimiento sobre las nuevas líneas que se vayan añadiendo al archivo, especialmente útil para monitorear los logs del sistema
  4. --lines=N : muestra las últimas N líneas del archivo
  5. --pid=PID : Se usa en conjunto con -f y permite que el tail termine cuando el proceso identificado con el PID señalado muera
  6. -q : No muestra el pequeño header al principio del output que tiene el nombre del archivo
  7. -s N : Combinado con -f hace que tail "duerma" durante N segundos después de cada revisión al archivo
  8. -v : Muestra el nombre del archivo que se está usando al principio de la ejecución de tail
  9. --help : Muestra la ayuda completa del programa

Por ejemplo, una forma muy simple de monitorear el demonio del correo, sería un comando similar a este (suponiendo que esa es a ruta donde está el log del correo):

CODE:
  1. tail -f /var/log/mail

La salida de tail, también es muy común redirigirla a un archivo de texto, por ejemplo

CODE:
  1. tail -lines=20 /var/log/mail > correo.txt

Enviaría a un archivo de texto llamado correo.txt las últimas 20 líneas del log del correo.

May 10 2008

Pirateria

Los editores frecuentemente se refieren a la copia prohibida como «piratería». De esta forma, expresan de manera implícita que hacer copias ilegales es éticamente equiparable a atacar barcos en alta mar, secuestrar y asesinar a la gente que viaja en ellos.

Sacado de Gnu.org

May 07 2008

Configuración rápida de postfix

Postfix es un daemon SMTP muy flexible y seguro, al menos eso es lo que dice la documentación, pero la realidad es que aunque en verdad es muy flexible, su configuración puede ser un verdadero dolor de cabeza si no contamos con los parametros correctos a configurar.

Lo anterior fue realizado en un servidor HP Proliant ML 3500 Series con OpenSuSE 10.3, pero en teoría debería funcionar en cualquier distribución Linux

Una vez instalado postfix en nuestro sistema, lo siguiente que hay que hacer es configurarlo. En ocasiones anteriores, me hubiera decantado por sendmail, dadas las épicas y cruentas batallas que tuve con él y lo mucho que sude al configurarlo. Pero Postfix demostró por mucho ser más fiable y ligero que su antecesor. Cabe mencionar, que el propósito de este artículo es: Crear la configuración necesaria para dejar funcionando postfix como servidor SMTP en un dominio plenamente funcional, lo que supone pues, que el lector está familiarizado con los conceptos básicos del funcionamiento del correo y del DNS, y que ha instalado y configurado un servidor DNS.

Manos a la obra

Con su, cambiemos a root y dirijámonos al directorio /etc/postfix (puede variar según la distribución que se use). Con nuestro editor de texto favorito, abramos el archivo main.cf, los valores a modificar con su respectivo valor son:

CODE:
  1. inet_protocols = all
  2. masquerade_exceptions = root
  3. myhostname = www.tudominio.com
  4. mydomain = tudominio.com
  5. myorigin = $mydomain
  6. inet_interfaces = all
  7. mydestination = $mydomain, $myhostname, localhost.$mydomain
  8. mynetworks_style = subnet
  9. disable_dns_lookups = no
  10. relayhost =
  11. strict_8bitmime = yes
  12. disable_mime_output_conversation = no
  13. smtpd_helo_required = yes
  14. strict_rfc821_envelopes = yes
  15. smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination, reject_unknown_sender_domain, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unauth_pipelining, reject_unknown_recipient_domain

Los valores disable_dns_lookups, strict_8bitmime, disable_mime_output_conversation, smtpd_helo_required, strict_rfc821_envelopes y smtpd_recipient_restrictions son medidas muy básicas, pero recomendadas para combatir el spam, de las cuales smtpd_recipient_restrictions permite establecer restricciones a usuarios no válidos o desconocidos entre otras cosas. El atributo myorigin siempre debe apuntar a $mydomain, este valor es el que permite que nuestros mensajes salgan en la forma usuario@dominio.com. Además de eso relayhost queda en blanco, dado que el relay lo vamos a hacer nosotros mismos.

Una vez terminada la configuración, guardamos los cambios y vamos a refrescar postfix con: postfix reload, con eso debería ser suficiente.

Cabe destacar que esto es una configuración muy simple, es decir aún no consideramos la cuestión del spam de forma seria, ni instalamos un antivirus, ni creamos filtros ni nada. Ya que esos temas los trataré más a detalle en otras ocasiones, de cualquier forma, en la red hay mucha información al respecto y sobre todo, la web oficial de postfix es de gran ayuda a la hora de trabajar con él.

April 29 2008

Emulando listas de correo con php de forma rápida y sencilla

Aclaración: Enviar correo de forma masiva e indsicriminda es SPAM, no importa como lo quieras justificar, es SPAM, por favor asegurate de que las personas a las que les envíes este tipo de información, esten plenamente conscientes de lo que están recibiendo. Licencia Creativa, ni su autor, ni su administrador se hacen responsables por el mal uso que se haga de esta información

Si tenemos un servidor de correo plenamente instalado, a veces es algo tedioso y fastidioso estar configurando software de listas de correos, aunque existe software muy bueno para ello, hoy vamos a ver una forma sencilla en como podemos ahorrarnos ese paso y utilizar una cuenta de correo común y corriente para esos fines.

¿Qué necesitamos?

  1. PHP a nivel muy básico
  2. Un archivo de texto simple en el que escribiremos los datos de nuestros usuarios en la forma nombre, correo
  3. Por supuesto, la lista de nuestros usuarios
  4. Una cuenta de correo real

Preparando el archivo de texto

Hagamos un archivo de texto simple (.txt) y lo nombramos como lista.txt, en ella escribiremos los nombres de nuestra lista en la siguiente manera:

Nombre real de la persona, correo electrónico

Debemos asegurarnos de escribir un usuario por línea de texto

Tecleemos algo de código

Inicie su editor de código favorito, generamos un documento html nuevo y empecemos a escribir código. Lo primero, será abrir el archivo de texto (recuerde tener privilegios adecuados para esto) y pasarlo a una matriz, lo haremos con la función file de php

PHP:
  1. $lines = file('lista.txt');

Vamos a agregrar una linda tabla con los datos que vayamos extrayendo de la lista, de esa manera podremos ver un output al momento que los datos se van enviando. Y mostraremos todo esto dentro de un foreach

PHP:
  1. <table>
  2. <tr>
  3. <td>Nombre</td><td>Correo</td><td>Enviado</td></tr>
  4. <?php
  5.         foreach ($lines as $line_num=>$line) {
  6.             $datos = explode(",", $line);
  7.     ?>     
  8.     <tr>
  9.     <td> <?php echo $datos[0] ?></td>
  10.     <td> <?php echo $datos[1] ?></td>
  11.         <td>Ok</td>

Notemos que la variable datos contiene ahora los datos de cada usuario en forma de array, de manera que la opsición 0 contiene el nombre, y la posición 1 el correo electrónico, la función explode nos permite hacer dicha separación. Ahora, enviaremos los datos por correo, vuelvo a hacer incapie en la necesidad de usar una cuenta de correo valida para que funcione mejor, esto por supuesto, no garantiza que cada cliente de correo interprete nuestro mensaje como spam o no.

PHP:
  1. <?php
  2.         $sendTo = $datos[1]; // El correo del usuario
  3.         $correo_de = "lista@aullamas.com"; // nuestro correo
  4.         $de = "Aoyama"; // Nuestro nombre
  5.         $subject = "Bienvenida a la lista de correo de Licencia Creativa";
  6.         $headers = "MIME-Version: 1.0\n";
  7.         // Importante que el mime sea text/html para que el cliente lo entienda como tal
  8.         $headers .= "Content-type: text/html; charset=iso-8859-1\n";
  9.         $headers .= "From: $de  <$correo_de> \r\n";
  10.         $headers .= "Reply-To: " . $correo_de;
  11.         $message = "<p><img src='http://www.dominio.com/images/imagen.jpg' /></p><p>Como vez, puedes incluir im&aacute;genes tanbi&eacute;n. Y no olvides enviar esta informaci&oacute;n a todos tus amigos y conocidos.</p><p><small>Este es un correo automatizado. No es necesario que respondas al mismo, si deseas mayor informaci&oacute;n escribe a: aoyama@auyamas.com</small></p>";
  12.     mail ($sendTo, $subject, $message, $headers); //la famosa función mail de php hace el envio
  13.     ?>
  14.     </tr>
  15.     <?php     
  16.     } //fin foreach
  17.     ?>
  18.     </table>

Una vez terminado el código, guardemos este documento en una carpeta dentro de nuestra raíz de publicación y lo ejecutamos cuando sea necesario. Finalmente quiero decir que esto es algo muy simple y que hay software que hace ese trabajo de manera más eficiente, también reitero de nuevo la necesidad de no abusar de este tipo de prácticas.

April 24 2008

Descarga Ubuntu 8.04 (Hardy Heron)

Hardy Heron

April 11 2008

Tres opiniones desfavorables

Leía el mini artículo Tres opiniones favorables sobre PHP, donde algunos expertos dan su opinión sobre las cosas que favorecen al lenguaje PHP y me parece increíble, no lo que los expertos tengan que decir, sino la sarta de tonterías sin sentido por las que la gente discute. No se ustedes, pero yo estoy harto de estás absurdas peleas sobre cual es mejor lenguaje. Y la moda de hoy es "Ruby es mejor que PHP".

He oído de todo, desde opiniones objetivas y centradas, hasta absurdos como simplemente decir "PHP apesta" sin dar una razón de peso real. Creo que debemos entender una cosa. Lenguajes hay muchos, con propósitos diferentes, nacidos bajo condiciones diferentes, algunos ya cumplieron su ciclo, y otros están en transición, pero lo importante no es competir para ver cual es el mejor lenguaje. Un lenguaje de programación será una excelente herramienta si el programador es excelente, y será una pésima herramienta si el programador es realmente malo. Así que antes de andar por ahí condenando tal o cual lenguaje, creo que primero deberíamos darnos cuenta que tanto conocemos el lenguaje de nuestra preferencia y que tan eficientes somos usándolo. No vaya a ser que nos hallemos adorando a un ídolo de papel construido más sobre nuestro ego e ineptitud que sobre una base, concreta y cuantificable.

Entonces, lejos de criticar un lenguaje, yo recompondría y daría tres opiniones desfavorables no sobre el lenguaje, sino sobre el programador.

  1. El programador tiende a idolatrar el lenguaje de su preferencia
  2. El programador tiende a olvidar que la curva de aprendizaje de un lenguaje nunca es similar en ningún individuo, por eso le es más fácil criticar a quienes empiezan por un lenguaje que no sea su favorito.
  3. El programador tiende a olvidar que él comenzó muchas veces como esos a quienes critica (aunque hay sus casos excepcionales)

PD. A los que me siguen en twitter, mis peleas con Yaraher sobre Ruby son pura joda, como todo lo que se escribe ahí.

To All Pioneers

March 29 2008

¡Wordpress 2.5 Liberado!

¡Al fin salio! mucho se había especulado sobre la versión 2.5 de Wordpress, y apenas hace unas 3 horas que salio la versión definitiva, en palabras mismas del equipo de desarrollo:

Wordpress 2.5 es la culminación de seis meses de trabajo de la comunidad de Wordpress, gente como ustedes. Las mejoras en 2.5 son numerosas, y la mayoría son resultado de la retroalimentación de la comunidad: subida múltiple de archivos, actualización de los plugins con un solo click, galerias prefebricadas, un panel de control personalizable, encriptación de cookies, librería de medios, un editor WYSIWYG que no desordena el código, protección concurrente de edición de contenido, escritura a full screen y una búsqueda que cubre los post y las páginas.

Se antoja para probarlo el fin de semana, ya les estaré pasando mis apreciaciones si es necesario.

RSS