Thingiverse-Press: Un plugin para incrustar contenido de Thingiverse en WordPress

23 mayo, 2023 at 11:22

Thingiverse es una comunidad en línea donde los usuarios pueden compartir y descargar diseños 3D gratuitos. Con millones de modelos disponibles, es una excelente plataforma para explorar e inspirarse en el mundo de la impresión 3D. Nosotros en Lacosox somos usuarios hace algunos años y puede observar una breve lista de nuestras publicaciones en thingiverse, en el sidebar de esta web, gracias al plugin thingiverse-press que hemos construido para tales efectos.

Widget con nuestros aportes en Thingiverse

Thingiverse-Press es un plugin para WordPress que permite a los usuarios integrar la biblioteca de contenidos de Thingiverse en sus sitios web. Esto significa que puedes compartir diseños 3D con tus visitantes y mostrar tus propias creaciones en línea.

Este plugin se ha iniciado desde un fork del plugin original llamado Thingiverse-Embed, el cual ya no tiene soporte y su última actualización fue hace 13 años, puede revisar su publicación original aquí. Thingiverse-Press ofrece una funcionalidad actualizada y optimizada para la última versión de WordPress, una nueva forma de extraer datos desde Thingiverse y también nuevos estilos.

¿Cómo utilizar Thingiverse-Press?

Thingiverse-Press, al igual que el plugin original Thingiverse-Embed, ofrece dos formas diferentes de integrar contenido Thingiverse en tu sitio web: a través de shortcodes y/o widgets

Shortcodes

Los shortcodes permiten a los usuarios integrar diseños de Thingiverse directamente en sus publicaciones y páginas. Simplemente coloca el shortcode [ thingiverse thing=ID ] en tu publicación o página, reemplazando «ID» con el número de identificación del modelo en Thingiverse que deseas integrar.

Por ejemplo,

[thingiverse thing=3678135]

Este es el resultado:

By dalacost June 08, 2019 a case for carrying 18 AAA batteries ideal for transport or travel. no need any additional things or tools. very easy to print and use. some comments: may you use petg for clip but pla is ok too. you can use some super glue for stay in position the 3mm bar you can use a soft sponge to reduce movement and noise of batteries on traveling. (as show in photo 2)

Widgets

Los widgets de Thingiverse Stream permiten a los usuarios integrar contenido seleccionado de Thingiverse en el sidebar o en otro lugares del sitio. Hay dos tipos de streams: Global y User. Los streams de User requieren que especifiques un Nombre de Usuario de Thingiverse.

Los streams de User incluyen:

  • designed: contenido desde https://www.thingiverse.com/<User>/designs
  • like: contenido desde https://www.thingiverse.com/<User>/likes
  • made: contenido desde https://www.thingiverse.com/<User>/makes
  • favorites: contenido desde http://www.thingiverse.com/< User >/favorites
  • collections: contenido desde http://www.thingiverse.com/< User >/collections

Los streams Global incluyen:

  • featured: contenido desde https://www.thingiverse.com/featured
  • newest: contenido desde https://www.thingiverse.com/newest
  • popular: contenido desde https://www.thingiverse.com/popular
  • derivatives: contenido desde https://www.thingiverse.com/derivatives
  • made-things: contenido desde https://www.thingiverse.com/made-things

Por ejemplo,

Ejemplo de configuración

Almacenamiento en caché de Thingiverse-Press

Este plugin está construido para ayudarle con el performance de su sitio web, es por eso que almacena varios resultados en caché. Algunos datos deben ser obtenidos desde el API de Thingiverse y para ello se explota un API KEY pública, otros datos son obtenidos desde el RSS público.

Arquitectura de Thinverse-press

Para efectos de depuración, es posible desactivar el caché, editando la variable CACHE_ENABLE en el archivo lib/thingiverse.php.

 const CACHE_ENABLE      = false; 

Nuevos estilos junto a Thingiverse-Press

Además de las funcionalidades principales, se provee un bonito diseño renovado tanto para los incrustados como para el widget. Si deseas adaptarlo a tu sitio web, puedes personalizar en el archivo templates/thing.php para los incrustados y thingiverse-stream-widget.php para lo relacionado al widget. Ambos dependen del archivo styles.css

Puede revisar el código completo en el respositorio,

Unix Time Stamp v1.0.1, un widget para relojes Garmin

26 abril, 2023 at 01:05

Nos complace anunciar el lanzamiento de nuestro nuevo widget para relojes Garmin, «Unix Time Stamp» en su versión 1.0.1. Este widget está diseñado para mostrar la hora actual en formato Unix o Epoch, y también cuenta con una función adicional para mostrar un conteo regresivo hasta la fecha en que ocurrirá el desbordamiento de 32 bits.

Para aquellos que no estén familiarizados con el formato Unix o Epoch, permítanme explicarles brevemente. Unix Time Stamp es un sistema utilizado para representar el tiempo en segundos transcurridos desde el 1 de enero de 1970 a las 00:00:00 horas UTC. Este sistema es ampliamente utilizado en la programación y en el mundo de la tecnología, y proporciona una forma fácil y consistente de representar el tiempo en una variedad de aplicaciones.

Segundos desde 1 de enero de 1970

Pero, ¿por qué alguien querría usar este formato para mostrar la hora en su reloj inteligente? Bueno, para empezar, puede ser bastante divertido. Imagínese decir la hora a alguien en el formato Unix: «Son las 1619630127 segundos desde el 1 de enero de 1970». Seguro que provoca una sonrisa en la cara de quien lo escuche. Además, para aquellos que trabajan en programación, este formato puede ser muy útil y práctico.

Segundos hasta el bug Y2K38

Además de mostrar la hora actual en formato Unix, nuestro widget también cuenta con una función de conteo que le permite ver cuántos segundos quedan antes de que ocurra el desbordamiento de 32 bits, que se producirá el 19 de enero de 2038. Este fenómeno, conocido como el «bug Y2K38», se debe a la forma en que los sistemas informáticos representan el tiempo en forma binaria, y podría causar algunos problemas en sistemas que no estén preparados para manejar fechas después de este evento.

Pero no se preocupe, nuestro widget está aquí para ayudarlo a mantenerse al tanto de la cuenta atrás. Y quién sabe, puede ser bastante emocionante presenciar este evento épico en la historia de la informática.

La versión 1.0.1 de Unix Time Stamp ya está disponible en la tienda Connect IQ de Garmin, y cuenta con soporte para varios modelos de relojes, incluyendo D2, Forerunner, Fenix, Marq, Venu y Vivoactive. Esto significa que independientemente del modelo de reloj Garmin que tenga, es muy probable que nuestro widget sea compatible con él.

Entonces, si está buscando una forma divertida y única de mostrar la hora en su reloj Garmin, o simplemente desea estar al tanto de la cuenta regresiva del bug 2k38, asegúrese de descargar nuestro widget «Unix Time Stamp» en la tienda Connect IQ de Garmin hoy mismo.

Strava Photo Downloader & Strava Kudos Tool, nuevos scripts para Strava hacks script collection

30 noviembre, 2022 at 20:49

Dos nuevas herramientas se han sumado recientemente al proyecto Strava Hack Tools. Se trata del Strava Photo Downloader Script y del Strava Kudos Tool, dos scripts que prometen facilitar la vida a los usuarios de Strava que aman la línea de comandos, desean automatizar la descarga de fotos y automatizar la entrega de kudos a sus amigos.

Strava Photo Downloader Script

Es una herramienta útil para descargar de forma masiva todas las imágenes asociadas a un perfil de usuario. Esta herramienta no utiliza la API de Strava para acceder a las fotografías, si no que realiza Web scraping. Para utilizarla, debes tener una cuenta en Strava y proporcionar tu nombre de usuario y contraseña. También debes proporcionar el ID del atleta cuyas fotos deseas descargar. Por defecto se intentarán descargar todas las imágenes disponibles en la mayor resolución posible. Es posible que Strava imponga un límite de 100 fotografías públicas en los perfiles de los usuarios.

Ejemplo, Descargar todas las fotografías de un amigo desde el feed

python strava_photo_downloader.py -l youremail@domain.org yourpassword -a 12345678
Ejemplo de descarga de imágenes

Strava Kudos Tool

Es una herramienta diseñada para automatizar la entrega de kudos a tus amigos en Strava. Kudos es una forma de mostrar apoyo y reconocimiento a otros usuarios en Strava. Cuando das kudos a alguien, estás diciéndole que te gusta lo que ha hecho y que lo aprecias. Si eres alguien que sigue a muchos atletas y luchas por mantenerse al día con la entrega de kudos, esta herramienta puede ayudarte a ahorrar mucho tiempo y energía. Te permite, entre otras cosas, buscar kudos no asignados a definidos usuarios o clubes, en periodos de tiempo específicos, para luego entregarles kudos en consecuencia.

La herramienta funciona al filtrar el feed de actividad del usuario y proporcionar kudos a todas las actividades que cumplan con ciertos criterios. Los usuarios pueden especificar qué tipos de actividades deben recibir kudos y si la herramienta debe filtrar por club o seguidores. Al igual que otros scripts, el Strava Kudos Tool también requiere que los usuarios proporcionen sus credenciales de inicio de sesión para funcionar.

Ejemplo, Asignar Kudos a todas las actividades de un club específico.

python strava_kudos_tool.py -l youremail@domain.org yourpassword -ft club -c 12345678
Dar kudos a todo mi feed sin filtros.

Es importante destacar que tanto el Strava Photo Downloader Script como el Strava Kudos Tool tienen algunos riesgos asociados con su uso. Strava tiene límites para ambos casos, como indica en su documentación oficial, y es posible que los usuarios corran el riesgo de ser bloqueados o restringidos si abusan de estas herramientas.

Debilidades de Strava y mi colección de Hack tools

15 marzo, 2017 at 10:46

Hace 1 año exactamente que publiqué estos script en Github ( https://github.com/dalacost/strava_hack_tools ) y no había tenido mucho tiempo para hablar de ello. La idea de fondo detrás de este script ( strava_traces_downloader.py ), la cual es permitir múltiples descargas de muchos tracks de ejercicios en Strava de forma rápida y sencilla, con un solo comando.

Hay que destacar que Strava si tiene un API bastante desarrollada, que permite acceder a un montón de datos, pero eso está disponible principalmente para los usuarios logeados. Es decir si no tienes una cuenta de strava no tienes mucho que hacer.

 

En Strava no puedes bajar los GPX de otros usuarios si no eres Premium, pero si reconstruirlos ilegalmente.

Es el primer problema que tienen los usuarios cuando quieren de alguna forma poder tener en su poder y manipular las rutas, ya sea por que desean tener una copia en sus gpx, teléfonos o algo más.

Lo que te encuentras cuando no eres usuario Premium y ni hablar si no eres Usuario.

Esto es algo que en lo personal no le encuentro mucho sentido, pues esta supuesta «seguridad» se ve afectada por una de las mejores «habilidades» de la plataforma, los mapas interactivos. Como muchos programadores ya sabrán, al utilizar las APIs más comunes de mapas interactivos, normalmente se requiere que se precarguen los puntos de las lineas o polígonos en algún lugar, de preferencia oculta al usuario. Y Aquí está lo interesante de todo esto, pues si los puntos existen, entonces ya podemos comenzar a reconstruir el archivo original del track.

Una solución para evitar este problema es cargar estas líneas como imágenes, pero pienso que no lo hacen por que reduce notablemente la interacción con el usuario. En resumen, es una ventaja para nosotros.

Los mapas interactivos tienen los puntos definidos en algún lugar, en este caso en el XML streams, con lo que podremos reconstruir el GPX

Suena sencillo no? Unir toda esta información que está en el mismo mapa para reconstruir manualmente nuestro track original con la información mas o menos verídica. Y es que no solo podemos tener los puntos sino que con algo de trabajo podríamos reconstruir totalmente el GPX original (Algo que todavía no he completado al 100%).

El resto de la información necesaria.

 

En Strava los registros son correlativos, ups..

Algo que me llamó la atención y que facilita notablemente la manipulación masiva de información en strava, es que los registros son correlativos a partir de su ID, el truco está en la URL.  Tanto las actividades como los números de los Atletas son correlativos.

mi actividad ha sido la numero 857millones! impresionante. Cambia el número manualmente y será más impresionante.

Si nos pusiéramos a trabajar con esto podríamos tener un montón de cálculos, solo por decir algunos podríamos tener el numero de actividades por día/hora/mes/etc…  número de usuarios activos x día, etc.. Lugares del mundo donde tienen más usuarios, etc … un sin fin de información que Strava no comparte pero que potencialmente está disponible.

Lo mismo sucede con las URL correspondiente a las fichas de los Atletas, con lo que también se podría acceder potencialmente a un montón de información de cada uno.

Los invito a hacer una prueba y cambiar el número de su actividad o el numero de su Atleta por el inmediatamente siguiente.

strava_traces_downloader.py

Este Script en resumen aprovecha estas 2 debilidades en un solo script de multiples funciones :), Reconstruye el archivo GPX a partir de estos datos disponibles, evidentemente sin necesidad de ser Premium, ocasionalmente cuando no estas logeado la cantidad de puntos disponibles es menor, en algunos casos puede llegar a ser 100 puntos máximo. Por lo que es recomendable utilizar un usuario de Strava para descargar el track.

Les dejo algunas imágenes y pueden encontrar más detalles en el sitio del proyecto en GitHub (https://github.com/dalacost/strava_hack_tools)

Bajando un Track reconstruido de una actividad específica. Sin hacer Login.

 

Si bajas la actividad con tus datos de usuario de Strava puedes tener la posibilidad de bajar más puntos, en este caso 6916puntos v/s 6375 sin login.

 

Descargando todo el rango de actividades a partir de su id, en este caso desde la XXX08 a la XXX20, algunas fallan pues esas actividades no están disponibles, son privadas o fueron borradas.

 

Los invito a descargar el https://github.com/dalacost/strava_hack_tools y ver que pueden hacer todos los datos.

 

BDCUT_CL, Nuestro proyecto SQL Códigos territoriales de Chile, ahora es abierto en github.com

24 septiembre, 2011 at 17:54

BDCUT_CLPor que una buena idea no puede quedar botada y después de ver lo útil que ha sido nuestro aporte al liberar el sql de la comunas, provincias y regiones de chile hace algún tiempo hemos decidido junto con el aporte de Skimbio Ltda, liberar un proyecto que contenga estos datos, que por lo demás son muy útiles para todos los desarrolladores en Chile.

Por sobre todas las cosas, lo que nos inspira a liberar este proyecto, es lo útil que ha sido para la comunidad de desarrolladores Web en chile, desde la primera publicación de los SQL en este mismo sitio, ya han existido miles de descarga y han aparecido referencias y agradecimientos por toda la web, incluso se han generado algunos proyectos específicos que han hacen uso a los datos que en esa época se publicaron.

Estos datos en general son estáticos, pero aún así requieren que sean actualizados constantemente. De esta forma es más cómodo tener un sitio referencial en un proyecto abierto a la comunidad, que un proyecto privado aquí en Lacosox.org

BDCUT_CL es el nombre bajo el que se han liberado las versiones BDCUT_CL 0.1 y BDCUT_CL 0.2 de los SQL que contienen los datos territoriales de Chile. Esperamos que el proyecto siga creciendo y que los aportes de privados y apasionados del software hagan de este proyecto el proyecto referencial en Chile para este tipo de datos.

Estamos totalmente abiertos a recibir cualquier aporte.

SQL Códigos territoriales Regiones, provincias y comunas de Chile ACTUALIZADO A 19 Septiembre 2011 DECRETO 817

20 mayo, 2010 at 02:48

sqlchile_0

Hoy necesitaba estos datos de manera actualizada para un proyecto que estaba desarrollando, al buscarlos en la web econtr{e varios pero todos desactualizados ya que la última actualización se realizó en el Decreto Exento Nº 817, del Ministerio del Interior, publicado en el Diario Oficial del 26 de Marzo de 2010, después de que se creó la provincia de Marga Marga (con las comunas de Quilpué y Villa Alemana, anteriormente de la provincia de Valparaíso, y Limache y Olmué, antes de la provincia de Quillota) es hizo que se le asignara un código a la nueva provincia y se modificaran el de sus comunas constitutivas. Esto último no ha sido considerado por nadie en Internet aún y sólo poseen actualizaciones del año 2009 sin incluir la última que es la de Marzo de 2010.

ACTUALIZACIÓN (19/09/2011):

El proyecto fué migrado a https://github.com/knxroot/BDCUT_CL

Si utilizaste la versión antigua publicada en este blog (versión 0.1), favor leer: https://github.com/knxroot/BDCUT_CL/wiki/changelog para que puedas actualizar tu proyecto a la versión 0.2.

DESCARGAR LA ÚLTIMA VERSIÓN DISPONIBLE EN GITHUB DE ESTA FUENTE DE DATOS AQUÍ