'use client' import { motion } from 'framer-motion' const timeline = [ { era: '1976', title: 'Der Anfang', description: 'Erste Programme in Fortran IV. Lochkarten, Großrechner, Batch-Verarbeitung. Erste Programmierkurse im Rahmen des VWL-Studiums. Die Grundlagen des algorithmischen Denkens.', tech: ['Fortran IV'], }, { era: '1984', title: 'Der erste PC', description: 'Erste Programme in Basic, C und Pascal auf dem Personal Computer unter DOS. Datenbanken, Textverarbeitung, Spiele.', tech: ['Lotus 1-2-3', 'dBASE', 'QBasic', 'Turbo Pascal', 'Norton Commander', 'WordPerfect'], }, { era: '1986', title: 'Systemnahe Programmierung', description: 'C und 68000-Assembler auf dem Atari ST. Direkte Hardware-Ansteuerung, Interrupt-Routinen, Speicherverwaltung von Hand. Pseudo-Multitasking. DFÜ mit Akustikkoppler. Maiboxen, FidoNet, MausNet.', tech: ['C', '68000 ASM', 'GFA Basic', 'TOS'], }, { era: '1990', title: 'Unix an der Universität', description: 'AIX, HP-UX, BSD. Die Philosophie kleiner, zusammenarbeitender Programme. Shell-Scripting als Werkzeug. Internet. Sysop-Aufgaben im Uni-Rechenzentrum.', tech: ['Unix', 'Shell', 'vi', 'Gopher'], }, { era: '1992', title: 'Linux entdeckt', description: 'Slackware auf 40 Disketten, Debian, SUSE Linux ... Der Beginn einer dauerhaften Begeisterung für offene Systeme und Selbstbestimmung. C, C++, Pascal, Modula, Perl, Shell-Skript. Internet per Modem. Pentesting, Hacking.', tech: ['Linux', 'GNU Tools', 'X11'], }, { era: '1995 ff.', title: 'World Wide Web', description: 'Permanenter privater Internet-Zugang kommerzieller Anbieter und erste eigene Domain: linix.de. World Wide Web. Eigene Webseiten in HTML und JavaScript programmiert.', tech: ['WWW', 'Netscape', 'HTML', 'Java', 'JavaScript', 'Modem'], }, { era: '2000er', title: 'Professionelle Entwicklung', description: 'Verschiedene Sprachen, verschiedene Domänen. Server-Administration, Automatisierung, Web-Entwicklung. Systemadministration, Networking. — Alles unter Linux.', tech: ['Perl', 'PHP', 'Bash', 'Python', 'Go', 'Proxmox', 'Docker/Podman'], }, { era: '2022', title: 'KI-Fokus', description: 'Seit Ende 2022 intensive Beschäftigung mit KI-Tools und KI-Programmierung. LLMs als Arbeitswerkzeug und Forschungsgegenstand.', tech: ['Python', 'Rust', 'LLMs', 'ML'], }, ] export function AboutSection() { return (
{/* Section Header */} Hintergrund

Fünf Jahrzehnte Programmierung

Eine Reise durch die Evolution der Software-Entwicklung – von Lochkarten bis zu Large Language Models, Vibe-Coding und agentischen KI‑Systemen.

{/* Motivation Section */} Motivation

Meine Faulheit hat mich zum Programmierer gemacht

Ich war schon immer faul – und diese Eigenschaft habe ich immer wieder mit Intelligenz zu kompensieren versucht. Gern hätte ich als Schüler im Mathematik-Leistungskurs und später an der Universität große, anspruchsvolle Projekte gerechnet. Doch ich war einfach zu faul dazu. Erst im VWL-Studium musste ich programmieren lernen – und das war der Wendepunkt.

Sofort faszinierte mich, was sich mit dieser Methode alles bewerkstelligen ließ: Was der kybernetische Rechenknecht erledigen konnte, musste ich mir nicht mehr mühsam abringen. Das wurde für mich lebenslang Motivation, immer mehr Programmiersprachen zu lernen und mich mit Rechnern zu beschäftigen. Mit Systemen, bei denen sich nichts wirklich Nachhaltiges lernen ließ, habe ich mich nie lange aufgehalten. Deshalb habe ich bis heute nur sehr wenig Ahnung von Microsoft‑Produkten.

Wer sein Geld damit verdient, banalen Code geheim zu halten und die Menschheit abzuzocken, schrumpfte in meiner Wertschätzung auf ein Minimum. Umso größer wurde mein Enthusiasmus für Open-Source‑Projekte. Dort kann man wirklich Nützliches lernen – ohne dass sich alles alle zwei Jahre wieder ändert, nur weil ein Softwareverkäufer neue Kurse anbieten will.

Und so gilt das erste Jamulix‑Gesetz:

Je schlauer, umso Linux!

{/* Timeline */}
{/* Vertical line */}
{timeline.map((item, index) => ( {/* Timeline dot */}
{/* Content */}
{item.era}

{item.title}

{item.description}

{item.tech.map((tech) => ( {tech} ))}
{/* Spacer for alternating layout */} {index % 2 !== 0 &&
} ))}
) }