Będę prowadził kurs na lokalnym uniwersytecie zatytułowany Informatyka dla technologii geoprzestrzennych. Jest to kurs wprowadzający, którego celem jest wprowadzenie koncepcji informatyki do studentów technologii geoprzestrzennych (GIS i teledetekcja). W przeszłości wprowadzałem koncepcje programowania, ale zauważyłem, że omawiało to wielu studentów.
Obecnie planuję omówić sprzęt komputerowy, typy danych przestrzennych (tj. Pliki kształtów vs. geobazy), ESRI Geodatabase Model (uniwersytet działa na platformie ESRI), podstawową teorię baz danych z ArcSDE Personal.
Czy ktoś mógłby polecić inne tematy związane z informatyką, które specjaliści GIS i teledetekcji powinni znać przed wejściem na rynek pracy?
AKTUALIZACJA: Program z ostatnich lat obejmował:
- Google Maps JavaScript API / HTML / Google Earth / KML - 5 tygodni
- Skrypty w języku Python - 6 tygodni
- Teoria baz danych / MS Access - 2 tygodnie
- VBA - 2 tygodnie
Odpowiedź, którą otrzymałem od studentów, była taka, że na każdy temat nie poświęcono wystarczającej ilości czasu. Rozmawiam z uniwersytetem, aby zaoferować kurs następnego poziomu w programowaniu GIS przy użyciu Pythona.
Odpowiedzi:
W ciągu 15 lat odpowiadania na pytania GIS na serwerach list, a teraz na stronach internetowych, zauważyłem kilka powtarzających się problemów, które sugerują, że praktycy powinni nauczyć się pewnych konkretnych pojęć komputerowych. Żaden z nich nie jest głęboki; wszystkie są dobrze znane; ale wszystkie wydają się być powszechnymi brakami w tle lub zrozumieniem znacznej mniejszości (większości?) osób korzystających z GIS. W wielu przypadkach niewiele trzeba się nauczyć poza definicją lub przykładem. Chodzi o to, aby ostrzec uczniów przed pułapkami, które się pojawią, i przekazać im zasady lub narzędzia, których potrzebują, aby zająć się nimi, gdy tylko się pojawią, niekoniecznie stając się ekspertami.
Linki na poniższej liście prowadzą do pytań na tej stronie. Samo istnienie tych łączy świadczy o wartości tych pojęć. Podążając za linkami, możesz znaleźć przykłady tego, w jaki sposób znajomość tych pojęć może rozwiązać problemy, zapobiec ich wystąpieniu i pomóc ludziom w lepszej znajomości GIS.
Systemy komputerowe
Elementy komputera: otwórz pudełko, rozłóż je na części, zidentyfikuj elementy (procesor, pamięć RAM, dyski, płyta główna, karta sieciowa itp.) I wyjaśnij ich role w systemie. Demystify to i uczyń to konkretnym dla studentów.
Zrozumienie, w jaki sposób systemy komputerowe przechowują dane na urządzeniach zewnętrznych . Pojęcia formatów fizycznych i logicznych. Różnica między ASCII (i podobnymi kodowaniami) a surowym plikiem binarnym.
Szczegóły wewnętrznego binarnej reprezentacji danych liczbowych, w tym IEEE pojedyncze i podwójne precyzyjnych pływaków i podpisanych i niepodpisanych liczb całkowitych . Ograniczenia każdego z nich. Jak wybrać typ danych do reprezentowania atrybutów GIS.
Różnica między pamięcią zewnętrzną a pamięcią RAM . (Wiem, że jest to niezwykle elementarne, ale istnieje wiele zamieszania.)
Informatyka
Analiza asymptotyczna algorytmów . Zrozumienie, na poziomie praktycznym, różnic między O (n), O (n log (n)), O (n ^ 2), (i gorszym) czasem. Jak sprawdzić, jak skaluje się algorytm czarnej skrzynki.
Zasady interakcji człowiek-komputer. Jest to zbyt szerokie, ale niektóre zasady projektowania formularzy i projektowania stron internetowych mogą przejść długą drogę.
Zasady języków obliczeniowych: czego oczekiwać od języka, różnica między orientacją proceduralną i obiektową, jakie rodzaje struktur danych i obiektów, które języki mogą obsługiwać i do których się odnoszą, różnica między językami kompilowanymi i interpretowanymi (oraz kompromisy między nimi) .
Podstawowe zasady projektowania struktury danych . Wzajemne oddziaływanie między strukturami używanymi do reprezentowania danych a algorytmami, które je wykorzystują. Zastosowania tablic, list i słowników.
Rozróżnienie między obiektami i odniesieniami do nich. ( Wiele błędów popełniają ludzie, którzy nie rozpoznają różnicy między nazwą zmiennej a jej ciągiem cytowanym !)
Czym jest system operacyjny, jakich usług można się po nim spodziewać i jak z nim współdziałać.
Czym jest sieć, jakich usług można się po niej spodziewać, porównanie niektórych architektur i poczucie kompromisów między uzyskaniem usług obliczeniowych lokalnie a zdalnie.
Algorytmy teoretyczne: wiele analiz GIS można abstrakcyjnie przedstawić w kategoriach problemów na wykresach; dzięki temu można uzyskać dostęp do wydajnych algorytmów. Dobrym przykładem na naszej stronie jest tutaj zaangażowanie problem, który początkowo wydaje się mieć nic wspólnego z wykresami.
Rekurencja Dobrym przykładem dla praktyków GIS jest stworzenie indeksu przestrzennego, takiego jak ten algorytm dla adaptacyjnego kwadratu punktowego .
Dane GIS
Jak przechowywane są dane wektorowe i rastrowe, zarówno wewnętrznie, jak i do wymiany danych.
Jak topologie wielopunktów, polilinii, wielokątów i numerów TIN mogą być reprezentowane i przetwarzane.
Podstawowe zasady kompresji danych stosowane w przypadku danych GIS , zwłaszcza kodowanie długości przebiegu.
Systemy baz danych
Czym jest system zarządzania relacyjnymi bazami danych, czym różni się od innych głównych projektów baz danych, jakie są jego zalety i wady.
Normalizacja i projektowanie baz danych .
Jak wyszukiwać w bazach danych (np. SQL).
Metody dokumentacji, zwłaszcza metadane i słowniki danych .
GIS
Typowe algorytmy do wykonywania podstawowych procedur GIS, w tym wielokąta punktowego i buforowania. Dlaczego różne algorytmy mogą być pożądane dla obliczeń jednorazowych w porównaniu do powtarzanych obliczeń z tymi samymi danymi lub dla danych statycznych w porównaniu do danych dynamicznych (w czasie rzeczywistym).
Jak można organizować dane GIS do wyszukiwania i przetwarzania, takie jak kwadraty .
Ocena kompromisów między rozdzielczością / precyzją / prędkością w przechowywaniu danych GIS (szczególnie danych rastrowych).
Zbieranina
Techniki debugowania: jak wyodrębnić, zidentyfikować i obejść błędy. Jak opisywać i zgłaszać widoczne błędy i anomalie. Jak zadawać dobre pytania w Internecie!
Jak odwracać funkcje za pomocą algorytmów wyszukiwania root . (Niezrozumienie tego często prowadzi do wyjątkowo nieefektywnych algorytmów lub całkowitego rozwiązania problemu).
Jak wybierać spośród programów optymalizujących czarną skrzynkę (ciągła vs. liczba całkowita, wypukła vs. nie, jednowymiarowa vs. wielowymiarowa, liniowa vs. nie itd.). Aby uzyskać więcej przykładów, zobacz problem lokalizacji sprzętu i problem pakowania wielokąta .
Jak poruszać się po systemach pomocy. Czego szukać, a czego odrzucić jako bezużyteczne. (Pomoc ArcGIS online ESRI zapewnia wspaniałe przykłady bardzo dobrych i bardzo złych.) Może to nawet obejmować pewne instrukcje w czytaniu diagramów obiektów .
Ponieważ jest to poza moją głową, z pewnością jest niekompletne. Jeśli ludzie uznają tę listę za przydatną, będę pracować, aby ją ulepszyć - lub pomogę i dodam ją, jeśli masz wystarczającą reputację. Aby zachować praktyczność i koncentrację, prosimy o odniesienie się do pojęć, które pomogą ludziom uniknąć problemów, które rzeczywiście zauważyłeś (w pracy własnej lub innych).
źródło
Parallelize
komendę, a ona zajmie się resztą. (Zrozumienie podstawowej technologii jest jednak pomocne w celu maksymalnego wykorzystania tej możliwości.)Ukończyłem program skoncentrowany na ESRI, w którym wydział wykonał całkiem niezłą pracę oddzielając koncepcję (wykład) i użyteczność (laboratorium). Moje główne słabości po opuszczeniu środowiska akademickiego były: 1) Nie miałem umiejętności posługiwania się językiem SQL, nie znałem podstawowych zasad bazy danych; oraz 2) Nie byłem przygotowany na programowe przetwarzanie wstępne wymagane dla większości zestawów danych.
Polecam warsztaty z obsługi danych w celu wprowadzenia właściwego RDBMS (prawdopodobnie PostreSQL z PostGIS) i języka programowania (prawdopodobnie Python) do czyszczenia plików CSV, TXT lub SHP. Wystarczy, że posmakujesz każdego z nich, twoi uczniowie będą bardziej przygotowani do samodzielnego stawania się „tam”.
źródło
Nawet jeśli uniwersytet używa ESRI, zaleciłbym wprowadzenie lub opisanie ekwiwalentów open source. Po pierwsze, uczniom łatwiej jest zainstalować QGIS na swoich laptopach niż ArcGIS, jeśli chcą przetestować otwarcie pliku kształtu, ponieważ QGIS jest znacznie mniejszy (ArcGIS 10 to 2 - 3 GB), a uczniowie nie potrzebują połączenia z Internetem. Mój uniwersytet ma programy nauczania skupione wokół ArcGIS zamiast GIS; Osobiście uważam, że jest to zacofane.
Wprowadzenie KML do Google Earth lub Google Maps może być sposobem na zaangażowanie uczniów. KML jest popularny, a tworzenie interaktywnej mapy jest o wiele bardziej ekscytujące niż mapa papierowa; szczególnie gdy możesz udostępnić link do strony internetowej innym osobom.
źródło
Z pewnością dodam skrypty i projekcje. Jeszcze jedna uwaga, czy jest to krótki opis ESRI? Postaram się, aby było to „GI agnostyczne”, ponieważ jest ich tak wiele, że ESRI nie mają pełnego monopolu, a ponieważ budżety kurczą się, imo, ich udział w rynku również maleje. Spróbuję więc wprowadzić także więcej projektów typu open source, ponieważ znacznie więcej firm i organizacji zmierza w tym kierunku.
W miarę możliwości przedstawiłbym również ramy programistyczne. Wiem, że powiedziałeś, że ostatni raz przeszło im to przez głowę, ale przynajmniej skryptowanie jest potrzebne nawet najbardziej podstawowemu praktykującemu GI.
Potrzebne są również umiejętności bazodanowe. Ponownie, nawet najbardziej podstawowy praktykujący GI, prawdopodobnie będzie musiał prowadzić pewnego rodzaju magazyn danych, a manipulowanie tymi danymi będzie kluczowym elementem ich codziennej pracy.
Jedną z najczęstszych rzeczy, które muszę zrobić, jest nauczenie użytkowników, czym jest GIS. Czasami zdumiewa mnie, jak mało ludzi wie o GIS, poza mapami Google. Zatem umożliwienie im wykazania się kluczowym zrozumieniem tego, czym jest, w całości, od użytkowników, do systemów, byłoby korzystne dla wszystkich użytkowników. Niedawno współpracowałem z programistą Java z pewnym doświadczeniem i kimś, kogo oceniłem jako specjalistę, ale on tak naprawdę nie rozumiał, czym jest GIS.
Dobrze byłoby też pokazać im lokalizację, ponieważ niewystarczająca liczba osób myśli poza tym, co to jest lokalizacja.
Jednak może być większy niż Ben Hur. Studiowałem informatykę na uniwersytecie z modułem GIS. Pomimo tego, że kontynuowałem studia magisterskie w GIS, a następnie pracuję 15 lat w branży, wciąż się uczę, więc nie można tego zrobić.
źródło