Computer Science is no more about computers than astronomy is about telescopes. Edsger W. Dijkstra

Acertijo (actualizado)

2007-09-25 20:34:51-05

Actualizacion a mi Pagina

Desde hace algún tiempo en mi página (gracias a la iniciativa de THE J, un cuate matemático) he puesto una serie de acertijos. Se recibieron respuesta de los 2 primeros, pero del tercero no hubo.

Para los que no recuerden el acertijo No. 3 aquí está.

Encuentre la cadena de 4 dígitos que mejor completa el arreglo siguiente:

6180
3392
****
3106
5556
9988
5484

Pero nuestro cuate THE J, promete un libro para el primero que lo resuelva. Y aquí están una pista que ha dado:

  • Se celebraba en tiempos de Colón el día de San Valentín? Cómo sería ese relajo en aquellas épocas?

Con esa motivación :) hay que ponerse a checarlo bien :). A ver si le interesa a algún mononeurón, ponerse chingón para resolverlo.

Las respuestas se recibirán por correo en: da.pigasus<at>gmail.com y hermes.o.r<at>gmail.com

Permalink: http://www.mononeurona.org/users/entry/thot/819


LaTeX (Procesador de Textos, no mamadas)

2007-09-20 16:15:05-05

Programacion

Muchas veces había escuchado hablar de LaTeX, y desde hace unas semanas me he puesto a revisarlo, y de verdad que he quedado encantado.

LaTeX son un conjunto de macros del lenguaje TeX, creado por Donald E. Knuth (autor de los volúmenes de "The Art of Computer Programming), por lo tanto LaTeX es un forma "fácil" de usar TeX.

Para los que estén acostumbrado a "Word" o a "Writer" cabe mencionar que no se parece en mucho, LaTeX/TeX. Los primeros no son más que procesadores de palabras, LaTeX es un procesador de textos. Para crear un documento en LaTeX lo importante es especificar la estructura, el contenido se ubicará apropiadamente según la plantilla de documento a utilizar. Cuenta con muchas ventajas, es multiplataforma, crea contenidos para impresión profesional, soporte excelente para fórmulas matemáticas (que para muchos es un dolor de cabeza en un procesador de palabras). Y una última ventaja que es bastante interesante, es que tiene muchísimos agregados que pueden hacer de LaTeX algo realmente potente para hacer todo tipo de textos.

Ahora, el primer ejemplo en LaTeX, un "Hola mundo" del procesamiento de textos (los "%" son comentarios en LaTeX).

 
%Definimos el tipo de documento
\documentclass{article}
% Definimos el inicio del documento
\begin{document}
%Contenido del documento
Hola mundo.
% Fin del Documento
\end{document}

 

Para compilar, únicamente hacemos lo siguiente:

$ latex archivo.tex

Con esto tendremos generado un .dvi, que se puede ver en el "Visor de Documentos" de Gnome. Pero también lo pueden convertir a PDF

$ dvipdf archivo.dvi

Desgraciadamente este ejemplo no contiene algunas opciones que podrían hacer de LaTeX algo atractivo. Se podría probar este ejemplo:

 
% Definimos el tipo de documento, papel y tamanio estandar de fuente
\documentclass[a4paper,11pt]{article}
% Definiendo el autor del articulo
\author{Thot}
% Titulo del Articulo
\title{Hola Mundo}

\begin{document}
   % Generar el titulo
   \maketitle
   % Insertar la tabla de contenido
   \tableofcontents

   % Definimos una seccion con su contenido
   \section{Primeros pasos}
      Hola mundo en LaTEX.

   % Definimos otra seccion
   \section{Fin}
      \ldots{} esto es todo.

\end{document}

 

Como comentario personal, creo que con un poco de práctica (y de verdad que no mucha) y leyendo un poquito la documentación, en menos de 2 días podrás estar haciendo documentos bastante aceptables (:P casi todo lo hace LaTeX).

Existe un editor WYSIWYG (aunque no cumple este característica al 100%) llamado LyX para poder editar documentos en LaTeX. Además de varios paquetes muy interesantes. (Si usas una distro basada en Debian lo puedes instalar con aptitude). Por ejemplo: texlive-latex-recommended , este contiene un paquete que permite el resaltado de código fuente, con solo agregar una etiqueta.

Cómo última nota el día de hoy he leído en Barrapunto sobre hacer un Currículum Vitae en LaTeX, y generó una gran cantidad de comentarios..., entre ellos:

  • "¿Para qué quieres esa frikada?" : No creo que sea tan friki :P.
  • "Si lo triste de esto es que te curras un CV bien presentado en LaTeX o (x)html, y siempre está el/la tipico/a de rrhh que como no se lo mandes en (el universal, magnífico e ISO-compliant...) formato Word te dice que no lo puede leer." : Ese me dio bastante risa, porque es muy cercano a la realidad.

Lo más cagado es que hace unos días hice mi currículum en LaTeX, pero utilicé la plantilla "article" (existe una llamada cv, pero no me gustó).

Si alguien lo quisiera de ejemplo, nada más que lo diga, y pues lo pongo.

Permalink: http://www.mononeurona.org/users/entry/thot/812


Pestilente la política en México

2007-09-14 17:49:57-05

Polaca

Creo que el título, no es de extrañar para nadie. Pero pues voy a dar mi opinión muy personal del "por qué".

Se me hace muy triste ver como se está manejando la política en este momento. No cabe duda que se necesitan reformas en este nuestro pobre país que se está derrumbando y va directo a la mierda, pero cada quién jala agua para su molino.

Los del PAN orientados al aspecto del dinero, y se van parar mantener la "cleptocracia", que es el régimen que nos rige actualmente), quieren aprobar (bueno ya aprobaron en la cámara de diputables, una reforma fiscal ridícula. Que sigue manteniendo los privilegios para los grandes capitales, y trata de sacar la lana de los que estamos jodidos. Por citar un par de ejemplos, para empezar la alza a la gasolina, que ahora va a ser por partes (nada más no las van a meter más despacio), pero pues yo podría decir: "A mí me vale madre, ni carro tengo." o "Ya hay un chingo de carros, está bien para que le bajen", pero pues eso no es lo único que afecta, al subir el precio del combustible, aumenta el precio de casi todo (por cuestiones de que el transporte sube), y pues dudo que muchos patrones, menos los de COPARMEX, vayan a decir, "no hay pedo como subió la gasolina y todo está subiendo, les voy a subir el sueldo". Y todavía peor, lo que ya habían aprobado antes la CTU (Cuota de Tasa Única) que ahora cambió de nombre, y que se trata de que los pequeños negocios ya no tengan que contratar a un pinche contador, sino que paguen una tasa única y se eviten de pedos. Pero pues eso es para lo que en su negocio ganan muy poco. El pedo de aquí es que muchos de esos negocios puede que no saquen para pagar ese impuesto. (Me consta, por la papelería de mi jefa). Pero esto no es lo más culero, es que con esa tasa, chingan a los que menos tienen y siguen manteniendo las tasas "preferenciales" a los grandes capitales, y permitiendo porquerías como "el redondeo" donde las grandes empresas literalmente se cogen a todos los mexicanos. Y pues ya ni mencionar el "impuesto a la informalidad", que es otra mamada.

Los del PRD apoyan una política electoral para que no vuelvan a hacer fraude electoral, que pues ya sabemos que ha sido una violación a la democracia de la que tanto habla el gobierno actual, pero mal redactada, donde hay muchas cosas que están bailando. Tiene muchas cosas buenas no se puede negar, pero la mala redacción de las leyes, cómo el pinche artículo que tanto critican los medios, puede hacer caer en las mismas porquerías para mantener este sistema corrupto.

Y todavía para acabarla de cagar, los medios gritando a los 4 vientos por el artículo "que viola la libertad de expresión", y no cabe duda, eso es malo, sobre todo lo sabemos quienes estamos metidos en esta onda del "Software Libre", y pues muchos condenamos cualquier acto en contra de la libertad. Pero ¿por qué tanto grito ahora?, y no dijeron casi nada en los medios (oficialistas claro) de una reforma fiscal que se va a coger a todos los mexicanos. (Desgraciadamente he tenido la desdicha de estar viendo las noticias en TeIdiotiza y TvApesta, ni mencionar que vi parte de Tercer Grado, de preescolar, otra vez, y no pude soportar tanta estupidez). ¿No debería ser cuando más deberían de gritar y de criticar, cuando tratan de oprimir a la gente con más hambre?.

Y de ahí me pregunto, ¿¿hay algo que festejar en estas "fiestas patrias"???

Permalink: http://www.mononeurona.org/users/entry/thot/783


Crear imágenes de CD (en consola)

2007-09-08 18:10:19-05

Software Libre

Leyendo la revista OCCAM's Razor No 1. Me encuentro con algo muy interesante, cómo realizar rápidamente una imagen de CD, y manipularla. (Todo esto en consola, por supuesto).


# dd if=/dev/cdrom of=imagen.iso
# mount -o loop imagen.iso /mnt/tmp

... utilizar la imagen que se montó

# umount /mnt/tmp

Permalink: http://www.mononeurona.org/users/entry/thot/771


Descubren un mineral que absorbe radiación

2007-09-07 19:08:23-05

Ciencia

"Científicos Rusos en las montañas Khibinsky en el Círculo Ártico han hecho un importante descubrimiento científico. Ellos han encontrado un nuevo mineral el cual absorbe la radiación.

Este mineral todavía no tiene un nombre oficial y es conocido solo por el número 27-4. Puede absorber radiactividad desechos nucleares líquidos.

"El mineral puede extraer sustancias radiactivas de cualquier solucion acuosa y esto tiene una gran importancia en el sentido práctico", dijo Yakov Pakhomovsky, el jefe del Instituto de Investigación Kolsky.

Despues de entrar en contacto con el mineral, el agua radiactiva llega a ser completamente segura. Este mineral ha estado disponible para los físcios después de los desastres de Chernobyl y la isla "Three Mile", las consecuencias pudieron haber sido diferentes, ya que ambos resultaron en la contaminación de agua radiactiva.

Sin embargo, esto no es tan sencillo como suena. Los científicos dicen que se necesita toneladas de este mineral y ellos solo han descubierto unos cuantos gramos. Pero ellos confían que puedan reproducir químicamente este mineral a una escala mucho mayor.

"Necesitamos aprender sus propiedades y así poder reproducirlo químicamente a una escala ilimitada", dijo Grigory Ivanyuk, del Instituto de Investigación Kolsky.

Cada año 10 nuevos minerales son descubiertos en el Círculo Ártico, y una tercera parte los minerales descubiertos en todo el mundo están en la Península Kolsky.

El último descubrimiento puede ser extremandamente importante para la industria nuclear.
"


Traducción de este artículo.

Sería interesante pensar que esto podría hacer más viable la utilización de la energía nuclear. Ya que poniéndose a soñar un poco, con este mineral hasta se podrían tratar  de evitar los daños causados a las personas por la radiación (tomando en cuenta que el cuerpo esta compuesto en su mayor parte de agua) - esto es solo una suposición ya que no sé nada de química y de biología -.

Permalink: http://www.mononeurona.org/users/entry/thot/770


La iglesia, con algo coherente!

2007-09-07 16:56:11-05

Programacion

Ya hace un tiempo había posteado "la iglesia y sus mamadas", que trata sobre las pendejadas escritas en un comunicado de la Arquidiócesis de México.

Pero acabo de ver con mucho agrado (honor a quién honor merece) un comunicado sacado por 45 sacerdotes de Oaxaca, hablando acerca de la situación de este nuestro estado.

Si quitamos los pocos comentarios sobre religión ("Jesús esto", y "Jesús el otro", aunque realmente son pocos) queda un comunicado muy coherente e interesante. Además de que tiene condensado el sentir de la gente y una percepción bastante clara de la situación que se vivió, vive y vivirá en Oaxaca (en mi personal opinión).

Para muestra un botón:

"  ... No es verdad, en nuestro caso, que merecemos el tipo de gobierno
que tenemos, otra cosa es que lo hayan secuestrado durante tanto tiempo.

- No necesitamos una clase política, lo que necesitamos es un grupo de hombres y mujeres
honrados que hagan política con clase, capaces de conducir una democracia que no sea sólo una
forma de gobierno ni sólo aquello que está escrito en la constitución, sino un concepto de la
existencia que se basa en la confianza en los seres humanos, en la humanidad, en la naturaleza
humana.

-     También es una obligación ética y de buen gobierno no seguir militarizando nuestro estado, ni
este ni otro gobierno se sostiene bajo la amenaza de las armas
."

Para leer el comunicado completo : aquí.

En caso de que quitaran el enlace, se agradecería el aviso para ponerlo en un servidor. (No mencionan el tipo de licencia :P).

Permalink: http://www.mononeurona.org/users/entry/thot/769


Empezando cursito de C

2007-09-05 19:40:31-05

Programacion

Había empezado en mi página un cursito de C, en el cual pensaba explicar problemas que estuvieran interesantes (para mi gusto) o que necesitaran de alguna técnica interesante. (Por eso principalmente agregaba cuestiones de recursividad). Los temas "ligeros" pensaba dejarlos abiertos por si alguien se animaba a redactarlos.

Gracias a un comentario de SaidJose, (y debido a que tengo un poco de tiempo libre) me animé a redactar un cursito empezando desde lo más básico. A ver que tal sale.

Aquí está el índice de Temas que lleva el cursito. Acabo de agregar  "Iniciando con C", para empezar  a foguearse, a esto continuarán explicaciones sobre las partes que componen un programa en C, las estructuras de control, etc. etc. Comentarios, dudas, sugerencias, correciones, aportaciones, etc. son recibidas con gusto.

Permalink: http://www.mononeurona.org/users/entry/thot/763


Reproductor de video MPEG-1 en C

2007-09-01 19:29:27-05

Programacion

Esto no es un deja vu, :P este post, es para reproducir un video MPEG-1 :).

Despues de realizar un reproductor MP3 en C, se puede utilizar la librería smpeg (SDL MPEG player library) para lograr reproducir un video MPEG-1. Esta librería fue desarrollada por el equipo Loki, pero desgraciadamente este proyecto fue abandonado por Loki.

Fue realizada para trabajar con la librería SDL (Simple DirectMedia Layer), la cual es una librería utilizada principalmente para el desarrollo de juegos. (En la zona de descargas hay algunos proyectos realizados con SDL). Y pues los requerimientos son los mismos que para el reproductor MP3.

  • Compilador de C (personalmente uso el gcc)
  • Librería SDL, para desarroladores (En debian: aptitude install libsdl-dev)
  • Librería smpeg, para desarrolladores (En debian: aptitude install libsmpeg-dev)

Listo, ahora podemos comenzar, con el siguiente código:

#include < stdio.h >    // Libreria standar de entrada/salida en C
#include < smpeg/smpeg.h >  // Libreria SMPEG
#include < SDL/SDL.h >        // Libreria SDL

int main (int narg, char *args[])
{
    SMPEG *mpeg;  // Aqui se guardara el MPEG
    SMPEG_Info info;  // Informacion del video
    SDL_Surface *screen;   // Pantalla donde se mostrara el video (SDL)
    int vol=0;   // Variable de volumen
    SDL_Event event;   // Evento para capturar la salida del programa
    int salir = 0;   // Bandera usada para salir del programa
   
    // Se verifica que hayan puesto todos los parametros (archivo y volumen)
    if (narg<3)
    {
        printf ("Usar:\n %s \n\n",args[0]);
        exit(1);
    }       
   mpeg = SMPEG_new (args[1], &info, 1)// Se crea el archivo de video
   sscanf (args[2],"%d",&vol);   // Se verifica el volumen
   if (!vol) vol = 50
   SMPEG_setvolume (mpeg,vol); // Se activa el volumen
   
    /* Inicializamos la SDL, con audio y video */
    if(SDL_Init(SDL_INIT_AUDIO|SDL_INIT_VIDEO) == -1){
        printf("No se pudo iniciar el video: %s\n", SDL_GetError());
        exit(-1);
      }

      /* Activamos la ventana del tamanio del video */
      screen = SDL_SetVideoMode(info.width,info.height,16, SDL_SWSURFACE);
      if(!screen) // Si no se puede crear la ventana, lo mandamos a la mierda
      {
        printf("No se pudo iniciar el modo de pantalla: %s\n", SDL_GetError());
        SDL_Quit();
        exit(-1);
      }
    SMPEG_setdisplay(mpeg, screen,NULL,NULL);   /* Mandamos a la ventana que creamos el video, los 2 ultimos NULL son funciones para controlar el video y la actualizacion, pero para este ejemplo no es necesario */
    SMPEG_play (mpeg);   // Empezamos la reproduccion
   
    while (SMPEG_status(mpeg) == SMPEG_PLAYING && !salir)   // Ciclo para el evento de cierre de la ventana
    {       
        SDL_Event event;        // Capturamos el evento de cierre de ventana, si sucede -> salimos
        if ( SDL_PollEvent(&event) ) {
          switch (event.type) {           
            case SDL_QUIT:
                salir = 1;
            }
        }
    }
    SMPEG_delete(mpeg);    // Borramos el MPEG
    SDL_Quit();   // Salimos de la SDL
}
 

Ahora compilamos (el archivo lo llamé video.c)

$ gcc -o video video.c `sdl-config --cflags` -lsmpeg `sdl-config --libs`

Para compilar esto, utilizamos las opciones de compilación de la librería SDL además de agregar a la smpeg (-lsmpeg).

Ejecutamos:

$ ./video archivo.mpg 50

Nota: En caso de tener un error como este:

ALSA lib pcm_dmix.c:864:(snd_pcm_dmix_open) unable to open slave

Este problema solo me sucede con gnome, al probarlo con otros manejadores de ventanas funciona sin problemas.

Posiblemente se deba a esto:

$ fuser -v /dev/dsp
USER PID ACCESS COMMAND
/dev/dsp: thot 4032 F.... esd
$

Nota importante: Para que no se pasen un tiempo a lo pendejo buscando porque no reproduce un video MPEG, verifiquen que la codificacion sea MPEG-1, ya que el MPEG-2 no es aceptado por la libreria ya se supone que esta protegido por ciertos derechos en el país gringo.

Permalink: http://www.mononeurona.org/users/entry/thot/756


Reproductor MP3 en C

2007-08-31 18:39:14-05

Programacion

Para realizar un reproductor MP3 en C (claro bastante rústico porque es en consola), se puede utilizar la librería smpeg (SDL MPEG player library). Esta librería fue desarrollada por el equipo Loki, pero desgraciadamente este proyecto fue abandonado por Loki.

Fue realizada para trabajar con la librería SDL (Simple DirectMedia Layer), la cual es una librería utilizada principalmente para el desarrollo de juegos. (En la zona de descargas de mi página hay algunos proyectos realizados con SDL)

Para esto necesitaremos lo siguiente:

  • Compilador de C (personalmente uso el gcc)
  • Librería SDL, para desarroladores (En debian: aptitude install libsdl-dev)
  • Librería smpeg, para desarrolladores (En debian: aptitude install libsmpeg-dev)

Listo, ahora podemos comenzar, con el siguiente código:

#include < stdio.h >
#include < smpeg/smpeg.h > // Agregamos la libreria smpeg
#include < SDL/SDL.h > // Agregamos la librería SDL

int main (int narg, char *args[])
{
SMPEG *mpeg; // Variable donde se guardara el archivo MP3
SMPEG_Info info; // Estructura donde se guardará la información del archivo
int vol=0;
if (narg<3) // Se verifica que se hayan metido los 2 parámetros (archivo y volumen)
{
printf ("Usar:\n %s \n\n",args[0]);
exit(1);
}
mpeg = SMPEG_new (args[1], &info, 1); // Se lee el MP3, utilizando la SDL para reproducirlo (tercer parámetro)
SMPEG_enableaudio (mpeg,1); // Se activa el audio
sscanf (args[2],"%d",&vol); // Se lee el volumen
if (!vol) vol = 50; // Si no es un dato correcto se pone el volumen a la mitad
SMPEG_setvolume (mpeg,vol); // Se fija el volumen deseado
SMPEG_play (mpeg); // Se empieza a reproducir
while (SMPEG_status(mpeg) == SMPEG_PLAYING) // Bucle mientras se mantenga reproduciéndose el archivo
{
SMPEG_getinfo (mpeg,&info); // Tomamos la información
printf ("%lf/%lf\n", info.current_time, info.total_time); // Imprimimos el avance del MP3
SDL_Delay(10); // Hacemos una pausa de 10 ms, porque de otra forma este proceso ocuparía todo el procesador
}
SMPEG_delete(mpeg); // Eliminamos el apuntador al MP3
}

Ahora compilamos (el archivo lo llamé test.c)

$ gcc -o test test.c `sdl-config --cflags` -lsmpeg `sdl-config --libs`

Para compilar esto, utilizamos las opciones de compilación de la librería SDL además de agregar a la smpeg (-lsmpeg).

Ejecutamos:

$ ./test cancion.mp3 50

Nota: En caso de tener un error como este:

ALSA lib pcm_dmix.c:864:(snd_pcm_dmix_open) unable to open slave

Este problema solo me sucede con gnome, al probarlo con otros manejadores de ventanas funciona sin problemas.

Posiblemente se deba a esto:

$ fuser -v /dev/dsp
USER PID ACCESS COMMAND
/dev/dsp: thot 4032 F.... esd
$

Referencia: Revista OCCAM's Razor No 2

Permalink: http://www.mononeurona.org/users/entry/thot/755


Pequeños cambios en Página Personal.

2007-08-23 20:18:26-05

Actualizacion a mi Pagina

Después de estar metido en otras cosas. Por fin le dediqué un poquito de tiempo a mi página personal, e hice unos pequeños cambios en el diseño.

  • Cambiar de posición ciertos elementos.
  • Utilizando un tutorial que ya había puesto, adapté los elementos de la página a un menú desplegable.
Próximamente espero complementar el curso de C, con algunos temas interesantes.

Permalink: http://www.mononeurona.org/users/entry/thot/730


Login



Remember me:
thot
Amante de la libertad y por lo mismo un ferviente partidario del software libre.
linux politica programming software libre hacking
Powered by:
Despabilando la MonoNeurona.org
Livechat

<-Nombre
souf wrote:
está vivo... ¡VIVO!
3 weeks, 3 days ago

souf wrote:
¡funciona!
3 weeks, 3 days ago

souf wrote:
yes
3 weeks, 3 days ago

thot wrote:
simón, s1mo yo creo que sí. Hay que ponerse de acuerdo.
on 6/5/08

s1m0 wrote:
que onda thot ps el aarkerio que tiene ganas de un curado de melon jaja ps ahora que vayamos a teotihuacan jaja como vez??
on 2/5/08

teosho wrote:
que tal alocardio_tut
on 26/4/08

aarkerio wrote:
Viendo si el livechat sirve
on 5/4/08

gmarin38 wrote:
q onda ponte chingon ya falta poco tiempo para tu taller :P
on 10/10/07

norcorp wrote:
guayabin que paso como has estado?
on 25/8/07

alucard_thot wrote:
y cuando fui, sí, hacía algo de calor
on 21/7/07

¿Qué estuve haciendo?
También OpenArena, ya que mencionaron un shooter como Tremulous
1 day, 5 hours ago
Exacto, o construye material libre :P
4 days, 19 hours ago
http://mono neurona.org entra a karamelo. No creo que sea bug, nada más comento.
6 days, 18 hours ago
@vendaval: Creo que punto medio es lenny, o sid. El extremo rudo seria experimental
3 weeks, 1 day ago
Pues a mi me ha dado muy pocos problemas la rama sid.
3 weeks, 1 day ago
Por que no le pones sid?
3 weeks, 1 day ago
http://en.wikipedia.org/ wiki/ Proxy_server
3 weeks, 5 days ago
un manteiner de debian mexicano
on 5/6/08
Nel, es un wey medio pedote, y putón. Pero a toda madre el cabrón. jajaja
on 29/4/08
Chido aarkerio, gracias por el cambio de nick.
on 29/4/08
Galerias
FirefoxjEdit.orgGimpOpenOffice.orgHacker
Top
Colectivo MonoNeurona.org © 2002-2008.