NITF: un formato estándar para los contenidos de noticias online

Volviendo un poco sobre mi post 5 errores en los contenidos de un sitio web me encuentro hoy un post en Linux Today sobre un formato público, abierto y estándar para los contenidos de noticias online.

The News Industry Text Format is an XML-based format used by the news industry to encode and share the content of news articles. PEAR’s XML_NITF package provides an extensible API to read and parse NITF-formatted files, making it easy to extract bibliographical information and article content for use in any PHP application.

Me pregunto si en La Tercera o en LUN sabrán de esto… ¿Qué creen?

Es interesante ver cómo de un lado del mundo se discute sobre el futuro del periodismo (vía jbarahona) y se entiende que Internet juega un papel vital en su construcción; mientras por acá parece que nos quedamos pegados en la era de la fotocopiadora.

Si quieres saber más sobre NITF:

MVC para PHP con .htaccess y URLs amigables

Leyendo sobre RoR me topé con un concepto que ha tendio un auge paralelo al de la Web 2.0: Modelo Vista Controlador.

La wikipedia lo define de la siguiente forma:

MVC es un patrón de arquitectura de software que separa los datos de una aplicación, la interfaz de usuario, y la lógica de control en tres componentes distintos. El patrón MVC se ve frecuentemente en aplicaciones web, donde la vista es la página HTML y el código que provee de datos dinámicos a la página, el modelo es el Sistema de Gestión de Base de Datos y el controlador respresenta la Lógica de negocio.

En términos más simples, se trata de un patrón diseño donde el HTML es provisto de DATOS dinámicamente según las ACCIONES realizadas por el usuario. Continue reading

Las razones por las que uso Linux

Varias veces he discutido con amigos del mundo Mac las ventajas de usar Linux en vez de otros sistemas. Siempre digo que Mac está bien, es bello en cuanto a hadware y el OSX es un buen sistema, pero, para mí, insuficiente. Es que en Mac sólo hay un camino para hacer las cosas y, generalmente, no me sirve.

En Linux, en cambio, si una receta no funciona, tengo mil otras y muchos amigos bloggers que me tiende la mano con su experiencia. Y no me digan que en Mac todo funciona a la primera (díganme como montar PHP en dos cliks).

Es cierto, mi desventaja pasa por falta de interés por parte de las grandes empresas de software y hardware en sacar versiones compatibles con Linux de sus productos y controladores. Pero la comunidad es power y reacciona antes que el mercado, que, de todas fromas, está cambiando lentamente su postura gracias a la apuesta de empresas como Dell y Lenovo.

En el caso de los juegos, por ejemplo, ahora hasta mi hijo prefiere Linux y eso que los niños son exigentes en esta materia. Si algo no les gusta, no hay caso. Además, desde mi perspectiva, salvo algunos programas de Adobe -que emulo con Wine- tengo todo lo que necesito para trabajar: Quanta, Eclipse y Apatana para el código, Gimp para lo básico en tratamiento de imágenes y Apache, MySQL, PHP y Ruby instalados en dos clicks con Synaptic para trabajar en local y eso sin contar lo insuperable que es Linux para el trabajo en Red.

Ahora, como simple ususario tengo Firefox para nevergar, Skype para conferencias de voz, Kopete para el chat, Lifera para mis feeds, Amarok para la musica y Evolution para mis mails, mis contactos y mi agenda… ¿Qué más necesito? O mejor, ¿qué más necesitas para cambiarte?

5+ juegos por los que ahora mi hijo prefiere Linux

La única razón que tenía para no eliminar la partición Windows de mi tarro era porque mi hijo la usaba para jugar; hasta que un día falló. Hice lo que pude para restaurar Windows, pero nada sirvió.

Para salvar la situación, instalé algunos juegos con Adept y crucé los dedos, esperando que alguno le gustara, pero pronto se aburrió con mi selección. Quería Windows. Entonces volví a abrir el instalalador de KDE y seleccioné, esta vez, lo que él fue pidiendo. Sería todo. Cuando nuevamente se aburrió, solito abrió Adept y comenzó a instalar juegos como loco.

En la noche, mientras veíamos “Locos por el Surf” me dijo que quería “ese sistema de linux” en el PC de su casa (sip, no vive conmigo :-( ).

Estos son los juegos que más le han gustado:

Battle For Wesnoth

Battle For Wesnoth

Es casi un juego pionero en el mundo open source sobre juegos de estrategia. Destaca por los simple y entretendio. Se instala desde Adept y está disponible en 35 idiomas.

Lo mejor para mi hijo es que puede diseñar mapas, campañas y unidades a sus gusto. Así no pierede. Continue reading

Cómo particionar y formatear discos en Ubuntu/Linux

Hace más de un año escribí un how-to en dos partes (parte I y parte II) sobre este tema, debido a su popularidad y a que no está actualizado he decidido hacer uno nuevo:

Esta vez usaremos la herramienta qtParted, el Partition Magic de Linux. Si no lo tienes instalado, podemos hacerlo fácilmente con Synaptic o apt-get.

Instalando QTParted

Entonces lo buscamos en Sistema, si estamos en KDE, y lo iniciamos (pedirá clave, pues debe ser usado como administrador). Continue reading

5 buenos recursos para comenzar con php

Constantemente navego internet buscando tutoriales y recursos para php, si no estás muy familiarizado con este lenguaje y deseas saber por dónde empezar, aquí va una lista que de los sitios que más frecuento en busca de ayuda.

1-. Manual oficial de PHP
Es muy obvio recomendar este manual, pero la documentación oficial de PHP es la mejor organizada y ejemplificada que existe en Internet sobre algún lenguaje. Está en español y hay versiones descargables que son de mucha ayuda cuando trabajas offline.

2-. PHP Classes
Ya ni recuerdo los años que estoy susctrito a este sitio, su gráfica siempre me ha parecido mala, pero la gran cantidad de classes que tiene disponible es impresionante. Puedes encontrar todo tipo de script… clases para conexiones a bb.dd, carros de compra, sistemas de mailing, gestión de usuarios, etc. La red de colaboradres es enorme, por lo que hay bastante código comentado en español  y pudes, si llegas a necesitarlo, contactarse con su programador.

3-. Hotscripts
Hotscripts se ha tranformado en un verdadero portal de todo tipo de lenguajes, pero su sección de Scripts and Programs de php es una de las más completas y ordenadas que he visto. Tal vez lo malo que tiene sus sistema de recomendación pagada de script con licencias comerciales, pero con un poco de paciencia es posible encontrar lo que se necesita.

4-. PHP Freaks
Otro buen sitio para iniciarse. Hartos tutoriales, ejemplos, tips y artículos.

5-. Good php tutorials
Otra fuente inagotable de ejemplos y tutoriales. Algunos bastante comlejos como crear documentos zip al vuelo.

Una de yapa, los chicos de Zend tienen excelentes tutoriales también, y de paso aprendes Zend Framework.Te quitarás un montón de pega de encima…

Comprobación de RUT en PHP

Hace tiempo tenía este post en borrador, se trata de una sencilla función para verificar el RUT en Chile. Puede que sea un poco redundante para sacar algunos cálculos, pero funciona.

No requiere mayor explicación, devolverá true o false según el rut sea real o no. Si el dígito verificador es k, será considerado como si fuese un 10.

function verificar_rut($rut, $digito){
$dv=strtolower($digito)==’k'?10:$digito;
$num=str_split($rut);
$suma=($num[7]*2)+($num[6]*3)+
($num[5]*4)+($num[4]*5)+($num[3]*6)+
($num[2]*7)+($num[1]*2)+($num[0]*3);
$div = floor($suma / 11);
$multi = $div * 11;
$resta = $suma – $multi;
$num= 11 – $resta;
if($num!=$dv){
return false ;
}
else{
return true;
}
}
$mi_rut = verificar_rut(12947567,6);

Nótese que los valores pasados como parámetros, son dos: el $rut (que en este caso está sin puntos) y el dígito verificador. En un contexto real, posiblemente estos parámetros correspondan a dos variables $_POST de un formulario. Para evitar que los puntos causen conflictos, deberíamos hacer algo como esto:

$mi_rut = verificar_rut(eregi_replace(“\.”,”",$_POST['rut']) , $_POST[dv']);