[[!meta title="Programmieren in Go: Ein einfacher URL-Shortener"]]
Im Rahmen dieses Workshops werden die Grundlagen der Programmierung in Go anhand der Implementation eines URL-Shorteners erklärt. Es handelt sich dabei um ein Programm, welches kurze URLs erstellt (z.b. http://meineseite.ch/sf) die auf längere, schwer zu merkende URLs verlinken (z.B. https://www.google.ch/maps/place/Starship+Factory/@47.554587,7.601598,17z/data=!3m1!4b1!4m2!3m1!1s0x4791b9b59742b9a7:0xb1ab8567641952b1).
Im Rahmen des Kurses wird erläutert, wie die Programmiersprache Go aufgebaut ist und welche Features zum Erstellen eines URL-Shorteners wichtig und hilfreich sind.
# Ziel des Kurses
Alle Teilnehmer sollen am Ende des Kurses einen funktionierenden URL-Shortener selbst implementiert haben. Die Programmierung in der Sprache Go soll nichts fremdes mehr darstellen.
# Voraussetzungen
Zur Teilnahme am Kurs wird ein Computer (idealerweise ein Laptop) benötigt. Es sollten darauf folgende Programme installiert werden:
* [Die Go-Entwicklungsumgebung](http://golang.org/doc/install)
* Ein Editor, welcher idealerweise bei der Programmierung in Go unterstützend wirkt (z.B. [vim](http://vim.org), [emacs](https://www.gnu.org/software/emacs/), [Sublime Text](http://www.sublimetext.com/)).
## Vim
Für Vim wird ein spezielles Syntax-Paket benötigt, um Go-Code zu schreiben.
Des Weiteren empfiehlt sich die Installation des Pakets [YouCompleteMe](https://github.com/Valloric/YouCompleteMe), welches automatische Vervollständigung für vim bietet.
Unter Debian und Ubuntu erhält man dies ganz einfach durch die Eingabe des folgenden Befehles:
> % sudo apt-get install golang vim-gtk vim-syntax-go vim-youcompleteme
## Sublime Text
Für die Benutzung von Sublime Text mit Go sollte das [GoSublime](https://github.com/DisposaBoy/GoSublime)-Paket installiert werden. Dieses Paket bietet automatische Formatierung und Vervollständigung von Go-Code.
# Quellcode
Der fertige Quellcode des Projekts ist auf [Github](http://github.com/) zu finden:
# Weitere Ressourcen
*
*