Beiträge von Volker_D

    Das Problem beim Linux-Umstieg sind für mich nicht die 90% an normalen Arbeiten, sondern die restlichen 10%. Beispielsweise wenn ich Fotos mit Photoshop bearbeiten will und 20 Jahre Rückschritt auf ein Programm ohne fortschrittliche automatische Werkzeuge keine Option ist.

    Letztlich bin ich deshalb immer wieder zurück migriert, weil die dadurch nötige Pflege zweier Betriebssysteme unsinnig ist.

    Ja, leider. Kann ich vollkommen nachvollziehen (Wobei ich privat zu 100% mit Linux auskomme. Beruflich nutze ich dann aber auch Windows, ChomeOS, MacOS, ...).

    Der Hauptursache ist leider, dass viele Linuxnutzer zu geizig sind die Programmierer zu bezahlen und alles kostenlos haben möchten. Und für die vielen letzen 10% (viel, weil es nur 10% von einer Person ist. Aber die 90% nutzen im Grunde fast alle, während die 10% bei vielen Leuten verschieden sind. Auf alle betrachtet also weit mehr als 10%) finden sich dann keine Leute, die das bezahlen und/oder programmieren.

    Guckt ihr z.Z. die Videos vom 38c3?

    Es geht zwar eigentlich um ein ganz anderes Thema, aber wenn ihr euch z.B. "Knäste hacken" anguckt, dann werdet ihr sehen, dass es immer auf selbe hinausläuft: Wenn man nichts/wenig bezahlt, dann kann man nicht viel erwarten.

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne deine Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklärst du dich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    Nicht ganz. Beliebteres Angriffsziel ist Windows vor allem durch seine Konstruktion. Innerhalb von Linux laufen alle Prozesse in abgeschotteten Prozeduren. Unter Ubuntu nun sogar in abgeschotteten Paketen (Flatpacks). Da wäre es unglaublich aufwändig (und wenig Erfolg versprechend) einen Virus zu programmieren.

    Das stimmt so leider nicht ganz. Ja, es läd shared libaries (so Dateien) aus dem Flatpak oder AppImage oder ... und nicht vom Betriebsystem. Ist insofern "abgeschottet".

    Aber:

    a) Das macht eigentlich das ganze Konzept von shared libaries ad absurum. Es ging ja ursprünglich darum, dass alle die gleichen Dateien nutzen, damit man Resourcen sparen kann (Festlatte, Arbeitsspeicher, ...) und es nur an einer stelle Updaten muss.

    und viel schlimmer:

    b) Linux ist im Vergleich zu Android oder iOS total unsicher. Linuxanwender und Windowsanwender müssen dem Programmierer der Software total vertrauen. Da ist nicht viel abgeschottet. Ich kann als Programmierer z.B. auf die Webcam zugreifen ohne das da vorher nach einer Berechtigung gefragt wird wie man das von Android oder iOS kennt. Da ist noch keine Sicherheitsebene im Betriebsystem dazwischen. Ebenso die Festplatte. Da habe ich den vollen Zugriff auf das komplette Homeverzeichnis und kann alle Daten, die der User sehen kann, auch sehen und lesen.

    Ich könnte technisch also z.B. einen Rechentrainer für das kleine 1x1 programmieren und zum Download für Windows und Linux anbieten und während der Benutzung durchsuche das Programm in Ruhe die Festplatte und sendet wichtige Daten an einen Server weiter. Das ist echt nicht schwer. Wenn man als Windows oder Linux Nutzer dann das Programm nutzt und etwas das kleine 1x1 übt und nicht zufällig die Plattenaktivität und Netzwerkauslastung kontrolliert, dann hat man keine Chance das mitzubekommen. Da nutzt Flatpak abolut gar nichts. Da kommt weder von Linux noch Windows eine Warnung, wie man die bei Android oder iOS hat, dass dort eine App auf andere Daten zugreifen möchte.

    Ja, KI (bzw. das nutzen der KI-Bibliotheken; die Bibliotheken selbst sind oft in C geschrieben) und grafische Aufbereitung von Daten in der Wissenschaft z.B. mit Mathplotlib sind Bereiche, in denen Python bevorzugt genutzt wird.

    Ich werfe Schüler ja nicht (mehr) ins kalte Wasser. In den letzten Jahren habe ich immer zuerst Scratch gemacht.

    Wobei "c++ ist old school" so auch nicht stimmt. C++ entwickelt sich immer noch sehr aktiv weiter. Datentypen müssen nicht mehr zwingend vorgegeben werden. (Stichwort "auto". Sinn und Einsatzbereich ist aber ganz anders als bei Python. Man kann jetzt auch lambda-Ausdrücke schreiben, ...). Ich gucke mir auf YouTube schon mal ganz gerne die Vorträge c++ Compilerentwicklern an. Es ist schon interessant zu sehen in wie unterschiedliche Richtungen sie die Sprache weiterentwickeln möchten und warum sie einige "modernere" Techniken nicht aufnehmen wollen oder können bzw. warum sie schon mehrfach einige "moderne" Features aus aktuellen Versionen wieder entfernt haben.

    Habt ihr eigentlich auch Erfahrungen in der Softwareentwicklung, insbesondere in Bereichen wie Design Pattern und UML?

    Zu "Design Pattern" und "UML": Im Grunde nur das, was so auch in Fachbüchern steht. Aber "richtig" genutzt: nein.

    Zu "Softwareentwicklung". Ja. Ich programmiere Software, die wirklich im Berufsleben von anderen Leuten produktiv angewendet wird. Also nicht so ein Hobby "Ich programmiere mal Taschenrechner oder Sodoku".

    Schwerpunkt bei mir C++/Qt. GUI, welche NP Probleme lösen kann. Daten werden u.a. in einer SQL Datenbank gespeichert. Daten werden aus verschiedensten Formaten gelesen (xml, csv, ...) und in verschiedensten Formaten exportiert (html, cvs, ...). (Da ist sogar etwas css, JavaScript und LaTeX dabei. Aber da bin ich nur auf Anfängerniveau). Ich kompiliere die Software für Windows, MacOS, Linux, x86, ARM. WebAssembly habe ich mal ausprobiert, geht aber noch nicht gut genug. Versuche ich mal in ein paar Jahren nochmal.

    Eine gute Anlaufstelle für Design Pattern und UML kann ich nicht nennen. Für Qt ist definitiv das offizielle Qt Forum die erste Anlaufstelle bei Fragen (Nach der sehr guten Dokumentation, die (fast) alle Qt Dinge sehr gut vorstellt.).

    Ein Irrglaube ist ja, dass man in C++ mit "Pointer inklusive deren Dereferenzierung" arbeiten muss.

    Man kann komplette c++ GUI Anwendungen schreiben, ohne damit überhaupt direkt in Berührung zu kommen und ohne das zwingend verstehen zu müssen.

    Neuen Code würde ich nicht in C++ schreiben. Nicht ganz kleine Klitschen wie Google verabschieden sich davon, weil die Speichersicherheit nicht garantiert werden kann.

    Quelle: Google Blog

    Didaktisch halte ich C++ aber auch für Schüler für eher ungeeignet. In dem Zusammenhang sind besonders Pointer inklusive deren Dereferenzierung für Neueinsteiger eher im Bereich "Raketenwissenschaften" anzusiedeln.

    Warum zitiert du nicht vollständig?

    "A large-scale rewrite of all existing C++ code into a different, memory-safe language appears very difficult and will likely remain impractical."

    Es gibt eben Bereiche, da gibt es kaum eine Alternative. Zum Beispiel bei den Programmen, die ich schreibe. Da kommt es in erster Linie auf Geschwindikeit an und in zweiter Linie brauche ich ein GUI.

    Im Bereich Speichersicherheit und Geschwindigkeit würde sich für mich zum Beispiel Rust anbieten. Praktisch nutzen kann ich es aber nicht, weil es für Rust noch keine guten Bibliotheken gibt, mit deinen man ein GUI schreiben kann. Es gibt zwar andere Sprachen, die das bieten, dort mangelt es dann aber oft an Geschwindigkeit, Speichersicherheit oder die Programme lassen sich nicht auf den "großen" Betriebsystemen kompilieren.

    Ich würde daruf tippen, dass in den nächsten 10 bis 20 Jahren evtl. Rust erstmal die meisten C Programme ersetzen wird. Und dann, evtl. in 30 bis 40 Jahren die C++ Programme. Das wird dauern. C/C++ ist und bleibt gute Grundlage für die nächsten Jahre.

    Es gibt Steigerungen. Ich denke da an Forth, Prolog oder Lisp.

    Dann hätte ich eher Rust als Steigerung genannt.

    c++ ist definitiv meine Lieblingssprache. In der Sek. I komme ich aber im Grunde nie bis zur Objektorientierung. Evtl. mache ich die "Basics" einfach zu ausführlich? Ich habe dieses Jahr mal wieder vor mit Arduinos zu arbeiten. Hat den schönen motivierenden Teil Technik/Physik gleich mit dabei. Macht es aber auch wieder schwieriger, weil die Schüler auch mit der Physik "kämpfen" müssen. Mal gucken wie es dieses Jahr laufen wird.

    PS: Beim ersten Satz habe ich einen kurzen Moment überlegt was genau gemeint ist. a) Es steht noch eine Leistung aus und egal was ich mache, ich habe es geschafft. Oder b) Es sind alle Leistungen abgegeben worden und alle waren unzureichend.

    Manchmal ändern sich Begriffe auch total. Da werden "postitive" Wörter plötzlich "negativ" und umgekehrt.

    Selbst in der Fachsprache Mathe ändern sich Begriffe. Wenn man vor ~100 Jahren in Mathe von "rationalen" Zahlen gesprochen hat, dann waren damit (oft/immer/teilweise?) nur "ganze" Zahlen gemeint und nicht das, was wir heute unter "rationale Zahlen" verstehen.

    Wenn es nur im Browser dargestellt werden soll und die Bögen mittig unter den Silben sein sollen, dann könnte man es mit MathML als "Formel" setzen. Vorteil: Keine zwei Zeilen und proportionale Schrift möglich. Nachteil: Man kann das nicht in seine Textverarbeitung kopieren (kommt evtl. noch irgendwann) und Nutzer mit veralteten Webbrwosern können es nicht richtig sehen.

    hmm... Ich befürchte, dass kann dann nur über 2 Zeilen und nicht proportionaler Schrift gelöst werden. Dafür gibt es meines Wissens nach ansonsten keine Möglichkeit beim Schreiben. Evtl., wenn man es als mathematische Formel in TeX setzt, aber in HTML kenne ich dafür gerade keine Möglichkeit.

    Und farbig dann so:

    Ge͜schich͜ten

    Oder eine nicht proportionale Schrift nehmen und dann in einer zweiten Zeile darunter die Bögen mit anderen Zeichen setzen. Dann sieht es vermutlich etwas schicker aus, aber hat als Nachteil die zwei Zeilen und nicht proportionale Schrift.

    Nein, warum sollte man das als erstes lesen.

    Ich muss zugeben, dass ich dort auch zuerst nur "schich" gelesen haben. Aber ich denke das machen evtl. nur "Schnellleser". "Normale" Leser bzw. Anfänger fangen vermutlich bei dem ersten Buchstaben an. Grund dafür ist einfach die fabliche Hervorhebung. Ich lese üblicherweise nicht mehr Buchstabe für Buchstabe, sondern "sehe" komplette Wörter und Sätze. Einzelne falsche Buchstaben oder Silben fallen mir oft gar nicht auf.

    Interessantes Tool. Ich frage mich gerade, wie die Silbenerkennung programmiert wurde. Ich dachte erst, das Programm prüft einfach alle mögliche Silben. Aber es scheint irgendwie anders zu gehen. Wie genau?

    (Ich habe spaßeshalber nämlich einfach irgendeinen unsinn eingegeben und war überrascht, welche Silben da so gefunden werden). (Wenn ich z.B. folgendes eingebe: vfklagoagkdfhzatüoihnvfkoäghatüoiwehägoheruoihbgvföldkhfgigweuaiofnkgvjbhipsdyfujbnvöoghföo)

    Ich hatte es die Woche angefangen, aber dann abgebrochen. Da waren wieder so ein paar Formulierunge bei, bei denen ich nicht wußte wie es gemeint war. Je nachdem hätte ich das genaue Gegenteil ausgewählt. Habe daher die Umfrage abgebrochen, weil die Fragestellung, (insbesondere für Programmierer!) einfach nicht eindeutig genug ist.

    Wie Untis mit den "Min resting hours" umgehen kann weiß ich nicht. Kann Untis das mitlerweile? Ich benutze ein anderes Programm dafür. Bei dem Programm ist es so, das mit dem Datum absolut kein Problem ist, weil es sich auf die Stunden im Plan bezieht. Sprich, wenn mein Stundenplan z.B. Stunden von 08:00 Uhr bis 22:00 Uhr hat und ich sage, dass "Min resting hours" 1 sein soll, dann belegt es maximal die letzte Stunde ODER die erste Stunde am Folgetag. Aber nicht beides. Effektiv hat man damit dann 10 "echte" Stunden + 1 Schulstunde frei. Macht man dass mit dem Wert 2, dann hat man in dem Fall mindestens 10 "echte" Stunden + 2 Schulstunden + Pause zwischen den Stunden frei.

    Naja, gut ist immer relativ. Vor 20 Jahren dachten viele Leute auch, dass sie einen sehr gute Computer haben. Wenn man denen heute so eine Kiste hinstellen würde, dann würde von denen keiner mehr von sehr gut sprechen. Man erkennt immer erst den Unterschied, wenn man sich mal die Alternative angeguckt hat. Damals dachten auch alle Untis macht gute Pläne, bis ich den mal die Pläne gemacht habe. Danach fand die Leute Untis gar nicht mal so toll (und dass, obwohl sich viele Leute mit z.T. jahrelanger Erfahrung mit Untis gegen mich angetreten sind.)

    Das ist manchmal zwangsläufig so, wenn die vielfachen Einschränkungen sonst dafür sorgen, dass es gar keine Lösung geben würde. Untis liefert dann halt dennoch Lösungen, die zumindest nahe an den Vorgaben sind, anstatt schlicht keine mehr zu liefern.

    Ja, dass ist mir auch klar. Das Problem ist aber, dass man so nicht eindeutig erkennen kann woran es liegt und wie man es lösen kann. Es ist auch nur eine Variante von sehr vielen. Insofern keine gute Lösung.

    Wesentlich besser ist es, wenn man schon vorher sehen kann, dass es nicht geht und man sich schon vorher Gedanken macht wie das Problem zu lösen ist. Ist gibt ja nicht nur eine Möglichkeit das Probelm zu umgehen. Untis wählt dann einfach willkürlich. Besser ist es, wenn der Mensch das Problem versteht und dann entscheidet, welche von den vielen Alternativen eine gute Möglichkeit zur Verhinderung ist.

    Und das ist der große Nachteil bei Untis. Das rechnet dann über viele Stunden und liefert einem eine Lösung mit einem dicken Konflikt, den es irgendwie willkühlich umgangen hat. Als Stundenplaner kann man dann nur sagen "ja, ist so, weil Untis das nicht besser konnte". Eine schlechte und sehr lang dauernde Lösungsmöglichkeit.

    Besser ist es, wenn das Stundenplanungsprogramm schon möglichst früh (am besten sofort) sagt, dass es nicht lösbar ist und man sich dann überlegt warum das so ist. Dann kann man gezielt das Problem umgehen. Vorteil: Das berechnen der Lösung ist so viel viel schneller, weil der Computer nicht mehr versucht über Stunden etwas unlösbares zu lösen und/oder einfach irgendwie willkürlich das Problem löst. Vorteil: Die Stundenplanung ist nicht nur viel schneller, sondern der Plan ist auch noch besser und man kann gezielt begründen, warum etwas unmöglich war und warum es wie gelöst wurde. Spart enorm viel Zeit, ist nachvollziehbar und besser.

Werbung