|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Who the Hell...?!motagirl2, la culpable de todo esto¿De qué va esto?Temas
¿Más cosas interesantes?Elementos compartidos de motagirl2Quiero estar al dia!- Subscribirme usando mi agregador de noticias ^^- No, gracias, prefiero recibir un mail cuando haya nuevos artículos ;) ¿Dónde está mota?En Anime-Planet En Anobii En Bloglines En Blogspot En DailyMotion En DeviantArt En DinoParc En El Bruto En Facebook En Flickr En Fotolog En GoEar En Hammerfest En Jisko En LastFM En MySpace En Naturalquimia En Orkut En Technorati En Tuenti En Twitter En Wordpress En YouTube Reglas y consejos para apostar a las tragaperras en tu web de casinos de internet
|
Se muestran los artículos pertenecientes al tema Frikadas. Señales y Sistemas, la fantástica asignatura que me está amargando la semana y que tengo que cursar porque alguien se dio cuenta que en Ing.Tec.Infor. de Sistemas faltaban 7.5 créditos para completar el programa y solventó el problema abriendo el de Telecomunicaciones y encasquetándonos la primera asignatura que vio. True story. A cambio, podemos empatizar con los susodichos telecos, tarareando mientras estudiamos esta bonita canción (que fue creada como Himno no-oficial de Teleco en nosequé universidad de Sevilla) Vamos con Payán! Hallaremos su covarianza y tambien su correlación Integrémoslo por Fourier Vamos con Payán! Claramente, era lo que viene siendo un gato en tiempo contínuo. Tranquilos, Pinocho sigue bien, pero encontré esto cuando buscaba more info sobre Fourier (en escasos días me examino de Señales y Sistemas y me gusta saber cosas sobre la gente en la que tengo que pensar durante más de 10 minutos) Por otro lado, xkcd (los autores de la viñeta) están hoy haciendo un homenaje a GeoCities, que por lo visto cierra hoy, con un rediseño espectacular de su web. No os lo perdais, os vais a sentir muuuy viejunos, recordareis los bonitos modems de 56k, los perpetuos cartelitos de "under construction".... No hace falta viajar en el tiempo, sólo mirad la captura: Decían que era imposible, que no tenía final.... pero yo lo he conseguido: ¡Me he pasado el Robots completo! Total, si sólo son 67 nivelillos de nada.... Eso sí, cuando terminas.... .... es tremendamente frustrante porque ... ¡vuelve a empezar desde el principio! ¡Argh! En fin, a mí es un juego que me encanta (muy útil para pasar el rato cuando no tienes internet y/o esperas algo/alguien) y al que llevo jugando desde que uso Linux (va para 5 o 6 años ya), pero creo que el 90% de la humanidad lo odia. ¡Vosotros os lo perdeis! Yo formaba parte de la gran masa de usuarios de linux que cuando necesitan usar su scanner buscaban un pc con Windows cerca para ahorrar odio y tiempo. Hasta ayer, que me dio el ramalazo geek y me dije "mota.... ¡vamos a ganar unos cuantos puntos de exp!" Y puesto que me llevó unos cuántos dolores de cabeza y unas cuántas horas de navegación, prueba y error, os contaré aquí cómo he hecho para que tire. En primer lugar, necesitamos una interfaz mágica para comunicarnos con nuestro scanner. Yo he elegido XSane por dos razones: 1- venía de serie en mi Ubuntu. 2- SANE viene de "Scanner Access Now Easy", y si pone "easy" no puede ser malo. Si no lo tenemos (o no estamos seguros, que también puede ser), abrimos una terminal, escribimos sudo apt-get install xsane metemos la contraseña de superusuario, y dejamos que se descargue y se instale. Una vez que lo tenemos, accedemos a él desde Aplicaciones - Gráficos o directamente tecleando xsane en la terminal. Se nos abrirá una ventanita en la que nos pedirá seleccionar el dispositivo entre todos los encontrados (en mi caso, la webcam y el susodicho scanner, que es el que nos interesa). Lo seleccionamos, aceptamos.... y lo más probable es que nos encontremos con esto: Que no cunda el pánico, vamos a solucionarlo. Lo primero que necesitamos saber es el modelo exacto de nuestro scanner (en mi caso, un Acer ScanPrisa 640U que está a punto de cumplir diez añitos) y si está soportado por Sane. Nos metemos aquí a la página del proyecto Sane y buscamos nuestro modelo de scanner (ojo, si tienes un Acer como yo, debes saber que ahora se llaman BenQ): ¡Bien! Está soportado. Concretamente mi modelo de scanner utliza SnapScan así que entramos en el enlace a ver qué versión del firmware necesitaremos para hacerlo funcionar: Sabiendo esto, el siguiente paso es hacernos con la versión del firmware que necesitamos. Para ello, usamos el CD que venía con el dispositivo o lo obtenemos directamente de la web del fabricante. Generalmente, lo que descargaremos será un pack de un montón de megas, pero lo que nos interesa apenas ocupa unos pocos KB: es un archivo .bin con el nombre que hemos visto en el paso anterior. También puede ser que la versión no sea exactamente la misma (mi caso, cómo no xD), así que con coger la inmediatemente superior suele valer. Una vez hemos encontrado nuestro firmware, lo copiamos a alguna carpeta mágica donde pueda dormir tranquilamente. Por ejemplo, /etc/bin (originalidad al poder). A continuación, según pone en la página de SnapScan, necesitamos "crear" el dispositivo: mknod /dev/usbscanner c 180 48 Y hecho esto, debemos decirle a XSane dónde están los drivers. Vamos a la carpeta /etc/sane.d y buscamos el archivo de configuración que va a usar nuestro scanner, que es el indicado en la página donde miramos si era compatible. En mi caso, snapscan.conf, así que lo abrimos como superusuario para poder cambiarlo: sudo gedit /etc/sane.d/snapscan.conf Buscamos donde ponga /usr/share/sane/snapscan/your-firmwarefile.bin (es la primera linea no comentada) y lo sustituimos por la ruta hasta nuestro precioso archivo .bin que guardamos antes, de manera que quede así (pero obviamente, con tu versión del firmware): firmware /etc/bin/u96v121.bin Guardamos (recuerda que probablemente tendrás que ser superusuario), volvemos a lanzar XSane, seleccionamos el scanner, y pueden pasar dos cosas: 1) Que nuestro scanner empiece a hacer ruidos sospechosos y nada agradables justo antes de recibir el mismo mensaje de error que al principio. Esto significa que la versión de firmware que has usado no es la buena. Que no cunda el pánico, a mi me ha costado cinco intentos encontrar la correcta dentro del pack. Simplemente, ve probando hasta que encuentres la que lo hace funcionar. Eso sí: entre cambio y cambio de snapscan.conf deberás desconectar y reconectar el scanner para que los cambios tengan efecto. 2) Que todo haya ido bien y encuentres en tu pantalla un mar de ventanitas similares a estas: ¡Enhorabuena! ¡Todo ha ido bien! Al principio, XSane puede parecer un auténtico caos de opciones sin sentido y demás, pero en cuanto has mirado un poco las opciones descubres que es el paraiso de la customización, y todo al alcance de la mano. Algunas opciones interesantes a un sólo clic: elegir color/B&N/grises, elegir la resolución, ajustar el contraste, brillo y gamma, ajustar los colores.... y lo mejor: elección del modo de salida. Podemos escoger si queremos abrirla con el visor interno, guardarla automaticamente, enviarla por correo, enviarla a la impresora....o una cosa muy útil: crear un proyecto multipágina y exportarlo directamente a pdf cuando hayamos escaneado todas las páginas. ¡Un amor! Además, vemos (antes de empezar a scanear) el tamaño y peso (en megas) que tendrá nuestra imagen (lo cuál se agradece). Cuando hayamos toqueteado todas las opciones y lo hayamos configurado a nuestro gusto, simplemente tenemos que hacer clic en "Adquirir vista previa" en la ventana de vista previa, seleccionar sobre ésta la parte de la imagen que queramos obtener, y luego pulsar "Explorar" en la ventana principal del programa (que es donde están también todas las opciones). La imagen irá a donde hayamos seleccionado en el modo de salida. Espero que esto haya sido más o menos útil, creo que no me he dejado ningún paso... Quejas, dudas y traumas, en los comentarios :) Todas las mañanas desayuno un vaso de zumo, pero nunca tiene tanto carisma como estos. ¡Son encantadores! Estos envases son un diseño de Marc Valega, aunque los abogados de los Beatles se pusieron en contacto con él para que los quitara, así que ya no es posible encontrarlos en su página. Podeis verlos en versión "recorta y pega" aquí. No puedo evitar visualizar esto cada vez que leo "almacenamiento magneto-óptico" en los apuntes, así que he tenido que perpetrar este sacrilegio para que todos seais partícipes y no sea yo la única traumada :D ¡Festival del humor! Cinco minutos de Gimp hacen maravillas con mi integridad mental xD ¡Otro post mágico sobre periféricos! Y probablemente esta semana y la que viene haya algunos más, puesto que tengo el examen de prácticas el martes y el de teoría el lunes siguiente. Recordemos los capítulos anteriores porque probablemente serán útiles en este: - Punteros y modelos de memoria - Acceso a ROM para obtener los patrones de bits de los caracteres - Modificación de los patrones de bits de los caracteres - Acceso a la Tabla de Vectores de Interrupción Bien, dicho esto, también nos será útil saber cómo organiza VGA el acceso a los colores. Sabemos que, si escribo un carácter directamente en memoria de video (en nuestro caso -80x25- el segmento comienza en 0xB800), este ocupará 2bytes repartidos tal que así: 8bits: carácter Sabiendo esto, podemos usar 4 bits para el color, es decir, que tenemos 16 colores distintos a elegir. En realidad, cada uno de esos colores está apuntando a una paleta, que a su vez indexa 256 registros de un conversor analógico digital (DAC), en el que cada color (rojo, verde, azul) ocupa 6bits. O sea, 3 colores de 6 bits cada uno (64 posibilidades por cada color) nos da 256 bonitos colores para usar. La manera en que utilizaremos esto es la siguiente: modificaremos la paleta de un color determinado (en este caso, el 5, violeta) para que indexe otro color del DAC. Entonces, cada vez que pintemos algo de ese color, se estará pintando en realidad del color con el que lo hayamos modificado. ¿Lo primero que necesitamos saber? A donde apunta (en el DAC) el color que hemos elegido. Esta función es útil para eso: int indiceDAC(int indcolor) { Una vez sabemos cuál es el índice del DAC que vamos a modificar, probablemente queramos saber sus componentes originales: int lee_paleta(int indDAC, int *R, int *V, int *A) { Y por supuesto, alguna manera de modificarlo: int establece_color(int indDAC, int R, int V, int A) { Ahora que sabemos todo esto, lo suyo sería comprobarlo. Para ello, dibujaremos un cuadrado directamente en memoria de video y lo rellenaremos del color 5. Esto es tan simple como un par de bucles anidados en los que asignamos valores de caracter y color a un cacho de memoria de video. Podemos cambiar de color directamente (leer paleta,modificar colores, establecer color) o hacerlo interactivo: creando una nueva interrupción (así), en la que leemos el buffer de teclado (puerto 0x60) y en función de las teclas pulsadas modificaremos los colores. En mi caso: A y Z modifican los rojos, S y X los verdes y C y D los azules. Para hacerlo aún más pijotero, podemos hacer un bucle mágico para escribir los valores actuales de cada color en la memoria de video. Y esto es lo que tenemos al final: Credits: Las funciones "establece_color", "lee_paleta" e "indice_DAC" han sido sacadas del libro de apuntes de la asignatura, descargable aquí. R2-D2, la nave a mis espaldas y yo os deseamos un Feliz Día de Star Wars. ¿Que por qué es hoy el Día de Star Wars? Pues porque en inglés la frase "May the force be with you" ("que la fuerza te acompañe") suena igual que "May the 4th be with you" ("el cuatro de mayo está contigo). Pues eso. Ya podeis ir a daros cabezazos con las paredes xD En primer lugar y antes de nada, Vladi me acaba de galardonar con el super premio Blog de Oro. Gracias!! Técnicamente debería entregárselo a otros 15 blogs más, pero como no quiero que os peleeis, consideraos todos premiados también =) Por otro lado, a lo que iba: hace unos días (concretamente el 23Abril) salió la versión final de Ubuntu. Su nombre es Jaunty Jackalope, que significa "jackalope vivaz". Un jackalope viene siendo un conejo con cuernos de ciervo que podría ser la versión americana del típico gambusino gamusino. Misteriosamente, de momento no he tenido ningún problema raro (siempre me pasa algo), salvo las típicas chorritonterías. A saber: - El logo con la barra animada vaciándose que sale al cerrar sistema sigue saliendo en nula-resolución. Vamos, que decir que está a 16 colores sería pasarse xD Vamos, que practicamente no he notado cambios (la vez anterior fue como una hecatombe en miniatura) En fin, que todo lo de arriba no es más que una excusa para postear el preciosísimo wallpaper que encontré hace tiempo en Ubuntips: ¡Por dios! No me digais que no os parte el alma =) ¡Lo que faltaba! Fumihito Yoshida, Hajime Mizuno (ambos miembros del Ubuntu-JP Team) y Hiroshi Seo han creado un manga sobre Ubuntu. La versión en inglés de este manga, de nombre Ubunchu y subítulo "The World's First Ubuntu Romantic Comedy School" se puede descargar felizmente aqui. Lo he leído un par de veces intentando buscarle sentido y tal, pero ... no acabo de encontrárselo xD Básicamente, hay un club de sys-admins en un instituto japo, se acaban de comprar un quad-core (alias "The Beast" xD) y tienen que decidir qué OS llevará. En el club son tres miembros: un windowsero, una linuxera old-school, y una maquera. Y aquí es cuando me pierdo, porque es la maquera la que insiste en usar Ubuntu. En fin, descubridlo vosotros mismos... (via Cesarius Revolutions) Niños, niñas, elefantes voladores y demás: vayan vaciando sus agendas para el martes 12 de mayo a las 17.30 porque... ¡viene Stallman! La pista la dio VicenteJuan en twitter, y tras una rápida búsqueda en google encontré la fuente original de la noticia, en la FreeSoftwareFoundation, right here. Según pone, y suponemos que será cierto,(cito textualmente), Alicante, Spain. Aula CAMON, Avd. Ramón y Cajal, 5, Torrevieja. Richard Stallman hablará sobre las metas y la filosofía del movimiento del Software Libre, y el estado y la historia del sistema operativo GNU, el cual conjuntamente con el núcleo Linux ahora es utilizado por decenas de millones de usuarios en todo el mundo. Lo único malo, malísimo, es que es mi tarde con más clases (ninguna obligatoria, aunque sí recomendables) y que es en Torrevieja. Pero seguro que encuentro alguien para hacer una excursión.... o eso espero :S Edit: Parece ser que podría haber un error en la noticia original, y que fuera en Alicante-Alicante, puesto que en esa misma calle y número (pero en Alicante) existe una CAM (google maps says). Esto es lo que ocurre cuando en todos los pueblos de los alrededores hay una maldita Avenida Ramón y Cajal XD Hace unos meses vi en el blog de Esti un articulillo en modo coña de cómo serían los cuentos tradicionales si fueran estilos musicales. Pongo los que más graciosos me parecieron, para verlos todos, en su blog. Y sí, la imagen es cosecha propia, el castillo que aparece es el Castillo de la Mota, que está en Medina del Campo. Y cada cuál que saque sus propias conclusiones xD Versión original: En lo alto de un castillo, hay una linda princesa, que es custodiada por un terrible y gigante dragón. POWER METAL HEAVY METAL FOLK METAL VIKING METAL BLACK METAL NU METAL ROCK N’ROLL CLÁSICO PROGRESIVO HARD ROCK Acabo de ver en Ubuntips esta bonita gráfica que (basándose en sus características) supuestamente te ayuda a saber cuál es el nombre "técnico" y "respetable" de tu ordenador portátil, puesto que "portatil chiquitín" no es muy descriptivo ^^ Por ejemplo: netbook, ultraportatil, etc etc Ahí va: Por ejemplo, en mi caso: - Acer Aspire ¿1391? (aka "mi portátil viejo"): Is the PC worth more than $500? -> YES -> Is the screen larger than 13"? -> YES -> You’ve got a plain old LAPTOP - Dell XPS M1330 (aka "mi portátil nuevo"): Is the PC worth more than $500? -> YES -> Is the screen larger than 13"? -> NO -> Does it have an optical disc? -> YES -> You’ve got an ULTRA-PORTABLE Puedes poner tus cosicas en los comentarios, que no muerden. (Disclaimer: Esta entrada está basada en notas que he tomado durante una charla, así que probablemente no haya mucha coherencia entre párrafo y párrafo. No me lo tengais en cuenta. Tampoco voy a poner links, porque me puedo morir. ¡Usad un buscador! ) Esta mañana he estado en la sesión informativa de Sun OpenSource Technologies, junto con los agradables mangarrufos Lord_Kote y Scipion. Han sido tres intensas horas de información, self-promoting (esto era esperable), datos técnicos a porrillo, etc etc. en una pequeña sala que con15 alumnos y 5 profesores ya estaba llena.. Por cierto, yo era la única mujer no profesora... después de 5 años y todavía me sorprende xD La sesión estaba planeada en tres grandes bloques: 1 . OpenSolaris De ellos, el que más interesante me ha parecido es es de openSPARC, pero puesto que ha sido el más "técnico" ha sido del que menos notas he tomado (muchos esquemas, datos y demás). A cambio, sobre OpenSolaris tengo miles de notas, así que tendré que dejarme cosas en el tintero. Y sobre los programas para universidades, pues muy interesante también, pero ahi los estudiantes ni pinchamos ni cortamos. En primer lugar, y con una Solaris 2008.11 sobre la que se había virtualizado Ubuntu y otros OSs (el ponente, un Arquitecto de Sistemas, se ha declarado Ubuntero de corazón) nos han contado cosas de por qué Sun es guay: Solaris, SPARC, StorageTec, Java, MySQL... etc etc, que son la empres que más invierte en OpenSource por persona, etc. Ya entrando en el tema de openSolaris, nos han contado que su objetivo es llegar a ser tan amigable como Linux, lo que venía reducido en la frase "Easy to Get-Install-Use-Maintain". Para ello, tenemos liveCDs, un instalador gráfico, el uso de Gnome/Compiz, repositorios de paquetes en la red (Image Packaging System, con unos 4000 paquetes actualmente). Estos paquetes están divididos en tres clases: Community (donde meten las last releases y el software de terceros), Sun (su software) y uno último, de pago, llamado Subscription (donde meten actualizaciones de seguridad, bugs y demas). Han insistido bastante también en que la HCL (lista de hardware compatible) es muy grande y va en aumento. Además, se supone que cuando vas a instalar Solaris, se analiza el sistema y si hay algún driver no soportado, se avisa al usuario y se le indica dónde y cómo puede conseguirlo. Una diferencia fundamental de Solaris con , por ejemplo, Ubuntu, es que está más orientado a unos objetivos comerciales. Por ello, sacarán una nueva versión cada 5 años, pero manteniendo los updates trimestrales: La idea es evitar cambios drásticos frecuentes en sistemas grandes y/o críticos. Después de la introducción, nos han contado las cosicas de las que se sienten más orgullosos: el ZFS, el D-Trace, CIFS incorporado en el kernel, el sistema de repositorios y AMP/MARS. ZFS, que viene siendo Zettabyte File System es, como su nombre indica, el sistema de archivos. Nos cuentan que es el primer sistema de archivos de 128 bits, que es muy escalable y fiable, que la información siempre se mantiene consistente y que no se degrada, que es un sistema transaccional, que las instrucciones son atómicas, que es muy rápido y que por todas estas cosas no necesita file-checks periódicos. Además, nos premite usar algo llamado "atributos" para garantizar un tamaño mínimo, elegir el algoritmo de compresión, el de cifrado, etc etc. Por cierto, han dejado caer que OS X Leopard utiliza ZFS para la famosa time-machine. Todo esto de la consistencia y no degradación de los datos viene dado por algo llamado Copy-On-Write (que crea duplicados del dato y de sus punteros en el espacio libre por si ocurre un imprevisto), otra cosa llamada End-To-End Checksums (que usa checksums de 64Kb separadas de los datos, garantizando que no haya pérdidas de datos ni "escrituras fantasma") y los Solaris Containers (que vendría a ser la virtualización de distintas zonas "estancas" (frente a las zonas globales) e independientes unas de otras, que sólo compartirían el núcleo de Solaris, lo que las haría más eficientes ocupando menos espacio). El siguiente "punto gordo" es D-Trace, quees una herramienta de trazabilidad que usa unas 30.000 "sondas" activables o desactivables por el usuario para optimizar aplicaciones, permitiendo ver cómo responde el sistema operativo de una manera no intrusiva y ligera. Se supone que esto dota de flexibilidad y dinamismo al sistema porque no hace necesario el lanzamiento de un core dumped para ver dónde está fallando. Para acabar con esta primera parte, nos han hecho una comparativa con RedHat. Que el ciclo de vida de openSolaris es mayor, cómo se reparten el mercado, el precio de la subscripción (más o menos igual), el soporte hardware , etc. Después, ha empezado la de OpenSparc. Nos han hablado de las tres línas de procesadores que Sun lleva en marcha. A saber: x86/x64, UltraSparc Sparc64 y UltraSparc CoolThreads, que es lo último que han sacado. Ha comentado un poco el tema de los problemas en los procesadores: la latencia, debida a que la tecnología que desarrola memorias no tiene nada que ver con la que desarrolla procesadores (y cada vez se alejan más), y la velocida de reloj (cuyo aumento necesita un alto consumo energético, y por tanto, mucho calor). También se han comparado las tecnologías de single-threading con las de multi-threading. Como media, las primeras pasan un 85% de los ciclos esperando a la memoria, por lo que sólo ofrecen un 15% de tiempo de uso. Por el contrario, el multi-threading ofrece una media de 85% de tiempo de uso. Entonces, en 2005, a Sun se le ocurrió la idea de juntar CMP (múltiples núcleos) con HMT (múltiples hilos) para obtener lo que llamaron CMT: Chip Multi Threading. De ahí salió entonces el UltraSparc T1 (de nombre Niagara), que a menos velocidad de reloj (entre 1 y 1.4GHz) y siendo mucho más simple que los procesadores comerciales del momento, era capaz de ejecutar más instrucciones. Algunos datos que nos han dado es que ejecuta los threads de 4 en 4, y cada uno de estos grupos en un core (existe en versión de 4, 6 y 8 cores), que el acceso a la memoria es UMA y que consume muy poquito. Como dato curioso, inicialmente sólo tenía una FPU (unidad de coma flotante) lo que obviamente creaba cuellos de botella en aplicaciones que necesitaran usar dicha unidad (esto se arregló para la siguiente versión, la ultraSparc T2, donde metieron una FPU para cada core). A cambio del pequeño fail con la FPU, el sistema era perfecto para servidores web, LDAP y similares, puesto que incluía de serie una cripto-aceleradora embebida. Respecto al ultraSparc T2, como ya dije, arreglaron el tema de la FPU (poniendo una en cada core), aumentaron los hilos a 8 por cada núcleo, y además embebieron el PCI, la interfaz gigabit ethernet y los controladores de memoria, obteniendo así un SOC (System On a Chip) Después, se sacaron de la manga el T2+ (Victoria Falls), también SOC y SMT (simultaneous multi threading), pero con algunos cambios para mantener la coherencia. Y ya que estaban, subieron a 128 threads por core. Para terminar, nos habló de los problemas de estas tecnologías (como la escalabilidad, programabilidad, verificación y desarrollo de software), y nos ha contado algo sobre openSPARc:que es un procesador Open Source de 64 bits liberado bajo la GPLv2, que se pueden obtener los diseños online (wiki.opensparc.net) y que los donan a universidades y cosas así. En este punto de la charla, alguien ha hecho una pregunta interesante: ¿En qué beneficia todo esto del opensource a Sun? La respuesta ha sido que si fuera algo cerrado, se comerían el 100% de la tarta de beneficios, pero sería una tarta pequeña. En cambio, abriéndose y liberando sus cosicas (por ejemplo, Java), consiguen ser más usados y conocidos, y por tanto, la tarta de beneficios crece ingentemente. Y aunque el porcentaje de beneficios que se comen es más pequeño, es ingentemente más grande que la tarta pequeña entera. Vamos, que se supone que todos salimos ganando. Despues, y muy rápido porque ya eran casi las 15.00 (se suponía que acabaríamos a las 14.00), nos han hablado de que tienen diferentes programas para las Universidades: donación de hardware y software (para uso docente o de investigadores), proyectos de fin de carrera, la suite Star Office, cursos de formación gratuita (SAI) con posibilidad de certificación, etc etc etc. En definitiva, una charla interesante sobre un tema, para mi, practicamente desconocido. Aunque se les habían olvidado los CDs de openSolaris que se supone que nos iban a regalar (las prisas...), tenían algunas camisetas e "identificadores para el equipaje" que han repartido entre los que han hecho preguntas y cosas así. Yo no he hecho ninguna, pero al salir uno de ellos se me ha acercado y me ha dado un pack ^^ La camiseta es blanca y XL-hombre (aka gigantesca, me la pondré en verano para dormir xD) con un logo azul grisaceo que pone "Sun, 25 years of innovation" y spam encubierto de AMD64Opteron en una manga. Respecto al identificador de equipaje, es naranja y blanco, con el logo de Java y el de Solaris , lleva escrito "Sun Tech Days, a WorldWide Developer Conference. Innovation Happens Here" y huele a plástico. A mí lo de Sun Tech Days me ha sonado a programar en verano al solanero junto a la piscina, pero no creo que se refieran a eso xD Se supone que enviarán a un profesor las transparencias que han utilizado y él las colgará en su blog para que las podamos descargar (o eso he entendido), así que si a alguien le interesa ojearlas, que me lo diga y cuando me entere de que están disponibles se lo hago saber. Moraleja: Buscaré mi CD de Solaris 10, o en su defecto, pediré uno de OpenSolaris para trastearlo en mi portatil viejo y darle una segunda oportunidad (a Solaris) Ale, me voy a teletransportarme que pierdo el bus. Lo siento mucho si ha sido muy espeso xD Otro bonito capítulo sobre mis prácticas de periféricos, de esos que nadie comenta pero luego cuando nos cruzamos por el campus me rascais la cabeza y me dais las gracias :P Esta no pensaba hacerla todavía, pero por lo visto esta mañana a las 7.00 mis vecinos han considerado divertido poner música a todo volumen (nunca antes odié a Bach) y pasear con tacones (o equivalente). Así que como no podía dormir, y no tenía nada mejor que hacer (en realidad sí, pero no importa), le he dedicado un rato a esta práctica que es muy sencilla. La tabla de vectores de interrupción es un cacho de memoria (concretamente, desde el 0000:0000) en el que se almacenan las direcciones de las funciones o rutinas que atenderán a cada interrupción. Es decir, que cuando se produce una interrupción, se transfiere el control del sistema a la rutina situada en la dirección indicada en la posición de memoria especificada en la posición correspondiente de este vector. Hay 256 interrupciones (la lista está aquí).Cada una, usa 4bytes de este vector: 2bytes para el offset y otros 2bytes para el segmento en que se encuentra la función (no, no me he equivocado: guarda primero el offset y después el segmento). Por tanto, en total la tabla ocupa 1KB. Además, cada interrupción está en la posición indicada por su número: La dirección de la interrupción 0 se encuentra en los 4 primeros bytes, la de la interrupción 1 en los 4 siguientes, etc. En definitiva: el offset de la dirección de la interrupción i se encuentra en el byte tvi+4*i y su segmento en el tvi+4*i+2 (suponiendo tvi el inicio de la tabla de vectores de interrupción, o sea, 0000:0000) Supongamos que no nos gusta la rutina normal de teclado, y queremos una propia que por ejemplo, en vez de escribir el carácter por pantalla, imprima el valor del código de teclado (es decir, el código de la tecla pulsada, que no depende del carácter sino de la posición de la tecla y de si se pulsa o se suelta. Por ejemplo, el ESC genera el scancode 1, el 1 genera el código 2, el 2 el 3, etc etc. La tabla completa está aquí -la Tabla90-). Podría ser algo tal que así: void interrupt rutina_teclado(){ char codigo; } Inciso: Sí, pongo las llaves así, mucha gente lo ve raro pero ... a mi me parece más amigable que ambas en nueva línea. :P La palabra interrupt le indica al compilador que lo que está haciendo no es una función normal, sino una interrupción. O sea, que le está pidiendo al compilador que genere código para salvar y restaurar el estado de la CPU cada vez que se ejecute ese código (esa es la gracia de las interrupciones) Con inport(0x60) lo que hace es leer el scancode de la tecla pulsada/soltada, y el outport(0x20, 0x20) simplemente es el EOI (End Of Interruption), que hace que se salga correctamente de una interrupción. ¡Debemos usarlo siempre para terminar una interrupción! Bueno, obviamente, esto así solito, en el limbo de los códigos, no tiene mucho sentido, así que tendríamos que modificar la TVI para que cada vez que pulsemos una tecla, vaya a nuestra maravillosa rutina en vez de a la normalita. Como ya sabemos, la interrupción de teclado es la 9, así que lo que nos interesa está en esa posición (O sea, necesitamos un punterete hacia MK_FP (0 , 9*4)). Lo primero, antes de romper nada, es guardarnos la dirección de la rutina original. (Aunque si se rompe algo, que no panda el cúnico: basta con cerrar y abrir nuestro maravilloso emulador de DOS). Para ello, guardamos en un par de variables el offset y el segmento, que como dije antes, están respectivamente en los dos primeros y dos siguientes bytes de 0 , 9*4. Lo siguiente es modificar la posición de la tabla que nos interesa y decirle que ahora tiene que apuntar a nuestra rutina. El identificador de una función es en realidad un puntero a la misma, así que se convierte en algo tan simple como lo que sigue: asm cli; Es importante desactivar la llegada de interrupciones antes de cambiar nada. ¿Os imaginais la super catástrofe que sería que se produjera una interrupción de teclado después de haber cambiado el offset pero antes de haber modificado el segmento? ¡Eso sí que sería una fieshta! Podemos hacerlo con instrucciones en ensamblador: asm cli (desactivarlas) y asm sti (activarlas), una vez que se han modificado. Cuenta la leyenda que también se puede usar disable() y enable(), que están incluidas en dos.h . . . pero yo no las he usado así que no prometo nada. Y una vez cambiado esto... ya podríamos casi decir que está todo hecho. Eso sí: En el tremendamente abierto "hacer cosas" de la rutina es bastante interesante configurar un caracter "de escape", para que cuando se detecte una determinada tecla pulsada, se salga de la interrupción restaurando la rutina original (y así además te ahorras tener que cerrar el DOS para poder usar el teclado normalmente xD). Pero eso lo haceis vosotros: no os lo voy a dar todo mascadito :P Fail típico 1: poner un while(salir==false) dentro de la rutina. Esto es absurdo, porque la rutina se invocará SIEMPRE que pulse o suelte una tecla, así que el bucle no me hace falta. Fail típico 2: llamar explícitamente a la función. ¡No hace falta! Vendrá ella solita cada vez que pulses una tecla. Ale, espero que os haya servido de algo, y si no es así... al menos a mi me ha servido para "afianzar conocimientos". Acepto comentarios, mails y tabletas de chocolate :P Os dejo con la típica captura de rigor: En ella pulso las teclas M O T A en ese orden. Si pinchais en la imagen y la veis en flickr, le he puesto notitas explicativas ^^ Por cierto, fe de erratas del artículo sobre Modificación de los patrones de bits de los caracteres: Comprobé una vez más el ejecutable sobre cmd, y resulta que no funcionaba por la simple razón de que no lo tenía configurado en el modo 80x25 y en pantalla completa. En cuanto lo cambié, comenzó a tirar. Cosas que pasan XD [Capítulo anterior: Acceso a ROM para obtener los patrones de bits de los caracteres] Hace unos días os conté cómo acceder a ROM (la BIOS de toda la vida) para coger los patrones de bits de los que están formados los caracteres que se escriben en la memoria de video. Esto puede ser divertido, pero... también un poco estático, ¿no? El experimento ganaría en posibilidades si pudiésemos modificar esos patrones para crearnos nuestras propias fuentes. Vale, sí, sería una cosa muy artesanal y a bajo nivel, bit a bit y todo eso, pero... ¿acaso teneis algo mejor que hacer? xD Yo no voy a crear aquí un juego de fuentes entero porque no estoy tan enferma (de momento), sino que me voy a conformar con ponerle una rayita encima a la letra A (sí, igualito que en el enunciado de la práctica 4 de Periféricos, soy poco original). Así, de primeras, no podemos modificar los patrones de bits porque están en ROM, que como su propio nombre indica, es Read Only Memory. Así que el primer paso es copiar esa lista de 256 caracteres * 16 bytes/caracter de la ROM a la RAM. ¿Como? Creando una variable char* de ese tamaño (con malloc), y asignándole byte a byte el contenido de la variable (también char*) original que contiene la lista de patrones en la ROM (esto lo expliqué aquí) Ahora, puedo añadir todas las modificaciones que desee, puesto que mi tablita ya está en memoría escribible. Como dije, añadiré una rayita sobre la A. Puesto que la A es el carácter 65, avanzo hasta su posición. Los 8 siguientes bytes son cada una de las "filas" de pixeles de las que está formada la A, así que como quiero la rayita ENCIMA de la A (en el primer byte), no necesito desplazarme "hacia abajo" (sumando entre 1 y 8 al desplazamiento de 256*16): *(listaRAM+65*16)=255; 255 es en hexadecimal lo que en binario viene siendo 11111111, o sea, en el idioma de los pixeles (xD) una línea. Ahora que ya tenemos nuestra lista con la modificación, lo que queremos es decirle a la tarjeta dónde está el nuevo juego de carácteres, para que "olvide" el viejo y use el nuestro (modificado). Esto tenemos que hacerlo con interrupciones en ensamblador, o sea que necesitareis un TurboAssembler o equivalente. El código sería el siguiente: asm push ax; Ese cacho de código viene siendo una llamada a palo seco a una señora interrupción software. En primer lugar, guarda los registros del procesador en la pila (push). Luego guarda en AX, BX, CX y DX los valores predeterminados para "decirle" a la interrupción qué es lo que quiere. Después, se llama a la interrupción en sí con "int" (la interrupción 10h, con 1100 en AX, que es esta), y finalmente devuelve a su sitio los registros del procesador (pop), para que pueda seguir su curso. Y "asm" indica al compilador que lo que sigue es ensamblador, así que con eso llama al TurboAssembler. Tras compilar y linkar, ejecutamos, y esto es lo que obtenemos: Todos los caracteres "A" de la pantalla se convierten en "A con palito" (aka "A customizada") hasta que hacemos un cls. ¿A que mola? ^^ Un par de fotos del "antes" y "después" de la operación: Por alguna misteriosa razón, funciona perfectamente sobre DosBox, no así con el símbolo de sistema (cmd). No me pregunteis por qué, pero llevo una semana volviéndome loca con esto, así que antes de moriros de asco... probadlo con DosBox xD (A mí la idea me la dio el profesor, porque hasta este momento había estado usando cmd) No he probado con otros emuladores, pero si alguien se ha aburrido y lo ha hecho, podría darnos feedback :P ¡Ay qué bonicas son las prácticas de Periféricos cuando comienzan a funcionar! Ya os comenté el otro día cómo acceder a memoria de video y juguetear con ella, y el tema de hoy está bastante relacionado con ello (siempre basado en TurboC sobre MS-DOS, si usais otros compiñadores compiladores y no tira... no es mi culpa :P) Bueno, resulta que cuando escribimos un carácter en la memoria de video, por ejemplo, la ’M’ de motagirl, no estamos escribiendo en realidad esa M, sino un 77, que es su código ASCII (podeis consultarlos todos aqui). En realidad, para lo que sirve ese 77 es para indexar una tabla presente en la BIOS, donde se encuentra un patrón de bits para cada carácter (1 indica pixel relleno, 0 indica pixel vacío). La tabla tiene 256 carácteres,y cada carácter consta de 16bytes, siendo la M tal que así: (Si os alejais un poco se ve algo mejor) ¿Y cómo podemos acceder a la tabla? La dirección nos la puede dar una función de la BIOS. Para invocarla, es necesario poner unos determinados códigos en los registros de la CPU (ax: 0x1130, bx: 0x0600), llamamos a la función usando una interrupción software (para la Bios de video, la 0x10) y esta amablemente nos dejará los valores deseados en otros registros de la CPU (es: segmento, bp: offset). Para ello, creamos una estructura de tipo REGPACK, a la que llamaremos rp y que actuará como pseudoregistros (y que no se nos olvide el #include del dos.h :P) : struct REGPACK rp; Y esto nos dará , como dije antes, la dirección de la tabla de patrones de bits de los caracteres, con el segmento en ES y el offset en BP. Ahora sólo necesitamos montarnos nuestro punterillo a dicha dirección: char* lista = (char *)MK_FP(rp.r_es,rp.r_bp); Y ya tenemos nuestro puntero mágico apuntando al inicio de la tabla.¿Y para acceder a una posición concreta? Bueno, supongamos que quiero ir a la letra M, a la que, como dije antes, corresponde el código 77. Pues simplemente tendría que "saltar" los 76 caracteres anteriores, a 16 bytes cada uno. Podría hacerlo así: lista = (lista+77*16); Con eso estaría apuntando al inicio de los 16*8 bits de los que consta el patrón de la M. (Nótese que estamos usando un puntero a char, es decir, que cada vez que avancemos una posicion (por ejemplo, lista= lista+1) estaremos avanzando 8bits)¿Y cómo "pinto" el patrón de bits? Esto ya es más chispeante ^^ Necesitamos crearnos una bonita función o equivalente que devuelva un determinado bit (0 o 1) de un char (1byte, 8bits). Un ejemplo de cómo hacerlo podría ser esto: (*p & (1<>n; que devuelve el enésimo (n) bit de un char* p, usándo máscaras y desplazamientos. Entonces, para obtener (por pantalla,o a un archivo) el patrón de bits, simplemente debemos apuntar a la letra deseada (lista = (lista+77*16);), y recorrer sus 16 filas mostrando bit a bit las 8 columnas (las columnas en orden decreciente, por que si no sale como reflejado en un espejo). Dicho así queda un poco raro, pero en realidad cada carácter no es más que un churro de 16bytes que tenemos que sacar por pantalla en cachos de 8 en 8 bytes. Si alguien tiene curiosidad, he subido un archivo con el volcado de todos los patrones aquí. (Hecho a base de un bucle de 256 (caracteres), otro anidado de 16 (filas) y otro más anidado , de 8 (columnas)) . Los primeros treintayalgún patrones no tienen mucho sentido porque son caracteres no imprimibles, las letras ·de verdad"se ven más claras :) En breve (aka cuando lo termine xD) colgaré otro post explicando cómo pasar esa tabla a RAM, modificarla con tus propios caracteres customizados, y toquetear las interrupciones para que los patrones usados sean los tuyos y no los de la BIOS :) [Siguiente capítulo: Modificación de los patrones de bits de los caracteres] Super Oferta Yecla is different Desgraciadamente, la foto es real. Está tomada en la juguetería más céntrica y tradicional de nuestra ciudad, no digo el nombre pero ya todos sabeis cuál es. Hace un par de días sufrí en propias carnes algo que nadie jamás me había explicado hasta ese momento: La diferencia entre los punteros near y los punteros far. Resulta que un puntero far ocupa cuatro bytes porque guarda el segmento (2bytes) y el offset (otros 2bytes), mientras que un puntero near sólo ocupa dos bytes porque sólo guarda el offset.¿Qué significa esto? Que con un puntero near NO puedes acceder a otro segmento distinto al que estás usando. Curioso... (Para los que no sepan de qué hablo: un puntero es mas o menos como una variable, pero en vez de guardar un valor (’2’, ’3’, "patata") guarda otra dirección de memoria (04E6,0000 por ejemplo)). Otra cosa importante es el modelo de memoria elegido. Esto representa el modelo de "cómo" accederá a memoria el compilador. En TurboC podemos elegir entre Tiny, Small, Medium, Compact, Large y Huge. Estos se diferencian en los tamaños de los segmentos de código, datos y pila, y en el tipo de los punteros. Podría explicarlo en modo texto pero se ve más claro en una tabla: 1Mb Por ejemplo, el modelo Medium se utiliza para programas pequeños que utilizan pocos datos, al contrario que el Compact, que es usado para programas pequeños que utilizan gran cantidad de datos. Como ejemplo de lo "importante" (pasad por alto la trivialidad del programa de ejemplo xD) que puede llegar a ser esto (habérmelo leído antes me hubiera ahorrado una tarde de programas con comportamientos erráticos), os expongo el ejemplo que me trajo de cabeza a mí. Resulta que el compilador que usamos para esta asignatura, Borland TurboC (sí, algo actual y todo eso) sobre MS-DOS (idem) viene por defecto con el model Small. Y claro, para esto necesitabamos como mínimo Compact (aunque vamos de sobraos y lo recomendado era Huge) El programa en cuestión consiste en acceder a la memoria de video y escribir directamente en ella para crear un rectángulo con un carácter y todas las variantes de color de carácter y color de fondo. El acceso a la memoria se realiza mediante un puntero, tal que así: char *p = MK_FP(0xB800, 0x000) donde MK_FP indica que queremos un puntero far (FP,Far Pointer) y 0xB800, 0x0000 indica el inicio del segmento 0xB800, que es el de video. Así que, nos ponemos manos a la obra y compilamos/enlazamos/ejecutamos con varios modelos de memoria (esto se puede cambiar desde Options/Compiler/Model en el TurboC) -Tiny, Small y Medium: Los "efectos" son variados, desde un warning al compilar ("Conversión sospechosa de puntero"), warning al enlazar ("No hay pila"), error al ejecutar ("Instrucción no permitida") hasta autoabortos: Bueno, al menos no me salta el antivirus como hace un par de años xD -Compact, Large y Huge: Ahora sí que se está accediendo al segmento "bueno" por ser un puntero far, y el resultado es justo el que esperábamos: ¿A que es mono? Pues casi lagrimeo un poco cuando descubrí que mi código era bonito y maravilloso pero que el error estaba en el modelo de memoria elegido. Ahora seguro que ya no se me vuelve a olvidar :D (Robado a Vladek) Parodia de Womanizer (de Britney Spears) realizada por Venetian Princess al más puro estilo "mujer sexy busca nerd". Por cierto, la canción original (la de Britney) no está mal del todo, y se pega que da gusto :/ Dentro video! I’ve always had a thing for Star Trek Conventions I fantasize about the Michael Phelps of Ping Pong He’s a Womanizer, womanizer, womanizer, womanizer. He’s got me rocking He’s highly skilled in the art of drawing anime I dream of him hooking up my ethernet cable He’s a Womanizer, womanizer, womanizer, womanizer. Don’t need a jock Baby, Baby, womanizer! Siempre sentí algo por las convenciones de Star Trek. Fantaseo con el Michael Phelps del pingpong, Es un mujeriego, mujeriego, mujeriego, mujeriego. Él me da caña, Tiene grandes habilidades en el arte de dibujar anime, Sueño con él montando mi cable ethernet, Es un mujeriego, mujeriego, mujeriego, mujeriego. No necesito un atleta, Baby, baby, mujeriego! Lo dije, lo diré , y lo mantengo: ¡cómo molan los crossovers! Este es obra de un tal canecodesign de deviantart. Y por si todavía no lo habeis pillado (¡herejes! ¡Fuera de este blog!) es un combo del juego Patapon para PSP (del que soy una encantada poseedora) y de la película 300. Si todavía seguís con hambre, también existe combo Patapon-300-LocoRoco en este enlace. Y especialmente dedicado para Noe/Yuneta... ¡el iPatapon, cruce de Patapon e iPod! xD Basado en la guerra del bus ateo contra el bus evangélico, llega.... ¡tu propio bus! Y no solo eso, sino que Juanan es un sol y genera MI propio bus personalizado: ¿A que Juanan es un chico majo? Sólo le falta tener un blog o algo a donde enlazarlo (indirecta) Todos podeis crear vuestros autobuses en esta página. Y si me dejais un link en los comentarios, lo mismo me animo y los subo para que estén todos juntitos y podamos montar una empresa de transportes. (Por cierto, la frase "por defecto" es: "There’s probably no cod. Now stop complaining and eat your sardines". (Probablemente no haya bacalao. Ahora deja de quejarte y comete tus sardinas). Grande! ) Ahora resulta que si tienes un modem de 56 k .... ¡tus descargas tardarán menos que si te conectas con ADSL! Genial. El mundo al reves xD Me ocurrió en la página de descarga de software de MSDN (Microsoft Developer Network). Sí. Hace muchos muchos muchos años cometí el error de crearme una base de datos en Access y ahora me da pereza migrarla a MySQL :P OMFG. ¡Existe! Por lo visto es una creación de un tal David Faller, que se dedica a hacer muñecotes blanditos, y la puso a la venta en ebay (y la vendió por 107$, ni mas ni menos :O ) Esta es la descripción (traducida) de sus características, según la página web: El hijo ilegitimo de Domo Kun y Hello Kitty, Domo Kitty consiste unicamente de los mejores elementos de la exportación mayoritaria de Japón: adorabilidad. Podeis ver fotos de Domo Kitty desde todos los ángulos en este set de Flickr. ¡Los chicos de Microsoft son unos chistosos! (aunque también puede que sea casualidad... ) ¿Sabeis cuál es el fondo de escritorio por defecto al instalar la versión beta de Windows 7? Este: (la foto es de EnigmaTres, donde hay un completísimo reportaje fotográfico sobre dicho SO) ¿No le veis la gracia? Ains, cómo se nota que no teneis pescaditos en casa.... El pececito tan mono que protagoniza el fondo es un Betta Splendens, aka Luchador de Siam, aka Beta Combatiente. ¿Lo pillais? ¡Un beta para windows beta! Qué chispa xD Por cierto, se llaman betas combatientes porque los machos se pelean entre ellos hasta que sólo queda uno... y las hembras no lucen tanto porque no tienen las aletas tan grandes y colores tan vivos. Lo cuál es una pena porque técnicamente sólo puedes tener uno de estos cada vez ... ¿Se peleará Windows 7 con los otros windows? schan chan Encuentro en BussinessPundit una colección de cómo serían los logotipos de algunas empresas conocidas si tuvieran que cambiarlos tras la crisis: Citigroup, Xerox, Ford, LG, Nike, Best Buy, Ferrari, Cisco Systems, Dow Jones, Yahoo!, GoodYear, Nokia, Dell, Chrysler, 3M y Apple. A continuación pongo mi pequeña selección: - Xerox: - Ford: -LG: - Best Buy: - Ferrari: - Apple: Si a un mismo usuario de un mismo roscón de reyes le sale el haba (que indica que tiene que pagarlo) y la figurita del rey (que indica que no tiene que pagar), ¿es una paradoja como la del gato de Schrödinger? Vale, mis profesores de Programación Orientada a Objetos son oficialmente unos frikis xD Atención al código del corrector de la práctica2 (sólo copypasteo los cachos interesantes :P) // Creamos la especialidad, sus habitaciones y sus médicos: Y ya de paso, el mensajito navideño que sale al ejecutarlo tampoco tiene precio: Running 50 tests<~~~ (:> F3L1Z N4V1D4D <:) ~~~>.................................. WARNING PARA ALUMNOS: Por cierto, chavales, al ejecutar evalua.sh se borraran los directorios include, lib, y src del directorio donde esté. Así que llevad cuidado no vayais a perder todos los fuentes con sus modificaciones. Adivinad a quién le ha pasado. Efectivamente,a mi. Menos mal que eran una copia de los originales, así que "sólo" he perdido el trabajo de una tarde. (Fotos de la epic-fieshtaca con bizarro invisible de anoche en breve -esperemos-) ¡Sorpresa! Microsoft saca su propia linea de camisetas, Softwear, dividida en dos colecciones: Classic y Common's. No tienen muchos diseños, pero lo mejor (y más extraño) es que... (para algunas) ¡puedes descargarte la plantilla con el diseño para fabricarte la camiseta tú mismo! Increíble. Y encima tienen nombres carismáticos. En la colección Classic: - The DOS Tangle: The first logo you saw on a screen. (La Maraña de DOS: El primer logo que viste en una pantalla) - The Misdemeanor: Everyone deserves a second chance. (La Infracción: Todo el mundo merece una segunda oportunidad) - The 101: Learn to speak the language. (La 101: Aprende a hablar el lenguaje) - The Albuquerque: It all started in the desert. (La Albuquerque: Todo empezó en el desierto) En la colección Common's ("coproducida" con el rapero y actor Common) - The Reminisce: 1985: Word is born (La Evocadora: 1985, nace el Word) - The Creator: The Code of Hip Hop (El creador: El código del hip hop) - The Giver: The Real Message (El dador: El auténtico mensaje) - The Vision: The Boss Sees Clearly (La visión: El jefe lo ve claro) Reconocedlo chicos: a veces hacen cosas guays... ¡casi tanto como el Solitario! (y yo tengo que confesar que la de MSDOS me encanta xD) En principio, parece ser que pueden comprarse en Urban Outfitters, pero sólo aparecen dos modelos... (Por cierto, saludos a todos mis compañeros de la UA que hayan llegado hasta aqui buscando en google "Ramificacion y poda asignacion de turnos", que no son pocos xD) Muy en la línea de "cómo decir de forma rebuscada algo más simple que el mecanismo de un botijo" (¿recordais la Ley de Rendimientos Decrecientes?), acabo de encontrar esta definición del principio de optimalidad de la Programación Dinámica: Un problema de optimización cuya solución se puede expresar mediante una secuencia de decisiones cumple el principio de optimalidad si, dada una secuencia que corresponde a la solución óptima, se cumple que cualquier subsecuencia de esa solución corresponde a la solución óptima del subproblema asociado. Está clarisimo, ¿verdad? Seis veces me lo he tenido que leer :P (Por cierto, la forma "clara" de decir eso mismo en castellano es "Si el camino de A a C es óptimo y contiene el subcamino de B a C, este también es óptimo) Versión 2.0 grafico-textual de la felicidad: Acabar la práctica de POO... ¡con más de una semana de antelación! (por cierto, en la anterior tuve un encantador y nada desdeñable 8.6) a) 50/50 tests ok =D b) 0 errores de valgrind, 0 fugas de memoria :3 Dicho esto, me encantaría poder decir algo así como "ya soy libre" o "wow, voy a tomarme un tiempo de descanso", pero no, tengo dos exámenes, otra práctica y un proyecto final de Diseño y Análisis de Algoritmos. Y como me va la marcha, no podía cogerme uno de los proyectos facilmente encontrable (su pseudocódigo) en google, o libros o algo. Nooooo. Me he cogido (con un par) el único problema que se han inventado en mi universidad, así que me toca tipificar y diseñar mi propio algoritmo de Ramificación y Poda aplicado a un problema de asignación de turnos por preferencias. Y el soplido que ha emitido mi profesor cuando le he dicho que había elegido este, no era nada esperanzador xD En fin, que cuando lo tenga terminado, entregado y mi nota en el expediente, os contaré la gran fumada xD No, no tengo un iPhone, y no, probablemente no es esto lo que esperabais pero... es terriblemente cierto. ¿O no? Como ya sabeis, ayer estuve en el evento sobre Star Wars que hubo en Cinem Paradiso (la tienda de cine que hay en el edificio de FNAC Alicante). Os dejo algunas de las fotos que tomé, podeis encontrar todas aqui. Encantador Darth Maul en miniatura que encontramos en la tienda, nada más llegar. Los troopers van bajando por las escaleras mecánicas... El Darth Maul en miniatura de arriba , junto con un Anakin Skywalker tambien en miniatura. Peibol con un stormtrooper. De fondo se ve un cacho de un sandtrooper. Yo misma con un oficial y un piloto. ¡A mi me daban dos! El oficial y el piloto de la foto de arriba deteniendo a Peibol. ¡Es un rebelde! ¡A por él! Mini-Anakin, stormtrooper y yo. El trooper era el papá del niño. Intimando con Boba Fett. Debían estar asados porque emitían calor. La foto wtfesca del día: el stormtrooper en la cabina. ¿En Alicante y sin plan para el fin de semana? Pues el viernes a las 19.00, en Cinema Paradiso* ponen cortos de Star Wars, y ademas el sábado a partir de las 17.00 contarán con la presencia de la Legión 501!!! Wooohoo, yo no me lo pierdo! :D (* Es la tiendecilla de cine que hay dentro del edificio de la FNAC) ¿A que es una monada? Es un cubee de Frank (de Donnie Darko, mi peli favorita) hecho y regalado por Antonio/Taxis :) Los cubees son recortables de cartulina que tienen una caracteristica especial: ¡no hace falta pegamento para montarlos! Podeis descargar la plantilla desde su pagina en DeviantArt, y encontrar muchos otros más: TaxisFlashDude ¡Gracias Antonio! =^_^= O, basicamente, cómo sería el Facebook de Dios. Suponiendo que existiera y todo eso. (porcierto, me encanta la parte de los dinos xD) Ah.. deliciosa herejía... (visto en chistesgeeks) Transformada de Fourier en el límite: Dícese del equipo de ingenieros en Telecomunicaciones que hacen transformadas de Fourier mientras se tirar en parapente desde la cima del Everest. (inspirado por mi clase de Señales y Sistemas de hoy) Mirad qué chispa tiene el tipo que escribió el manual de comandos especiales de doxygen. Esto puede encontrarse en la parte referente a la etiqueta author: Lo que en castellano viene a ser: Ooops... perdón perdón, NO ese Intrepid Ibex, sino este otro: Atended, os contaré mi historia: Jueves, 30 de Octubre 2008 - Ubuntu Intrepid Ibex ya está entre nosotros, y así me lo comunica el gestor de actualizaciones. ¡Hey! ¡Mola! ¡Upgradeemos! Le doy la orden, y actúa en consecuencia: Buscar paquetes, borrar los que ya no le valen (un tal landscape-client, el flashplayer y .... los drivers de la NVIDIA) instalar, blablablá, limpiar. Y ahi se queda. Colgado. Colgadísimo. Mucho rato. Busco en google y descubro que es aparentemente normal, que todo está acabado peeeero se le va la olla y no se cierra. ¿La solución? Cerrar a mano (no hay botón cancelar, por supuesto) Guay, cierro, reinicio (que supuestamente era lo que faltaba) y hey... Veo algo raro! Es.. es la resolución! Bingo:mi encantador pc es incapaz de sacar más de 800x600. Voy al gestor de Controladores de Hardware, y , efectivamente, hay un paquetito de drivers majetes de NVIDIA que están siendo bloqueados por ser software privativo (lo típico), marco "habilitar"... y espero. No me deja habilitarlos (sí, era superuser,sí). La primera en la frente. Bueno, me dije, que no cunda el pánico. Sigo mirando cosillas... hasta que veo algo preocupante en el acerca-de: "Ubuntu Hardy Heron". ¡¿Cómo?! Si acabo de upgradear! Vuelvo a ejecutar el gestor de actualizaciones y veo que, aunque supuestamente sigo estando en Hardy, todos los repositorios han sido "actualizados" para Intrepid. ¿Mande? El caso, le digo que si, que updatee todo lo updateable, y se ofrece a descargar 800 MB. "Vale", pensé, "esto tiene sentido". Pues lo dejo descargando/instalando/configurando cosas y me voy al gimnasio. Cuando vuelvo, aparentemente no ha habido problemas con la instalación y me está pidiendo otro restart. Se lo doy, y empiezan los líos. Por lo visto no cierra bien sesiones y me aparecen "unas sobre otras", cuando cierro unas las otras se abren y cosas raras. Consigo apagar, y cuando enciendo... ..."Undefined Video Mode 21b" WTF?! Ya ni el modo terminal me respeta, increíble... Selecciono un modo al azar, y cuando se cargan las X... ¡¿QUÉ DEMONIOS ES ESTA RESOLUCION DE MIERDA?! ¡No va más allá de 640x480! Esto es increíble, no puedo ver ni la cuarta parte de cada maldita ventana T_T Descargo los controladores de la NVIDIA de su propia página web. sudo sh NVIDIA-blablabla.pkg1.run. "You appear to be runing an X server; please exit X before installing" aka "Zas en toda la boca" . Pues nada majo, ¿que lo quieres sin entorno gráfico? Pues como tu quieras, si a mi me da igual. Me voy a una consola, supuestamente cierro las x, pero nada aquello no tira ni para atrás, cada vez tira un error. Vuelta escarbar en google. Leo sobre un programilla llamado ENVY, que detecta tu tarjeta NVIDIA, instala los controladores apropiados y además los configura. Oye, esto ... mola, eh? Instalo ENVY, supuestamente hace lo que debe hacer... y nada, restart again. Tachán... ahora puedo poner hasta 800x600, uoo!! Me siento ochentera a tope, es una super mejora! (odio contenido) Inesperadamente, el gestor de actualizaciones me da un aviso, tiene algo para mi. ¿Habrá tenido sentido algo de lo que hice? Y ahora viene la gracia: Errr... ¿Cerrar? Respuesta del sistema (dramatizacion): "Hola, hay chorrocientos paquetes que podrías actualizar.. pero mira, te los enseño y no te dejo instalarlos...ni siquiera seleccionarlos!!" Bueno, pues.... ¿Actualización parcial? What the elf? Finalmente, me permite instalar DOS paquetes, ambos relacionados con jockey-gtk (el gestor de controladores de hardware del que hablé arriba). Lo actualizo y... tachán, deja de funcionar. Ahora ni siquiera se abre, ni en modo gráfico ni invocándolo desde una terminal. Y en esas estamos: ni para alante, ni para atrás. ¿Qué puedo hacer? En principio pensé en hacer un downgrade "casero y manual": cd de la 8.04 y chafar esta bazofia que ni es una versión ni otra xD Aaaaaunque no tendría gracia perder todas las configuraciones y eso... pero en fin, más se perdió en la guerra. Cualquier otra idea, elefante volador y/o helado de chocolate será bienvenido. Y a los que hayan llegado hasta aquí.. un frigopie por su paciencia xD EDITADO: Unos 15 minutos despues de escribir esto apago, enciendo.... y FUNCIONA. Acojonante. Mi resolución vuelve a ser de 1200x800. Eso sí, del jockey-gtk ni rastro. Y lo de las actualizaciones tampoco tira. Pero... al menos puedo trabajar. :D EDITADO 2: Vale, como siempre, es postear y arreglarse xD Gracias al caballero enver555, que me dio sabios consejos tal que sudo apt-get install ubuntu-desktop sudo apt-get update sudo apt-get dist-update todo ha ido a pedir de mota, se ha arreglado a sí misma, y ya es una Intrepid Ibex purrrrfect :D Pues sí, señores, señoras... a falta de conciencia propia y buenos hábitos, he decidido instalarme una externa: QToDo. QToDo es un ToDo List Manager. O sea: un software al que yo le digo las cosas que tengo que hacer (exámenes, entregas de prácticas,..), el plazo del que dispongo, la prioridad y el estado de la tarea... le doy unos criterios para ordenar esa lista (por ejemplo, plazo más corto y prioridad más alta primero).... y él me dice un orden para realizarlo! Es genial! Aquí os dejo un par de pantallazos del modo "completo" (programa abierto, para añadir y editar eventos) y en el modo "vista rápida", guardadito en su panel. Si te parece interesante, que yo sepa está solo para linux, pero seguro que hay mil opciones más para otros sistemas) Explicación práctica de la recursividad y/o dependencias circulares: Mota: ¿De dónde te bajas los capítulos de Detroit Metal City? Aoyama: Por descarga directa de la página del fansub. Mota: ¿Y cuál es el fansub? Aoyama: Bájate un capítulo y las letras esas que salen a la derecha abajo. Mota: Ya, pero de dónde lo bajo?! Aoyama: De la página del fansub! (ad infinitum) Adivine, en menos de dos minutos, dónde está el fallo (clic aqui para ver en grande, clic en la imagen para pistas). ¿A alguien más le ocurre eso? O_oU El chiste del día, recibido por privado de outime a través de Jisko: Van 1023 terabytes juntos y se encuentran un terabyte solitario, que se acerca y les dice... "hey, nos juntamos y nos hacemos un peta?" Awesome! (ayuda) Después de unos días intentando explicar esta tira, y confirmada mi nula gracia para contar cosas graciosas, he llegado a la conclusión de que acabaré más rápido si la cuelgo directamente que si sigo intentando contarla xD Es de xkcd, que recordareis (espero) de otros summums del graciosismo frikil (¿o frikismo graciosil?) como, por ejemplo, Fetishes. Esto lo ví en una foto de tuenti (si, he dicho tuenti, si), y como me pareció carismático, pues ahí va. (Y quien dice "teleco", dice "informática", "Ingeniera industrial", etc xD) Complementos de la mujer universitaria vs Complementos de la mujer teleco Mujer Universitaria: Maquillaje y pote para la cara (nunca se sabe cuándo el chico de sus sueños puede invitarla a tomar una Coca-Cola Light en la cafetería de la facul) Mujer Teleco: Vaselina u otros lubricantes (nunca se sabe cuándo el profesor de sus pesadillas puede petarle el culete con un examen sorpresa) Mujer Universitaria: Cuerdecitas de muchos colores para hacerse unas trencitas guays a lo Lucrecia por si se aburre como una ostra en clase. Mujer Teleco: Cables de colores para poder distinguir el follón de señales que tiene montado en la placa. Mujer Universitaria: Carnet universitario por si a última hora se entera de que hay una fiesta y tiene que demostrar para entrar que es estudiante de la universidad. Mujer Teleco: Carnet universitario para poder sacar manuales y cables de bus del laboratorio. Mujer Universitaria: Algo de dinero suelto por si en el último momento una amiga le anima a saltarse las clases para tomarse un piscolabis en la cafetería. Mujer Teleco: Algo de dinero suelto por si en el último momento se quema un chip y tiene que ir a Electrónica del Futuro a que le claven. Recién salido del horno de mi práctica de Señales y Sistemas: MATLAB no se aclara consigo mismo... (Parte I - Unpacking e Instalación de Windows XP) Bien. Sábado por la mañana, he dormido de maravilla, tengo un sandwich de nocilla en la mano y mucho karma positivo. Todo parece correcto para continuar con la operacion. Inserto el disco de Ubuntuu 8.04, y comienzo con la instalación (antes hago una verificación de disco y un chequeo de memoria). Elijo el particionado manual. Hay: - /dev/sda1 (fat 16) -131 MB - /dev/sda2 (ntfs) - 52427 MB (Windows xP ) - /dev/sda3 - 20974 MB - /dev/sda6 - 326543 MB Formatearemos la sda3 como "sistema ext3 transaccional", estableciendo el punto de montaje " / ". Necesitamos, además, una partición de intercambio (swap). ¿Qué tamaño debe tener? Si la RAM tiene menos de 1 GB, la swap debe ser del mismo tamaño. Si la RAM es de entre 2 y 4 GB, la swap debe ser más o menos la mitad de ésta. Y, como mucho, el tamaño máximo que debería tener una partición swap es 2 GB, porque no siempre el sistema será capaz de manejarla. En mi caso, le daré un tamaño de 1GB, así que le "quitamos" un cacho a la sda6 para crear una partición lógica sda5 al final, que formatearemos como espacio de intercambio. La particion de 300GB, la sda6, la formatearemos más adelante como ntfs desde windows. La tabla de particionees queda tal que así: - /dev/sda1 (fat 16) -131 MB - /dev/sda2 (ntfs) - 52427 MB (Windows xP ) - /dev/sda3 (ext3) - 20974 MB - /dev/sda6 - 325540 MB - /dev/sda5 (swap) - 1003 MB Aceptamos todo, pide reiniciar.... y ahi lo tenemos: grub se ha configurado a sí mismo y podemos entrar sin problemos a windows y ubuntu :) Ahora bien, ¿qué pasa con esos 300 gigas que se han perdido en el limbo de los discos duros? Pues nada, hacemos uso de gparted y los formateamos como fat32, para poder acceder a ellos desde windows y formatearlos como ntfs (si, es una solucion cutre pero es la unica que se me ha ocurrido :P) Desde windows, vemos una unidad C de 52 GB y una unidad D de 303 GB. Creo un par de archivillos desde cada SO en la particion de 300, para comprobar que efectivamente funciona bien, y listo! Ahora, el modo pijadilla para que la particion de windows y la de datos se monten al iniciar: instalar (sudo apt-get install) ntfs-3g, fuse-utils y ntfs-config. Desmonta ambas particiones si estaban montadas. Ahora, entra Aplicaciones > Herramientas de sistema > Herramienta de configuración NTFS > Activa el soporte de escritura interno y externo> escribe un punto de montaje (rollo "/media/Datos" y "/media/windous") y a correr. El siguiente paso, comprobar que todo funciona correctamente. Una vez que estamos seguros de que todo está en su sitio y que no vamos a necesitar formatear o toquetear cosas raras, ya podemos empezar con las cosas divertidas: instalar software y customizar ambos sistemas. Y después, a meter los datos del antiguo pc :D Otra pijadilla: Por defecto, Windows alojará Mis Documentos en la misma partición que él está instalado. En teoría esto no es lo que queremos puesto que la partición de 300 GB está para eso, para los datos (música, fotos, documentos etc). Para indicarle que la queremos en otro sitio, vamos Mis Documentos, hacemos clic derecho > Propiedades. En el campo Destino, indicamos "D:Mis Documentos" , aceptamos y ya está listo :D Y ale, si todo ha ido bien, Perseo y Aleph estarán preparados para poder sustituir a Adel y Sirio :) (Dell XPS M1330 - Parte I - Unpacking e Instalación de Windows XP) Bueno, esta "Parte II" de mi aventura con el M1330 va dedicada a los controladores y a Windows XP. Debido a que Dell no ofrece soporte de ningun tipo para XP con los XPS, hay que buscarse un poco las castañas para encontrar algunos controladores. Me he tirado todo el día de foro en foro y de tutorial en tutorial para conseguir todos los drivers que necesitaba, he visto errores de todos los colores y he reiniciado unos seis millones de veces. Especialmente, los más chungos de encontrar han sido los de la gráfica (una Nvidia GeForce) y los de audio (la página del fabricante ni siquiera existía), pero tambien ocurrían cosas curiosas, como controladores que supuestamente estaban instalados pero los dispositivos no tiraban, o dispositivos no identificados, o "comportamientos erráticos". Finalmente, he elaborado una lista con los controladores que a mi me han funcionado y un par de tutoriales majetes. A saber: --- Tutoriales: - M1330.es - DellComunity Forum/Laptop/General Hardware: Install Windows XP on Dell XPS M1330 --- Drivers: - Intel Mobile Chipset Driver: R153997 (ftp Dell) - Ricoh Memory Card Driver: R141246 (ftp Dell) - Creative Labs Laptop Integrated Webcam: R173082 (ftp Dell) - Dell Touchpad / Pointing Stick: R175658 (ftp Dell) - Broadcom 59XX 10/100 Ethernet Controller: R155246 (ftp Dell) - NVIDIA-GeForce 8400M GS: nv_gfgo_101.34-2kxp32 (softpedia) - SigmaTel HD Audio Codec-Driver: R158235 (ftp Dell) - Bluetooth/Wireless Driver: R127314 (ftp Dell) - UPEK TouchStrip Reader (lector de huellas) : 2.12_package.zip (upek.com) -- No lo he probado, pero supongo que funciona - Intel Serial ATA driver: 7kim06ww.exe (ftp IBM) - Microsoft UAA Bus Driver for High Definition Audio Support: B888111 WXPS2 (ftp Microsoft) El siguiente paso debería ser instalar todo el software que utilizo habitualmente, pero prefiero esperar a.... Parte III: Instalando Ubuntu/Partición de Almacén He sido mamá! La criatura, de un agradable color azul medianoche, midió 13.3" y pesó aproximadamente 1.5kg. Aquí podeis ver unas fotos de una madre orgullosa (yo) con su encantador retoñito y los trastitos que venían con él: - Mi pequeño y yo (disculpad mi peinado, que acabo de dar a luz): - Funda de regalo: - Adaptadores, cables de red etc etc (con notas en flickr) - Mi nuevo chiquitín con su hermano mayor: Desgraciadamente, las cosas no son perfectas y sabía que habría problemas en el parto (concretamente, con la Vista del bebé) así que contaba con someterla a una delicada operación de neorocirugía en el mismo momento de su nacimiento. ¿Cuál es el objetivo final? Desterrar Windows Vista (para siempre), instalando a cambio Windows XP y Ubuntu, además de realizar una partición de datos. Allá vamos: 15:00- Abro paquete, saco PC, cables, libretos y demás parafernalia. 15.15- ¡Encendido! Todo correcto, pero: el disco hace un clic-clac que según Dell es perfectamente normal y la unidad óptica al insertar/extraer un disco suena como a gato. Según foros y tal, es muy normal. Eso espero ¬¬ 15:20: Confirmación de que no me voy a llevar bien con Vista. 15.30: Windows Vista consigue que mi teléfono móvil se quede colgado con una transferencia bluetooth. Eso es lo que llaman daños colaterales, no? ¬¬ 15.45 - Leo guías y más guías, me decanto por la más completa y "recomendada", la de http://m1330.es 17:00 - Formateo todo (adios Vista, adios MediaDirect, adios Recovery Partition). El disco es de 400 gigas, así que dejo 48 para Windows, 20 para Linux, y el resto para datos. 17.30- comienza la instalación de Windows XP 17:50- termina la instalación de Windows XP. Hace unos chasquidos muy raros que antes no hacía. 18.00- Instalo drivers.FSM bendiga el sistema de drivers de DeLL 18:10- Por fin, ya detecta la tarjeta de red, asi que puedo conectar y bajar un archivo que hace falta para algo raro del disco duro (SATA vs AHCI) 18:30- Sigo instalando drivers mientras me como un sandwich de philadelphia 18:40- Me pego el susto de la era al descubrir que los botones iluminados de audio, sonido y extraer cd son ópticos xD 18.45: Muchas cosas no funcionan, encuentro un pack lleno de drivers para el m1330 y los instalo todos a saco. 19:00 - Todos los drivers instalados, y reiniciando 19:05: La gráfica hace cosas raras, de los drivers de audio ni rastro y hace unos crujidos sospechosos. 19:15: Necesito un descanso, mañana seguiré. Y bien, hasta aquí mi aventura. Seguiré ojeando por webs y tal a ver qué encuentro, y mañana más. Ideas, ayudas y palmadas en la espalda, en los comentarios :P Pd: bueno, olvidé decirlo pero la idea es que quede con XP y Ubuntu ^^ Sigue la aventura en... - Dell XPS M1330 - Parte II - Drivers en XP - Dell XPS M1330 - Parte III - Instalando Ubuntu / Partición de Almacenamiento Porque ellas jamás mienten: Use The Best... Me he pasado por la web de UPS a ver por dónde anda un paquete que tienen que traerme, y me encuentro con esto: Ya ha sido entregado...dentro de 5 días (hoy es 19) O_oU Arr! Feliz Día Internacional de Hablar Como un Pirata, marineros de agua dulce!! Yo lo he celebrado durmiendo con mi camiseta de Monkey Island, y con este post conmemorativo (convenientemente robado de Piratizarros). La idea es coger frases del combate a insultos de dicho juego (M.I.) y reconvertirlas a frikez extrema. Creo (y que alguien me corrija si me equivoco) que la mayoría han sido perpetradas por Zeta. Ahi van: Versión standard: Versión Standard: Versión Standard: Versión Standard: Versión Standard: Versión Standard: Versión Standard: Versión Standard: Versión Standard: Versión Standard: Versión Standard: ¿Se os ocurre alguna más? Los comentarios están abiertos, como mi botella de ron, arr Y recordad! Si quereis el sobresaliente como piratuelos, no olvideis añadir esto a la lista de la compra: Acetona, ácido para baterías, ácido sulfúrico, endulzantes artificiales, glicol propílico, grasa para ejes, pepperoni, queroseno, ron, SCUMM, tinte rojo nº2 y celulosa. Uish! ¿A que casi casi os lo creeis? xD La vi en un puestecillo de juguetes en la Feria, junto a unas pseudoDS muy curiosas a las que no saqué fotos Como bien le he dicho a Janzo cuando me la ha enviado: "acojona. pero más me acojona haberla pillado". Podeis ver el original aqui, y algunas "pistas" en la wikipedia, como El Teorema de Incompletitud de Gödel, los Principia Mathematica de Russell/Whitehead y por supuesto, algo de autorreferencia. Nuestros amigos, los bots y los spammers, cada día me sorprenden más cuando abro la carpeta de "Spam" de gmail para ojear por si algo se hubiera colado ahi por error. Atención a lo que me he encontrado esta mañana: Lo que traduciendo vendría siendo algo así como "La vagina de Britney Spears ataca a su carcelero y se escapa de rehabilitación" y "Britney Spears entrenando para convertirse en lesbiana". Uh... LOL Ley de Hofstadter: Siempre toma más tiempo del que se preveía, aún cuando se toma en cuenta la Ley de Hofstadter. (visto, como no, en Gödel, Escher, Bach: Un Eterno y Grácil Bucle) Mirad qué GMT* más simpaticuno ha sacado el Skype cuando me he conectado desde la PSP: GMT -46529.6!! Franja horaria de Marte, como mínimo. Lo vio outime, que se copió vilmente y también lo posteó :P *Para desubicados: El GMT varía entre GMT -12 (más o menos en el Pacífico) y GMT +12 (Australia), siendo GMT+1 la hora española. ¿Creíais que se habían acabado? Pues no, os engañé! Hoy os traigo aún más pruebas de la absurdidad de los Arquitectos de Computadoras ^^ Algunos sí, y otros no, sabréis que hay dos maneras de organizar en una memoria los datos de más de un byte: Big Endian y Little Endian. A esto se le llama "Endianness": - Little Endian: Usada por el DEC PDP 11, el VAX y los 80x86. En esta ordenación, la dirección de un dato es la dirección del byte menos significativo. Es decir, tomando el ejemplo de la wikipedia, que si queremos almacenar el valor hexadecimal 0x4A3B2C1D, se almacenará "1D 2C 3B 4A" - Big Endian: Usada por el IBM 360/370 y los Motorola, por ejemplo. Para los computadores que siguen esta ordenación, la dirección de un dato es la dirección del byte más significativo. O sea, que en el ejemplo anterior, el valor a almacenar sería "4A 3B 2C 1D" Ahora bien, ¿por qué se llaman respectivamente "Big Endian" ("de grande a final") y "Little Endian" ("de pequeño a final"). Pues por algo tan sumamente encantador como puede ser el libro Los Viajes de Gulliver. En esta obra, hay un grave conflicto armado entre Lilliputienses y Blefuscanos. ¿La razón? Los lilliputienses abren los huevos hervidos únicamente desde el extremo pequeño y, los blefuscanos, sólo desde el grande. ¿Por qué? Inicialmente, todos abrían los huevos por el lado ancho, pero el abuelo del rey de Lilliput, cuando era pequeño, se cortó abriendo un huevo y emitió un decreto que promulgaba por ley que todos los lilliputienses tenían que abrir los huevos por el lado pequeño (Concretamente: "Se ha calculado que, en distintos períodos, once mil personas han preferido la muerte a cascar los huevos por el extremo más estrecho"). Y sí, eso es motivo de guerra entre ellos. Primero, Gulliver está de lado de Lilliput, luego se pasa al bando de Blefuscu, vuelve a luchar por Lilliput y después es ascusado de alta traición. Luego se intenta firmar un tratado de paz entre ambas naciones, para lo que necesitan un traductor (ya que a pesar de ser naciones hermanas, cada una habla una lengua distinta). Aunque el tratado se firma por fuerza y no acaba de cuajar. Finalmente, Gulliver se harta de todo y se vuelve a su casa, y que cada uno abra los huevos como le de la gana O_oU (Podeis leer el capitulo en el que se habla de los huevos en Wikisource) Y para acabar, pregunta: ¿Tú por qué lado abres los huevos duros? Yo por el grande, siempre se les queda aire ahi y es más fácil. Aunque mi profesora de Dibujo Técnico de bachillerato nos contó la manera de ponerlos en el cazo para que estuvieran perfectamente equilibrados y salieran bonitos y lustrosos. La pega es que nos lo contó a base de ovoides, tangentes y demás, y no recuerdo nada :P Este ha sido mi fantásticomaravilloso plan de esta noche. Iba a explicarlo y así se me queda mejor, pero es que veo triple, especialmente los cablecillos del esquema T_T Os tendréis que conformar con la versión críptica megaguay :/ 1. Ciclo de búsqueda de instrucción IF/ID.IR ← Mem[PC]; 2. Ciclo de decodificación de la instrucción/carga de registros 3. Ciclo de ejecución / dirección efectiva Referencia a memoria Instrucción ALU Salto/ bifurcación 4. Paso de acceso a memoria / completar salto: Instrucción Load/Store Instrucción ALU Instrucciones ALU Disfrutad mientras podais de mis rayadas de Arquitectura de Computadores a altas horas de la madrugada (5.13 en estos momentos), mañana empiezo con Programación Orientada a Objetos y ahí si que no hay de dónde sacar... espero xD En primer lugar, ¿qué es DLX? DLX es una arquitectura de microprocesadores RISC de carga-almacenamiento, muy sencilla. Está basada en observaciones sobre las primitivas más frecuentes utilizadas en los programas y suele utilizarse mucho para comparativas de rendimiento y cosas así. En segundo lugar, y motivo de este post: ¿De dónde viene ese nombre? En principio es algo que no llama la atención, "DLX", bah, qué chorrada. Pues no, es un claro ejemplo de aburrimiento épico: Resulta que viene de hacer la media aritmética de nombres de una serie de máquinas próximas* a DLX, expresado en números romanos: AMD 29K , DECStation 3100, HP 850, IBM 801, Intel i860, MPS M/102, MIPS M/1000, Motorola 88K, RISC I, SGI 4D/60, SPARCStation-1, Sun-4/110 y Sun-4/260. O sea: 29 + 3100 + 850 + 801 + 860 + 102 + 1000 + 88 + 1 + (4 + 60) + 1 + (4 + 110) + (4 + 260) = 7274 7274 / 13 = 559.53 , que aproximando es 560, que en números romanos es DLX. *No sé exáctamente a qué se refieren con "próximas". ¿En el tiempo, quizás? Según mis apuntes de Arquitectura de Computadores: "La mejora incremental en la aceleración conseguida por una mejora adicional en el rendimiento de una parte del cálculo disminuye tal y como se van añadiendo mejoras" Ayer dediqué más de 15 minutos de mi vida a intentar comprender esa frase. Ahora, por fin, creo que lo he conseguido. Estaba leyendo "Las 21 Leyes Básicas de la Programación" en SoyGik, y al llegar al punto "8. La probabilidad de hacer el ridículo en una demostración pública de tu software es directamente proporcional al número de gente viéndola, creciendo además de manera exponencial el riesgo cuanto mayor sea la cantidad de dinero invertido en dicha aplicación." , no he podido evitar acordarme de este video: woohoo!! Es una conferencia de COMDEX (una de las convenciones de negocios de computadores más grandes del mundo -que ya no se realiza-) en abril de 1998, donde que Bill Gates y su ayudante Chris Camposella intentaban mostrar lo sencillísimo que era Windows 98 de usar. Concretamente, la idea era enchufar un scanner para demostrar que Windows 98 soportaba dispositivos Plug and Play. Al menos Bill se lo toma con humor diciendo "That must be why we're not shipping Windows 98 yet." (o sea, "esto debe de ser la razon por la que todavía no vendemos Windows 98") Porcierto, creo que este video es el más claro ejemplo de "situación en la que no me gustaría estar" xD Yo iba a escribir un artículo sobre el Firefox Download Day, que la idea es batir mañana el Record Guiness del software más descargado en 24 horas, y que hay más de un millón de personas que se han comprometido a descargar y tal.... .... pero esta búsqueda en google me ha matado: ¿No veis algo ... raro? Algo así como una imagen que no pega... PS: Eso, que mañana todos a descargar Firefox 3 :P EDIT: A partir de las 19.00 estará disponible para descarga :D "Photoshop the Beatles". Este es el nombre de un curioso reto que lanzaron desde el foro b3ta allá por abril. Son 23 paginacas de photoshopeos (y espero que también gimpeos :P) a imagenes de los Beatles. La mayoría son muy graciosos (y algunos demasiado frikis), pero claro, si no sabes un poquillo sobre los beatles no te van a hacer gracia :P Además de estos, hay muchiíii(...)iiisimos más. Y entrando en la página principal, en "challenges", podreis encontrar muchos más, de distintas temáticas ^^ Aquí os dejo mi selección, sin orden concreto, de Photoshop the Beatles: (pasa el ratón por encima si necesitas una explicación :P) -Angela Lansbury McCartney: Y cómo no: Uoooo quiero uno de estos, y lo quiero ahora! Traduzco de su propia web, que yo estoy perra para inventar y mejor que se han vendido ellos no lo voy a hacer yo XD "El NeoCube es un elemento de entretenimiento sin igual. Está compuesto por 216 imanes de tierras-raras, individuales y muy potentes. Esto te permite crear y recrear una increíble cantidad de formas y patrones. El NeoCube es literalmente un puzzle con billones de soluciones, que te dará horas y horas de entretenimiento sin igual" Vale, dicho así suena a chufa (salvo la frikada de que esté hecho de lantánidos y/o actínidos xD), así que lo realmente revelador es ver el video: Este es solo uno de ejemplo, pero hay muchos más en videos relacionados. Y como pone en la descripción (en youtube): "NeoCube, quizá el objeto más guay que todavía es legal poseer" xD ¿El precio? 40 dólares + gastos de envio desde los EEUU WARNINGS: Puede dañar dispositivos electrónicos si entran en contacto, al igual que no deben acercarse a personas con marcapasos. Nos recomiendan no acercarlo a discos duros ni similares (obvio) y no quemarlo (¿qué pasará?). Y lo más interesante: "Si se desprende el material metálico que recubre las bolas, deje de usarlo. El material NdFeB que forma las bolas es relativamente nuevo, y sus efectos a largo plazo sobre el contacto con la piel son todavía desconocidos" uooooo y encima peligrosillo XD Quiero uno!!! maeghith ha puesto este video en un post sobre impresoras, tinta, y hojas de alineación, como respuesta a mi 'genial' idea de hacer impresoras a base de plastidecores. Como podeis ver, es un simpático robotito con 6 patitas al que se le ha añadido un rotring. Según pone, los archivos dxf (de autocad, por ejemplo) se convierten en movimientos de translación del robot y se le transmiten secuencialmente. uaaaaaahhh!!! qué monadaaaaaaa (ojitos) es que es monísmo TT_TT (Entrada BETA hasta que se añada el video del evento xD) EDIT: Ya hay video! Aunque es de la primera prueba que hicimos. Se ve como funciona bien hasta que tiene que dejar las piezas en la cinta, donde hay un pequeño problema "lógico" xD Como bonus final, se nos oye disertando sobre la sentencia MOVED XD Automatización, gran asignatura. Pocas otras han conseguido que los alumnos se queden una hora de clase más sin rechistar XD Y es que hoy , además, teníamos una buena razón: la práctica consistía en hacer unos miniprogramitas para que un brazo robótico hiciera cosas. Concretamente el robot, un Scorbot ER-IX, tenía que coger piezas de un plano inclinado para ponerlas en una mesa giratoria y, cuando estuvieran todas, moverlas a una cinta transportadora a distancias fijas. No es difícil, pero había un problemilla fundamental: no tenía ni la más remota idea de programar con ACL (Lenguaje de Control Avanzado). Pero contaba con una poderosa arma de nivel-5: Un manual de 200 páginas sobre cómo utilizarlo. (y que colgaría aquí, pero como no estoy segura sobre la legalidad de esto.... a quien le interese que lo pida :3) Ahí va una mini mini mini explicación de cómo utilizarlo (por si algún día vuestra vida depende de un bicho de estos) En primer lugar, varias cosas importantes: El tamaño máximo de nombre de variable es 5 caracteres, las etiquetas de salto tienen que ser números, no valen caracteres raros (tildes, eñes...), ni tabuladores, y las líneas de comentarios deben empezar con asterisco y no ser excesivamente largas. Además, las distancias se miden en décimas de milímetro (cuando son lineales) y en pasos de encoder (las que son radiales). Una vez aprendido eso (a base de "BUG DETECTED" ¬¬)... creo que va a ser más rápido si copio mi propio programa y lo explico línea a línea XD BRICONSEJO: aparte de esta versión "plana"(lo rojo, nada mas), en mi pc trabajé con una versión "user-friendly" en la que sí que usé tabuladores y comentarios verdadosos. Cabecera: sirve para asignar a los distintos programas (AUT10 .. AUT13) los códigos 70..73 $pr 70 AUT10 Programa AUT12: Mueve la cinta transportadora 3000 décimas de milímetro (esta vez, el movimiento es lineal) La cantidad es negativa porque la cinta se movia "hacia acá" y no "hacia allá" xD Programa AUT13: Igual que el AUT11, pero la mesa gira en el sentido contrario Programa AUT10: El programa principal. DEFINE: permite declarar una variable, en nuestro caso, pieza, que usaremos para contar el número de piezas (ya que a priori es desconocido). Con SET le asignamos el valor 0. LABEL define una etiqueta a la que saltaremos posteriormente (para hacer bucles, basicamente). IF IN[2]=1 comprueba la entrada 2 (que es un sensor colocado en el plano) para saber si hay más piezas (cuando vale 1). Si la hay, aumenta el contador de piezas, e invoca al programa AUT01 (dado por el profesor. el robot coge una pieza y la mueve a la mesa) con GOSUB. Cuando el programa AUT01 acaba de ejecutarse, se vuelve al mismo sitio desde el que se invocó. Se invoca al AUT11, el que os he contado arriba, que mueve la mesa giratoria. Luego. con el GOTO 1, se vuelve a donde pone LABEL 1 y se repite ese cacho. Cuando no hay piezas se entra en el ELSE. Como en el paso anterior hemos ido aumentando el contador piezas hasta que sabemos cuántas piezas tenemos que mover, este paso tendremos que realizarlo ese mismo número de veces. Por eso, mientras el contador diga que hay más de 0 piezas es que nos queda alguna por mover. Le restamos uno, e invocamos con GOSUB al programa AUT02 (también proporcionado por el profesor, coge una pieza de la mesa giratoria y la translada a la cinta transportadora) y luego al AUT13 para desplazar la mesa en el sentido contrario (y estar preparados para coger la pieza siguiente. Aquí controlamos el movimiento de la cinta una vez hemos movido la pieza. La cinta tiene un sensor a una determinada distancia de la zona donde caen las piezas: la cinta tiene que estar en marcha hasta que la pieza llega allí (para que las piezas queden todas a la misma distancia) Para ello, consultamos el sensor de la entrada 1: si vale 0 es que la pieza no ha llegado todavía al sensor, así que la cinta debe seguir avanzando (invocamos al AUT12), y estamos en ese feliz bucle hasta que se detecta la pieza. Entonces, movemos una vez más: para que salga del rango del sensor y cuando comparemos con la siguiente pieza NO valga 1, y volvemos a repetir desde LABEL 2. Cuando ya no quedan piezas, se sale de todos los IF y ELSE (con los ENDIF) , limpiamos el bufer "porsiaca" (CLRBUFB) y terminamos con un END como una casa :D Despues de escribir el programilla, se le envía a la parte de control del sistema, donde se comprueba su sintaxis y se cargan en el bicho :) Luego se le da la orden RUN AUT10 y a correr!! WARNING: Me encantaría decir que el programa va perfecto... pero sólo he podido probar la mitad porque a los del grupo de antes se les ha roto la mesa giratoria por un choque bastante brutal con la pinza del bicho :/ Pero tendremos la esperanza xD (Y eso que jamás he visto usar un botón del pánico tantas veces en tan poco tiempo xD) Y eso es todo, creo. Si Skelv cuelga el video, lo añadiré a esta entrada =^_^= (por eso es beta) Extra extra!! Última hora!! No sé exactamente cómo o cuándo ha ocurrido, pero por algún tipo de consonancia interestelar.... muchos twitteros están (estamos) poniéndose (poniéndonos) avatares hechos en http://FaceYourManga.com También puede deberse al efecto "uno se tira por un precipicio y el resto detrás" pero quién sabe xD (A mi esto me recuerda un poco al Día Oficial de las Rayas en Twitter , aunque esa vez no caí ^^) Yo ya tengo el mio, pero conociéndome.. hay dos opciones. a) me dura un día. b) lo convierto en mi nuevo avatar oficial (Por ahí dicen que me parezco pero no se yo XD) ¿Cansado de los mismos juegos de tablero de siempre? ¿Harto del parchis? ¿El Monopoly te produce alergia? ¿Te sabes todas las respuestas del Trivial? ¿Buscas un juego familiar que ponga tus neuronas a tope? ¡C-Jump es la solución! Sí, me temo que es lo que parece. ¡Un juego de tablero de ski basado en la programación en C! Este juego, pensado para que los niños a partir de 11 años aprendan los fundamentos de la programación, porque nos enseña las bases de la programación de un modo guay!! (sic) Superado el LOL inicial, veamos el modo de juego (O lo que yo he entendido): Cada jugador puede tener una o varias fichas que pueden ir por distintos trozos del programa (no pienses en hilos de ejecución, no pienses en hilos de ejecucion!!). Se lanza el dado, y el número obtenido corresponde al valor de la x. El jugador se mueve el número de casillas indicado por el que marcó el dado operado por la casilla. Por ejemplo, si sacas un 4 y estás en una casilla "x++", avanzas 5. Las fichas, que representan esquiadores (O_o) solo pueden parar en las casillas con "{" o "}". El jugador entrará en los ifs cuando cumple la condición del bucle, si no tendrá que pasar por el lado del else. Lo mismo para los loops y los whiles. Dentro de un bucle, el jugador puede caer en un "continue" (sigue en el bucle) o en un "break" (sale de él). Cuando se cae en un "goto", tiene que saltar a la casilla "jump:". Las casillas de switch van controladas por el valor del lanzamiento del dado. Gana el que llega a la casilla "finish" sin pasarse. Y si caes en el "return". ... tienes que volver a empezar!!! :O Porcierto, pone que está basado en esquiadores porque "la analogía entre el ski/snowboard y la programación es perfecta!" (a mi que me lo expliquen) No podemos dejar pasar el FAQ, en el que responden a preguntas filosóficas como "¿Es "while (x>0)" un bucle infinito?" o "¿Por qué este juego incluye la infame sentencia "goto"? ¿Te ha gustado? ¿Quieres que tus hijos acaben como tú, o en su defecto, como yo? (xD) Pues puedes comprarlo aqui por 25$ + 12$ (de gastos de envío), y empezar a generar niños geeks, como el de la foto, a partir de YA. (via piratizarros) Ahora hago chas y me saco de la manga otro mágico post de relleno. Es lo que tienen los puentes, que me convierten en un ente vaguete y amorfo (en realidad estoy demasiado ocupada). Me encantan los includes, la función BSOD y los printfs comentados xD (visto en Bocabit) (Antes de nada, los credits: Mi grupo éramos Héctor, Aitor y yo misma =^_^=) El pasado jueves estuvimos en clase de Automatización jugando con Arduino. ¿Qué es Arduino? Arduino es,copypasteando de la wikipedia, una plataforma de hardware de fuente abierta basada en una sencilla placa con entradas y salidas (E/S), analógicas y digitales, y en un entorno de desarrollo que implementa el lenguaje Processing/Wiring. Está basado en el procesador Atmega8, un chip sencillo y de bajo coste que permite el desarrollo de múltiples diseños. Hay más info y múltiples ejemplos en su web. Tengo que decir que es la primera vez que trabajaba con algo así, y que me ha encantado la experiencia. ¿Por que? Porque, para empezar, es tremendamente sencillo de utilizar: Sólo hay que escribir el código en C un poco modificado, enchufar la placa al pc por usb, volcarle el programa, montar el circuito y ale, a correr. Pega: necesitas una placa, pero rondan los 30 euros (visto lo visto, no es tanto); aproximadamente la mitad si montas los componentes por separado (aunque te sale una placa más grande) Concretamente, el modelo que hemos utilizado en clase ha sido una Arduino Diecimila, que aquí podeis ver en mi manita: (haciendo clic en la imagen podeis acceder a ella en flickr, le he puesto unas cuantas notas explicando más o menos qué es cada cosa) Al principio, el profesor nos sugirió que pensáramos nosotros un posible uso de la placa para escribir el código (sin circuito). Y me costó mucho, muchísimo pensar algo xD Pero cuando empezamos a utilizarla "fisicamente"... miles de ideas vinieron a mi ^^ Y eso da gustito :) (Aquí es cuando inserto un "gracias al señor mapache", por pasarme enlaces interesante con ejemplos, como este o este) En esta práctica, la idea era diseñar e implementar un sistema de control para una puerta de garaje. En nuestro sistema, tenemos un botón para abrir la puerta, otro para cerrarla y además un detector de presencia, que para no montar más lio de cables, sustituimos/simulamos con un tercer botón. Además, en la puerta hay conectados dos finales de carrera, para indicar si la puerta está cerrada o abierta completamente. Se usan, además, dos relés para abrir y cerrar, y unas cuántas resistencias para no quemar nada (y mira que nos gusta xD) Bueno, y por supuesto, la puerta del garaje, el motor, el piñon-cremallera.... también eran bastante necesarios jaja. O sea: Este es el esquema de conexión de las entradas: Y este es el esquema de conexión de las salidas: Y aquí, podeis verlo todo montadito (slalvo la puerta con su motor y finales de carrera): Sencillo, verdad? :) El código se escribe en un software especial para esto, que se puede descargar desde la propia página de arduino y corre sobre Windows, Mac y Linux. Este software te informa de si tu código es o no correcto, te permite pasarlo a la placa, enviarle órdenes y seguro que hace más cosas. Para pasar el código a la placa, simplemente se instalan los drivers que van con el software, se conecta la placa por usb al pc, se elige el puerto correcto (en mi caso, el COM4) y le dices "alah, vuélcalo" . Y a correr! Cosa graciosa: el programa "inicial - por defecto" que lleva la placa es simplemente apagar y encender el LED que lleva incorporado. Pero lo hace a una velocidad bastante graciosa y suena como cuando se cocinan palomitas xD Como bonus-colofón final, el video del artilugio funcionando (Dirigido por Hector, filmado por Aitor, y las manos que aparecen son mías XD) Seguro que me he dejado algo por explicar/contar/agujeros de conocimiento. Si se os ocurre algo, preguntad en los comments, que para eso están =^_^= Actualizado: Nuevo video, made by Héctor: "El diámetro de los discos compactos, que es de 5" (12,7 cm), corresponde a la anchura de los bolsillos superiores de las camisas para hombres, porque según la filosofía de Sony, todo debía caber allí." Y no lo digo yo, lo dice la wikipedia. Reescribamos los atlas mundiales con Mario is Missing! Podeis comprobarlo vosotros mismo jugando. (Con unos mapas así, no me extraña que Mario esté perdido.... (/chiste malo)) Supongo que todos, mayormente, recordeis a nuestros amigos los "Badger Badger Badger -Mushroom Mushroom !! - A snake, oh it's a snake!!" , no? (éstos) Pues coincidiendo con que me he empezado el último libro de "Potter, Potter, Potter - Weasley, Weasley!! - A Snape, oh it's a Snape!!!", by TheFifthDistrict SPOILER!!! si aguantais suficiente tiempo, en uno de los loops sale Snape vestido de la abuela de Longbottom, creo que harry se lo imagina una vez así para invocar algo. Miau! Otra ronda de tests ^^ Encontré estos dos en el blog de Kurisu Neko, espero que os gusten =^_^= Eres un .mpg! Vives la vida como si fuera una película. Siempre en movimiento, haces disfrutar a la gente, pero a menudo estás oculto. Eres Windows XP!! Debajo de tu exterior alegre y luminoso hay una personalidad fuerte y firme. Tienes tendencia a hacer más de lo que se te ha pedido, o incluso de lo que quieres. Qué maja :3 Aunque eso no quita que sea un windous (Había una pregunta buenísima, que decía: "Te importa lo que salga de este test?" y una de las respuestas era "No, pero como me salga Windows ME alguien va a salir herido..." xDDD) Creía que los captchas eran algo feo, sin sentido estético y muchísimo menos agradables....hasta que ví este de rapidshare: Dios mio!! Tiene gatitos y perritos!! No os dan ganas de imprimirlo y colorearlo? xD Acabo de hacer un test llamado "Which Superhero Are You? " , que supongo que no requiere mucha explicación sobre su temática xD Está en inglés pero es muy simple (las respuestas son de tipo si, si pero no, ni fu ni fa, no pero si, y no) Mi resultado: Eres CatWoman! Tuviste una infancia difícil, sabes cómo ser una ladrona y aprovecharte de los demás, pero te levantas ante las ataduras de la sociedad. (jo, yo no soy tan malosa.... pero mejor CatWoman que la payasa WonderWoman, tsk Otra divertida y apasionante práctica de Automatización!! Cómo me gusta esta asignatura :3 Esta vez, el circuito que construimos ha sido un Detector Óptico de Barrera por menos de 3 eurillos usando estos componentes (aunque a nosotros nos invita la uni): Diodo LED normal y corriente, Diodo LED infrarrojo (IRED), resistencia de 220 ohmios, dos resistencias de 1000 KOhmios, transistor (no sé exáctamente de qué tipo) y fototransistor . ¿En qué consiste un detector de este tipo? Pues muy facil. Simplemente son dos circuitos separados (el del emisor y el del receptor), que trabajan conjuntamente para detectar cuándo se interpone un objeto opaco entre ellos. - Circuito del Emisor: Más simple que el mecanismo de un botijo. Consta simplemente de una fuente de alimentación (6 Voltios), una resistencia (220 ohmios en nuestro caso) y un diodo LED emisor de infrarrojos (o sea, un IRED). Esto lo que hace es emitir luz infrarroja constantemente. La luz infrarroja no puede verse a simple vista, pero, TRUCO: usando una cámara de un teléfono móvil, sí que puede verse :O (se aprecia en la siguiente imagen) - Circuito del Receptor: También bastante sencillo. Usaremos la misma fuente de alimentación de 6 Voltios. El elemento que actuará como detector será un fototransistor . Este elemento conduce corriente cuando su base es excitada por luz infrarroja (la del emisor). Estos son un poco cerdos porque solo tienen 2 patitas y parecen diodos. Lo que se consigue con esto es que la corriente encuentre menos resistencia por ese camino y "pase" por alli. Sin embargo,cuando se interpone un objeto entre el emisor infrarrojo y el fototransistor, éste deja de se conductor y los electrones pasan por el lado en el que encuentran menos resistencia: el del diodo LED normal, que se enciende (además tenemos otro transistor enmedio actuando como una especie de interruptor). Y bueno, poco más que decir sobre esto. Os enseño una imagen del circuito una vez terminado: Y como novedad, un video casero del funcionamiento del invento. Aunque la distancia entre emisor y receptor en nuestro caso es un centímetro aproximadamente, el profesor nos ha comentado que con esta mierdecilla de componentes podríamos consguir hasta 15 o asi :) Porcierto,volvimos a olvidarnos las tijeras en casa. Menos mal que tuvimos que usar pocos cables y estaban todos pelados ya XD - "¿Qué has hecho hoy en el cole?" - "err... quemar diodos xD" Salgo horrible de cara, pero feliz de corazon (excusa barata) Ese es nuestro circuito majete, justo antes de probarlo... y quemar los diodos y el optoacoplador (y probablemente tambien el LED) xD En fin, una pura fiesta. Se puede ver (a falta de otro diodo más y un LED) junto con "el resultado de la alineacion aleatoria y casual de dos fragmentos de cable arbitrariamente retorcidos" (by skelv) Bonito, verdad? No se ve muy claro, pero basicamente es esto: Una via de tren, por la que pasará un tren que hará de resistencia, cerrando el circuito de la izquierda. Cuando se cierra el circuito de la izquierda se produce una caída de tensión en el diodo, que alimenta al diodo LED encapsulado dentro del optoacoplador. Éste excita la base del transistor (también encapsulado), cerrando el circuito de la derecha y provocando que se encienda el LED que señalizará el paso del tren. La gracia está en que no importa el voltaje al que se conecte (siempre que haya una resistencia -el tren- que impida que se quemen los diodos): los diodos siempre van a darnos una caída de tensión constante (concretamente, los que usamos eran de 1.07 voltios) que impedirá que quememos el optoacoplador (el nuestro, CNY74-4H ) tenía una tensión máxima de 1.6 Voltios). Para alimentar la via usamos un generador de 9Voltios. Divertido, verdad? No se me ocurre nada más que explicar sobre ello, asique dudas, patatas y elefantes voladores, en los comentarios :) Nota Mental para Skelv, Podereski y yo misma: Coger unas tijeras, pelar los cables con los dientes no es muy bueno xD PS: El hecho de que me sepa los códigos de colores de las resistencias, hace que me miren mal u_u juars juars juars acabo de ver esto en TecnoDiva y me estoy partiendo la caja un buen rato xD (En negrita, lo que dijo el geek. En cursiva, lo que quiso realmente decir) "Tengo tu fotografía guardada en la carpeta de mis imágenes” “Te voy a montar un directorio activo, con servicios dns y dhcp” “Voy a tener que limpiarte el slot del puerto agp” “Mi servidor de impresión tiene una cola muy larga” “La mejor solución va a ser virtualizar tus servidores” “Pedazo de servidor con doble procesador que tienes” “He implementado un sistema de backup de imágenes en el servidor” “Desde que instalé el service pack todo va mejor” “En mi escenario tengo sistemas Microsoft y sistemas Linux cada uno “Tengo un Mac” - Respuesta: Ingeniería Técnica en Informática de Sistemas (o a veces, Informática, para abreviar) - Contrarrespuestas: - Ahí hay muchos frikis, ¿no? - Ahí no hay muchas chicas, ¿no? - ¿Es que te gustan los ordenadores? - Ah, pues mi primo segundo/ el hijo del cuñado de un colega / el vecino del primo de mi tia va a estudiar eso porque le encantan los juegos y estar en internet. - Eso vale para ser secretaria o algo de eso, ¿no? - ¿Y eso para qué te sirve? / ¿Y con eso de qué puedes trabajar luego? - Ah, pues mi primo segundo/ el hijo del cuñado de un colega / el vecino del primo de mi tia ha estudiado eso y está currando en X empresa y está muy bien. - Venga ya, no me lo creo, yo he oído que todas las mujeres de informática son unos trolls (guiño, guiño) - Ah. Oye, pues voy a comprarme un pc y he estado mirando en X e Y sitios, y he visto Z y W modelos, pero resulta que la RAM del Z es mayor, pero W lleva J cosa que Z no lleva, y (blablabla) porque la tarjeta grafica (blablabla) y entonces el procesador (blablabla) y la memoria de video (blablabla) (blablabla) (blablabla) ¿Tú qué harías? - Ahí haceis programas, ¿no? Pues si tienes un rato podrías hacerme un programa que haga X, Y, Z, W, J , K e I cosas. Seguro que no tienes nada que hacer y que te aburres un montón. Y encima te sirve para estudiar (guiño) - Ah, pero si eso no se hace en la universidad, que mi primo segundo/ el hijo del cuñado de un colega / el vecino del primo de mi tia lo hizo en una academia de clases particulares. - Bah, pues yo sé usar un ordenador sin haber hecho ninguna carrera. - Ah. Pues a mí se me metió una vez un virus. - Ostras qué bien. ¿Puedes venir a arreglarme el emule/el messenger? - Uy, pues a mí eso de los ordenadores y del internet se me dan fatal. - Ah, ¿y sabes leer el correo de otras personas / conectarte a una wifi ajena / hackear un pc / hacer un virus / robar los archivos de otro? Yo sí. - B-U-F . - Ánimo. - ¡Qué valiente! - Ahivá, yo también!! Vamos a llorar/cortarnos las venas juntos!! Y vosotros, ¿qué respuestas recibís? La contribución de Shitenno ^^ Ahora, toca odiar: me han faltado 5 centésimas ( osea, 0.05 puntos) en Redes para que me sumara la nota Peeeero como en mi expediente sale la nota mínima para que sume el trabajo (cosas del redondeo) puedo ir a llorarle muy mucho ( a pesar de que no es lo mio ) y con la historia de los dos decimales blablabal. O intentar sacarle algo de uno de los ejercicios. Que quiero aprobarla y dejarla de odiar, que yo la amaba T_T (hasta que el año pasado me la volvio a suspender por 3 decimas ¬¬) Pero 3 décimas es más que 5 centésimas u_u Aaaahhhh estoy entrando en modo superguerrer >_< A aahhhhhhh odio odio odio ahhhh ahhhh ahhhhhh me voy a dormir al bus, que hoy he dormiro 3horas45minutos u_u (Visto en ALT1040) Impresionante la cantidad de fricazos de level maximo que hay por ahi :3 Como muestra, PaulTheWineGuy , que se dedica a "geekizar" obras de arte clásicas. Yo hago una selección con las que más me han gustado, pero el set completo de flickr podeis encontrarlo aqui ^^ The Scream. (Edvard Munch, 1893) Composition with Yellow, Blue, and Red (Piet Mondrian, 1921) 100 Cans (Andy Warhol, 1962) One blue pussy (Andy Warhol, 1954) Annunciation (Antonello da Messina, 1474-1475) The Creation of Adam (Michelangelo, 1477-80) L’Absinthe (Edgar Degas, 1876) The inspiration of St. Matthew (Caravaggio, 1602) David with the Head of Goliath (Caravaggio, 1609-10) The Thinker (Auguste Rodin, 1609-10) The Last Supper (Leonardo da Vinci, 1495–1498) Galileo facing the Roman Inquisition (Cristiano Banti, 1857) Signboard for a Schoolmaster (Ambrosius Holbein, 1516) Pensaba que esta advertencia, en la que Windows se detecta a sí mismo como virus era una leyenda urbana pero.... no! Ayer estaba en casa de pablo y me dijo "Ven, que me acaba de salir un error más raro.... " ... y voy y me encuentro esto xD (clic para ampliar) Prevención de ejecución de datos - Microsoft Windows Para ayudar a proteger el equipo, Windows cerró este programa. Nombre: Windows Explorer Fabricante: Microsoft Corporation Ains... He actualizado por fin a Ubuntu Hasta ahora usaba la 6.06 (con un par) pero ya empezaba a no haber soporte para ciertas cosicas y era un poco cansino... asíque en una tarde muerta me han convencío :3 Ya no soy Dapper, ahora soy una PS: SÍ, es un auto-auto-copy-paste xD He actualizado por fin a Ubuntu Hasta ahora usaba la 6.06 (con un par) pero ya empezaba a no haber soporte para ciertas cosicas y era un poco cansino... asíque en una tarde muerta me han convencío :3 Ya no soy Dapper, ahora soy una PS: SÍ, es un auto-copy-paste xD Tachán!! Mágica captura de pantalla de cuando intentas ejecutar gparted sin ser superuser xD (he intentado hacer una del "modo fiesta" (literal) del Rhythmbox pero no ha sido posible, tendreis que creerlo ^^) Y ahora os dejo , que guille (sí, GUILLE xD) me obliga a seguir trabajando u_u He actualizado por fin a Ubuntu 6.10!! Si, habeis leido bien, 6.10 xD Hasta ahora usaba la 6.06 (con un par) pero ya empezaba a no haber soporte para ciertas cosicas y era un poco cansino... asíque en una tarde muerta me han convencío :3 Ya no soy Dapper, ahora soy una Edgy feliz juas juas (estoy delirando, lo se) Y misteriosamente no he tenido ningún problema ... ya saldŕan xD Mañana, seguiremos upgradeando.... o no xD El Papá Noel Samurai y yo, os deseamos que todos paseis unos felices dias de paz, luz y esperanzas con vuestras familias o seres pseudo-animados que más querais. Y como regalo, os dejo un vídeo entrañable, navideño ... y jodidamente freak ^^ Me ha encantado "la nueva tira" de VGCats.... es.. moniiisima :3 Es una animación simpatiqueta en flash con la musiquita de un juego que se llama Portal (no estoy muy segura de todo esto, pero diría que sí xD) Clic en la imagen para verlo: La letra es esta: This was a triumph! love is 8-bit!! xD (Este post, basado en hechos reales, ha aparecido hoy en el blog de Quasar ... y no he podido resistirme a robárselo xD) Ingredientes para 1 persona: Si te pone florecillas y gatitos es que le caes bien. Y por el otro: Esto último no tiene mucho sentido, supongo que es el señor patata, o la personificación de la patata, o algo. Llamémosle "cosa". *Truco: si partes los trocitos finos, luego habrá que echar menos aceite en la sartén para que se fría bien, y se harán antes. La verdad es que las he partido y frito como el culo, pero bueno. El poder patatil está en su interior. ¿Habéis visto que majo es mi mantel? *Consejo: Llenarse el labio inferior de alioli, como he hecho yo, no es necesario. U^^ Aunque como tampoco lo es hacerse fotos, no creo que tengáis problemas XD Ayer, o antes de ayer, o por ahi mas o menos, leí en emezeta este artículo sobre lenguaje de programación complicados o... mas bien raros (oficialmente, "lenguajes esotéricos"). Y de entre todos ellos , a pesar de que los habia muy bonitos (como el brainfuck (que sólo usa punteros), whitespace (que solo usa espacios, tabuladores y retornos de carro) o el ook (que solo usa las palabras "ook.", "ook?" y "ook!").... me quedo sin dudarlo con el Chef. Aquí os dejo su helloworld : Hello World Souffle: Ingredients. (cuanto menos, peculiar XD) El número de ingredientes (72, 101, etc) no es nada más y nada menos que la codificación binaria de las letras de Hello World , y el " put in the mixing bowl" lo echa por salida. Y ahora... un ejemplo más pro: mostrar por pantalla los primeros 100 fibonacci : Fibonacci Numbers with Caramel Sauce. (el caramel sauce es un método auxiliar) BONUS: *Principios de diseño: - Las recetas no solamente deben generar salidas válidas: deben ser fáciles de preparar y deliciosas. - Las recetas deben ser aptas para todos los presupuestos. - Se usará el sistema métrico, aunque pueden usarse medidas traidiconales como "tazas" o "cucharillas" BONUS 2: ( en inglés, que estoy perra) Multiple mixing bowls and baking dishes are referred to by an ordinal identifier - "the 2nd mixing bowl". If no identifier is used, the recipe only has one of the relevant utensil. Ordinal identifiers must be digits followed by "st", "nd", "rd" or "th", not words. recipe-title. Ingredients. Cooking time: time (hour[s] | minute[s]). Pre-heat oven to temperature degrees Celcius [(gas mark mark)]. Method. Serves number-of-diners. For example, the main recipe calls for a sauce at some point. The sauce recipe is begun by the sous-chef with an exact copy of all the calling chef's mixing bowls and baking dishes. Changes to these bowls and dishes do not affect the calling chef's bowls and dishes. When the sous-chef is finished, he passes his first mixing bowl back to the calling chef, who empties it into his first mixing bowl. (más en wikipedia ) Hoy toca refrito! Este relato que va a continuación de esto que estoy escribiendo ahora (?) es una redacción que nos mandaron escribir en Inglés, en 2º de Bachillerato, sobre extraterrestres. Y se la dedico (entonces y ahora) a Eowyn (María) porque es la protagonista!! Bueno, lo dicho. Lo pongo en inglés primero para pros y luego en castellano para no-pros. Porcierto, la nota fue un "A+: Very good indeed" :) VISITORS FROM OUTER SPACE (feat Maria & The Great Mutant) Maria was lying on the grass, scratching her navel and looking the grass growing, when she suddenly felt that she wasn't alone. She looked everywhere, and when she looked over her head, she saw a big silver flying saucer. She stayed inmobile while it landed. There was a sacred silence when the saucer started to rotate over itself. Maria felt dizzy. She had never seen such a beautiful yellow eye... She couldn't answer its question, but she caressed its sticky neck and said: "you don' need to go, I want you to stay here... with me. We'll have a great time", while she was winking her left eye. The big mutant monkey looked with its single eye at the both of Maria. They suddenly felt that they were feeling the same... it was true love!! The mutant kissed Maria with its jelatinous lips. They came into the aircraft, and I've never seen Maria again since then. Some years later, I was walking on the street when I saw strange little boys and girls, with yellow eyes and curly black hair. I started to think crap... like WHO were they parents?! VISITANTES DEL ESPACIO EXTERIOR (feat Maria & The Great Mutant) Maria estaba tumbada en el césped, rascandose el ombligo y viendo crecer la hierba, cuando de repente sintió que no estaba sola. Miró a todas partes, y cuando miró sobre su cabeza, vio un gran platillo volador plateado. Ella se quedó inmovil mientras éste aterrizaba. Había un silencio sepulcral cuando el platillo empezó a girar sobre sí mismo. De pronto, una figura apareció en la escotilla de la nave. Era un gran mono verde mutante pegajoso. Se acercó lentamente a Marie, y empezó a hablarle educadamente: "Whoa, preciosa. Vengo del planeta Mota* y creo que me he perdido. Estoy buscando Urano. Podrías tú ayudar a este pobre gran hongo perdido?". le dijo guiñando su único ojo. Maria se sentia mareada. Jamás había visto un ojo amarillo tan bonito como aquel... No era capaz de contestar su pregunta, pero acarició suavemente su pegajoso cuello y le dijo "No te vayas... quiero que te quedes aqui... conmigo... Lo pasaremos genial", mientras guiñaba su ojo izquierdo. El gran mono mutante miró con su único ojo a los dos de Maria. Ellos supieron inmediatamente que ambos sentían lo mismo.... Era amor verdadero!! El mutante besó a María con sus labios gelotinosos. Entraron en la aeronave , y ya no he vuelto a ver a Maria desde entonces. Algunos años más tarde, iba andando por la calle cuando vi extraños niñitos y niñitas, con ojos amarillos y pelo negro rizado. Empecé a pensar gilipolleces... como QUIÉN eran sus padres?! (al final del texto hice un adorable dibujo de María diciendole al mutante "You're really jelly!!" , y él le responde "Yeah! Jelly indeed!". Al lado, aparezco yo diciendo "Why can't I make a normal essay? Why ALWAYS happens strange things in my essays?" ) (*Pot es otra palabra para Mota) Otra de videos: Máquinas de Turing explicadas por Carlos/Buckethead, dos minutos antes de hacer el examen de Computabilidad/Modelos Abstractos de Cálculo . Transcripción porque se oye un poco mal: (vid1) Alvaro: A ver, qué es lo que es? .. Esto qué es lo que es? Carlos: Pues esto basicamente es una representación un tanto friki de una Máquina de Turing, ves? Aquí está la cinta, los unos, los ceros, los blancos... (vid2) Carlos: Esto es un malvado orco que está esclavizando a los goblins.. y esto en sí es el cabezal que va tirando los ceros, los unos, los blancos.... (Porcierto, el otro Turing se ha cubierto de una simpática capa negra de moho que da muy mal rollo. Temo que un día salte de la estantería, me quite un ojo y trate de conquistar el mundo) Para los que me leen por feed: No os asusteis si veis que salen artículos prehistoricos repetidos mil veces, he creado una categoría nueva y para acomodar los posts he tenido que republicar algunos. Y además, al toquetear la plantilla para meter las nuevas listas de Lastfm y la cosa de Technorati (todo en el lateral izquierdo).. pues también se le ha ido la olla ^^U Y ahora una bonita imagen, la tipica que se abre en algunas paginas para comerse al navegador y decirte "tienes muchos virus, uhhh vas a morir! haz clic aqui": (clic para ampliar) Jooooder, pero si es miPC!! es super creíble... salvo que ni esa es mi IP, ni estoy en Kiev, ni esa es mi version de Firefox, ni tengo dos lectores de disco..... ah! y que uso Ubuntu ¬¬U (Porcierto, cómo ha avanzado la IA, que ya te permiten "Borrar Archivos Compremetedores"!! Se las saben todas xD) ....con sólo una linterna y una grabadora de me parece un poco... hmmm como decirlo.... peli.... peli...peligroso!! sí, peligroso es la palabra. (visto en no puedo creer que lo hayan inventado) AisleRiot proporciona un motor de juegos cartas basado en reglas que permite jugar a muchos juegos diferentes. (si, es copy paste del about xD) Entre esos juegos, que efectivamente, son muchos, se encuentra uno que se llama el Reloj (The Clock) que es.... digamos absurdo. Solamente se trata de ir colocando las cartas en un circulo en el orden y posicion de los numeros de un reloj. Pues bien, ayer mientras probaba juegos me encontré con este, y descubrí que cuando pides una sugerencia (el equivalente del "pedir pista" de toda la vida) ocurren.... ciertas cosas. Estas son las sugerencias que me aparecieron: (el juego es una puta mierda, pero el WTF que te llevas... xD) Después de haberme pegado la paliza de buscar mi viejo PC, bajarlo del altillo, traerlo a mi estudio y encontrar enchufes y cables como para hacerlo funcionar.... intento cargar solaris y me encuentro con la siguiente fiesta (aka error de grub): ERROR 28: SELECTED ITEM CANNOT FIT INTO MEMORY bieeeeen mota bieeeeen al parecer, el susodicho pc tiene 128 de RAM (que además son los que detecta el Grub) , y no ha habido manera de encontrar los requisitos minimos, aunque según esto necesito más bien algunos megas mas... ahora a decidir: compensa comprarme un modulo más, de segunda mano??? chan chan chan. Necesito mi kit de destornilladores, rapido!!! mierda, ahora me siento mal de estar maltratando al pobre motablog xD no es que lo haya dejado tirado en la carretera, pero.... es como si lo alimentara con deshechos -_- (visto en Interneteo y Aparatuquis ) Mew!! Como seguro que ya todos sabréis, en la página de la peli de los Simpsons existe un "avatar maker" , que como su propio nombre indica, sirve para hacer tu propio avatar xD A que salgo mona?? (Concretamente, lo he hecho para La Lengua ) Uhhmmm!! nuevo descubrimiento en cuanto a páginas de camisetas chulas que jamás me compraré: Nerdyshirts . He visto algunas muy simpáticas, como esta ... esta de aqui... o esta otra, ....pero sin duda me quedo con la siguiente : Let it bii!!! mencanta la budweiseeeeer!!! y mencanta este anunciooooo!!! (TRADUCCION (ligeramente libre): Chaval de negro: - Hey tio, los colegas vienen esta noche a ver el partido... ¡se beberán toda nuestra Bud Lite! Chaval de blanco: - No te preocupes. Mira lo que acabo de instalar. Chaval de negro: - Una pared secreta giratoria. Tio... eres un genio. Chaval de marron: - Tios!! Corred!!! La nevera mágica ha vuelto!! Grupito: - Nevera mágica... nevera mágica... ) ... hasta que ayer peibol me lo jodió: Mota: uoooo este anuncio es dios!! Peibol: ¿por qué dicen que ha vuelto si el otro tipo dice que la acaba de instalar? Mota: ... ..... ......... Estaba buscando una bonita imagen para ilustrar un breve y metafísico post que había escrito sobre Junio, el mes que me pasé sentada en un sillón.... ...pero he encontrado esta preciosa página y no puedo dejar de mostraosla. Se llama Informática Poética , y parece ser que son poemas que ha escrito Mercedes López Carril, alumna de Administración de Sistemas Informáticos, en un Instituto de Jerez de la Frontera. Yo os copypasteo aqui aquellos que van mas acordes con mi precioso examen de mañana de Sistemas de Transporte de Datos (Nota: una oración por mi alma a las 14.30 T_T) IMPLANTACIÓN DE UNA LAN MI RED DE AREA LOCAL OTRAS OBRAS: El árbol binario, Programación en C++, Yo tengo una profesora, Listas enlazadas, El árbol de búsqueda, Fundamentos de programación, Implantación de una LAN, Mi Red de Area Local, La rama informática, Si yo fuera tutor..., Protocolos TCP/IP, Paquete IP, Cinco de Junio, El liderazgo,Evaluación final. NOTA al final que nadie leerá: ¿Por qué hay un jedi como imagen? . . . . . . . . . . . por que es OBI-WAN KENOBI!!!! xDDDDD EDIT: dedicado a Javi xD EDITv2: Contribución de javi: (esto es de los comments) Dime, oh, pequeña Mota, ========================== Respuesta de Mota: Gracias señor Javi Aaaatención: Pregunta de examen, examen de Administración de Sistemas Operativos en Red, Septiembre 2004: 14. ¿Qué es el balanceo de carga? Yo creo que es la a.... (que nooooo, que es la c!!! . . . . .creo... porque no tengo ni idea xD) ... o sea, definitivamente geek ^^U Desde que lo ví puesto en una mesa del sótano 1 del Aulario II de la universidad, no he podido olvidarlo. Sentía mi corazón latir por las noches pensando en tener su amor, en llevarlo conmigo, en darle todo mi cariño y protección. Pero... él no estaba a mi lado, dándome su calor. Asíque, el siguiente día que nuestros caminos se cruzaron, antes de caer rendida ante su espectacular encanto, le pedí su dirección . Días después, nerviosa, fui a buscarle y lo traje a mi casa. Estuvimos conociéndonos. Aprendí muchas cosas de él. Y ahora... ahora está sobre mi cama. Espero que lo comprendais y no me juzgueis sin antes conocerlo. No pude resistirme. Os dejo una foto: (Clic para ampliar) =^_^= BRICONSEJO: no useis el servicio Cicerone de la UA. Su menú del día es: de primero, Firefox; de segundo, recursos con patatas; de postre, consola de Java. Bueno, pues dejo aqui unas fotos del warhammer que pinté el martes pasado. No sé qué es porque lo compré "suelto" , pero indagaré aver. Es un monigote muy simple, asique no se podian hacer maravillas, pero he intentado dejarlo lo más "bonito" posible (teniendo en cuenta que la mitad de mis pinturas estaban secas, incluyendo el color "cota de malla" que pensaba darle a la bola de cañon U_U) Hago un copypaste de este "relatillo" que me ha maileado el señor juanmi/guelote y que aparece en tuxpepino: En este artículo quiero demostrar que GNU/Linux es más que un sistema operativo y te puede ayudar hasta con tu vida personal. Por ejemplo, a buscarte la novia perfecta y todo lo que viene después, que no es poco… Espero que no haga falta decir que es un artículo de humor y bastante geek xD Empezaremos por buscar una novia Nos la quedamos Ojeamos sus atributos La comparas con otra a la que tanteabas desde hace una semana Compruebas si hay conexión Y cómo es dicha conexión Sí, definitivamente nos la quedamos. Nos aseguramos que sepa que somos su novio… …y de que no nos pueda poner los cuernos… La moldeamos a nuestro gusto Nos vamos a una fiesta en casa de unos colegas y tenemos un calentón. Nos vamos a un lugar aislado, oculto Comprobamos que no hay nadie más Buscamos el fastidioso enganche del sujetador… Al lío. Conectamos nuestros cuerpos de la forma tradicional Si alguien quiere un 69 (u otro “slot”), tan sólo hay que decírselo Dejamos nuestra semilla Y separamos nuestros cuerpos Ordenamos y limpiamos un poco el cuarto Poco después te enteras de que metiste el penalti (¡Maldito preservativo!). Nueve meses más tarde tu novia da a luz Por las presiones de las familias, decides formalizar la relación y os casáis. Fundáis una familia con todo lo que ello conlleva… Haces una nota mental para acordarte de este “”"”maravilloso día“”"” y que no se te olvide, todo ello para evitar que no te ponga a parir la parienta Todo va bien hasta que inexplicablemente un día se le cruzan los cables a la parienta y mata a vuestro hijo Meditas sobre todo lo que ha sucedido y sobre las mujeres Y efectivamente llegas a una sabia conclusión Pese a que te aseguraste de que no tendrías cuernos, si ambos sois de una raza y el crío de otra, o tienes otro tipo de confirmación, vete buscando a un tal root… Ale, al lío. mola ^^ pues... estaba mirando el blog de Mr.Ojazos aka Skelv (xD) y me he encontrado con unos monigotes que se había hecho vete-a-saber-donde (eh... dimelo si lees esto xD) y me ha recordado a unos que yo tenia. Y me he encontrado el codigo por aqui y he dicho.. ale, allá vamos!!! Las ordeno de más antiguas a más recientes ^^ <6,<6,6>> = (A2) IF Z3 != 0 GOTO D que no te digo na y te lo digo yo Dios, por qué las cosas bizarras vienen a mi?? Hoy os voy a enseñr algo que desafía toda lógica..... Señores y señoras... por obra y gracia de La Lengua, con todos ustedes.... la página dedicada en exclusiva a los arco iris vomitando.... Simplemente brutal. Hay 7paginas con dibujos de distintas calidades y temas entremezclados: borrachos (vodka, birra , tequila..), fumados (arroz, comida hindú, pizza..), con indigestion, con leprechauns, con nicole richie,con tom cruise..... pasen y vean. La ultima de las páginas (la 7) es la más pro, está hecha por universitarios de Virginia, creo. Bien, imagino que todos, cuando os levantais por las mañanas, haceis lo mismo que el resto de de la humanidad. Es decir, preguntaros a vosotros mismos "ay, dios mio... estaré poseida por el Maligno?" Pero... vuestras dudas se acabaran en el mismo instante en que veais estre video!! Los chicos de la juntos dominaremos el universo!!! ** ** Eras tan joven e impresionable luke, soy tu madre, luke soy tu madre !!! No te imaginas lo hermoso que es el reverso tenebroso, luke... Uf, acabo de ver esto en el blog del señor Makore, y me ha matado: (si en tu cabeza se encienden bombillitas con la forma de "pero qué dice esta tia?" mejor haz clic aqui) Buah, no pensaba postear ahora, pero... esto me ha matado: Muy bueno, en los comments "dude, ... r u human?" XD juajuajua mirad lo que pasa cuando vas a ejecutar un comando como root en los linux de los laboratorios de la Politecnica: Qué grande!! he estado dos horas partiéndome xD EDIT: un par de apreciaciones a) Obviamente podeis ver el logo de Windows, asique, tecnicamente NO es linux. Lo que estaba haciendo era acceder a uno de los routers del GCIST (que sí que son linux) por L2TP, usando Putty Lo que viene siendo ejecutar comandos remotamente, vamos b) Donde pone /usr/bin/brtcl , debería poner /usr/sbin/brtcl . Me di cuenta de que la había cagado despues de haber ejecutado la primera vez y haber hecho la captura de pantalla jeje Imagina que tienes que hacer una práctica en C, con el compilador TurboC, algo (por el momento) muy simple. Imagina que no tiene más que tres funcioncillas totalmente absurdas, de manejo de enteros y cadenas. ¿No parece muy dificil, verdad? Sigue imaginandote una de estas bonitas funciones. Es una monada, totalmente inofensiva. Incluso, a pesar de no ser más que un puñado de electrones saltando por un cacho de conductor, podríamos decir que es adorable. Yo diria que hasta blandita. Sin embargo, a mi antivirus no le ha parecido algo tan inofensivo. Os enseño una capturita de pantalla: chan!! La traduccion a lo que nos dice sería algo así como "ehhhh, paaara, máquina!! ese ejecutable es un virus!!". No tendría ningún problema en creerle si no fuera porque... ese ejecutable lo he hecho yo. Es esa funcion adorable de la que hemos hablando arriba!! No puede ser mala!! Dios, asco de heurística !! siiii!!!! Estoy escribiendo este post desde Ubuntu, con la wifi de la UA :D Me ha dado un par de problemillas con los drivers (no sabia si eran wext o ipw - al final resulto que eran los ultimos) y no me daba user, pero lo he conseguido al segundo intento ^^U Ains, es emocionante xD Y bueno, esta tarde pelearé también con la wifi de casa... y será la tercera wifi que me configuro en Ubuntu esta semana XD ale, voy a ver si puedo importar las preferencias de firefox y demas ^^ Buenas! Hoy voy a postear... pero como no tengo mucho tiempo ni demasiado que contar (salvo que esta mañana me he quedado sobadísima y he llegado media hora tarde a clase xD), pues voy a hacer un copy paste de javimoya . En este caso, razones por qué los Geeks Los geeks tienen un destreza inigualable con los dedos. Los geeks están acostumbrados a tirar dados. Los geeks juegan a videojuegos, resuelven cubos de rubick. Los geeks pasan páginas y más páginas de cientos de libros. Los geeks están todo el día tecleando en el ordenador, y usando caracteres como ~, ^ y |, que nadie, aparte de ellos, sabe siquiera que existen. Los geeks manejan calculadoras con notación postfija. El resultado de todo esto es que un geek sabe perfectamente como mover sus pequeñas extremidades para obtener el mejor efecto posible. En definitiva: Sí tienes un botón que necesita ser pulsado, o un joystick triste, no hay mejor persona que un geek para hacer el trabajo. Los geeks no se duermen en los laureles. Debido a una inteligencia superior y, por consiguiente, una mayor y profunda compresión de la trágica condición humana, los geeks son los que mejor han entendido que el césped solo parece más verde desde el otro lado de la valla. Es por esto que permanecen instintivamente fieles a sus parejas, para lo bueno y lo malo. Además, sus habilidades sociales no están lo suficientemente desarrolladas como para que puedan optar a tener una aventura… cuando ni siquiera están muy seguros (ni se lo acaban de creer) de como han conseguido que su actual pareja se haya sentido atraída por elllos. Cuando te comprometes con un geek, sabes que va a ser tuyo hasta que se muera. Los geeks son hábiles en las cosas que les gustan. Todo geek que se precie cuenta, tras una aparente torpeza y monótona vida, con una pasión oculta en la que son los mejores, y que suelen desarrollar a altas horas de la madrugada. Puede tratarse de un hacker/programador experto, o del jugador con mayor nivel de World of Warcraft, de un blogstar de éxito, o de una habilidad sin igual a la hora de hacer modding con el ordenador. Tan sólo haz que el sexo se convierta en su nuevo pasatiempo nocturno favorito, y descubrirás que un geek no se rinde hasta que no haya conseguido ser el mayor experto mundial en la materia (además están acostumbrados a eso del “trabajo en paralelo”… son multitarea… y esto lo ponen en práctica también durante las artes amatorias… tratando de estimular todos tus zonas erógenas simultáneamente). Los geeks no están interesados en mantener un status social. Los geeks se convierten en geeks porque eligen gastar su tiempo en hacer las cosas con las que ellos realmente disfrutan (programar, leer, hacer cubos de rubick, loquesea), y pasan de aquellas cosas que sólo les servirían para hacerse populares entre los demás, como los deportes o la moda. La habilidad para resistir a la presión social es importante para un geek. Esto se traduce en que están mas interesados en ser (y hacerte) verdaderamente feliz, que en tratar de caerle bien (o “aparentar”) a los demás. Esto te vendrá fenomenal en el caso de que estés necesitada de atención… sea del tipo que sea… desde alimenticia a lasciva (incluso, y al no ser incompatibles, puede ser una combinación de ambas). Los geeks están ansiosos por complacerte. Muchos chicos que triunfan socialmente, tras años y años de éxito entre las chicas, acaban tan confiados sobre sus posibilidades de obtener una pareja que sólo les interesan de éstas su faceta sexual. No tienen la más mínima intención de ir más allá. Para ellos sólo serás un rollo más… su penúltima diversión pasajera. Todo lo contrario sucede con los geeks. La escasez de compañeras sentimentales hace que estos se aproximen a sus nuevas parejas con la ilusión y ganas de un neófito. No están sobrados de confianza; por lo que no te costará trabajo domesticarlo como a un conejito; que ansiosa y gustosamente complacerá cualesquiera que sean tus necesidades. Te tratará como a una reina… y tranquila, en lo que no son aprendices es en la “guarreridas” sexuales… al fin y al cabo media vida viendo porno a través de Internet les habrá servido para algo. Los geeks tienen mucho aguante. ¿Quien no has visto alguna vez a un geek, absorto, afanado en lograr alguna cosa? Los geeks pueden canalizar su energia en una tarea concreta, con la intensidad de un guepardo en plena cacería. Vale… es cierto que estas tareas se acercan mas a ir a cazar orcos con dados de doce caras que en ir a atrapar gacelas con sus garras… pero el hecho es que un geek, una vez que se propone un reto, y se toma un café, va a trabajar sin descanso, como un esclavo, hasta conseguir su objetivo. Pon un litro de café en la mesilla de noche, y a un geek entre las sabanas, y habrás encontrado a un amante implacable. ¿Cuando fue la ultima vez que toda la noche significó realmente toda la noche? Los geeks son imaginativos. Una vez que has encontrado a un amante excepcional, lo peor que puede ocurrir es que las cosas acaben haciéndose aburridas, monótonas. Ahí es donde los geeks demuestran su superioridad. Estos, gracias a su afición a los videojuegos, saben que, por encima incluso de los “gráficos”, la “jugabilidad” es el factor más importante, y esta convicción inconscientemente adquirida la trasladan también a sus relaciones. En serio, ¿No te gustaría salir con quien creó un mod para el Quake 3? ¿Y con alguien que escribió un fancomic subido de tono, incluyendo incesto entre elfos, sobre el Everquest? ¿Y que me dices de alguien que prefiere ser Morfeo antes que Fernando Alonso? buenas!! como hoy estoy espesa y ocupada.... y para celebrar la nueva imagencilla que he puesto a la izquierda.. (los que leeis por RSS, ya sabeis ^^) .. os traigo este bonito e infernal video!!! dios!! ataque glucémico!!!! (y por cierto, que digo yo: la hermana gemela de hello kitty no se siente discriminada??) quereis mas?? aun no es suficiente?? pues... ahi va otro!! Y bueno, respecto a mi vida privada... - Llevo como una hora partiendome el culo de los requerimientos recomendados de Windows Vista . Mis papis van a comprar otro PC y se me ha ocurrido echarles un vistazo, juas! (porcierto, acabo de leer aqui esto: "Todos los equipos aptos para Windows Vista Premium pueden ofrecer una mejor experiencia con Windows Vista, como la novedosa interfaz Aero de Windows." Eso no es lo que es copy-paste-cutre de Beryl ?? O no? agh, me estoy liando xD) - Ayer me comunico mi señor padre que nos pasamos a Telefonica otra vez (hasta ahora estabamos en Wanadoo/Orange). Es que le llamaron ayer y le contaron la historia de los 3 megas y el router wifi. Espero que vaya razonablemente bien ^^ - La pelicula de anoche fue Ninja Scroll . Uooooo es muy buena!! Os la recomiendo ^^ (si os gusta el anime y no os molesta el gore) Hi people! Estaba intentando escribir algo medio coherente, pero como he entrado a las 9 (de la mañana) y he salido a las 9.30 (de la noche) pues... lo siento, no puedo XD Asique os dejo simplemente un video majete que seguramente ya habreis visto la mayoria ^^U Y los que no lo hayais visto.. estais tardando!!! Es una parodia de El Concilio de Elrond, de El Señor de los Anillos: No! Obviamente NO soy yo la que lo ha instalado ^^U Es este simpatico caballero que lo ha instalado en .. ejem, un "nuevo tipo de máquina" (pista , y no es matrix) Bueno, como iba diciendo. Está en inglés sin subtitular y al tio se le entiende perfectamente (bueno, yo lo entiendo casi perfectamente :S) Para mis amigos negaos del idioma de chespir (xD) hago una transcripcion aproximada despues del video: (via 120%Linux ) "Hey! que tal? Esto es un "Windows Vista", el fantástico nuevo sistema operativo de microsoft. Voy a mejorar mi sistema (blablabla) y aqui tengo todo lo que necesito. Pero... lo puse en mi maquina y parece que es incompatible con todo lo que tengo en mi ordenador. Ahora posiblemente estés pensando "bahh seguro que su pc es viejo". No. Está totalmente nuevo. Y funcionaba, porque he visto la Pantalla Azul de la Muerte numerosas veces. Oh, genial! parece facil. si.. si! es muy simple! aha... muy bien. Ya hemos seguido perfectamente las instrucciones. Y ahora, cogemos el disco: nuestro disco de Windows Vista! Es bonito y brillante, .. como todos los productos de microsoft. Ahora.. lo cargamos en nuestra maquina. Ui.... parece que tampoco carga bien del todo en esta maquina. Oh, parece que voy a tener que trabajar un poco mas con esto. Si! ya lo tenemos!! Se ha cargado!! Veamos... si, aqui está, totalmente listo para su uso. Maravilloso! Y así es como instalamos Windows Vista ^^ " Y bueno, para acabar, un chiste: Se abre el telón y aparecen Linux, MS-DOS y Windows 95. Se cierra el telón, como se llama la pelicula? ... ... ... El bueno, el feo y el malo! xD nos vemos ^^ Visto en NPC (si, es un sujetador que se ata con tecnologia USB ... o lo que es lo mismo: unplug & play! XD) Este texto largo de cohones, pero merece la pena ^^U Obviamente, no puedo estar de acuerdo con todo al 100% (ni con esto ni con nada ^^U pero sí que tiene su gran parte de razon. Y tambien hay que tener en cuenta que tiene casi 6 años. Eso tambien influye ^^U (Respecto a la imagen... siiii!! es un adorable Commodore-64 !!!! Iba a poner una imagen del ENIAC pero ya era pasarse xD) Octubre del 2001 - Revisión 1.0 Para la demostración de todas las anteriores premisas contaremos con la ayuda de nuestros 2 inestimables colaboradores: 2 - Ingredientes necesarios para instalar un Pringao 3 - Modo de instalación y funcionamiento Bien, ya tenemos el germen de nuestro pringao instalado en el sistema... 3.1 Instalando a nuestro Pringao A las 2 horas ya tenía el CD de Windows Millennium Edition (tenía que ser buenísimo porque el nombre suena guay) de mi primo Rodrigo Mita y pasé con cara de ``pobrecito niño (tm)'' a casa del vecino, procurando que me viera su madre. Con un tímido `` YA TENGO EL PROGRAMA QUE ME DIJISTE, ¿ME LO INSTALAS?'' conseguí tener al pringao en mi casa instalándome el Windows ME. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||