Kategorie: Programmierung
Tech-Stack für die Web-Apps von heute
—
Jede Woche werden neue Tools und Technologien veröffentlicht. Zum Beispiel wächst der Bereich der künstlichen Intelligenz (KI) rasant. Fast jeden Tag kommt ein neues Werkzeug oder ein Modell auf den Markt. Das Gleiche gilt für das JavaScript-Ökosystem, in dem häufig neue Bibliotheken und Frameworks veröffentlicht werden. Es ist, als ob man mit dem Tempo nicht…
Warum gibt Pythons round (6.5) 6 zurück und bei round(7.5) 8?
—
Wenn Sie einige Zeit mit pythons round gearbeitet haben, denken Sie vielleicht, dass Sie wissen, wie Rundungen funktionieren – bis Sie auf dieses rätselhafte Verhalten stoßen: Sie fragen sich vielleicht: Sollten nicht beide Zahlen aufgerundet werden? Oder sollten sie sich nicht zumindest genauso verhalten, entweder auf- oder abrunden? Ist das ein Fehler? Nein, es ist…
PHP Microservices ohne Frameworks
—
Beim Erstellen von PHP Microservices ohne Frameworks wird eine Anwendung in kleinere, unabhängige Dienste aufgeteilt, die über ein Netzwerk kommunizieren. Hier ist eine allgemeine Anleitung, wie Sie PHP Microservices ohne Frameworks angehen können: 1. Überblick über die Architektur 2. Projektstruktur 3. HTTP-Kommunikation mit PHP Verwenden Sie die integrierten Funktionen von PHP (oder cURL für erweiterte…
DDD verursacht Komplexität
—
Beim Software-Engineering geht es darum, Systeme zu entwickeln, die durch die Zusammenarbeit ihrer verschiedenen Komponenten klar definierte Ziele erreichen. Diese Zusammenarbeit impliziert Wechselwirkungen, um Grenzen zu überschreiten, die das System unterteilen. Ein gutes Design dieser Grenzen macht Interaktionen effizient und stellt sicher, dass sie die angegebenen Geschäftsanforderungen erfüllen. Dies wollen wir hier im Beitrag DDD…
Diesen Monat neu bei den STM32-Prozessoren
—
Im März findet in Nürnberg die Embedded World statt. Dementsprechend groß ist die Liste der Neuankündigungen in der Prozessoren-Welt. Hier in aller Kürze: Diesen Monat neu bei den STM32-Prozessoren. STM32U3-Serie Die STM32U3-Serie bietet im Vergleich zu früheren Produktgenerationen eine höhere Energieeffizienz im Laufbetrieb. Es ist die erste STM32, die auf einem Near-Threshold-Design basiert, das den…
Tree Sitter: Metriken aus Ihrem Code
—
Die Technologie, aber vor allem die Software-Entwicklung ist ein sich ständig veränderndes Feld. Diese Änderungen können organisch innerhalb des Teams erfolgen, wenn es mehr über das Problem erfährt, das es löst, und seine Lösung iteriert, oder aus externen Quellen stammen, wie z. B. neuen Paradigmen, die von den Frameworks empfohlen werden, die das Team verwendet.…
Warum ich IDEs aufgegeben habe
—
Ich habe in meiner Karriere viele verschiedene Rollen innegehabt, vom Entwickler bis zum CEO und so ziemlich alle möglichen Positionen dazwischen, aber ich habe mich immer weiterentwickelt. Für mich ist es nicht nur eine Quelle der Freude, sondern auch und vor allem eine zwingende Notwendigkeit, das ultratechnische und ultraschnelllebige Umfeld, in dem wir uns entwickeln,…
CORS einfach erklärt
—
Haben Sie das oben schon einmal gesehen? Wahrscheinlich… und wahrscheinlich eine ganze Menge… Es gibt Millionen von Artikeln, in denen erklärt wird, wie der obige Fehler behoben werden kann, aber was genau ist dieses „Cross-Origin Resource Sharing“ (CORS)-Ding und warum gibt es es überhaupt? Warum? Beginnen wir damit, zunächst die Frage nach dem Warum durch…
Warum Docker möglicherweise nicht die beste Wahl ist
—
Hatten Sie schon einmal das niederschmetternde Gefühl, wenn Ihr Container-Engine-Daemon abstürzt und Ihre gesamte Produktionsumgebung lahmlegt? Oder fragen Sie sich vielleicht, warum Ihre containerisierten Anwendungen Root-Rechte benötigen, wenn dies nicht der Fall sein sollte? Sie sind nicht allein. Mit der Weiterentwicklung der Containerisierung stellen Entwickler weltweit fest, dass ihre vertrauenswürdigen Docker-Workflows sie möglicherweise aufhalten. Überlegen…
Task vs. ValueTask in C#
—
In der modernen Anwendungsentwicklung ist Reaktionsfähigkeit der Schlüssel, und der Aufbau reaktionsfähiger Anwendungen hängt stark von der asynchronen Programmierung ab, insbesondere wenn es um E/A-gebundene Aufgaben geht. Ganz gleich, ob Sie Datenbankabfragen verarbeiten, auf Dateien zugreifen oder API-Aufrufe tätigen, die asynchrone Programmierung sorgt dafür, dass Ihre Anwendung schnell und benutzerfreundlich bleibt. Wenn Sie mit async/await…
Okta Bcrypt-Vorfall: Was wir lernen können
—
Hallo! Wenn Sie Tech-News verfolgen, haben Sie vielleicht schon von dem Okta Bcrypt-Vorfall (Quelle) gehört, der am 1. November gemeldet wurde. Die TLDR des Vorfalls lautete wie folgt: Der Bcrypt-Algorithmus wurde verwendet, um den Cache-Schlüssel zu generieren, bei dem wir eine kombinierte Zeichenfolge aus Benutzer-ID + Benutzername + Passwort hashen. Unter bestimmten Bedingungen, die unten aufgeführt sind,…
LLM mit 2 Milliarden Parametern: Erstellen mit Python
—
Schnelle Notiz (der Beitrag wurde aus dem englischen übersetzt): Wir werden ein LLM mit 2 Milliarden Parametern von Grund auf mit dem The Pile-Datensatz trainieren. Als Ergebnis erhalten wir ein LLM, das perfekte Grammatik und Zeichensetzung in den Antworten ausgibt, wobei kürzere Kontexte sinnvoll sind, aber nicht die gesamte Antwort. Zuvor habe ich einen Artikel…
Clean Code: Der Mythos in der Frontend-Entwicklung
—
Jeder Entwickler hat das Wort „Clean Code“ schon einmal gehört. Es ist der heilige Gral der Softwareentwicklung, oder? Schreiben Sie sauberen Code, und alles andere wird sich von selbst ergeben. Zumindest wird uns das gesagt. Aber in der chaotischen Welt der Frontend-Entwicklung kann die Besessenheit von sauberem Code manchmal mehr schaden als nützen. Lassen Sie uns untersuchen, warum dies nicht immer…
Value Objects in PHP können Sie vor schlechten Daten schützen
—
Eines der Dinge, auf die wir bei der Arbeit mit objektorientierter Programmierung (OOP) achten müssen, ist, dass die Daten, mit denen wir arbeiten, jederzeit gültig sind. Dies kann erreicht werden, indem wir alle Validierungen hinzufügen, die wir im Konstruktor der Objekte benötigen, die wir bearbeiten werden. Die Prämisse ist einfach: Wenn die Daten gültig sind, erhalten Sie das…
Repository Pattern
—
Das Repository Pattern ist ein Entwurfsmuster (Design Pattern), das häufig in der Softwareentwicklung verwendet wird, um den Zugriff auf Daten zu abstrahieren. Es stellt sicher, dass die Geschäftslogik der Anwendung von der Datenzugriffslogik entkoppelt wird. Das Repository fungiert als eine Vermittlungsstelle zwischen der Anwendungslogik und der tatsächlichen Datenquelle, wie einer Datenbank, einer Datei oder einer…