lunes, 9 de septiembre de 2019

#NoMoreCreditCards Ten tu cuenta del supermercado antes de tiempo con software libre (Parte I)

Tenemos que empezar a dejar de utilizar las tarjetas de crédito. Ya no sólo por temas de privacidad, sino por dejar de dar tanta ventaja a los bancos. Saquemos nuestro dinero y vamos a guardarlo nosotros mismos aunque eso implique riesgos y sacrificios.


Ya explicaré más en otro artículo el por qué no se deben utilizar tarjetas de crédito y cómo funciona un banco y algunas de sus ventajas. Por el momento, daré motivos de por qué utilizar medios alternativos a las tarjetas de crédito.

Cuando digo de dejar de utilizar tarjetas de crédito, siempre hay quien me dice que, si van al supermercado, es más cómoda la tarjeta pues no tienen que preocuparse de llevar suficiente dinero para así no quedarse cortos. No obstante, cuando vamos a comprar, tenemos más o menos una idea de lo que queremos, es decir, tenemos una lista de la compra.

Así pues, podríamos tener una base de datos con lo que hemos comprado en el último año y sus precios (para algo tenemos los tickets) Así pues, con un sencillo programa, podemos hacer consultas a la base de datos que tenemos en función de nuestra lista de la compra y que haga la suma de precios.


Podemos crear una base de datos como esta con distintas tablas, donde cada tabla sea un supermercado.


Este sería un ejemplo pequeño de cómo estaría la base de datos. Probemos alguna query con algún dato más.



Pues solamente tenemos que montarnos un script que consulte nuestra lista de la compra y busque el precio de cada producto en nuestra base de datos y lo almacene para hacer el sumatorio posteriormente (hago el sumatorio con paste -sd+ count.txt | bc).



Con la opción "-s" lo que hacemos es indicarle en qué supermercado vamos a comprar. En el ejemplo vemos cómo con esta lista de la compra, nos sale que tendríamos que pagar 21.33€, algo que después podemos comprobar consultando cada producto y sumando con la calculadora.

Así es como, antes de salir, sabremos con exactitud cuánto nos costará la compra, por lo que la excusa de no llevar dinero encima no sirve. Es muy fácil ir a un cajero y sacar dinero. Si no queremos ir justos, podemos llevar 10€ más, pero que vaya, que no es excusa y menos cuando tenemos al software libre de nuestro lado.

Y antes de terminar, decir que esto me llevaría como mucho, 30-50 minutos de programación contando pasar toda la información a la base de datos.

Aquí el código

#!/bin/bash
if [[  $# -lt 2 ]];then

echo "You must specify at least 1 option with a value"
exit
fi
if [[ $2=="mercadona" ]];then
IFS=$'\n'
for products in $(cat lista.txt)
do
    if [[ $products ]];then
        testing=`mysql -u root -e "SELECT producto FROM gastoComida.mercadona WHERE producto LIKE '%$products%'" | tail -1 `
        product=`mysql -u root -e "SELECT precio FROM gastoComida.mercadona WHERE producto LIKE '%$testing%'" | tail -1`
        #echo $products
        #sleep 3
        echo $product>>count.txt
        #echo $testing>>testing.txt
    else
        echo "$products doesn't/don't exists/exist"

    fi


done

fi
        mycount=`paste -sd+ count.txt | bc`
        echo "Your count is: " $mycount "€"

Como veis noe s muy complejo. Vosotros lo podéis mejorar, porque sé que es mejorable, pero era para la demo y mostrar lo sencillo que es saber lo que nos va a costar la compra antes de salir, eso sí, con software libre.

¿Hackeamos el Mundo?

No hay comentarios:

Publicar un comentario

Related Posts Plugin for WordPress, Blogger...

Entrada destacada

El server me sabe a poco.

Soy un fanático del Rock y de Debian . (Creo que voy a inventar Rockbian, que suena bien y todo xD) Llevaba tiempo queriendo unir estos 2 c...