Das Buch "Weniger schlecht programmieren" ist ein Ratgeber für alle, die sich mit der Programmierung von Computern auseinandersetzen, die aber wenig Zeit haben oder investieren wollen, um in dem Feld den schwarzen Gürtel zu machen. Das Buch ist eine umfangreiche Sammlung von praktischen Empfehlungen zu einer Vielzahl von Programmiertechniken, dem Umgang mit Source Code sowie der Selbstorganisation und der Kommunikation mit anderen.
Im Gespräch mit Tim Pritlove berichten Kathrin Passig und der zeitweise am Buchprojekt beteiligte Jan Bölsche, wie sie selbst zum Programmieren gekommen sind und was sie dazu gebracht hat, ein solches Kompendium zu verfassen.
Linktipps:
- Einen Rückblick auf die #rp14-Session „Programmieren für Nullcheckerbunnys“ von und mit Anne Schüssler und Kathrin Passig gibt es hier.
- Mehr Informationen über den Podcast und einen Überblick über die bisherigen Episoden gibt es hier.
Ok, es kostet eventuell ein klein wenig Zeit sich in ein Versionskontrollsystem einzulernen, aber einrichten muss man echt nicht viel.
Einmalig:
sudo yum install git
bzw.
sudo apt-get install git
git config –global user.name „Mathias Panzenböck“
git config –global user.email „grosser.meister.morti@gmx.net“
Pro repo:
git init .
Und Verwenden ist auch nicht schwer:
Pro neuer Datei:
git add filename
Pro Änderung:
git commit
Um zu sehen was sich geändert hat (vor commit):
git stat
bzw.
git diff (ich hab mir ein „git kdiff3“ gebastelt, was mir den Unterschied graphisch anzeigt)
Um alte Änderungen aufzulisten:
git log
Wenn du es nur für dich selbst versendest, um eine History deiner Arbeit zu haben bzw. um keine Angst zu haben Arbeit zu verlieren falls du unabsichtlich eine Datei löscht ist das schon alles.
Für Kollaboration braucht man dann noch die Befehle pull, push, merge und eventuell branch und rebase. Du musst nicht einmal einen git Server haben um so eine Kollaboration zu machen. Du kannst mit format-patch einen Patch erstellen, denn du per Mail verschicken kannst. Oder mit send-email kannst auch gleich direkt verschicken, wenn du deinen Mail-Account eingerichtet hast.
Für das alles gibt es aber auch gute GUIs, wenn man aus irgendeinen Grund die Shell nicht verwenden will.
Mit mercurial (hg) geht das ganze sehr ähnlich. Von ein paar Punkten her ist mir das sogar sympatischer. (GitHub ist der Grund dafür, dass ich git verwende, wenn ich es verwende.)
Eine ganz minimale Art der Versionskontrolle gibt’s angeblich sogar in Word („Änderungen aufzeichnen“ oder so). Aber ich schreibe lieber in plain text Dateien und verwalte die mit mercurial. Damit kann man sich auch einfach ein repo auf den USB stick packen und man muss keine Angst mehr haben Änderungen zu verlieren, wenn man eine Datei auf unterschiedlichen Rechnern bearbeitet.
Wenn ich an ein Projekt, das aus unerfindlichen Gründen gar keine Versionskontrolle verwendet (gibt da so ein paar kleine) einen Patch sende, dann mach ich vorher ein lokales Repo, schmeiß alle verfügbaren Versionen der Software als commits unter dem Namen des Originalautors rein und entwickle meinen Patch dann als branch da drauf. Dann ist das mergen wenn es neue Releases ohne meinem Patch gibt auch kein Problem.
Also Versionskontrolle ist IMHO ein absolutes muss, eigentlich nicht nur für Programmierer sondern für alle die plain text Dateien bearbeiten.
Zur Datumsberechnung sagt eigentlich dieses Video alles: https://www.youtube.com/watch?v=-5wpm-gesOY
Hallo vielen Dank für die neue Folge. Ich habe schon lange auf etwas neues gewartet. Das Buch habe ich neulich zufällig in unserer Buchhandlung gefunden und ins Herz geschlossen. Leider ist Frau Passig meiner Meinung nach nicht ganz bei der Sache und lässt den sonst in diesem Podcast und bei Kolophon üblichen Enthusiasmus etwas verloren gehen. Es wäre schön gewesen wenn diesem tollen Thema und dem Buch ein Podcast wie Eltern sein kurz&geek oder Computerforensik vergönnt gewesen wäre. Das Buch hätte es verdient.
Kathrin war kein angenehmer Gast. Bis zu ihren Statements über Versionsverwaltungssysteme hab ich es probiert. Dann wurden mir ihre Statements allerdings zu doof.
Schade. Nur mit Tim und Jan wäre es einfacher geworden.
Pingback: Kathrin Passig: Das Programmieren geregelt kriegen - Virenschleuder-Preis #vsp14