Mantente en contacto con nosotros a través de Facebook. Sólo presiona el botón Me gusta

lunes, 31 de marzo de 2014

No es un título inventado por mí, es la traducción literal del artículo publicado en Linux.com sobre los argumentos que usan muchos redactores al hablar a favor de Windows argumentando el por qué Windows es mejor que Linux.

El creador de este articulo es Bryan Lunduke, un columnista de Linux.com
que en forma irónica responde a algunos de sus colegas que esgrimen esos argumentos ya arcaicos en defensa del sistema operativo de la ventanita.
  

Parece que no se puede tirar una piedra en el Internet sin golpear un artículo que defiende la superioridad de Windows sobre Linux. Con títulos como "Cinco razones por las que prefiero ejecutar Windows 8 de Linux ", estos artículos son centavos por docena.

A decir verdad , he escrito artículos en los últimos años de " ¿Por qué X es mejor que Y"  (casi siempre el argumento es a favor de la superioridad de los sistemas basados ​​en Linux) . 
 

¿Esta suma de artículos son un poco inútiles? Claro. Es como cantarle al coro , por así decirlo. Pero son muy divertidos de leer. También me he dado cuenta de algo muy interesante acerca de este tipo de artículos ...  
 
Cada artículo que he leído, en los últimos tiempos, con el argumento de que "Windows es mejor que Linux " hace que el autor suene un poco, por falta de una palabra mejor, como un gran bobo. Un furioso bobo enajenado. Los puntos que los escritores de estos artículos utilizan para respaldar sus hipótesis tienden a ser simplemente tonterías malintencionadas. Realmente están tocando fondo, en busca de alguna posible evidencia -no importa lo ridículo- para demostrar la superioridad de Windows sobre Linux.

[" Hey , Bryan ! Tengo una idea. ¿Por qué no tratas de insultar a un grupo de talentosos periodistas de tecnología, algunos de los cuales son tus amigos, llamándolos 'grupo de bobos enajenados' ? " Gran idea , personaje que acabo de crear con el único fin de hacerme a mí mismo una pregunta hipotética. Dalo por hecho !]

Aquí . Te voy a enseñar de lo que estoy hablando. Lo que sigue es la primera razón que se da, por qué Windows es superior, en un reciente artículo de ZDNet por David Gewirtz :

1 . "Razón #1 : Tan pronto como usted menciona una distro, todos los fanboys se vuelven locos alegando que Ud. ha tomado la decisión equivocada."

No acabas de alucinar.

La razón #1 para no usar Linux, declarado por un escritor de tecnología de ZDNet y CNN, es que otras personas usan Linux también. Algunas de esas personas tienen opiniones. Y usted, con su evidente incapacidad para existir dentro de un universo con otras personas en ella, simplemente se pondría en  posición fetal y abandonaría el uso de computadoras por completo.

2 . "Windows tiene más software. "

Uno de los mantras comunes en la causa contra Linux , sobre todo en el sistema de escritorio, es que Windows simplemente tiene más software disponible que Linux. De hecho, ni siquiera creo que se pueda usar la frase "Windows es mejor que Linux" en un artículo sin sacar a relucir este argumento viejo y cansado .

Esto por lo general se apoya en un ejemplo de una importante pieza de software que se ejecuta en Linux, como Adobe Photoshop.

Sólo hay un problema con ese argumento: Es que no es del todo cierto. Si desea ejecutar Adobe Photoshop (o la gran mayoría de software de Windows) ... se puede. Con Wine.

Claro, usted podría tener el argumento de que no todo el software de Windows se ejecuta con perfección en Wine en Linux. Entonces otra vez... yo podría hacer el mismo argumento sobre el software de Windows que no siempre corre bien en el propio Windows. Lo cual sería un punto mucho más condenatorio para hacer . Y, porque no soy el tipo que patea a un chico cuando esta caído, voy a seguir adelante ...

3 . "Windows tiene más soporte comercial."

Éste se sacó bastante a menudo.

La idea aquí es que las personas y las empresas quieren apoyo profesional - la capacidad de tomar el teléfono y llamar a alguien cuando tienen un problema. Esto es, obviamente, muy cuestionable. Especialmente para las grandes empresas que tienen trabajo critico en sus computadoras.

Cuando escribo esto, siento como que el redactor ni siquiera estaba tratando de serlo. Este argumento es refutado inmediatamente por una rápida búsqueda en Google de "apoyo a las empresas Linux" y comprobaría el número de opciones en la primera página de resultados por sí solos. Varias compañías de alto perfil ofrecen diversas opciones de asistencia para servidores y equipos de escritorio Linux.

En otras palabras, "Hay montones y montones de soporte comercial para Linux".

4 . "Windows está preinstalado." 


Ah , ahora aquí es un punto válido. Al menos sería, si la instalación de sistemas operativos fueran difíciles en este momento de la historia humana. También se asume que nadie ha tenido que volver a instalar Windows, que, estoy bastante seguro de que es una tarea que se ha hecho por lo menos 50 veces por cada hombre, mujer y niño en el planeta Tierra (en promedio) .

Además ... la lógica aquí es "Usted ya tiene esta cosa... así que no te preocupes por esa otra cosa que podría ser mejor. Puede comprar también algunas nuevas versiones de lo que tiene. Pero, en serio. No pienses en otras cosas mejores , " .

5 . "Windows es fácil de usar. "

El núcleo del argumento aquí por lo general gira en torno a la forma en que es imposible utilizar Linux sin tener que gastar todo el día inclinado sobre el terminal escribiendo comandos arcaicos en Emacs. Lo que esta completamente equivocado (Las distribuciones Linux de escritorio tienden a ser increíblemente fáciles de usar hoy en día) , y también es un argumento un poquito insultante para el lector.

Yo podría seguir y seguir con esto, pero creo que el punto se ha dado. De alguna manera se siente como que todos estos articulos de "X Razones de Windows es mejor que Linux" son regurgitadas versiones de artículos similares escritos en 1998 . Y, al final, simplemente hacen ver a los escritores como que estan mal informados sobre Linux.

También bobos. Esto hace que se vean un poco bobos.
 
Pueden ver el artículo original (en inglés) desde https://www.linux.com/news/software/applications/768257-why-arguing-that-windows-is-better-than-linux-makes-you-look-silly

esta es una síntesis de la traducción del texto original.

sábado, 22 de marzo de 2014

Muchas veces sucede que tenemos que simular una tabla con x registros en una base de datos, llenarla una por una es una tarea engorrosa, o hacerlo desde phpMyAdmin da pereza, este script en PHP nos llena una tabla llamada "usuarios"  y le inserta 10 registros, cada registro esta compuesto por una cadena aleatoria de 10 caracteres alfabéticos que son generados a través de la función "Generador" este ciclo se repite 10 veces  a través de un bucle while, el loop puede contener tantas repeticiones como cantidad de registros que queramos cargar en la base de datos

Partiendo que la base de datos "PRUEBAS" esta compuesta de una tabla "USUARIOS" y 2 campos ID y NAME

Notese  que la función "Generador" es la que nos genera una cadena aleatoria de hasta 10 caracteres alfabéticos usando la función chr que va de 65 a 90 osea de la a a la z en forma aleatoria sin salirnos de estos parámetros, luego antes de guardarlo en la base de datos lo convertimos en una cadena MD5 solo porque quise hacerlo asi en el momento que hice este script para probar un sistema de paginación.



<?php

/**
Taller de scripts
por Daniel Martín
22/03/2014
*/
Function Generador(){
$cadena='';
for ($a=1;$a<=10;$a++){
     $cadena.= chr(rand(65,90));}//de la a a la z
     return $cadena;
 }

$host='localhost';
$user='usuario';
$pass='contraseña';
$db='pruebas';
$mysqli = new mysqli($host, $user, $pass, $db);

if ($mysqli->connect_errno) {
    echo "Falló la conexión a MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
}

// Cargar filas con datos aleatorios

$a=0;
while ($a++<10){
$name=md5(Generador());
if (!$mysqli->query("INSERT INTO usuarios VALUES (NULL, '$name')")) {
   echo "Falló la creación del usuario: (" . $mysqli->errno . ") " . $mysqli->error;exit;
}
}

// Mostrar los registros

$cons = $mysqli->query ( "SELECT * FROM usuarios ");
while($row=mysqli_fetch_row($cons)){
echo $row[1]."<br>";
}

?>


viernes, 21 de marzo de 2014

Facebook desarrolla nuevo lenguaje de programación Hack






Recién salido del horno, Facebook nos trae un nuevo lenguaje de programación que promete hacernos la vida más fácil a todos los desarrolladores de PHP, este invento se llama Hack, y según la web oficial del proyecto, este lenguaje nos ayudará a codear más rápido y encontrar errores "al vuelo", la plataforma social lo introdujo en su entorno de pruebas HipHop Virtual Machine (HHVM) y mantiene la promesa de conservar y correr en su máquina virtual PHP y Hack,
es una noticia muy fresca, y estaré probando este lenguaje en breve para ver en profundidad algunas características destacables en cuanto a la programación tradicional en PHP, la presentación oficial puede verse en :
https://code.facebook.com/posts/264544830379293/hack-a-new-programming-language-for-hhvm/

y lo pueden probar bajándolo de la web oficial http://hacklang.org/
están los fuentes para la rama Debian y otros.

jueves, 27 de febrero de 2014




Hace poco quise grabar unos temas que estaban en MP3 y pasarlos a un CD de audio, para "quemarlo" en K3b indefectiblemente hay que convertir estos MP3 a WAV, para hacer esto, hay varias aplicaciones, pero yo quise hacerlo de la manera más sencilla así que buscando un poco, encontré el programa mpg321 que podemos bajarlo desde la terminal y ejecutarlo desde ahí, simplemente tecleando el comando

sudo apt-get install mpg321

o el equivalente a su distro yo lo uso así porque estoy en Linux Mint,

Para ajustar el programa a mis necesidades, osea convertir todos las pistas de MP3 A WAV realicé esta mini-aplicación en bash y le agregué un pequeño aditivo para que quede más paquete, más chulo, más copado, como quieran decirlo, lo decoré con una ventana de progreso utilizando la aplicación Zenity que viene incorporada en la mayoría de los entornos Gnome en mi caso XFCE

Zenity no es más que una herramienta para crear cajas de dialogo simples.
Si quieren aprender más sobre el uso de Zenity pueden dirigirse a este link https://help.gnome.org/users/zenity/stable/index.html.es






Explicación del código:

totalfich=$(find -iname "*.mp3" | wc -l);a=0;

en la variable totalfich guardo la cantidad total de ficheros mp3 en el directorio, (esto va a ser necesario para calcular el porcentaje de la barra de progreso)

IFS=$(echo -en "\n\b");

IFS se usa para evitar el salto de linea en los nombres de ficheros con espacios,

for i in  $(find -iname "*.mp3")
do
mpg321 -w "`basename "$i" .mp3`".wav "$i"


dentro del bucle for vuelvo a usar el comando find pero esta vez iterando cada archivo mp3 para procesarlo finalmente con la aplicación mpg321 que convertirá estos ficheros a wav

porcentaje=$(($a * 100 / $totalfich));

la variable porcentaje se encarga de calcular el estado del procedimiento
y ese porcentaje va a ser usado para alimentar el dispooler (barra de progreso).

...

Como veran es un script sencillo los detalles sobre uso de zenity o mpg321 pueden averiguarlo con el comando man o con nuestro amigo Google

Qué no hace el programa:
Al crear los archivos wav no borra los archivos mp3 originales asi que no hay que preocuparse por eso,
Lamentablemente no tengo demasiado tiempo para agregar un explorador de directorios,
tampoco normaliza el audio al pasarlo a wav.

Posibles mejoras:
espero les sea útil, y puedan mejorarlo agregándole por ejemplo un explorador de archivos, un sonido de notificación, o lo que se les ocurra.

Uso:
guardamos el script en un archivo con extensión .sh (por ej podria llamarse mp32wav.sh) le damos permiso de ejecución y lo colocamos adentro de la carpeta donde tengamos los temas en mp3

y ya que lo vamos a usar con entorno gráfico lo podemos ejecutar dándole doble click.

Nota: el script esta probado pero no esta libre de errores, usesé bajo su propia responsabilidad

#!/bin/bash
####################################################################
# Convierte todos los archivos .mp3 a .wav mostrando un dispooler
# Creado por Daniel Martín [ jue, 27 feb. 2014 ]
# licencia GNU GPL 2.0
# versión 1.0.0
# https://www.facebook.com/pages/Taller-de-Scripts/199500890074622
####################################################################
totalfich=$(find -iname "*.mp3" | wc -l);a=0;
IFS=$(echo -en "\n\b");
(
for i in  $(find -iname "*.mp3")
do
mpg321 -w "`basename "$i" .mp3`".wav "$i";
let a=a+1;
porcentaje=$(($a * 100 / $totalfich));
echo $porcentaje;
echo "# Convirtiendo MP3 a WAV\n $porcentaje% completado $a de $totalfich" ;
done
) |
zenity --progress --auto-close --auto-kill
zenity --info \
     --text="Conversion MP3 a WAV finalizada." 

martes, 28 de enero de 2014

Linux problema gvfsd-metadata

Hace unos días noté que se había degradado la velocidad del sistema lo que me pareció muy extraño, si bien tengo el disco casi lleno, no me parecía normal el funcionamiento del sistema en general, así que lo primero que hice, fue fijarme si había una operación en curso, me fije en el cpu, y el led del disco duro estaba ahí clavado como si estuviera moviendo una cantidad de datos importante,
busqué una forma de saber que proceso se estaba ejecutando, di con el programa iotop que develó que el proceso gvfsd-metadata estaba fastidiando el disco.



Por lo que estuve googleando el problema solo esta comentado por algunos usuarios de estos sistemas, se sabe que  es un bug que afecta a versiones de Ubuntu, y sus derivados, en este caso el problema se presentó hace unos días en mi distro Linux Mint 16, 64bits MATE, de hecho vengo observando que esta versión acarrea otros problemas con el bluetooth pero lo dejo para otra publicación,

el programa gvfsd-metadata tiene que ver con una zona de entrada/salida, si bien no esta muy documentado, el
bug lo que hace es dejar el disco en un bucle infinito de lectura/escritura,

el temor de provocar un daño físico en el disco duro me crespó los pelos, di con una solución parcial a este problema, primeramente fijándome que proceso estaba escribiendo constantemente el disco, y lo hice a través del programa iotop desde consola, y ahí observé que gvfsd-metadata estaba "colgado" leyendo y escribiendo una taza importante de datos, detuve el proceso con el comando pkill gvfsd-metadata como lo sugerían en el foro de Ubuntu

otra medida que tomé fue desde el directorio /usr/lib/gvfs/ quitarle el permiso de ejecución al fichero gvfsd-metadata

En los foros (en inglés) sugieren borrar el directorio ~/.local/share/gvfs-metadata lo cual probé pero el problema aun persistía cuando encendí la computadora al día siguiente.

hasta no encontrar una solución o fix al bug oficial, estas son las soluciones parciales al problema, usenlo a propio riesgo, si el problema persiste no esta demás reinstalar el sistema operativo o migrar hacia otras distros



sábado, 18 de enero de 2014

Poner fecha local en página php



Cuando mostramos la fecha en nuestra página, usualmente la fecha se corresponde al país donde esta el servidor que aloja nuestra web, para tener correctamente configurada la fecha que se mostrará en nuestra página según el país donde estemos o queramos colocar la fecha correspondiente lo haremos con el siguiente script

en mi caso quiero obtener la fecha de mi región, Buenos Aires, Argentina

Aquí les dejo una lista con las zonas horarias de diferentes regiones:
http://www.php.net/manual/es/timezones.php

<?php
date_default_timezone_set('America/Argentina/Buenos_Aires');
$dias = array("Domingo","Lunes","Martes","Miercoles","Jueves","Viernes","S&aacute;bado");
$meses = array("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre");
echo "<span style='font-size:10px;font-family:arial,verdana,times;font-weight:bold'>".$dias[date('w')]." ".date('d')." de ".$meses[date('n')-1]. " de ".date('Y')."</span>" ;
?>






viernes, 27 de diciembre de 2013

Subir o normalizar el volumen de una película en Linux




Cuando tenemos una película cuyo audio es tan bajo que resulta prácticamente inaudible, dos de las soluciones que podemos implementar desde la terminal de Linux, es usando mencoder o ffmpeg, hay otras formas pero me voy a centrar en soluciones cortas.

Si no tenemos instalados estos programas  los podemos descargar e instalar desde el terminal tipeando:

sudo apt-get install mencoder ffmpeg


Usando Mencoder:
mencoder -ovc copy -oac mp3lame -lameopts abr:br=128:vol=6 -o salida.avi entrada.avi

entrada.avi es nuestro archivo de video, y salida.avi es el nombre que colocaremos como nombre de video resultante con el volumen amplificado,
como reseña tenemos que tener en cuenta que el parámetro vol=6 no debe superar el nivel 8 porque puede producir saturación sonora, osea distorsionado.

Usando ffmpeg:
ffmpeg -i entrada.avi -vol 512 -vcodec copy salida.avi

al igual que el comando anterior, entrada.avi es nuestro video de origen y salida.avi nuestro video resultante con las modificaciones pertinentes, aquí los valores -vol 512 corresponde al doble de volumen original, los valores oscilan entre 256 (vol normal), 512 (doble vol)...