Learning GIS programming: An overview
The
diversity of programming languages and tools being used in GIS (in
general in the Geospatial industry) today is truly staggering. Depending
on what the position requires, one would be expected to have expertise
in SQL, python, C++, Java or JavaScript, Flex and PHP (just to name a
few). Knowledge and competence in programming is a essential skill set
and a critical requirement for most Geospatial job opportunities these
days. A vast majority of job openings in the Geospatial industry
require some expertise in programming, application development and
software management.
As Geospatial
professionals/graduates/students, some of us overlook the importance of
programming in our careers. Some of us believe that our spatial skill
sets are niche enough to compensate for the lack of our programming
expertise. Well that might not be totally wrong. However, knowledge of
programming is most certainly going to open up a whole new array of
possibilities! It might be a good idea to have a look at recent job
postings in the Geospatial industry to get an overview of the
requirements
So which language(s) should you be
learning to excel in the Geospatial industry? Here’s an overview of
programming languages that are widely used in the Geospatial industry.
Overview of Programming languages for GIS
JavaScript:
WebGIS is certainly the next big thing in GIS and right from big data
to twitter visualizations, everything that involves Web User Interfaces
is being written using JavaScript. Google Maps, OpenLayers
and a whole lot of other applications run on JavaScript. Personally, it
has been a great experience for me using JavaScript for WebGIS
projects. It might have its own drawbacks, but its amazing to see what
JavaScript can help you achieve. (JavaScript for Geospatial applications; An Overview).
Java: Java is one of the most commonly taught programming language in universities and many Geospatial solutions like GeoServer and GeoTools are written using Java and is certainly one of the most popular languages among Open Source GIS developers.
C++: A
vast majority of the software we use is written using C++. Most
companies still prefer to develop applications using C++ due to this
very reason. In fact, GRASS GIS, QGIS
and many other GIS software were written using C++ (and python). Most
GPS receivers have their firmwares written in C++. If you are look at
Geospatial industry as a whole, C++ is a certainly good language to
know.
SQL:
GIS is incomplete without a database and SQL is a arguably the most
famous database access and management language. Most databases have
their own additional SQL extensions but the syntax for common tasks is
standard. It is definitely worth spending sometime to learn at least the
basics of SQL.
Python:
Very popular with Geospatial professionals working in the ESRI
environment and is considered as the primary scripting language for
ArcGIS. Python is a great “integrator” and is fairly easy to work with
and is sometimes regarded as more of a scripting language but that
debate is still raging.
There are a many more programming languages like C, C#, Visual Basic.NET, Flex, ActionScript, PHP, VBA for ArcObjects,
etc that are being used in the Geospatial industry. If you want a
complete overview of all the languages used in GIS programming, have a
look at this link (Penn State – Geography Department).
There are many options and it is rather
difficult to say which programming language is “the” one to learn. It
might be a good idea to have a grasp of both Desktop and Web development
languages, say Python and JavaScript for example. An even better idea
would be to have a look at the company where you would like to apply for
a job in the future and examine their programming language
requirements. Here’s a list of tutorials/resources that might be handy.
A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.
ReplyDeletewebsite: geeksforgeeks.org
A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.
ReplyDeletewebsite: geeksforgeeks.org
A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.
ReplyDeletewebsite: geeksforgeeks.org
A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.
ReplyDeletewebsite: geeksforgeeks.org
A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.
ReplyDeletewebsite: geeksforgeeks.org