Geospatial Technologies kursu için bir Bilgisayar Bilimi dersine dahil edilecek konuları önerme


24

Yerel üniversitede Geospatial Technologies Bilgisayar Bilimi dersi vereceğim. Bu, bilgisayar bilimi kavramlarını jeo-uzaysal teknolojilerle ilgili öğrencilere (GIS ve Uzaktan Algılama) tanıtmak amaçlı giriş dersidir. Geçmişte programlama kavramlarını tanıttım, ancak bunun öğrencilerin kafalarının çoğunda geçtiğini gördüm.

Şu anda bilgisayar donanımı, mekansal veri tipleri (örn. Coğrafi veri tabanları ve coğrafi veri tabanları), ESRI Geodatabase Model (üniversite bir ESRI platformunda çalışıyor), ArcSDE Personal ile temel veri tabanı teorisi hakkında konuşmayı planlıyorum.

Herhangi biri bilgisayar bilimi ile ilgili bazı konuları GIS ve Uzaktan Algılama uygulayıcılarının işgücüne girmeden önce bilmeleri gereken tavsiye edebilir mi?

GÜNCELLEME: Son yılların müfredatı dahil:

  • Google Haritalar Javascript API / HTML / Google Earth / KML - 5 hafta
  • Python Scripting - 6 hafta
  • Veritabanı Teorisi / MS Access - 2 hafta
  • VBA - 2 hafta

Öğrencilerden aldığım cevap, her konuda yeterli zaman harcanmamasıydı. Python'u kullanarak GIS Programcılığı'nda bir sonraki seviyeye geçmek için üniversiteyle konuşuyorum.


2
Kesinlikle betik ve projeksiyonlar eklerdim. Başka bir not, bir ESRI kısa mı? GI platformlarında agnostik yapmayı denerdim. Çok daha fazla şirket ve kuruluş da bu şekilde kaynaştığından, daha fazla açık kaynaklı proje sunmaya çalışırdım. Mümkünse programlama çerçevelerini de tanıtırım. Son seferinde kafalarının üzerinden geçtiğini söylediğini biliyorum, ama en azından, en temel GI pratisyeni olan imo için bile senaryo yazmaya ihtiyaç duyuldu.
Kıllı

1
Senaryoyu dahil ettim ama senaryo yazımının kendi rotası olmalı. Orada sadece daha büyük bir kursun birkaç hafta içine sıkmak için çok fazla var. Python kullanarak GIS Programcılığında ileri düzeyde bir kurs sunmak istiyorum.
Brian

2
İyi noktalar, @Hairy. Neden onları cevap olarak paylaşmıyorsun?
whuber

1
İlginçtir, Brian, bu kursun amacı “bilgisayar bilimi kavramlarını tanıtmak” olarak nitelendirilse de, 15 haftadan sadece 2'sinin buna (veritabanı teorisi) ayrıldığını görünmesi ilginçtir. Geri kalan kavramlar yerine pratik uygulamalar gibi görünüyor. Belki de, özellikle müfredatta özel olarak belirtilmeyen kavramları öğretmek için araçlar olarak tasarlanmıştır? Bu durumda, GM / GE / KML, Python ve VBA segmentlerinde hangi kavramları öğretmeyi umduğunuzu göstermeye yardımcı olacaktır.
whuber

1
@whuber - Geçen yıl kurs daha pratik beceriler olacak şekilde tasarlandı. Öğrencilerin çoğu, geleneksel GIS derslerinde yeterince teori aldıklarını düşündüm. Uygun bir arka plan olmadan pratiğe daldıktan sonra, öğrencilerin çoğu kayboldu. Python'da bir iş akışının nasıl bir şekilde yazıldığını, diğerinin bellek ve işlemci kullanımını nasıl etkileyebileceğini ve öğrencilerin çoğunun bellek ve işlemcinin ne olduğunu anlamadığını sanıyor gibi göründüğünü tartışıyorum. Bu nedenle, bu yıl, biraz daha kavramsal olması gerektiğini düşünüyorum.
Brian

Yanıtlar:


29

15 yıl boyunca, CBS listelerini listeler üzerinde yanıtlarken ve şimdi de Web sayfalarında, uygulayıcıların belirli bilgi işlem kavramlarını öğrenmeleri için bir ihtiyaç olduğunu öne süren bazı tekrar eden hususlara dikkat çektim. Bunların hiçbiri derin değil; bütün bunlar iyi bilinmektedir; fakat hepsi, arka plandaki ortak eksiklikler veya GIS halkının önemli bir azınlığının (çoğunluğu?) anlaşılması gibi görünüyor. Pek çok durumda, bir tanım veya örnekten ayrı olarak çok az şey öğrenilmesi gerekir. Mesele, öğrencileri ortaya çıkacak olan tehlikelere karşı uyarmak ve onlara, uzman olduklarında, geldiklerinde onları ele almaları için ihtiyaç duydukları ilkeleri veya araçları vermektir.

Aşağıdaki listedeki bağlantıların tümü bu sitedeki sorulara gider. Bu bağlantıların sadece varlığı, kavramların değerine dair kanıt sağlar. Bağlantıları izleyerek, bu kavramları bilmenin sorunları nasıl çözebileceğini, bunların olmasını nasıl önleyebileceğini ve insanların CBS konusunda daha uzman olmalarına yardımcı olabilecek örnekler bulabilirsiniz.

Bilgi işlem sistemleri

  • Bir bilgisayarın bileşenleri: bir kutu açın, ayırın, parçaları (CPU, RAM, diskler, anakart, ağ kartı vb.) Tanımlayın ve sistemdeki rollerini açıklayın. Demistify ve öğrenciler için somutlaştırın.

  • Bilgi işlem sistemlerinin harici cihazlarda nasıl veri depoladığının anlaşılması . Fiziksel ve mantıksal format kavramları . ASCII (ve benzeri kodlamalar) ve ham ikili arasındaki fark.

  • Dahil sayısal veriler, iç ikili temsil Detaylar IEEE tek ve çift duyarlıklı yüzen ve imzalı ve imzasız tamsayı . Her birinin sınırlamaları. CBS özelliklerini temsil etmek için hangi veri tipinin kullanılacağı nasıl seçilir?

  • Harici depolama ve RAM arasındaki fark . (Bunun inanılmaz derecede temel olduğunu biliyorum, ama orada çok fazla karışıklık var.)

Bilgisayar Bilimi

  • Algoritmaların asimptotik analizi . Pratik düzeyde, O (n), O (n log (n)), O (n ^ 2), (ve daha kötü) zamanlama arasındaki farkları anlamak. Bir kara kutu algoritmasının nasıl ölçeklendiğini test etme.

  • İnsan-bilgisayar etkileşiminin ilkeleri. Bu çok geniştir, ancak bazı form tasarım ilkeleri ve Web sayfası tasarımı çok uzun sürebilir.

  • Hesaplama dillerinin ilkeleri: bir dilden ne beklenebilir, prosedürel ve nesne yönelimi arasındaki fark, ne tür veri yapıları ve dillerin destekleyebileceği ve başvurabileceği, derlenmiş ve yorumlanmış diller arasındaki farklar (ve aralarındaki değişimler) .

  • Veri yapı tasarımının temel prensipleri . Verileri temsil etmek için kullanılan yapılar ile bunları kullanan algoritmalar arasındaki etkileşim. Dizilerin, listelerin ve sözlüklerin kullanımı.

  • Nesneler arasındaki ayrım ve bunlara referanslar. ( Bir değişken adı ve alıntılanan dize arasındaki farkı tanımayan insanlar tarafından birçok hata yapılır !)

  • Bir işletim sistemi nedir, ondan ne beklenir ve onunla nasıl etkileşime girilir.

  • Bir ağ nedir, onlardan ne gibi hizmetler alınmalı, bazı mimarilerin karşılaştırılması ve yerel olarak bilgisayarla uzaktan bilgi işlem hizmetleri arasında elde edilen kazanımlar duygusu.

  • Grafik-teorik algoritmalar: birçok CBS analizi, grafiklerdeki problemler açısından soyut olarak gösterilebilir; Bunu yapabilmek verimli algoritmalara erişim sağlar. Sitemizdeki güzel örnek olduğunu burada başlangıçta grafikleri ile ilgisi var gibi görünüyor bir sorun kapsayan.

  • Özyineleme. GIS uygulayıcıları için iyi bir örnek, uyarlamalı bir nokta dörtlüsü için bu algoritma gibi bir uzaysal endeksin oluşturulmasıdır .

GIS verileri

Veri tabanı sistemleri

CBS

  • Çokgen nokta ve tamponlama dahil temel GIS prosedürlerini gerçekleştirmek için tipik algoritmalar . Neden aynı verilerle tekrarlanan hesaplamalara kıyasla bir kerelik hesaplamalar için veya dinamik (gerçek zamanlı) verilere kıyasla statik veriler için farklı algoritmalar istenebilir?

  • Quadtrees gibi arama ve işleme için GIS verilerinin nasıl organize edilebileceği .

  • GIS verilerinin depolanmasında çözünürlük / hassasiyet / hız arasındaki değişimlerin değerlendirilmesi (özellikle raster veriler).

derleme


Bu başımın üstünde olduğu için, kesinlikle eksik. İnsanlar listeyi yararlı buluyorsa, onu geliştirmek için çalışacağım - ya da bana yeterli ve yeterli üne sahipseniz eklemek için çekinmeyin. Bunu pratik ve odaklanmış tutmak için, lütfen yalnızca insanların gerçekten gözlemlediğiniz sorunlardan kaçınmasına yardımcı olacak kavramları (kendi işinizde veya başkalarınınkilerle) ele alın.


'Harici depolama ve RAM arasındaki fark' konusundaki örneğinizin ne anlama geldiğini anlamadığından emin değilim. RAM diskleri var ve bu geçerli bir kullanım.
tomfumb

@ Bu noktada gerçekten değinmek istediğim , depolama aygıtlarının veya RAM formlarının çeşitli özelliklerini anlamadan, tüm depolama ve RAM "belleği" olarak adlandırılan kullanıcılar arasındaki ortak karışıklıktır . Bir RAM sürücüsünün ne olduğunu ya da anlayıncaya kadar nasıl çalıştığını anlamak pek mümkün değil ... tekrar söyleyeyim mi? ... harici depolama ve RAM arasındaki ayrımı. Ayrıca, bir RAM disk, uçuculuğundan dolayı bir depolama aygıtı olarak kabul edilemez; ancak SSD'ler kesinlikle çizgileri bulanıklaştırıyor ve yüksek hızlı ağlar üzerinden bulut tabanlı depolama.
whuber

1
Keşke sınıfta sunulan eşzamanlı programlama kavramlarına daha fazla dikkat etseydim . Muhtemelen çok fazla görev yapmakla meşguldüm :) Web’de uzun süredir devam eden işlemlerle bunun çok önemli olduğunu düşünüyorum. Ayrıca eski COM ile ilgili konuların ele alınmasında da yardımcı olacaktır.
Kirk Kuykendall

@Kirk İyi öneri. Paralel programlama kadar hızlı bir şekilde yaygınlaştığını, ayrıntılarını başarılı bir şekilde soyutladığımı ve çoğu durumda onu kullanmak için fazla bir şey bilmemize gerek olmadığına inanıyorum. Örnek olarak: Mathematica'da yapmanız gereken tek şey bir Parallelizekomutun içine bir kod bölümü sarmak ve gerisini halleder. (Altta yatan teknoloji anlamak rağmen, hala bu yeteneği en iyi şekilde yararlanmak için yararlıdır.)
whuber

11

Fakülte'nin (ders) ve yardımcı programın (laboratuar) birbirinden güzel bir iş çıkardığı ESRI merkezli bir programdan mezun oldum. Akademi'den ayrılmamdaki başlıca zayıf yönlerim: 1) SQL becerim yoktu, temel veritabanı ilkeleri bilgim yoktu; ve 2) çoğu veri seti için gereken programatik ön işleme için hazırlıksızdım.

CSV, TXT veya SHP dosyalarını temizlerken kullanmak için uygun bir RDBMS (muhtemelen PostGIS ile PostreSQL) ve bir programlama dili (muhtemelen Python) tanıtmak için bir "veri işleme" atölyesi öneririm. Her birinin tadına bakıldığında, öğrencileriniz "dışarıda" durmak için daha hazırlıklı olacaktır.


1
PostGIS için +1. Ne Access ne de ArcSDE iyi veritabanı tasarımını desteklemez. Uzun vadede, iyi bir SQL bilgisi, bir RDBMS'deki “benzeri” bir konumdaki uzamsal verileri ele almanın "ESRI yolunu" öğrenmekten çok daha değerlidir.
underdark

@ rec.thegeom - Benzer türde bir programdan (aynı üniversitede okuyorum) aynı kısa yollardan mezun oldum ve işimi öğrenmek zorunda kaldım. Bence akademik topluluk, GIS kariyerinde başarılı olmak için hangi beceri ve bilgilerin gerekli olduğu konusunda bir anlayışa sahip olma eğiliminde olmadığını düşünüyorum. Veri depolama ve yönetiminin, herhangi bir GIS eğitiminin bel kemiği olması gerektiğini düşünüyorum. Sonuçta, GIS veri analizi ve görselleştirmenin başka bir şeklidir. Öğrenciler ESRI ortamına aşina olduklarından (zaten yüklü olanlardan) veritabanı çalışması için SQL Server Express'i kullanmayı umuyorum.
Brian

10

Üniversite ESRI kullanıyor olsa bile, açık kaynaklı eşdeğerleri tanıtmanızı veya tanımlamanızı tavsiye ederim. Birincisi, QGIS önemli ölçüde daha küçük olduğundan (ArcGIS 10 2 - 3GB) ve öğrencilerin bir internet bağlantısına sahip olmadıklarından, bir form dosyasını açmayı denemek istiyorlarsa, QGIS'i dizüstü bilgisayarlarına ArcGIS'ten daha kolay bir şekilde yüklemeleri daha kolaydır. Üniversitemde GIS yerine ArcGIS'e odaklanmış bir müfredat var; Şahsen bunun geriye doğru olduğunu düşünüyorum.

KML'yi google earth veya google maps ile tanıtmak, öğrencilerin ilgisini çekmenin bir yolu olabilir. KML popülerdir ve etkileşimli bir harita oluşturmak, kağıt bir haritadan biraz daha heyecan vericidir; özellikle bir web bağlantısını başkalarıyla paylaşabiliyorsanız.


2
Yalnızca ESRI öğretiminin geriye doğru olduğuna katılıyorum. Ne yazık ki, üniversite aynı fikirde değil. Ayrıca, BT kısıtlamaları nedeniyle, kursun gerçekleştiği bilgisayar laboratuarına herhangi bir ek yazılım yükleyemiyorum.
Brian

1
@Brian anlıyorum. Öğretimi çeşitli sorulara odaklanan şekilde çerçevelemenin bir yolu olabilir ve ESRI ürünleri bu soruları yanıtlamanın bir yoludur. Aracın düşünmeyi ve ifadeyi (insan dili gibi) etkilediğini ve bunun vurgulanması gereken önemli olduğunu düşünüyorum.
djq

KML'yi tanıtmak, bazı öğrencileri
içeriye

Öğrencilerin açık kaynaklı ürünler yüklemesine veya kullanmalarına rağmen, sadece başka seçeneklerin mevcut olduğu gerçeğine maruz bırakmak için mevcut olan açık kaynaklı alternatifleri tartışan bir gün veya hafta olması çok faydalı olacaktır. ESRI’dan Evde GIS yazılımını denemek veya kullanmak istiyorlarsa, kendi başlarına araştırmak için alternatif seçeneklere sahip olurlar.
RyanDalton

4

Kesinlikle betik ve projeksiyonlar eklerdim. Başka bir not, bir ESRI kısa mı? Şimdi çok fazla olduğu gibi, 'GI agnostik' yapmayı dener ve ESRI'nin tam bir tekele sahip olmadığından ve bütçeler küçüldükçe imo pazar payları da küçülür. Bu yüzden daha fazla açık kaynaklı proje sunmaya çalışacağım ve daha pek çok şirket ve kuruluş bu şekilde hareket ediyor.

Mümkünse programlama çerçevelerini de tanıtırım. Son seferinde kafalarının üzerinden geçtiğini söylediğini biliyorum, ama en azından senaryo yazımına en basit GI uygulayıcısı tarafından bile ihtiyaç duyuluyor.

Veritabanı becerileri de gereklidir. Yine, en temel GI pratisyeni bile, muhtemelen bir tür veri deposunu sürdürmek zorunda kalacak ve bu verilerin manipüle edilmesi, günlük işlerinin önemli bir unsuru olacak.

Yapmam gereken en yaygın şeylerden biri, kullanıcılara GIS'in gerçekte ne olduğunu öğretmektir. Bazen, Google Haritaları dışında, pek az insanın GIS hakkında ne kadar şey bildiği konusunda beni şaşırtıyor. Bu yüzden, onların, bütünsel olarak, kullanıcılardan sistemlere ne olduğunun anahtar bir anlayış olduğunu göstermelerini sağlamak tüm kullanıcılar için yararlı olacaktır. Son zamanlarda, bazı deneyimlerden oluşan bir Java geliştiricisi ve bir uzman olarak derecelendirdiğim biriyle çalışıyordum, ancak bir CBS'nin ne olduğunu tam olarak anlamadı.

Bir yerin ne olduğu konusunda yeterli sayıda kişi düşünmediği için, onlara yer göstermek de iyi olurdu.

Bununla birlikte, Ben Hur'dan daha büyük olma potansiyeline sahiptir. Üniversitede Bilgisayar Bilimleri okudum, bir CBS modülü ile. O zaman CBS'de yüksek lisans derecesi tamamlamaya devam etmesine rağmen, sektörde 15 yıl çalışıyorum, hala öğreniyorum, bu yüzden hepsini almak imkansız.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.