Archive

Posts Tagged ‘computers’

vs2008 instalacion

June 9th, 2010 No comments
tip para los que estan tratando de instalar vs2008 hace rato tuve broncas con un componente algo asi el Visual studio web authoring component ó Componente de creación web de Microsoft Visual Studio y yo puff de seguro viene mal el programa

asi que navege un rato haber a quienes le habia pasado igual y encontre una solucion hay que desinstalar un componente de oficce, el  InfoPath MUI 2007 para esto olo corremos esto en el run y listo a instalar el vs2008 — msiexec /x {30120000-0044-0C0A-0000-0000000FF1CE}

saludos.

it’s gettin late but i dont mind. (kid kudi)

atte.benjji


Un poco de programación Geek

February 9th, 2010 2 comments
Todo empezó un día que estaba menos ocupado que hoy… de la nada me clavé pensando en el juego del Gato, también llamado tres en raya o en inglés Tic Tac Toe…. y se me ocurrió hacer un programa que me diera las posibles jugadas para cualquier situación y así tal vez saber los mejores comienzos que me dieran mas posibilidades de ganar…

Hace días que quería postear algo a este blog olvidado por Dios, pero no fue hasta ayer mientras volvía a copiar a mi disco duro mi información respaldada (causa) fue cuando vi el script del gato y entonces decidí publicarlo aquí antes de que terminara oxidado dentro de un disco duro viejo…

El código del script nombrado:

#!/usr/bin/php
<?php
	mysql_connect("localhost","root","");
	mysql_select_db("tictactoe");
	set_time_limit(60000);
	// 1 - O wins
	// 2 - X wins
	// 3 - Tie
	$start = time();
	function search_winner($game) {
		$winner = array(array(1,4,7),array(2,5,8),array(3,6,9),array(1,2,3),array(4,5,6),array(7,8,9),array(1,5,9),array(3,5,7));
		foreach($winner as $comb) {
			if(strpos($game,"o".$comb[0]) !== false && strpos($game,"o".$comb[1]) !== false && strpos($game,"o".$comb[2]) !== false) { return "1"; }
			if(strpos($game,"x".$comb[0]) !== false && strpos($game,"x".$comb[1]) !== false && strpos($game,"x".$comb[2]) !== false) { return "2"; }
		}
		return false;
	}
	function play($player,$game,$free) {
		$free2 = $free;
		$num = count($free);
		if(count($free)<1) { echo "$game\n"; mysql_query("insert into gato values(NULL,'$game',3)"); }
		$winner = search_winner($game);
		if($winner) { echo "$game Winner: $winner.\n"; $num = 0; mysql_query("insert into gato values(NULL,'$game',$winner)"); }
		for($i=0;$i<$num;$i++) {
			$temp = array_pop($free2);
			$libres = array();
			foreach($free as $libre) {
				if($libre != $temp) $libres[] = $libre; 
			}
			if($player == "o") $playern = "x";
			else $playern = "o";
			play($playern,$game.$player.$temp,$libres);
		}
	}
	play("o","",array(1,2,3,4,5,6,7,8,9));
	$end = time();
	$duration = $end - $start;
	echo "\n\nTardo: $duration segundos.\n\n";
?>

El programa necesita una tabla MySQL:

CREATE TABLE IF NOT EXISTS `gato` (
  `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  `game` VARCHAR(100) NOT NULL,
  `winner` INT(11) NOT NULL,
  PRIMARY KEY (`id`)
)

Al correrlo y ver resultados, se ven interesantes puntos:

mysql> select winner,count(*) from gato group by winner;
+--------+----------+
| winner | count(*) |
+--------+----------+
|      1 |   131184 |
|      2 |    77904 |
|      3 |   127872 |
+--------+----------+
3 rows in set (0.20 sec)

Hay que denotar que en realidad los numeros deberian ser en realidad una cuarta parte de lo que son, ya que en el programa, si se toma en cuenta la posicion vertical hacia arriba, sin embargo volteando el gato serían los mismos movimientos 3 veces diferentes…

La observación obvia al ver los resultados es que el circulo O tiene gran ventaja, ya que tiene 1.68 veces de posibles victorias con respecto a la equis X debido a que la primera empieza con el primer movimiento.

Para la próxima dejemos el algoritmo que elimina las jugadas repetidas debido a la rotacion del cuadrado… y ya con eso podremos analizar mas facilmente cuales son las jugadas clave a la hora de jugar al gato…. por ahora creo que la moraleja es, escoje el circulo para tener mas posibilidades jejeej :).

Si alguien se anima a darle seguimiento comente los resultados.

Mi laptop dell M1530 se tarda 175 segundos en procesar el script, cuanto tarda la tuya? Comenta!.

Ofusca tu E-Mail para evitar SPAM

September 24th, 2009 No comments
Hoy estaba buscando alguna página que ofuscara el email en forma de imagen para evitar tanto spam. Aunque sí es cierto que he publicado antes mi email en texto plano y realmente confió en el filtro de Spam de Google, ya que muy pocos emails spam llegan a mi Inbox (dejando al lado las cadenas basura ¬¬) a pesar de que me llegan alrededor de mil o más mensualmente, creo que es justo que no le de más trabajo a este filtro, evitando regalarles mi dirección a más robots spamers, y ahorrando así procesamiento de los servidores google y finalmente energía (jejeje, quiero pensar que tengo un lado ecológico :P).

Si no sabes de que hablo, las imágenes de abajo lo demuestran, pero de seguro ya lo has visto utilizado en el facebook, cuando ves la información de un amigo y su email no se puede copiar como texto, sino que es una imagen :).

Googleando algunos segundos, encontre que varios blogs recomendaban el servicio de Safe Mail, pero creo que era muy simple, con pocas opciones, ademas imaginé que el hecho de que no usaran ajax y para cambiar el formato tengas que hacer todo de nuevo me hizo pensar que era poco PRO y no iba conmigo.. así que seguí buscando y encontré E-Mail Icon Generator.

Este ultimo me agradó más ya que aunque no lo consideré perfecto, me gusto que integraba el formato de los dominios comunes y daba un formato elegante con tan solo un click.

Miren la diferencia:

1 click en el segundo proveedor:

mi-gmail

Alrededor de 4 clicks en el primero:

miemail2

Otra falla que encontré mientras escribia el post del primer servicio, es que no respeta el background -__- y el resultado no es bueno:

miemail

Mi recomendación es usar el segundo servicio, y sacar su lado ecológico antes de escribir en texto plano sus emails. También es una opción para los que evitaban poner su email en sus “abouts” por el spam.

Es cierto también que esta técnica no es infalible, ya que hay robots avanzados que analizan las imágenes en busca de emails con la técnica de OCR (optical character recognition), pudiendo descifrar textos dentro de imágenes (usado tambien en los software de scanners de documentos impresos). De todas formas, la mayoría de los robots, utilizan la búsqueda solo en el texto y esto del anti-spam nunca es definitivo ya que van aprendiendo, muy parecido a la piratería…

Algo mas PRO de ofuscación de este tipo, se usa con gifs, que utilizan varios frames haciendo mas dificil su reconocimiento por OCR,  o simplemente puedes escribir con tu puño en PAINT y te apuesto que será mas eficaz que estos servicios jejeje.

Algunos ejemplos de ofuscación del email con los dominios más comunes:

Ofusca tu mail aquí

TweetDeck para IPhone, problemas configurando sincronización

September 22nd, 2009 No comments
Para los que utilizan twitter frecuentemente y tengan IPhone hasta el momento probablemente el cliente mas conocido y usado es Twitterrific, ya que fue de los primeros en estar disponible. Algunos otros aventurados tal vez ya hayan probado mas clientes y quizá ya conocen TweetDeck en su version para este móvil.

Hoy mientras actualizaba mis aplicaciones, recorde que Twitterrific había mejorado mucho en su ultima actualización, y llegue a saber de las ventajas que ofrecia TweetDeck, así que me aventuré a probarlo.

Me gusto TweetDeck mucho a pesar de que me sentí muy conforme con twitterrific. Me llamó la atención la posibilidad de tener grupos, ya que puede llegar a ser muy útil cuando deseas categorizar tus amigos, o separarlos por intereses… y lo que aún era mejor; la posibilidad de configurar esto en el cliente de PC y sincronizar estos settings, obviamente por que es más factible configurar los grupos en la computadora que en el móvil, y más entre más amigos tengas…

La razón principal para postear sobre TweetDeck no fue promocionarlo, sino el problema que tuve para configurar la sincronización.

El problema inicial fue que no funcionaba el registro de una TweetDeck Account (necesaria para la sincronizacion de las columnas y grupos) ni por la versión de PC ni la de IPhone. Pienso que este problema es temporal, y cualquiera esperaría que arreglaran esto rápido, pero dejo aquí la URL de la alternativa que me funcionó: https://api.tweetdeck.com/login_support?timestamp=1

Por medio de esa URL, pude crear mi cuenta y loguear mi TweetDeck en mi laptop. Extrañamente me daba error en el IPhone:

IMG_0879[1]

La solución encontrada en este post fue cambiar la preferencia de el reloj del IPhone a el formato de 24 Horas!, sí, así como lo leen, cambiando este valor en Settings > General > Date & Time > 24-Hour Time > ON ya puedes loguear tu cuenta TweetDeck en el IPhone!.

También algo que cabe comentar es que para sincronizar las columnas no es automatico, y tienes que Agregar una columna dentro de TweetDeck del IPhone y ahí hay un boton “Get From Server”.

Como ven, en resumen es algo complicado dejar configurado correctamente al menos en las versiones actuales, y por eso el post.

Como nota adicional, los errores mencionados fueron probados en varios clientes(PCs, IPhones, Navegadores, Conexiones ISP distintas), y por diferentes usuarios para asegurar que el problema no era alguno de estos (incluyendome a mí jejeje)

Aqui unas imagenes de las ultimas configuraciones.

Una buena computadora para mi cuarto :)

March 18th, 2009 No comments
Impresionante y divertido. Mas allá de los 24 SSD, el demás hadware usado tiene que ser bueno, aunque no muy anunciado, para la configuración que hace posible las estadisticas que nos muestran.


A parte de lo impresionante, me gustó porque es gracioso, jeje pero bueno ya lo dije :P.

Saludos

Tags: , ,