Autor: Juri Gagarin

Satte Philosophen oder wettbewerbsorientierte Programmierung in .NET

Lassen Sie uns betrachten, wie konkurrierende und parallele Programmierung in .Net funktioniert, am Beispiel des Problems der speisenden Philosophen. Der Plan sieht vor, von der Synchronisation von Threads/Prozessen bis hin zum Akteursmodell (in den folgenden Teilen) zu gehen. Der Artikel kann nützlich sein, um sich erstmals damit vertraut zu machen oder um sein Wissen aufzufrischen. Warum sollte man das überhaupt können? Transistoren erreichen ihre minimale Größe, das Moore'sche Gesetz stößt an Geschwindigkeitsgrenzen […]

Über die Voreingenommenheit von Künstlicher Intelligenz

tl;dr: Maschinelles Lernen sucht Muster in Daten. Künstliche Intelligenz kann jedoch „voreingenommen“ sein – das heißt, sie findet falsche Muster. Zum Beispiel kann ein System zur Hautkrebsfrüherkennung anhand von Fotos besonders auf Aufnahmen achten, die in einer Arztpraxis gemacht wurden. Maschinelles Lernen versteht nicht: Seine Algorithmen identifizieren lediglich Muster in Zahlen, und wenn die Daten nicht repräsentativ sind, wird dies so sein […]

Feiertag oder Arbeitstag?

Der erste Mai rückt näher, liebe Habr-Community. Neulich habe ich für mich selbst klargestellt, wie wichtig es ist, sich weiterhin einfache Fragen zu stellen, selbst wenn es scheint, als wüssten wir bereits die Antwort. Also, was feiern wir? Für ein richtiges Verständnis müssen wir zumindest aus der Ferne einen Blick auf die Geschichte der Frage werfen. Selbst für ein oberflächliches, aber korrektes Verständnis ist es notwendig, die ursprüngliche Quelle zu finden. Ich möchte nicht […]

100GbE: Luxus oder Notwendigkeit?

IEEE P802.3ba, der Standard für die Datenübertragung über 100-Gigabit-Ethernet-Kanäle (100GbE), wurde von 2007 bis 2010 entwickelt [3], fand jedoch erst 2018 [5] breite Anwendung. Warum gerade 2018 und nicht früher? Und warum so schnell in großem Maßstab? Dafür gibt es mindestens fünf Gründe... IEEE P802.3ba wurde in erster Linie für […]

Netramesh – eine leichtgewichtige Service-Mesh-Lösung

Beim Übergang von einer monolithischen Anwendung zu einer Mikroservice-Architektur stoßen wir auf neue Probleme. In einer monolithischen Anwendung reicht es in der Regel aus, nur zu bestimmen, in welchem Teil des Systems ein Fehler aufgetreten ist. Wahrscheinlich liegt das Problem im Code des Monolithen selbst oder in der Datenbank. Aber wenn wir beginnen, das Problem in einer Mikroservice-Architektur zu suchen, ist alles nicht mehr so offensichtlich. Es gilt, das gesamte […]

Tutanota 3.50.1 veröffentlicht

Eine neue Version des E-Mail-Clients Tutanota wurde veröffentlicht. Die Änderungen umfassen eine überarbeitete Suche und die Integration von Let’s Encrypt für eigene Domains sowie eine 100 % russische Übersetzung. Tutanota verwendet End-to-End-Verschlüsselung, daher kann die Suche nur lokal durchgeführt werden. Dazu erstellt der Client einen Volltextindex. Der Index wird lokal in verschlüsselter Form gespeichert. Die neue überarbeitete Suche sollte erheblich […]

Debian 9.9

Es steht ein weiteres Update der aktuellen stabilen Version des Betriebssystems Debian 9 „Stretch“ mit der Nummer 9.9 zur Verfügung. Das Update enthält Änderungen an mehr als 100 verschiedenen Programmen, darunter das Linux-Kernel-Update auf Version 4.9.168, aktualisierte Pakete wie postfix, postgresql und mariadb. Fehler in rsync, ruby, systemd, unzip, gpac, jquery und vielen anderen Paketen wurden behoben. Die Non-Free-Firmware für Bluetooth wurde ebenfalls aktualisiert […]

Oops, I did it again: Debugging gängiger Fehler in JavaScript

Manchmal fällt das Programmieren in JavaScript schwer, und manchmal ist es schlicht beängstigend – viele Entwickler können das nachvollziehen. Im Arbeitsprozess treten unvermeidlich Fehler auf, von denen einige recht häufig vorkommen. In diesem Artikel, der sich an Anfänger richtet, werden diese Fehler und ihre Lösungen behandelt. Zur Anschaulichkeit stammen die Namen von Funktionen, Eigenschaften und Objekten aus einem populären Lied. All dies hilft […]

Wie man 70 Aufgaben an einem Tag erledigt: Leben in Task-Trackern ist ein gutes Leben.

Ich habe versucht, meine Aufgaben systematisch zu verwalten, wahrscheinlich 20-25 Mal. Und jeder Versuch scheiterte, wie ich jetzt verstehe, aus zwei Gründen. Erstens, um Zeit für die Aufgabenverwaltung zu schaffen, muss man verstehen, warum das gemacht wird. Du beginnst, Aufgaben zu führen, investierst Zeit darin, machst weniger Aufgaben, alles staut sich an — wofür? Jede Arbeit ist schwer […]

„Wie man aufhört zu brennen“, oder über die Probleme mit dem Informationsfluss des modernen Menschen

Im 20. Jahrhundert verlief das Leben und die Arbeit der Menschen nach Plan. Am Arbeitsplatz (vereinfacht gesagt — man kann sich eine Fabrik vorstellen) hatten die Menschen einen klaren Plan für die Woche, den Monat und das Jahr im Voraus. Vereinfacht ausgedrückt: Du musst 20 Teile fräsen. Niemand würde kommen und sagen, dass jetzt 37 Teile zu fräsen sind, und außerdem einen Artikel mit Überlegungen zu […]

Wie man Istio mit Kubernetes in der Produktion ausführt. Teil 1

Was ist Istio? Es ist ein sogenanntes Service Mesh, eine Technologie, die eine Abstraktionsschicht über das Netzwerk hinzufügt. Wir erfassen den gesamten oder einen Teil des Traffics im Cluster und führen eine bestimmte Reihe von Operationen durch. Welche genau? Zum Beispiel ermöglicht es intelligentes Routing, die Implementierung eines Circuit Breakers, wir können 'Canary Deployments' organisieren, indem wir den Traffic teilweise auf eine neue Version des Dienstes umschalten, und wir können […]

Istio und Kubernetes in der Produktion. Teil 2. Tracing

Im vorherigen Artikel haben wir die grundlegenden Komponenten des Service Mesh Istio behandelt, uns mit dem System vertraut gemacht und die häufigsten Fragen beantwortet, die zu Beginn der Arbeit mit Istio auftauchen. In diesem Teil werden wir uns ansehen, wie man die Sammlung von Tracing-Informationen im Netzwerk organisiert. Das erste, was vielen Entwicklern und Systemadministratoren in den Sinn kommt, wenn sie die Worte Service […]

Erwerben Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster