Autor: admin

  • Der grundlegende Fehler des SW-Engineering

    Vor dem Aufkommen der Massenproduktion im zwanzigsten Jahrhundert waren die meisten Arbeitsplätze kleine Unternehmen, die nach ihren eigenen Faustregeln Maßarbeit leisteten. Dieser Ansatz bedeutete, dass die Arbeit teuer, unvorhersehbar und nur in kleinen Mengen erledigt werden konnte. Eine andere Methode war erforderlich, als sich die Art der Arbeit in große Produktionszentren verlagerte und die moderne…

  • Multithreading und Mutexes einfach

    Multithreading und Mutexes einfach

    Multithreading ist ein grundlegendes Konzept in der modernen Softwareentwicklung, das es ermöglicht, mehrere Aufgaben gleichzeitig innerhalb eines Programms auszuführen. Ein zentraler Bestandteil dieser Technik ist die Synchronisation von Threads, um sicherzustellen, dass gemeinsam genutzte Ressourcen korrekt und ohne Konflikte verwendet werden. Hier kommen Mutexes (Mutual Exclusions) ins Spiel – Mechanismen, die den exklusiven Zugriff auf…

  • Schreiben Sie keine Python-Einzeiler, die niemand versteht

    Schreiben Sie keine Python-Einzeiler, die niemand versteht

    Ich habe nichts dagegen, Python-Einzeiler zu schreiben. Aber manchmal machen wir es sehr schwer, unseren Code zu lesen und zu verstehen. Manchmal verstehen wir den Code, den wir schreiben, nach ein paar Wochen nicht. Oft können Python-Einzeiler verlockend sein – weil sie elegant und kurz aussehen und Spaß machen. Aber wenn Sie später versuchen, sie…

  • Top 10 Microservices-Pattern, die Sie 2025 kennen sollten

    Top 10 Microservices-Pattern, die Sie 2025 kennen sollten

    Die Microservices-Architektur trägt zu Skalierbarkeit, Flexibilität und Ausfallsicherheit bei, bringt aber auch Herausforderungen wie Netzwerkausfälle, Datenkonsistenz und Probleme bei der Servicekommunikation mit sich. In dem Beispiel wenden wir uns den Top 10 Microservices-Pattern zu. Microservices-Entwurfsmuster helfen bei der Lösung dieser Herausforderungen durch: In diesem Beitrag lernen Sie die Top 10 Microservices-Pattern mit realen Anwendungsfällen kennen. 1️⃣ API-Gateway-Pattern Anwendungsfall aus…

  • Seltsame Programmiersprache: Warum dieser Code die Welt überrascht

    Wenn wir im Allgemeinen über das Programmieren nachdenken, denken wir meistens an Python, Java, C++ oder C. Aber vor kurzem habe ich von einer seltsame Programmiersprache erfahren, die so seltsam aussieht. Das erste Mal, dass ich diese Art von Sprache teste. Der Name dieser seltsame Programmiersprache ist Brainfuck – ja, das ist der richtige Name dieser Sprache. Ziemlich…

  • POST mit einem Body für GET ist eine schlechte Praxis in REST

    Die HTTP GET-Methode wird in der Regel zum Abrufen von Daten verwendet, und viele Entwickler gehen davon aus, dass sie keinen Text unterstützt. Aber die Wahrheit ist, dass GET-Anfragen einen Text enthalten können. Gemäß dem Standard (RFC 7231 §4.3.1) können GET-Anfragen einen Text haben, der jedoch „keine definierte Semantik“ hat. Hier der Auszug zum Post mit einem Body:…

  • Warum sorted() in Python anders funktioniert, als Sie erwarten

    Warum sorted() in Python anders funktioniert, als Sie erwarten

    Das Sortieren in Python ist eine dieser Aufgaben, die so einfach erscheint – bis Sie anfangen, die Macken zu bemerken. Nachdem ich eine Weile mit der Funktion sorted() in Python gearbeitet habe, bin ich auf einige überraschende Verhaltensweisen gestoßen, die nicht sofort offensichtlich waren. Hier sind ein paar Dinge, die sehr hilfreich (und manchmal verwirrend)…

  • Architecture Decision Records (ADRs): Hilfe bei der SW-Architektur-Verwaltung

    Architecture Decision Records (ADRs): Hilfe bei der SW-Architektur-Verwaltung

    Die Entscheidungsfindung ist der Kern eines jeden erfolgreichen Softwareprojekts. Ganz gleich, ob Sie den richtigen Technologie-Stack auswählen, Architekturmuster definieren oder Kompromisse bewerten, jede Entscheidung hat einen tiefgreifenden Einfluss auf das Ergebnis Ihres Projekts. Wenn sich Projekte jedoch weiterentwickeln und Teammitglieder kommen und gehen, kann man leicht den Überblick darüber verlieren, warum bestimmte Entscheidungen überhaupt getroffen…

  • 4 Tipps, die Entwickler befolgen sollten, um sauberen Code zu schreiben

    4 Tipps, die Entwickler befolgen sollten, um sauberen Code zu schreiben

    Haben Sie sich jemals alten Code angesehen, den Sie geschrieben haben, und gedacht: „Was habe ich mir dabei gedacht?“  Oder haben Sie sich gefragt, ob Ihre Teamkollegen ihn leicht verstehen können? Das Schreiben von klarem, lesbarem Code ist eine Schlüsselkompetenz für jeden Programmierer. Es ist wie Ihre Visitenkarte – zeigen Sie Ihre Fähigkeiten. Die wahre…

  • Geheime Linux-Befehle

    Geheime Linux-Befehle

    Egal, ob Sie ein Systemadministrator, Entwickler, DevOps, Sicherheit oder Ops sind … Der effektive Umgang mit Linux und seinen Tools ist die grundlegendste Fähigkeit, die Sie erlernen können. Linux ist das Rückgrat der meisten Server und Anwendungen auf der ganzen Welt. Und deshalb sind die Kenntnisse der „Geheime Linux-Befehle“ unumgänglich. „47 % der professionellen Entwickler…

  • Optimieren von SQL-Abfragen

    Optimieren von SQL-Abfragen

    Die Datenverwaltung ist das Herzstück moderner Anwendungen, und SQL-Datenbanken bieten leistungsstarke Tools zur Optimierung von Datenabfragen und -bearbeitungen. Materialized Ansichten zeichnen sich durch ihre Fähigkeit aus, Abfragen in Szenarien, in denen sich die zugrunde liegenden Daten nur selten ändern, erheblich zu beschleunigen. Sie stellen damit ein Grundpfeiler beim Optimieren von SQL-Abfragen dar. Beginnen wir mit den Tabellen View Materialized Ansicht…

  • SW-Architektur ist schwierig

    SW-Architektur ist schwierig

    Ein Studium-Freund von mir arbeitet beim Tiefbauamt. Bei unserem letzten Treffen, zeigte er mir sein neustes Projekt. Als ich mir als Software-Ingenieur die Baupläne ansah, war ich ziemlich erstaunt. Sie hatten detaillierte, konkrete Pläne für die nächsten 3 Jahre. Die Bauingenieure unterteilten es in 3 Phasen, mit genauen Messungen und Straßenstrukturen für jede Phase. Sie…

  • Lernen beim Refactoring eines 40 Jahre alten Softwareprojekts

    Lernen beim Refactoring eines 40 Jahre alten Softwareprojekts

    „Ihre Aufgabe ist es, dieses System neu zu schreiben. Es treibt unseren gesamten Betrieb an. Oh, und es ist in APL geschrieben.“ So begann meine Reise mit dieser Neufassung des Vermächtnisses „Refactoring eines 40 Jahre alten Softwareprojekts“. Für diejenigen, die mit APL nicht vertraut sind: Es handelt sich um eine Programmiersprache aus den 1960er Jahren, die für…

  • 10 Open-Source-Projekte für Entwickler

    10 Open-Source-Projekte für Entwickler

    In der sich ständig weiterentwickelnden Tech-Welt können die richtigen Tools über Ihre Produktivität entscheiden. Open-Source-Projekte zeichnen sich dadurch aus, dass sie Flexibilität, Community-Unterstützung und die Möglichkeit bieten, Dinge nach Herzenslust zu optimieren. Egal, ob Sie gerade erst anfangen oder bereits ein Profi sind, diese 10 Open-Source-Projekte für Entwickler können Ihren Workflow revolutionieren – sei es…

  • 12 Python-Codestile für die Produktion

    12 Python-Codestile für die Produktion

    In den Projekten legen wir großen Wert darauf, unseren Code so leserlich und verständlich wie möglich zu schreiben. Um dies zu erreichen, setzen wir auf verschiedene Praktiken, die Teil der 12 Python-Codestile für die Produktion sind, darunter: Diese Praktiken zeigen, wie sich das Code-Styling kontinuierlich weiterentwickelt, um den Anforderungen an einen gut strukturierten Code gerecht…