Rezension: Machine Learning with Python

Nach längerer Zeit folgt an dieser Stelle mal wieder eine Buchrezension. In diesem Artikel wird das Buch „Machine Learning mit Python“ mit dem Untertitel „Das Praxis-Handbuch für Data Science, Predictive Analytics und Deep Learning“ vom Autor Sebastian Raschka besprochen. Erschienen ist das Buch beim mitp Verlag. Zu dem handelt es sich bei diesem Buch um eine Übersetzung aus dem Englischen. Hinweis: Der mitp Verlag stellte mir für die Rezension ein Rezensionsexemplar frei zur Verfügung. Das Buch erschien in der deutschen Übersetzung bereits am 30. November 2016, am 22. Dezember 2017 folgt dann schon die zweite Auflage, in dem der Fokus um TensorFlow erweitert wurde. Diese Rezension richtet sich explizit auf die erste Auflage des Buches. Genannte Kritik-Punkte können durchaus korrigiert bzw. verbessert worden sein. ...

February 7, 2018 · 3 min · Sujeevan Vijayakumaran

Schönere Git Diffs im Terminal mit diff-so-fancy

Es sind manchmal die kleinen Dinge, die einem im Terminal noch glücklicher machen, für Probleme, die man vorher gar nicht hatte. Ein Beispiel ist etwa das Anzeigen von Unterschieden zwischen zwei Versionen mit einer Datei mit diff bzw. in diesem Fall ein einfaches git diff. Mit diff-so-fancy lässt sich das Git Diff spürbar aufhübschen, sodass es besser für den Menschen lesbar ist. Wie so häufig sagen Bilder mehr als viele Worte, weshalb hier ein Screenshot folgt, wo das Standard Diff verwendet wird: ...

January 12, 2018 · 2 min · Sujeevan Vijayakumaran

Aufzeichnung und Folien des Git-Talks & -Workshops auf der FrOSCon 2017

Letztes Wochenende fand die 12. FrOSCon in St. Augustin statt. Für mich war es die dritte FrOSCon in Folge. Ich selbst habe diesmal zwar nicht den Ubuntu Stand betreut, stattdessen habe ich einen „Git für Einsteiger Workshop“ durchgeführt, sowie den Vortrag „Nicht alltägliche Git-Funktionen“ gehalten. Nicht alltägliche Git-Funktionen Der Talk war schönerweise gut besucht und wurde auch, wie zahlreiche anderen Talks, aufgezeichnet. Die „Folien“ des Talks finden sich auf meinem Speakerdeck-Account. Alle Aufzeichnungen der FrOSCon finden sich auf media.ccc.de. Meinen Vortrag findet man hier. ...

August 22, 2017 · 2 min · Sujeevan Vijayakumaran

Git-Talk und Git-Workshop auf der FrOSCon 2017

Am 19. und 20. August findet in St. Augustin bei Bonn die FrOSCon statt. Für mich ist es mittlerweile eine der Open Source Veranstaltung neben der OpenRheinRuhr und der Ubucon, die ich möglichst nicht verpassen will. Dieses Jahr bin ich so da zum (erst) dritten Mal in Folge. Das Programm der diesjährigen FrOSCon veröffentlicht. Ich selbst bin dieses Mal mit einem Vortrag und einem Workshop vertreten. Nicht alltägliche Git-Funktionen Im letzten Slot am Samstag um 17:45 findet mein Talk mit dem Titel „Nicht alltägliche Git-Funktionen – Committen, Pushen, Mergen kann jeder – aber was gibt es darüber hinaus?“ statt. ...

July 20, 2017 · 2 min · Sujeevan Vijayakumaran

CRLF in LF automatisch umwandeln in Git-Repositorys

Es sind manchmal viele Kleinigkeiten in einem Projekt in einer Gruppe, die Mitarbeiter ziemlich nerven können. Neben offensichtlichen Dingen wie Clean Code und einheitliche Bennung von Dateien, Klassen und Methoden, ist eine Sache die häufiger im Zusammenspiel zwischen Windows- und Linux-Nutzern stört: Der Zeilenumbruch. Im Windows-Universum besitzen Zeilenumbrüche ein CR LF und unter Linux LF. Näheres zu Zeilenumbrüchen findet sich im entsprechenden Wikipedia-Artikel zu Zeilenumbrüchen. Git Repositorys sollten immer nur LF als Zeilenendung enthalten, da gemischte Zeilenenden sich auf den Betriebssystemen unterschiedlich auswirken und einfach unschön in der Handhabung sind. Für Windows-Nutzer kann beim Auschecken automatisch LF durch CR LF ersetzt werden. Ebenso sollten immer die CR LF in LF umgewandelt werden, wenn man etwas in das Repository eincheckt. In der Git für Windows Standard-Installation wird nachgefragt, wie Zeilenumbrüche gehandhabt werden sollen. Im Standard wird die zuvor beschriebene automatische Umwandlung vorgeschlagen, die man akzeptieren sollte. ...

July 7, 2017 · 2 min · Sujeevan Vijayakumaran

Binärdateien effizienter in Git-Repositorys nutzen mit Git LFS

Dateitypen, die sich nicht effizient in Git-Repositories nutzen lassen, sind Binärdateien. Also genau die Dateien, die man nicht mit einem gängigen Texteditor öffnen kann. Mit Git LFS kann man Binärdateien effizienter verwalten, dabei ist Git LFS eine Erweiterung für den Git-Client, ein entsprechendes Gegenstück wird aber auch auf dem Server benötigt. Doch bevor man sich Git LFS anschaut, sollte man verstehen, wie Git Dateien intern abspeichert, um nachvollziehen zu können, warum man eine Lösung wie Git LFS braucht. ...

April 17, 2017 · 5 min · Sujeevan Vijayakumaran

Mit Git Worktree mehrere Arbeitsverzeichnisse managen

In der Regel klont man sich ein Git-Repository, in dem auch ein Arbeitsverzeichnis eines Branches ausgecheckt ist. Je nach Projektart kann es passieren, dass eine Arbeitskopie nicht reicht. Das ist etwa dann der Fall, wenn man ein Projekt kompilieren muss, was eine Zeit in Anspruch nimmt, in derselben Zeit aber auf einem anderen Branch weiterarbeiten möchte. Im Standard geht das so mit einem geklonten Repository nicht, da sich beim Wechsel des Branches das Arbeitsverzeichnis verändert und somit auch die Kompilierung nicht voll durchläuft bzw. es zu Fehlern kommt. ...

April 14, 2017 · 3 min · Sujeevan Vijayakumaran

Git-Repositorys Hosten mit Gitea

Um Git-Repositorys zu Hosten gibt es heutzutage sehr viele verschiedene Möglichkeiten. Die einfachste und wohl bekannteste Lösung für viele Open-Source-Projekte ist die Nutzung von GitHub. GitHub bietet auch das Hosten von privaten, nicht öffentlichen, Repositorys an, doch ist dies kostenpflichtig. GitHub ist zudem nicht Open Source und man kann es nicht selbst Hosten. Eine Alternative ist GitLab, welches sowohl als Service zum kostenfreien Nutzen verfügbar ist, als auch Open Source ist. Auf GitLab.com kann man im Gegensatz zu GitHub seinen Code in privaten Repositorys schieben, ohne bezahlen zu müssen. Da GitLab Open Source Software ist, lässt sich die Community Edition auch auf eigener Hardware selbst hosten. Allerdings ist GitLab vergleichsweise fett und braucht selbst mit wenigen Nutzern recht viel Arbeitsspeicher, hat dafür aber eine Vielzahl an Funktionen. Für Firmen und anderen Projekte dürfte GitLab wohl eine gute Wahl sein, doch ist es für das Hosten von privaten Repositorys für einzelne Personen eher fett, da man die meisten Features wohl eh nicht braucht. Eine weitere Alternative ist Gogs, bzw. dessen neuer Fork namens Gitea. Gitea ist ein recht neuer Fork von Gogs, was wiederum ein quasi-Klon von GitHub ist. Wobei sich der Ausdruck „Klon“ mehr auf das Aussehen und die grundlegenden Funktionen richtet und somit weniger auf den darunter liegenden Code. ...

April 8, 2017 · 5 min · Sujeevan Vijayakumaran