Ein kleiner Rückblick auf die QCon 2018

Ende Juni fand in New York die QCon 2018-Konferenz statt, an der ich glücklicherweise teilnehmen durfte. Für diese Gelegenheit möchte ich meinem Arbeitgeber danken. Konfa dauerte 3 Tage, es gab ungefähr 140 Sprecher und mehr als 900 Teilnehmer.


etwas wird wahrscheinlich falsch sein


Haftungsausschluss: Natürlich drückt dieser Artikel meine persönliche Meinung aus.


Organisation


Da die Konferenz groß ist und schon lange stattfindet, ist alles auf hohem Niveau organisiert. Publikum, Ton, Rundfunk, Aufnahme, Präsentationen - alles ist klar und deutlich geklärt. Obwohl nicht, am ersten Tag auf dem ersten Keynote Clicker Junk. :-) Das war vielleicht das einzige Problem in 3 Tagen.


Menschenmenge_auf_Start


Themen


Die Organisatoren behandelten 3 Tage lang 15 verschiedene Themen. Das heißt, Jeden Tag gab es 5 Haupt-Streams (+ Sponsoring-Präsentationen und Ask Me Anything-Publikum), jeden Tag gab es neue Streams. Meiner Meinung nach ist eine so breite Abdeckung quantitativ gut, aber die Qualität leidet darunter. Es stellte sich heraus, dass von 6 Berichten pro Tag, an denen ich teilnahm, 1-2 wirklich nützlich und interessant für mich waren. Einige Berichte stimmten einfach nicht mit ihrem Namen überein, was für die aufgewendete Zeit schade war.


me_at_stage


Ich hatte etwas andere Erwartungen an die Menge an Informationen, die mir neu waren. Etwas Neues, Interessantes und Unbekanntes war weniger als wir möchten.


Keynotes


Vor Beginn eines jeden Tages versammelten sich alle in der größten Halle, und einige Leute von der berühmten Firma erzählten etwas Allgemeines, aber Interessantes. In diesen Geschichten ging es um die Entwicklung von Software in der einen oder anderen Form. Ich mochte alle 3 Keynotes.


Entwickler als Malware-Verteilungsfahrzeug (Guy Podjarny, SnykSec)


Guy arbeitet für ein Unternehmen, das Open Source-Produkte auf Schwachstellen untersucht. Er sprach darüber, wie Schwachstellen in verschiedene Entwicklungstools eingebettet sind und wie sie sich dann unter den Endbenutzern ausbreiten. Ich habe selten darüber nachgedacht und darüber hinaus nicht gedacht, dass dieses Phänomen großräumig ist. Guy zeigte anhand einiger interessanter Beispiele, wie das sein könnte. Es stellt sich heraus, dass die Malware in die IDE eingebettet werden kann (XCodeGhost diente als Beispiel) und während der Montage in die ausführbare Datei eingefügt werden kann. Sie können auch Malware in die Plug-In-Bibliothek einfügen.


Die Hauptgedanken der Präsentation möchte ich hervorheben:


  • Mit großer Kraft geht große Verantwortung einher.
  • Sie können Code nicht vertrauen, den Sie selbst nicht von Grund auf neu geschrieben haben.
  • Seien Sie vorsichtig und aufmerksam mit den Werkzeugen, mit denen Sie arbeiten.

Eine Stellungnahme zur API (Joshua Bloch, Carnegie Mellon)


Joshua Bloch erzählte, wann und wer die API (Application Program Interface) zum ersten Mal entwickelt hat und wie sich dieser Begriff bis heute entwickelt hat.


Es stellt sich heraus, dass die API vor dem Bau des ersten Computers erfunden wurde! Wenig sinnvoll, aber sehr interessant!


Benutzerfreundlichkeit, keine Fehler und eine gute Beschreibung sollten Sie bei der Entwicklung einer neuen API berücksichtigen.


Die Geschichte der Feuerleiter (Tanya Reilly, Squarespace)


Tanya erzählte die Geschichte der Entstehung und Entwicklung der Feuerleiter in New York seit 1838. Die Ursache für das Auftreten und die Entwicklung dieses Phänomens waren natürlich Brände. Aus historischer Sicht zeigte sie, warum sie passiert sind und welche Schritte unternommen wurden, um in Zukunft mit ihnen umzugehen. "Brände" in der Software-Welt treten ebenfalls auf, aber basierend auf den vorhandenen Erfahrungen können wir ihre Konsequenzen minimieren.


Minimieren Sie grundsätzlich die Möglichkeit eines Feuers. Stellen Sie Werkzeuge zur Früherkennung von Bränden bereit. Isolieren Sie potenziell gefährliche Brandbereiche, damit sich das Feuer nicht ausbreitet. Haben Sie eine Feuerwehr und aktuelle Evakuierungspläne.


Eigentlich berichtet


Vielleicht schreibe ich nur über die Berichte, die mir persönlich gefallen haben und aus denen ich etwas Neues lernen und profitieren konnte.


Serverlose Muster und Anti-Muster (Joe Emison, Branch)


joe_emison_branch


Als ich das letzte Mal in das Thema Serverless eintauchte, wurde gemunkelt, dass Backendless und jetzt in der Bose Parse verstorben sind. Aber einige Jahre vergingen, und als ich Joe zuhörte, war ich überrascht, wie viele Dienste jetzt in diesem Bereich erschienen sind und wie bekannt es ist, sie zu kombinieren, um eine Vielzahl von Zielen zu erreichen. Joe erzählte, wie auf serverlos (serverlos bedeutet eine Reihe von externen Diensten, um das Ziel eines Produkts zu erreichen) Software zur Erfassung von Statistiken und zur Überwachung der Kraftstoffqualität sowie eine Anwendung zur Auswahl von Immobilien zur Miete aufgeschrieben wurden. Diese Anwendungen können Authentifizierung durchführen, Daten validieren, Bilder moderieren, mit einer Karte arbeiten, in den Clouds lesen und vieles mehr. Und das alles durch externe Dienste! Ihre Hauptaufgabe besteht darin, die Verfügbarkeit derselben externen Dienste zu überwachen.


serverlos


Aus diesem Bericht erfuhr ich von vielen neuen Diensten, die ich "berühren" und mehr herausfinden wollte. Und hier übrigens und sie:


  1. Segment - eine einzige Plattform zum Sammeln, Speichern, Analysieren und Weiterleiten von Benutzerdaten.
  2. DocRaptor - Generiert PDF / Excel aus HTML
  3. Cloudinary - eine Plattform zur Verwaltung von Medieninhalten (Bilder, Videos).
  4. Auth0 - Die Plattform bietet erweiterte Funktionen zur Benutzeridentifizierung.
  5. Webtask ist eine FaaS-Plattform, die Ihren Code in der Cloud ausführt.
  6. Netlify - Cloud-Hosting mit Bereitstellung in wenigen Minuten. Kann auf einem Github eine Verbindung zu Ihrem Repository herstellen und Sites von dort aus bereitstellen, wenn es aktualisiert wird. Nun, alle möglichen anderen Modechips
  7. Algolia - eine Suchmaschine für Ihre Website, so wie ich es verstehe
  8. AWS Cognito - Benutzerverwaltung, Identifizierung, Differenzierung von Rechten
  9. AWS Lambda - FaaS-Plattform von Amazon
  10. AWS AppSync - Echtzeit-Datensynchronisation zwischen Geräten

Plattformen bei Twilio: Entwickler-Effektivität freischalten (Justin Kitagawa von, twilio)


justin_kitagawa_twilio


Folgendes habe ich aus der Präsentation für mich gelernt:


  1. Mehrsprachigkeit, Microservices, DevOps ist gut.
  2. Die Codegenerierung für verschiedene Sprachen aus einer einheitlichen Beschreibung der API ist gut.
  3. Automatisieren Sie alles, was Sie erreichen können.
  4. Sagen Sie, was zu tun ist, sagen Sie nicht wie. Und dann wird alles gut mit dir.
  5. Minimieren Sie den Widerstand gegen Innovationen. Der Redner führt das Beispiel von „Gatekeepern“ an, die keine „potenziell gefährlichen Innovationen zulassen, die keinen Nutzen bringen“. Solche Menschen bauen Arbeit nach dem Prinzip "Arbeit - nicht anfassen". Und es verlangsamt die Produktentwicklung
  6. Stellen Sie die Transparenz der Infrastruktur sicher, um Schwachstellen zu erkennen und Probleme so früh wie möglich zu erkennen.

Näher am Draht: Echtzeit-Nachrichtenwarnung (Katerina Domenikou aus Bloomberg)


katerina_domenikou_bloomberg


Für mich selbst habe ich einige interessante Dinge gemacht, die in der Präsentation besprochen wurden:


  1. Streaming-Suche. Suchen Sie im eingehenden Informationsstrom.
  2. Luwak - ein Werkzeug, das hilft, Absatz 1 zu erfüllen.

Und er war erneut davon überzeugt, dass man die Aufgabe manchmal aus einem scheinbar unerwarteten Blickwinkel betrachten muss. Katerina erzählte, wie sie viele Suchanfragen oder genauer gesagt Filter zu einer Vielzahl von Daten verarbeiten. Das Datenarray kann auch ziemlich oft aufgefüllt werden. Bei ihrer Entscheidung indizieren die Jungs also nicht die Daten, sondern die Abfragen. Wenn also neue Daten angezeigt werden, wird geprüft, ob die neuen Daten vorhandene Abfragen erfüllen, und wenn ja, werden die Daten dem Index zugeordnet. Die Suche wird erheblich beschleunigt. Im Allgemeinen war es für mich neu bei O_o.


Komplexe Ereignisflüsse in verteilten Systemen (Bernd Rücker, Camunda)


bernd_ruker_camunda


Moderne Unternehmenslösungen zur Automatisierung von Geschäftsprozessen (Workflow-Engine, Zustandsmaschine) sind schwer und langweilig. Daher sollten Sie sie nicht verwenden, aber es gibt eine würdige leichte Alternative. Und irgendwie stellte sich heraus, dass die Alternative vom Sprecherteam entwickelt wird und Camunda heißt. Aber wenn die Lösung gut ist, warum nicht darüber sprechen?
In dieser Präsentation habe ich die folgenden Dinge herausgefischt, die ich „berühren“ und tiefer studieren wollte:


  1. UBER Cadence ist ein verteiltes, skalierbares und zuverlässiges Tool zur Orchestrierung asynchroner, zeitlich gestreckter Geschäftsprozesse.
  2. Netflix Conductor ist ein auf Mikroservices basierendes Tool zur Geschäftsautomatisierung.
  3. Camunda ist eine Plattform zur Automatisierung von Geschäftsprozessen.
  4. Zeebee - ein auf Mikroservices basierendes Tool zur Geschäftsautomatisierung mit einem Grafikdesigner!
  5. Activiti ist ein Cloud-basiertes, auf Mikroservices basierendes Tool zur Geschäftsautomatisierung.
    Nach meinem Verständnis können Sie mit all diesen Tools ein Gleichgewicht herstellen und die Verantwortung von Microservices und der eigentlichen Workflow-Engine verteilen. Dies erfolgt durch Ausführen von Routineoperationen (grundlegende Fehlerbehandlung, Zyklen, geplante Ausführung) auf der Seite der Workflow-Engine, und die Domänenlogik verbleibt vollständig in den Mikrodiensten, aus denen der Geschäftsprozess besteht.

Lyfts Gesandter: Ein Service-Netz umarmen (Matt Klein, Lyft)


matt_klein_envoy


Matt sprach über Envoy , das Produkt, das er führt. Eine Art Service-Mesh, mit dem Microservices interagieren können, ohne an die Netzwerktopologie zu denken. Unter anderem sind Goodies vorhanden:


  • Load Balancer
  • Überwachung des Status von Mikrodiensten,
  • Sammeln verschiedener Arten von Statistiken,
  • Service Discovery Service
  • Plug-In-Erweiterungen.

Gesandter


Matt wurde noch einen Moment in Erinnerung behalten. Nach all den Präsentationen saßen die Redner zusammen auf der Bühne und beantworteten Fragen zu einem gemeinsamen Thema („Architekturen, über die Sie sich immer gewundert haben“). Als die Frage nach der Verfügbarkeit von Integrationstests und deren Herangehensweise gestellt wurde, war auf den Gesichtern aller Redner ein halbes Lächeln zu sehen. Matt antwortete zuerst und alle anderen unterstützten ihn schweigend. Seine Antwort lautete in diesem Sinne: „Natürlich haben wir Integrationstests, aber ... nichts liefert so gute Ergebnisse wie Tests in der Produktion.“ Matt bietet automatisierte Tests an, die auf Unit-Tests und Lasttests beschränkt sind. Verlassen Sie sich in geringerem Maße auf die Ergebnisse von Integrationstests.


Skalieren von Push-Nachrichten für Millionen von Geräten (Susheel Aroskar, Netflix)


Leider konnte ich den Bericht selbst nicht besuchen, aber es gab viele positive Bewertungen zur Präsentation und zum Redner. Ich denke, es ist einen Blick wert.


Schlagworte QCon New York 2018


Schlagworte
Es gab auch einen ganzen Track über Blockchain. Aber ich konnte nicht dorthin gelangen.


Post scriptum


Im Frühjahr nahm ich am CodeFest 2018 in Nowosibirsk teil. Und um ehrlich zu sein, es hat mir dort besser gefallen. Aber wie sie sagen, jedem sein eigenes.


Alle Präsentationen sind bereits hier verfügbar.


Das Video wird in 3-4 Monaten öffentlich verfügbar sein. Für Teilnehmer ist der Zugriff auf das Video bereits offen. Und dieses Video kann per E-Mail an 30 verschiedene Personen gesendet werden.


Post post scriptum


Ich habe in dem Artikel nicht über Essen, Unterkunft und Transport geschrieben, weil es scheint nicht auf das Thema Habr zuzutreffen, aber wenn jemand interessiert ist, kann ich in PM oder in den Kommentaren antworten.

Source: https://habr.com/ru/post/de416335/


All Articles