Was war das beeindruckendste Programm, das Sie jemals gesehen haben? [geschlossen]

26

Jeder kennt das alte Sprichwort, dass die besten Programmierer Größenordnungen besser sein können als der Durchschnitt. Ich persönlich habe gute Code- und Programmierer gesehen, aber noch nie etwas so Absurdes. Die Frage ist also, was ist das beeindruckendste Programm, das Sie je gesehen oder gehört haben?

Sie können beeindruckend definieren durch:

  1. Der Umfang der vorliegenden Aufgabe, z. B. John, entwickelte im Alleingang den Rahmen für sein Unternehmen, eine Arbeit, die in ihrem Umfang mit dem vergleichbar ist, was die anderen 200 Beschäftigten zusammen machten.

  2. Geschwindigkeit zB Stu programmierte ein komplettes Echtzeit-Multitasking-App-Betriebssystem auf einer Woche, einschließlich eines eigenen C-Compilers und Shell-Kommandozeilen-Tools

  3. Komplexität Zum Beispiel hat Jane unsere gesamte 10-Millionen-LOC-App für die Arbeit in einem Cluster von Servern überarbeitet. Und sie hat es an einem Nachmittag getan.

  4. Qualität zB Charles 'Code hatte eine Fehlerrate pro LOC, die 100-mal unter dem Unternehmensdurchschnitt lag. Außerdem war der Code sauber und für alle verständlich.

Je mehr dieser Eigenschaften kombiniert werden und je extremer sie sind, desto beeindruckender ist die Leistung.

Also, lass es mich haben. Was ist die absurdeste Leistung, die Sie erzählen können? Bitte geben Sie so viele Details wie möglich an und vermeiden Sie urbane Legenden oder Übertreibungen. Posten Sie nur, wofür Sie tatsächlich bürgen können.

Bonusfragen:

  1. War die Herkulesaufgabe eine Einzelaufgabe oder hat der Einzelne regelmäßig die Menschen verblüfft?
  2. Wie erklären Sie sich diese beeindruckende Leistung?
  3. Wie wurde der Programmierer für diese großartige Arbeit ausgezeichnet?
David Reis
quelle
5
Ich sah einmal einen Mann Bankdrücken 2 KLocs ... (Entschuldigung, konnte nicht widerstehen)
DevSolo
"Geschwindigkeit zB Stu programmierte ein komplettes Echtzeit-Multitasking-App-Betriebssystem auf einer Woche, einschließlich eines eigenen C-Compilers und Shell-Kommandozeilen-Tools."
Jas
Aufgrund der bisherigen Antworten sind manche Menschen leicht zu beeindrucken. Ich habe einige der hier aufgelisteten "Kunststücke" vollbracht.
Steven Evers
Hm, ich habe gestern darüber nachgedacht, diesen fast zu duplizieren;) Vielen Dank, dass du ihn gefragt hast!
mlvljr
@DevSolo Hey, wenn es sich um Lochkarten oder gerolltes Papier handelt, könnte das eine physische Leistung sein.
Mark C

Antworten:

39

Obwohl ich nicht offiziell dafür bürgen kann, war ich immer beeindruckt davon, dass Chris Sawyer Rollercoaster Tycoon fast ausschließlich in Assemblersprache entwickelt hat.

sglantz
quelle
4
das ist verrückt!!!
Nanda
1
-.- +27 für etwas, das wir auf dieser Seite bereits mindestens zweimal besprochen haben.
Mark C
31

Schnelle inverse Quadratwurzel . Wie jemand so etwas erfinden kann, ist mir völlig unverständlich.

Joonas Pulakka
quelle
1
Hum ... Das mag (extrem) clever sein, aber es ist wie 6 Zeilen Code und nur ein winziger Baustein einer viel größeren App. Ich verstehe nicht, wie extrem es in einer der aufgelisteten Dimensionen ist.
David Reis
11
David Reis, dies ist höchstwahrscheinlich eine raffinierte Optimierung eines entscheidenden Engpasses. Verwechseln Sie die Anzahl der Zeilen nicht mit dem zum Schreiben erforderlichen Arbeitsaufwand.
2
@ David, ich weiß nicht, warum Sie darauf bestehen, dass das Programmieren von Heldentaten in sehr kurzer Zeit erledigt sein muss, um eine Leistung zu erbringen?
2
Ja, das ist mehr als ein Kunststück: 600 Codezeilen an einem Tag im Vergleich zu 6 Codezeilen, die 100 Tage lang erstellt wurden, wenn beide das Gleiche tun? Ich denke, es ist das letztere, aber Ihre Laufleistung kann variieren.
Joonas Pulakka
6
@ David, ich bin nicht einverstanden, dass jedes Problem in unendlicher Zeit gelöst werden kann. Möglicherweise möchten Sie joelonsoftware.com/articles/HighNotes.html lesen . "Das wirkliche Problem bei der Verwendung vieler mittelmäßiger Programmierer anstelle einiger guter ist, dass sie, egal wie lange sie arbeiten, niemals etwas produzieren, das so gut ist, wie es die großartigen Programmierer können."
16

Frühe Arcade-Spiele.

Vollständig eingeschränkt durch Speicher, Rechenleistung, E / A ...

Was diese Programmierer in diesem Umfeld erreicht haben, war erstaunlich.

ZB Pacman - Perfekt. Nach all den Jahren noch spielbar.

Conor
quelle
2
Pacman ist bekanntlich nicht perfekt. Es ist ziemlich schlimm, wenn der Pegelzähler ein Byte überläuft. ;)
Mason Wheeler
Ausgezeichnet! Laut Wikipedia: "Pac-Man hat einen berühmten Kill-Bildschirm, der oft als Pac-Man-Bombenbildschirm bezeichnet wird. Der Level-Zähler des Spiels bestand aus einem einzelnen 8-Bit-Byte und konnte daher nur 256 verschiedene Werte (0–255) speichern. Das Erreichen des 256. Levels führt dazu, dass ein Zähler, der beim Zeichnen der Frucht verwendet wird, auf Null überläuft. Dadurch werden 256 Früchte und sieben Leerzeichen gezeichnet. Es kann jedoch mit einem Patch behoben werden. "
Conor,
1
Frühe Space Shuttles vielleicht ???
Job
Frau Pac-Man war weit überlegen
Tim Goodman
1
@Mason, du kannst es sogar auf ein T-Shirt bekommen! errorwear.com/shirt-pacman.php
15

Es gibt diesen einen Programmierer, bei dem ich arbeite und der mehr als einmal Folgendes gemacht hat.

Das jüngste Beispiel war ein Projekt in unserer Gruppe, das 3 Personen zugewiesen wurde. Es war eine komplexe LOB-App mit einem 6-Monats-Zeitplan (das war eine äußerst aggressive Zeitachse).

Die wöchentliche Kodierung sollte beginnen, 1 der 3 Personen kündigte (aus persönlichen Gründen) und eine andere verließ das Unternehmen in einem sehr plötzlichen Urlaub. Der einzige verbleibende Programmierer ging nach Hause, um mit dem Programmieren zu beginnen, und kehrte drei Monate später mit der ausgefüllten Anwendung zurück.

BEARBEITEN

Nur um etwas Klarheit zu schaffen. Der resultierende Code war nahezu perfekt, genau auf die Anforderungen abgestimmt und unsere QS-Gruppe konnte nur drei Mängel dokumentieren.

Walter
quelle
Er / sie musste über 100 Wochenstunden arbeiten, um dieses Kunststück zu vollbringen. Ich wette, er / sie ging durch eine Tonne Koffein.
Ali
3
Der mythische Mannmonat in Aktion. Nehmen Sie 2 Personen aus dem Projekt == Halbieren Sie die Zeitleiste! Obwohl es Sinn macht, dass ein fokussierter Entwickler Dinge schneller erledigen kann, als zu versuchen, 3 Personen zu koordinieren.
CodexArcanum
Wenn diese Person das Unternehmen jemals zu schlechten Konditionen verlässt (keine Abwägungsfrist), wird das Unternehmen in großen Schwierigkeiten geraten ...
Onion-Knight
3
@bjarkef - der Code ist erstklassig. Dieser Codierer ist der beste Programmierer unseres Unternehmens, und der sehr kurze Zeitrahmen hat die normale Qualität, die wir normalerweise von ihm erhalten, nicht beeinträchtigt.
Walter
1
@Walter, du kannst nicht genau abschätzen, bis du es tatsächlich getan hast, was widerspricht, wenn du die Nummer brauchst. Dies macht Schätzungen östlich, wenn Sie die Aufgabe zuvor erledigt haben, und schwierig, wenn es Ihnen unbekannt ist. Solange Sie A nicht unterschätzen, wird der Kunde froh sein, dass es billiger als erwartet ist.
13

Vielleicht zeige ich nur mein Alter, aber ich denke, einige der wirklich beeindruckenden Leistungen des Programmierens werden ignoriert.

Steve Wozniak, Apple Disk II / RWTS

Steve entwarf die Hardware und Software zusammen und verwendete dabei wirklich coole Tricks in der Software, um viel Komplexität (und Kosten) in der Hardware zu vermeiden. Normale Diskettenlaufwerke verwendeten eine LED und einen Fotosensor in der Nähe des Hubs der Diskette, um durch ein Loch zu leuchten, das in das Diskettensubstrat gestanzt war. Der Ausgang des Photosensors war mit einer Prozessorunterbrechung verbunden, damit der Prozessor wissen konnte, wann seine Zeitgeberroutine zu starten ist, um auf den richtigen Sektor auf einer Spur unter dem Lese- / Schreibkopf zu warten (obwohl einige wenige "Festplatten mit Sektoren" verwendet wurden. das hatte ein Loch, um den Beginn jedes Sektors zu signalisieren (statt nur eines für den Beginn der Strecke).

Steve beseitigte diese Hardware, indem er die Software so entwarf, dass die Daten so codiert wurden, dass Sie an einer beliebigen Stelle auf der Festplatte mit dem Lesen beginnen und nicht nur die Daten selbst decodieren, sondern auch herausfinden, wo (logisch) in der Spur Sie sich befanden. Das Disk II-Laufwerk hatte keine LED- / Fotosensor-Einrichtung und ignorierte die Lücke (n) in der Diskette vollständig.

Gordon Letwin, HPFS

Gordon Letwin war Architekt (und Programmierer) im OS / 2-Team. Zumindest, wie ich die Geschichte gehört habe, fuhr er irgendwann in den Urlaub, um sich von den Dingen zu befreien und drei Wochen (oder so) auf seiner Yacht herumzusegeln (ja, frühe MS-Mitarbeiter konnten sich solche Dinge leisten ...). ) ... aber um nicht zu gelangweilt zu werden, nahm er seinen Laptop mit.

Bei seiner Rückkehr ließ er HPFS schreiben, debuggen und arbeiten - vollständig in der Assemblersprache Intel 386. Der von ihm geschriebene Code wurde schließlich als "HPFS386" verkauft, der (zumindest zu dieser Zeit) der LAN Manager Edition von OS / 2 vorbehalten war. Ein anderes Team hat dann ungefähr sechs Monate damit verbracht, eine Version in C zu schreiben, die zum "normalen" HPFS wurde, das in den normalen Editionen von OS / 2 enthalten war (und nachdem sich IBM und MS getrennt hatten, hat IBM den C-Code aktualisiert und neu kompiliert, um deren Code zu erhalten "HPFS386"). Obwohl es modifiziert und aktualisiert wurde, würde NTFS, wenn Sie fair sind, wahrscheinlich "HPFS 2.0" (oder vielleicht 3.0) heißen - es ist keine Frage, dass Microsofts bestes aktuelles Dateisystem noch immer eng von dem abgeleitet ist, was er entworfen hat.

Burroughs B220 Bänder

Diese verkörperten (zumindest IMO) die wahren Anfänge der objektorientierten Programmierung. Während IBM-Bänder (zum Beispiel) "Labels" hatten, die über das Format der Daten auf dem Band Auskunft gaben, entwickelten Burroughs-Bänder die Konvention (ich glaube, niemand weiß genau, wer damit begonnen hat), eine kleine Reihe von Routinen zu erstellen das Band, das die Daten versteht und wie sie formatiert wurden, sodass Sie die Daten korrekt bearbeiten können, ohne die Details zu kennen, wie sie formatiert wurden. Mit anderen Worten, die ersten "Blöcke" auf dem Band waren im Grunde genommen eine V-Tabelle in dauerhafter Form. Sie würden die vtable im Prinzip in den Speicher einlesen und dann die von ihr definierten Methoden verwenden, um die Daten auf dem restlichen Band zu bearbeiten. Alles sehr ordentlich und einfach (wenn auch etwas weniger als vollständig portabel).

Jerry Sarg
quelle
11

John Carmack beeindruckt mich regelmäßig mit seinen Leistungen der epischen Programmierung. Einer Geschichte zufolge langweilte er sich in seinem Hotelzimmer und schrieb über ein Wochenende die Doom 3-Lichtmaschine auf seinen Laptop.

CodexArcanum
quelle
2
Schade, dass er kein richtiges Spiel dazu geschrieben hat.
DeadMG
10

Trotz des fragwürdigen Zwecks bin ich immer noch beeindruckt von einem Captcha-Löser-UserScript für MegaUpload . Es ist ein in JavaScript geschriebenes GreaseMonkey-Skript mit einem Bitmap-Decoder und einem neuronalen Netzwerk, das die Buchstaben im Captcha-Bild erkennt, und ich wiederhole, all dies wird mit JavaScript erstellt.

Teukkam
quelle
1
Etwas, das die nächste Person zeigt, die sich über die Unfähigkeit, gute Arbeit zu leisten, beschwert, weil sie Einschränkungen unterliegt.
Jon Hopkins
10

Miguel de Icaza - das Mono-Projekt.

(Er ist auch unglaublich witzig, witzig und unterhaltsam - zumindest nach dem kurzen Vortrag, den ich bei ihm und beim Anhören einiger Podcast-Interviews gesehen habe.)

Tim
quelle
+1 Der Typ ist offensichtlich Zwillinge oder vielleicht Drillinge, alles unter seinem Namen. Es gibt keine Möglichkeit, dass eine Person an all dem beteiligt ist, was sie ist, und zwar auf einer so detaillierten Ebene.
Dan Rosenstark
8

Anders Hejlsberg: die Turbo Pascal Sprache und der Compiler . Ich denke immer noch, dass TPC nach all den Jahren ein Meisterwerk der Softwareentwicklung ist. Es ist der kompakteste und schnellste native Code-Compiler, den ich je gesehen habe. In der Borland Pascal IDE gab es im Wesentlichen keine "Kompilierung". Sie haben Ihren Code geändert, F9 gedrückt und Ihr Programm sofort ausgeführt, und das war auf einer 8-MHz- oder 12-MHz-Maschine. TPC hatte sich später zu Delphi entwickelt, dann wechselte Hejlsberg zu Microsoft und war Co-Autor von C #.

Ich würde gerne einen Blick auf die Quellen früherer TPC-Versionen werfen, aber trotz zahlreicher Anfragen hat Borland sie nie geöffnet.

Hejlsbergs Compiler wurde von diesem Buch inspiriert: Niklaus Wirth, Algorithmen + Datenstrukturen = Programme

Mojuba
quelle
Delphi hat immer noch einen sehr schnellen Compiler. Ich denke, das ist der Grund, warum das Ändern und Fortfahren nicht mehr unterstützt wird.
Joeri Sebrechts
6

Mein Ausbildungsleiter bei Gemplus (jetzt Gemalto) hat den ersten JavaCard-Interpreter und das erste Betriebssystem während seiner eigenen dreimonatigen Grundausbildung geschrieben. Er produzierte im Alleingang Code aus der Spezifikation. Um die Version 2 zu produzieren, stellte Gemplus ein Team von über 30 Männern auf, ohne den Mann, der mehr als ein Jahr arbeitete. Als er fertig war, aber nicht in der Lage war, anständige Leistungen zu erbringen, riefen sie ihn um Hilfe, und in ein paar Tagen wiesen er und ein Kollege von ihm auf Dutzende von Engpässen hin.

Java Card ist eine Teilmenge von Java, die für die Ausführung auf sehr kleinen Geräten vorgesehen ist. Seine Implementierung lief auf Smartcards mit einigen MHz Takt und 2 oder 3 KB RAM.

Nur zum Spaß: Eine andere persönliche Leistung seines Alltags war es, in eine Arbeitstrance einzutauchen, keine der Fragen zu beantworten, die wir Auszubildenden im Raum brüllten, und dann, plötzlich 2 Stunden später, wieder lebendig zu werden, als seine Arbeit erledigt war und die 5 oder 10 zu beantworten Fragen in einer Reihe.

Gabriel
quelle
1
Ich glaube, ich habe die 200-Mann-Sache übertroffen ... Ich kann mich nicht gut erinnern, es war vor mehr als 10 Jahren. Ich habe ihm die Frage trotzdem geschickt!
Gabriel
1
Verdammt, muss dieser Typ ein Cyborg sein ..
mlvljr
Richtig, sie waren 30+ (=
Gabriel
5

Ich erinnere mich sehr gut daran. Auf der Highschool hat ein Klassenkamerad in ein paar Lektionen mit QB45 (Quick Basic 4.5) ein vollständiges Fahrvideospiel programmiert . Vertikales Scrollen, Stoppuhr, Leben, Ebenen; Ich war total geschockt.

systempuntoout
quelle
1
Ich habe gesehen, wie ein Typ das mit einem Text-Adventure in Lisp gemacht hat. An sich nicht beeindruckend, aber in der Zeit, in der er es getan hat ... wow.
Michael K
5

Git und / oder Linux

Linus Torvalds hat einen Betriebssystemkern und ein Versionskontrollsystem von Grund auf neu geschrieben. Ich kenne niemanden mit einer ähnlichen Produktivität.

LennyProgrammierer
quelle
16
Ein beliebtes unter Linux ist, dass es leicht ist, die damit verbundenen Schwierigkeiten und / oder die Originalität zu übertreiben. Es ist fast ausschließlich ein Klon eines bestehenden Systems. Im Vergleich zu Dave Cutler, der RSX / 11, VMS und Windows NT von Grund auf neu geschrieben hat, ist jede Arbeit ein neues und einzigartiges Werk (und für diejenigen, die sich für das VMS-Dateisystem interessieren, beinhaltete die Versionskontrolle). Ich habe es noch nicht einmal auf die Karte geschafft.
Jerry Coffin
1
Ein dickes Lob für VMS, aber mit der gleichen Begründung muss man NT rabattieren. Laut Wikipedia wurde [...] Windows NT von Dave Cutler erstellt, und viele Elemente des Designs spiegeln frühere DEC-Erfahrungen mit Cutlers VMS und RSX-11 wider. Jedenfalls finde ich Git beeindruckend.
LennyProgrammers
@ Lenny222: Während es sicherlich wahr ist, dass Sie eine erhebliche Ähnlichkeit zwischen VMS und Windows NT feststellen können, ist es nicht einmal annähernd so , als wäre es ein Klon wie Linux. Ich finde Git auch ziemlich gut - aber wenn es das nicht gäbe, kann ich mir mindestens zwei oder drei andere vorstellen, die an seiner Stelle gut funktionieren würden.
Jerry Coffin
5
Hat Linus nicht etwa einen Monat lang alleine unter Linux gearbeitet und es dann zu einem sehr erfolgreichen Community-Projekt gemacht? Tolle Arbeit, aber ich würde es nicht als individuelles Meisterstück der Programmierung einstufen, sondern als sehr erfolgreiches Open-Source-Gemeinschaftsprojekt.
David Reis
1
Ich denke, wir haben es hier mit der Tatsache zu tun, dass wir jetzt X Benutzer haben, die zu Hause Linux verwenden ... Ich nehme an, Sie haben eine VMS-Box in Ihrem Haus? Zugegeben, es war nicht ein einziges Werk eines einzigen Autors. Wenn er es nicht getan hätte, wären es dann diejenigen, die kritisch sind, die es tun würden?
RobotHumans
5

Richard M Stallman kommt mir in den Sinn. Dieser eine Mann begann, GNU Emacs, GCC, GDB und viele andere bemerkenswerte Programme zum Leben zu erwecken. Er schrieb sogar die ursprüngliche GPL. Ich habe von ihm gehört, dass er für 18 Monate in eine Höhle geht und mit über 150.000 Codezeilen zurückkehrt, die den C-Compiler der GCC-Suite ausmachen. Diese 150.000 LOC gaben später den Grundstein für g ++. Nach seinen eigenen Worten begann Emacs als Texteditor, dann wurde es zu einem Lebensstil, und jetzt ist es für einige von uns eine Religion. Bis heute werden die Designprinzipien von Emacs in vielen erfolgreichen Programmen verwendet.

Das TeX-System von Donald E. Knuth ist ein weiteres Programm, das mir einfällt, wenn ich über das Programmieren von Wundern nachdenke.

vpit3833
quelle
Sie sollten versuchen, das TeXbook zu lesen. Es ist nichts für Sterbliche.
Das Verfassen der GPL ist keine beeindruckende Leistung. Es wäre, als würde man sich Singletons zuschreiben.
DeadMG
4

In meiner Abschlussklasse erstellte mein Klassenkamerad ein Betriebssystem (wenn auch sehr einfach, bootete es aber von einer Diskette und erledigte die erforderlichen Routinen) als Projektanforderung in weniger als 30 Tagen. Die Dauer beinhaltet sowohl das notwendige Lesen / Recherchieren als auch die tatsächliche Kodierung.

Ich erinnere mich an die Mailinglisten von os.com, in denen Leute ihn entmutigten und sagten, er würde das in den nächsten Tagen nicht tun, und ich habe ihn auch gesehen, wie er morgens um 5 Uhr morgens in einem halbbewussten Zustand, der Kauderwelsch redet, durch den Schlafsaal ging. :-)

Er ist ein großartiger Programmierer.

Christy John
quelle
4

Ich wollte nichts sagen, aber jemand sagte "Ruby ist eine Meisterleistung"

John McCarthy mit den ursprünglichen REKURSIVEN FUNKTIONEN VON SYMBOLISCHEN AUSDRÜCKEN UND IHRER BERECHNUNG DURCH MASCHINEN , dh dem Aufsatz, in dem er Lisp 1960 definierte, als ifes sich um ein Konzept handelte, über das die Menschen gerade erst ernsthaft nachdachten . Sprechen Sie darüber, Ihrer Zeit voraus zu sein.

Inaimathi
quelle
schöne referenz. Ich war derjenige, der mit Rubin gefüllt war, für Eleganz statt Konvention. Dies ist auch der Zeit voraus
RobotHumans
1
McCarthy hat einen Mathe-Artikel geschrieben. Es wurde erst später festgestellt, dass es in tatsächlichen Code umgewandelt werden konnte.
1
@ Thorbjørn Ravn Andersen - Ich war vorsichtig, "Defined" anstelle von "Implemented" zu verwenden.
Inaimathi
@Thor Das ist in etwa so, als würde man Arthur Clarke die Ehre nehmen, die kreisförmige geosynchrone Umlaufbahn entdeckt (oder erfunden) zu haben, nur weil er keine Rakete bauen konnte, um einen Satelliten dorthin zu bringen, oder weil die Technologie noch nicht existierte.
Mark C
4

Der Symantec / Zortec C ++ - Compiler von Walter Bright hält mit den Compilern Schritt, die von großen Teams von Programmierern implementiert wurden. Später wurde sein Entwurf und die Umsetzung von D.

dsimcha
quelle
2

Terry Winograds SHRDLU .

Doug Lenats automatisierter Mathematiker .

Mike Dunlavey
quelle
SHRDLU hat mich immer erstaunt!
@ Thorbjørn: Ich auch. Das ist ein Teil dieses Minsky-Lab-Geistes, den ich
aufgesaugt habe
1

Linus Trovalds schreibt Linux

Aussenseiter
quelle
0

8-Bit-Videospielprogrammierer auf einem Computer aus den 80er Jahren (dh: Commodore 64), einige ziemlich gute Spiele waren in Maschinensprache und oft kleiner als eine Bitmap für ein Windows-Symbol ;-) Optimierung vom Feinsten

Geos (ein WYSIWYG-Betriebssystem für Commdore 64) war für seine Zeit sehr beeindruckend

Chipster
quelle
-2

Ich bin mir nicht sicher, ob das wirklich zählt ... aber der Typ, der Rubin entwickelt hat. Ich komme einfach nicht an der Eleganz der Sprache vorbei. Und ich glaube, es war die erste Sprache, die dynamisches Tippen unterstützte, obwohl ich nicht der Typ bin, der mit Lochkarten und dem Schreiben von Assembler angefangen hat, damit ich mich irren könnte.

RobotHumans
quelle
3
Es war nicht die erste Sprache mit dynamischer Eingabe, und nein, Sie hätten nicht mit Lochkarten beginnen sollen, um dies zu wissen.
Jas
-3

David Heinemeier Hansson kreiert Rails.

Als ich Rails zum ersten Mal installiert und eine Test-Site für eine Datenbank eingerichtet habe, wurden alle Framework- und CRUD-Aufgaben automatisch ausgeführt. Die Test-Site wurde so eingerichtet, als wären meine Augen zum ersten Mal offen für das, was vor Ihnen getan werden kann Starten Sie die Programmierung. Das war wirklich beeindruckend und ich habe seitdem überall Ideen davon in anderen Sprachen / Plattformen gesehen.

Glenatron
quelle
Wie ist das ein Kunststück der Programmierung?
David Reis
die tatsache, dass es eine gute leistung beim auslegen von tischen mit simple hat, gehört dazu, habtm ... weiter abstrahiert es die datenbankkonnektivität in eine db agnostische klassenstruktur, in der es fast wie magisch erscheint und man nur ein gleis neu machen muss -d (dbtype) Bundler generiert und rake db: create db: migrate Befehlssatz. Das Gerüst, von dem aus eine Basis arbeiten kann, ist schön. Es sieht so aus, als würde jemand Ruby / Rails nicht mögen, da diese ziemlich hart herabgestuft werden, während sie neue Ansätze für Eleganz gegenüber Konventionen waren
RobotHumans
Nach einigem Nachdenken glaube ich, dass es daran liegt, dass wir von der künstlerischen Natur der Sache beeindruckt waren, im Gegensatz zu technischen Fähigkeiten
RobotHumans
Es war eine ganz andere Art zu denken - alles ganz darauf auszurichten, was ideal wäre, anstatt was ausreicht. Es war, als ob wir alle Webentwickler in Model-T-Fords herumgefahren wären und plötzlich Schienen auftauchen und es ist ein moderner BMW. Es war eine massive Änderung der Einfachheit und Benutzerfreundlichkeit in Bezug auf Entwickler als Benutzer, und ich habe in den letzten Jahren so viele andere Plattformen gesehen, die auf diesen Ideen aufbauten.
Glenatron
1
Fair genug, aber beachte, dass in deiner Frage nicht der Name des Typen steht, was er getan hat, wann er es getan hat usw. Es heißt nur: "Ruby is nice". Nun, Welpen sind auch nett, aber das ist keine Antwort auf diese Frage.
David Reis