Xiaomi geht an die Börse

heise online Newsticker - 4. Mai 2018 - 15:30
Aus dem veröffentlichten Börsenprojekt geht nicht hervor, auf wie viel Milliarden Dollar Xiaomi taxiert wird, in einem Medienbericht ist von 100 Milliarden die Rede.

Spotify: 75 Millionen Abonnenten, 169 Millionen US-Dollar Verlust

heise online Newsticker - 4. Mai 2018 - 15:30
Die ersten Quartalszahlen von Spotify nach dem Börsengang enttäuschen die Anleger. Gewinne sind nicht in Sicht, trotz des steten Zuflusses neuer Nutzer.

Agaric Collective: Creating a New Social Simple Button

Planet Drupal - 4. Mai 2018 - 15:11

Sharing an article via a social network is a super common task requested on a project.

Fortunately for Drupal 8 there is a module for that called Social Simple. This module allows you to display the most popular networks in a node so the user can just click any of the buttons and share the article.

By default this module provides the following buttons:

  • Twitter
  • Facebook
  • Linkedin
  • Google plus

This will cover 90% of use cases, but what if we need to add a button for a new network?

Creating a Custom Social Simple Button

The Social Simple module is already supports custom buttons, we just need to let the module know that we want to add one.

Basically what we need to do is:

  • Create a class that implements SocialNetworkInterface.
  • Register this class in our services file.
  • Add the tag social_simple_network to our service.

For our example we are going to create a basic Mail button. We start by creating a custom module. Inside our module let's create a Mail php file inside of the src/SocialNetwork folder:

mkdir -p src/SocialNetwork cd src/SocialNetwork touch Mail.php

The next step is to create a class and implement the SocialNetworkInterface which interface has the following methods:

  • getShareLink: This is the most important method. It must return a rendered array which later Drupal will use to create the button.
  • getLabel: Here we will need to provide the name of our button. In our case Mail.
  • getId: The ID of the button. We can choose any ID here, we just need to make sure that it is unique. Let's use mail for our example.
  • getLinkAttributes: These attributes are going to be passed to the link. We can add custom parameters to the link in this part.

Our class looks like this:

namespace Drupal\social_simple\SocialNetwork; use Drupal\Core\Entity\EntityInterface; use Drupal\Core\StringTranslation\StringTranslationTrait; use Drupal\Core\Url; /** * The Mail button. */ class Mail implements SocialNetworkInterface { use StringTranslationTrait; /** * The social network base share link. */ const MAIL = 'mailto:'; /** * {@inheritdoc} */ public function getId() { return 'mail'; } /** * {@inheritdoc} */ public function getLabel() { return $this->t('Mail'); } /** * {@inheritdoc} */ public function getShareLink($share_url, $title = '', EntityInterface $entity = NULL, array $additional_options = []) { $options = [ 'query' => [ 'body' => $share_url, 'subject' => $title, ], 'absolute' => TRUE, 'external' => TRUE, ]; if ($additional_options) { foreach ($additional_options as $id => $value) { $options['query'][$id] = $value; } } $url = Url::fromUri(self::MAIL, $options); $link = [ 'url' => $url, 'title' => ['#markup' => '' . $this->getLabel() . ''], 'attributes' => $this->getLinkAttributes($this->getLabel()), ]; return $link; } /** * {@inheritdoc} */ public function getLinkAttributes($network_name) { $attributes = [ 'title' => $network_name, ]; return $attributes; } }

The next step is to let the social network know about our new button and we do this by adding this class as a service in our module.services.yml. If you are not familiar with this file, you can read the structure of a service file documentation..

Basically we need to add something like this:

services: social_simple.mail: class: Drupal\custom_module\SocialNetwork\Mail tags: - { name: social_simple_network, priority: 0 }

Next, we just need to rebuild the cache. Now when we visit the social simple configuration we will see our new button there, ready to be used.

The only thing that we need to pay extra attention to is that the Social Simple module will just search the services with the tag social_simple_network otherwise our class will not be found

If you want to see how the whole thing is working, you can check this patch that I made as a part of a project: https://www.drupal.org/project/social_simple/issues/2899517. As a bonus, I made an initial integration with the Forward module.

re:publica: ARD will Aktivismus nicht zum Grundprinzip von Journalismus machen

heise online Newsticker - 4. Mai 2018 - 14:30
Ist Neutralität in den Nachrichten angesichts erhitzter Debatten in Online-Foren zum Relikt geworden? Jein, meinen ZDF-Moderatorin Dunja Hayali und ARD-aktuell-Chef Kai Gniffke. Bei persönlichen Kommentaren im Netz bewege man sich auf einem schmalen Grat.

Battletech angespielt: Kampfkolosse unter sich

heise online Newsticker - 4. Mai 2018 - 14:30
In Rundentaktikspiel Battletech duellieren sich riesige Kampfmaschinen um die Vorherrschaft in der Galaxis. Ein Fest für Tüftler und Taktiker, die sich mit technischen Schönheitsfehlern abfinden können.

iX-Workshop: Continuous Integration mit Jenkins

heise online Newsticker - 4. Mai 2018 - 14:30
Der Workshop am 21. und 22. Juni erklärt den Einsatz des CI-Werkzeugs Jenkins zu Umsetzung einer agilen Software-Entwicklung und -Verteilung von Anfang an.

Amazee Labs: Slack integration as a debugging tool

Planet Drupal - 4. Mai 2018 - 14:19
Slack integration as a debugging tool

We use Slack to communicate internally as well as with our clients, but we also make use of it in different ways that help us deliver a better service to both groups of stakeholders.

Fran Garcia-Linares Fri, 05/04/2018 - 14:19

Slack vs Email

Whilst we still use emails when the situation requires, we always try to move the communication related to our projects to slack. Most of our clients are in slack in their own dedicated channel, which happens to be the same one that all designers, developers, project managers, etc. use for communications related to the project. 

This way, everybody involved in the project is aware of what’s going on. Information gets passed easily across the team and we avoid multiple “broken telephone” situations. Also, if the person who is usually responsible for something happens to be sick or on holiday, the rest of the team can assist instead of getting an unhelpful “Out of Office” reply.

Different Integrations

Slack and its bots are part of our Global Maintenance team too (I guess they can be considered remote workers). They help us with our day to day tasks in a myriad of ways. 

  • Activity Channel: we use slack integrations that will pull any message or activity related to the tickets that the team is taking care of in the current sprint. This can get a bit noisy sometimes but it’s a wonderful way to stay informed of what’s going on on our team board. No more email and Jira issue watching.

  • Think about Blaize: it’s not just a reminder to think about Blaize (which we also do) who lives in New Zealand, it’s also a reminder for the UTC timezone team to starting wrapping up the day, commit everything not yet committed, update tickets not yet updated and leave things ready for Blaize, who will tell us “Good morning” at our 8~9pm (his 7~8am).

  • Information about important events: we have multiple integrations for regular but important events on certain projects, for peace of mind, and to make people aware that something has happened. The following examples are to inform everyone that an automatic Mailchimp list was created (this is crucial for the client) and to inform developers that a deployment has happened (and whether it went well or not - red vs green).

  • Instant bug reporting: this is probably the most important one and the one that is making the biggest difference to our Global Maintenance team. We use it whenever there are bug reports that we can’t replicate because the data changed, or when we don’t have enough information to take an action. If we can’t fully resolve a ticket request, we’re very likely to create an integration that will “spot” a problem and give us useful realtime information so that we can debug knowing further information about the issue. Over the past few months we’ve done this in multiple projects and it not only gives us instant feedback, it also informs everyone on the channel that something is happening, so we can be alert and take an action if needed. Below are two examples of those situations, again on critical parts of our clients’ systems, that allowed us to take quick action. 

These are just a few samples of the multiple integrations we have. If you want to know a bit more about the technical part, just keep reading.

How to do the integration?

  • Create the slack webhook: here.

  • Use the Drupal slack module (recommended) or code your own function, which could be as simple as:

  • Call the desired function:

    • Using slack module:

      Using custom module:

That’s it really, as you can see it’s not too complex but it adds huge value to our day to day work.

Forscher suchen nach prähistorischen Hightech-Zivilisationen

heise online Newsticker - 4. Mai 2018 - 14:00
Gab es auf der Erde vor Jahrmillionen hochentwickelte Zivilisationen, von denen wir noch nichts wissen? Wissenschaftler grenzen die möglichen Spuren ein.

Spectre-NG: Intel-Prozessoren von neuen hochriskanten Sicherheitslücken betroffen, erste Reaktionen von AMD und Intel

heise online Newsticker - 4. Mai 2018 - 13:00
Acht neue Sicherheitslücken – vier davon hochriskant – haben Forscher in Intel-Prozessoren gefunden. Das belegen Informationen, die c't exklusiv vorliegen.

#heiseshow, live ab 12 Uhr: Blockaden und Krypto-Streit – Geht's jetzt den Messengern an den Kragen?

heise online Newsticker - 4. Mai 2018 - 13:00
Messenger wie WhatsApp und Signal geraten immer mehr in den Fokus und vor allem die Verschlüsselung wird immer schärfer kritisiert. Woher die neuen Angriffe kommen und wie gefährlich sie sind, besprechen wir in einer neuen #heiseshow.

Blockchain, Container, DSGVO: Wiener Linuxwochen auf der Höhe der Zeit

heise online Newsticker - 4. Mai 2018 - 12:30
Drei Tage lang treffen sich Linux-Fans und Open-Source-Entwickler in Wien zu mehr als 130 Vorträgen und Workshops. Ein Filmfestival ist auch wieder Teil der Konferenz. Der Eintritt ist, wie immer, kostenlos.

Facebook-Datenskandal: Cambridge Analytica macht dicht

heise online Newsticker - 4. Mai 2018 - 11:30
Kundenschwund und gestiegene Anwaltskosten im Zuge des Facebook-Datenskandals bringt auch die Dachgesellschaft SCL Group dazu, das Geschäft zu beenden.

Gitarren-Pionier Gibson ist insolvent

heise online Newsticker - 4. Mai 2018 - 11:30
Der US-Instrumentenbauer hat in den vergangenen Jahren im Bereich Unterhaltungselektronik zugekauft und sich damit übernommen. Jetzt soll das belastende Geschäft wieder abgewickelt werden, die Gitarren bleiben.

BMW, General Motors und Renault gründen Blockchain-Initiative

heise online Newsticker - 4. Mai 2018 - 11:30
Früher musste der Tiger in den Tank, heute muss die Blockchain ins Auto: Große Hersteller wie BMW und General Motors haben jetzt ein Konsortium für Mobilitätsanwendungen mit Blockchain gegründet.

EU fördert den "Europa-Prozessor" für Supercomputer

heise online Newsticker - 4. Mai 2018 - 11:30
Der Forschungsverbund European Processor Initiative will bis 2021 einen Prozessor entwickeln, der in kommenden europäischen Supercomputern laufen soll.

Apples App Store: Entwickler können Rauswurf anfechten

heise online Newsticker - 4. Mai 2018 - 11:00
Apple müsse manchmal Apps auf Anweisung von Dritten entfernen – oder werfe diese raus, weil sie gegen Regeln verstoßen, teilte der Konzern mit und verweist darauf, dass Entwickler auch dagegen Berufung einlegen können.

Windows 10 Version 1803: Microsoft ändert Abschalten der Web-Suche

heise online Newsticker - 4. Mai 2018 - 11:00
Der bisher bekannte Registry-Schlüssel zum Abschalten der Web-Suchfunktion von Windows 10 hilft bei Version 1803 nicht mehr. Nun kann an anderer Stelle wirksam eingegriffen werden.

LG G7 ThinQ: Flaggschiff-Smartphone mit hellem Display und starken Bässen

heise online Newsticker - 4. Mai 2018 - 11:00
LGs neues Flaggschiff G7 ThinQ will mit einem besonders hellen Display und vermeintlich starken Bässen bei Smartphone-Käufern punkten. Skeptisch macht vor allem der Akku.

Bundesnetzagentur legt Desktop-App für Bandbreiten-Messung vor

heise online Newsticker - 4. Mai 2018 - 11:00
Nach einer Konsultation mit Branchenvertretern und einer Datenschutz-Debatte ist die Desktop-Anwendung zur Bandbreitenmessung jetzt fertig. Sie steht für Windows, MacOS und Linux zum Download bereit.

Spammer missbrauchen ungefilterte Redirects in Google Maps

heise online Newsticker - 4. Mai 2018 - 11:00
Kriminelle nutzen Googles Online-Kartendienst Maps, um Opfer mittels offener Redirects auf gefährliche Irrwege zu führen. Das Unternehmen weiß um das Problem, scheint aber bislang keinen Handlungsbedarf zu sehen.