Programming Resources

Programming is an integral component to geospatial science and performing data management analysis. Code in Python or R can be used to perform analysis and automate bulk processing. Languages like Javascript can be used to customize and improve web mapping applications.

Here are some general websites and tutorials for learning how to code in a variety of languages:

  • CodeAcademy.   Somewhat more computer science focused but there are some data science resources. Lessons in Python, Git, SQL, Javascript, CSS, HTML. Free with paid options.
  • Lessons from Data Carpentry . Free open source lessons for R, Python, SQL. Applied programming options based on field of study. 
  • Data Camp. Paid service but excellent and expansive content. A worthwhile investment if you need to learn a language. R, Python, SQL, and more.
  • Software Carpentry lessons for open source content development in Shell, Git, Python, and R. Content is designed to be instructed, but individuals can move through content in a self-paced format.    

Just getting started and deciding whether to learn Python or R? Check out this comparison of the two popular languages from DataCamp.


Python is an open-source development language used widely for data science and used heavily in geospatial science. It’s fairly easy to learn, is integrated to the ArcGIS world, and has dozens of available libraries for spatial data management, analysis, and visualization.

Python Home Page

Python Tutorials

Learn about Python scripting for ArcGIS with these Esri web courses: Python for Everyone (free) and Python Scripting for Geoprocessing Workflows – (Free if you log in with your CSU Esri account)

Python Programming Beginner Tutorials – YouTube playlist by Corey Schafer

Automating GIS Processes 2019 lessons – YouTube playlist companion to the online course in learning Python and open source geospatial packages


R is a popular open-source statistical programming language used heavily for data science, statistics, and visualization. It has dozens of packages to enable complex and sophisticated analyses.

R Home Page

R Spatial documentation

R Tutorials

Some R resources and tutorials from the Warner College’s Dr. Matt Ross

Find videos on R Spatial on YouTube

Also refer to the links above for general R tutorials and online courses through Data Camp and Code Academy



Javascript is a programming language implemented on web pages to create and control dynamic website content.  In the geospatial world, if you want to customize web maps and mapping applications, Jacascript is the language to learn.

Javascript documentation

What is Javascript?

Try Codepen as a browser-based interface to explore and implement Javascript code while you’re learning or testing web pages.