Hotaru fue registrada en Taringa el 2 de Diciembre del 2016. Desde entonces hasta hoy atravesó varias etapas y modificaciones. En este sitio web podés encontrar información acerca de su funcionamiento, comandos y más =)

Versiones

Alpha

Lo primero de todo fue lograr que Hotaru inicie y mantenga abierta una sesión en Taringa. Esta primera versión duro cerca de 3 meses. Su única utilidad básicamente era likear el MI y almacenar la cantidad de likes dados en una base de datos para, al final el día, shoutear un gráfico mostrando la actividad del sitio a lo largo del día. Esta primera fase también contaba con una función para devolver el follow automáticamente.

El problema más importante de Hotaru era el tiempo excesivo que tardaba en likear un nuevo shout (Llegando a tardar un plazo máximo de 3 minutos) La causa de dicha espera era que Hotaru no contaba con una herramienta fundamental, las WebSockets. Por medio de las WebSockets hay un canal abierto constantemente entre Taringa y el usuario en el cual Taringa informa cualquier notificación nueva (Como por ejemplo, un nuevo positivo, MP o el Vivo del MI). Al no contar con WebSockets, Hotaru debía recargar la página del MI para enterarse de los nuevos Shouts. Esto lo hacía cada 3 minutos para no estar constantemente enviando peticiones al sitio. Una vez obtenido el MI Hotaru debía buscar las partes importantes del código HTML para encontrar los IDs de los shouts y enviar a Taringa así su like. Esta optimización pésima del código de Hotaru significaba un coste de ancho de banda grande tanto para Taringa como para Hotaru.

No solo su funcionamiento estaba mal optimizado, sino también la forma de organizar su código, el cual estaba distribuido por cerca de 30 archivos con más de 1400 líneas de código totales. Los lenguajes que Hotaru usaba para ese entonces eran PHP y MySQL. Si bien el código funcionaba, era ilegible y complicado de entender. Esto me desmotivo bastante para mejorarla ya que, básicamente, no entendía ni mi propio código.

Beta

A finales de Enero de 2017 decidí que era hora de modificar por completo a Hotaru. Me disgustaba su código y funcionamiento tan pobre y desorganizado. Opté por reconstruir desde la base absolutamente todo el código, pero esta vez dejando de lado PHP y pasando a Python. La idea de cambiar el lenguaje fue en parte debido a que Python es más simple y está mejor orientado que PHP para usarlo en scripts como el de Hotaru. Sin embargo, el factor clave para el cambio fueron las WebSockets. Con Python pude lograr que Hotaru se conecte al servidor de Sockets de Taringa y así pueda notificarse en tiempo real en el momento en que un nuevo Shout es subido, le mandan un MP, la mencionan, etc. Básicamente, Hotaru ve lo que pasa en Taringa gracias a las Sockets. En la primera versión beta no hubo cambios importantes en el funcionamiento de Hotaru pero fue el cambio mas radical e importante que tuvo hasta el momento. Con la implementación de las Sockets Hotaru likea los nuevos shouts ni bien son publicados, da positivos y responde los MPs y comentarios. Todas estas acciones las puede hacer sin necesidad de enviar decenas de peticiones a Taringa. Esto es lo que quería lograr, un bot eficiente tanto para Taringa como para mi mismo.

En esta versión se implemento este sitio web personalizado para Hotaru y, más adelante, los primeros comandos por MP.

Release 1.0

Con el lanzamiento de esta versión, 15 meses después de la primera Alpha, Hotaru oficialmente paso de ser un simple script de likeo a un bot dinámico. Dependiendo lo que se le diga Hotaru responde de diferentes maneras. Además se implementaron los comandos por mención.

Información Técnica

Lenguajes de Programación

- Python 3.6

- MySQL 5.7

Líneas Programadas

- hotaru.py: 1111

- shout_diario_actividad.py: 282

- shout_likes_semanales.py: 220

- unfollow.py: 218

TOTAL: 1831

Sistema Operativo del Servidor

- Ubuntu 16.04

Costos de mantenimiento

- $ARS135 mensuales en el servidor

- $ARS154 anuales en el dominio .net

TOTAL: $ARS1774 anuales

Cantidad de comandos del bot:

- Por MP: 2

- Por Mención: 11

TOTAL: 13

Cantidad de respuestas del bot:

TOTAL: 238

Diagramas de Flujo

Hotaru 1.6 Seguime en taringa.net/Hotaru-Chan