Reemplazando la bateria del AirTag

  • July 3, 2023
  • tuxotron
  • Baterías Duracell

    Desde que prácticamente Apple anunció los AirTags (son unos dispositivos de traceo del tamaño de una moneda de dos euros más o menos) los he estado usando. Los tengo en maletas de viaje, mochilas, llaveros, etc. Desafortunadamente como todo en la vida este tipo de dispositivos se puede usar para bien y para mal. El motivo de esta entrada no es hablar del uso ético de los AirTags, sino del reemplazo de su batería.

    Hace varios meses, mi iPhone me notificó que uno de mis AirTags tenía la batería muy baja y que era hora de reemplazarla. Me fui a una tienda, compré un par de baterías (CR2032), le cambié la batería al AirTag en concreto y sin problemas. Viendo el número de AirTags que tengo, decidí comprar un paquete de 8 baterías Duracell como el que se puede ver en la imagen que encabeza esta entrada.

    Hace unos días, mi iPhone me vuelve a notificar que otro de mis AirTags necesita una batería nueva. Cojo una de las baterías de esas Duracell que compré, la instalo, pero el AirTag no funciona. Lo primero que pensé fue que lo mismo, el AirTag era el problema y que se había estropeado, pero antes de ponerlo en la basura, decidí buscar por internet por si alguien había tenido el mismo problema, y efectivamente, yo no era el único. El causante del problema, no es el AirTag o la batería en sí, sino una capa amarga que los fabricantes les ponen a las baterías de botón como protección contra los niños (si te fijas en la imagen que encabeza la entrada, dice: Child Secure + Bitter Coating. Que viene a traducirse a algo como: segura contra niños + una capa amarga). La idea es que si un niño pequeño se mete la batería en la boca, el sabor amargo de la misma haría que el niño la escupiera y no se la tragara, al menos ese es el objetivo con lo de la capa amarga. Ahora bien, el problema por lo visto está en dicha capa, que impide un buen contacto entre la batería y los conectores del AirTag, que según parece, son muy sensibles, con lo cual, tal cual esa batería no lo podemos usar con el AirTag. Aquí tendríamos dos opciones: comprar una batería que no traiga dicha capa, o remover dicha capa limpiando la batería. En mi caso opté por intentar remover la capa usando líquido para limpiar las gafas y una servilleta de papel, y me funcionó sin problemas. Hay quien dice que ha usado otros tipos de alcohol, peróxido de carbono, etc. Hay a quien les ha funcionado y a quien no.

    Si te encuentras con dicho problema y optas por la opción de limpiar la capa, asegúrate de limpiarle también el borde de la batería, además de los polos, y comprueba desde tu iPhone, iPad, web… que el AirTag está dando señales de vida.

OpenExpo Europe décima edición, 18 de mayo: El Epicentro de la Innovación y la Transformación Digital

  • May 13, 2023
  • cybercaronte
  • OpenExpo Europe

    Desde hace nueve años, Open Expo (organizado por MyPublic Inbox) se ha consolidado como un hito en la divulgación de la Innovación Tecnológica, la Transformación Digital y el Open Source. Comenzó como un encuentro anual que reunía a más de 3.500 profesionales de todas las industrias tecnológicas, desde tomadores de decisiones, técnicos y expertos, hasta usuarios de todos los niveles. Su propósito: presentar las últimas tendencias, herramientas y servicios en innovación y tecnología, además de fomentar la expansión de las redes de contacto. A lo largo de este viaje, OpenExpo Europe ha evolucionado de manera constante, gracias a la dedicada comunidad de profesionales que forman parte de ella, impulsando actividades tanto offline como online para seguir difundiendo contenido tecnológico e innovador.

    OpenExpo Europe sigue evolucionando año tras año, ofreciendo a las empresas la información más actualizada sobre la transformación empresarial, las tendencias dentro del sector de IT y las últimas innovaciones. La décima edición del evento promete ser un día repleto de conferencias, casos de éxito empresarial, keynote speakers, talleres prácticos, mesas redondas, demostraciones y muchas otras actividades. Este evento está particularmente orientado a las innovaciones tecnológicas, haciendo de OpenExpo Europe el medio idóneo para informar a la comunidad internacional sobre las numerosas contribuciones del Open Source y el Software Libre dentro de las actuales y futuras revoluciones digitales. Los asistentes tendrán la oportunidad de colaborar, compartir información y aprender sobre una amplia variedad de temas, además de conocer cómo el Open Source fomenta la innovación y la agilidad en las empresas para impulsar su transformación global y sus procesos tecnológicos.

    No te pierdas el evento este año el día 18 de mayo donde encontrarás ponentes como Chema Alonso, Pablo González Pérez, Pau García Milá e incluso este año irá como invitado el periodista Iker Jiménez. No puedes perdértelo. Aún puedes conseguir entradas aquí

Docker Init

  • May 10, 2023
  • tuxotron
  • Libro Docker

    Una de las nuevas funcionalidades de la versión recién lanzada de Docker Desktop, 4.19.0, es la adición de un nuevo plugin llamado init.

    Este plugin, aunque muy sencillo, es muy útil a la hora de arrancar un proyecto nuevo, ya que nos permite crear de forma muy rápida los tres ficheros básicos de Docker que son usado comúnmente en cualquier proyecto que, obviamente, use Docker. Estos ficheros son:

    • .dockerignore
    • Dockerfile
    • compose.yaml

    Si no conoces la función de cada uno de esos ficheros o el formato y contenido de los mismos, te recomiendo este magnífico libro dónde te lo explica de todo a base de muchos ejemplos ;) o simplemente le puedes preguntar a ChatGPT! :)

    El uso de este plugin es muy sencillo, sólo tienes ejecutar el comando docker init y contestar a varias preguntas, estas se diferenciarán dependiendo del lenguaje de programación seleccionado:

    $ docker init
    
    Welcome to the Docker Init CLI!
    
    This utility will walk you through creating the following files with sensible defaults for your project:
      - .dockerignore
      - Dockerfile
      - compose.yaml
    
    Let's get started!
    
    ? What application platform does your project use?  [Use arrows to move, type to filter]
      Go - suitable for a Go server application
      Python - suitable for a Python server application
      Node - suitable for a Node server application
    > Other - general purpose starting point for containerizing your application
      Don't see something you need? Let us know!
      Quit
    

    Lo primero que tenemos que contestar es para qué lenguaje queremos crear los ficheros de Docker. Dependiendo del lenguaje, se usan distintas imágenes, administrador de paquetes, directorios y/o ficheros que queremos ignorar, etc.

    Supongamos que seleccionamos la opción Python, la siguiente pregunta sería qué versión de Python queremos usar:

    $ docker init
    
    Welcome to the Docker Init CLI!
    
    This utility will walk you through creating the following files with sensible defaults for your project:
      - .dockerignore
      - Dockerfile
      - compose.yaml
    
    Let's get started!
    
    ? What application platform does your project use? Python
    ? What version of Python do you want to use? (3.10.9)
    

    Una vez introducida la versión, nos preguntará por el puerto por el cual nuestra aplicación escuchará, y finalmente nos pregunta por el comando que queremos ejecutar para levantar nuestra aplicación:

    $ docker init
    
    Welcome to the Docker Init CLI!
    
    This utility will walk you through creating the following files with sensible defaults for your project:
      - .dockerignore
      - Dockerfile
      - compose.yaml
    
    Let's get started!
    
    ? What application platform does your project use? Python
    ? What version of Python do you want to use? 3.10.9
    ? What port do you want your app to listen on? 8000
    ? What is the command to run your app (e.g., gunicorn 'myapp.example:app' --bind=0.0.0.0:8000)? gunicorn 'myapp.example:app' --bind=0.0.0.0:8000
    
    CREATED: .dockerignore
    CREATED: Dockerfile
    CREATED: compose.yaml
    
    ✔ Your Docker files are ready!
    
    Take a moment to review them and tailor them to your application.
    
    WARNING: No requirements.txt file found. Be sure to create one that contains the dependencies for your application, including an entry for the gunicorn package, before running your application.
    
    When you're ready, start your application by running: docker compose up --build
    
    Your application will be available at http://localhost:8000
    

    Una vez terminado, nos encontraremos en el directorio actual con los 3 ficheros mencionados anteriormente.

    Es muy probable que tengas que hacer algunas modificaciones en dichos ficheros, sobre todo en entornos empresariales, ya que es común y muy recomendado, que dentro de la empresa existan imágenes base de Docker configuradas y mantenidas internamente, y almacenadas en resgistros internos.

    Una cosa muy imoportanta a tener en cuenta es que si ejecutas este plugin en un directorio donde ya tienes dichos ficheros, estos se sobreescribirán, aunque el plugin te preguntará si quieres sobreescribirlos.