Cómo instalar F-Droid

Ayer os hablaba de BaldPhone, una capa de personalización de Android pensada para mejorar la accesibilidad del sistema operativo a personas con problemas de motricidad o visión. Una de las cosas que comentaba es que se puede descargar desde los repositorios de F-Droid, lo que ha llevado a varios lectores a preguntarme ¿Qué es F-Droid y cómo puede usarlo?

Bueno, F-Droid es un repostirio, similar a una tienda de aplicaciones como Google Play o Amazon Store, pero solo con licencias libres o de código abierto.

¿Cómo se instala F-Droid?

Lo primero que tenemos que hacer es permitir la instalación de aplicaciones que no estén en el Play Store. Lo habitual es irnos a Ajustes->Seguridad en nuestro móvil y marcar la opción Orígenes Desconocidos o Fuentes Desconocidas, para que nos permita instalar aplicaciones en nuestro dispositivo, aunque según el modelo de teléfono esto puede cambiar. Por ejemplo en Huawei hay que ir a Ajustes->Seguridad y Privacidad->Ajustes Adicionales->Instalar Aplicaciones de Fuentes Externas y allí darle permisos a la aplicación desde donde vayamos a hacer la descarga (el navegador, ya sea Chrome, Opera, Mozilla…)

Después hay que entrar en este enlace, que es el del proyecto F-Droid, y pulsar el botón Descargar F-Droid.

Una vez descargado nos vamos a la ubicación de las descargas y buscamos el fichero FDroid.apk que, al pulsarlo, nos dará la opción de Instalar.

Una vez instalada la aplicación la abrimos y nos vamos a Ajustes (abajo a la derecha). Allí en la opción Repositorios podremos elegir de qué repositorios queremos poder descargar aplicaciones. Por defecto trae cuatro y solo estará seleccionada la primera (el repositorio oficial de F-Droid), aunque más adelante podrás añadir más. Las otras tres que trae por defecto son F-Droid Archive, que incluye versiones antiguas del software del repositorio oficial, Guardian Project, con aplicaciones de seguridad y privacidad de dicho proyecto, y Guardian Project Archive, con aplicaciones antiguas de dicho proyecto.

Baldphone: mejora la accesibilidad de un smartphone para personas mayores o discapacitadas

BaldPhone es una capa de personalización gratuíta para sistemas operativos Android creada por un desarrollador israelita que pone énfasis en la accesibilidad. Busca hacer más fácil el uso del teléfono a personas con problemas en la vista o de motricidad. Se trata de un proyecto de código abierto liberado bajo la licencia Apache 2.0 con el que se puede colaborar a través de GitHub.

Además del diseño específico para ayudar al usuario también incluye características muy interesantes coo recordatorios de medicación, asistente por voz, botón “gordo” para llamar a emergencias (incluyendo dos números de contacto de emergencia además del 112) y gestión simplificada de las notificaciones. Además el canal de youtube del proyecto nos proveerá de tutoriales en vídeo que ayudan a familiarizarse con el funcionamiento de BaldPhone.

Puede descargarse desde el repositorio de software libre F-Droid y es compatible con todas las versiones de Android desde la 5.0. Se trata de un software gratuito y libre, sin publicidad ni micropagos freemium, aunque se puede colaborar económicamente con el mismo a través de la plataforma Patreon.

Servicios de correo web alternativos a GMAIL y Outlook

Que hoy por hoy Gmail es el más popular de los servicios de correo electrónico gratuitos es de perogrullo, hace años que desbancó al entonces líder Hotmail (hoy Outlook) y no hay que extrañarse: funciona bien, es fiable, tiene app para dispositivos móviles, permite almacenar unas cantidades enormes de datos, enviar correos con adjuntos de tamaños descomunales… pero claro, está el tema de la privacidad. El correo es gratis, pero lo pagas con tus datos. Si no quieres que Google acceda a ellos tienes alternativas, pero otras grandes empresas como Outlook o Yandex al final van a ser más de lo mismo en ese terreno. Existen alternativas con empresas más pequeñas que te dan un mayor control sobre tu privacidad, aunque la mayoría son de pago. Voy a recomendar aquí tres que tienen opción de cuenta gratis por si os interesa:

  • ProtonMail: Esta es seguramente la más popular de las alternativas a las grandes proveedoras de correo por sus excelentes calificaciones en el terreno de la seguridad, ya que nos ofrece un cifrado fuerte de las comunicaciones. Ofrece cuatro planes de pago: el gratuito (Free), el Plus, el Visionary y el Professional. Si optamos por la versión gratis nos ofrece 500 megas de almacenamiento, un límite de 150 envíos al día y soporte técnico a través de email. Tiene app nativa para iOS y Android.
  • Tutanota: Un proyecto de correo electrónico con clientes desarrollados bajo licencia de software libre y que también hace énfasis en la seguridad, ofreciéndose además como un servicio ecológico (se compromenten a alimentar sus servidores con energías renovables). Ofrece tres planes de pago: Free, Premium y Pro. Si optamos por la versión gratis nos ofrece 1GB de almacenamiento en un correo con dominio de Tutanota, un calendario también con datos encriptados, un servicio de compresión de correos para ahorrar almacenamiento y la posibilidad de ampliar el almacenamiento pagando puntualmente sin tener que contratar un plan superior. Existe app para Android, F-Droid e iOS.
  • GMX: Es un servicio de la empresa Mail.com, propiedad del proveedor 1&1, que ofrece un correo gratuito con dominio GMX y mútiples herramientas como calendario, cifrado GPG, suite ofimática, almacenamiento cloud… pretendiendo ser lo más cercano posible a la oferta que realiza Gmail. Ojo porque en su página principal sí tiene anuncios. Cuenta con app para Android y para iOS.

Hay un par de proyectos que querría mencionar ya que, aunque no tienen plan gratuito sí ofrecen muy buenas prestaciones y su precio es muy bajo: Fastmail y Posteo.

Fastmail ofrece un plan de 3 euros al mes que da 2 GB de almacenamiento, servicio de calendario encriptado y da un periodo de prueba de 30 días. Además cuenta con varias potentes herramientas y una experiencia de usuario muy buena con su app móvil.

Por su parte Posteo cuesta solo 1 euro al mes, ofrece calendario cifrado, libreta de direcciones cifrada y correo cifrado y además afirma comprometerse a utilizar energías renovables y financiarse por medio de banca ética.

Recursos online gratuitos para aprender gallego.

Ya sea porque vayas a emigrar a Galicia, porque ya vivas allí, porque quieras opositar, por ser más eficiente en tu trato con el público o por el mero placer de aprender otro idioma, las motivaciones para estudiar gallego son múltiples y todas muy válidas. Para facilitarnos la labor en internet tenemos una serie de recusos gratuitos:

Galego RAG (normativo):

O portal da Lingua: La propia Xunta, a través de la Secretaría Xeral de Política Lingüística, ofrece una plataforma de teleformación donde podremos encontrar cursos para preprar el examen de certificación CELGA o cursos específicos para funcionarios de lenguaje jurídico y administrativo.

Tradutor Gaio: Un traductor gratuito desarrollado también por entidades públicas y disponible en formato web, app para Android y app para iOS. Los idiomas soportados son gallego, portugués, castellano, catalán, inglés y francés.

Isto é Galego!: Ofrecida por Cuac FM, esta plataforma está disponible a través de web y de app para Android e iOS. Son una serie de audios donde, a través del humor, puedes ver una aproximación menos formal, con un lenguaje coloquial y muchos modismos.

Conxugalego: Los verbos y sus conjugaciones suelen ser una de las dificultades al estudiar una lengua romance. Esta aplicación de SmartGalApps nos pedirá que insertemos el infinitivo de un verbo para devolvérnoslo conjugado en todos sus tiempos. Está disponible para Android y para iOS.

Dicionario RAG: Otro elemento importante a la hora de aprender un idioma es contar con un diccionario. El de la Real Academia Galega está disponible en su web, también para Android e iOS.

Dicionario de Sinónimos: Un proyecto de la Universidad de Vigo que nos dotará de un práctico diccionario de sinónimos, una ayuda para tener un vocabulario más amplio.

Galego internacional (reintegracionismo):

Los recursos arriba listados están enfocados a la normativa ortográfica oficial de la RAG. Existen también un movimiento que reclama una ortografía confluyente con la lusofonía, más cercana al portugués. Se habla de esta forma de galego internacional, puesto que el portugués es uno de los idiomas más hablados del mundo con casi 300 millones de hablantes y siendo oficial en 9 países, y de reintegracionismo, ya que en sus inicios gallego y portugués fueron un mismo idioma.

Dicionário Estraviz: Un completo diccionario de gallego internacional. Incluye un anexo con léxico gallego de uso común en portugués.

A Nossa Galáxia: Colección de recursos lingüísticos para profundizar en el estudio de la normativa reintegracionista.

Vocabulário Ortográfico: Una recopilación de vocabulario de Galicia y el norte de Portugal a cargo de la Academia Galega da Lingua Portuguesa.

Otros consejos:

Estos recursos, junto al estudio y la convesación, pueden ser muy útiles pero a la hora de estudiar cualquier idioma lo principal es consumir mucha de su producción cultural. La plataforma de préstamo de obras digitales de la red de bibliotecas públicas de Galicia, Galicia Le, ofrece muchas obras, como también lo hace Galiciana, la Biblioteca Dixital de Galicia (un proyecto algo abandonado por las administraciones). En esta entrada de El Salto Diario encontrarás también varios podcasts en gallego. También dispones de la RTVG , la corporación de radio y televisión públicas, que emite varios programas online y de la plataformá Nós Televisión con una programación variada.

Y como no, escucha mucha música. Hubo un proyecto de discográfica online con licencias Creative Commons agrupando grupos gallegos, O Toxo Rabudo. Lleva un par de años parado el proyecto y su dominio principal ya no funciona, pero todavía puede accederse a su blog para descargar los discos.

Operaciones a bit a bit: NOT, AND, OR y XOR

Seguimos con la racha de entradas encadenadas. Si la entrada de los tipos de configuración RAID nos llevó a definir el concepto de información de paridad ahora a raíz de esa entrada vamos a hablar de las operaciones bit a bit.

Hablamos de operaciones a nivel de bit porque con ellas trabajamos directamente sobre los bits, dígitos binarios, a nivel individual. Este tipo de operaciones son muy utilizadas en computación, a la hora de cifrar datos o, como comentábamos en el otro artículo, para realizar los cálculos de paridad. Es posible que te suenen los nombres de estas operaciones, pues son operaciones lógicas que ya vimos en su día en un artículo sobre LibreOffice Calc o también en la entrada sobre el álgebra booleana.

NOT: La operación NOT también podría ser llamada complemento y es un operador unario. Realiza la negación lógica de cada bit, es decir, invierte su valor. Por ejemplo, la operación NOT 1010 daría como resultado 0101.

AND: La operación AND, o conjunción lógica, funciona de forma similar a una multiplicación: sólo nos devolverá 1 si todas las entradas son 1, en el resto de casos devolvería 0. Es decir 0 AND 0 es igual a 0, 1 AND 0 es igual 0 y solo 1 AND 1 es igual a 1. Por ejemplo: 100111001011010100111010 AND 010110100001101111011000 = 000110000001000100011000. Cuando hacemos la operación AND la secuencia que dará como resultado no puede ser más larga que la mayor de las secuencias operadas.

OR: La operación OR, o disyunción lógica, dará como salida 1 siempre que una o más de sus entradas sean 1. Es decir, 1 OR 1 es igual a 1, 1 OR 0 es igual a 1 y solo 0 OR 0 es igual a 0. Por ejemplo: 1000 OR 0011 = 1011. Cuando hacemos la operación OR la secuencia que dará como resultado no puede ser más corta que ninguna de las secuencias operadas.

XOR: La operación XOR, u OR exclusivo, dará como salida 1 siempre que solo una de las dos entradas sea 1. Es decir, que 0 XOR 0 será igual a 0, 1 XOR 1 será igual a 0 pero 1 XOR 0 o 0 XOR 1 serán igual a 1. Por ejemplo 1010 XOR 1001 = 0011 Dado que es complicado revertir su resultado es muy utilizada en algoritmos de cifrado.

¿Qué es la paridad en una configuración de RAID?

Bueno, mi última entrada había sido explicar qué es un RAID y raíz de eso me han preguntado otra cosa ¿Qué es la paridad?

Bueno, la información de paridad es un tipo de redundancia que nos permite recuperar los datos al vuelo en caso de que falle algún disco. Esto también lo permite una copia en espejo (RAID 1), pero con una diferencia: En el artículo anterior veíaimos que en un RAID 1 tenemos todo un disco ocupado con los datos redundantes, en cambio en un RAID 5 decíamos que solo ocupábamos el equivalente a un disco para almacenar la paridad, si tenemos cuatro discos aprovechamos el espacio de 3 ¿Qué brujería es esta? Pues una brujería matemática.

La información de paridad es una informacion calculada operando con el resto de datos de la misma división. De esta forma si se rompe un disco podemos recuperarlos comparando los datos que tenemos con los de paridad. Por poner un ejemplo simplificado, pensemos en álgebra sencilla. Imagina que calculásemos la paridad sumando los valores de los sectores de una misma división: El valor del sector 1 sería 1, del sector 2 sería 2, del sector 3 sería 3 y la paridad sería su suma ( 1+2+3=6 ). Si se rompiese el disco que conteía el sector 2 tendríamos esto en nuestros discos: 1+X+3=6. Podemos resolver la ecuación para saber que X era 2 antes de tener que cambiar el disco. Aunque el cálculo de paridad es realmente más complejo, esencialmente sería algo así.

Los sistemas de paridad simple más sencillos suelen usar la operación XOR para hacer estos cálculos a nivel de bit. Los sistemas más complejos, por ejemplo la doble paridad del RAID 6, utilizan operaciones más complicadas como un código Reed-Solomon u operaciones sobre un campo de Galois concreto. El requerir operaciones más complejas para calcular la paridad provoca que la velocidad de escritura sea menor, a cambio de conseguir una mayor tolerancia a fallos ya que podrían fallar hasta dos discos sin que perdamos datos.

Tipos de RAID más comunes

Me pregunta un amigo que és un RAID así que ya me ha dado una excusa para escribir una entrada sobre esto: RAID es el acrónimo de Redundant Array of Independent Discs, que en castellano sería Matriz Redundante de Discos Independientes. Y si ahora acabo aquí con razón te quejarías de que el título del post es engañoso. Una vez visto el significado vamos a explicarlo: el RAID es un sistema de almacenamiento que utiliza varios discos duros de forma conjunta para almacenar y replicar la información. Existen distintos tipos de configuraciones según busquemos mejorar la velocidad o la seguridad de nuestros datos, o el balance más equilibrado entre ellas. Vamos a ver cuáles son los tipos más habituales, ilustradas con unos gráficos sacados de la wikipedia:

RAID 0

También llamado Stripped Volume. Es uno de los tipos más básicos de RAID y requiere de solo dos discos. Cuando lo configuramos así ambos discos funcionan como uno solo, sumando sus tamaños, y la información se distribuye de forma equitativa entre ambos discos. Esto duplica la velocidad de escritura y de lectura pero reduce la tolerancia a fallos: si se estropea uno de los discos perderemos todos los datos pues no hay paridad ni respaldo.

RAID 1

También llamado Espejo, o Mirror en inglés. Como el RAID 0 requiere solo de dos discos, ambos del mismo tamaño. Básicamente lo que se hace en esta configuración es escribir los mismos datos en los dos discos, uno sería el “espejo” del otro. El gran problema de este tipo de RAID es que solo podemos usar la mitad del espacio disponible pues la otra mitad estará dedicada a replicación, como ventajas nos da una pequeña mejora en la velocidad de lectura y una gran tolerancia a fallos: si falla uno de los discos tenemos todos los datos en el otro que, además, se volverán a duplicar cuando sustituyamos el disco roto.

RAID 5

El RAID 5, o de paridad distribuida, es uno de los más usados en entornos empresariales por su buena combinación de rendimiento, aprovechamiento de discos y tolerancia a fallos. Aquí ya necesitaremos al menos 3 discos para empezar a trabajar. Con esta configuración cada vez que se escribe un bloque de datos se escribe tambien un bloque de paridad en su misma división. Esto permitirá que en caso de que rompa uno de los discos los datos puedan recuperarse al reconstruir el raid, aunque si rompiesen dos discos ya sí perderíamos toda la información. Respecto al RAID 1 se aprovecha más espacio, pues dispondríamos de un espacio igual al número de discos menos uno: por ejemplo con 4 discos de 2 teras tendríamos 6 teras disponibles. También conseguimos una mejora de la velocidad de lectura en una proporción similar, aunque no así en la escritura. La cantidad de discos que se puden montar en RAID 5 es teóricamente ilimitada, pero hay que tener en cuenta que cuantos más discos tenga la matriz más probabilidades hay de que falle uno.

RAID 6

Similar al RAID 5 pero añadiendo un segundo nivel de paridad. Esto permitiría recuperar los datos en caso de que fallen dos de los discos, aunque en lugar de sacrificar el espacio de un disco para paridad sacrificaríamos el de dos. Para la configuración del ejemplo anterior, 4 discos de 2 teras, tendríamos 4 teras disponibles en lugar de 6. Aunque logra una mejora en la velocidad de lectura algo menor que la del RAID 5 penaliza la escritura al tener que hacer más cálculos de paridad. Puede ser más recomendable que un RAID 5 si se quiere utilizar un número grande de discos al tener una mayor tolerancia a fallos.

RAID 10

El RAID 10, o RAID 1+0, es básicamente una combinación de un RAID 1 y un RAID 0. Es una configuración muy popular a la hora de montar servidores de bases de datos por su buena combinación de velocidad con tolerancia a fallos. Requiere al menos cuatro discos y han de ser siempre un número par. Básicamente se monta primero cada par de discos haciendo un RAID 1, con uno replicando al otro, y después se hace un RAID 0 sobre esos conjuntos de discos. Es bastante robusto pues podrían fallar a la vez un disco de cada par sin perder datos. Existe también una opción similar pero a la inversa que sería el RAID 0+1, pero es poco utilizado por tener una menor tolerancia a fallos. También, con un mayor número de discos, podríamos hablar de un RAID 100: consiste en coger dos matrices de discos en RAID 10 y aplicar sobre ellas un RAID 0 a mayores, o de un RAID 101: lo mismo pero aplicando un RAID 1 a las matrices en RAID 10.

Existen más configuraciones que las aquí citadas, tanto básicas como combinadas (RAID 2, RAID 3, RAID 4, RAID 30, RAID 50…). puedes verlas todas en el artículo de Wikipedia del que saqué las imágenes de ejemplo, donde también tienes explicaciones más detalladas de algunas de las configuraciones aquí explicadas.