GIS mit Go
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Subtitle |
| |
Title of Series | ||
Number of Parts | 119 | |
Author | ||
License | CC Attribution 4.0 International: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/67703 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
| |
Keywords |
00:07
GeodesicGopher <Programm>Programming languageLOGOSoftware developerComputer animation
00:30
SoftwareEmailWeb pageSoftware developerService (economics)TelecommunicationField (computer science)Computer animation
00:35
Service (economics)Spatial data infrastructureBitData miningComputer animation
00:48
Programming languageGoogleCommon Language InfrastructureWeb pageSoftware repositoryProgramming languagePlug-in (computing)Software developerProgrammer (hardware)GEOS <Betriebssystem>UpdateGoogleLINUXComputing platformMultithreadingGeodesicProjective planeNormal (geometry)Data miningCartesian coordinate systemDifferent (Kate Ryan album)Computer programmingRight angleVariety (linguistics)Data managementFile formatMultiplication signParameter (computer programming)Web serviceBitBinary codeStatement (computer science)Classical physicsGeometryIntegrated development environmentJava appletRepository (publishing)Library (computing)Server (computing)Natural languageComputer animation
Transcript: German(auto-generated)
00:07
So, hallo allerseits, ich fahre fort mit dem Thema GISS mit Go, wie man die Programmiersprache Go für Geodaten nutzen kann. Was man hier sieht ist das Logo von Go und außerdem das Maskottchen, das
00:22
heißt Gopher oder Gufer. Ich weiß auch nicht, wie man es ausspricht und das werdet ihr jetzt noch öfter im Vortrag sehen. Kurz zu mir, mein Name ist Jakob Mikscht, ich bin Softwareentwickler bei der Firma Citicom. Wir machen Dienstleistung im Bereich Telekommunikation und ich konkret im Bereich Glasfaser und wir haben da eine Geodateninfrastruktur
00:42
aufgebaut bzw. Kollegen von mir und die haben das mit Go gemacht und dann habe ich mich auch mal dran versucht und mich ein bisschen schlau gemacht, wie man Go denn für Geodaten nutzen kann und ich war relativ erstaunt, wie angenehm das Entwicklungs Setup war oder das reinkommen in diese
01:04
Programmiersprache, weil ich eben schon ein paar Programmiersprachen getestet habe. Einfach an so ein bisschen niedrige Sprachen war das Java und ich fand es immer sehr, also wenn es mal funktioniert war gut, aber oft hat man ein bisschen Probleme gehabt das ganze Setup einzurichten und bei Go war das wirklich sehr angenehm. Wen es noch genau interessiert, wie wir diese GDI
01:24
aufgebaut haben, da habe ich morgen auch noch einen Vortrag über QGIS Server, wie wir das benutzen und da auch eben Go davor geschaltet haben und jetzt kurz Facts zu Go. Das wurde 2007 bei Google entwickelt, also es ist verhältnismäßig jung, hat relativ wenige Keywords und lesbaren Syntax und
01:43
die Sprache ist wirklich darauf optimiert, dass es angenehm zu lesen ist und dass auch Entwickler, die jetzt nicht viel in dem Projekt gearbeitet haben, trotzdem relativ schnell verstehen, worum es geht. Dann die Programmiersprache ist sehr performant, auch so Multithreading und solche Sachen sind gleich von vornherein mit eingebaut, hat vielfältige
02:04
Anwendungsmöglichkeiten, aber was ich jetzt häufig beobachtet habe, sind, dass es eben für Web-Services genutzt wird, im Cloud-Bereich, aber auch Kommandozeilen, Werkzeuge kann man damit machen. Die Entwicklungsexperience ist, wie ich schon gesagt habe, sehr angenehm. Man installiert es einfach, indem man so einen kleinen Snippet ausführt auf der Kommandozeile und hat
02:24
eigentlich schon die ganzen Tools mit dabei, also da ist nämlich Formatierungen mit dabei und man kann bei Go von vornherein vorgegeben, welche Formatierungen man machen muss und wenn das nicht richtig formatiert ist, dann kompiliert das Programm einfach nicht. Das heißt, es gibt auch keinen Streit, welche Formatierung ist die richtige oder
02:40
falsche. Es ist einfach von vornherein vorgegeben, es gibt nur eine einzige und man startet einfach mit Go run das Programm und es läuft einfach schon los und die Dependencies werden auch automatisch installiert, also das auch so ein bisschen Lessons Learned aus anderen Programmiersprachen. Deployment ist auch sehr einfach, man kann einfach ein Binary deployen oder erzeugen, das läuft sofort auf Windows, Mac oder
03:04
Linux bzw. muss halt für jede Plattform eins machen und hat üblicherweise auch keine weiteren Dependencies mehr, sondern steht einfach für sich. Dieses Binary kann einfach rumgeschoben werden, verschickt werden und dann wieder weiter ausgeführt werden. Und um mich ein bisschen schlau zu machen, was Go eben alles so kann, habe ich eine
03:24
Sammlung gemacht auf GitHub, wo ich mal versucht habe, alle Projekte, die im Geo-Umfeld, die mit Go geschrieben sind, zu sammeln. Die könnt ihr euch gerne mal angucken, die sind ein bisschen aufgeteilt nach Bibliotheken und Servern, die es dazu eben gibt. Und dann möchte ich
03:43
noch einen kurzen Shoutout machen für ein Plugin Repository für QGIS, das ein Kollege bei mir bei Citycom eben entwickelt hat. Das nutzen wir, um die QGIS Plugins, die wir lokal eben nutzen, zur Verfügung zu stellen, sodass dann die User sich ganz normal über den
04:02
Plugin Manager bei QGIS, sich die Plugins runterladen können und wenn es auch Updates gibt, auch informiert werden. Und da gibt es tatsächlich auf der Forskis auch noch andere Vorträge oder einen Vortrag, der auch dasselbe Konzept hat, nur in einer anderen Programmiersprache, falls es jemanden noch mehr interessiert. Dann mein Fazit. Also es eignet sich auf jeden Fall, Go eignet sich
04:24
sehr gut, um so APIs zu machen, Datenbanken anzubinden. Deployment ist einfach, das Developer Setup ist super einfach. Meine Einschätzung zum QGIS Ökosystem ist allerdings noch ein bisschen, dass es verhältnismäßig schwach ausgeprägt ist. Es gibt für viele Bereiche
04:41
schon ein paar Bibliotheken, aber ich habe das Gefühl, dass oft immer nur ein Entwickler da dran war und es dann auch oft viele länger Zeit keine QBITS mehr gab. Und auch für diese klassischen Programme wie GDAL, Proj und Geos gibt es auch keine eindeutigen Bibliotheken, sondern immer zwei konkurrierende. Und also es kann funktionieren, muss es eben prüfen. Jetzt ist die Zeit abgelaufen.
05:05
Und ja, also meine Aussage ist, es eignet sich auf jeden Fall sehr gut für so Clue-Code, also um Sachen miteinander zu verbinden und auch für manche Geo-Anwendungen. Zum Schluss noch ein paar Links und dann bedanke ich mich für die Aufmerksamkeit.