Hi,
Ich geb auch nochmal meinen Senf dazu.
Wie auch Schwembo bin ich ebenfalls Autodidakt - daher kommt mir die Frage "Wo eigentlich anfangen?" schon recht bekannt vor. Mir persönlich hat es beim Lernen extrem geholfen, an einer konkreten Problemstellung zu arbeiten - in deinem Fall also die Website deiner Schwester. Sich mit Ihr hinzusetzen und sie einfach mal zu fragen, wie SIE sich eigentlich die Website vorstellt und zu versuchen, diese Anforderung in einer statischen Seite umzusetzen, stellt einen dann schon vor genug Probleme, während deren Lösung man schon recht viel lernt. An diesem Punkt kommt man noch mit HTML, CSS und JS aus. (Und dann macht man den Krempel in einem zweiten Browser auf und fängt von vorne an
)
Mit "Programmieren" hat das allerdings noch nicht wirklich viel zu tun und deshalb spricht man von einer "statischen Website". Es ist aber dennoch ein guter Anfangspunkt, um zu lernen.
Ansonsten - auch wenn das wahrscheinlich Teil deines Uni-Kurses war, nochmal zu Erinnerung:
- Dokumenttyp-Deklaration nicht vergessen. Verwendeten Zeichensatz (wahrscheinlich eh UTF-8) definieren.
- Schreib sauberen HTML-Quellcode (Einrückungen!)
- Trenne HTML, CSS und JS voneinander (CSS und JS in externe Dateien auslagern und im HTML-Head einbinden, CSS-Klassen verwenden, Inline-Krempel vermeiden)
Weil das Nachfolgende unerwartet lang geworden ist, habe ich es nachgelagert und in einen Spoiler gepackt. Im Zweifel kann es auch sein, dass es dich gar nicht interessiert 
Viel Erfolg.
Gruß
Timmel
Spoiler
Die Dinge, die bspw. emophiliac erwähnt, wie PHP und MySQL, würden dann interessant werden, wenn man den Darstellungsgegenstand der Website dynamisieren will, die grundlegende Darstellungs- und Funktionsweise der Website aber eigentlich die gleiche bleibt. Um in der Analogie des Familienbilds zu bleiben, wäre das zum Beispiel dann der Fall, wenn neben deiner Schwester auch dein Bruder auf der gleichen Website dargestellt werden soll und sich der Besucher der Website aussuchen kann, welches der beiden Personenprofile er sich anschauen will. Dabei wiederholen sich allerdings Inhaltselemente der Website zwangsläufig: Beide werden einen Lebenslauf mit einer Anzahl X Stationen haben, werden Bilder darstellen und Arbeitsproben hinterlegen wollen. Die ursprünglich für deine Schwester entworfenen Gestaltungselemente aus HTML, CSS und Javascript kannst du für deinen Bruder wiederverwenden, die MySQL-Datenbank hält die Inhalte der beiden Profile vor und PHP verwaltet die Logik, wie Gestaltungselemente und Inhalt zusammengebracht werden sollen, ehe sie an den Browser ausgeliefert werden.
Zwei weitere Dinge die emophiliac erwähnt (vor allem: Model-View-Controller, weniger: Templates) finde ich persönlich auch bereits relativ fortgeschritten - diese Einschätzung geht aber vermutlich immer auf die Menge der Vorerfahrung zurück, die man mitbringt. Gerade als Autodidakt finde ich den objektorientierten Ansatz aber nicht unbedingt intuitiv: Zumindest ich persönlich habe am Anfang in PHP erstmal ALLES prozedural runtergecoded. (Und JA: Schön ist anders
)
Davon unabhängig handelt es sich bei diesen beiden Dingen (Model-View-Controller und Templates) vornehmlich um Organisationsformen, die dir als Entwickler ermöglichen sollen, ein Projekt übersichtlich und wartbar zu halten, wenn es erstmal eine bestimmte Größe erreicht. Dies bringt auch viele Vorteile mit sich, wenn man nicht mehr der einzige Entwickler ist, der an einem Projekt arbeitet.
Die Implementierung von CMS wie Wordpress, Joomla, TYPO3 und Konsorten kommt eigentlich erst dann ins Spiel, wenn man die redaktionelle Pflege von Inhalten von der Beteiligung eines Entwicklers entkoppeln will - die kosten schließlich richtig Kohle.
Im Familienbeispiel müsstest du beim aktuellen Stand jedes Mal selbst in die Datenbank schauen und einen neuen Eintrag händisch vornehmen, wenn deine Schwester eine neue Station im Lebenslauf hat oder gar dein Schwager plötzlich auch ein Profil will.
Unter Ausnutzung deiner bisher erworbenen Kenntnisse aus HTML, CSS, Javascript, PHP und MySQL könntest du jetzt aber auch hingehen, einen Loginbereich für deine Schwester bauen und verschiedene HTML-Formulare aufsetzen, in die Sie die Daten eines neuen Benutzers eintragen oder die eines bestehenden Nutzers abändern kann. Sie klickt auf "Senden", PHP redet mit der MySQL-Datenbank und die von deiner Schwester ohne Programmierkenntnisse eingegebenen Daten können von dann an von jedem Websitebenutzer abgerufen werden. Du selbst müsstest erst dann wieder tätig werden, wenn sich an der Struktur- oder am Funktionsumfang der Website etwas ändern soll.
Diesen Aha-Effekt hatten auch schon andere Programmierer(gruppen) und haben diverseste CMS aufgesetzt, die du Weiterverwenden, adaptieren und modifizieren kannst, um dein Projekt zu realisieren - so musst du das Rad nicht neu erfinden, sondern kannst dich an bestehende Bibliotheken, Workflows und Co ankleben - vorausgesetzt, du lernst die Syntax und Regeln, die für das Ankleben an dieses spezielle CMS notwendig sind.