Archivo de la etiqueta: software libre

Sigo pensando que javascript apesta

He vuelto a programar efusivamente en javascript y vuelvo a ver que hay unos errores de diseño muy gordos que dan problemas. Que si, que PHP apesta mas y tal estarás diciendo, o dirás «anda con el señorito seguro que piensa que Python es un regalo de los dioses» …pero estamos hablado de Javascript ahora.

¿Hay hilos en javascript? Si, si los hay pero no son accesibles desde el propio lenguaje.

Entonces hay hilos,  Error no hay acceso a hilos.

Y añado ¿Porque no hay un simple mutex / semáforo? Hubieran ahorrado toda esa mierda que tiene nueva de webworkes y flautas dulces, un semáforo para gobernarlos a todos…y después si tu ego te incita a crear meta-mierdas para vender libros de portadas animales grises pues bien para ti y bien para tus mojados canzoncillos.

Vale…no hay semáforos…pero ¿Porqué no hay un sleep? Maravillosa instrucción para no quemar CPU mientras espero una ejecución por otro hilo (de los que son como paranormales, no existen pero existen en javascript) y con un apaño guarro de un semáforo con una variable global. Y si yo hago mal en javascript y se queda ahí clavado, es mi culpa un lenguaje no tiene que estar diseñado para cuidarme como un tontito que no se hacer nada, si soy un manazas y un bruto me jodo y hago bien las cosas.

Lo del sleep es un error gordo pero gordo gordo, y no lo digo yo solo, si no gente tan potente como los de emscripten (un traspilador de C a javascript muy famoso) https://github.com/kripken/emscripten/wiki/Asyncify.

Y para finalizar el famoso living standard de javascript que se ha puesto de moda, que significa nuevas versiones de diseño del lenguaje no chocan con los navegadores que soportan versiones viejas porque en tiempo de ejecución (o previo por el rollo de los headers http) le manda código parcheado y librerías para que use las nuevas cosas en el navegador con la versión vieja….¿Pinta bien?…claro que si, pero tienes que meterte en la secta de node.js y todo eso, te ofrecen el caramelo y después ¡¡zasca!! ya estas enmarronado usando miles de frameworks y tonterias de hipsters con pegatina del gatopulpo en su blaquito mac.

turd-146305_960_720

Software libre que esperamos para Android desde hace años

Si, si, ya lo se, Android es el mal, es un engendro de una corporación maligna desmembrando a nuestro tierno pingüino y lo ha convertido en un feo y inhumano cyborg verde.

Pero dejando a parte estas consideraciones personales…

Llevo esperando la versión para Android de los siguientes proyectos de software libre…si ya lo se…que lo se…que puedo participar el proyecto para llegar a esa meta…pero no hacerlo o no poder hacerlo, no implica que poder alzar la voz en una pequeña critica.

Pidgin: un viejo conocido, lleva muchos años con nosotros, quizá lo conociste como Gaim, en mi vida apareció como alternativa libre al asqueroso pero necesario «microsoft mesenguer» allá por los finales de los noventa y principios de los dosmiles. Y ha seguido conmigo acompañándome por su principal característica de ser multiprotocolo.

¿Por qué en Android?

Porque es multiprotocolo y poder mandar a freír espárragos toda esa mierda de apps de mensajería…un anillo para unirlos a todos. Para los frikis de la seguridad, pidgin tiene los mejores plugins de seguridad. Y porque no hay un cliente de IRC decente en Android, que sea una interfaz limpia y que aproveche las técnologías de Android.

¿Y como anda el tema?

Pues nada a fecha de 2016, solo hay gente preguntando en la lista https://pidgin.im/pipermail/support/2016-May/029417.html y solo hay un intento de prueba de libpurple (la librería core del proyecto) https://www.reddit.com/r/linux/comments/411vpp/pidroid_im_a_proof_of_concept_port_of_pidgins/ .

Vassal: también otro conocido en el mundillo, en este caso es «una mesa de juego virtual» que implementa centenares de juegos de mesa, wargames y otras hierbas en paquetes llamados mod. Digo mesa, porque muchos de esos mods no tienen implementadas las reglas de juego y simplemente tu haces lo que quieras (para mal o para bien si eres un tramposo). Con los amigos puedes jugar o en tiempo real en el mismo PC u online o algo muy útil por «correspondencia» que te genera un fichero por cada partida que se lo tienes que pasar al siguiente jugador. No obstante pese a todo, es genial, jugar a cualquier caro wargame o descatalogado juego viejuno ochentero de tu infancia con tus amigos.

¿Por qué en Android?

Porque las tabletas / tablets / cacharros que regalar en reyes son la gran revolución videojueguil que hasta la capitalista de nintendo copio. ¿Quién no ha pasado un aburrido y largo viaje en tren / autobus con amigos o pareja? Antiguamente hacías crucigramas en grupo, sopas de letras, después vinieron los sudokus e incluso llego a haber versiones de los juegos de mesa para viaje (que eran una castaña por las fichitas pequeñitas y propensas a perderse en la siguiente curva / frenada debajo de los asientos)….pero probar una partida de Carcasone, backgamon o incluso juego de la oca en la tablet es genial, elimina todo sufrimiento de viajar. ¿Ahora entendéis porque Vassal su campo de juego perfecto son las tablets con Android? Es que encima es Java por lo que algún % estará mas fácil de portar.

¿Y como anda el tema?

Pues también como con Pidgin, muy muy parado. Se habla de que en la futura y lejana por venir versión 4 tendrá soporte para Android.

Otros ya vinieron.

Quién no recuerda cuando apareció VLC para Android, canela fina para reproducir cualquier vídeo, reproducir cualquier cosa que se emita por internet (radio o televisión). O los puzzles del gran señor Tatham que se hablo de ellos en la web de elbinario en Sudoku para Android sin publicidad y libre. Grandes proyectos de sofware libre que ayudan a tener un móvil limpio y libre…suena un poco facha esa frase si la cambiamos por un país jajajaja…

¿Y tu que software esperas en Android como agua de mayo?

tradtelefon-illustration

FPGAwars conferencia de Obijuan

Ayer vi la conferencia de ObiJuan sobre el trabajo que está haciendo sobre estandarizar y hacer libres las herramientas para trabajar con FPGA.

Que para el que no pinche en el enlace de la Wikipedia, una explicación rápida, son un chip que se puede comportar como cualquier otro chip o conjunto de chips (chipset) dentro de sus posibilidades (algo que no dice en la conferencia), cierto es que no es sólo el chip sino que está la placa o circuito que viene montado para facilitar una cosa u otra, pero es eso a grandes rasgos.

El trabajo que está haciendo Obijuan es digno de regalarle sus buenas patas de jamón, porque pese a que en algunos mundillos son muy conocidas (otra cosa que discrepo de la conferencia)  como por ejemplo la emulación, la cantidad de viejo-ordenadores y otros cacharros ochenteros que están volviendo a la vida con las FPGAs hacen por su conversión 1 a 1 (cosa que discrepo contigo Alfayate, porque como trabajo replicar tarda en muchas versiones a llegar igual al original) mojar las bragas a muchos.

Bueno volviendo al tema, os recuerdo un tweet de hace tiempo que le pregunte al Dios de Arduino:

¿Arduino en MIPS? Preguntas incomodas a David Cuartielles

Miguel_en_Twitter_.@dcuartielles_Perdona_una_pregunta._He_oído_que_el_Arduino_en_Intel_es_sobretodo_para_evitar_la_piratería_china._¿Es_cierto_-_2015-12-05_00.41.46

Que por cierto me confundí que le tenia que haber dicho OpenRISC…pero me hizo oídos sordos no obstante…

Con FPGA nos podemos acercar al hardware libre, falta la fabricación…pero tiempo al tiempo…

Bueno la conferencia de Obijuan:

Recopilación de truquitos de shell en GNU/Linux

  • todas las entradas del menu de gnome
/lib/modules/2.6.28-14-generic/build/include
  • contar los archivos de otro directorio:
find /etc/ -type f | wc -l
  • timestamp to date
 date -d @1193144433
  •  timestamp de la hora actual
date +"%s"
  •  renombrar masivo
find . -name "*.caca" -exec mv {} {}.bk \;
  • consola interactiva en Perl (estilo a la python o php)
 perl -d -e 1
  • buscar con el find y evitar lo de permiso denegado
find / -name "*caca*" 2>/dev/null
  • montar una unidad virtual ssh con fuse
sudo mkdir /media/server1
sudo chown miguel /media/server1/
sshfs root@192.168.50.50:/var/www/ /media/server1/
  • Crea  .tar.gz
tar czvf <fichero>.tar.gz <nombre_ficheros_seleccionados_o_directorio>
  • Muestra contenido de un .tar.gz
tar tzvf fichero.tar.gz
  • Extrae contenido de un .tar.gz
     tar xzvf fichero.tar.gz
  • Crear un fichero lleno de ceros de 1kB
 bs <- el tamaño del bloque
 count <- numero de bloque

dd if=/dev/zero of=/tmp/test_zero bs=1024 count=1

linux_div_cowsay

Metamateriales e impresoras 3D como un T2000 podía tener mecanismos

Aunque según la gráfica de adopción de la tecnología (wikipedia en español) las impresoras 3D están yendo hacia el punto de la gráfica de «Abismo de desilusión» (cómo podéis ver en la gráfica), siguen apareciendo nuevas cosas sorprendentes como esto de los metamateriales.

ciclo_de_sobreespectacion_de_gartner_-_basica_559x363

¿Qué son los metamateriales en impresoras 3D? Pues es una forma de usar el material de forma distinta para que haga otras cosas, vamos como coger un huevo y llevarlo al punto de nieve para hacer merengue o freirlo para hacer un huevo frito. En el caso de las impresoras 3D de plástico, ya se ha visto que se pueden hacer con plástico que es casi rígido cosas flexibles.

Pero el siguiente vídeo habla de un software (que creo que no es libre el cabrón) para crear «mecanismos» usando la cosa esta de los metamateriales.

Godot, lo que va venir, programación visual o nodal

La primera vez que vi la programación visual, fue hace años en el kit de desarrollo de un autómata del que ni recuerdo el nombre porque fue en casa de un amigo…menos mal que después ya apareció Arduino para quitar cacharros caros y cerrados de en medio.

Y pasados los años la siguiente vez que la vi fue en el Blender en el node editor, y era espectacular.

Y ahora parece que Godot, un engine para crear videojuegos que es la alternativa a Unity3D pero software libre y estándar, va ha meter la posibilidad de programar visualmente, no al estilo de  Scratch (que es en plan bocadillos/sandwitchs de código) si no al estilo nodal de Blender.

El vídeo es espectacular, os lo recomiendo ver:

Eres tonto, muchacho tu eres tonto y en tu casa lo tienen que saber

Con un poco de humor vamos a sacar uno de los artículos mas tristes de la «blogosfera del software libre», y bueno un poco de humor con la canción de Lolita Garrido.

Pero lo cierto que el articulo que os voy a poner el link, es de lo mas triste que he visto en mucho tiempo, como a estas alturas de la película una persona escribe algo tan confuso y tan enmarronando conceptos, menos mal que el software libre y la cultura libre ya esta tan asentada que es hasta anecdotico este articulo tan tan….puff es que no hay palabras.

Nueva filosofía de Valores y Comportamientos Éticos, sin Importar el Software Utilizado

Viene a decir que hay que usar mierda de software privativo para hacer bases de datos libres.

Le escribí un comentario, que de momento no lo han aprobado, y eso me ha motivado ha hablar de este triste articulo, farragoso que no hace mas que ensuciar tristemente la comunidad.

Y para que no se pierda en la eternidad mi comentario, os lo pongo por aquí:

Manda huevos….¿Tú no has vivido la época de las páginas web hechas en flash? Y no digo una tontería de animación al entrar, sino toda la página como la que tenía la empresa de autobuses de Castilla León.

¿O tampoco has vivido tener que hacer unas asquerosos trabajos de universidad en micro$oft visual basic?

Y ahora me vienes con estas tonterías de software privativo…eso me suena a la mierda de proyectos que llenan github con juegos programados en Unity3D…Y y tienen los santos bemoles de ponerles gpl de licencia. O las puñeteras impresoras o tarjetas gráficas o peor lectores del DNI electrónico que no funcionan en GNU/Linux.

Que poco has sufrido, para decir esas cosas tan a la ligera.

«VR on Linux» Una página a tener en cuenta

Vía el foro de FreeGamer...alias el último bastión de los pingüinos…me he enterado de que hay una interesante página llamada VR on Linux.

¿Y porqué darle tanto bombo y platillo a un simple blog sobre realidad virtual (y gafas de realidad virtual) en GNU/Linux? Porque puede que sea el futuro….o sea otro CD-Rom que se usara y pero que pasara al cajón como los disketes. Pero si es el futuro, a mi me gustaría disfrutar de un verdadero escritorio en 3D, quizá por encima de los videojuegos en realidad virtual que salgan.

Y por tanto hay que vigilar los movimientos y estar atentos a ver sucede en el mundillo porque espero y confío que el software libre estará ahí para romper.

Hay vídeos de inventos para el asqueroso windows con las oculus rift.

Código abierto y bacterias

Aun recuerdo este articulo cuando lo ley en una revista de linux hace tranquilamente 10 años.

Creía que se había perdido, pero hoy por curiosidad lo encontré, muy interesante:

con frases como:

Deberíamos dejar de pensar en las bacterias únicamente como organismos patógenos causantes de enfermedad. Os invitamos a observarlas desde un nuevo punto de vista, a saber, minúsculas nanomáquinas poderosamente adaptadas para formar redes de proceso masivamente paralelo (realmente masivo) y descentralizado

Código abierto y bacterias

window-80

Apaño para Linux multimonitor con uno vertical

En la configuración de mi battery cage que exige la sociedad actual, me han cambiado el portátil que tenia varias salidas de video pantalla del portátil y VGA tirando de una gráfica intel integrada muy majilla.

Pues la actual configuración es una tarjeta gráfica intel integrada y una tarjeta gráfica nvidia, los monitores, sigo manteniendo el externo en vertical (lo mejor para escribir y leer código porque es como un folio DinA4).

Como veis en la captura de ARandR esta es la forma de escritorio que uso.

arand_hens_cage

Pues por algún problema en los módulos para el kernel de intel y o nvidia, daba muchos jaleos porque la intel no se dejaba girar (con el viejo portátil si) y no cogía bien como primario la nvidia, además el gestor de monitores de Mate hacía cosas raras no dejaba alinear los monitores.

Pues he encontrado un apaño que os puede ser útil o dar una pista como solucionarlo, los pasos son:

  • configurar vía ARandR como te guste tu sistema multimonitor.
  • guardar el fichero de layout de ARandR, te va crear un fichero de shell script algo tal que así:
    #!/bin/sh
    xrandr --output VGA-2 --mode 1680x1050 --pos 0x0 --rotate left --output VIRTUAL1 --off --output HDMI2 --off --output HDMI1 --off --output HDMI-3 --off --output DVI-I-1 --off --output VGA1 --mode 1366x768 --pos 1050x912 --rotate normal
  • copiar este fichero al directorio /usr/local/bin en mi caso no me he complicado y es así:
    /usr/local/bin/xrandr.escritorio_trabajo.sh
  • ponerle los permisos de lectura y ejecución para todos al fichero, en mi caso ha quedado así:
    $ ls -l /usr/local/bin/xrandr.escritorio_trabajo.sh
    -rwxr-xr-x 1 root root 245 ene 21 10:21 /usr/local/bin/xrandr.escritorio_trabajo.sh
  • Y en mi caso que uso el gestor de login de usuarios (la pantalla donde eliges el usuario y escribes la contraseña antes de empezar a usar el ordenador) de Mate llamado MDM, tiene un fichero de script que ejecuta cuando se inicia, se llama /etc/mdm/Init/Default, pues añades al final (antes del exit) del fichero la linea y te quedara algo así:
    ...
    
    XMODMAP=`mdmwhich xmodmap`
    if [ "x$XMODMAP" != "x" ] ; then
     if [ -f $sysmodmap ]; then
     $XMODMAP $sysmodmap
     fi
    fi
    DISPLAY=:0 /usr/bin/syndaemon -d -i 1.0 -t -K -R
    
    /usr/local/bin/xrandr.escritorio_trabajo.sh
    
    exit 0
  • Reiniciar y ya esta.

 

Recuerdo hace casi 10 años que configurar los monitores en Linux era un tema bastante complicado con el viejo fichero de configuración de /usr/local/etc/X11/xorg.conf, pero ahora es muy muy simple gracias a cosas como xRandR.

Pero nada la gente sigue como «la burra al trigo» diciendo que Linux es difícil en twitter en su móvil con Android (que es un Linux), ayer configure una impresora en red en una Linux Mint solo con un par de clicks y sin escribir nada, pero nada de nada, ningún texto exotérico. Que sí que puede haber problemas como en mi caso, y encima es culpa de los fabricantes de la gráfica (como casi siempre) pero buscando y tal puedes arreglarlo.