El blog de Juan Palómez

30 mayo 2016

La tecnología hoy: dos pasos adelante y uno hacia atrás

Filed under: Uncategorized — Etiquetas: , , , — thisisoneball @ 15:29

En los últimos años estamos asistiendo a un fenómeno realmente curioso: por primera vez en tecnología se están haciendo avances que nos hacen ir hacia atrás. La causa suele ser el overengineering, el bloating y la versionitis. O dicho de otra manera, los fabricantes empeoran sus productos a base de añadir/cambiar cosas a veces sin necesidad, para poder aumentar el número de versión de su software o sacar el modelo de 2016 de su smartphone tope de gama; o porque tienen la idea de que más es mejor, cuando en realidad deberían seguir el principio KISS.

La culpa final de esto lo tenemos los consumidores, que hacemos también el “más es mejor”, “nuevo es mejor”, “más grande es mejor”, etc.

Estos son algunos ejemplos que en mi opinión demuestran esta tendencia a peor:

  • Traducción automática en una web, que no hay manera de quitar: si la calidad de la traducción no es buena y entiendes bien el inglés, se entiende el texto mucho peor que el original; normalmente permiten ver la versión original pero algunas no
  • En Google Calendar (web) creas un evento con la hora 06:00. Como Google Calendar es muy inteligente, lo transforma automáticamente a 18.00, porque es obvio que si te refieres a las seis, tiene que ser las seis de la tarde, a las seis de la mañana la gente está durmiendo. Esto debe ser muy divertido si compras un billete de avión, pones la fecha en tu calendario y no te das cuenta de que la ha transformado, y a los 3 meses llega el día del vuelo, miras tu calendario para ver a qué hora es el vuelo y vas al aeropuerto tranquilamente por la tarde.
  • Otro caso parecido es el evento de Google Calendar que se crea automáticamente cuando Gmail detecta que has recibido un mail de confirmación de reserva de un vuelo, con la fecha y hora de salida del vuelo. Si el vuelo no sufre cambios bien, si hay cambios y la aerolínea te manda otro mail, éste no es detectado y el evento de Google Calendar sigue a la misma hora. Puede hacer perder vuelos también, y a pesar de estar notificado hace años, Google no lo arregla.
  • El acelerómetro de los móviles, que muchas veces cuando quieres que gire no gira, y al contrario. Los móviles no-modernos tenían un botón físico que giraba la pantalla. Si alguien sacara esto hoy en día, se vería como un avance, un sistema que permite girar la pantalla sólo cuando el usuario quiere.
  • Las pantallas de los móviles tan grandes que se necesita usar con las dos manos en vez de una, y que son incómodos de llevar en el bolsillo.
  • Las maletas con cuatro ruedas en vez de dos: realmente no se usan las cuatro porque se lleva inclinada, y el peso de la maleta descansa en el suelo igualmente con dos o cuatro ruedas; lo malo es que la maleta si está de pie se mueve sola por ejemplo en el metro o el autobús con la inercia; y al ocupar más la base es más difícil que quepa en sitios pequeños
  • El nuevo Google Maps tanto para web como para Android que introdujeron en 2013, que tiene hasta una petición en change.org con 17.000 firmas para que lo retiren.
  • Smartphones sin ranura microSD y con batería no extraíble, a diferencia de la tendencia que había antes
  • Un ejemplo muy sencillo y muy gráfico: un bug en Android 6 que hace que el reloj se atrase. Si no actualizas tu Android va bien, si lo actualizas se atrasa el reloj

 

13 enero 2016

Transfer files directly to local PC when using Citrix Receiver

Filed under: Uncategorized — thisisoneball @ 12:00

A typical scenario when connecting to remote systems using Citrix Receiver involves three systems:
(a) Local PC with Citrix client
(b) Intermediate system where the remote apps run, in this example Firefox, SecureCRT and WinSCP
(c) A final system in the same network as (b), in this example a Linux server

(a) — internet — (b) — LAN — (c)

To transfer files between (a) and (b) the Citrix system provides virtual disk drives (for example, real C: drive in (a) appears in (b) as a virtual drive, mapped to the UNC path \\Client\C$)

To transfer files between (b) and (c) normal file transfer programs can be used like WinSCP

To transfer between (a) and (c) you can use those same file transfer programs, as long as they support UNC paths. WinSCP doesn’t so you can use the SFTP feature in SecureCRT instead:

1) At (a) connect to Citrix and open the remote app list
2) Open SecureCRT which will be running in (b), then connect to (c) with your SSH/SFTP username/password and then open a SFTP session
3) At (c):
  sftp> lpwd
  C:/Users/.../Documents (some path in (b))
  sftp> lcd \\Client\C$\Users\myusername\Desktop (change to our destination path in (a))
  sftp> ls
     … (check that my files in (c) are in the current directory)
  sftp> get *2016*.bz2 (transfer them)

Any other program can be used instead of WinSCP as long as it supports UNC paths and is made available in the Citrix server by the adminsitrator

zmd5sum (MD5 of gzipped files)

Filed under: Uncategorized — thisisoneball @ 11:45

Two identical files produce non-identical files when they are compressed with gzip, as the .gz file stores the timestamp of the compression date.

You can use zdiff to compare the .gz files (compares the uncompressed files), but there is no equivalent for the md5sum command, to achieve something like this (md5sum of the uncompressed files) :

 

# md5sum a.gz b.gz c.gz
40e2dce65475145d867b11eb85fd1910 a.gz
5f8a9f6c37170473bdaf6901df907962 b.gz
cad655b312efdc1bd920c470b9532508 c.gz
# zmd5sum a.gz b.gz c.gz
ab7c6c68c3b3fe2ff17ab54aa3ada6d0 a.gz
ab7c6c68c3b3fe2ff17ab54aa3ada6d0 b.gz
ab7c6c68c3b3fe2ff17ab54aa3ada6d0 c.gz

To achieve that you can place this script into /usr/local/bin/zmd5sum:

#!/bin/bash
for f in $*
do
   md5=$(zcat $f | md5sum | cut -f1 -d\ )
   echo $md5 "" $f
done

 

13 mayo 2015

Missing Perl binary (perl.exe) on Cygwin

Filed under: Uncategorized — Etiquetas: , — thisisoneball @ 00:23

Symptoms:
  • Packages ‘perl’ and ‘perl_base’ are installed but /usr/bin/perl is missing
  • cygcheck -c perl  says OK
  • cygcheck -c perl_base says Incomplete

Solution:

  • Run Cygwin setup, click Keep, look for perl_base package and set it to Reinstall

8 abril 2015

Cómo cambiar de un móvil de 2011 a uno de 2014 y salir perdiendo (HTC Desire S -> Moto G 2014)

Filed under: Uncategorized — Etiquetas: , , , , , , , , — thisisoneball @ 19:20

Móvil viejo: HTC Desire S con Android 2.3.3 y capa HTC Sense

Móvil nuevo: Moto G 2014 (o Moto G 2nd gen) con Android 4.4.4 casi stock

Las opiniones o discrepancias son bienvenidas.

Ahí va:

He ido a mejor en:

Mejoras debidas a Android:

  • Se puede desinstalar una app desde el menú normal de apps, no hay que ir a Ajustes / Aplicaciones. Al instalar una app aparece en el escritorio y así la puedes borrar, recolocar o meter en carpeta
  • Permite desactivar el 3G (el HTC tenía las opciones “sólo 3G” y “2G/3G”)
  • Medición integrada del uso de datos móviles, no hay que bajar aplicaciones aparte. Lo mismo en cuanto a la capacidad de hacer capturas de pantalla
  • El navegador Chrome es bastante más completo que el que trae Android 2.3 por defecto

Mejoras debidas al teléfono en sí:

  • Carga muy rápido, la intensidad que acepta es de 1,2A. Aunque mucha gente opina que esto no es bueno del todo y que la batería dura menos así.
  • Se nota por supuesto la mejora de CPU y los 4 núcleos, va fluido y las apps pesadas son un poco menos lentas
  • Ajuste de brillo de la pantalla automático
  • De 1 GB de almacenamiento interno a 8 GB

He ido a peor en:

Problemas debidos a “mejorar” de versión de Android o a cambiar del launcher de HTC al launcher de Motorola

  • El icono de conexión de datos de la barra de notificaciones de (3G / H / H+ …), no parpadea cuando hay tráfico, solo muestra el tipo de red que estás usando y si está activada
  • El icono de GPS de la barra de notificaciones no muestra si hay fix GPS, sólo muestra si está o no en uso
  • No permite hacer carpetas de más de 16 elementos en el escritorio. La única razón que se me ocurre para esto es que si hay más de 16 no caben en la pantalla y hay que poner una barra de desplazamiento vertical en la ventana de la carpeta y queda feo, lo cual sería una razón bastante absurda. Además, al pasar una aplicación a la SD, el icono de ésta desaparece de las carpetas del escritorio
  • No permite reiniciar. Lo único que permite es dejar pulsado el botón de inicio lo cual da la sensación de apagar el móvil a lo bruto, no un apagado normal
  • Si dices “Ok Google” se abre la búsqueda por voz, por lo tanto el micrófono te está grabando de continuo. La app Google Goggles intenta hacer reconocimiento visual de todas las fotos que sacas con la app de Cámara. Es decir, todas tus fotos son enviadas por internet a los servidores, aunque no uses la app de Google Goggles ni sepas de su existencia (se puede desactivar esto en los ajustes de la app Google Goggles, pero viene activado por defecto) En general toda la parte referente a Google ahora da una mayor sensación de intrusión y de que te están observando. Con el móvil anterior Google daba sensación de producto que funciona bien, sin más.
  • Google Maps ha empeorado: han separado la app normal y la sección de Mis Mapas, por lo que si quieres ver por ejemplo un mapa propio y las indicaciones de transporte público o de tráfico, tienes que andar alternando de una a otra app. Han quitado los botones de zoom, usado con dos manos da igual pero con una mano es más incómodo. Sigue cascando la app entera al buscar ciertas rutas en coche o transporte público. Si estás en el centro de Madrid y buscas “Música en directo” te lleva a un lugar llamado Directo en Manila, Filipinas y cosas del estilo
  • Las notificaciones de actualización del S.O. son totalmente intrusivas. Da igual lo que estés haciendo con el móvil, sale una notificación a pantalla completa que te da 2 opciones: Instalar o Preguntar más tarde (la opción No volver a preguntar debe ser muy pequeña o quedar fuera de la pantalla porque no la veo), y sale unas 4-5 veces al día
  • A veces si el Wifi está apagado, al encenderlo se queda pillado y no se puede usar ni el Wifi ni el 3G, hay que reiniciar
  • Las fotos llevan la fecha en el nombre de archivo. Si sacas una a las doce y media de la noche del día 18, le pone 20150818_243000, y no 20150818_003000, con lo cual te deja las fotos desordenadas. Esta chapuza no la había visto nunca en ningún móvil, cámara o programa de PC, ha hecho falta “avanzar” hasta el año 2015 para verlo

Problemas debidos al teléfono:

  • Pantalla de 5″. No me da la mano para llegar a toda la pantalla con el dedo pulgar. Afecta también a la hora de teclear.
  • No se puede sacar la bateria
  • La parte de atrás es curva y al utilizarlo sobre la mesa se mueve.
  • LED de un solo color: las notificaciones por LED dan menos información así

Sigue igual o parecido:

  • Se sigue quedando pillado algunas veces al instalar apps desde el PC con la web de Google Play: en la web pone que la app se instalará en breve, pero en el móvil no ocurre nada. Sin embargo, cuando abres la app de Play Store en el móvil (puede ser justo después o 4 horas más tarde), empieza a instalarse la app
  • No permite (en los menús normales de opciones) conectar al PC por USB como unidad de almacenamiento externo masivo, sólo MTP y PTP. Este sistema tiene ventajas e inconvenientes sobre lo anterior así que lo pongo aquí en la zona neutral
  • La mejora de memoria RAM es de 768 MB a 1024 MB, y el S.O. y aplicaciones ocupan más, por lo que no ha mejorado en este aspecto. Esto unido a que se dificulta al usuario gestionar la memoria (es decir, no hay un botón X para cerrar las apps) hace que al igual que el móvil antiguo, algunas aplicaciones que querías que siguieran abiertas, se han cerrado y se ha perdido el contenido que tenías abierto en ellas
  • Debido a lo anterior, se sigue cerrando solo el launcher, aunque en el HTC tardaba unos 8 segundos en recargarlo y este unos 3-4 segundos. Pero sigue siendo muy cutre que con un móvil nuevo estás en el escritorio, abres la cámara, la cierras y ha desaparecido todo lo que había en el escritorio, hasta que a los 4 segundos aparece de nuevo su contenido. En Android 2.x había una opción “Mantener launcher en memoria” que ahora Google ha eliminado

29 marzo 2015

Recopilación de frikadas

Filed under: Uncategorized — Etiquetas: , , , , — thisisoneball @ 13:49

 
 

AAlib: reproducir vídeo o jugar a videojuegos en ASCII-art:

Abre las imágenes en una pestaña nueva para verlas a tamaño original:

 

 
 

 
 

 
 

Windows 95 en un smartwatch:

 
 

 
 

Jugar al Quake en un osciloscopio:

 
 

 
 

psDooM: matar procesos del sistema jugando al DooM:

 
 

 
 
Tempest: reproducir música en una radio utilizando las frecuencias que emite un monitor de tubo:

 
 

 
 

Algoritmo que dibuja bitmaps jugando al Tetris:

 
 

 
 

Reproducir música con unidades de floppy disk:

 
 

 
 

Tatuaje de pantalla azul de Windows:

 
 

16 diciembre 2014

Recovering irresponsive Windows 7 system (caused by Process Explorer, procexp.exe)

Filed under: Uncategorized — Etiquetas: , , — thisisoneball @ 14:35
  • My system became almost irresponsive, the laptop fan went full speed (suggesting 100% CPU usage by some process) and the task bar dissapeared. Alt+Tab works but the response is very slow. I had some important unsaved documents.
  • If you have the same problem, perform these steps (even if it seems it’s not responding, just wait a bit, it can take as much as 30 seconds for each step): Press Ctrl+Shift+Esc to launch Task Manager, then click on the Processes tab, then click the CPU tab so that it shows the highest CPU processes first (in my case procexp.exe showed 99% CPU usage), click the highest CPU process and press Alt+E (Alt+F if your Windows installation is in Spanish).
  • After that process is killed everything goes back to normal. If the task bar is still not there, run “explorer.exe” using Task Manager

16 noviembre 2014

Wifi connection drops when downloading from Steam

Filed under: Uncategorized — Etiquetas: , , , — thisisoneball @ 14:42

I’m using a USB Wifi adapter: Belkin F7D1101 V1, and it works fine except when downloading games from Steam. The Wifi connection drops and this icon appears: wifi drop

The Internet link and wifi router are OK as the other devices connected to it keep connected to the Internet; limiting download speed in Steam’s options didn’t solve the problem.

If this happens just go to Control Panel and open the USB adapter advanced options, then change ‘Wireless Mode’ from ‘802.11b/g/n’ to ‘802.11b/g’

wifi drop

This will lower the Wifi speed from 150 Mbps to 54 Mbps… My Internet connection is 50 Mbps so there is no downside, except if you’re transferring lots of data in your local Wifi network.

15 noviembre 2014

Ojo con estos números

Filed under: Uncategorized — thisisoneball @ 21:44

Ojo con estos números de móvil de España, para cualquier aclaración mándame un mensaje privado

639838835 (639 838 835) (639 83 88 35)
673622896 (673 622 896) (673 62 28 96)
657777683 (657 777 683) (657 77 76 83)
634014567 (634 014 567) (634 01 45 67)

 

18 abril 2013

Memory usage treemap / WinDirStat for memory

Filed under: Uncategorized — Etiquetas: , , , , — thisisoneball @ 15:11

Warning: this is a quick hack, it’s not complete and it has bugs. Feel free to correct them and send me the changes.
Also, unlike WinDirStat, measuring memory usage is more difficult than measuring disk space. There are many different memory sizes for one process (Private Bytes, Working Set, Virtual Size, …), this just uses the output of the Windows tasklist command.

memoria

It’s a Perl program that tries to run that command, parses the output, and uses Google Charts Treemap to render the output.
It prints the HTML to stdout so the best way to run it is:
perl memoryusage.pl > memoryusage.html && start memoryusage.html

my %groups = ();
my $output;

my $output_pre = "
        <html>
          <head>
            <script type='text/javascript' src='https://www.google.com/jsapi'></script>
            <script type='text/javascript'>
              google.load('visualization', '1', {packages:['treemap']});
              google.setOnLoadCallback(drawChart);
              function drawChart() {
                  // Create and populate the data table.
                  var data = google.visualization.arrayToDataTable([
                    ['Process', 'Parent', 'Size'],
                    ['root',    null,                 0],
";

my $output_post = "
                  ]);

                  // Create and draw the visualization.
                  var treemap = new google.visualization.TreeMap(document.getElementById('chart_div'));
                  treemap.draw(data, {
                    minColor: 'red',
                    midColor: '#ddd',
                    maxColor: '#0d0',
                    headerHeight: 15,
                    fontColor: 'black',
                    showScale: true});
                }
        </script>
  </head>

  <body>
    <div id='chart_div' style='width: 900px; height: 500px;'></div>
  </body>
</html>
";

open TASKLIST, "tasklist /nh /fo CSV |" or die "Can't execute tasklist command $!\n";
while (<TASKLIST>) {
        if (m/"(.+)","(.+)",".+",".+","(.+) KB?"/) {
                $name = $1;
                $pid  = $2;
                $size = $3;
                $size =~ s/\.//;
                $output .= "['$pid','$name',$size],\n";
                $groups{"$name"} = 1;
        }
}

close TASKLIST;

while ( my ($key, $value) = each(%groups) ) {
        $output .= "['$key','root',0],\n";
}

chop $output;
chop $output;

print $output_pre . $output . $output_post;
Older Posts »

Blog de WordPress.com.