Adobe-Photoshop-Quellcode
Ein Softwarejuwel: die Reihe historischer Quellcodes des Computer History Museum
- Photoshop: das Verändern digitaler Bilder mit der Software Photoshop oder anderer Bildbearbeitungssoftware, insbesondere auf eine Weise, die die Realität verzerrt (Quelle: Merriam-Webster Online Dictionary, 2012)
Die Entstehung von Photoshop
- Ende der 1980er begannen die Brüder Thomas Knoll und John Knoll, ein Bildbearbeitungsprogramm zu entwerfen und zu schreiben
- Thomas Knoll war Doktorand für Computer Vision an der University of Michigan und schrieb 1987 ein Programm zum Anzeigen und Bearbeiten digitaler Bilder
- John Knoll arbeitete bei der Film-VFX-Firma Industrial Light & Magic und nutzte dieses Programm sinnvoll für die Fotobearbeitung
Die Weiterentwicklung von Photoshop
- Das Programm entwickelte sich schrittweise weiter und wurde unter dem Namen "Display" bekannt
- Im Sommer 1988 wurde erkannt, dass das Programm kommerzielles Potenzial hatte, und der Name wurde in "Photoshop" geändert
- Der Diascanner-Hersteller Barneyscan bündelte rund 200 Exemplare der Version 0.87 unter dem Namen "Barneyscan XP"
Der Vertrag mit Adobe
- Auf Anregung von Russel Brown, Art Director bei Adobe, entschied sich Adobe zum Kauf einer Vertriebslizenz für Photoshop
- Der Vertrag wurde im April 1989 abgeschlossen, und Anfang 1990 erschien Version 1.0
- In den folgenden zehn Jahren wurden mehr als 3 Millionen Exemplare von Photoshop verkauft
Technische Details zu frühem Photoshop
- Frühes Photoshop wurde hauptsächlich in Pascal für den Apple Macintosh geschrieben, teilweise auch in Maschinensprache für den Motorola-68000-Mikroprozessor
- An Version 1 arbeitete Thomas allein als Ingenieur, an Version 2 waren zwei Ingenieure beteiligt
- Thomas entwickelte die Kernanwendung, während John viele Bildverarbeitungs-Plug-ins schrieb
Veröffentlichung des Quellcodes
- Mit Genehmigung von Adobe Systems veröffentlichte das Computer History Museum den Quellcode von Photoshop Version 1.0.1 aus dem Jahr 1990 zur nichtkommerziellen Nutzung
- Der Quellcode besteht aus 179 Dateien und umfasst rund 128.000 Zeilen gut strukturierten Codes mit kaum Kommentaren
- Etwa 75 % des Codes wurden in Pascal, etwa 15 % in 68000-Assemblersprache geschrieben
Kommentar zum Quellcode
- Einschätzung von Grady Booch, Chief Scientist für Software Engineering bei IBM Research Almaden und Fellow des Computer History Museum:
- Den Quellcode von Photoshop 1.0 zu öffnen, war wie das Öffnen eines Grabes mit antiken Artefakten
- Die konsequente Trennung von Interfaces und Abstraktionen sowie die Designentscheidungen rund um komponentisierte Abstraktionen sind hervorragend umgesetzt
- Die grundlegende Struktur bleibt auch in modernen Implementierungen erhalten
- Obwohl es kaum Kommentare gibt, ist der Code sehr gut lesbar
Screenshots von frühem Photoshop
- Startbildschirm: zeigt die verfügbaren Werkzeuge
- Pinsel-Farbe, -Größe und -Textur sind wählbar
- Verschiedene Auswahlwerkzeuge und Bildfilter werden angeboten
- Die in Version 3 hinzugefügte Bild-Ebenen-Funktion fehlt in den frühen Versionen
- Eine Einstellungsseite bietet Anpassungsmöglichkeiten
- Es gibt nur eine begrenzte Auswahl an Schriftarten, Schriftgrößen und Stilen
Liste veröffentlichter historischer Quellcodes
- MacPaint- und QuickDraw-Quellcode, 18. Juli 2010
- APL-Programmiersprachen-Quellcode, 10. Oktober 2012
- Adobe-Photoshop-Quellcode, 13. Februar 2013
- Apple-II-DOS-Quellcode, 12. November 2013
- Früher Quellcode von Microsoft MS-DOS, 25. März 2014
- Quellcode von Microsoft Word for Windows Version 1.1a, 25. März 2014
- Früher Quellcode von Digital Research CP/M, 1. Oktober 2014
- Xerox-Alto-Quellcode, 21. Oktober 2014
- Früher Quellcode von Electronic Arts DeluxePaint, 22. Juli 2015
Über den Autor
- Len Shustek ist emeritierter Vorsitzender des Gründungsdirektoriums des Computer History Museum
Verwandte Artikel
- CHM Blog: Computer für uns alle, 15. Dezember 2023
- CHM Blog: Wie alt ist dein Furby?, 13. Dezember 2023
- CHM Blog: Schildkröten, Blöcke und Erinnerungen, 5. Dezember 2023
Meinung von GN⁺
- Der historische Wert von Photoshop: Photoshop leitete eine Revolution in der digitalen Bildbearbeitung ein, und über seinen Quellcode lässt sich der historische Kontext früher Softwareentwicklung verstehen.
- Der pädagogische Wert des Codes: Der kaum kommentierte, aber gut strukturierte Code kann ein nützliches Material für die Ausbildung im Software Engineering sein.
- Technologischer Fortschritt: Durch den Vergleich der Struktur von frühem Photoshop mit der Struktur moderner Versionen lässt sich die Entwicklung der Softwarearchitektur nachvollziehen.
- Kritische Perspektive: Die Veröffentlichung des frühen Quellcodes hat historischen Wert, doch da die kommerzielle Nutzung eingeschränkt ist, sind praktische Einsatzmöglichkeiten begrenzt.
- Verwandte Projekte: Open-Source-Bildbearbeitungssoftware wie GIMP bietet ähnliche Funktionen und kann als Alternative zu Photoshop in Betracht gezogen werden.
1 Kommentare
Hacker-News-Diskussion
Zusammenfassung ausgewählter Hacker-News-Kommentare
Erfahrung mit der Archivierung von Adobe-Quellcode
Erfahrung mit dem Austausch von Quellcode mit Adobe
Konsistenz der UX
Schwierigkeit, die Schönheit des Quellcodes zu verstehen
Artikel über Adobe Photoshop 1.x
Verhinderung der Verwässerung von Marken
Lob für die Veröffentlichung alten Quellcodes
Erfahrungen mit frühen Versionen von Photoshop
John Knolls Karriere