Un concepto que busca optimizar internet para la cooperación en el mundo real, y no tanto para la circulación de información o contenido.

Helpbuttons 0.4: Crea tus herramientas colaborativas para el mundo real. Create your collaborative tools and cooperate in the real world

Redacción | March 13, 2024

/////////ENGLISH BELOW

Ya está lista la versión 0.4 de HelpButtons: software para crear y conectar herramientas colaborativas.

Varias personas nos han preguntado en qué se diferencia este software de otros que incluyen mapas, foros de discusión, grupos de chat y/o gestión de eventos. La intención no es que se diferencie, sino que agrupe sus características y sean los usuarios los que configuran el software incluyendo las características que les convienen. No es una herramienta para cooperar; es una herramienta para crear herramientas para la cooperación (rizando el rizo 🙂 ), y un código para que esas herramientas se entiendan entre sí.

¿Cómo? Primero hemos analizado las características de varias herramientas colaborativas (intercambio de objetos como Wallapop, de vivienda como Airbnb, de transporte como Blablacar, de eventos como Meetup, elaboración de mapas como Ushahidi…) y hemos diseñado un sistema común siguiendo estos principios:

  • Facilitar la creación de webs colaborativas. Un usuario sin apenas conocimientos de informática puede crear su web para colaborar con su comunidad en lo que quiera.
  • Mejorar el diseño de interfaz para hacerlo lo más fácil posible para el usuario. El talón de Aquiles de muchas herramientas abiertas online. Simplificamos, intentamos consultar con expertos y partimos de los diseños de las mejores herramientas disponibles para lograr una interfaz sencilla y ayudar a salvar las dificultades digitales.
  • Descentralizar la gestión de la comunidad. Ya sea en nuestro servidor o en otros, la gestión y moderación de las redes está totalmente descentralizada, con moderadores asignados por los usuarios.
  • Optimizar la unión/federación de webs. Para compartir usuarios y contenidos fácilmente. Todas las herramientas creadas con Helpbuttons comparten un esqueleto común que nos permite unir las diferentes herramientas web creadas ya sea a escala local o más grande, ahorrando recursos y facilitando encontrar los contenidos.

Veamos algunos ejemplos:

Ejemplo 1: creamos una red para reuniones deportivas llamada “Pachangas”. En este caso, las publicaciones tienen fechas y precios específicos, y agregamos los tipos de deportes deseados junto con sus características y colores. Los usuarios pueden suscribirse a las reuniones deportivas de manera orgánica comentando en la publicación. La publicación permite conversaciones privadas y públicas, lo que posibilita a los usuarios mantenerse en contacto dentro o fuera del software. Gracias a la estructura del software, podríamos -por ejemplo- crear de manera sencilla una plantilla más compleja con un contador y una calificación de jugadores, pero dejamos la explicación para más adelante.

Ejemplo 2:  creamos una red de cooperación para áreas rurales, en concreto Red de colaboración Valle del Trubia. En este caso, cambiamos la configuración de la red para que la vista de mapa muestre solo un área en la región de Asturias. Definida por los administradores al crear la red, los usuarios verán directamente el área local cuando abran la herramienta. Aquí tienes un enlace a la red.

Esta red es más diversa, con diferentes tipos de publicaciones. Puedes ver eventos con fechas y precios, negocios y se pueden hacer consultas para expertos locales como: “¿Conocen esta seta? ¿Es comestible?”; “¿Conocen a un arquitecto de la zona?”; etc. Esta es una herramienta local para mantener en contacto a la comunidad y promover la cooperación en la vida real. No necesitan tener una web para eventos, otra para intercambio y un grupo para preguntas: podrían tener un mismo portal de cooperación todas las opciones y además federarse con otras redes cercanas, compartiendo usuarios y contenido, sin necesidad de volver a replicar el esfuerzo.

Ejemplo 3: una red de repartidores y cocinas

Red de negocios y repartidores

Por ahora es una red básica, con opciones para publicar cocinas, tiendas y repartidores disponibles en los barrios. Gracias a la estructura de los post, la intención es crear un template que permita seleccionar menús en las cocinas y habilite el rastreo en tiempo real de los repartidores. Con esas dos características, tendríamos un gestor descentralizado de envíos, al estilo glovo, y el mismo esqueleto base para federarse, compartir contenido y / o usuarios con otras redes!

Avisos y alertas 

Una característica adicional e importante es la capacidad de seguir publicaciones y etiquetas, lo que permite a los usuarios recibir noticias de cualquier publicación o de temas en los que estén interesados por correo electrónico. Esto también se puede filtrar por distancia. Por ejemplo, puedes solicitar notificaciones para cada partido de baloncesto creado dentro de 20 km de tu posición (establecida en tu perfil), y lo recibirás directamente en tu correo electrónico.

Escalabilidad y federación

La capa final del diseño principal, la federación, aún está en desarrollo. Las redes pueden federarse para compartir contenido y mejorar la experiencia del usuario. Si una red se crea utilizando el mismo software, los usuarios podrían pasar de una a otra sin registrarse nuevamente, e incluso decidir qué publicaciones pueden mostrarse en otras redes. Por ejemplo, los usuarios de la red de Asturias mencionada anteriormente podrían unirse a una red más grande que cubra toda España y ver publicaciones de otras áreas si estas redes estuvieran federadas. Esto es especialmente útil para comunidades en crecimiento con grupos irregulares que surgen gradualmente en diferentes áreas o se unen a otros grupos más pequeños y desean compartir sus comunidades.

La región para la que creas tu red dependerá de su ámbito de actuación, del propósito que quieras atender y de los contactos que tengas. Helpbuttons permite crear redes para zonas pequeñas como pueblos y/o crear redes más extensas como países. Después, esas redes pueden conectarse en mayor escala, ya sea para un mismo uso específico o para compartir usos.

 

En la columna A de la imagen dos redes pequeñas de aprovechamiento de comida se han unido, por un lado, a una red regional de aprovechamiento más grande y, por otro, a una red regional de colaboración amplia, donde se coopera para ofrecer alojamiento, reciclado de objetos y transporte.

En la columna B un grupo de vecinos de un barrio de casas decidieron crear una herramienta para compartir sus piscinas en verano, otro grupo de vecinos de un barrio cercano creó un mercadillo para reusar objetos y una red de aprovechamiento de alimentos. Cuando las iniciativas crecieron decidieron unirlas en una web regional que agrupaba el contenido de las 3 anteriores y se pudiera consultar fácilmente.

La C muestra dos localidades enteras en las que se crearon redes de comercio de alimentos y otra de reaprovechamiento. Los vecinos quisieron unir ambas redes en una más grande para poder compartir contenidos, y a su vez compartir las publicaciones con una red mayor, que aglutinaba todos los artículos de cooperación del país de A y B, así como eventos de otras redes de conciertos y actividades deportivas.

En la columna D gente de varios barrios de Sevilla creó una red para organizar eventos deportivos y otra para conciertos en terrazas, al tiempo las unieron para crear una web común de eventos en toda Sevilla que se unió a la red cooperativa de todo el país.

Facilitar y unir los diferentes desarrollos:

Parece que cada vez que alguien quiere crear una web de intercambio o colaboración para compartir o vender alimentos, objetos, eventos o similar tiene que iniciar un proceso de creación personalizado, caro en tiempo y en dinero, además de repetir desarrollos que otras muchas personas han hecho por separado. Si creásemos una comunidad de desarrolladores que entiende el mismo lenguaje y comparte unos mismos principios podríamos ahorrar muchos recursos y avanzar en la mejora de internet para la cooperación.

El concepto de publicaciones modulares:

Cuando comenzamos a desarrollar el concepto, sabíamos que necesitábamos algo que pudiera transformar toda la estructura de formularios y publicaciones con un lenguaje simple, así que decidimos usar un lenguaje de estructura JSON para determinar el tipo de campos. El software puede entender los tipos de campos requeridos para cada función incluida en el JSON e insertar el campo correspondiente en las diferentes partes de la aplicación. Esto permite ser muy flexibles en el tratamiento de las diferentes áreas del software, y a otros desarrolladores incluir sus modificaciones y propuestas de nuevos módulos y plantillas modificando el JSON (hasta cierto punto, claro).

Opciones:

Todo esto conduce a un número infinito de posibilidades. Puedes crear tu herramienta y configurar tus necesidades. Puedes elegir entre diferentes plantillas para mostrar tu contenido, mostrar las publicaciones en un mapa o simplemente mostrar una lista; usar precios, fechas o simplemente incluir una publicación con la ubicación y comenzar una conversación.

¿Por qué servidores centralizados y no protocolos descentralizados?

Como asociación, abogamos por sistemas descentralizados y estamos abiertos a incluir protocolos completamente descentralizados (como Nostr) en el diseño, pero creemos que (por ahora) un sistema híbrido de servidores descentralizados puede ser más útil y más fácil de configurar y usar para más usuarios, especialmente aquellos poco familiarizados con la tecnología.

Vertebración del medio rural e intercambio de cercanía

Una de las características más interesantes de un desarrollo así es pensar en cómo adaptarse a usuarios con poco manejo de tecnología. Fomentar la creación de herramientas gestionadas por los propios vecinos puede permitir una ayuda más personal y directa para combatir las dificultades digitales y mejorar la igualdad de oportunidades. Aunque hemos tenido en mente la accesibilidad, siempre es mejorable y se necesitan tanto diseñadores expertos como manos atentas a brindar ayuda. Por ahora, incluimos los perfiles de los administradores en la home, pudiendo ellos revelar su contacto si lo desean, para que los puedan contactar personas que no sepan desenvolverse en medios digitales.

¿Cuáles son los próximos pasos?

A corto plazo, buscamos proyectos privados o públicos que nos ayuden a probar la herramienta. A medio plazo, nos estamos moviendo hacia la aplicación independiente y el sistema de federación. A largo plazo, estamos trabajando en más plantillas, protocolos descentralizados y facilitando pagos con Bitcoin y G1. Creemos que esta herramienta puede ampliar y facilitar el uso de Internet como una forma de mejorar la cooperación e intercambio en el mundo real, no solo para compartir información o contenido.

Puedes seguir las tareas y cooperar en el desarrollo en nuestro Github:

github.com/helpbuttons/helpbuttons

En resumen, el concepto de este software es combinar las prestaciones de aplicaciones colaborativas dentro de la misma interfaz y multiplicar su poder permitiendo la cooperación con otros sitios web que utilizan el mismo software. Esto beneficia no solo a los usuarios (que no necesitan comenzar un proyecto de programación desde cero cada vez que necesiten construir aplicaciones colaborativas descentralizadas) sino también a la comunidad de desarrollo, que puede adaptar el mismo software gracias a una estructura sencilla (siempre mejorable) de publicación y base de datos.

Sofware 

El criterio para elegir las herramientas con las que lo hacemos fue el siguiente:

1. Mayor comunidad de desarrollo en la actualidad.

2. Documentación disponible.

3.Escalabilidad (que permita mayor procesamiento para el desarrollo futuro (como posicionamiento en tiempo real, cálculo de rutas etc) y con menos

4. Software libre

5. Proyección

Front: NexjJS, RXJS, Pigeon Maps, Open Street Maps

Back: NestJS, PostGIS

¿Y cómo se sostiene el proyecto?

Si no quieres instalarte el software en tu propio servidor, puedes alquilar el nuestro por 10€ al mes y tendrás asistencia técnica y asesoramiento en la creación de tu red. En esta primera fase podemos incluir nuevas features adaptadas a tu caso así que si tienes una idea en mente, aprovecha. ¡Tener a un equipo a tu disposición para generar lo que quieres normalmente no es fácil ni barato!

Para compartir, comentar o participar:

helpbuttons.org
github

 

////ENGLISH

Yep. We’ve released version 0.4 of the HelpButtons software. WTF is Helpbuttons?

Many people ask us why this software is different or better than others that include maps, discussion forums, chat groups, and/or event management. The truth is that there’s no difference, because it combines all of them into one, and the real difference is made by the users who configure the tool. This isn’t just a tool for cooperation; it’s a tool for creating tools for cooperation :). Let’s see some examples:

In one example, we created a network for sports meetings. In this case, posts have specific dates and prices, and we added the desired sport types along with their characteristics and colors. Users can subscribe to the sports meetings organically by commenting on the post. The post enables private and public conversations, allowing users to stay in contact within or outside of the software. We could create a more complex template with a player counter and rating, but we’ll leave that for later.

Another example involves creating a cooperation network in certain areas of Spain. In this case, we changed the network settings so that the map view only shows an area in the region of Asturias. Users will directly see the area of the network when they open the tool. Here is a link to the network.

This network is more diverse, featuring different types of posts. You can see events with dates and prices, businesses, and general questions like “What’s this mushroom? Is it edible?” This is a local tool to keep the community in contact and promote cooperation in real life.

An additional and important feature is the ability to follow posts and tags, allowing users to receive news happening in any publication or in topics they are interested in via email. This can also be filtered by distance. For example, you can request notifications for every basketball match created within 20km of your position (set in your profile), and you’ll receive this directly in your email.

The final layer of the design isn’t fully finished, but we’re already developing federation. Networks need to federate to share content and improve the user experience. If a network is created using the same software, users could transition from one to the other without registering again, and even decide which posts can be displayed in other networks. For example, users from the Asturias network mentioned earlier could join a larger network covering all of Spain and see posts from other areas if these networks were federated. This is especially useful for growing communities with irregular groups emerging gradually in different areas or joining other smaller groups and wanting to share their communities.

Scalability and Federation

The final layer of the main design, federation, is still under development. Networks can federate to share content and enhance user experience. If a network is created using the same software, users could transition from one to another without re-registering, and even decide which posts can be displayed on other networks. For instance, users from the Asturias network mentioned earlier could join a larger network covering all of Spain and view posts from other areas if these networks were federated. This is particularly useful for growing communities with irregular groups that gradually emerge in different areas or join other smaller groups and wish to share their communities.

The region for which you create your network depends on its scope, the purpose you want to serve, and the contacts you have. Helpbuttons allows creating networks for small areas like towns and/or creating larger networks like countries. Afterwards, these networks can be interconnected on a larger scale, either for a specific common use or for sharing purposes.

In column A of the image, two small food sharing networks have joined, on one side, a larger regional sharing network, and on the other, a broader regional collaboration network, where cooperation is provided for accommodation, object recycling, and transportation.

In column B, a group of neighbors from a neighborhood of houses decided to create a tool to share their pools in summer, another group of neighbors from a nearby neighborhood created a market for reusing objects, and a food sharing network. When the initiatives grew, they decided to merge them into a regional website that consolidated the content of the previous 3 and could be easily accessed.

Column C shows two entire localities where networks for food trading and reusing were established. The residents wanted to combine both networks into a larger one to share content, and in turn, share the posts with a larger network, which aggregated all cooperation articles from countries A and B, as well as events from other networks of concerts and sports activities.

In column D, people from various neighborhoods in Seville created a network to organize sports events and another for terrace concerts, and simultaneously merged them to create a common events website for all of Seville, which joined the cooperative network of the entire country.

Facilitating and Uniting Different Developments:

It seems that every time someone wants to create a website for sharing or selling food, objects, events, or similar, they have to start a custom creation process, costly in both time and money, as well as repeating developments that many others have done separately. If we were to create a community of developers who understand the same language and share the same principles, we could save many resources and advance in improving the internet for cooperation.

The Concept of Modular Posts:

When we began developing the concept, we knew we needed something that could transform the entire structure of forms and posts with a simple language, so we decided to use a JSON structure language to determine the type of fields. The software can understand the types of fields required for each function included in the JSON and insert the corresponding field in different parts of the application. This allows us to be very flexible in handling the different areas of the software, and for other developers to include their modifications and proposals for new modules and templates by modifying the JSON (to a certain extent, of course).

Options:

All this leads to an infinite number of different possibilities. You can create your tool and configure your needs. You can choose from different templates to display your content, show posts on a map, or simply show a list; use prices, dates, or simply include a simple post with the location and start a conversation.

Why Centralized Servers and Not Decentralized Protocols?

As an association, we advocate for decentralized systems and are open to including completely decentralized protocols (like Nostr) in the design, but we believe that (for now) a hybrid system of decentralized servers can be more useful and easier to set up and use for more users, especially those unfamiliar with technology.

Rural Development and Local Exchange:

One of the most interesting features of such a development is thinking about how to adapt to users with little technology skills. Encouraging the creation of tools managed by the neighbors themselves can allow for more personal and direct assistance to combat digital difficulties and improve equal opportunities. Although we have considered accessibility, there is always room for improvement and both expert designers and attentive hands are needed to provide help. For now, we include administrator profiles on the homepage, allowing them to reveal their contact information if they wish, so that people who are not familiar with digital media can contact them.

What are the Next Steps?

In the short term, we are looking for private or public projects to help us test the tool. In the medium term, we are moving towards an independent application and the federation system. In the long term, we are working on even more templates, decentralized protocols, and facilitating payments with Bitcoin and G1. We believe that this tool can expand and facilitate the use of the Internet as a way to improve cooperation and exchange in the real world, not just for sharing information or content.

You can follow tasks and collaborate in development on our Github:

github.com/helpbuttons/helpbuttons

In summary, the concept of this software is to combine the connection of collaborative applications, the communication capability of forums, and the event organization of event websites, all filterable and locatable within the same interface, and even shareable with other websites using the same software. This benefits not only users (who don’t need to start a programming project from scratch every time they need to build decentralized collaborative applications) but also the development community, which can adapt the same software thanks to a very simple structure of the post and the database.

Software

The criteria for choosing the tools with which we do it were as follows:
1. Largest development community currently
2. Available documentation.
3. Scalability (which allows for greater processing for future development (such as real-time positioning, route calculation, etc.) and with fewer
4. Open-source software
5. Projection

Front: NexjJS, RXJS, Pigeon Maps, Open Street Maps

Back: NestJS, PostGIS

And how is the project sustained?

If you don’t want to install the software on your own server, you can rent ours for €10 per month and you’ll have technical support and advice in creating your network. In this first phase, we can include new features adapted to your case, so if you have an idea in mind, take advantage: having a team at your disposal to generate what you want is not normally easy or cheap!

To share, comment, or participate:

helpbuttons.org
github

RESPONDER