Disponible la version 3 de wordpress.
Ya esta disponible la version 3 the wordpress.
http://es.wordpress.org/2010/06/17/wordpress-3-0-final-disponible-tambien-en-espanol/
Espero ya no volver a usarlo cuando termine mi propio CMS :p.
Paseo del caballo en C++
Usando Heurística, Ejercicio del libro Como Programar C++ 6ed de Deitel.
#include <iostream>
using std::cout;
using std::endl;
int siguientepaso(const int&,const int&, int[][8]);
int main(int argc, char** argv) {
int tablero[8][8]={0};
//Posicion actual del caballo
int filaActual = 0;
int columnaActual = 0;
//Movimientos posibles del caballo
int horizontal[8]={2,1,-1,-2,-2,-1,1,2};
int vertical[8]={-1,-2,-2,-1,1,2,2,1};
int siguientemovimiento;
//Moviendo el caballo
for(int i=1;i<=64;i++)
{
//Marcando la casilla en la que estamos
tablero[filaActual][columnaActual] = i;
siguientemovimiento = siguientepaso(filaActual,columnaActual,tablero);
if(siguientemovimiento != -1)
{
filaActual += vertical[siguientemovimiento];
columnaActual += horizontal[siguientemovimiento];
}
//Ya no existe movimiento posible
if(tablero[filaActual][columnaActual] > 0)
{
cout << "Movimientos realizados: "<< i<< endl;
for(int fila=0;fila<8;fila++)
{
for(int col=0;col<8;col++)
{
cout << ""<< tablero[fila][col]<< "\t";
}
cout << "\n\n\n";
}
break;
}
}
return 0;
}
//Seleccionar el siguiente paso a hacer
int siguientepaso(const int &fila,const int &columna,int tablero[][8])
{
int accesibilidad[8][8]={
{2,3,4,4,4,4,3,2},
{3,4,6,6,6,6,4,3},
{4,6,8,8,8,8,6,4},
{4,6,8,8,8,8,6,4},
{4,6,8,8,8,8,6,4},
{4,6,8,8,8,8,6,4},
{3,4,6,6,6,6,4,3},
{2,3,4,4,4,4,3,2}
};
//Movimientos posibles del caballo
int horizontal[8]={2,1,-1,-2,-2,-1,1,2};
int vertical[8]={-1,-2,-2,-1,1,2,2,1};
int bestmove = -1;
for(int movimiento=0;movimiento<8;movimiento++)
{
if((fila + vertical[movimiento]) > 7 || (fila + vertical[movimiento]) < 0)
continue;
if((columna + horizontal[movimiento]) > 7 || (columna + horizontal[movimiento]) < 0)
continue;
if(tablero[fila + vertical[movimiento]][columna + horizontal[movimiento]] > 0)
continue;
if(bestmove==-1)
{
bestmove = movimiento;
continue;
}
if(accesibilidad[fila + vertical[bestmove]][columna + horizontal[bestmove]] > accesibilidad[fila + vertical[movimiento]][columna + horizontal[movimiento]])
{
bestmove = movimiento;
}
}
return bestmove;
}
Ventajas y desventajas de usar linux.
Lo siguiente es mayormente subjetivo.
Ventajas
- Cron, grep, y todas las utilidades de la consola.
- Instalar paquetes rapido y facil, por ejemplo apache y php
- Seguridad de que no te infectaras con algun virus
- Gratis
Desventajas
- Es dificil de configurar el hardware
- Los juegos de ultima generacion no toman en cuenta linux
- Demasiadas opciones
Por que uso freebsd
Ventajas
- Estable
- Software Actualizado
- Capacidad de optimizacion al estilo gentoo(mas bien gentoo es al estilo de freebsd)
- Rapido
- Documentacion
Desventajas
- Mi tarjeta de sonido Audigy SE no esta soportada
- Compilar/configurar los ports toma horas, tambien se puede usar pkg_add para una instalacion mas rapidad sin necesidad de compilar
- Mi teclado g15 no esta soportado, funciona pero el LCD no muestra el reloj.
Como montar una particion ext3 en freebsd.
Lo primero que tenemos que hacer es identificar nuestros discos duros.
localhost# dmesg|grep -i “SATA”
atapci0:port 0xff00-0xff07,0xfe00-0xfe03,0xfd00-0xfd07,0xfc00-0xfc03,0xfb00-0xfb0f mem 0xfe02f000-0xfe02f3ff irq 22 at device 17.0 on pci0
ad4: 715404MBat ata2-master SATA150
ad6: 381554MBat ata3-master SATA150
Una vez tenemos localizado el disco en mi caso es el ad4 donde tengo las particiones de linux, ahora tenemos que saber como las nombra freebsd, para ello ejectua:
localhost# ls /dev/ad4*
/dev/ad4 /dev/ad4s2 /dev/ad4s4
/dev/ad4s1 /dev/ad4s3 /dev/ad4s5
en este caso los equivalentes para linux serian.
/dev/ad4 -> /dev/sda
/dev/ad4s1 -> /dev/sda1
…
etc.
Y para pontar la particion ad4s1 es:
mount -t ext2fs /dev/ad4s1 /mnt/s1
El directorio /mnt/s1 debe ser creado primero.
Freebsd /usr/ports: No such file or directory.
He instalado freebsd en una maquina virtual para luego ver si me decido hacerlo mi sistema de escritorio, y me he encontrado con el problema de que el directorio /usr/ports no existe.
Para solucionar este problema se puede hacer lo siguiente:
csup -h cvsup.us.freebsd.org /usr/share/examples/cvsup/ports-supfile
Montar Ext4 en Debian Lenny.
Debian Lenny no soporta el formato Ext4 oficialmente, por que era experimental en el momento en que Lenny fue lanzada, pero tenia un driver experimental que puedes usar para leer los archivos.
tune2fs -E test_fs /dev/sdax
mount -t ext4dev -o ro /dev/sdax /mnt/sdax
Utilidades para checar la optimizacion de una pagina.
La velocidad de un sitio es un factor importante para mantener a nuestros visitantes felices, existen multitud de herramientas que nos pueden ayudar a lograr nuestro objetivo de optimizar la velocidad de carga de una pagina.
Yo recomiendo las siguientes:
YSlow
Este me gusta mas que Page Speed ya que muestra graficas y en general se me hace mas presentable que page speed.
Descargar: http://developer.yahoo.com/yslow/
Page Speed
Descargar: http://code.google.com/speed/page-speed/download.html
Los dos necesitan la extension firebug para funcionar https://addons.mozilla.org/es-ES/firefox/addon/1843
Yo he tratado de optimizar la pagina para un score de 100, pero lo máximo que he logrado a sido un 98… ya no se que mas modificar xD.
Ya empezo el google dance.
Hoy me lleve la sorpresa de que a una de mis paginas le bajo el pr
…
a algunas otras les subio tambien…
a trabajar se ha dicho :p.
Tips de optimizacion wordpress + lighttpd.
Lo primero que se debe hacer es activar la opción de cache de lighttpd.
abre tu archivo /etc/lighttpd/lighttpd.conf y descomenta el mod_compress.
En mi caso quedo asi.
server.modules = (
“mod_access”,
“mod_alias”,
# “mod_accesslog”,
“mod_expire”,
“mod_compress”,
“mod_fastcgi”,
“mod_cgi”,
“mod_rewrite”,
“mod_setenv”,
# “mod_redirect”,
# “mod_evhost”,
# “mod_usertrack”,
# “mod_rrdtool”,
# “mod_webdav”,
# “mod_expire”,
# “mod_flv_streaming”,
# “mod_evasive”
)
También anade las siguientes lineas:
compress.cache-dir = “/var/cache/lighttpd/compress/”
compress.filetype = (“text/plain”, “text/html”, “application/x-javascript”, “text/css”, “text/javascript”)
compress.cache-dir es donde se guardan los archivos y
compress.filetype le dice a lighttpd que archivos se pueden guardar en la cache.
Ya con eso tienes la mayoria de los archivos en cache.
El caso de php es especial ya que es dinámico, para activar la cache de php, debes editar el archivo php.ini en /etc/php5/cgi/php.ini y descomentar las siguientes lineas:
zlib.output_compression = On
zlib.output_handler = 1
y por ultimo reinicias lighttpd.
/etc/init.d/lighttpd restart
Nota: Instrucciones basadas en Debian Lenny

