Warum ist Geld wichtiger als Leistung?

6 Antworten

Kommt halt drauf an, was das für ein Programm ist, und wer das macht.

Wenn du ein Programm schreibst, wo fast nichts passiert, und du meistens auf irgendwas wartest, dann ist die Performance egal. Wichtig ist nur, dass das Programm keine Fehler macht. Das Selbe gilt für Code, der sowieso sehr schnell läuft, und andere Teile des Programms sehr viel mehr Leistung brauchen. Ein Beispiel dafür wäre Youtube. Das ist in Python geschrieben - obwohl Python langsam ist. Der Grund ist, dass das nicht weiter wichtig ist, wie lange da etwas dauert, wenn ein Nutzer irgendwo drauf drückt. Der Code dafür muss nicht effizient sein, weil das gemessen an der Rechenleistung, die insgesamt notwendig ist, um ein Video zu streamen, eh fast nichts ist. Ein anderes Beispiel wäre Machine-Learning. Das wird auch meistens in Python gemacht, der Teil, der richtig viel Leistung braucht, aber in C++.

In anderen Fällen macht der Chef so viel Druck, dass das fertig werden muss, da ist dann auch an den relevanten Stellen keine Zeit mehr für Optimierungen. Oft wird da dann aber auch an der Security gespart. Ist dann halt scheiße für den Nutzer, aber den interessiert es auch oft nicht, weil er gewöhnt ist, so einen Schrott vorgesetzt zu bekommen. Wie z.B. bei so ziemlich allem von Microsoft.

Woher ich das weiß:Studium / Ausbildung – Informatik
Finalda77 
Fragesteller
 10.04.2024, 21:42

Also bei mir laggt Youtube schrecklich und friert immer ein.

0
Lamanini  10.04.2024, 22:17
@Finalda77

An deiner Internetverbindung oder der Leistung deines PCs.

Googles Server haben genug Power.

1
Finalda77 
Fragesteller
 10.04.2024, 22:18
@Lamanini

Ne meine Internet Verbindung liegt es nicht, wieso können wir die Leistung nicht verdoppeln?

0
Lamanini  10.04.2024, 22:20
@Finalda77

Es wird an dir liegen. Youtubes Serverfarmen sind unglaublich mächtig.

Wenn man einfach nur „Leistung verdoppeln“ sagen könnte, klar.

Aber in Realität kostet das exponentiell mehr, sorgt dafür das die nächsten Änderungen sehr viel mehr kosten, und macht auch oft Software fehleranfälliger.

Das lohnt dann irgendwann nicht mehr für das Unternehmen.

0
Finalda77 
Fragesteller
 10.04.2024, 22:21
@Lamanini
und macht auch oft Software fehleranfälliger.

Warum ist schneller Fehleranfälliger?

Und ich denke es lohnt sich schon wenn man eine bessere Videoqualität erhällt

0
Lamanini  10.04.2024, 22:25
@Finalda77

Normalerweise nimmst du bestimmte Tradeoffs in Kauf, um die Wartbarkeit und Erweiterbarkeit deiner Software zu erhöhen. 5% weniger Leistung, dafür 15% einfachere Weiterentwicklung.

Wenn du es effizienter bauen willst, musst du oft so bauen, dass der Computer damit besser umgehen kann, Menschen es aber sehr viel schwerer haben es zu verstehen.

Das heißt, dass die Entwickler nächstes mal eher Fehler ausversehen reinbringen, und neue Anpassungen einfach länger dauern und mehr Entwickler brauchen.

Das finden Unternehmen nicht so schön.

0
Waldelb3  10.04.2024, 22:34
@Lamanini
Und ich denke es lohnt sich schon wenn man eine bessere Videoqualität erhällt

Nehmen wir mal an, dass die doppelt so viel Geld ausgeben, damit das 15% schneller wird.

Schauen jetzt doppelt so viele Leute Youtube?

1
Finalda77 
Fragesteller
 10.04.2024, 22:36
@Lamanini

Mach ein konkretes Beispiel mal bitte, man redet immer das blaue vom Himmel

0
Finalda77 
Fragesteller
 10.04.2024, 22:36
@Waldelb3

Warum glaubst du das es doppelt so viel kostet? Erklär das mal bitte

0
Waldelb3  10.04.2024, 22:39
@Finalda77

Weil Hardware ab einem bestimmten Punkt einfach nicht mehr gut skaliert.

0
Waldelb3  10.04.2024, 22:42
@Finalda77

Also in dem Moment, wo du die schnellste Server-CPU hast, kriegst du nicht magisch mehr Leistung, indem du eine zweite kaufst. Du musst dann irgendwie schauen, dass du jede Anfrage irgendwie parallelisiert kriegst. Und das geht nicht unbedingt gut.

0
Waldelb3  10.04.2024, 22:47
@Finalda77

Und selbst wenn die mit 50% mehr Ausgaben sogar 50% schneller werden würden (was ich für ausgeschlossen halte) werden trotzdem nicht 50% mehr Leute Youtube schauen. Also das lohnt sich dann immer noch nicht.

0
Finalda77 
Fragesteller
 10.04.2024, 22:51
@Waldelb3

Aber das eäre ja neue Hardware, ich sprach von der Client

0
Waldelb3  10.04.2024, 23:27
@Finalda77

Ach so. Das wäre dann vielleicht 10 mal so teuer und 0,5% schneller.

0
Finalda77 
Fragesteller
 10.04.2024, 23:29
@Waldelb3

Woher hast du diese Werte, kannst du das aufzeigen

0
Waldelb3  10.04.2024, 23:41
@Finalda77

Besseren PC kaufen. Und falls du Windows nutzt, auf Linux wechseln

0
Finalda77 
Fragesteller
 10.04.2024, 23:42
@Waldelb3

Das macht aber Javascript garnicht schneller

0
Waldelb3  10.04.2024, 23:45
@Finalda77

Das macht die Ausführung von JavaScript auf deinem PC schneller.

0
Finalda77 
Fragesteller
 10.04.2024, 23:46
@Waldelb3

Nein macht Sie nicht, wie stellst du dir das vor?

0
Waldelb3  10.04.2024, 23:49
@Finalda77
  • Schnellere Hardware führt den selben Code schneller aus.
  • JavaScript auf Linux läuft doppelt so schnell wie auf Windows.
0
Finalda77 
Fragesteller
 10.04.2024, 23:52
@Waldelb3

Und wenn man das Javascript einfach von sich aus schneller macht?

0
Waldelb3  10.04.2024, 23:54
@Finalda77

Das ist ja das, was Linux tut. JavaScript ist auf Linux von sich aus schneller, weil das OS besser optimiert ist.

0
Finalda77 
Fragesteller
 11.04.2024, 00:06
@Waldelb3

Aber verglichen zu anderen scripts ist es dann doch immernoch langsamer

0
Waldelb3  11.04.2024, 00:13
@Finalda77

Keine Ahnung. JavaScript ist halt eine Script-Sprache - ich würde eher nicht erwarten, dass sich das großartig von anderen Script-Sprachen unterscheidet. Es wird halt nicht compiliert, sondern läuft in einem Interpreter.

0
...ein Programm muss doch immer am Limit seiner Leistung laufen.

Das ist Quatsch...

Ich weiß nicht auf welche Art von Software/Programme Du Deine These beziehst .

Gewöhnlich geht es um optimale Funktionalität.

Wenn es um die Steuerung einer Industrieanlagen geht, macht es zB. keinen Sinn die zeitliche Granularität der Mess-/Steuerfunktionen an den oberen Grenzen der Hardware zu implementieren. Stattdessen verwendet man möglichst störunanfällige Timings und redundante Sensorik/Aktoren.

Wenn ich es mal grob schätze, drehten sich ca. 70% des Codes, der von mir entwickelten Steuerung ausschließlich um Fehlererkennung/-behandlung

Was spielen spielen ein paar 10...100Tausend für eine Rolle, wenn durch einen Hard-/SoftwareFehler eine Millonenteure Produktionsanlage zerstört wird? (Mal ganz abgesehen vom Produktionsausfallkosten bis zu Lieferanten/ Kunden)

Du als "Kleinstanwender" siehst lediglich, wenn irgendwo in Deinem popeligen 50€-PipifaxGame mal irgendwo die Framerate etwas wackelt, und jammerst.

Der größte Teil der Programme, welche unsere moderne Welt steuern, wird von niemandem wahrgenommen und ist auf möglichst hohe Unanfälligkeit optimiert.

Wenn Du ihn wahrnimmst, hat irgendwer Mist gebaut oder am falschen Ende gespart.

Finalda77 
Fragesteller
 10.04.2024, 22:16

Also Ich fand Langsamere Software auch immer störanfälliger.

Ich beziehe mich auf Betriebssysteme, Treiber und Spiele

0
Erzesel  10.04.2024, 22:46
@Finalda77
Also Ich fand Langsamere Software auch immer störanfälliger.

Warum?

...Weil Du , um diese Software mit maximaler Leistung zu nutzen, das GesammtSystem mit diversen Tuning/Tweaks zwar ans Limit brachtest. Dies aber auch insgesammt instabiler wurde???

...und natürlich ist der Softwareentwickler der Sündenbock, weil er Deinem ureigenen Murks keine Rechnung trug...

0
Finalda77 
Fragesteller
 10.04.2024, 22:50
@Erzesel
...Weil Du , um diese Software mit maximaler Leistung zu nutzen, das GesammtSystem mit diversen Tuning/Tweaks zwar ans Limit brachtest. Dies aber auch insgesammt instabiler wurde???

Nein

...und natürlich ist der Softwareentwickler der Sündenbock, weil er Deinem ureigenen Murks keine Rechnung trug...

Verstehe ich nicht?

0

Die Leut wollen einfach ihr Programm haben, solange alle Funktionen klappen und es schnell geht basta, Qualität, Bugs fixen und optimieren ist halt da nicht drin.

Obwohl es oftmals nicht Schaden würde, genau das zu machen.

Der User ist der beta-Tester. Und übers Internet können Bugfixes jederzeit veröffentlicht werden.

Daß tausende von Usern tausende von Stunden dadurch verlieren, interessiert den Software-Anbieter nicht. Hauptsache sein Programmierer war ne Stunde früher fertig.

Daß die Software langsamer läuft, weil sie nicht optimiert ist, tja, das ist auch das Problem des Users - kann sich ja einen schnelleren PC kaufen.

Ich finde das nicht gut, aber so ist es billig.

Woher ich das weiß:eigene Erfahrung
Finalda77 
Fragesteller
 10.04.2024, 21:01
Bugfixes jederzeit veröffentlicht werden.

Gepaart mit neuen Features und Bugs, was dazu führt das heutzutage sehr viel Software quasi nie finale Versionen erziehlt und instabil läuft

kann sich ja einen schnelleren PC kaufen.

Und dann wird dem gehorsamen Nutzer eigeredet es würde an seiner Rechenleistung liegen

1
Lamanini  10.04.2024, 21:16
Hauptsache sein Programmierer war ne Stunde früher fertig

Du stellst dir Softwareentwicklung echt komisch vor.

1
hartmutschoen  10.04.2024, 21:20
@Lamanini

Heutzutage scheint das komisch zu sein.

Zu meiner Programmiererzeit war es jedenfalls anders.

0
Lamanini  10.04.2024, 22:14
@hartmutschoen

Dann solltest du auch wissen, dass man mit zu viel Optimierung seinen Code extrem schwer zu warten macht.

1
Erzesel  10.04.2024, 22:38

Ich bin stets interessiert an der seltsamen Vorstellungen von Endverbrauchern. 😏

Der größte Teil meiner Entwicklungsarbeit drehte sich darum idiotisches Verhalten von Bedienpersonal zu kompensieren.

Es wäre der feuchte Traum eines Programmierers einfach über ein Eingabefeld zu schreiben: "Gib einen Wert zwischen 1 und 10 ein" und der Nutzer befolgt dies brav.... Statt dessen muss jede Menge Prüfungen eingebaut werden um unsinnige Handhabung abzufangen.

Der User ist der beta-Tester

Wer sonst?

Kein Entwickler kann alle Systemkonfigurationen eines frei Zusammenstellungen Systems vorhersehen , geschweige denn alle Testumgebung simulieren.

Gerade Gamersysteme entpuppen sich als Bastelkisten, mit offt sehr eigenwilligen bis grenzwertigen Konfigurationen. Es sind in der Regel nicht die Standardsysteme, mit einem "naturbelassenen" Betriebssystem, deren Nutzer sich als "Betatester" fühlen. Ein Normalnutzer installiert eine Software auf seinem Normalsystem und wird in den nächsten 10 Jahren nie einer Fehlfunktion begegnen.

1

Eine halbe Sekunde kürzere Ladezeiten ist natürlich cool. 30.000€ für eine halbe Sekunde kürzere Ladezeiten ist nicht mehr so cool.

Woher ich das weiß:Berufserfahrung – Softwareentwicklerin
Finalda77 
Fragesteller
 10.04.2024, 21:36

Warum nicht?

0
Lamanini  10.04.2024, 22:12
@Finalda77

Würdest du es zahlen, aus eigener Tasche? Oder nur die anderen?

0
Finalda77 
Fragesteller
 10.04.2024, 22:19
@Lamanini

Ich könnte es schlichtweg nicht. Aber man sollte meinen es währe eigentlich selbstverständlich. Stell dir mal vor jedes Frame benötigt 0,01 sekunden mehr, da hast du ne Menge lag schon

0
Lamanini  10.04.2024, 22:22
@Finalda77

Wärst du such bereit, dafür mehr Bugs zu haben?

Ich denk mir auch oft auf der Arbeit, dass man etwas schöner lösen könnte mit etwas mehr Zeit.

Aber wenn die leicht bessere Lösung doppelt so teuer ist, dann will man das halt oft nicht. Kosten und Nutzen.

0
Finalda77 
Fragesteller
 10.04.2024, 22:35
@Lamanini

Welche bugs denn? Bei mir war schnellere Software auch mit weniger bugs

0
Lamanini  10.04.2024, 22:39
@Finalda77

Wie welche Bugs? Die haben nicht eine bestimmte Farbe oder so.

Stell dir mal vor, du hättest eine Ikea-Anleitung. Und jetzt stellst du das in nur noch 1/3 der Schaubilder dar. Das wird viel anstrengender zu lesen, auch wenn es theoretisch korrekt wär. Du machst Fehler beim Bauen.

1
Finalda77 
Fragesteller
 10.04.2024, 22:49
@Lamanini

Wie bitte soll ich mir das jetzt bei einem Programm vorstellen?

0
Lamanini  10.04.2024, 22:55
@Finalda77

Naja, stell dir vor, wir machen Mathe nicht mehr einzeln, sondern wir rechnen jetzt mit zusammengesetzten Zahlen, die mit speziellen CPU-Instruktionen geladen, massenhaft verrechnet und dann wieder entwirrt werden.

Wir sparen uns damit ein bisschen Zeit, aber aus einem einfachen X + Y werden 15 Zeilen. Da macht man vielleicht Fehler.

Stell dir vor, wir finden eine Optimierungsmöglichkeit im Design. Löschen wir jetzt alles, was wir dazu haben, und fangen nochmal komplett von vorn an? Sagen wir mal 100k Euro, einfach weg?

Setzen wir ein Research and Development Team darauf an, das Protokoll leicht zu optimieren, was verwendet wird für die Kommunikation?

Gibt es anstatt einem Dienst jetzt vielleicht 100 kleinere, welche zwar zusammen schneller sind, aber dafür enorm viel Orchestration brauchen, wofür wir erstmal einen ganzen Orchestrator bauen müssen?

Alles möglich. Aber dann bringt unser Produkt nicht mehr Geld ein, sondern wir verlieren Geld. Welche Firma kann so überleben?

0
Finalda77 
Fragesteller
 10.04.2024, 23:02
@Lamanini

Komischerweise wird so etwas ständig gemacht, nur eben nicht schneller aber das scheint niemanden was zu kosten.

Kannst du ein Beispiel mit Programmcode machen?

0
Lamanini  10.04.2024, 23:08
@Finalda77

Komischerweise hast du darin keine Qualifikation, hast noch nie an einem enormen Softwareprojekt mitgearbeitet, aber weißt es besser, oder?

Firmen wollen dich nicht nur einfach ärgern. Firmen wollen Geld. Das heißt, man findet das Beste Preis-Leistungverhältnis.

Vielleicht hilft dir ja dieses Video.

https://youtu.be/tKbV6BpH-C8

0
Finalda77 
Fragesteller
 10.04.2024, 23:10
@Lamanini

Premature Optimization ist das beste was es gibt, jeder sollte es machen. Aber du hast noch kein Code Beispiel aufgeführt

0
Lamanini  10.04.2024, 23:12
@Finalda77

Klar kann ich mich jetzt hinsetzen und dir verschiedene Beispiele bauen.

Dann zahlst du aber auch meinen normalen Stundensatz, 120€ die Stunde.

Ist es dir das wert? Nein? Siehst du?Guck dir das Video doch wenigstens an, bevor du es verwirfst.

Vielleicht würdest du dann realisieren, dass, wenn Minecraft anders gebaut worden wäre, niemand es je gespielt hätte.

0
Finalda77 
Fragesteller
 10.04.2024, 23:17
@Lamanini

Warum wäre es nie gespielt wurden? Das sind alles so zusammenhangslose Aussagen. Im Video ging es nur um vorzeitige Optimierung, was sehr wichtig ist? Warum willst du bezahlt werden für ein Beispiel?

0
Lamanini  10.04.2024, 23:22
@Finalda77

Setzt du dich jetzt Stundenlang für mich kostenlos hin?

0