Showing posts with label espanol. Show all posts
Showing posts with label espanol. Show all posts

Friday, August 11, 2017

Readings in Visualization

"Ex-Libris" part V: Visualization


Part 5 of my "ex-libris" of a Data Scientist is now available. This one is about visualization.

Starting from a historical perspective, particularly of statistical visualization, and covering a few classic must have books, the article then goes on to cover graphic design, cartography, information architecture and design and concludes with many recent books on information visualization (specific Python and R books to create these were listed in part IV of this series). In all, about 66 books on the subject.

Just follow the link to the LinkedIn post to go directly to it:



Image
From Jacques Bertin’s Semiology of Graphics

"Le plus court croquis m'en dit plus long qu'un long rapport", Napoleon Ier

See also

Part I was on "data and databases": "ex-libris" of a Data Scientist - Part i
Part II, was on "models": "ex-libris" of a Data Scientist - Part II

Part III, was on "technology": "ex-libris" of a Data Scientist - Part III
Part IV, was on "code": "ex-libris" of a Data Scientist - Part IV
Part VI will be on communication. Bonus after that will be on management / leadership.
Francois Dion
@f_dion

P.S.
Je vais aussi avoir une liste de publications en francais
En el futuro cercano voy a hacer una lista en espanol tambien

Tuesday, June 13, 2017

Readings in Programming

"Ex-Libris" part IV: Code


I've made available part 4 of my "ex-libris" of a Data Scientist. This one is about code. 

No doubt, many have been waiting for the list that is most related to Python.  In a recent poll by KDNuggets, the top tool used for analytics, data science and machine learning by respondents turned out to also be a programming language: Python.

The article goes from algorithms and theory, to approaches, to the top languages for data science, and more. In all, almost 80 books in just that part 4 alone. It can be found on LinkedIn:

"ex-libris" of a Data Scientist - Part IV

Image
from Algorithms and Automatic Computing Machinesby B. A. Trakhtenbrot



Image

See also


Part I was on "data and databases": "ex-libris" of a Data Scientist - Part i

Part II, was on "models": "ex-libris" of a Data Scientist - Part II



Part III, was on "technology": "ex-libris" of a Data Scientist - Part III

Part V will be on visualization, part VI on communication. Bonus after that will be on management / leadership.

Francois Dion
@f_dion

P.S.
Je vais aussi avoir une liste de publications en francais
En el futuro cercano voy a hacer una lista en espanol tambien

Monday, January 4, 2016

Stack overflow en espanol

En caso que no lo ha encontrado, el sitio stack overflow ahora es disponible en español. Y, no todas las respuestas son las mismas que la del stack overflow en ingles. Hay una buena cantidad de contenido exclusivo.

#Python

Por ejemplo, alguien pregunto: Cómo instalar MySQLdb en OS X?

Hay varias respuestas, pero yo se que la mía es algo que yo he escrito solamente en español:


Mysql-python solo es compatible con python 2 (Python3 WOS), y el pip es de python 3:
$ which pip
Muy probablemente devolverá algo similar a:
/Library/Frameworks/Python.framework/Versions/3.x/bin/pip
Para hacer la instalación bajo python 2, hay que seleccionar el pip de python 2:
$ sudo pip2 install MySQL-python
La otra opción es un módulo puro python que es compatible python 2 y 3, como pymysql.
Al final, para evitar los conflictos de versiones y también los python de Apple (con varios problemas) es mejor hacer la instalación de python 2.x y 3.x con homebrew, y utilizar virtualenv que permite la creación de entornos virtuales python, cada cual con solo los requisitos para el entorno. Sin entornos virtuales hay que siempre ser explicito: pip2 o pip3 en vez de pip.




Francois Dion
@f_dion

Friday, February 13, 2015

SciPyCon Latin America - [Misiones - Argentina] [Mayo 2015]


Tercera Conferencia Anual Científica de Python 
Del 20 al 22 de Mayo en Misiones, Argentina.
Se encuentra abierto el llamado a propuesta de charlas y registraciones al evento.
Para más información consultar en: http://conf.scipyla.org/ 
Se agradece difusión. 





Sin duda, de interes para muchos de mi lectores.

Francois
@f_dion

Monday, February 9, 2015

Computadora Industrial Abierta Argentina (CIAA)

3DFutureTech.info: CIAA

Resumen: pre-venta sin fines de lucro de 1.000 unidades de la EDU-CIAA, a un precio final por unidad de $550 (pesos argentinos), con el objetivo ayudar a que más gente pueda acceder a esta plataforma.

Mas informacion:

http://www.3dfuturetech.info/2015/02/computadora-industrial-abierta.html

Francois
@f_dion

Tuesday, January 27, 2015

A new blog on future tech and innovation

I invite you to visit and bookmark my multilingual future tech / innovation / 3D blog. I just started it, and I think you'll like it:

http://3dfuturetech.blogspot.com/

There might be some cross posts, particularly since Python and the Raspberry Pi are used in so many innovations.

Friday, September 20, 2013

RPi MOOC en espanol

Donde

http://telescopio.galileo.edu/curso/raspberry-pi/

Cuando

El 14 de octubre 2013.

Información

Indican en la pagina que van a abarcar todo eso:

  • Instalación, Configuración, Accesorios y demás aspectos a considerar
  • Demos de instalación Wheezy y otras distribuciones
  • Introducción a Python
  • Introducción a la programación en Python para Raspberry Pi
  • Ejemplo completo Python
  • Modulo GPIO del Raspberry Pi para conexiones externas
  • Elementos básicos de hardware y como controlarlos con el GPIO
  • Próximos Pasos: Proyectos y Comunidad

Me parece muy genial. Es algo similar a los taller PyHack que hacemos en Carolina del Norte, pero en la red.

François
@f_dion

Friday, June 14, 2013

Pygame sound play

Música de fondo

Image

En la lista Python tutor (en ingles) se hizo la pregunta de como añadir música en un vídeo-juego con pygame. Pueden leer mi respuesta en ingles en los archivos, o aquí en español. Es muy sencillo:

4 lineas, nada mas


Podemos hacerlo con python directamente en modo interactivo. La primera es incluir pygame.

>>> import pygame


Como es un juego pygame, es siempre presente, asi que en realidad hay que añadir solo 3 lineas mas.

>>> pygame.mixer.init(22050,-16,2,4096)

Las opciones del init, es según lo que uno desea (44100KHz o 22050KHz etc) o solo un init()

>>> snd = pygame.mixer.Sound("bach-cello-suite-1.wav")
>>> music = snd.play()
Ahora empieza la música. music.get_busy() nos dará un cero cuando es el fin de la música.

>>> music.get_busy()
1
>>> music.get_busy()
1
>>> music.get_busy()
0

Obviamente, el fichero .wav debe ser con el script .py o donde se ejecuta python.

François
@f_dion

Tuesday, February 5, 2013

Gráficos en la consola

Pygame, RaspberryPi, Webcams.


Pygame utiliza SDL para los gráficos, así que soporta directamente la consola o X windows. Es el caso en todas la plataformas (Unix, Linux, Mac, no solo en Raspbian sobre el RaspberryPi).

Si no conocen nada de Pygame, hay tutoriales en espanol aqui:
razonartificial.com

En mi caso, necesitaba código para capturar imágenes de una webcam (por un taller PyHack). con Python y Pygame, es muy sencillo. Hacer el import y init de los modulos, crear un objeto cam (de resolución 320x240), iniciar la camara, obtener una imagen (cam.get_image), y grabar como png.


import pygame
import pygame.camera  # experimental
from pygame.locals import *

pygame.init()
pygame.camera.init()

cam = pygame.camera.Camera("/dev/video0", (320,240))  # webcam

cam.start()
image = cam.get_image()
pygame.image.save(image,'fablocker.png')
cam.stop()

El mismo código funciona en la consola o el escritorio, perfecto con los cron jobs.


Matplotlib


Hay otros módulos Python que dependen de un servidor X windows. En casos de que no se require OpenGL (no hay en Raspberry Pi) o OpenGL ES, hay un servidor basico que podemos utilizar: xvfb.

Primeramente hay que hacer la instalación de xvfb:


$ sudo apt-get install xvfb


Matplotlib es bueno para hacer imagenes y incluirles en informes de actividad de servidor, por ejemplo. Un servidor web no requiere X windows, asi que porque deberiamos utilizar LXDE o otro escritorio grafico, solo por hacer imagenes que vamos a incluir en una pagina web?

Con xvfb, no hay problemas. Un script que contiene el código Python siguiente (poner en un fichero mpl.py):


from matplotlib.pyplot import *

plot([2,4,2,5,6,3,1])
savefig("graph.png")

Es lo que haria normalmente. Pero si tratamos de ejecutar el script directamente, vamos a recibir un error. A utilizar xvfb, eliminamos el error, así:

$ xvfb-run python mpl.py
  Va a generar un fichero graph.png que se vera asi:

Image

Todo de la consola, sin escritorio gráfico.


François
@f_dion

Tuesday, January 22, 2013

RaspberryPi como servidor web

Cherokee


Hacer la instalación de Cherokee Web Server en el Raspberry Pi con Raspbian es fácil, pero requiere tiempo.

wget http://cherokee-project.com/install && sudo python install
 

Y hay que esperar que la compilación se termina (mas de 30 min., me parece), con éxito (esperamos).

Dinámico

 

El Pi es pequeño en cuanto a su tamaño, pero también en cuanto a la cantidad de RAM y de core en el CPU. En cuanto a un sitio de tipo dinámico, es posible hacerlo con un Pi, pero hay que pensar en la aplicación. Como servidor personal o de departamento, es bueno.

Pero, y un blog? En mi caso, he notado que a veces hay 75+ visitantes al mismo tiempo. No es razonable esperar que un Pi puede hacerlo de manera dinámica. Por eso, vamos a ver lo que podemos esperar con Cherokee y un contenido estático.

Estático


Primero, voy a iniciar Cherokee:

$ sudo /opt/cherokee/sbin/cherokee -d

Luego voy a configurar el modo automático, pero por ahora es suficiente así.

Debemos poner una pagina como test:

$ cd /opt/cherokee/var/www
$ sudo wget http://raspberry-python.blogspot.com/2013/01/going-in-wrong-direction.html

En mi workstation, tengo apache, con ab:

$ which ab
/usr/bin/ab
$ ab
ab: wrong number of arguments
Usage: ab [options] [http[s]://]hostname[:port]/path
Options are:
    -n requests     Number of requests to perform
    -c concurrency  Number of multiple requests to make
    -t timelimit    Seconds to max. wait for responses
    -b windowsize   Size of TCP send/receive buffer, in bytes
    -p postfile     File containing data to POST. Remember also to set -T
    -u putfile      File containing data to PUT. Remember also to set -T
    -T content-type Content-type header for POSTing, eg.
                    'application/x-www-form-urlencoded'
                    Default is 'text/plain'
    -v verbosity    How much troubleshooting info to print
    -w              Print out results in HTML tables
    -i              Use HEAD instead of GET
    -x attributes   String to insert as table attributes
    -y attributes   String to insert as tr attributes
    -z attributes   String to insert as td or th attributes
    -C attribute    Add cookie, eg. 'Apache=1234. (repeatable)
    -H attribute    Add Arbitrary header line, eg. 'Accept-Encoding: gzip'
                    Inserted after all normal header lines. (repeatable)
    -A attribute    Add Basic WWW Authentication, the attributes
                    are a colon separated username and password.
    -P attribute    Add Basic Proxy Authentication, the attributes
                    are a colon separated username and password.
    -X proxy:port   Proxyserver and port number to use
    -V              Print version number and exit
    -k              Use HTTP KeepAlive feature
    -d              Do not show percentiles served table.
    -S              Do not show confidence estimators and warnings.
    -g filename     Output collected data to gnuplot format file.
    -e filename     Output CSV file with percentages served
    -r              Don't exit on socket receive errors.
    -h              Display usage information (this message)
    -Z ciphersuite  Specify SSL/TLS cipher suite (See openssl ciphers)
    -f protocol     Specify SSL/TLS protocol (SSL2, SSL3, TLS1, or ALL)


Ahora, podemos hacer una simulación de carga.

Vamos a hacer 1000 solicitudes en total (-n), y 75 al mismo tiempo (-c):

$ ab -n 1000 -c 75 -v 1 http://raspberrypi/going-in-wrong-direction.html
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking raspberrypi (be patient)
Completed 100 requests
Completed 200 requests
Completed 300 requests
Completed 400 requests
Completed 500 requests
Completed 600 requests
Completed 700 requests
Completed 800 requests
Completed 900 requests
Completed 1000 requests
Finished 1000 requests

Server Software:        Cherokee/1.2.101
Server Hostname:        raspberrypi
Server Port:            80

Document Path:          /going-in-wrong-direction.html
Document Length:        208790 bytes

Concurrency Level:      75
Time taken for tests:   18.010 seconds
Complete requests:      1000
Failed requests:        0
Write errors:           0
Total transferred:      209724452 bytes
HTML transferred:       209520640 bytes
Requests per second:    55.53 [#/sec] (mean)
Time per request:       1350.741 [ms] (mean)
Time per request:       18.010 [ms] (mean, across all concurrent requests)
Transfer rate:          11372.03 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        1   96  36.0    109     128
Processing:   132 1232 266.1   1166    2738
Waiting:       16  182 153.4    126     949
Total:        143 1328 262.7   1278    2853

Percentage of the requests served within a certain time (ms)
  50%   1278
  66%   1320
  75%   1417
  80%   1479
  90%   1671
  95%   1777
  98%   1951
  99%   2060
 100%   2853 (longest request)

Aprobado


Así que, me parece que con contenido estático (quizás generado por medio de Pelican), y con poco imágenes (en el test aquí, ninguna), si, el Raspberry Pi podría servir de servidor de blog.

@f_dion

Monday, January 14, 2013

encabezamientos http

web.py


El sábado pasado, llevamos a cabo un taller PyHack. El tema era sobre cámaras web, pygame y el raspberry pi, como servidor de seguridad vídeo. Y acceso por teléfono a este servidor. Para demostrarlo, utilizamos inicialmente python -m SimpleHTTPServer, pero después, con web.py.

Para salvar tiempo en el taller, busco con google un ejemplo de servidor de imágenes con web.py, y de inmediato encontramos esta pagina:

webpy.org/images

El codigo es asi:

import os
import web 
 
urls = (
'/images/(.*)', 'images'
)  
 
class images:
    def GET(self,name):
        ext = name.split(".")[-1]  # Gather extension

        cType = {
            "png":"images/png",
            "jpg":"images/jpeg",
            "gif":"images/gif",
            "ico":"images/x-icon"            }

        if name in os.listdir('images'):  # Security
            web.header("Content-Type", cType[ext]) 
            return open('images/%s'%name,"rb").read() 
        else:
            raise web.notfound()

Y después de añadir :

app = web.application(urls, globals())

if __name__ == "__main__":
    app.run() 
 
 
no operaba como lo esperamos. Normalmente, no va a descargar las imágenes con un Content-Type (web.header) apropiado, solo mostrarlas en el navegador. Pero aquí, si!

image/jpg


Es lo correcto de poner un Content-Type: image/jpeg, image/png etc. Pero en el código, en el sitio, hay images/jpeg, images/png etc. En vez de salvar tiempo, perdimos mucho sin ver el S extra...

Mi versión es la siguiente (URLS en vez de urls y Images como clase en vez de images, y image/ sin el S extra)

import os
import web

class Images:
    def GET(self,name):
        ext = name.split(".")[-1]  # Gather extension

        cType = {
            "png":"image/png",
            "jpg":"image/jpeg",
            "gif":"image/gif",
            "ico":"image/x-icon"            }

        if name in os.listdir('images'):  # Security
            web.header("Content-Type", cType[ext]) # Set the Header
            return open('images/%s'%name,"rb").read() # Notice 'rb' for reading images
        else:
            raise web.notfound()

URLS = (
'/images/(.*)', Images
)

app = web.application(URLS, globals())

if __name__ == "__main__":
    app.run()


Este código opera correctamente. 

Descargar


Seguimos y añadimos mas hasta que completamos el proyecto (el código sera en bitbucket un poco mas tarde en el mes), y ahora todo esta bien.

Pero, cual es la manera si uno realmente desea ofrecer la descarga de un fichero? Hacer un error de tipo? No.

Hay que añadir un otro encabezamiento http (por medio de web.header) que se llama Content-disposition:

web.header("Content-disposition", "attachment; filename=%s"%name)

@f_dion

Sunday, January 6, 2013

Tener Clase

 No estoy hablando de estilo, de corbata o zapatos.

Cuando se anuncio el proyecto Brython, faltaba muchas cosas, entre ellas: comprensión de listas, operador ternario, clases.

Ahora, estas cosas si existen (desde viernes en cuanto a las clases). Obviamente, no todo es completo, pero, no hay excusas que quedan, es el tiempo de hacer algo con Brython. Y hay una lista en español, y documentación en español.

Clases en Brython

Supongamos que deseamos hacer la representación de Fulano, y en particular, la edad de el:

Ejemplo en Python

class Fulano:
   
    def __init__(self,arg):
        self.edad = arg
     
    def mas(self):
        self.edad = self.edad + 1
       
    def edadhoy(self):
        return self.edad 


Ejemplo completo en Brython

<html>
<head>
<script src="brython.js"></script>
</head>
<body onload="brython()">
<script type="text/python">
class Fulano:
   
    def __init__(self,arg):
        self.edad = arg
     
    def mas(self):
        self.edad = self.edad + 1
       
    def edadhoy(self):
        return self.edad       

c = Fulano(12)
for i in range(5):
    c.mas()
edad = c.edadhoy()
alert(edad)
</script>
</body>
</html>

Monday, December 31, 2012

Listas y foros RaspberryPi Python en espanol

Has recibido su Raspberry Pi? Sigues mi blog, obviamente :) pero también hay listas y foros que te ayudaras. Mi preferencia es por listas, porque los foros no permiten una interacción rápidita como el coreo electrónico.

Hay twitter que en teoría debería ser aun mas rápido, pero es imposible tener una conversación técnica allá. A caso, soy @f_dion


Listas

Raspberry Pi

Un mes atras, empezó una lista sobre el Raspberry Pi en espanol. Es regional (Argentina), pero todos son bienvenidos:

rspi-ar

Python


Image

Varios anos atrás (al minimo desde 2001 a ver los archivos) empezó la lista de python en castellano (disponible también como foro en Google Groups):

python-es

Hay una lista regional (Argentina), y todos son bienvenidos:

pyar/ListaDeCorreo

Voy a mencionar mi lista de Brython en español (Python en navegadores):

forum/brython-es

Linux

Image

Quizas no hay una lista especifica a Raspbian en español, pero hay:

debian-user-spanish


Foros

Raspberry Pi

Image

El foro oficial de la fundación Raspberry Pi en español es:

www.raspberrypi.org/phpBB3/viewforum.php?f=76

Un otro foro por el Raspberry Pi es:

www.raspberrypi-spanish.es/foro

Python

Como stackoverflow, pero en español: python.majibu.org

Hay también la sección Python de solocodigo:  solocodigo.com/python

Los siguientes son foros Google Groups, y en ciertos casos se puede recibir por medio de correo electrónico también:

Foro regional de Madrid, España: python-madrid

Foro regional de Sevilla, Espana: python-sevilla

Foro regional de Perú: python-peru

Foro regional de Venezuela: python-venezuela

Foro regional de Uruguay: forum/pyuy

Foro Python scientifico de Argentina: forum/sci-pyar

Linux


Image

foros.archlinux-es.org

Sunday, December 16, 2012

Python en todo lugar

Ordenadores, móvil, navegadores

Empecé a programar ordenadores con el lenguaje Basic y Turtle (Logo) y poco después con Assembler, Pascal, C, C++ y un montón de otros lenguajes. En los anos 90, seguí con Perl, Java y Javascript (y varios otros a través los años como PHP, C#, Python, Ruby).

La mayoría del código que estoy escribiendo ahora es en Python, pero cuando es una cuestión de web, siempre hay que hacer algo en Javascript. Casi todas las paginas en la red incluyen <script...>.

type=text

En el pasado (mas de 10 anos atrás) era común ver <script type="text/vbscript"> (vbscript es una forma de visual basic), pero como solo Internet Explorer ofrece eso, no se ve mucho. Si hacemos algo que opera con todos los navegadores, debemos utilizar <script type="text/javascript">.

Ah, si tan sólo pudiéramos utilizar Python aquí también, del lado del navegador. Un lenguaje en todo lugares y todos los navegadores.

Si era posible...

Debería ser similar a la manera que uno puede usar Javascript. Una pagina html muy sencilla como la siguiente:

<html>
<head></head>
<body>
<script type="text/python">
def hola(nombre = "todo el mundo"):
    alert( "hola, " + str(nombre))  # numeros o caracteres

</script> 
<input type=button onclick="hola()" value="mundo!"> 
<input type=button onclick="hola('queridos lectores')" value="click!">
</body>
</html>

Incluso sin requerir un servidor. Sería bastante bien.


Si, ¡Es posible!

Hay dos cosas mas que debemos hacer, y funcionara:

<html>
<head><script src="brython.js"></script></head>
<body onload="brython()">
<script type="text/python">
def hola(nombre = "todo el mundo"):
    alert( "hola, " + str(nombre))  # numeros o caracteres


</script>

<input type=button onclick="hola()" value="mundo!">
<input type=button onclick="hola('queridos lectores')" value="click!">
</body>
</html>


Y, si estas leyendo mi sitio directamente en un ordenador o ipad (o similar), puedes probarlo (voy a añadir brython en mi sitio para móvil en unas semanas):


 
¡Demasiado! Es cierto.

Brython

Lo que hace eso posible es Brython:

Image
Brython es un proyecto que tiene por objeto sustituir Python a Javascript en los navegadores web. Pierre Quentel annuncio el proyecto en el grupo fr.comp.lang.python ( annuncio en francés ) el 25 de noviembre.

De inmediato fue muy obvio para mi de que era lo que estaba buscando. Como he encontrado algunos problemas, los envió a Pierre, y él los corregía rápidamente. Le ayudo también con la traducción del sitio de francés a ingles:

brython.info/index_en.html

Ahora, estoy trabajando a traducir el sitio (toda la documentación) en español (y buscando ayuda).

No hay documentacion en español, pero hay una lista en español , un grupo google:

groups.google.com/forum/?fromgroups=#!forum/brython-es

Hay grupos google en ingles (brython) y frances (brython-fr) también.

Galeria

A veces una imagen vale mil palabras, o, en este caso, un sitio de demo:

reloj analógico
técnica 'arrastrar y soltar'
almacenamiento local
laberinto 3d


Haga un clic con el botón derecho para ver el código de cada demo. Python. Deja uno sin palabras, ¿verdad?


François

Wednesday, December 5, 2012

Libros Python en espanol

Voy a ser muy breve, pero si alguien desea aprender el lenguaje de programación Python, hay varios libros 100% gratuitos:

Snake Wrangling for Kids (Edición en Español)  (3 opciones)

Python para todos (pdf)

Aprenda a pensar como un programador con Python (pdf)

Y finalmente, la guía de aprendizaje oficial de Guido van Rossum: Guia de aprendizaje de Python. No es el mas reciente. No estoy seguro si el ultimo es disponible en español.

Image


En cuanto a los editores de código, ver:
Editores de código en modo texto y también Editores de código X

Tuesday, November 27, 2012

Minecraft + Python + Raspberry Pi =



>>> Minecraft Raspberry Pi Edition (raspberrypi.org)

Python


#!/usr/bin/env python
import minecraft as mc

mc.connect()

for x in range(-10,10):
    for y in range(-10,1):
        for z in range(-10,10):
            mc.setblock(x, y, z, mc.GLASS)

Minecraft + Python + Raspberry Pi =

Tuesday, November 20, 2012

Pregunta para los lectores

Popular 

Reflejando en los artículos lo mas populares (en cuanto a los países hispanohablantes), no estoy seguro de lo que mis lectores esperan o buscan.

Los artículos mas populares en España, México y América Latina:
  1. XBMC (en ingles)
  2. Systema embebido (mi oficina móvil)
  3. PiQuizMachine (en ingles)
  4. RISC OS
  5. raspberry-python.blogspot.com

Es posible ver todos los artículos en español con el botón ES, arriba.

El numero 3 (y 4 indirectamente) fue en la pagina principal del sitio raspberrypi.org, y así no es sorprendente. 1 y 2 hablan ambos de vídeo. 5 cambia a cada día...

Aunque me parece que hay mucho interés en una utilización del Raspberry Pi para ver vídeos, y quizás con artículos que hablan de cosas como VLC, MPlayer y otros similares, es difícil a saber mas.

¿Python? ¿Electrónica? ¿Robótica? ¿Automatización? ¿Gráficos 3d? ¿Ordenadores Retro? ¿Otras cosas? ¿Mas detalles sobre un articulo existente? ¿Version en espanol de un articulo existente en otro lenguaje?

Digame

Dejar un comentario, por favor.