
Sign up to save your podcasts
Or


In dieser Episode wird ein lang gehegter Traum wahr. Xyrill hat ein Buch gelesen und spricht darüber. Obwohl es nicht sehr dick ist, ist es doch sehr gehaltvoll und so entscheiden wir uns kurz vor Ende der Sendung für eine spontane Planänderung.
ShownotesWir lesen die englische Erstausgabe von 1975, die im Internet Archive digitalisiert wurde.„Die wichtigste Entscheidung, die ich je getroffen habe, war, die IBM-360-Serie von einem 6-Bit-Byte auf ein 8-Bit-Byte umzustellen und damit die Verwendung von Kleinbuchstaben zu ermöglichen. Diese Veränderung verbreitete sich überall.“
zum Buch: "Vom Mythos des Mann-Monats" ("The Mythical Man-Month") dokumentiert Brooks' Erfahrungen als Projekt-Manager in einem der frühen großen Software-Projekte
Hörempfehlung: Pentaradio vom Dezember 2022
Teergruben-Analogie: steckt ein Tier mit einem Bein in der Teergrube, kann es das Bein meist aus eigener Kraft herausziehen; alle Beine in der Teergrube sind hingegen meist ein Todesurteil
Programme können von Einzelpersonen oder Zweierteams erschaffen werden
vom Programm zum Programmprodukt: Generalisierung (Nützlichkeit für eine ganze Klasse von Situationen), Testabdeckung (siehe STP038), Dokumentation, fortlaufende Wartung -> heute sagt man "Produktisierung" dazu
vom Programm zum Programmsystem: Einbettung in ein Netzwerk anderer Programme mit konsistentem Stil und definierten Schnittstellen untereinander
Programmsystemprodukt: ein produktisiertes Programmsystem
Problem 1: Programmierer sind schlecht im Schätzen von Zeitaufwand
Problem 2: konventielle Planungsmethoden funktionieren nur, wenn "Personen und Monate austauschbar sind"
Problem 3: der Zeitplan wird durch die Bedürfnisse des Kunden bestimmt, nicht durch die Bedürfnisse der Programmierer
Problem 4: Was macht man, wenn dann das Kind in den Brunnen gefallen ist und man zu spät dran ist?
Beobachtung: sehr weite Spannbreite im Produktivitätsspektrum der Software-Entwickler; die besten sind 10x so produktiv wie die schlechtesten
Alternativvorschlag: Teamstruktur analog zu Operations-Teams in der Chirurgie
genaue Rollenverteilung in diesem Vorschlag
großer Fokus auf den unterstützenden Sekretärs- und Schreiberrollen, um den Chirurgen und Copilot von Schreibarbeiten zu entlasten
Skalierungsfrage ist hierdurch vereinfacht: ein Projekt mit 2000 Mitarbeitern kann damit in 200 Zehnerteams geteilt werden, sodass nur die 200 Chirurgen miteinander reden müssen
Endlich ist die Hardware geliefert und montiert; Zeit, der Elektronik Leben einzuhauchen. Was könnte da besser passen als die Linux-Distribution der Wahl.
ShownotesWir haben Feedback bekommen, siehe unten. Zuerst die Shownotes zum eigentlichen Thema:Rückbezüge: STP065/066, Gamespodcast
Unterschiede zu Windows und macOS
Wie wählt man eine Distribution?
Auf dem Kongress gab es eine Postkarte.
Nachdem es sich als eine gute Entscheidung erwiesen hat, die ursprünglich geplante Episode zu teilen, geht es heute nun konkreter um die Auswahl der Komponenten und deren Montage in den Selbstbau-PC.
Shownotesfortgesetzt aus STP065: Wie wählt man Komponenten so, dass alles zusammenpasst?
Webempfehlungen:
Wie baut man es zusammen?
weitere Empfehlungen
Da wir hier ja alle stilechte Nerds sind, gehört auch der Bau des eigenen PC zu den Standardaufgaben. Wie wir das anfangen, darum soll es diesmal gehen.
ShownotesWarum sollte man das tun wollen?
Wie stellt man die Einkaufsliste zusammen?
Heute geht es ein weiteres Mal um Eisberge und Memes. Entweder ttimeless ist gut aufgelegt oder diese Dinge sind nur mit Humor zu ertragen… oder beides.
ShownotesWir setzen unsere Betrachtung des Cursed Computer Iceberg Meme aus STP042 fort. Das letzte Mal waren wir bis "Below the Water" gekommen. Xyrill hat aber noch ein paar Sachen in den oberen Ebenen gesehen, die besprechenswert sind."Above the Iceberg" - Oberhalb des Eisberges
"On the Iceberg" - Auf dem Eisberg
"Below the Water" - Unterhalb der Wasserlinie
"Middle of the Iceberg" - Mitte des Eisbergs
"Bottom of the Iceberg" - Unterseite des Eisbergs
Es gibt noch jede Menge im tiefen Wasser. Wir sehen uns wieder in STP084.
Wie auch schon in der Vergangenheit nehmen wir es mit der Aktualität unserer "Berichterstattung" nicht ganz so genau. Und so liegt das entsprechende Ereignis etwa 2¹/₂ Monate in der Vergangenheit. Der fünfte fleißige Biber wurde gefunden.
ShownotesWir haben Feedback bekommen, siehe unten. Zuerst die Shownotes zum eigentlichen Thema:aktueller Anlass: Der fünfte fleißige Biber wurde gefunden
Aufbau einer Turing-Maschine (Beispielbild aus Wikipedia)
Zustandsvorrat (durchbuchstabiert in der Reihenfolge der Benutzung, Startzustand ist A):
Übergangstabelle:
Beispielausführung für die Aufgabe "3-2"
Anmerkungen hierzu
N-ter fleißiger Biber: diejenige Turingmaschine mit N Zuständen, die auf ein initial leeres Band (alles voller Nullen) die meistmöglichen Einsen schreiben kann, bevor sie anhält
laalsaas schreibt:
In Minute 32 spricht xyrill von 1,6 Terabit und sagt, dass wären 1,6 Millionen Bit. Ich nehme an, dass es sich hierbei um einen Versprecher im Eifer des Gefechts handelt, sind doch 1 Terabit eine Billion Bit.
Anmerkung: Im Englischen sogar "a trillion bit". :)
Etwas früher ging es um USB und darum, dass man den Stecker nie beim ersten Versuch richtig herum reinbekommt. Dazu möchte ich hier einen „Lifehack“ teilen. Ich hoffe, es gelingt mir, ihn in Textform verständlich zu beschreiben. Ein USB-Stecker ist meist folgendermaßen aufgebaut: Wenn man von vorne daraufguckt, ist der äußere Rand ein rechteckig gebogenes Metallblech. Innen ist eine Hälfte des Rechtecks eine Plastik-„Zunge“, auf der die Kontakte sitzen, in der anderen Hälfte ist Luft. Eine USB-Buchse wiederum besteht aus einem Rechteck, in dem die Hälfte ebenfalls aus einer „Zunge” besteht, die andere aus Luft. Damit nun ein Stecker in die Buchse passt, müssen sich die „Zungen“ gegenüberliegen, damit sie die Luft in der jeweils anderen Komponente ausfüllen. Nun ist es so, dass bei über 90% der horizontal fest verbauten USB-buchsen in Laptops, PCs, usw die „Zunge“ oben ist. Das heißt, man muss einfach die „Zunge“ des USB-steckers nach unten orientieren. Wer immer noch zu faul ist, jedes mal frontal auf seinen USB-Stecker draufzugucken, der sei darauf hingewiesen, dass man auch einfach herausfinden kann, auf welcher Seite die Zunge ist, indem man durch die seitlichen Löcher im Blech des USB-Steckers schaut und darauf achtet, ob da direkt Plastik ist (Zungenseite, die muss nach unten) oder erst etwas Luft und dann Kontakte, wenn man das sieht, hält man den Stecker richtig herum. Seitdem ich diesen Trick kenne, habe ich wesentlich weniger Probleme damit, USB-Stecker richtigherum reinzustecken. Das funktioniert natürlich nicht bei freifliegenden Hubs und auch bei seitlich oder „nach unten“ montierten Buchsen habe ich noch keine Konvention erkennen können, das kann aber auch daran liegen, dass ich zu selten mit denen zu tun habe. Ich hoffe trotzdem, dass ich manchem mit diesem Trick das Leben einfacher machen konnte :)
Zu guter Letzt möchte ich noch anmerken, dass die in Minute 39 von timeless gewählte Formulierung „Der LaTeX-Bruder“ eine (vermutlich ungewollte) Doppelbödigkeit hat. Erfahrene STP-Hörer wissen natürlich, dass es sich hier um Xyrills Bruder handelt, der seine Abschlussarbeit in LaTeX geschrieben hat, aber ich finde, es klingt auch so, wie ein Mitglied des LaTeX-Klosters oder der LaTeX-Sekte, was mich sehr zum Schmunzeln gebracht hat.
Weiterhin schreibt Matthias:
Statt Postkarte: Liebe Hörergrüße aus dem Urlaub in Allgäu sendet Matthias.
Anbei ein Bild eines Gedenksteins für Konrad Zuse.
Nachdem unser aller Heimnetzwerk voll funktionsfähig ist, wollen wir nun von daheim aus die ganze Welt mit unseren Online-Diensten beglücken... oder zumindest bestimmte Dinge selbst an den Start rollen.
ShownotesRückbezug STP061: wir haben unser Heimnetzwerk von Schicht 1 bis 3 aufgebaut
Ports: Identifikationsnummer für offene Netzwerkverbindungen; 16 Bit groß (0-65535)
Wie kann ich zuhause einen Server-Prozess betreiben?
Was kann ich zuhause betreiben?
im Gespräch erwähnt
In dieser Episode soll es etwas detaillierter um die unteren Schichten im Netzwerkstapel gehen. Außerdem: ttimeless fordert biologische Lösungen für Verknöcherungsprobleme und Xyrill räumt mit falschen Werbeversprechen auf.
ShownotesRückbezug: STP005 (Netzwerk-Schichtenmodell)
Layer 1/2 kabelgebunden: über achtadrige Twisted-Pair-Kabel mit üblicherweise vorkonfektionierten RJ45-Steckern (8P8C) nach IEEE 802.3 "Ethernet"
Layer 1/2 kabellos: über Radiowellen im 2,4-GHz-Band oder im 5-GHz-Band nach IEEE 802.11 "WLAN bzw. Wi-Fi"
Layer 3 mit IPv4 (1981)
Layer 3 mit IPv6 (1998)
Layer 3 mit VPN (Virtual Private Network)
Layer 4 bis 7 dann beim nächsten Mal
Nachdem die beiden sich gegenseitig ihr Leid geklagt haben, geht es dann doch noch um Technik. Oder eher um deren Anwendung. Diesmal wieder mit einer Hands-on-Folge, denn es ist wichtig, vor Kunden und bei Präsentationen einen professionellen Eindruck zu machen.
ShownotesRückblick: STP006 "Kommandozeilen und Unixphilosophie"
erste Sichtprüfung:
Kopfzeilen entfernt:
Anführungszeichen entfernt: Balkon.dat
Anzeige in gnuplot: das untenstehende Programm als Balkon.gp abspeichern, gnuplot aufrufen und load 'Balkon.gp' eingeben)
Für die Ausgabe in eine Datei können noch diese beiden Zeilen vorangestellt werden:
Was, wenn gnuplot nicht so clever wäre?
Unsere zeitlichen Maßeinheiten, von Sekunden bis hin zu Monaten, sind so kompliziert, asymmetrisch und disjunkt, dass ein kohärentes mentales Rechnen in der Zeit nahezu unmöglich ist. In der Tat, hätte sich ein tyrannischer Gott ausgedacht, unseren Geist an die Zeit zu versklaven, um es uns nahezu unmöglich zu machen, der Unterwerfung unter durchweichte Routinen und unangenehme Überraschungen zu entkommen, hätte er kaum etwas Besseres tun können, als uns unser gegenwärtiges System zu überliefern. Es ist wie ein Satz trapezförmiger Bauklötze, ohne vertikale oder horizontale Flächen, wie eine Sprache, in der der einfachste Gedanke verschnörkelte Konstruktionen, nutzlose Partikel und langatmige Umschreibungen erfordert. Im Gegensatz zu den erfolgreicheren Mustern der Sprache und der Wissenschaft, die es uns ermöglichen, Eindrücken kühn oder zumindest nüchtern zu begegnen, fördert unser System der zeitlichen Berechnung stillschweigend und beharrlich unseren Terror vor der Zeit.
... Es ist, als ob Architekten die Länge in Fuß, die Breite in Metern und die Höhe in Ellen messen müssten; als ob grundlegende Bedienungsanleitungen die Kenntnis von fünf verschiedenen Sprachen erfordern würden. Kein Wunder also, dass wir in unsere eigene unmittelbare Vergangenheit oder Zukunft, auf den letzten Dienstag oder den Sonntag in einer Woche, oft mit einem Gefühl hilfloser Verwirrung blicken. ...
im Gespräch erwähnt: ASCII-Folge von Request for Comments
Nachdem es in STP015 (Multitasking) bereits um die nacheinanderfolgende Verteilung von Resourcen an verschiedene Prozesse ging, kommt heute echtes "gleichzeitig Arbeiten" dran.
ShownotesRückbezug und Abgrenzung zu STP015 (Multitasking in Betriebssystemen)
Grundproblem: Wie vermeidet man Konflikte und Verwirrung beim Umgang mit geteilten Ressourcen?
Race: eine Situation, bei der das Ergebnis (und insbesondere die Korrektheit) mehrerer nebenläufiger Prozesse davon abhängt, in welcher Reihenfolge die einzelnen Rechenschritte verschiedener Prozesse zufälligerweise ausgeführt werden
wir brauchen ein Mutex: einen Mechanismus zum wechselseitigen Ausschluss ("Mutual Exclusion")
Idee: bevor wir den Zähler anfassen, fragen wir bei einem zentralen Prozess nach einer Sperre für diesen Zähler an; dieser Prozess vermerkt Sperr- und Entsperrvorgänge in seinem internen Speicher
Idee: in der kritischen Region (von Auslesen des Zählers bis Zurückschreiben) verbieten wir dem Betriebssystem, unseren Prozess zu unterbrechen
praktische Umsetzung von Mutexen mittels Atomics: spezielle CPU-Instruktionen, die nicht unterbrochen werden können
andere Perspektive, hier zitiert aus der Programmiersprache Go: "Do not communicate by sharing memory; instead, share memory by communicating."
Abendgedanken: Amdahl'sches Gesetz
From the publisher's feed

9 Listeners

219 Listeners

5 Listeners