05:29:46 Biolunar joined the channel
07:34:11 kevin joined the channel
07:43:10 XanClic joined the channel
09:01:57 chmodsayshello joined the channel
09:13:46 chmodsayshello: Danke für deine Antwort, kevin! Tatsächlich habe ich damit schon gerechnet, da LowLevel.... naja... schon etwas "tot" aus der Perspektive jener, die sich erst seit ca. Juni mit OsDev befassen, aussieht. Deshalb habe ich auch schon angefangen, große Teile des Wikis herunterzuladen, aus der Angst heraus, dass von heute auf morgen das Wiki einfach nicht mehr gehostet wird und eine eigentlich recht gute Ressource neben z.B. http
09:13:59 chmodsayshello: Hat man denn innerhalb der letzten Jahre(?) nochmal von Antoine Kaufmann als Hosterin von LowLevel gehört?
09:13:59 chmodsayshello: Bezüglich des Accounts: Mir würde es primär darum gehen, dass man tote Links mit archivierten Versionen der verlinken Seiten (z.B. aus dem Internet-Archiv) oder neueren Ressourcen mit selbem thematischen Schwerpunkt ersetzten könnte.
09:16:43 kevin: Hoster., nicht Hosterin ;-) Toni hat sich mal vor einiger Zeit genau deswegen bei mir gemeldet, was denn jetzt mit Lowlevel passieren soll, weil er seit längerem keine Zeit mehr dafür hat, alles zu warten. Er hat mir angeboten, dass ich es übernehmen kann, aber wenn es bei weiter vor sich hingammelt, ist auch nichts gewonnen.
09:17:22 kevin: Der letzte Gedanke war, dass wir das irgendwie zu einer statischen Webseite mit quasi keinem Wartungsaufwand machen, aber an diesem Punkt sind wir stehengeblieben
09:19:40 kevin: Einfach abschalten fänden wir alle schade, weil ich glaube auf deutsch gibt es nicht so viel anderes, das in der Breite so viel abdeckt
09:20:29 chmodsayshello: Nicht so viel? Mir wäre da gar nichts bekannt.
09:23:35 chmodsayshello: Persönlich bin ich tatsächlich beeindruckt, dass es scheinbar vor 10-20 Jahren eine deutschsprachige Community gab, die so groß war, das alles auf die Beine zu stellen. Glücklicherweise ist x86 zumindest ja in seinen Grundzügen arg unbewegt ;)
09:38:36 kevin: Heutzutage würde man sich vielleicht nicht mehr so sehr auf 32 Bit fokussieren, aber ja ;-)
09:39:26 kevin: Ich glaube, so ein paar Tutorials für die Kernelgrundlagen gibt es schon noch irgendwo im Netz verstreut. Gab es zumindest irgendwann mal. Aber damit kommt man halt nach einer Weile nicht mehr so richtig weit.
09:42:13 kevin: Wobei ich mich schon ab und zu gefragt habe, wie es sein kann, dass damals alles so aktiv war und heute anscheinend niemand mehr an OS-Dev interessiert ist. Oder es gibt die Leute und wir sehen sie nur nicht.
09:43:46 chmodsayshello: Doch, die gibt es, der Discord-Server z.B. von osdev.wiki ist tatsächlich sehr aktiv. Der ist halt a.) nicht deutschsprachig und b.) böses Discord. Aber IRC kennen die meisten Leute nicht mehr unbedingt... Da geht es schon los.
09:44:53 chmodsayshello: (osdev.wiki ist praktisch ein besser gepflegterer Fork von osdev.org)
09:46:42 kevin: Naja, wenn's daran liegt, auf einen Discord-Server mehr würde ich auch hüpfen. Aber ich denke, wenn man da einen deutschprachigen startet, braucht man auch erstmal eine kritische Masse.
09:47:18 kevin: Aber kann natürlich sein, dass diejenigen, die sich für so ein Thema interessieren, das heute einfach eher auf Englisch tun
09:47:50 vlo joined the channel
09:49:05 chmodsayshello: Ich meine, ich bin da jetzt bei dem Thema hier auch eher neu dabei, und tendenziell würde ich gerade bei solchen Themen eher nach englischsprachige Ressourcen suchen, da diese eifnach häufiger vorhanden sind. Ich war selbst extrem überrascht, dass es LowLevel gibt, und dann angesichts des Zustands irgendwie auch wieder enttäuscht.
09:49:23 kevin: Hab übrigens mein Wiki-Passwort rausgefunden. Wenn du mir (am besten privat) deine Mailadresse und gewünschen Benutzernamen gibst, kann ich einen Account anlegen.
09:52:02 kevin: Ja, ich war natürlich auch immer parallel noch auf osdev.org unterwegs oder was es da noch so gab. Aber eine deutschsprachige Community fand ich schon gut zu haben.
09:52:46 chmodsayshello: Dazu kommt auch, dass immer weniger "jüngere" Leute noch sprachen wie C können.
09:56:16 chmodsayshello: (So zumindest meine Wahrnehmung)
09:56:21 XanClic: Dafür macht man ja OS-Dev, um das zu lernen ;0
09:56:23 XanClic: *;)
09:56:55 chmodsayshello: Wenn man noch gar keine Erfahrung mit C hat, ist OS-Dev glaube ich kein gutes Umfeld um das zu lernen.
09:57:17 kevin: *hust* ;-)
09:57:23 chmodsayshello: Wenn du Mist mit dem Speicher baust fliegt dir dann alles um die Ohren, und du hast viel weniger Debugging-Möglichkeiten.
09:57:25 XanClic: Das haben wir hier immer gern gesagt, aber ehrlich gesagt ist es das Umfeld, in dem ich (und eigentlich denk ich viele andere auch) C gelernt hab
09:57:54 kevin: Ich konnte vorher auch nicht wirklich C
09:58:19 XanClic: Ich hab mit OS-Dev überhaupt erst angefangen, um Assembler zu lernen
09:58:59 kevin: Meine ersten Versuche waren mit FreePascal, was es nochmal herausfordernder gemacht hat, weil es da halt keine Anleitungen dafür gibt. Aber tyndur war ein Community-Projekt, da habe ich dann halt C machen müssen.
09:59:15 kevin: Und man glaubt gar nicht, wie effektiv man die libc lernt, wenn man eine implementieren muss ;-)
09:59:17 chmodsayshello: Das war bei mir auch Motivation... Privat habe ich vorher Binary-Exploitation gemacht, und konnte somit grob anhand mit einem Disassembler mir Sachen erschließen, aber NICHTS selber in Assembler bauen.
10:00:24 kevin: In Assembler bauen kriege ich bis 100 Zeilen vielleicht noch hin. Es später nochmal zu lesen... reden wir nicht drüber
10:00:44 XanClic: Wieso lesen, wenns kaputt ist, schreibt man einfach alles neu ;)
10:01:19 kevin: Kaputt ist es sowieso ;-)
10:01:31 chmodsayshello: Auch ein weiterer großer Faktor ist, dass heute ALLE Schüler an Gymnasien gezwungen werden, Java zu lernen, und somit ALLES mit OOP machen wollen.
10:01:59 kevin: OS-Dev war noch nie Mainstream
10:02:05 chmodsayshello: Das ist klar.
10:02:59 XanClic: Und dass man OOP lernt, wenn man überhaupt Programmieren in der Schule hat, war vor… 17? Jahren genauso
10:02:59 chmodsayshello: Aber das Einprägen von "Alles muss OOP sein!" ist beim lernen von C sehr hinderlich.
10:03:14 XanClic: Och, kevin ist doch der Experte für OOP in C
10:03:41 chmodsayshello: Ja schön, ich kann natürlich structs machen, und allerhand "Methoden", die Pointer auf das struct bekommen.
10:03:48 XanClic: So siehts aus
10:03:51 chmodsayshello: Oder Function-Pointer im Struct
10:04:30 XanClic: Grundsätzlich hindert einen ja auch nicht viel daran, C++ statt C zu nehmen
10:04:30 chmodsayshello: Ich meinte aber eher das Denken in Vererbungshirachien.
10:04:51 XanClic: Außer der gute Geschmack, aber das sag ich auch nur, weils sonst kevin sagt
10:06:01 chmodsayshello: C++... Naja
10:06:21 XanClic: Ich weiß ja nicht, wies heute läuft, aber als ich noch an der Schule war, wollte auch kaum einer wirklich programmieren
10:06:24 kevin: Heutzutage existiert Rust
10:06:27 XanClic: Vor allem nicht in der Freizeit
10:06:39 XanClic: kevin, schon, aber wie siehts da mit Tutorials aus?
10:06:52 kevin: Du hast bestimmt mal ein Barebones-Tutorial geschrieben, oder?
10:06:55 chmodsayshello: Dann schreib doch mal eine Double-Linked-List in Rust ;)
10:06:58 XanClic: Angefangen zumindest
10:07:15 XanClic: chmodsayshello, wo sollte das Problem sein?
10:07:34 chmodsayshello: In Rust darf man nicht zwei mutable Pointer auf den selben Speicher haben.
10:07:42 XanClic: Man darf nicht, kann aber
10:07:52 XanClic: unsafe existiert
10:08:09 kevin: Zwei mutable Pointer sind erlaubt, nur zwei mutable Referenzen nicht
10:08:41 chmodsayshello: Ja, okay, aber wer nutzt in safe Code Pointer, wenn du unsafe brauchst, um die zu dereferisieren.
10:08:54 XanClic: außerdem https://doc.rust-lang.org/std/collections/struct.LinkedList.html
10:08:58 XanClic: > A doubly-linked list with owned nodes.
10:09:01 XanClic: geht also wohl schon irgendwie
10:09:23 chmodsayshello: Gehen tut es, es ist aber Teils unschön...
10:09:42 kevin: XanClic: Und zu dem oben noch: Als ob du nicht auch seit über einem Jahrzehnt an objektorientiertem C-Code schrauben würdest ;-)
10:09:53 XanClic: chmodsayshello, nur, weil ich in C nicht sehe, wie kaputt es ist, machts das nicht besser
10:10:06 XanClic: kevin, hab ich alles von dir gelernt ;)
10:10:28 kevin: Und ich von... Fabrice womöglich?
10:10:36 XanClic: oh je
10:10:41 kevin: Genau *g*
10:11:15 chmodsayshello: Versteh mich nicht falsch, ich bin nicht Anti-Rust, manchmal denk ich mir nur "*stöhnen* Das wär jetzt in C so einfach, und da kann realistisch auch nichts kaputt gehen"
10:11:52 kevin: Realistisch gesehen geht mir in C halt ständig irgendwas kaputt, was mal vernünftig ausgesehen hat
10:12:15 kevin: Aber ja, ich schreibe auch nach wie vor hauptsächlich C
10:12:40 XanClic: Ich nicht, weil ich denke, das ist so einfach, und dann sagt mir der blöde Rustcompiler, dass es doch nicht so einfach ist
10:13:03 XanClic: Leider hat er bisher immer Recht behalten
10:13:03 chmodsayshello: In der Praxis finde ich es deshalb auch nicht verkehrt, kritische Sachen, wie alles, was am Netzwerk hängt, in Rust zu schreiben.
10:13:27 chmodsayshello: Aber niemand profitiert wirklich am "vi in Rust" Rewrite.
10:13:28 XanClic: kevin, es gibt jedenfalls keine Rust-Ergebnisse im Wiki
10:13:34 XanClic: Wann ist nochmal Day of Learning? :)
10:14:26 XanClic: 14. November, das ist ja noch ein Weilchen…
10:17:08 chmodsayshello: Ich habe selber mal ein sehr minimalistisches Betriebssystem in Rust geschrieben, nach Interrupt-Handling das Ganze aber abgebrochen und es dann doch in C gebaut, weil ich verzweifelt bin.
10:17:29 chmodsayshello: https://os.phil-opp.com/edition-1/
10:45:52 vlo: Mir fällts irgendwie auch schwer, neue Sprachen zu verwenden. Egal wo, immer geht mir irgendwas auf den Sack, dann lande ich wieder bei C :-/
10:47:10 vlo: Vielleicht bin ich einfach alt geworden :-D
11:05:32 kevin: Hm, ja, kann ich schon nachvollziehen. Aber in C gehen mir halt auch genug Sachen auf den Sack, wenn ich deine Formulierung mal übernehme. ;-)
12:10:42 vlo: Ja stimmt schon, da gibts auch einiges... Headerdateien-Wächter, Headerdateien überhaupt, benötigte Forward-Declarations, wenn Structs "einander" enthalten... Oder was ists bei dir so? ^^
12:23:08 kevin: Vor allem die Sachen, die man gegenüber Rust verliert. Also dass mir der Compiler nicht oft genug auf die Finger haut, wenn ich mal wieder Blödsinn mache, sondern irgendwann später kracht es halt.
12:24:21 kevin: Manuelle Speicherverwaltung und Locking und sowas kriegt doch in einem komplexeren Stück Software kein Mensch ohne Tools korrekt hin
12:35:03 vlo: Hängt vom Anwendungszweck ab, denke ich, gerade bei OS-Dev würde mir automatische Speicherverwaltung (Garbage Collector?) eher im Weg rumgehen.
12:40:01 kevin: Naja, ich hab ja mit Rust verglichen. Klar wäre die Speicherverwaltung selbst viel unsafe-Code, aber außerhalb davon muss man sich halt deutlich mehr anstrengen, um Fehler zu produzieren, use after free oder sowas.
12:41:26 kevin: Mit C ist es doch sehr einfach, sich nicht so richtig drum zu kümmern, wem der Speicher eigentlich gerade wirklich gehört und ob der nicht auch zu früh weggehen könnte und sowas
12:41:46 XanClic: vlo, Rust hat keinen Garbage Collector
12:44:15 vlo: Jupp, das weiß ich, weshalb ich hier auch ein Rust-Buch stehen habe, das ich dringend mal lesen sollte und gein Go-Buch :-D. Ihr - bzw. kevin - habt vermutlich an was anderes bei nicht manueller Speicherverwaltung gedacht, als ich
12:45:30 kevin: Ich dachte im Wesentlichen an malloc/free selbst im Code verteilen
12:46:23 vlo: Ich weiß dass Rust das sehr elegant löst, aber eben auf eine Art und Weise, die bei mir bisher ganz andere Knoten im Hirn verursacht, die ich bisher noch nicht überwinden konnte.
12:46:33 kevin: In Rust passiert das free halt nicht, wenn ich gerade auf die Idee komme, das hinzuschreiben, sondern wenn die Variable, die den Wert besitzt, out of scope geht
12:47:21 kevin: Ja, das verursacht Knoten im Hirn, weil man halt auf einmal gezwungen ist, richtig darüber nachzudenken und es korrekt zu machen statt einfach irgendwas zu machen und dann mal schauen, was passiert ;-)
12:48:06 kevin: Ist ja mit Warnungen in C genauso, ignorieren ist kurzfristig immer leichter
12:49:17 vlo: Deshalb hab ich in meinen Makefiles immer -Wall -Werr - klar nicht schön, dass das ne Option ist
12:49:31 chmodsayshello joined the channel
12:49:47 vlo: (bzw. was heißt immer - halt wenn das Projekt eine ernstzunehmende Größe erreicht)
12:50:48 vlo: und es nervt wenn da nur sukzessive der Compiler penibler wird und alter Code plötzlich nicht mehr compiliert
12:50:58 kevin: Genau, hab ich auch
12:51:34 kevin: Und die Sachen, wo Rust meckert und C nicht, sehe ich halt als dasselbe Prinzip, nur ein bisschen fundamentaler
12:51:51 kevin: Der Compiler kann mir helfen, korrekten Code zu schreiben, aber korrekten Code zu schreiben macht erstmal mehr Arbeit
12:54:20 vlo: Ja wird mal zeit, dass ich was in Rust programmiere. Ich find die Ideen ja auch super, nur in der Praxis stehen sie mir (oder ich mir selbst dann) im weg. Vielleicht mal meinen MOD-Player oder so - und nicht gleich ein ganzes OS
12:55:50 chmodsayshello: Eventuell strukturiere ich in Rust meinen Code einfach komisch, aber ich finde es auch immer nervig, wenn man geschachtelte Result bzw Option Typen hat
12:57:07 kevin: Geschachtelt im Sinn von Result
12:57:17 vlo: Ich bekenne mich als Assemblerfan! aber auch abhängig vom Anwendungsfall :-D
12:58:20 chmodsayshello: kevin: Wie definierst du in diesem Kontext früher?
12:59:41 chmodsayshello: Und ich meine eher Result
12:59:57 kevin: Hm... Gute Frage. Die hitzigen Diskussionen sind schon ewig her. Vor 15 Jahren oder so?
13:00:46 kevin: Ja, gut, Option in Result kann schon mal vorkommen, das stimmt. Wobei man das Result ja normal als nächsten Schritt gleich wieder wegmacht.
13:02:00 chmodsayshello: Manchmal hat man auch irgendwo einen Option<>, wo man weiß, dass man NIE None bekommen kann... Klar, dafür gibt es unwrap(), aber sowas kann dann ein bisschen unelegant sein.
13:02:21 chmodsayshello: Oder, dass man Variablen unter demselben Namen innerhalb einer Scope neu deklarieren kann.
13:09:38 vlo: Oh ja, das mit dem unwrap hab ich nicht um viel gecheckt... das weiß ich noch^^
13:10:40 chmodsayshello: Eventuell ist es ja wirklich nur meine mentale Unflexibilität, weil ich das mit den Namen nicht gewohnt bin, aber da bin ich schon mehr als einmal drüber gestolpert, dass ich im Kopf noch die Variable mit einem anderem Typ assoziert hatte. Auch wenn ich befürchte, dass das eben wegen Result und Option auch nötig sein kann.
13:16:03 vlo: gegen Assembler spricht ja nur ein Argument: Portabilität :-)
13:17:03 vlo: chmodsayshello: Ja das frage ich mich auch öfters, wenn ich bei ner neuen Programmiersprache anecke...:-)
13:17:29 chmodsayshello: vlo: Mit der mentalen Unflexibilität?
13:18:16 vlo: Ja genau^^
13:18:47 chmodsayshello: Am schlimmsten ist es immer, wenn man eine Sprache vorgesetzt bekommt, deren Arrays nicht bei 0 starten ;)
13:19:29 vlo: gibt es sowas noch? Also ja, war für mich auch neu, als ich von QuickBASIC auf Turbo Pascal gewechselt bin :-D
13:19:40 chmodsayshello: Lua *hust hust*
13:19:48 vlo: also umgekehrt dann, DASS sie mit 0 anfangen
13:21:33 vlo: Ok, von Lua weiß ich, dass es existiert^^
13:21:35 chmodsayshello: Was auch nett ist, ist wenn man in der Uni eine Pseudosprache bekommt, wo man sich selber aussuchen kann, was gültige Idizies sind, also "mein array startet bei 15 und geht bis 23", was immer dann sehr nett ist, wenn man Algorithmen dann mal in echt implementieren möchte, um was auszuprobieren...
13:23:04 chmodsayshello: Dann muss man an sowas bei jedem Zugriff ins Array denken, damit man den Offset richtig hat :D
13:23:46 vlo: Ok, dafür bin ich verumtlich zu wenig Akademiker, um zu verstehen, warum man sowas macht :-)
13:26:53 vlo: Ich kann mich noch an die Wehklagen meines Kumpels erinnern, der Haskell in der Uni verwenden MUSSTE... und das ist ja immerhin eine Sprache, die auch jenseits von Unis verwendet wird
13:27:08 kevin: vlo: Also ich wüsste noch ein paar Argumente mehr gegen Assembler... Lesbarkeit, Wartbarkeit und sowas. Und dass es noch einfacher als in C ist, sich in den Fuß zu schießen.
13:28:34 vlo: kevin: Alles eine Frage der Selbstdisziplin :-). Ja nee, ich gebe dir schon recht. Insbesondere bei großen Projekten. Aber wer mal schnellen AVR-Code programmieren wollte und gesehen hat, was AVR-GCC so produziert, lernt Assembler zu lieben :-)
13:30:11 chmodsayshello: vlo: Bis man aus versehen *irgendwo* eip überschreibt...
13:30:43 vlo: Aber z.B. bei Sachen, die ich ohnehin nativ und pro Arch implementieren muss (z.B. Mutexes, die auf atomare Ops zurückgreifen), nehm ich dann lieber Assembler, als C (oder was anderes) - womöglich dann durchsetzt mit Inline-Assembler
13:32:47 vlo: chmodsayshello: Du meinst die Returnadresse aufm Stack? Das passiert mir bei C genauso leicht^^
13:34:38 chmodsayshello: vlo: Dann hat doch man in der Regel Stack-Cookies?
13:36:12 chmodsayshello: *Stack Canaries
13:38:53 vlo: chmodsayshello: Finde ich persönlich furchtbar. Versteckte Komplexität für ein Security-Problem, das ich entweder als Programmierer lösen muss wenn ich C programmiere oder mir der Compiler abnehmen soll und ich deshalb eben Rust programmiere
13:39:51 vlo: hilft (soweit ich weiß?) nicht gegen ROP?
13:42:03 chmodsayshello: Verdammt, es ist lange her, dass ich mit Return Oriented Programming etwas gemacht habe, damit müsste ich mich jetzt selbst erstmal beschäftigen.
13:52:32 vlo: hab eben nochmal geschaut, hat nichts mit ROP zu tun, da lag ich falsch
13:55:10 chmodsayshello: vlo: Wenn du eine sowieso in einer Hochsprache schreibst, sollte dich die Komplexität auf Assembly-Ebene nicht interessieren. Die Frage ist eher, wie schlimm der Overhead ist.
13:55:50 chmodsayshello: (Ich kenne Leute, die mir nicht zustimmen würden, dass C eine Hochsprache ist :D )
13:59:02 vlo: chmodsayshello: Ich bin da manchmal etwas zu dogmatisch vielleicht... Mich stören erstmal Sachen, die der Compiler ungefragt einbaut... Aus Prinzip :-D
13:59:36 chmodsayshello: vlo: Dann ist Rust doch noch viel schlimmer?
14:00:12 chmodsayshello: Bei einem Rust Programm traue ich mich zumindest nicht mehr mit dem Disassembler ran...
14:00:13 vlo: Wieso, das versucht ja zur Compile-Time fast alles abzufackeln, was schief gehen könnte? Finde ich persönlich den besseren Ansatz
14:01:24 chmodsayshello: vlo: Naja, immer, wenn du auf ein Array benutzt, wird z.B. geschaut, ob der Index in-bounds ist.
14:01:47 chmodsayshello: Zur runtime
14:02:06 vlo: Auch wenn man Sprachkonstrukte wie Iteratoren (oder for each) nimmt?
14:02:37 chmodsayshello: Das weiß ich nicht, ich habe mich ja auch auf array[index] bezogen.
14:11:51 chmodsayshello: Aber, wenn du so argumentierst, kannst du dich auch beschweren, dass der Rust-Compiler die Namen von Symbolen in der Binary radikal verändert.
14:13:01 chmodsayshello: Lustig falls man Rust von Assembly aus ausrufen möchte: no_mangle ist jetzt unsafe.
14:17:23 vlo: gibts da nicht auch sowas wie extern "C"?
14:17:38 chmodsayshello: Meinst du repr(C)?
14:18:07 vlo: Weiß nicht wie das bei Rust heißt, meinte aber sowas gelesen zu haben.
14:18:08 chmodsayshello: Das sagt dem Compiler, dass es structs nicht abändern darf, und die sich so wie in C verhalten sollen.
14:18:48 vlo: nene nicht auf structs bezogen, sondern auf symbols - weil bei c++ hat man das problem ja auch mit dem name mangling
14:18:49 chmodsayshello: Sonst verändert der z.B. munter die Reihenfolge deiner Daten innerhalb des Structs im tatsächlichen Speicher, wenn ich mich richtig entsinne.
14:19:19 vlo: ah zur Cache-Hit-Optimierung oder so?
14:20:15 chmodsayshello: Ich bin schreibe primär C, und bin bei Rust arg unerfahren, da kann ich also nur spekulieren.
14:21:12 kevin: vlo: Sogar wörtlich extern "C"
14:21:59 vlo: Jo geht mir genauso. Habe mehrere Anläufe in Rust gemacht, dann aber nur irgendwas programmiert, dass man halt mal was programmiert hat.
14:22:36 kevin: Deswegen schreibt man ja ein OS, wenn man eine Programmiersprache lernen will ;-)
14:23:59 chmodsayshello: Bei mir gibt es eine Rust User Group, wo sich da monatlich so circa 10 Rust-Devs öffentlich treffen, da geh ich hin und wieder hin, wenn die was angeblich anfängertaugliches machen...
14:24:42 vlo: kevin: hatte kurz mit dem Gedanken gespielt, mein OS in rust zu schreiben, aber dann doch aus Bequemlichkeit C genommen. Das aus der Komfortzone rauskommen fällt mir da echt schwer :-)
14:30:22 chmodsayshello: vlo: Liegt wahrscheinlich daran, dass C eine der ersten Sprachen ist, die man lernt... Ich zumindest habe mal mit Python angefangen und danach halt C.
14:32:17 vlo: C kam bei mir relativ spät, sogar nach Real Mode x86 ASM
14:32:58 vlo: Zu python zwinge ich mich zZt. immer bei Sachen, für die ich früher Perl genommen hätte :-D
14:33:19 chmodsayshello: Ja gut, als 11-Jähriger ist einem Python schon schwer genug gefallen, da muss man nicht noch mit Assembler anfangen xD
14:34:01 vlo: Ja, bei mir war QuickBASIC die Einstiegsdroge
14:34:24 vlo: (bin 44, muss man dazusagen :-D)
14:34:54 chmodsayshello: Das hätte man sich spätestens jetzt herleiten können...
14:34:59 vlo: lol
14:35:41 chmodsayshello: BASIC kennt man heutzutage ja nur noch als Erwähnung am Rande...
14:40:16 chmodsayshello: Zumindest könnte ich ein BASIC Programm nicht als solches benennen, wenn ich es sehen würde.
14:58:18 kevin: Die Jugend von heute... ;-)
14:58:49 kevin: Bei war es erst BASIC, dann Pascal und dann irgendwann mal C
15:04:52 vlo: Ähnlich wie bei mir. Vermutlich werden wir aber von denen belächelt, die in ihre PDP-11 Programme mittels Kippschalter einegegeben haben d-D
15:04:56 vlo: :-D
15:06:29 chmodsayshello: Real programmers use a magnetized needle and a steady hand
15:09:52 vlo: Magnetisierte Oberflächen als Speichermedium ist aber schon ganz schön progressiv :-)
15:11:12 chmodsayshello: Es gibt schon Menschen, die *zuhause* selber eine funktionierende Diskette gebaut haben...
15:12:01 chmodsayshello: Naja, zumindest waren am Ende Sektoren klar erkennbar
15:13:22 vlo: da bin ich gespannt, wann der Erste eine einigermaßen gut klingene Vinylplatte aufm 3D-Drucker rauslässt :-D
15:13:42 chmodsayshello: Bring
15:13:46 chmodsayshello: UUps
15:14:10 chmodsayshello: *Bring mich nicht auf komische Gedanken, im Keller habe ich noch irgendwo einen Plattenspieler
15:15:04 vlo: dann aber auch den Code sharen für wav2stl :-)
15:15:33 chmodsayshello: Werde ich definitiv nicht machen, das ganze Filament für die Fehlversuche D:
15:19:11 chmodsayshello: Und ob PLA dafür so gut geeignet ist...
15:20:37 vlo: Irgendwann macht das wer, wenn die Drucker ausrechend präzise sind (wenn sie das nicht jetzt schon sind... bin da nicht so drin in der Materie)
15:21:44 chmodsayshello: Ich habe gerade nachgeschaut, das hat schon jemand 2013 gemacht, der Klang ist aber nur akzeptabel.
15:22:18 vlo: Akzeptabel ist jetzt dehnbar... Vermutlich klingt so mancher Technotrack besser so :-D
15:22:49 chmodsayshello: Man erkennt Melodie und versteht halbwegs den Text
15:24:20 vlo: https://blog.prusa3d.com/printables_bands_94865/ :-O
15:27:01 kevin: chmodsayshello: Du meinst, für Wiedergabe mit dem PC-Speaker ausreichend? ;-)
15:27:31 chmodsayshello: vlo: Ich wette, dass wenn ich das Drucken würde der Klang auch nur so "naja" wäre
15:28:44 vlo: kevin: Erinnert mich, wie ich früher MOD-Files übern PC-Speaker "angehört" habe :-D. Bevor ich mir ne Soundkarte leisten konnte
15:52:38 Biolunar joined the channel
18:53:40 Paddy joined the channel
19:57:35 Biolunar joined the channel
22:19:38 vlo joined the channel