tag:blogger.com,1999:blog-248649842009-02-22T23:32:24.565-06:00OWaruxRecopilacion de mis andanzas en LinuxOWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.comBlogger26125tag:blogger.com,1999:blog-24864984.post-1152591290967215472006-07-10T23:14:00.000-05:002006-07-10T23:14:51.946-05:00Final de Mundial y de Elecciones<DIV><FONT face=Arial size=2>Con esto de las elecciones y el mundial, pues ni a cual irle, Italia gano en penales, eso no es ganar, es suerte, el PAN gano al PRD, eso no es suerte, es democracia, y como dijo el mismisimo Andrés Manuel López Obrador, "en la democracia se gana o se pierde con un voto".</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>Un gol, un voto.... bueno, si el mundial se gana con un gol, una elección se puede ganar con un voto, pero no fue uno, fueron algunos mas, como quinientos mil votitos de diferencia.</FONT></DIV> <DIV> </DIV> <DIV><FONT face=Arial size=2>Una gran verdad es lo que se dijo al final de la serie cómica "El Privilegio de Mandar".</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>Chequen y discutan.</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV> <OBJECT height=350 width=425><PARAM NAME="movie" VALUE="http://www.youtube.com/v/GPVGvTg2ANs"> <embed src="http://www.youtube.com/v/GPVGvTg2ANs" type="application/x-shockwave-flash" width="425" height="350"></embed></OBJECT></DIV> <DIV> </DIV> <DIV><FONT face=Arial size=2>Por cierto, si se preguntan la falta de actualización, es que andaba en Alemania!!!!! , jajaja, ojala fuera cierto.</FONT></DIV><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-115259129096721547?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com0tag:blogger.com,1999:blog-24864984.post-1148732375016160692006-05-27T07:18:00.000-05:002006-05-27T07:19:35.026-05:00Desktop de Suse 10.1Flamante pantallazo de mi maquina corriendo Suse 10.1, tal cual se los conte en el post anterior, Click sobre la imagen para ampliar.<br /><br /><a href="http://photos1.blogger.com/blogger/3625/751/1024/Pantallazo.jpg"><img style="DISPLAY: block; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://photos1.blogger.com/blogger/3625/751/400/Pantallazo.jpg" border="0" /></a> <a href='http://picasa.google.com/blogger/' target='ext'><img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' style='border: 0px none ; padding: 0px; background: transparent none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;' align='middle' border='0' /></a> <div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114873237501616069?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com2tag:blogger.com,1999:blog-24864984.post-1148732084716507512006-05-27T07:14:00.000-05:002006-05-27T07:14:46.616-05:00Probando Suse 10.1He instalado Suse Linux 10.1 en una maquina en mi casa, cabe decir que sòlo ha sido para probar como funciona esta distribuciòn, ya que hasta ahora solo habìa estado usando Mandrake (ahora Mandriva) y querìa ver que habìa en esta distro. <br><br>El hecho de animarme a probar Suse fueron los comentarios de mi compañero de trabajo Vìctor, y lo que habìa leìdo en algunos sitios de internet y en revistas, creo que lo que màs me animo fue un review con algunos screenshots donde se veìa un ambiente gràfico bien trabajado, funcionando en KDE. <br><br>Para empezar la distro la baje en un ISO para DVD, la quemè y procedì a instalar en mì màquina que agarro como servidor de pruebas casero. Esta màquino no tiene lector DVD, sino de CD, por lo que le instale temporalmente una unidad de DVD (como veran no soy muy diestro en la instalacion mediante red). Una vez hecha la instalacion del drive DVD procedì a la instalaciòn de Suse. <br><br>El proceso con Yast es muy detallado, aquì si encontre una gran diferencia con Mandriva, por ejemplo, nos da por categorìas la instalaciòn de software (servidor, red, oficina, juegos, multimedia, etc) y cada apartado de cada secciòn nos dice que paquetes son los que contiene, y l a opcion de instalarlos o no. <br><br>El particionamiento del disco nos lo da automàtico o para avanzados, y tambìen esta muy fàcil de configurar. Hay que tener en cuenta el tamaño de cada particiòn (si es que utilizamos un particionamiento personalizado), como en /usr o root (/), ya que si no calculamos bien el espacio puede darnos problemas mas adelante. <br><br>Un cambio que note con diferencia a Mandriva es que en Suse, la carpeta por default para el servidor web esta dentro de /srv/www, mientras que en Mandriva esta en /var/www, puede que no sea gran cosa (cuestìon de editar el document-root de apache) pero para los que no tienen mucha experiencia puede darles problemas. <br><br>La instalaciòn no es nada del otro mundo (yo tuve algunos problemas por que no calcule el espacio de las particiones, ademàs de que me estaba durmiendo :p ), y si sòlo lo quieres utilizar como desktop en vez de servidor simple no habrà grandes complicaciones (de hecho, esta version de Suse esta pensada para la pc del hogar, aunque no limitada solo a eso). <br><br>Ya una vez instalado, arrancamos por primera vez y vemos una pantalla de presentacìon muy bien hecha, sin nada extravagante y con un diseño limpìo y claro.<br><br>En mi caso selecciono el tipo de sesiòn como KDE y entro, hecho esto, veo un escritorio de KDE muy bien hecho, con ligeros cambios al que siempre veìa en Mandriva, para los que vienen de windows serà un entorno muy amigable. <br><br>Como la instalaciòn se hizo desde DVD y la maquina no tiene drive de este tipo, decidi sustituir el medio original en Yast y crear un medio nuevo, pero alojado en el disco duro, osea que habìa que copiar el contenido del DVD a mi disco duro. La soluciòn fue simple y bastante fàcil, cree una carpeta donde alojar el contenido del DVD (por ejemplo /var/DVDDrive) mientras en mi otra maquina windows (si soy una basura, lo siento) comparti el drive DVD e inserte el DVD de Suse, ya de nuevo en mi Linux box, me conecte a la maquina windows (cosa que resulto bastante sencilla, mediante el konkeror navegando por la red local) y copie todo el contenido del DVD. <br>Despuès, desde Yast anule el medio original (que era el DVD drive local en la maquina linux, pero que ya habia desconectado) y creè un nuevo medio local (enlazado a la carpeta /var/DVDDrive) y eso fue todo, ningùn problema para añadir màs paquetes. <br><br>Ahora viene lo bueno, este servidor casero lo ocupo para mis experimentos con apache, php y mysql<br> y al probar el servidor web... toing!!!! (expresiòn local) me manda un mensaje de Error 403 (o sea prohibido, que no hay derechos para ver los documentos). Al ver las palabras "no tiene derechos" de volada a checar el propietario y grupo de las carpetas /srv/www y sus contenidos y todos decian que el usuario y grupo eran "root". Pensando que ese era el problema les cambie en usuario y el grupo (en Suse el grupo para apache es www y el usuario es wwwrun) y les di los màximos derechos a todos (con un chmod 777), reinicio el servidor web... probamos... y ... TOING!!!!!!!, de nuevo el pinche errorcito ese. <br><br>Para no hacercelas de cuento, probe todos los usuarios, chmod's grupos, mentadas y maldiciones posibles y siempre me mandaba ese error, modifique el httpd.conf a mas no poder y el error seguìa, yo con mi sueño y desvelo y el pinche apache de indio y necio. Comence a recorrer los foros y note que muchos usuarios tenìan el mismo problema, especìficamente con la versiòn 10.1 de Suse, hasta que ya en un confìn lejano cerca del fin de los foros, hallè en una letra chiquitita la soluciòn...<br><br>REINSTALAR LOS PAQUETES DE APACHE!!!!<br><br>Puts... de haber sabido, pero bueno, soy informàtico no adivino. Asì que entro al Yast, busco todo lo que diga apache y le doy borrar, y de nuevo un espantoso TOING!!!!! Por las dependencias, me marco muchos errores, bueno, mas bien advertencias, asì que con la cabeza sintiendose magneticamente atraida hacia mi almohada pense un poco mejor las cosas, decidì quitar y reinstalar sòlo el Apache y no todas sus dependencias (que dependian y eran necesarias para muchas otras cosas), los elegidos por mi dedo flamìgero y adormilado fueron los paquetes... <br><br>apache2 (un sospechoso comùn)<br>apache2-doc (no era necesario, pero por si las fly's)<br>apache2-example-pages<br>apache2-mod-php5<br>apache2-prefork (este cabron se me hace que era el rebelde)<br><br>Asì que los borramos, reiniciamos, reinstalamos, reiniciamos de nuevo, echamos a andar el Apache y .... <br><br>It works!!!!!<br><br>Bueno, eso era lo que decìa la pàgina (muy descriptiva segùn mi forma de verlo), una vez logrado eso, parece ser que ya puedo seguir creando experimentos en php.<br><br>Asì que Suse es una buena opciòn para un escritorio Linux en casa. Pruèbenlo. <br><br>Es màs, este post esta hecho en SUSE.<br><br>No se daño ningùn camaleòn o pingûino durante la elaboraciòn de este texto.<br> <div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114873208471650751?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com0tag:blogger.com,1999:blog-24864984.post-1147753842914447202006-05-15T23:30:00.000-05:002006-05-15T23:30:42.976-05:00Programar con Linux en la Play Station 3 <DIV><FONT size=2><A href="http://photos1.blogger.com/blogger/4495/2776/1600/foto.0.jpg"><FONT face=Arial><IMG style="FLOAT: left; MARGIN: 0px 10px 10px 0px" alt="" src="http://photos1.blogger.com/blogger/4495/2776/200/foto.jpg" border=0></FONT></A><FONT face=Arial size=2>Los aficionados a la programación con el popular sistema operativo Linux podrán crear contenidos en PlayStation 3, según ha declarado el alto cargo de Sony, Izumi Kawanishi, a la página web japonesa Impress Watch. "Como tenemos planes para Linux en PS3, también reconocemos las actividades de programación de Linux... Además de los estudios con licencia oficial, nos gustaría que individuos independendientes participaran en la creación de contenidos en PS3", afirmó Kawanishi, abriendo así la puerta a la posibilidad de que aplicaciones y juegos "caseros" puedan distribuirse entre los usuarios de la consola.<BR><BR>Los usuarios de PS2 tienen a su disposición un kit de Linux para la consola, pero lo que no ha confirmado la compañía japonesa es si los contenidos creados con Linux en PlayStation 3 podrán ser distribuidos libremente por los usuarios, tanto a través del servicio online de PS3 como descargables de Internet en tarjetas de memoria o el disco duro de la consola. A este respecto, hay que mencionar las restricciones que ha impuesto Sony a los programadores independientes de PSP, bloqueando la ejecución de aplicaciones "caseras" en la portátil con nuevos actualizaciones de firmware.</FONT></FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>Tomado de <A href="http://movitec.blogspot.com/2006/05/programar-con-linux-en-la-play-station.html">este sitio</A>.</FONT></DIV><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114775384291444720?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com1tag:blogger.com,1999:blog-24864984.post-1146477246974116982006-05-01T04:54:00.000-05:002006-05-01T04:54:07.066-05:00PROYECTO=$NewMirror_DellServer_[1];<DIV><FONT size=2><FONT face=Arial>Recién nos llegó un nuevo servidor Dell modelo PowerEdge 1800 que en resumen cuenta con dos procesadores Xeon de 3.0GHz, 800MHz front side bus, 2MB L2 cache, 2 GB de memoria ECC DDR-2 SDRAM, 2 discos duros Seagate Cheetah 10,000RPM Ultra320 SCSI: 146GB; Controlador RAID de tarjeta adicional PowerEdge RAID controller, Version 4, Dual-Channel (PERC 4/DC) con 128MB de memoria cache y tarjeta de red Intel PRO/1000 MT uni-puerto Gigabit NIC.</FONT></FONT></DIV> <DIV><FONT face=Arial size=2>Este servidor esta destinado a sustituir nuestro actual servidor de respaldo (mirror) del servidor principal, ya que el mirror es más pequeño y puede no darse a basto con todo el trabajo.</FONT></DIV> <DIV><FONT face=Arial size=2>Así que comence a leer la documentación adjunta, muchas cosas básicas que ya sabía pero que tal si había algo nuevo o algún detalle especial. Pues bien, al leer los papeles encontre con que el sistema de instalación de Dell, soportaba instalar de manera semiautomática el sistema operativo Red Hat Linux V4, y como tengo el Red Hat Linux Enterprise AS V4, pues me dije, debe de agarrarlo (realemente fue mas por curiosidad que por necesidad, actualmente todos los servidores que tenemos usan Mandrake, ahora Mandriva Linux).</FONT></DIV> <DIV><FONT face=Arial size=2>Prendo el server, meto el CD y antes de que inicie me meto a la configuracion del BIOS, nada del otro mundo, corregir fecha y hora y reiniciar.</FONT></DIV> <DIV><FONT face=Arial size=2>Ahora sí dejo iniciar desde el disco de Dell, Hola como estas, gracias por la compra , etc. Entra el asistente para configuración del server, me pide ciertos datos de configuración que no vienen al caso, me pregunta si RAID-0 o RAID-1 (RAID-0 me deja un disco virtual con el espacio total de la suma de los dos discos duros, de esta forma tengo altas velocidades de lectura y escritura, mientras que en el RAID-1 tengo un disco virtual del tamaño de un solo disco duro, pero es un disco redundante, es decir, los datos existen en los dos discos duros, si un falla, tengo el otro, buena velocidad de lectura, pero más lento en la escritura), selecciono el RAID-0, por que la velocidad de escritura es la mayor y el espacio que me deja es mayor, además al ser el servidor de respaldo, pues sería una desgracia que ambos fallaran exactamente en el mismo lugar (maldito Murphy y tus leyes).</FONT></DIV> <DIV><FONT face=Arial size=2>Pues ya para finalizar con el Dell OpenManage Server Asistan me crea las particiones, y las formatea y me dice que ponga el primer CD del Red Hat, lo pongo y .... Disco no valido, de nuevo, con el 1 y con el 2 y me retacha todos. Ya convencido que mis discos no sirven (para este programa de instalación de Dell, porque con esos discos he instalado Red Hat muy bien en otros sistemas), lo dejo por la paz y como no habia botoncito de "Regresar" pues tuve que utilizar el "Magic Finger", o sea darle un reset duro.</FONT></DIV> <DIV><FONT face=Arial size=2>A sabiendas que con sl Server Asistan de Dell no iba a jalar (horas despues encontre que Dell puede traer instalado Red Hat Enterprise Linux v3 (AS y ES) pero que hay validados, pero no instalables de fabrica a los Red Hat Enterprise Linux v2.1 (AS y ES), o seá que no contempla el Red Hat Enterprise Linux AS V4, a menos que sean proporcionados por el mismo Dell), decidi instalar mi conocidisimo Mandriva Linux 2006.</FONT></DIV> <DIV><FONT face=Arial size=2>La instalación no me dió mayor problema, sólo tuve que definir de nuevo las particiones en el RAID de acuerdo a las necesidades de este servidor, en mi caso particular, el mayor espacio en<FONT face="Courier New"> /home</FONT> y un poco menos en <FONT face="Courier New">/var</FONT>, terminamos de instalar, configuramos y reiniciamos.</FONT></DIV> <DIV><FONT face=Arial size=2>Entra LILO, entra la primera pantalla de Mandriva, pasan los mensajes del booting y ..... se queda en negro la pantalla, después de reiniciar tres veces hace lo mismo, pero sin embargo como prueba rapida pruebo si funciona como servidor web y si, como dice la misma página de prueba "it works". O sea que el problema es con el Servidor X de Mandriva.</FONT></DIV> <DIV><FONT face=Arial size=2>Después de varios minutos de meditación, me doy cuenta de que al instalar opté por el driver de video dado por default (el chip de video del server es un ATI Radeon con 16 MB SDRAM) y me activó la aceleración de 3D, cosa que no necesito , y debido a la poca memoria eso debia de congelar al X.</FONT></DIV> <DIV><FONT face=Arial size=2>La solución fue cambiar la configuración del servidor X, en este caso editando el archivo /etc/X11/XF86Config y deshabilitando las opciones de aceleración de 3D, dejando el mismo driver.</FONT></DIV> <DIV><FONT face=Arial size=2>Reiniciamos una vez más y listo, entra el servidor X y recibo la imagen de un hermoso pinguino preguntando por un usuario y una contraseña. Entro al sistema, funciona perfectamente, me conecto a internet, las demas máquinas ven al servidor (despues de configurar el smb.config), todo bien.</FONT></DIV> <DIV><FONT face=Arial size=2>Del servidor original copio mis generadores de estructuras (scripts de shell para generar todos los directorios necesarios para funcionar como mirror), lo ejecuto y tengo la estructura.</FONT></DIV> <DIV><FONT face=Arial size=2>Ahora solo falta dar de alta a los usuarios para el sistema, tanto en el sistema como en samba, asignarles los derechos de usuario y grupo a las carpetas de la estructura, montar el volumen a respaldar y poner el cron con los scripts de sincronización (que ya estan hechos y probados en el server que se va a remplazar), pero eso será para otro post, además de que ando atrasado con el proyecto InCopy Parser. </FONT></DIV> <DIV><FONT face="Courier New" size=2><STRONG>[owar@owarux ~]#Tengo sueño...</STRONG></FONT></DIV><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114647724697411698?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com2tag:blogger.com,1999:blog-24864984.post-1146026669948375602006-04-25T23:44:00.000-05:002006-04-25T23:44:30.003-05:00Nueva distro de Linspire: freespire<DIV><FONT face=Arial size=2> <DIV class=subtitulo> <CENTER><IMG class=derecha id=image191 style="WIDTH: 185px; HEIGHT: 95px" alt=freespire hspace=0 src="http://bitelia.com/wp-content/uploads/2006/04/freespirelogo.gif" border=0></CENTER></DIV> <DIV class=subtitulo>Escrito por <STRONG>Salva de Castro</STRONG></DIV> <DIV class=subtitulo> </DIV> <DIV class=subtitulo><A href="http://www.linspire.com/">Linspire</A> es una compañía que distribuye una <STRONG>distro Linux con licencia comercial</STRONG> al igual que tienen otros sistemas operativos como Windows y Mac OS X. Sus clientes confían en tener un sistema estable, seguro y con soporte por parte de <STRONG>Linspire</STRONG>. Una de las principales ventajas es que integra una tecnología llamada <A href="http://www.linspire.com/products_cnr_whatis.php">CNR</A> (<STRONG>ClickN'Run</STRONG>) que hace tremendamente más fácil la instalación de aplicaciones en Linux<EM> </EM>y que se va actualizando constantemente<EM>.</EM></DIV> <P>Pues la gente de <STRONG>Linspire </STRONG>está en vías de sacar una nueva distribución Linux basada en <STRONG>Debian </STRONG>con fines no comerciales, o más bien maticemos: con fines no comerciales <EM>a priori</EM> llamada <A href="http://www.freespire.org/">freespire</A>. Decía lo de a priori porque ofrecen la libertad de escoger a los usuarios de su distro: pueden escoger tener una distro 100% open source o bien incluir paquetes comerciales como la laureada <STRONG>CNR</STRONG>.</P> <P>Podéis conocer más de este proyecto consultando la extensa <A href="http://www.freespire.org/support/faqs">FAQ</A> de que disponen o bien podéis suscribiros a <A href="http://www.freespire.org/my/email_subscriptions">la lista de correo</A> o <A href="http://www.freespire.org/community/forum">los foros de la comunidad</A> ya que de momento no hay ninguna beta pública para descargar :(</P> <P><STRONG>Update</STRONG>: podéis ver un fantástico <EM>tour</EM> de capturas de <STRONG>freespire</STRONG> en <A href="http://shots.osdir.com/slideshows/slideshow.php?release=417&slide=3">esta galería</A>.</P> <HR> <P><FONT color=#800000 size=1>Copiado total e impúdicamente de </FONT><A href="http://bitelia.com/2006/04/25/nueva-distro-de-linspire-freespire/"><FONT color=#800000 size=1>bitelia.com</FONT></A></P></FONT></DIV><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114602666994837560?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com1tag:blogger.com,1999:blog-24864984.post-1145953264410083962006-04-25T03:21:00.000-05:002006-04-25T03:21:04.473-05:00Cerebro de cucaracha<DIV><FONT face=Arial size=2>"Robot Móvil Controlado por Cucaracha" es un mecanismo experimental que usa una cucaracha de Madagascar viva sobre un trackball modificado para controlar un robot de tres ruedas. Si la cucaracha se mueve a la izquierda, el robot se mueve a la izquierda. Unos sensores infra-rojos proveen una retroalimentación para la navegación a la cucaracha. De tal manera que crean un sistema seudo-inteligente con la cucaracha como CPU.Por Garnet Hertz (2005)</FONT></DIV> <DIV> </DIV> <DIV><FONT face=Arial size=2>Si esto sigue así, espero que no pongan una cucaracha dentro de un exterminador, las desgraciadas tomarian venganza contra la inocente raza humana.<BR> <OBJECT height=350 width=425><PARAM NAME="movie" VALUE="http://www.youtube.com/v/gwZD59Ic9T8"> <embed src="http://www.youtube.com/v/gwZD59Ic9T8" type="application/x-shockwave-flash" width="425" height="350"></embed></OBJECT><BR><FONT face="Courier New" color=#ff0000 size=1><EM>La cucaracha ya no puede caminar....</EM></FONT></FONT></DIV><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114595326441008396?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com2tag:blogger.com,1999:blog-24864984.post-1145659247264590142006-04-21T17:40:00.000-05:002006-04-21T17:40:47.310-05:00Eso de ser geek...<DIV><FONT face=Arial size=2><FONT face="Times New Roman" size=3><FONT face="Courier New">Para aquellas que dudan de que un geek sea la mejor opción aquí están las 10 razones del por que tener un novio geek es lo mejor que les puede pasar.</FONT><BR></FONT><BR><BR> <OL> <LI><FONT size=3>Los geeks son útiles: <STRONG>pueden arreglar tu computadora</STRONG>, tu laptop, etc. Esas habilidades son muy útiles y pueden hacer que tu vida vaya sobre ruedas.</FONT></LI> <LI><FONT size=3>Son más <STRONG>románticos</STRONG> de lo que la gente se piensa. Su idea del romanticismo puede consistir en hacer una página web sobre ti. Pero vamos, las webs duran más que las flores y se las puedes enseñar a tus amigas.</FONT></LI> <LI><FONT size=3>Tienen <STRONG>cerebro</STRONG> y suelen ser muy cultos.</FONT></LI> <LI><FONT size=3>Requieren poco mantimiento, así que no habrá necesidad de cenas muy elaboradas. Y si no eres la mejor cocinera, siempre puedes pedir una <STRONG>pizza</STRONG>.</FONT></LI> <LI><FONT size=3><STRONG>No tienes que preocuparte</STRONG> de qué estará haciendo. Lo más normal es que lo encuentres delante de la computadora.</FONT></LI> <LI><FONT size=3>Él confía en ti, así que <STRONG>puedes ser tú misma</STRONG> cuando estés a su lado. ¿Quieres andar por casa con una camiseta vieja para estar más cómoda? A él no le importará. No le molestará que no te maquilles o que pases de arreglarte el pelo.</FONT></LI> <LI><FONT size=3>Te hará estar radiante allá donde vayas. No importa lo cutre que sea tu forma de vestir, no importa que no tengas don de gentes: parecerás una modelo sofisticada y una elegante diplomática al lado de tu geek. Hará que estés tan bien, que <STRONG>te enamorarás de ti misma</STRONG>.</FONT></LI> <LI><FONT size=3>OK: no entiendes de computadoras, televisión ni DVDs; tampoco te importa ser popular o elegante. ¿Qué me dices de los últimos <STRONG>gadgets tecnológicos</STRONG>? Serás la orgullosa poseedora de los aparatitos más modernos si te decides por salir con un geek.</FONT></LI> <LI><FONT size=3><STRONG>No te va a poner los cuernos</STRONG>. Toma a la mujer más sexy del mundo (Angelina Jolie, por ejemplo) y ponla en la misma habitación que un geek. En un rincón, pon un una computadora último modelo. Apuesto a que a tu geek le apetece más jugar con la computadora que empezar a conocer a Angelina Jolie. De hecho, puede que ni siquiera la vea si la computadora dispone de conexión a Internet. ¡Venga, vamos! Tiene que descargar su e-mail, navegar por la web y escribir un post en su blog contando que está en la misma habitación que Angelina Jolie
</FONT></LI> <LI><FONT size=3>Y esta es la razón definitiva: realmente le importas. No tu apariencia (aunque eso es un plus), ni lo delgada que estés, ni todo el maquillaje que te pongas encima. <STRONG>Le gustas porque eres tú</STRONG>.</FONT></LI></OL></FONT></DIV><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114565924726459014?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com1tag:blogger.com,1999:blog-24864984.post-1144967674402522862006-04-13T17:34:00.000-05:002006-04-13T17:34:34.406-05:00I Hate SPAM<DIV><FONT face=Arial size=2><FONT face="Times New Roman" size=3>Hoy tuvimos unos problemillas con nuestras cuentas de correo, primero no salían y después dejó de recibir, al hablar con nuestro proveedor, el checo y dijo que aparentemente funcionaban, pero de todas formas iba a darles un chequeo general, después de un rato, seguía haciendo lo mismo, y en el mensaje de error al rebotar el correo mostraba el siguiente texto:<BR><BR><FONT face="Courier New" size=2>This is an automatically generated Delivery Status Notification</FONT></FONT></FONT></DIV> <DIV><FONT face="Courier New"></FONT> </DIV> <DIV><FONT size=2><FONT size=3><FONT face="Courier New" size=2>Delivery to the following recipient failed permanently:</FONT></FONT></FONT></DIV> <DIV><FONT face="Courier New"></FONT> </DIV> <DIV><FONT size=2><FONT size=3><FONT size=2><FONT face="Courier New"> </FONT><A href="mailto:policia@miservidor.com"><FONT face="Courier New">policia@miservidor.com</FONT></A></FONT></FONT></FONT></DIV> <DIV><FONT face="Courier New"></FONT> </DIV> <DIV><FONT size=2><FONT size=3><FONT face="Courier New" size=2>Technical details of permanent failure: <BR><STRONG><FONT color=#ff0000>PERM_FAILURE: SMTP Error (state 9): 553 Relaying is not supported</FONT></STRONG></FONT></FONT></FONT></DIV> <DIV><FONT face="Courier New"></FONT> </DIV> <DIV><FONT size=2><FONT size=3><FONT face="Courier New" size=2> ----- Original message -----</FONT></FONT></FONT></DIV> <DIV><FONT face="Courier New"></FONT> </DIV> <DIV><FONT size=2><FONT size=3><FONT size=2><FONT face="Courier New">Received: by 10.xx.xx.x with SMTP id l7mrxxxx76wxl;<BR> Thu, 13 Apr 2006 11:22:29 -0700 (PDT)<BR>Return-Path: <</FONT><A href="mailto:mimailpersonal@gmail.com"><FONT face="Courier New">mimailpersonal@gmail.com</FONT></A><FONT face="Courier New">><BR>Received: from ?10.xxx.xx.xx? ( [200.xx.xxx.x])<BR> by mx.gmail.com with ESMTP id h8smxxxx85wxd.2006.04.13.11.22.28;<BR> Thu, 13 Apr 2006 11:22:28 -0700 (PDT)<BR>Message-ID: <</FONT><A href="mailto:443Exxx3.3060700@gmail.com"><FONT face="Courier New">443Exxx3.3060700@gmail.com</FONT></A><FONT face="Courier New">><BR>Date: Thu, 13 Apr 2006 13:22:11 -0600<BR>From: =?ISO-8859-1?Q?Omar_Mir=F3n?= <</FONT><A href="mailto:mimailpersonal@gmail.com"><FONT face="Courier New">mimailpersonal@gmail.com</FONT></A><FONT face="Courier New">><BR>User-Agent: Thunderbird 1.5 (Windows/20051201)<BR>MIME-Version: 1.0<BR>To: </FONT><A href="mailto:dictamen@miservidor.com"><FONT face="Courier New">dictamen@miservidor.com</FONT></A><FONT face="Courier New">, </FONT><A href="mailto:estado@miservidor.com"><FONT face="Courier New">estado@miservidor.com</FONT></A><FONT face="Courier New">, <BR> </FONT><A href="mailto:policia@miservidor.com"><FONT face="Courier New">policia@miservidor.com</FONT></A><FONT face="Courier New">, </FONT><A href="mailto:deportes@miservidor.com"><FONT face="Courier New">deportes@miservidor.com</FONT></A><FONT face="Courier New">, <BR> </FONT><A href="mailto:sociales@miservidor.com"><FONT face="Courier New">sociales@miservidor.com</FONT></A><BR><FONT face="Courier New">Subject: Probando correos<BR>Content-Type: text/plain; charset=ISO-8859-1; format=flowed<BR>Content-Transfer-Encoding: 7bit</FONT></FONT></FONT></FONT></DIV> <DIV><FONT face="Courier New"></FONT> </DIV> <DIV><FONT size=2><FONT size=3><FONT face="Courier New" size=2>Probando correos</FONT></FONT></FONT></DIV> <DIV><FONT face="Courier New"></FONT> </DIV> <DIV><FONT size=2><FONT size=3><FONT size=2><BR><FONT face="Courier New"> ----- End of message -----</FONT></FONT></FONT></FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>Como la persona encargada de las cuentas decía que a él no le marcaba error y que según él ya habia sido solucionado el problema, decidí investigar por mi cuenta el mentado <B>error SMTP 553</B>.<BR>Encontre en un foro (benditos foros) lo siguiente respecto al puto error ese...<BR><BR><FONT size=3><TT>7. I'm getting error 553: "To send mail, first check your mail with a valid POP3 account".<BR><BR>Error 553 is a "feature" of your SMTP server. It will not let you send mail unless you check for mail first. <B><FONT style="COLOR: rgb(204,0,0)">This is designed to prevent others from sending spam through your account</FONT></B>. In Gammadyne Mailer, check the "Login to POP3 server" box on the "SMTP" branch, and fill in the name, user, and password for the POP3 server.</TT><BR></FONT><BR>AJA!!!!!<BR>Conque eso es... bueno, esa era una razón para sospechar, lo notan?, ¿No?, bueno, les digo entonces mis sospechas.... Si revisan el texto de error al rebotar el mensaje, notaran que en un solo mensaje inclui varias direcciones al mismo servidor para probarlo, lo que el sistema supondria que es SPAM!!!!<BR>Así que como buen programador decidí hacer una variante en el algoritmo, o sea cambiar la forma de enviar el mensaje, de tal forma que mande el mismo mensaje uno por uno a cada direccion y listo, ya no me rebotó ninguno, fueron recibidos e incluso dos me los contestaron.<BR>OJO: Esto no fue lo que soluciono el problema de las cuentas del correo, les hacia falta una revision y mantenimiento, pero de todas formas es uno de esos tips que se aprenden sobre la marcha, no hay que enviar un mensaje a varias cuentas en el mismo servidor, puede provocar el pinche error SMTP 553 (donde SMTP puede ser Su Mail Ta Pinche, pero no me hagan caso)<BR></DIV></FONT><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114496767440252286?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com2tag:blogger.com,1999:blog-24864984.post-1144906203397423382006-04-13T00:30:00.000-05:002006-04-13T00:30:03.493-05:00Hay que entender a los Ingenieros<DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">Un Ingeniero no es que sea prepotente... ¡Es que está rodeado de inútiles! <BR>Un Ingeniero no tiene el ego muy grande...¡Es que el cuarto es muy chiquito!</SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA"> <BR></SPAN><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">No es que quieran tener la razón siempre... ¡Es que los otros siempre se equivocan!</SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA"> </SPAN><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">Un Ingeniero no es que carezca de sentimientos... ¡Es que los otros <BR>son unas nenas lloronas!</SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA"> <BR></SPAN><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">Un Ingeniero no tiene vida desorganizada... ¡Es sólo que tiene un ritmo de vida particular!</SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA"> <BR></SPAN><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">Un Ingeniero no ve el mundo... ¡Lo cambia!</SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA"> <BR></SPAN><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">Un Ingeniero no es que sea un crecido... ¡Es que los simples mortales no lo comprenden!</SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA"> <BR></SPAN><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">Un Ingeniero no es un ser calculador y frío... Simplemente, le parece divertido pasar por encima de la gente común.</SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA"> <BR></SPAN><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">Un Ingeniero no es un enredador...¡Es que los usuarios no entienden nada!</SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA"> <BR></SPAN><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">Un Ingeniero no es un crítico... ¡Es que los errores de la gente son muy evidentes!</SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA"> <BR></SPAN><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">No es que el trabajo los absorba es que... ¿De qué carajos estaba hablando?</SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA"> <BR></SPAN><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">Un Ingeniero no comete errores... ¡Sólo prueba si los demás estaban prestando atención!</SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA"> <BR></SPAN><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">No es que se crean la gran cosa... ¡¡¡ ES QUE LO SON !!!</SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA"> <BR></SPAN><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">Pero recuerden: ser tan cercano a la perfección tiene sus problemas, así que los que no son ingenieros entiendan a estas tristes almas torturadas entre la genialidad y la incomprensión.</SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: Tahoma; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA"> </SPAN></FONT></DIV><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114490620339742338?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com2tag:blogger.com,1999:blog-24864984.post-1144565771982800802006-04-09T01:56:00.000-05:002006-04-09T01:56:12.043-05:00Intel en Mac<DIV><FONT face=Arial size=2>¿Que pasa cuando metes un chip Intel dentro de un Mac?, pues según que es más poderosa y compatible, mmmm ¿Compatible? Entonces si tiene Intel puedo tener Windows XP con la tecnologia de Mac (que viene siendo lo mismo, porque ahora la tecnologia de Mac se basa en Intel, o sea para que tanto pedo). Ya se, lo instalo el XP en Mac y correra como el demonio, si ya lo veo...</FONT></DIV><BR> <OBJECT height=350 width=425><PARAM NAME="movie" VALUE="http://www.youtube.com/v/RwHMIxdDdu8"> <embed src="http://www.youtube.com/v/RwHMIxdDdu8" type="application/x-shockwave-flash" width="425" height="350"></embed></OBJECT><BR><FONT face="Courier New" color=#0000ff size=2>Maldito windows!!!</FONT><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114456577198280080?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com2tag:blogger.com,1999:blog-24864984.post-1144491878373210542006-04-08T05:24:00.000-05:002006-04-08T05:24:39.580-05:00PROYECTO=$InCopy_Parser_[4];<DIV><FONT face=Arial size=2>Continuando con este proyecto, una vez hecho el código para poder entrar al archivo INCD y extraer el texto, hemos de diseñar un programa en PHP que recorra un directorio donde se almacenan los documentos INCD y extraiga de cada uno el texto correspondiente, es decir, que lo "parsee".</FONT></DIV> <DIV><FONT face=Arial size=2>En este capitulo del proyecto, haremos la programación para recorrer el directorio donde se encuentra el mismo script, en futuros capitulos haremos que lo haga para diversos directorios, sin necesidad de que el archivo php se encuentre dentro, entonces la finalidad de este programa, por lo pronto, es que lea todos los archivos del directorio y extraiga el texto de cada uno, lo guarde en dos variables (como vimos en el capitulo anterior) que son $text y $screen, y que nos muestre en pantalla el contenido de $screen, la variable $text será la que se guarda en la base de datos MySQL, pero sera en otro capitulo, por lo pronto sólo usaremos $screen.</FONT></DIV> <DIV><FONT face=Arial size=2>Bien, antes que nada necesitamos que nuestro archivo PHP comienze con una definición de documento HTML, que será la siguiente:</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT color=#000080><FONT size=2><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "</FONT><FONT size=2>http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd</FONT></FONT><FONT color=#000080><FONT size=2>"><BR><html xmlns="</FONT><FONT size=2>http://www.w3.org/1999/xhtml</FONT></FONT><FONT color=#000080 size=2>"><BR><head><BR><meta http-equiv="Content-Type" content="text/html; charset=<STRONG><FONT color=#ff0000>iso-8859-1</FONT></STRONG>" /><BR><title>Parseando Documentos de Incopy</title><BR></head></FONT></DIV> <DIV><FONT color=#0000ff size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>Esto se hace para definir que usaremos como base la codificación <FONT color=#0000ff>iso-8859-1</FONT><FONT color=#000000>, de lo contrario podemos tener problemas con los resultados de nuestro texto extraido.</FONT></FONT></DIV> <DIV><FONT face=Arial size=2>Ya dentro de los tags <FONT face="Courier New" color=#0000ff><body> </FONT>y <FONT face="Courier New" color=#0000ff></body></FONT> de nuestro archivo, es donde pondremos nuestra codificacion PHP, dentro de sus respectivos tags <FONT face="Courier New" color=#0000ff><php? ?></FONT> por supuesto.</FONT></DIV> <DIV><FONT face=Arial size=2>Entrando de lleno al código, primero utilizamos el código del capitulo anterior, pero esta vez lo definiremos como una función, para poder utilizarlo mejor, la codificación será la siguiente:</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT color=#000080 size=2>function parseame($el_file) {<BR> $text=$screen="";<BR> $XMLDoc = DOMDocument::load($el_file);<BR> $root = $XMLDoc->documentElement;<BR> $children = $root->childNodes;<BR> for ($child = $root->firstChild;<BR> $child;<BR> $child = $child->nextSibling){<BR> if ($child->nodeName=="aic:story") {<BR> $text=str_replace("â©","\n\r",$child->nodeValue);<BR> $screen=str_replace("â©","<br>",$child->nodeValue);<BR> $text=utf8_decode($text);<BR> $screen=utf8_decode($screen);<BR> }<BR> }<BR> echo $screen;<BR>}</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>Pro si no lo notan, le he agragado la inicialización de las variables $text y $screen, de lo contrario, PHP puede mostrarles un error y no darles ninguna salida. Nuestra función de llama parseame, y tiene como argumento la variable $el_file. Los resultados de esto estan en el capitulo anterior de la serie.</FONT></DIV> <DIV><FONT face=Arial size=2>Ahora vamos a lo nuevo, como exploramos nuestro directorio. para esto primero debemos saber que en cada directorio puede haber subdirectorios y que dicho directorio puede tener un directorio padre (el cual en consola puede verse como <FONT face="Courier New" color=#ff0000><STRONG>.. </STRONG><FONT face=Arial color=#000000>dos puntos</FONT></FONT>). Por esto creamos una funcion que determine si un item en el directorio es o no un directorio (ya sea subdirectorio o directorio padre), dicha función es la siguiente:</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT color=#000080 size=2>function es_directorio($un_dir,$un_item) {<BR> if ($un_dir=='/') {<BR> $fich_a_preguntar="/$un_item";<BR> }<BR> else {<BR> $fich_a_preguntar="$un_dir/$un_item";<BR> }<BR> return (is_dir("$fich_a_preguntar"));<BR> }</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>En esta función pasamos como argumentos las variables $un_dir y $un_item, que son el directorio actual donde nos encontramos y el item es un elemento de dicho directorio. Primero checamos si estamos en la raiz del arbol de directorios, si es asi, $fich_a_preguntar esta en la raiz, si no, el $item se encuentra en un directorio que no es el raiz, una vez establecido donde esta el $item, preguntamos si es un directorio y regresamos el resultado.</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>Ahora el código que utiliza las dos funciones anteriores es el siguiente:</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT color=#000080 size=2>$nuevo_dir=getcwd();<BR>echo "<h2>Carpeta: <i>$nuevo_dir</i></h2>";</FONT></DIV> <DIV><FONT color=#000080></FONT> </DIV> <DIV><FONT color=#000080 size=2>if (!$df_dir=opendir($nuevo_dir)) <BR> die("<h3>*** ERROR: No se ha podido entrar en ($nuevo_dir)</h3>");<BR> <BR>while (($item=readdir($df_dir)) !== false) {<BR> if ($item==".") continue;<BR> if (!es_directorio($nuevo_dir, $item)) {<BR> echo "$item<br>";<BR> parseame($item);<BR> echo "<hr>";<BR> }<BR> }<BR>closedir($df_dir);</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>Con este código lo que hacemos es lo siguiente, en $nuevo_dir guardamos la ruta de nuestro actual directorio (cwd - current working directory), en este ejemplo, a manera informativa en pantalla mostramos la ruta actual de trabajo, esta línea se debe omitir cuando el sistema ya este en producción.</FONT></DIV> <DIV><FONT face=Arial size=2>Despues probamos que el directorio donde estamos trabajando pueda ser evaluado por nuestro script (lógicamente en este ejemplo no habrá problema, pero se debe dejar la validación para cuando específiquemos una ruta de trabajo diferente a donde se encuentra el archivo PHP), ejecutamos la función <FONT face="Courier New">opendir()</FONT> y el resultado, que es un descriptor del directorio, lo guardamos en $df_dir, si no se puede nos marcará error.</FONT></DIV> <DIV><FONT face=Arial size=2>Después con un bucle <FONT face="Courier New">while</FONT> recorremos todo el directorio, en cada ciclo leemos un objeto del descriptor y lo guardamos en $item, si el valor del $item es "<FONT face="Courier New" color=#ff0000 size=3>.</FONT>", continuamos, este punto es el directorio mismo, por eso no lo evaluamos; si $item tiene otro valor, determinamos si es un directorio o un archivo, con la función <FONT face="Courier New">es_directorio()</FONT>, si el $item es un archivo, mandamos a pantalla su nombre y ejecutamos la funcion <FONT face="Courier New">parseame()</FONT> y obtenemos el texto del archivo INCD y despues ponemos una linea para diferenciar del siguiente archivo si es que lo hay (nótese que este script evaluará TODOS los archivos, no importa si son INCD o no).</FONT></DIV> <DIV><FONT face=Arial size=2>Después de leer todo el directorio, cerramos el descriptor con la función <FONT face="Courier New">closerdir()</FONT>.</FONT></DIV> <DIV><FONT face=Arial size=2>Bueno, eso es todo por este capítulo, en el próximo veremos la creacion de nuestra tabla en MySQL y la(s) tabla(s) que manejaremos con sus respectivos campos, además de ver como guardariamos nuestro texto generado en dicha base de datos.</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT size=2><STRONG>[owar@owarux ~]$echo "Goodnight!!!"</STRONG></FONT></DIV><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114449187837321054?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com0tag:blogger.com,1999:blog-24864984.post-1144223039357860692006-04-05T02:43:00.000-05:002006-04-05T02:43:59.356-05:00Microsoft soportará GNU+Linux en su "Virtual Server 2005 R2"<DIV><FONT face=Arial size=2><BR><STRONG><EM>Autor: Germán Isaac</EM></STRONG></FONT></DIV> <DIV> </DIV> <DIV><FONT face=Arial size=2>Microsoft no quiere quedarse fuera de ningún mercado, es así que, aunque suene disparatado, la empresa del hombre más rico del mundo dará soporte a su rival en el mundo de los sistemas operativos: GNU+Linux.</FONT></DIV> <DIV> </DIV> <DIV><FONT face=Arial size=2>Esto fue informado recientemente en News.com. Virtual Server 2005 R2 es un software que sirve para correr muchos sistemas operativos dentro de una sólo máquina.</FONT></DIV> <DIV> </DIV> <DIV><FONT face=Arial size=2>Otro dato "increíble": luego de cobrar en el pasado $99 por cada licencia de Virtual Server para máquinas con hasta cuatro CPU y $199 para máquinas con ilimitado número de CPUs, ahora Microsoft informó el pasado lunes que el programa estará disponible para la descarga de modo gratuito.</FONT></DIV> <DIV> </DIV> <DIV><FONT face=Arial size=2>Por ahora, se sabe que soportará versiones de Red Hat GNU+Linux server y Suse GNU+Linux de Novell. Los anuncios se hicieron en conjunción con la conferencia LinuxWorld en Boston en esta semana, los mantendremos informados.</FONT></DIV> <DIV> </DIV> <DIV><FONT face=Arial size=2>Más información en:<BR><A href="http://news.com.com/Microsoft+to+host+Linux+virtually/2100-7346_3-6056683.html?tag=nl">http://news.com.com/Microsoft+to+host+Linux+virtually/2100-7346_3-6056683.html?tag=nl</A></FONT></DIV><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114422303935786069?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com1tag:blogger.com,1999:blog-24864984.post-1144222815160619512006-04-05T02:40:00.000-05:002006-04-05T02:40:15.186-05:00Nueva versión Mandriva Live<DIV><FONT face=Arial size=2>Mandriva lanza distribución Live instalable desde el mismo CD. </FONT><FONT face=Arial size=2>Una <STRONG>distribución Live</STRONG> permite probar Linux sin tener que instalar en disco duro, y con esta versión de Mandriva permite instalarlo directamente y desde el mismo CD si nos gusta.</FONT></DIV> <DIV> </DIV> <DIV><FONT face=Arial size=2>Lo habitual hasta ahora en las grandes distribuciones como Ubuntu o SuSE es diferenciar por un lado el o los CDs de instalación de la distro, y por otro un Live CD demostrativo de sus capacidades. A diferencia de estas, existen algunas pocas distribuciones que aúnan en el mismo CD las funcionalidades de la versión Live y la de instalación.</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>Una de las últimas a apuntarse a este carro ha sido Mandriva, que con su nueva <STRONG>Mandriva One 2006.0</STRONG> lanzada recientemente permite probar primero y, si interesa, instalar después desde el mismo CD. La instalación se realiza de una forma muy simple desde el asistente incluido al cual se accede desde un icono situado en el escritorio.</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>Una funcionalidad que puede ser ciertamente apreciada es que los archivos creados durante la ejecución live de la distro son copiados a disco duro si el usuario decide instalar. De esta forma, por ejemplo, un documento creado con <STRONG>OpenOffice</STRONG> será transferido al disco duro y guardado debidamente en nuestra cuenta de usuario.</FONT></DIV> <DIV> </DIV> <DIV><FONT face=Arial size=2>Junto a esta nueva versión, la compañía fabricante ha anunciado la próxima disponibilidad de un repositorio de aplicaciones para sus usuarios similar al CNR de <STRONG>Linspire</STRONG> y que permitirá la instalación de software mediante un sólo click de ratón, algo que se está poniendo muy de moda últimamente entre las distribuciones Linux comerciales orientadas al usuario final. Este servicio, basado en la Web, recibirá el nombre de <STRONG>Mandriva Kiosk</STRONG>. Dicho servicio será de pago por suscripción.</FONT></DIV> <DIV> </DIV> <DIV><FONT face=Arial size=2>Mandriva One 2006.0 está solamente disponible por el momento para los miembros del Club Mandriva, pero más adelante será liberada para su descarga y uso gratuitos por parte de cualquier internauta. En total, hay cuatro versiones de esta distro, localizadas en los idiomas de otras tantas regiones: América y Europa Occidental, Europa Central, Europa del Este y Asia/África, cubriendo un total de 70 lenguas.</FONT></DIV><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114422281516061951?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com0tag:blogger.com,1999:blog-24864984.post-1144057666096595532006-04-03T04:47:00.000-05:002006-04-03T04:47:47.483-05:00PROYECTO=$InCopy_Parser_[3];<div><font face="Arial" size="2">Continuando con este proyecto, primero debemos de analizar como esta constituido un documento INCD de InCopy. Abajo se muestra el arbol de documento XML que lo compone:</font></div> <div> </div> <div><font face="Arial" size="2"><strong>Comienza documento INCD</strong></font></div> <div> </div> <code></code> <div> <p><font color="#660000"><big><tt><font size="2"><big><?xml version="1.0" encoding="UTF-8" standalone="yes"?></big></font></tt></big></font></p> </div> <div> <p><big><tt><font size="2"><big><font color="#660000"> <aic:document name="mi_iso" ver="2.0" page="0 0 0 0 40832000 0 4088c000 0"><br> −<br> <aic:swatchlist><br> <aic:color name="C=100 M=0 Y=0 K=0" cspace="cmyk" type="process" vals="3ff00000 0,0 0,0 0,0 0"/><br> <aic:color name="C=0 M=100 Y=0 K=0" cspace="cmyk" type="process" vals="0 0,3ff00000 0,0 0,0 0"/><br> <aic:color name="C=0 M=0 Y=100 K=0" cspace="cmyk" type="process" vals="0 0,0 0,3ff00000 0,0 0"/><br> <aic:color name="C=15 M=100 Y=100 K=0" cspace="cmyk" type="process" vals="3fc33333 33333333,3ff00000 0,3ff00000 0,0 0"/><br> <aic:color name="C=75 M=5 Y=100 K=0" cspace="cmyk" type="process" vals="3fe80000 0,3fa99999 9999999a,3ff00000 0,0 0"/><br> <aic:color name="C=100 M=90 Y=10 K=0" cspace="cmyk" type="process" vals="3ff00000 0,3feccccc cccccccd,3fb99999 9999999a,0 0"/><br> </aic:swatchlist><br> −<br> <aic:taglist><br> <aic:tag name="Root" clr="0"/><br> </aic:taglist></font><br> −<br> <strong><font color="#ff0000"> <aic:story <a class="moz-txt-link-freetext" href="xml:space=">xml:space=</a>"preserve" track="0" dFont="Times New Roman" optalign="0" optsize="40280000 0"><br> <aic:pstyle name="[No paragraph style]"/><br> <aic:cstyle name="[No character style]"/><br> <aic:clang lang="Spanish: Castilian"/><br> Este es contenido de un documento de Incopy en UTF-8</font></strong></big></font></tt></big></p> </div> <div> <p><big><tt><font size="2"><big><strong><font color="#ff0000"></aic:story><br> </font></strong><font color="#660000">−<br> <aic:userlist><br> <aic:user name="Unknown User Name" note="7" tc="2"/><br> </aic:userlist><br> −<br> <br> <?aicxpack<br> <rdf:RDF xmlns:rdf='<a class="moz-txt-link-freetext" href="http://www.w3.org/1999/02/22-rdf-syntax-ns#">http://www.w3.org/1999/02/22-rdf-syntax-ns#</a>'<br> xmlns:iX='<a class="moz-txt-link-freetext" href="http://ns.adobe.com/iX/1.0/">http://ns.adobe.com/iX/1.0/</a>'></font></big></font></tt></big></p> </div> <div> <p><font color="#660000"><big><tt><font size="2"><big> <rdf:Description about=''<br> xmlns:pdf='<a class="moz-txt-link-freetext" href="http://ns.adobe.com/pdf/1.3/">http://ns.adobe.com/pdf/1.3/</a>'><br> <pdf:CreationDate>2006-04-03T03:45:28Z</pdf:CreationDate><br> <pdf:ModDate>2006-04-03T03:47:37Z</pdf:ModDate><br> <pdf:Title>mi_iso</pdf:Title><br> </rdf:Description></big></font></tt></big></font></p> </div> <div> <p><font color="#660000"><big><tt><font size="2"><big> <rdf:Description about=''<br> xmlns:xap='<a class="moz-txt-link-freetext" href="http://ns.adobe.com/xap/1.0/">http://ns.adobe.com/xap/1.0/</a>'><br> <xap:CreateDate>2006-04-03T03:45:28Z</xap:CreateDate><br> <xap:ModifyDate>2006-04-03T03:47:37Z</xap:ModifyDate><br> <xap:Format>application/x-indesign</xap:Format><br> <xap:Title><br> <rdf:Alt><br> <rdf:li <a class="moz-txt-link-freetext" href="xml:lang=">xml:lang=</a>'x-default'>mi_iso</rdf:li><br> </rdf:Alt><br> </xap:Title><br> </rdf:Description></big></font></tt></big></font></p> </div> <div> <p><font color="#660000"><big><tt><font size="2"><big> <rdf:Description about=''<br> xmlns:xapMM='<a class="moz-txt-link-freetext" href="http://ns.adobe.com/xap/1.0/mm/">http://ns.adobe.com/xap/1.0/mm/</a>'><br> <xapMM:DocumentID>adobe:docid:incd:3e38bca5-c2f6-11da-8af1-cb2a45f45358</xapMM:DocumentID><br> <xapMM:VersionID>1</xapMM:VersionID><br> <xapMM:RenditionClass>default</xapMM:RenditionClass><br> </rdf:Description></big></font></tt></big></font></p> </div> <div> <p><font color="#660000"><big><tt><font size="2"><big> <rdf:Description about=''<br> xmlns:dc='<a class="moz-txt-link-freetext" href="http://purl.org/dc/elements/1.1/">http://purl.org/dc/elements/1.1/</a>'><br> <dc:format>application/x-indesign</dc:format><br> <dc:title>mi_iso</dc:title><br> </rdf:Description></big></font></tt></big></font></p> </div> <div> <p><font color="#660000"><big><tt><font size="2"><big></rdf:RDF><br> ?><br> −<br> <aic:prefs><br> <aic:charopts supsize="5.8300000e+001" suppos="3.3300000e+001" subsize="5.8300000e+001" subpos="3.3300000e+001" smcap="7.0000000e+001"/><br> <aic:typeopts optsize="1"/><br> </aic:prefs><br> </aic:document></big></font></tt></big></font></p> </div> <div><font color="#660000"> </font></div> <div><strong><font face="Arial" size="2">Termina documento INCD</font></strong></div> <div> </div> <div>Este es un documento de prueba, ya que solo contiene el texto "<strong><font color="#ff0000" face="Arial" size="2">Este es contenido de un documento de Incopy en UTF-8</font></strong>", y haciendo obvio esto, todo el documento esta codificado en UTF-8. De todo este arbol de documento XML solo nos interesa el bloque en rojo, que contiene el tag <strong><font color="#ff0000" face="Arial" size="2">aic:story </font></strong> .Este tag es el que nos indica en todo el arbol cual es el contenido del documento, aparte de los estilos de formato de texto.</div> <div> </div> <div>En el post anterior de este proyecto vimos la implementación para parsear completamente este tipo de documentos, pero con dicho modelo de programación tenemos un problema, el cual es que tenemos que especificar cuando usar la función <font color="#000080" face="Courier New"><strong>utf8_decode()</strong></font>, que se necesita solamente para los documentos codificados en <font face="Courier New"><strong>iso-8859-1</strong></font> y no es necesaria para los <strong><font face="Courier New">UTF-8</font></strong>. Por lo tanto desarrolle un nuevo codigo de parseo.</div> <div> </div> <div><font color="#000099"><tt>$XMLDoc = DOMDocument::load('mi_nota.incd');<br> $root = $XMLDoc->documentElement;<br> $children = $root->childNodes;<br> for ($child = $root->firstChild;$child;$child = $child->nextSibling){<br> if ($child->nodeName=="aic:story") {<br> $text=str_replace("
","\n\r",$child->nodeValue);<br> $screen=str_replace("
","<br>",$child->nodeValue);<br> $text=utf8_decode($text);<br> $screen=utf8_decode($screen);<br> echo "Variable \$text Contiene ... ".$text."<br><hr>";<br> echo "Variable \$screen Contiene ... ".$screen."<br><hr>";<br> }<br> echo "<br />";</tt></font></div> <div> </div> <div>Lo explicare brevemente. Creo un nuevo objeto DomDocument llamado <font face="Courier New"><strong>$XMLDoc</strong></font> y cargo el contenido del archivo <strong><em>'mi_nota.incd'</em></strong> en él. Después en la variable <font face="Courier New"><strong>$root</strong></font> almaceno el nodo raíz del árbol que representa al documento .</div> <div>En la variable <strong><font face="Courier New">$children</font></strong> guardo la lista de nodos hijos del nodo actual (en este caso root). Para después con un bucle <font face="Courier New"><strong>for</strong></font> recorrer dicha lista iniciando con <font face="Courier New">$child</font> = primer nodo del arbol, ejecutandose mientras exista un nodo, y cambiando al siguiente nodo mientras exista uno.</div> <div>En dicho blucle y para cada nodo evaluaremos su nombre, en este caso buscamos los nodos<em><strong><font color="#ff0000"> aic:story</font></strong></em>, que es donde esta el texto que nos interesa, si encontramos un nodo de este tipo, reemplazamos en su contenido (<font face="Courier New">nodeValue</font>) los caracteres <font face="Courier New"><em><font color="#ff0000"><strong>
</strong></font></em> </font>(en caso de que existan, depende de la codificacion, si es UTF-8 aparecerán estos caracteres sustituyendo a los saltos de línea) por los caracteres "<em><strong><font color="#ff0000">\n\r</font></strong></em>" que equivalen a un salto de linea en el archivo, no asi en la pantalla del browser y lo guardamos en la variable <font face="Courier New"><strong>$text</strong></font>. Para este ejemplo creamos de la misma manera una variable <font face="Courier New"><strong>$screen</strong></font> que sera para verlo en la pantalla del browser, no para guardarse en archivo, la diferencia esta en sustituir los caracteres <font color="#ff0000" face="Courier New"><strong><em>
</em></strong></font> por "<em><strong><font color="#ff0000"><br></font></strong></em>" que representa un salto de linea en el browser, no en el archivo.</div> <div>Una vez reemplazados estos caracteres decodificamos la variable con la funcion <font face="Courier New"><strong>utf8_decode().</strong></font> Esto sirve para ambas codificaciones ISO y UTF.</div> <div>En el codigo de ejemplo las mostramos en pantalla y se verian asi (use otro archivo con más contenido para apreciar mejor esto): </div> <div> </div> <div><font color="#000080" face="Verdana">Variable $text Contiene ... CORR... Jaque Mate LOS BANQUEROS Sergio Sarmiento "Un banquero es un señor que te presta su paraguas cuando hace sol pero que quiere se lo devuelvas en el momento en que empieza a llover". Mark Twain Acapulco, GRO.- En otros tiempos, el gran tema de preocupación en las convenciones bancarias eran las pérdidas. Hoy parecería que el problema son las utilidades. Apenas unas 600 personas participan en la 69ª Convención Bancaria que se está llevando a cabo en Acapulco...</font></div> <div> </div> <div><font color="#000080" face="Verdana">Variable $screen Contiene ... <br> CORR...<br> Jaque Mate<br> LOS BANQUEROS<br> Sergio Sarmiento<br> "Un banquero es un señor que te presta su paraguas cuando hace sol pero que quiere se lo devuelvas en el momento en que empieza a llover". <br> Mark Twain<br> Acapulco, GRO.- En otros tiempos, el gran tema de preocupación en las convenciones bancarias eran las pérdidas. Hoy parecería que el problema son las utilidades. <br> Apenas unas 600 personas participan en la 69ª Convención Bancaria que se está llevando a cabo en Acapulco...</font></div> <div> </div> <div>Las diferencias saltan a la vista, pero internamente las cosas son muy diferentes, y ahora lo veran, este es el codigo fuente generado:</div> <div> </div> <div> <pre id="line1"><tt>Variable $text Contiene ... CORR... Jaque Mate LOS BANQUEROS Sergio Sarmiento "Un banquero es un señor que te presta su paraguas cuando hace sol pero que quiere se lo devuelvas en el momento en que empieza a llover". Mark Twain Acapulco, GRO.- En otros tiempos, el gran tema de preocupación en las convenciones bancarias eran las pérdidas. Hoy parecería que el problema son las utilidades. Apenas unas 600 personas participan en la 69ª Convención Bancaria que se está llevando a cabo en Acapulco.</tt></pre> <pre><tt> </tt></pre> <pre><pre id="line1"><tt>Variable $screen Contiene ... <<span class="start-tag">br</span>>CORR...<<span class="start-tag">br</span>>Jaque Mate<<span class="start-tag">br</span>>LOS BANQUEROS<<span class="start-tag">br</span>>Sergio Sarmiento<<span class="start-tag">br</span>>"Un banquero es un señor que te presta su paraguas cuando hace sol pero que quiere se lo devuelvas en el momento en que empieza a llover". <<span class="start-tag">br</span>>Mark Twain<<span class="start-tag">br</span>>Acapulco, GRO.- En otros tiempos, el gran tema de preocupación en las convenciones bancarias eran las pérdidas. Hoy parecería que el problema son las utilidades. <<span class="start-tag">br</span>>Apenas unas 600 personas participan en la 69ª Convención Bancaria que se está llevando a cabo en Acapulco.</tt></pre></pre> </div> <div> <p> </p> </div> <div> <p>Completamente diferentes ambos valores, el primero nos sirve para guardarlo ya sea en una base de datos (que es lo que queremos en este proyecto) o para mostrarlo en pantalla, para una mejor visualización.<br> <br> El siguiente paso del proyecto es hacer que el scrip recorra un directorio determinado y ejecute el parseo para cada archivo INCD en ese directorio. Pero ese será en el próximo post. Hoy ha sido un día productivo.</p> </div> <div> </div> <div><font face="Courier New" size="2"><strong>[owar@owarux ~]$goto sleep > zzzzz.txt</strong></font></div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114405766609659553?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com0tag:blogger.com,1999:blog-24864984.post-1144037616597925412006-04-02T23:13:00.000-05:002006-04-02T23:13:36.653-05:00¿Navegas seguro?¿Que tantos datos crees que se puedan obtener de tu computadora cuando andas navegando tranquilamente por la red? El ip, el navegador que usas, el sistema operativo... ¿Qué más se te ocurre?<br> <br> Pues bien, te pueden leer hasta el contenido del portapapeles (cuando usas las funciones de copiar, solo en Windows con Internet Explorer, otra buena razón para usar Firefox), tu resolución de pantalla, si aceptas cookies, etc. Pero para que te lo cuento, mejor averigualo tu mismo entrando en <font color="#ff6600"><big><b><a href="http://projectip.com">esta dirección</a></b></big></font><br><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114403761659792541?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com0tag:blogger.com,1999:blog-24864984.post-1143973063759947902006-04-02T05:17:00.000-05:002006-04-02T05:17:43.763-05:00Histórico¿Como Funciona una computadora.... en 1971? o la edición revisada de 1979.<br> <br> Buena manera para ver que tanto hemos avanzado en tecnología. Yo en lo particular naci entre estas dos fechas, mas cerca de la segunda. Buena referencia histórica. Me refiero a un libro por supuesto, son capturas de dicho libro, en inglés. Para poder verlo este es el <font color="#ff6600"><b><big><a href="http://davidguy.brinkster.net/computer/default.html">enlace.</a></big></b></font><br><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114397306375994790?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com0tag:blogger.com,1999:blog-24864984.post-1143932263943614782006-04-01T16:57:00.000-06:002006-04-01T16:57:45.570-06:00¿Vale la pena Adsense?<DIV><FONT face=Arial size=2> <H3><FONT color=#000080>El valor de los ingresos de AdSense en países 'en vías de desarrollo'</FONT></H3> <P>Hace casi un año, contábamos <A href="http://google.dirson.com/noticias.new/1263/">el caso de una persona</A> que había abandonado su trabajo para poder vivir exclusivamente de gestionar su sitio web, y obtener ingresos económicos con '<A href="http://google.dirson.com/adsense-google.php">Google AdSense</A>'. <BR><BR>Cada vez son más numerosos estos casos, debido al aumento del tráfico de muchos sitios web, y también al aumento del coste de cada click, gracias al creciente número de anunciantes que ven el sistema publicitario de Google como una forma efectiva de conseguir visibilidad para sus negocios. <BR><BR>Estos anunciantes pagan la misma cantidad a Google, independientemente del lugar de origen del webmaster. Y Google, a su vez, paga los mismos dólares a un webmaster de EEUU que a otro de Filipinas, si ambos tienen el mismo 'atractivo publicitario' para estos anunciantes. <BR><BR>Sin embargo, el webmaster de EEUU vive en una sociedad donde obtener 6.000 dólares en un año (500 al mes) supone el 14% de la renta per cápita, pero la misma cantidad ingresada por un webmaster de Filipinas supondría exactamente la renta per cápita en este país, lo que le cambiaría completamente el planteamiento de la vida profesional. <BR><BR>Estos casos son de los que menciona <A href="http://googleblog.blogspot.com/2006/03/doing-what-they-love-rest-follows.html">este post</A> del blog oficial de Google, haciéndose eco de <A href="http://www.usatoday.com/tech/news/2006-03-28-googe-adsense_x.htm">este artículo</A> de 'USA Today' que recoge diversas historias de webmasters de India o de Filipinas, cuya vida ha cambiado gracias a dedicar unas horas diarias al mantenimiento de sus sitios web, y recibir a cambio cada mes unos cientos de dólares de Google para gastarlos en un país donde la calidad de vida es menor y los precios son mucho más bajos que en la mayoría de los países occidentales. <BR><BR>Un responsable de AdSense asegura que les ilusiona la idea de estar ayudando a pequeños emprendedores de estos países 'en vías de desarrollo' para que puedan escribir sobre lo que a ellos les gusta, y recibir dinero por ello. Cuando nació AdSense, en junio de 2003, el objetivo de Google era garantizar una WWW llena de contenidos que pudiera ofrecer información al buscador, gracias a los ingresos publicitarios a los webmasters, en un momento en el que se vivían los efectos de la crisis 'punto com'. <BR><BR>Estas historias también deberían hacer reflexionar a todos aquellos que están enfocando sus modelos de negocio en obtener ingresos económicos de AdSense a través de sitios web de contenidos, sabiendo que a muchos kilómetros de distancia puede haber otra persona que, con menos necesidades económicas, pueda ofrecer servicios parecidos. </P> <P>Texto original aquí --> <A href="http://google.dirson.com/noticias.new/2509/">http://google.dirson.com/noticias.new/2509/</A></P></FONT></DIV><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114393226394361478?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com1tag:blogger.com,1999:blog-24864984.post-1143890875906290872006-04-01T05:26:00.000-06:002006-04-01T05:27:55.913-06:00Modding<a href="http://photos1.blogger.com/blogger/3625/751/1024/tie_fighter.jpg"><img style="DISPLAY: block; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://photos1.blogger.com/blogger/3625/751/400/tie_fighter.jpg" border="0" /></a><br />Definitivamente quiero una mesa con PC integrada, como esta. <a href='http://picasa.google.com/blogger/' target='ext'><img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' style='border: 0px none ; padding: 0px; background: transparent none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;' align='middle' border='0' /></a> <div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114389087590629087?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com0tag:blogger.com,1999:blog-24864984.post-1143862265411460432006-03-31T21:31:00.000-06:002006-03-31T21:31:05.413-06:00Mi primer post<DIV><FONT face=Arial size=2> <DIV><FONT face=Arial size=2>Este será mi primer post en este Blog, de mi amigo y nefasto compañero Owar, para fines de prueba que baste con estas lineas y el brindis será despues,</FONT></DIV> <DIV><FONT face=Arial size=2>Salud!</FONT></DIV></FONT></DIV><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114386226541146043?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com1tag:blogger.com,1999:blog-24864984.post-1143840816527424162006-03-31T15:32:00.000-06:002006-03-31T15:33:36.533-06:00Lecter dice...<a href="http://photos1.blogger.com/blogger/3625/751/1024/lectarsays.jpg"><img style="DISPLAY: block; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://photos1.blogger.com/blogger/3625/751/400/lectarsays.jpg" border="0" /></a> <a href='http://picasa.google.com/blogger/' target='ext'><img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' style='border: 0px none ; padding: 0px; background: transparent none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;' align='middle' border='0' /></a> <div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114384081652742416?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com0tag:blogger.com,1999:blog-24864984.post-1143719881874416692006-03-30T05:58:00.000-06:002006-03-30T05:58:01.920-06:00PROYECTO=$InCopy_Parser_[2];<br> <big><b><font color="#660000">Iniciando algunas funciones</font></b></big><br> <br> Para el desarrollo de este proyecto, primero tengo que ver como extraer el texto de los documentos INCD, para lo cual, tengo que parsear cada archivo, y el resultado, siendo el contenido de la nota, guardarlo en la base de datos de MySql.<br> <br> La forma más fácil que encontre para parsear el documento es con el codigo:<br> <br> <b><font color="#000099"><tt><?php <br> echo "Este es el contenido de un documento de InCopy <hr>";<br> $documento=new DomDocument();<br> $documento->preserverWhiteSpace=false;<br> $documento->load('mi_nota.incd');<br> $cadena_xml=$documento->saveXML();<br> echo $cadena_xml;<br> ?></tt></font></b><br> <br> Este codigo funciona, porque antes de este proyecto ya lo habia probado cuando estaba estudiando PHP, pero al hacerlo en casa (mi laboratorio de sistemas), marcaba error "PHP Fatal error: Class 'DOMDocument' not found in test1.php". Por lo tanto el error estaba en mi servidor, no en el código. Dicho servidor esta corriendo en una modesta pc con un procesador Athlon XP con 512 de Ram, en el cual instale la version de Mandriva Linux 2006 Free Edition. Mis servidores anteriores los habia estado instalando con Mandrake 10.0 y no habia tenido este problema.<br> <br> Despues de navegar en busca de referencias encontre que en las versiones de PHP4 hay librerias especificas para el manejo de XML y DOM, pero en PHP5 (que es la versión que viene en Mandriva 2006) ya viene compilada por default (al menos eso dicen), pero con este error veo que no es cierto, por lo tanto habia que buscar las librerias de <b><i>php-dom</i></b> y <i><b>php-xml</b></i> para esa version en paquetes RPM, las baje a mi server y las instale, pero el paquete php-xml marco un error donde decia que no podia descomprimir un archivo, pero al final dijo que si instalo el paquete. Asumiendo que estaban instalados ambos procedi a ejecutar de nuevo mi archivo php y esta vez funciono sin ningun problema. Ningun problema en ese momento.<br> <br> Las codificaciones de caracteres que tienen estos archivos INCD son principalmente "iso-8859-1", "UTF-8" y uno que otro "UTF-16", los mas importantes para nuestro sistema son los dos primeros.<br> <br> Pues bien, cuando probe pro primera vez utilice un archivo codificado en "iso-8859-1", pero cuando probe con uno codificado en "UTF-8" me dio muchos caracteres extraños, esto por que me los mando en "iso-8859-1" siendo en realidad "UTF-8".<br> <br> De nuevo a investigar, y encontre que existen en PHP dos funciones denominadas <b><i>utf8_decode()</i></b> y <b><i>utf8_encode()</i>, </b>la primera pasa de "UTF-8" a "iso-8859-1" y la segunda hace lo inverso, asi que no habia problema, para los archivos codificados en UTF-8 solo tenia que modificar mi archivo php de la siguiente manera:<br> <br> <b><font color="#000099"><tt><?php<br> $documento2=new DomDocument();<br> $documento2->preserverWhiteSpace=false;<br> $documento2->load('mi_nota_utf8.incd');<br> $cadena_xml2=$documento2->saveXML();<br> $new=utf8_decode($cadena_xml2);<br> echo $new;<br> ?></tt></font></b><br> <br> Esto deberia funcionar, pero en ese instante no lo hizo, ¿Que pacho? Pues bien, despues de horas de buscar, todo apuntaba a un problema en las librerias de PHP, dado que las funciones estan contenidas en php-xml, recorde que habia marcado un error al instalarla, asi que procedi a buscarla de nuevo en otro sitio, la instale y esta vez no dio error alguno durante la instalacion.Esto se ve logico, pero creanme, me tarde algunas horas en dar con el chistesito. Ya lo decia el emperador Marco Aurelio "Principios basicos... Simplicidad".<br> <br> Después de esto, probé de nuevo el código y esta vez funciono.<br> <br> Así que después de este pequeño éxito, me retiro a descansar un poco, que ya son las 6 de la mañana. Dudas, sugerencias, comentarios o donaciones son bien recibidas.<br> <br> <b><font color="#000000"><tt>[owar@owarux ~]$echo "Buenas noches";</tt></font></b><br> <br><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114371988187441669?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com0tag:blogger.com,1999:blog-24864984.post-1143618042072498842006-03-29T01:40:00.000-06:002006-03-29T01:40:42.083-06:00Linux en el iPod<DIV><FONT face=Arial size=2>Tienes un ipod?, eres usuario de Linux?, esto te interasará, como hacer que tu ipod funcione con Linux, seria una buena forma de experimentación, pero por lo pronto mi iPod lo dejo como esta, hasta ahora no tengo queja de él, y aun siendo un iPod nano, no se me ha rayado mucho la caratula como dice por ahí.</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>El proceso para instalar Linux en el iPod es el siguiente: </FONT><FONT face=Arial size=2><A href="http://www.macuarium.com/cms/macu/pruebas/linux-en-tu-ipod.html">http://www.macuarium.com/cms/macu/pruebas/linux-en-tu-ipod.html</A></FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>[owar@owarux~]$Hasta_la_proxima</FONT></DIV><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114361804207249884?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com0tag:blogger.com,1999:blog-24864984.post-1143592096646573462006-03-28T18:28:00.000-06:002006-03-28T18:28:16.656-06:00PROYECTO=$InCopy_Parser_1;<font color="#660000"><big><b>Planteamiento</b></big></font><br> En nuestro sistema de producción, manejamos como formato para los archivos de texto, el "INCD" que es formato propietario de Adobe InCopy, que junto con InDesign es nuestra suite de trabajo editorial.<br> <br> Cada nota, a la cual de ahora en adelante manejare como archivo, desde su origen hasta su impresion, pasa por diversos elementos, ya sea el autor o un corrector; además de pasar por varias carpetas en el sistema de produccion.<br> <br> Nuestro servidor de archivos principal (un servidor Dell con SO Mandrake 9.1, Samba) tiene su estructura de carpetas predetermindas, con sus respectivos permisos de usuario, para evitar accesos indeseados, ademas de tener programados ciertos servicios para agilizar el trabajo y realizar limpieza en la estructura de un dia para otro (esto mediante scripts .sh y cron).<br> <br> Por aquello de la Ley de Murphy <a href="http://owar.blogspot.com/2005/02/ley-de-murphy-parte-ii-y-ltima.html">lea!!</a>, he desarrollado un servidor que funciona como mirror (espejo), asi que cada 20 minutos, hace una copia de los datos del server original (mediante Rsync), y asi tenemos una copia de datos por cualquier emergencia.<br> <br> Los editores ocupan el Adobe InCopy para todo su trabajo, pero como no es el unico programa que utilizan necesitan maquinas con suficientes recursos, y los reporteros y correctores solo necesitan vaciar el texto en el sistema, para lo cual asignarles una maquina potente para el uso del InCopy significaba un gasto enorme, además de que tenemos aún suficientes máquinas con win9x que funcionan muy bien, pero que no soportan el Adobe InCopy.<br> <br> Para este problema desarrolle un programa en Delphi, que no demanda muchos recursos de la maquina, se conecta a las unidades de red de los servidores, corrige ortografia y lo más importante, guarda en formato de InCopy, que es básicamente un archivo XML. Así, aprovechamos las maquinas que se tienen y con el programa propio, al cual llamare CapCopy, automatizamos las tareas, porque ya tiene predeterminados las carpetas por seccion y al guardarlo asigna el formato de nombre de archivo que nosotros utilizamos para su rapida identificacion.<br> <br> Ahhh, pero algo que hace Capcopy me recuerda al RootKit de Sony, ya que guarda automaticamente una copia en otro servidor (el cual no es ni el original ni el mirror) para tener un archivo historico de todas las notas que hemos utilizado, como si fuera mi InCopyteca personal, y que ademas sirve cuando alguien pierde sus archivos o se los borran.<br> <br> Pues Bien, después de esta breve explicación, el proyecto <b><big>InCopy_Parser </big></b>consiste basicamente en:<br> <br> * Crear una base de datos en MySql donde se almacenaran todas las notas de cada dia de edicion, no importa si se publicaron o no, siempre y cuando esten en el sistema original.<br> <br> * Mediante scripting se planea hacer mediante un servicio (cron) que a determinada hora, todas los archivos de InCopy sean parseados (por ser XML) y el texto obtenido sea guardado en MySql, asignando tambien fecha y seccion, entre otros datos. Originalmente Capcopy se conectaria al server de Mysql y guardaria la copia alla, pero implicaba muchos cambios estructurales.<br> <br> * Ya con la DB en MySql, hacer un servidor web con Apache y PHP para poder accesar las notas y sobre todo poder buscarlas mas rapido, organizandolas por seccion, fecha, autor o contenido. Un servicio de consulta para archivo historico.<br> <br> Ese es el planteamiento básico, así me retiro a seguir buscandole solucion.<br> <br> <b><tt>[owar@owarux~]$Continuara</tt></b><br><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114359209664657346?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com0tag:blogger.com,1999:blog-24864984.post-1143589822386894692006-03-28T17:50:00.000-06:002006-03-28T17:50:22.416-06:00Booting<p class="mobile-post">Este sitio lo tengo pensado para ir anotando todas las ideas y/o avances <br />concernientes a mi trabajo con computadoras. Actualmente trabajo en un <br />periodico de Veracruz, México, llamado El Dictamen. Estoy en el <br />departamento de Electronica, y mi tarea principal es la administracion <br />de los servidores que tenemos aqui, principalmente en Linux. Comforme <br />vaya escribiendo esto, ire dando mas detalles.</p><p class="mobile-post">Este post es para plantear las reglas básicas de los temas que trataré.</p><p class="mobile-post">Como son varios los proyectos que tengo en mente, y como no podre <br />explicar la necesidad y el desarrollo de un solo proyecto en un solo <br />post, lo que hare para identificarlos es poner a cada post como titulo <br />el nombre del proyecto seguido de un numero, y como subtitulo la fase de <br />desarrollo actual, asi se podra dar cantinuidad a todos los proyectos.</p><p class="mobile-post">Si es un comentario o algo relacionado con linux, pero no tenga nada que <br />ver con los proyectos actuales, simplemente en el titulo no llevara la <br />palabra proyecto.</p><p class="mobile-post">Basicamente eso es todo.</p><p class="mobile-post">[owar@owarux]:#Empezamos</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24864984-114358982238689469?l=owarux.blogspot.com'/></div>OWarhttp://www.blogger.com/profile/14127996237354323450noreply@blogger.com0