client-side (adjective): when an action takes place in a client-server computer network, such as running a computer program on a client's computer
client-side (noun): the end user's local computer rather than a remote server
cascading style sheets (CSS): a document with a .css extension that contains markup language for adding colors, spacing, fonts, etc. (style) to web documents such as HTML5 web pages
codebase: source code written by humans, including markup language, scripting language, or programming, used to construct, or build, a given software component, application, or entire system
front-end (noun): the user interface that a web or mobile application user directly interacts with, such as a web page or graphical user interface, and may also be referred to as the client-side of the application
Git: a free version control system or software tool for managing the contents of a code repository
just-in-time compilation (JIT): dynamic processing of data after a computer program has started execution
library: a collection of shared programming code, such as files, programs, routines scripts or functions that can be used to facilitate the development of other software programs and applications (Swift and Goldberg 2019)
model–view–controller (MVC): common software design pattern for creating user interfaces that separates internal application data from information that the user sees< runtime: the timeframe when a computer programming is running, beginning when the program is launched and ending when it is closes
markup language: a human-readable computer language that uses tags written as text to annotate or define items in a document file, meaning it can contain standard words rather than programming syntax
scripting language: an interpreted computer programming language that is translated into machine code at the time it is run, executed to accomplish specific tasks without being compiled
script: a series of computer programming commands that can be saved in a computer file to facilitate automation of execution of tasks, or that could be executed manually one-by-one in a terminal program or emulator
web application framework: a software framework such as ASP.NET or Ruby on Rails, created to help developers build web applications such as web API's and web services and often providing libraries for simplifying programming tasks such as accessing and configuring data
|Application / Library||Open Source / Proprietary (O / P)||Link|
|Carto.js, Carto VL (Carto/CartoDB)||O / P||carto.com|
|D3 (Data Driven Documents)||O||d3js.org|
|Google Maps API||O / P||developers.google.com/maps/documentation|
|MapBox||O / P||mapbox.com|
|OpenWeather Map API||O / P||openweathermap.org|
3.2 Use Cases
- If you already have a useful codebase to start with, you should consider using the one you have in hand and building upon it. If you don't, there may be added cost in time if you add a new language to your project, depending on the coder's experience.
Aycock, J. (2003). A brief history of just-in-time. ACM Computing Surveys. 35(2)97-113. DOI: 10.1145/857076.857077
Chow, E., and Yuan, Y. (2019). GIS APIs. The Geographic Information Science & Technology Body of Knowledge (2nd Quarter 2019 Edition), John P. Wilson (Ed.). DOI: 10.22224/gistbok/2019.2.15.
Coast, S. (2013). Mapping my next adventure. Retrieved on August 16, 2020, from https://stevecoast.com/2013/09/03/mapping-my-next-adventure/.
ECMAScript (2020). Language Specification. Retrieved on August 16, 2020, from https://tc39.es/ecma262/#sec-overview.
Esri (2016). Introducing Survey123 for ArcGIS. Retrieved on August 16, 2020, from https://www.esri.com/arcgis-blog/products/survey123/announcements/introducing-survey123-for-arcgis/.
Esri Storymaps Team (2020). Mapping the novel coronavirus pandemic. Retrieved on August 16, 2020 from https://storymaps.arcgis.com/stories/4fdc0d03d3a34aa485de1fb0d2650ee0.
Facebook (2020). React. Facebook Open Source. Retrieved on August 16, 2020, from https://reactjs.org/tutorial/tutorial.html.
Farivar, C. (2012). Craigslist is on board: OpenStreetMap soars to new heights. Retrieved on August 16, 2020, from https://arstechnica.com/information-technology/2012/08/craigslist-is-on-boardopenstreetmap-continues-soaring-to-new-heights/.
Garrett, J. J. (2005). Ajax: A New Approach to Web Applications. AdaptivePath.com. Retrieved on September 10, 2015.
Google (2020). V8 JavaScrip Engine. Retrieved on August 16, 2020, from https://v8.dev/. Gordon, W. (2020). Sluggish Browser? Here's How to Speed Up Chrome. Retrieved on August 16, 2020, from https://www.pcmag.com/how-to/sluggish-browser-heres-how-to-speed-up-chrome.
Huang, Q. (2019). Programming of Mobile GIS Applications. The Geographic Information Science & Technology Body of Knowledge (1st Quarter 2020 Edition), John P. Wilson (ed.). DOI: 10.22224/gistbok/2020.1.2.
Huber, S. and Demetz, L. (2019). Performance Analysis of Mobile Cross-platform Development Approaches based on Typical UI Interactions. In Proceedings of the 14th International Conference on Software Technologies (ICSOFT). 40-48. Prague, Czech Republic. DOI: 10.5220/0007838000400048.
Latif M., Lakhrissi Y., Nfaoui E.H., and Es-Sbai N. (2016). Cross platform approach for mobile application development: A survey. In: 2016 International Conference on Information Technology for Organizations Development (IT4OD). Electrical and Electronics Engineers (IEEE), 1-5. March 30-April 1, 2016. Fez, Morocco. DOI:10.1109/IT4OD.2016.7479278.
MDN (2020). MDN web docs. Ajax. Retrieved on August 16, 2020 from https://developer.mozilla.org/en-US/docs/Web/Guide/AJAX.
Quinn, S. (2018). Web GIS. The Geographic Information Science & Technology Body of Knowledge (1st Quarter 2018 Edition), John P. Wilson (ed). DOI: 10.22224/gistbok/2018.1.11.
Rey, S. J. (2017). Python for GIS. The Geographic Information Science & Technology Body of Knowledge (3rd Quarter 2017 Edition), John P. Wilson (ed). DOI: 10.22224/gistbok/2017.3.4.
Ricker, B., and Roth, R. E. (2018). Mobile Maps and Responsive Design. The Geographic Information Science & Technology Body of Knowledge (2nd Quarter 2018 Edition), John P. Wilson (Ed). DOI:10.22224/gistbok/2018.2.5.
Roth, R. E. (2017). User Interface and User Experience (UI/UX) Design. The Geographic Information Science & Technology Body of Knowledge (2nd Quarter 2017 Edition), John P. Wilson (ed.). DOI: 10.22224/gistbok/2017.2.5.
Sack, C. (2017). Web Mapping. The Geographic Information Science & Technology Body of Knowledge (4th Quarter 2017 Edition), John P. Wilson (ed.). DOI: 10.22224/gistbok/2017.4.11
Swift, J., and Goldberg, D. (2019). Web GIS Programming. In The Geographic Information Science & Technology Body of Knowledge (1st Quarter 2019 Edition), John P. Wilson (ed). DOI: 10.22224/gistbok/2019.1.5.
- Esri (2020). Web AppBuilder for ArcGIS (Developer Edition). Retrieved August 16, 2020, from https://developers.arcgis.com/web-appbuilder/.
- HTML Living Standard – Last updated 13 August 2020. Retrieved August 16, 2020, from https://html.spec.whatwg.org/multipage/.
- The OpenStreetMap Wiki. https://wiki.openstreetmap.org/wiki/.
- Getting started with Turf.js. https://turfjs.org/getting-started/.
- USGS (United States Geological Survey) (2020). Real-time data. Retrieved August 16, 2020, https://www.usgs.gov/products/data-and-tools/real-time-data.