Jestem programistą / analitykiem GIS w Vermont z oficjalnym wykształceniem w dziedzinie GIS w dziedzinie środowiska. W trakcie mojej kariery w GIS odkryłem potrzebę uczenia się umiejętności programowania. Obecnie pracuję dla firmy konsultingowej, w której większość moich zadań to automatyzacja za pomocą skryptów Python i tworzenie niestandardowych komponentów ArcGIS za pomocą ArcObjects dla VB.Net. Jestem całkowicie samoukiem w tych technologiach.
Bardzo podoba mi się praca programistyczna, którą wykonuję i chciałbym zostać profesjonalnym programistą GIS. Czy ktoś może polecić odpowiednią ścieżkę do osiągnięcia tego celu? W szczególności jestem zainteresowany formalnym szkoleniem, aby poznać najlepsze praktyki w zakresie rozwoju oprogramowania, które można zastosować w odniesieniu do oprogramowania GIS.
źródło
Odpowiedzi:
Myślę, że odpowiedź zależy od tego, czy chcesz wrócić do szkoły, czy nie. Wspomniałeś o „szkoleniu formalnym”; w końcu jedne z najlepszych formalnych szkoleń informatycznych odbywają się w szkole.
Brzmi również tak, jakbyś już miał talent do programowania. Podjąłeś skrypty z pythonem przez ArcGIS, co jest już naprawdę dobrą rzeczą, aby wiedzieć. To, co musisz teraz wiedzieć, to prawdopodobnie proste rzeczy, takie jak:
Jest jeszcze kilka, o których mógłbym wspomnieć, ale tego rodzaju zasady są rzeczami, których będziesz musiał się w końcu nauczyć. W końcu istnieją interfejsy API i narzędzia do tworzenia oprogramowania GIS dla prawie każdego języka programowania. Wygląda na to, że musisz nauczyć się podstaw, aby mieć pewność, że projekt jest dobry, najlepszym miejscem do tego jest szkoła.
Po samodzielnym przejrzeniu wielu z nich najbardziej pomogły mi rzeczy, których dowiedziałem się o OOP. Zrozumienie projektowania obiektowego jest kluczem do programowania w dzisiejszym środowisku pracy.
źródło
Zastanów się również, czy naprawdę szukasz ogólnego programowania lub chcesz utrzymać więcej w dziedzinie ESRI. Podczas gdy wiele szkoleń ESRI jest skierowanych do programistów Arc, formalne podejście „szkolne” pozwoli ci myśleć inaczej.
Tam jest jeden koszt, wtedy zobaczysz pewne rzeczy, które wpłyną na twoją pracę ESRI; ponieważ wzorce, które często stosujesz w ESRI, nie pasują do metod podręczników, dobry program CS będzie chciał uczyć. Dodaj do tego, że program CS poprowadzi Cię w wielu kierunkach, które mogą nie być korzystne dla twoich celów, jeśli zamierzasz utrzymać ESRI GIS w swojej linii biznesowej jako ścieżkę kariery.
jsmith powyżej ma rację; są to dobre obszary do rozważenia; ale z ESRI mogą być mieczem obosiecznym.
źródło
Jeśli chcesz być programistą GIS z pełnym stosem, możesz również zbadać świat open source, aby zobaczyć, ile algorytmów zostało zaimplementowanych. Bazy kodowe, takie jak GDAL, GRASS GIS i GEOS / JTS, są dobrze udokumentowanymi i dojrzałymi bazami kodowymi i są otwarte na wkład. W niektórych kręgach programistycznych zapisy zatwierdzeń są ważniejsze niż certyfikacja / poświadczenie.
źródło
Jeśli byłeś w pobliżu Austin, poleciłbym UT's Software Quality Institute .
źródło
Pamiętaj, gdzie chcesz powiedzieć, jestem programistą GIS, który dorastał w Microsoft ziemia za pomocą Visual Studio i SQL-Server, używając ArcGIS JS. Teraz pracuję dla NYS na terenie JAVA przy użyciu Oracle i Leaflet. Muszę przyznać, że wciąż unikam Java, ale JavaScript i Ulotka są fajne, a PHP jest łatwe dla usług internetowych. Wszystko gotowe, zajęcia na komputerze z college'u dały mi trochę teorii, ale praktyczna praca z innymi była największą pomocą.
Materiały edukacyjne, takie jak Udacity, Sitepoint, Lynda.com i Packt, pomogły mi podnieść moje umiejętności do poziomu, w którym czuję się komfortowo, bez powrotu do szkoły. W moim przypadku posiadanie rodziny oznacza, że nadal muszę pracować i rozmawiać z niektórymi szkołami, które w pewnym sensie nie patrzą na Python, PHP, a nawet JavaScript. Wiele z nich jest nastawionych na duże, w pełni funkcjonalne aplikacje, ale moja praca skupia się głównie na prostych aplikacjach internetowych.
Przed powrotem do szkoły zastanów się, gdzie chcesz być za 5-10 lat. Większość programów CS nie jest ukierunkowana na GIS Development, a większość programów GIS nie obejmuje programowania ani klas baz danych.
źródło
Treningi ESRI mogą być dobrym punktem wyjścia, ale ponieważ kurs jest bardzo krótki (maksymalnie 5 dni!) I obejmuje wiele aspektów, możesz uzyskać dobrą głębokość poziomą, ale bardzo małą głębokość pionową u pacjenta. Jeśli chodzi o programowanie, jestem pewien, że w katalogu ESRI będą dostępne dobre książki.
źródło