Hat Gunter Dueck Recht ...

[quote='kadauz',index.php?page=Thread&postID=768037#post768037]
Gegen die Reduzierung aufs Wesentliche habe ich allerdings nichts. Ich bin auch davon überzeugt, dass wenn Windows 7 ganz neu geschrieben werden würde, es wesentlich performanter wäre. Da liegen wohl einige Codeleichen irgendwo vergraben. [/quote]

Und wenn die Katze ein Pferd wäre würde sie den Baum hochreiten ;) Wieso Windows 7 neu erfinden, läuft bei mir zumindest perfomanter als XP. Ich bin angenhem überrascht. Mehr als die techn. Diskussion um effizienten Code steht doch eigentlich die Frage im Vordergrund: Was will und braucht der User? Ich finds toll das es neben Profi Sprachen wie C++ auch einfachere nicht so effiziente Programmiersprachen entwickelt wurden. Ohne dies wäre die OSS Bewegung wohl garnicht möglich geworden, man hätte ein reines Linux OS von einer handvoll Experten aber ohne vielfältige Zusatzsoftware wie bei MS. Man stelle sich vor jede FF Addon müsste in C++ programmiert werden. Die Leistung der heutigen Personal Computer übertrifft ja schon das was viele User wirklich brauchen, darum sind ja Netbooks so erfolgreich, nohc höhrere Videoauflösung und dergleichen braucht eigentlich keiner bei einem PC. Und warum zig versch. Prozessoren wenn Mensch eh nicht multitasking fähig ist und ncht mehr als 3 Programme gleichzeitig nutzen kann.

Die Software Industrie orientiert sich natürlich an Moores Law und kalkuliert das mit ein, wobei Moores Law nach dieser Dekade wohl auch endet und dann grundlegend neue Konzepte für Leistungssteigerung des elektr. Computing ersonnen werden müssen (Spintronik, Photonik, Quantum computing...). Aber wie gesagt, find ich die Meinung des Prof irgendwie an der eigentl. Frage vorbei, scheint ihm eher um Ästhetik von Programmiercode gehen, genauso gut könnte man über die Änderung des Autodesign gegenüber vor 25 Jahren filosofieren.

Es gibt jetzt schon MRAM Speicher der ein Booten des PC nicht mehr nötig macht, momentan tut sich auf der Hardwareseite sehr viel und es gibt interessante Forschungsperspektiven, die Not von der Softwareseite die gängigen Programmierparadigma in Frage zu stellen besteht m.M. eigntlich nicht. Und kontrollieren/steuern lässt sich das sowieso nicht, programmiert doch eher jeder was und womit er will und läds dann hoch ins Netz. Da ist mir Vielfalt lieber als wenige, nicht individuelle aber effiziente Programme.
 
Moores Law nach dieser Dekade wohl auch endet und dann grundlegend neue Konzepte für Leistungssteigerung des elektr. Computing ersonnen werden müssen (Spintronik, Photonik, Quantum computing...)
Das Moorsche Gesetz bezieht sich zwar historisch gesehen auf Siliziumchips/Halbleiter, ist aber ein Geschwindigkeitsgesetz; dh. kann wohl mit den/dank der neuen Technologien weiterlaufen. Ich hatte irgendwo letztens mal gelesen, dass Intel momentan sicher ist, bis 2020 "liefern" zu können...
 
Nebenbei: Moore's Law bezieht sich nicht auf Geschwindigkeit.
 
Herr Duck ist ein Fossil aus der IT-Steinzeit! er sollte da bleiben wo er hingehört...im Museum
 
@luzil

Meine Aussage nicht falsch verstehen. Ich bin von Win7 ebenfalls positiv überrascht. Allerdings ging es ja hier um die Optimierung, und da sehe ich bei den alten Windows Codes, die kein Mensch mehr versucht zu verstehen viel Optimierungspotenzial. Das ist aber natürlich reine Spekulation, da hast recht.
 
[quote='Think_o_mat',index.php?page=Thread&postID=768342#post768342]Herr Duck ist ein Fossil aus der IT-Steinzeit! er sollte da bleiben wo er hingehört...im Museum[/quote]

Es ist doch nur offensichtlich wie für jede neue Windowsversion (und auch bei KDE o.Ä. ists so) der Hardwarebedarf exorbitant ansteigt. Wieviel RAM ist mittlerweile empfohlen= 2GB? Wieviel braucht alleine das Windows? 600MB? 700MB? Das ist doch nurnoch krank. Auf meinem uralt P3 mit 128MB Ram konnte ich genauso arbeiten, nur ohne tolle Blinkeanimationen und so weiter. Win 98 fährt auf nem (auch total veralteten P4 System mit >2GHz übrigens locker in 10Sek hoch. Evtl. sogar schneller, aber die eingebaute hdd ist stinklahm (10MB/s).

Wenns läuft und keinen Bluescreen erzeugt, dann läuft es und braucht nur 60-80MB Ram. Mit ein paar Tricks läuft die aktuellste Software auch drauf. Aber warum rennt jeder den neuen Ressourcenfressern nach? Hat sich zwar nach Vista "gebessert", aber nicht so erheblich. Ich bin enttäuscht. Genauso von M$ wie von der OpenSource Welt. Ich brauche kein KDE4, wenns auch auf meinem T61 nicht mit akzeptabler Geschwindigkeit läuft und mir sogar ohne Effekte den Akku leersaugt. Ich brauche nichtmal Xfce, solange das (inkl. GTK)nicht mal auf den Stand von kde3/QT3 optimiert wird. XP ist noch halbwegs vernünftig, alles neuere frisst mir zuviel Hardware. Ich hab kein Bock aufrüsten zu müssen, nur weil das Betriebssystem mal wieder mehr braucht.

Naja die Hoffnung stirbt zuletzt.
 
In den ganzen Kommentaren wird viel von Effizienz gesprochen.... über welche Effizienz reden wir?

Fakt: früher war die SW kleiner und wäre auf modernen Maschinen schneller.

Fakt: früher konnte die SW in der Regel weniger, aber die wenigsten werden auf den Mehrwert verzichten wollen.

Ein Bereich, der sich heute immer noch sehr stark um vorhandene Ressourcen (RAM/ROM/Laufzeit) sorgen machen muss sind Embedded Systeme also z.B. Steuergeräte in Automobilen. Ich will heute aber sicher keine Steuergeräte-SW sehen, die so entwickelt wird wie früher. Die Kommunikation zwischen den verteilten Systemen ist viel zu groß, dazu kommen die Sicherheitsaspekte, der Code muss funktionial tun!

Gerade bei Steuergeräten geht man heute dazu über "Modellbasiert" (also graphisch) zu entwicklen, Code automatisch zu generieren und zu optimieren. Das Risiko in den hochkomplexen System wäre sonst viel zu groß. Nehmen wir ein modernes Auto aus der Mittelklasse, hier kommt Ihr sehr schnell in die Lage, dass ca 80 Rechner mit Realtime-Systemen zusammen arbeiten und gemeinsam das Fahrzeug kontrollieren. Vor 30 Jahren brauchte ein großes Unternehmen nicht so viele Rechner für die Buchhaltung.... aber wer von Euch will auf ESP, Servolenkung, Multimediasysteme, Navigation und spritsparende Motoren verzichten... Die Systemkomplexität ist für heutige Bedürfnisse notwendig.

Bleiben wir beim PC, ja DOS war viel kleiner und auch die alten Rechner sind mind genausoschnell gestartet, Programme passten auf eine Diskette... aber heute will jeder während er einen Brief schreibt nebenbei MP3s hören, eine DVD transcodieren oder Tweet/Rss-Liveticker verfolgen. Dann muss parallel noch der Virenscanner mitlaufen und das soll auch noch zeitgemäß aussehen.

Insofern hat Dueck recht, gerade im PC-Segment kann ich heute mit den Systemen von vor ein paar Jahren keinen Blumentopf mehr gewinnen... hier soll es einfacher werden, und der Konkurrenzkampf ist groß --> die SW wird schnell zusammengestöpselt. Testing ist leider eine oft vernachlässigte Aktivität im SW-Engineering hier muss wieder mehr der Fokus auf Qualität gelegt werden. Das größte Problem ist m.M. nach die Bananenware (reift beim Kunden).

Dann:

Zum Beispiel konnten bestimmte Spiele auf Atari oder Commodore nur laufen, wenn man jedes überflüssige Bit in den oberen Speicherbereich verschob, denn es gab einfach nur sehr begrenzte Kapazitäten. So zu programmieren, war natürlich sehr aufwändig und teuer. Deshalb sind diese Programmierkünste heute verloren gegangen.
das ist richtig, diese Dinge werden heute nicht mehr gebraucht, leider sind nicht im gleichen Maße die Optimierungsfähigkeiten der neuen Toolketten mitgewachsen. Insbesondere bei großen Applikationen (z.B. VerwaltungsSW von Banken oder Versicherern) reden wir von *deutlich* komplexeren UseCases als vor einigen Jahren, zudem hat die Vernetzung die Systemkomplexität nach oben getrieben.

==> hier muss "anders" optimiert werden, hier müssen die Geschäftsprozesse performant und Effizient bedient werden und auch angepasst werden können. Durch die vorhande HW-Leistung muss ich nicht mehr zwingend das LowLevel optimieren. Der Benefit ist größer, wenn das Gesamtsystem betrachtet wird.
 
Die Verfettung kommt vermutlich auch von der Gedankenlosigkeit einiger Entwickler. Es laeuft ja ordentlich auf ihren modernen Maschinen. Auf etwas aelteren Maschinen wird nicht getestet. So wie manche ihre GUI schon auf ihre Breitbildformate und Aufloesungen festnageln und man mit "klassischen" Bildschirmformaten Probleme bekommt oder Webdesigner nicht an Modem/ISDN User denken.
 
Ja gut. Was sag ich jetzt noch dazu... Sind viele Argumente schon gebracht worden. Natürlich treibt die hohe Verfügbarkeit von Ressourcen den Verbrauch in die Höhe. Andererseits macht diese Verfügbarkeit auch große Programmbibliotheken wie QT usw erst möglich. Natürlich ist es effizient direkt in den Framebuffer zu schreiben. Aber mal ehrlich wir wollen arbeiten und uns nicht erst nen Serpentinen Code schreiben um das einfache ABC zu beherschen. Deswegen gibt es die Abstraktion von der Maschine.

Man sollte natürlich die Balance halten.

Für mich ist es zum Beispiel schlimm mit anzusehen wie jedes simple Programm in Java geschrieben wird. Das ist einfach abartig und bringt mich / mein T43 zur Weißglut (Das Torrent Beispiel war gut). Da würde ich lieber mit Python für Gui und Interaktion und schnellen C Routinen unten rum arbeiten. Ergebnis: Performanter und Portabler Code.

Oder noch ein Beispiel. Download Manager(Name egal) --> Komplett in Java mit zusätzlichen FF Plugins usw. unterstütz XYZ verschieden Hoster ... Dabei leistet auch ein simples
Code:
wget --load-cookies `python getlist.py`
alles was man braucht. Insoweit hat der Typ im Interview wieder recht. Alles muß schnell gehen Entwicklung Testing ...nur die Ausführung darf auch mal stocken.
 
[quote='kadauz',index.php?page=Thread&postID=768037#post768037]Gegen die Reduzierung aufs Wesentliche habe ich allerdings nichts. Ich bin auch davon überzeugt, dass wenn Windows 7 ganz neu geschrieben werden würde, es wesentlich performanter wäre. Da liegen wohl einige Codeleichen irgendwo vergraben.[/quote]

Und wesentlich inkompatibler. Die Leute jammern doch sofort wenn ihre Uraltprogramme nicht mehr laufen. Von VMs hat scheinbar noch nie jemand etwas gehört.
 
Dein Java-Gebashe verstehe ich nicht.
Weder sind die meisten Python Programme besonders portabel(du erstellst immer unterschiedl. Versionen, C-Kram und Bindings sind idR nicht portabel ), noch sind sie besonders performant.
 
Portabilität ist aber auch nicht der heilige Gral, dem sich alles andere unterordnen muss.
Und performant ist auch alles mögliche, aber nicht Java.
 
Es kommt immer auf den Anwendungsfall an. Wenn ich schnell zu einen Ergebnis kommen will, nutze ich ja auch Frameworks um nicht das Rad neu zu erfinden. Es kommt ja auch keiner auf die Idee mit C, Webseiten/-services zu basteln.
Portable geschriebene Programme können niemals die performanteste Lösung darstellen.
 
[quote='darktrym',index.php?page=Thread&postID=769329#post769329]Es kommt immer auf den Anwendungsfall an.[/quote]
Danke.

Warum kritisierst du dann simlan's Bemerkung, daß es es nicht gut findet, daß jeder Pups in Java geschrieben wird, als Java-Gebashe?
Er hat doch nur darauf hingewiesen, daß vieles in Java geschrieben wird, das in anderen Programmiersprachen besser umgesetzt wäre.
 
Dann lies mal die Begründung durch warum er Python wählen würde. Und warum soll man simple Programme nicht in Java schreiben?
 
[quote='anlo',index.php?page=Thread&postID=769212#post769212]
Fakt: früher konnte die SW in der Regel weniger, aber die wenigsten werden auf den Mehrwert verzichten wollen.[/quote]
Wenn jeder von "Mehrwert" redet? Welcher Mehrwert denn?

[...] aber wer von Euch will auf ESP, Servolenkung, Multimediasysteme, Navigation und spritsparende Motoren verzichten... Die Systemkomplexität ist für heutige Bedürfnisse notwendig.
Achja? Ich habe und brauche weder Servolenkung, noch ESP (für was? nur weil man nicht angepasst fahren kann?), noch Multimediasysteme (ich fahre Auto und habe keine Disco auf Rädern), Navigation macht mein Etrex Legend, welches auch für andere Zwecke gebraucht wird. Spritsparende Motoren und deine zuvor genannten Eigenschaften schliessen sich gegenseitig aus.

Bleiben wir beim PC, ja DOS war viel kleiner und auch die alten Rechner sind mind genausoschnell gestartet, Programme passten auf eine Diskette... aber heute will jeder während er einen Brief schreibt nebenbei MP3s hören, eine DVD transcodieren oder Tweet/Rss-Liveticker verfolgen. Dann muss parallel noch der Virenscanner mitlaufen und das soll auch noch zeitgemäß aussehen.
Wer denkt, dass er das braucht.. naja auch wenn ich jetzt parallel Amarok laufen lassen könnte, habe ich dennoch meinen MP3 Player, der das gleiche tut. Nur ohne mir (unwesentlich viel) Rechenleistung zu verbrauchen. DVD Transcoden tu ich auf der Arbeitsmaschine auch nicht. Ich verdiene kein Geld damit, also brauch das nicht zu laufen. Liveticker.. Ne wie soll man dann arbeiten, wenn man permanent abgelenkt wird. Virenscanner. Tzja Linux ;)

das ist richtig, diese Dinge werden heute nicht mehr gebraucht, leider sind nicht im gleichen Maße die Optimierungsfähigkeiten der neuen Toolketten mitgewachsen. Insbesondere bei großen Applikationen (z.B. VerwaltungsSW von Banken oder Versicherern) reden wir von *deutlich* komplexeren UseCases als vor einigen Jahren, zudem hat die Vernetzung die Systemkomplexität nach oben getrieben.

==> hier muss "anders" optimiert werden, hier müssen die Geschäftsprozesse performant und Effizient bedient werden und auch angepasst werden können. Durch die vorhande HW-Leistung muss ich nicht mehr zwingend das LowLevel optimieren. Der Benefit ist größer, wenn das Gesamtsystem betrachtet wird.
Beispiel aus meiner Nebentätigkeit: Arbeite hier noch (sehr gut bezahlt) in dem Fußballstadium und bediene Kassensysteme, nebst Verwaltung von anderen Gütern. Die Kassen bestehen nur aus nem sehr kleinen System mit Touchscreen und WinXP drauf. Die Kassenbedienoberfläche hat schöne runde Tasten etc. aber jedesmal wenn ich eine Funktion aufrufe, um z.B. einen Verkauf zu registrieren und die Buchung zu tätigen, muss ich ca. 0,3-0,6Sec warten, bis das Fenster sich aufgebaut hat. Ich habe immer den höchsten Umsatz, weil ich die Momente genau abpasse, in denen das nächste Kommando getätigt werden kann, aber das verlangsamt meinen Arbeitsprozess enorm! Wenn ich in 6 Stunden tausende von Kunden bediene und jedesmal hauptsächlich darauf warte, dass die Kasse ein Fenster aufgebaut hat, dann hat das nichts mit sinnvoller Programmierung zu tun. Dann ist das Zeitverschwendung und Arbeitsbehinderung. Warum? Weil die Oberfläche vermeintlich schön aussehen soll.
Die Uni hier hat ein ähnliches (deutlich komplexeres) System, aber wesentlich ältere Rechner und eine potthässliche Oberfläche, die aber instantan auf Tastendruck reagiert. Daher läuft da die Abwicklung erheblich schneller.
Mich hindern solche Verzögerungen, die schüren einen richtigen Hass. Hauptsache an den falschen Stellen sieht es schön aus und hat nutzlose Zusatzfunktionen. Nene den Sche*** brauche ich im Leben nicht.
 
[quote='darktrym',index.php?page=Thread&postID=769356#post769356]Dann lies mal die Begründung durch warum er Python wählen würde. [/quote]
Du hast von "Java-Gebashe" geschrieben, nicht von "Python-Bejubeln".


[quote='darktrym',index.php?page=Thread&postID=769356#post769356]Und warum soll man simple Programme nicht in Java schreiben?[/quote]
Weil es wenig sinnvoll ist, wegen 10 Zeilen Code eine VM anzuwerfen?
 
[quote='buddabrod',index.php?page=Thread&postID=769357#post769357]Beispiel aus meiner Nebentätigkeit: Arbeite hier noch (sehr gut bezahlt) in dem Fußballstadium und bediene Kassensysteme, nebst Verwaltung von anderen Gütern. Die Kassen bestehen nur aus nem sehr kleinen System mit Touchscreen und WinXP drauf. Die Kassenbedienoberfläche hat schöne runde Tasten etc. aber jedesmal wenn ich eine Funktion aufrufe, um z.B. einen Verkauf zu registrieren und die Buchung zu tätigen, muss ich ca. 0,3-0,6Sec warten, bis das Fenster sich aufgebaut hat. Ich habe immer den höchsten Umsatz, weil ich die Momente genau abpasse, in denen das nächste Kommando getätigt werden kann, aber das verlangsamt meinen Arbeitsprozess enorm! Wenn ich in 6 Stunden tausende von Kunden bediene und jedesmal hauptsächlich darauf warte, dass die Kasse ein Fenster aufgebaut hat, dann hat das nichts mit sinnvoller Programmierung zu tun. Dann ist das Zeitverschwendung und Arbeitsbehinderung. Warum? Weil die Oberfläche vermeintlich schön aussehen soll.
Die Uni hier hat ein ähnliches (deutlich komplexeres) System, aber wesentlich ältere Rechner und eine potthässliche Oberfläche, die aber instantan auf Tastendruck reagiert. Daher läuft da die Abwicklung erheblich schneller.
Mich hindern solche Verzögerungen, die schüren einen richtigen Hass. Hauptsache an den falschen Stellen sieht es schön aus und hat nutzlose Zusatzfunktionen. Nene den Sche*** brauche ich im Leben nicht. [/quote]Ohne jetzt mir den ursprünglichen, verlinkten Beitrag angesehen zu haben, frage ich mich, inwieweit das hier in die Diskussion passt ?
Hier scheint mir das Problem nicht am hübschen Aussehen zu liegen, sondern dass da jemand gewaltig gespart hat. Im Endeffekt läuft es natürlich darauf hinaus, dass da unperformanter Code dahinter steckt, aber die Ursache dürfte wohl eher sein, dass entweder die Software an der Hardware vorbeientwickelt wurde oder die Software so billig sein musste, dass da eben nur ein Codeäffchen für ein paar Stunden rangesetzt werden konnte.
Ich habe für Siemens Messplatzsoftware mit schicken Knöpfchen und Kontrollgraphen entwickelt, die unter XP auf dem P3 800Mhz flüssig liefen, weil man die vorhandene Hardware einzuschätzen wusste, und mir entsprechend Zeit gab den Code zu optimieren.

Edit:
Habe mir den Beitrag mal durchgelesen, und halte den Beitrag für ziemlichen Käse - den Beitrag wohlgemerkt, nicht unbedingt die Thesen des Herrn. Der Beitrag lässt keinen Spielraum, um auf die Thesen einzugehen - mit einer Ausnahme. Das Beispiel mit den spezialisieretn Prozessoren halte ich - mit Verlaub gesagt - für kognitiv suboptimal. Wie will man denn für alle möglichen Anwendungsfälle spezielle Prozessoren entwickeln ? Diese müssten ja speziell auf eine bestimmte Software abgestimmt sein bzw. umgedreht. Mir fehlt hier aber auch die Weitsicht mir einen auf eine Textverarbeitung spezialisierten Prozessor vorzustellen ?!? Vor allem kapiere ich nicht, wie man damit das Problem von nicht optimalem Code angehen will. ?(
 
Also nur so, die Kassen haben mehr als 1GHz. Und auch 512MB Ram. Daher ists ein gutes Beispiel, wie einer zu unfähig war, die Hardware effizient zu nutzen.
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben