From b776118fa957be174d70d9126d141b10a8f1ef6d Mon Sep 17 00:00:00 2001 From: Diego Cerqueira Date: Mon, 29 Jun 2020 17:44:02 -0300 Subject: [PATCH 1/5] adding english FAQ files --- content/faq/avaliate-result.en.md | 10 ++++++++ content/faq/how-to-intepret-the-value.en.md | 10 ++++++++ content/faq/twitter-permissions.en.md | 10 ++++++++ content/faq/what-is-a-bot.en.md | 10 ++++++++ content/faq/what-is-the-bot-probability.en.md | 23 +++++++++++++++++++ .../which-social-networks-are-available.en.md | 10 ++++++++ content/faq/who-made-pegabot.en.md | 19 +++++++++++++++ content/faq/who-sponsor-pegabot.en.md | 10 ++++++++ content/faq/wrong-result.en.md | 10 ++++++++ 9 files changed, 112 insertions(+) create mode 100644 content/faq/avaliate-result.en.md create mode 100644 content/faq/how-to-intepret-the-value.en.md create mode 100644 content/faq/twitter-permissions.en.md create mode 100644 content/faq/what-is-a-bot.en.md create mode 100644 content/faq/what-is-the-bot-probability.en.md create mode 100644 content/faq/which-social-networks-are-available.en.md create mode 100644 content/faq/who-made-pegabot.en.md create mode 100644 content/faq/who-sponsor-pegabot.en.md create mode 100644 content/faq/wrong-result.en.md diff --git a/content/faq/avaliate-result.en.md b/content/faq/avaliate-result.en.md new file mode 100644 index 00000000..0383a18b --- /dev/null +++ b/content/faq/avaliate-result.en.md @@ -0,0 +1,10 @@ +--- +date: 2018-03-13T18:08:36-03:00 +draft: false +id: "como-avaliar-o-resultado" +title: "How can I evaluate the given results?" +layout: none +type: faq +weight: 7 +--- +When having an indication that an account may or may not be a Bot, it is important that you make a subjective analysis of the profile you are trying to analyze. That is to say, check for the purpose that the given profile is trying to achieve. If you identify that the profile only serves to spread the message of another person, or that most of the time that profile exists to attack someone or a specific group, more the chances of this profile confirms to be a bot. In this case, it is worth questioning the possible beneficiaries of that bot's performance if the profile is really a bot and why the beneficiary is using this resource. If you are a politician, for example, ask the politician directly if he knows there is a bot working for him and if he believes that this behavior is correct. \ No newline at end of file diff --git a/content/faq/how-to-intepret-the-value.en.md b/content/faq/how-to-intepret-the-value.en.md new file mode 100644 index 00000000..af5a947e --- /dev/null +++ b/content/faq/how-to-intepret-the-value.en.md @@ -0,0 +1,10 @@ +--- +date: 2018-03-13T18:05:53-03:00 +draft: false +id: "como-interpretar-as-notas" +title: "How should I interpret the notes?" +layout: none +type: faq +weight: 5 +--- +The higher the score, the more likely the account is to be a bot. Each profile surveyed occupies a zone of the measurer: purple, yellow or green. If the profile searched is in the purple zone, the chance of being a bot is high. Many results are classified in the yellow zone, which means that there are enough elements to suspect the use of bots, but at a lower level. It may also be a profile that is used infrequently, or a very repetitive human use. If it's green, it's probably human. \ No newline at end of file diff --git a/content/faq/twitter-permissions.en.md b/content/faq/twitter-permissions.en.md new file mode 100644 index 00000000..e569aa43 --- /dev/null +++ b/content/faq/twitter-permissions.en.md @@ -0,0 +1,10 @@ +--- +date: 2018-03-13T18:01:06-03:00 +draft: true +id: "twitter-permissões" +title: "Do I need to be registered on Twitter to grant permissions to Bot Spotter?" +layout: none +type: faq +weight: 3 +--- +No! Our algorithms access the public Twitter API, which is in no way linked to your account. We do not access or store private information, nor do we tweet on your behalf. Your private API keys are never transmitted to our servers. This means that we do not have the ability to place orders on your behalf at all. \ No newline at end of file diff --git a/content/faq/what-is-a-bot.en.md b/content/faq/what-is-a-bot.en.md new file mode 100644 index 00000000..4a056389 --- /dev/null +++ b/content/faq/what-is-a-bot.en.md @@ -0,0 +1,10 @@ +--- +date: 2018-03-13T17:51:20-03:00 +draft: false +id: "o-que-e-um-twitter-bot" +title: "What is a Bot?" +layout: none +type: faq +weight: 2 +--- +A Twitter Bot is an account controlled by an algorithm or script, normally used to perform repetitive tasks, for example, retweeting content containing particular keywords, replying to new followers and sending direct messages to new followers. More complex Twitter Bots can participate in online conversations and, in some cases, behave very similar to human behavior. Bot accounts make up between 9 and 15% of all active Twitter accounts, but further studies indicate that this percentage may be even higher due to the difficulty in identifying complex bots. Twitter bots are generally not created with malicious intent; they are often used to improve online interaction or service delivery by companies, governments and other organizations, so it is important to separate good bots from bad bots. \ No newline at end of file diff --git a/content/faq/what-is-the-bot-probability.en.md b/content/faq/what-is-the-bot-probability.en.md new file mode 100644 index 00000000..a223aa28 --- /dev/null +++ b/content/faq/what-is-the-bot-probability.en.md @@ -0,0 +1,23 @@ +--- +date: 2018-03-13T18:04:04-03:00 +draft: false +id: "o-que-a-nota-significa" +title: "What do these results mean?" +layout: none +type: faq +weight: 4 +--- +**Bot Spotter** analyzes the posting history of the social network profile that you ask to be analyzed. At this time, **Bot Spotter** is based on behavior patterns to identify whether a human using that profile is more likely, or a robot. The criteria for making this assessment are the time interval between each post (a short interval between each post, 2 seconds for example, may indicate that the post was made by a robot); the frequency and randomness in the time the posts are made (posts always made at the same time, at 10 am, for example, may have been made by a robot); and the personality given to the posted texts (texts repeated or extracted from other publications, pre-formatted, are indicative of having been made by a robot). Based on the overall average of the profile posts, **Bot Spotter** gives a score, which indicates the probability of whether the profile is bot or not. + +| | Features for bot identification | +|---|---| +| Content (posts) | It is based on linguistic cues through natural language processing. Include frequency of verbs, nouns and adverbs in tweets. The system analyzes the length and entropy of the content of the tweet. Misleading messages generally display informal language and short phrases. | +| Feeling (emotional) | The various emotional states are extracted from the sentiment analysis of the tweets. A human usually expresses a variety of emotional states, while a bot does not. | +| User | User characteristics are based on account-related metadata. This data includes the number of friends and followers, the number of tweets produced by users, the description of the profile and the account settings (language, location, account creation date). | +| Friends | It includes statistics related to social contacts, such as the mean, the moments and the entropy of the distribution of the number of followers, followers and posts. Follower-follower relationships, retweets, and mentions are discussed. For each field, the characteristics on the use of the language, local time, popularity are extracted. | +| Network | The structure of the network shows various dimensions of the patterns of information dissemination. The system rebuilds three types of networks: retweets, mentions and hashtags co-occurrence. All networks are weighed according to the frequency of interaction or co-occurrences. | +| Time | The time characteristic captures patterns related to user activity. Includes the average period in content generation (tweets) and consumption (retweets), the time between two posts. | + +Ferrara, E., Varol, O., Davis, C., Menczer, F. & Flammini, A. (2016) The Rise of Social Bots. Communications of the ACM. DOI: 10.1145/2818717. + +Varol, O., Ferrara, E., Davis, C., Menczer, F. & Flammini, A. (2017). Online Human-Bot Interactions: Detection, Estimation, and Characterization. arXiv preprint arXiv:1703.03107. diff --git a/content/faq/which-social-networks-are-available.en.md b/content/faq/which-social-networks-are-available.en.md new file mode 100644 index 00000000..05ca82e5 --- /dev/null +++ b/content/faq/which-social-networks-are-available.en.md @@ -0,0 +1,10 @@ +--- +date: 2018-03-13T17:54:29-03:00 +draft: false +id: "o-pegabot-funciona-com-que-redes-sociais" +title: "Does Bot Spotter work with all social networks?" +layout: none +type: faq +weight: 1 +--- +For now no. In this first release, we only have access to Twitter. Facebook, WhatsApp and other social networks impose more barriers to its API's, so we are still working so that the next versions of Bot Spotter are integrated with other platforms. \ No newline at end of file diff --git a/content/faq/who-made-pegabot.en.md b/content/faq/who-made-pegabot.en.md new file mode 100644 index 00000000..199b7f18 --- /dev/null +++ b/content/faq/who-made-pegabot.en.md @@ -0,0 +1,19 @@ +--- +date: 2018-03-13T18:09:27-03:00 +draft: false +id: "quem-desenvolveu-o-pegabot" +title: "Who developed Bot Spotter?" +layout: none +type: faq +weight: 8 +--- + +PegaBot is developed by the Instituto Tecnologia & Equidade (IT&E) and Institute for Tecnology and Society (ITS Rio). The analysis engine is free software and can be freely used, studied, modified and redistributed. Its code is available on [Github] (https://github.com/AppCivico/spottingbot). + +Why is it important for a bot detection system to be built on free software? + +Free software systems give the user the freedom to modify a code. We understand that having an open code allows the participation of society in its construction and improvement as a way of producing a more democratic knowledge of free technologies. In addition to enabling people to exchange information horizontally, it strengthens actions with digital platforms, their usage policies, and especially how disinformation networks can work using these techniques. + +This initiative is also in line with the White Paper ["Systemic Recommendations to combat misinformation in the Brazilian elections"] (https://tecnologiaequidade.org.br/projects/desinformacao-em-eleicoes/), carried out by Instituto Tecnologia e Equidade ( IT&E). + +In topic 5 of the document, there is the information: CREATE NEW ADJUSTMENT FEEDBACK CYCLES - in Recommendations 2019-2020. in this item, the Institute believes that "Demanding Academies and Research Institutes: development of free technologies for detecting robots, false profiles, haters and disinformation" is a point of leverage to combat the imbalances presented in the electoral system. diff --git a/content/faq/who-sponsor-pegabot.en.md b/content/faq/who-sponsor-pegabot.en.md new file mode 100644 index 00000000..97cde662 --- /dev/null +++ b/content/faq/who-sponsor-pegabot.en.md @@ -0,0 +1,10 @@ +--- +date: 2018-03-13T18:10:01-03:00 +draft: false +id: "quem-financia-o-pegabot" +title: "Who funds Bot Spotter?" +layout: none +type: faq +weight: 9 +--- +Bot Spotter (Pegabot) is an initiative of the Institue for Technology and Society and the Institute of Technology & Equity. Both organizations have been using their own resources for the development of this project, since they understand that making a tool like this available is essential for Latin American democracy. If you also want to support the project, write to doacoes@pegabot.com.br. For its Spanish version, Enjambre Digital and the Openlabs project have taken care of supporting the empowerment. diff --git a/content/faq/wrong-result.en.md b/content/faq/wrong-result.en.md new file mode 100644 index 00000000..bda7bd99 --- /dev/null +++ b/content/faq/wrong-result.en.md @@ -0,0 +1,10 @@ +--- +date: 2018-03-13T18:07:28-03:00 +draft: false +id: "o-resultado-está-errado" +title: "The result is wrong! I'm sure an account is bot / human." +layout: none +type: faq +weight: 6 +--- +Bot Spotter is still in the testing phase, the accuracy of the results will improve over time. You will soon be able to submit this error to review and correct the error. That said, detecting bots is indeed a difficult task (if it were easy, social media companies would have solved the whole problem). Our platform works by recognizing behavioral patterns. Therefore, the results should serve to complement, not replace, your own opinion. \ No newline at end of file From 1c1cd7ffae9e35e11601139328ffaf6946d07a5e Mon Sep 17 00:00:00 2001 From: Diego Cerqueira Date: Mon, 29 Jun 2020 17:45:10 -0300 Subject: [PATCH 2/5] adding internal pages for english translation --- content/_index.en.md | 9 +++++++++ content/about.en.md | 22 ++++++++++++++++++++++ content/faq.en.md | 11 +++++++++++ content/results.en.md | 10 ++++++++++ 4 files changed, 52 insertions(+) create mode 100644 content/_index.en.md create mode 100644 content/about.en.md create mode 100644 content/faq.en.md create mode 100644 content/results.en.md diff --git a/content/_index.en.md b/content/_index.en.md new file mode 100644 index 00000000..aa53f483 --- /dev/null +++ b/content/_index.en.md @@ -0,0 +1,9 @@ +--- +title: "Bot Spotter" +date: 2020-06-29T13:51:23-02:00 +draft: false +--- + +The **Bot Spotter** verifies a social media network profile and scores based on the probability of that profile being a _bot_. The greater scores indicates a higher chance of being a _bot_. + +[Know about..](/faq/) diff --git a/content/about.en.md b/content/about.en.md new file mode 100644 index 00000000..c66a5802 --- /dev/null +++ b/content/about.en.md @@ -0,0 +1,22 @@ +--- +title: "Sobre o Pegabot" +date: 2020-06-29T11:07:39-02:00 +draft: false +menu: + - "main" + - "header" +slug: "sobre" +weight: 1 +rootClass: "about-page" +--- +{{< video src="/assets/video/pegabot--480x480.mp4">}} + +# Dismantling structural botnets + +_Bots_, short for robots, are computer programs created to perform specific tasks. The first robots did not have malicious intentions, and even today there are good _bots_, whose purpose is to demand accountability from politicians, viralize causes for gender equality or help organize the (many) daily tasks of their users. Good right? + +But in the late 1990s, "bots" started to develop a negative reputation. Some _bots_ were used to send SPAMs by e-mail, steal users' personal data, credit card fraud and disinformation attacks to manipulate the public sphere. These _bots_ aim to spread lies to influence narratives, a phenomenon that has been gaining global scale since 2014. These _bots_ are out there and almost nobody knows how they work, who develops them and by whom they are financed. In oder to address these issues, we launched **Bot Spotter**, a tool that brings more transparency to the use of _bots_ in Brazil. + +On this platform, the user can check the activity of a social network account to know the probability of the profile being a bot. The higher the score, the greater the chance of being a bot. For now, the platform is integrated with Twitter, but soon we will support other social media. + +The **Bot Spotter** is a project in partnership amongst the [Institute for Technology and Society (ITS Rio)](https://itsrio.org/) and [Instituto Equidade & Tecnologia](http://tecnologiaequidade.org.br/). The platform was launched in March 2018 and is in the testing phase. diff --git a/content/faq.en.md b/content/faq.en.md new file mode 100644 index 00000000..f802e08f --- /dev/null +++ b/content/faq.en.md @@ -0,0 +1,11 @@ +--- +title: "FAQ" +date: 2018-03-13T18:17:00-03:00 +draft: false +menu: + - "main" + - "header" +slug: "faq" +layout: faq +weight: 2 +--- diff --git a/content/results.en.md b/content/results.en.md new file mode 100644 index 00000000..0e922282 --- /dev/null +++ b/content/results.en.md @@ -0,0 +1,10 @@ +--- +title: "Results" +date: 2018-01-24T14:30:36-02:00 +draft: false +layout: results +menu: +slug: "results" +--- + +The final result is not the average of other results, but the calculation of our algorithm. For more information, check the documentation in the github repository. From 7c20eba10d339189014e50d2baf3df2b7edf30e2 Mon Sep 17 00:00:00 2001 From: Diego Cerqueira Date: Mon, 29 Jun 2020 18:11:58 -0300 Subject: [PATCH 3/5] adding readme.es for spanish version --- README.es.md | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 README.es.md diff --git a/README.es.md b/README.es.md new file mode 100644 index 00000000..b789fbcd --- /dev/null +++ b/README.es.md @@ -0,0 +1,75 @@ +# Atrapabot (Pegabot) + +Analizador de perfiles de redes sociales tipo bot. + +## Modelador de contenido + +### Perfil + +- Nombre de perfil de usuario +- enlace de red social +- foto de perfil +- Pruebas dependientes del idioma. + + contenido + * value + + sentimiento + * value +- Exámenes independientes del idioma. + + amigos + + temporal + + red + + usuario +- probabilidad de bot + + todas las características + + lenguaje independiente +- compartir enlace en red social +- lenguaje de perfil de usuario +- enlace de comentarios (feedback) + +### Estadísticas de bot + +- numero +- descripción + +## Instalación + +Esta parte del proyecto utiliza las siguientes tecnologías, marcos y convenciones: + +- [keep a changelog](https://keepachangelog.com/en/1.0.0/) convención; +- [Semantic Versioning 2.0.0](https://semver.org/spec/v2.0.0.html) +- [EditorConfig](http://editorconfig.org/) - para mantener la coherencia del estilo del código; +- [ESLint](https://eslint.org/) -para mantener los scripts limpios; +- [Sass-Lint](https://github.com/sasstools/sass-lint) - para mantener limpias las hojas de estilo (css); +- [Hugo](https://gohugo.io/) - para administrar el contenido y construir el html del sitio web; +- [Sass](http://sass-lang.com/) - en las hojas de estilo, siguiendo el Patrón 7-1 de [Sass Guidelines](https://sass-guidelin.es/); +- [VueJS](https://vuejs.org/) - en la gestión de resultados. + +Para ejecutarlo localmente, debe instalar: + +- [Hugo](https://gohugo.io/) +- [NodeJS](https://nodejs.org/en/) + +Luego puede ejecutar `npm install` o` yarn`, para instalar las dependencias, y luego `npm run dev`, que se iniciará en el servidor de hugo en [multilingual mode](https://gohugo.io/content-management/multilingual/#configure-multilingual-multihost). + +## Construir (build) + +Para ejecutar `npm run build` implementará cada versión del sitio en la carpeta`. / Public` en un directorio codificado por idioma. + +Push a la rama `develop` desencadenar la implementación en el entorno de desarrollo y pruebas. Para implementar en producción, el commit de fusión en master debe tener una etiqueta de versión. El proceso se puede hacer usando[`npm version`](https://docs.npmjs.com/cli/version) CLI command. + +## Instrucciones de traducción + +Archivos que deben editarse o agregarse: + +- archivo de cadenas dentro de la carpeta `. / i18n` nombrado como código de idioma; +- archivos de contenido de rebajas en la carpeta `. / content`, con el sufijo del código de idioma; +- el mapa `languages` en` config.yaml` se nombra con el código de idioma; + + +Los logotipos se pueden agregar al archivo `_header.scss`, utilizando el prefijo de idioma dentro de la regla` [role = 'banner'] a`: + +```sass + [lang='es-mx'] & { + background-image: image('logotype--mx--150w.png'); + } +``` From df0e98d638a8bd6ab984aefc9aff5611734af431 Mon Sep 17 00:00:00 2001 From: Diego Cerqueira Date: Mon, 29 Jun 2020 18:13:59 -0300 Subject: [PATCH 4/5] linking spanish translation on read me file --- README.es.md | 2 ++ README.md | 2 ++ 2 files changed, 4 insertions(+) diff --git a/README.es.md b/README.es.md index b789fbcd..acf74750 100644 --- a/README.es.md +++ b/README.es.md @@ -2,6 +2,8 @@ Analizador de perfiles de redes sociales tipo bot. +Para obtener instrucciones de instalación en inglés -> [here](README.md) + ## Modelador de contenido ### Perfil diff --git a/README.md b/README.md index d1b92c7c..0a02958f 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,8 @@ Social networks profiles bot-like analyzer. +Spanish version of this file can be found [here](README.md) + ## Content modelling ### Profile From a4fb5fa9f4137b684d0b1d1387e235b7c5b5f2aa Mon Sep 17 00:00:00 2001 From: Diego Cerqueira Date: Mon, 29 Jun 2020 18:16:22 -0300 Subject: [PATCH 5/5] adding missing link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0a02958f..8503c02d 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Social networks profiles bot-like analyzer. -Spanish version of this file can be found [here](README.md) +Spanish version of this file can be found [here](README.es.md) ## Content modelling