API (Application Programming Interface)

“What’s an API?” When a new programmer asks this question, they typically get the answer, “an application programming interface.”

But APIs are so much more than their name suggests—and to understand and unleash their value, we must focus on the keyword interface.

An API is the interface that a software program presents to other programs, to humans, and, in the case of web APIs, to the world via the internet. An API’s design belies much about the program behind it—business model, product features, the occasional bug. Although APIs are designed to work with other programs, they’re mostly intended to be understood and used by humans writing those other programs.

APIs are the building blocks that allow interoperability for major business platforms on the web. APIs are how identity is created and maintained across cloud software accounts, from your corporate email address to your collaborative design software to the web applications that help you order pizza delivery. APIs are how weather forecast data is shared from a reputable source like the National Weather Service to hundreds of software apps that specialize in its presentation. APIs process your credit cards and enable companies to seamlessly collect your money without worrying about the minutiae of financial technology and its corresponding laws and regulations.

Source: Jin, Sahni and Shevat (2018). Designing Web APIs. O’Reilly Media, Inc.

Definition of GIS

GIS stands for Geographic Information Systems, but the “S” is increasingly being used to stand for science and studies as well. Geographic Information Science, and Geographic Information Studies are used increasingly. No universally agreed-upon definition has been put forth. Surprisingly, a number of GIS texts do not even attempt to define the term.

Traditionally, GIS is a computer-based system for collecting, managing, analyzing, modeling, and presenting geographic data for a wide range of applications.

Geographic Information Science, then, is the discipline that studies and uses a GIS as a tool. GIS is not simply creating maps with a computer. The technology is a very powerful tool for analyzing spatial data; while maps can be and are produced with GIS, their main power is analytical.

GI scientists do not consider themselves primarily as mapmakers. Although they may produce maps as an end product, their primary emphasis is on analysis of the data. In fact, it is comparatively recently that GI systems people have given much thought to presentation of data.

Edited from: Tyner, J. (2010). Principles of Map Design. The Guilford Press.

Cartography

Cartography has been defined by the International Cartographic Association as “the art, science and technology of making maps, together with their study as scientific documents and works of art.” It has also been defined as “the production—including design, compilation, construction, projection, reproduction, use, and distribution—of maps” (Thrower, 2008, p. 250)

The term geographic cartography is frequently used to distinguish the kinds of maps that geographers use in world and regional studies to distinguish it from engineering cartography, which is used for the type of maps that city engineers create for water lines, sewer lines, gas lines, and the like that would be used in planning and engineering. Many of the principles apply to both; the difference is one of scale.

Source: Tyner, J. (2010). Principles of Map Design. The Guilford Press.

 

Bengkel Laman Web

29 Oktober 2019. Bengkel Laman Web di Makmal Pengajaran 1, Bangunan N28A, Sekolah Perkomputeran, Fakulti Kejuruteraan, Universiti Teknologi Malaysia. Dikelolakan oleh Sdr. Mohd Sharul Hafiz bin Razak dari Unit Webmaster UTM.

Mobile Application Development

Mobile computing has changed the way we learn, interact with online services, and manage information. The popularity of handheld devices among people of all ages and cultures has increased the demand for highly interactive and user-friendly mobile apps. The multitude of sensors available on mobile devices such as GPS, ambient light sensing, and accelerometers have broadened the use of mobile apps in various application domains. Mobile apps vary widely, from weather forecasting and managing a patient’s health to providing online education, among many others.

Both students and lecturers of software engineering with a particular focus on mobile app development struggle to find a self-contained guide on how to follow the development life cycle of a mobile app project. In the great majority of these projects, the process generally follows a traditional software development life cycle—namely, setting up a set of requirements and then following an incremental development of the mobile app up to the achievement of acceptable functionality and design.

A mobile app is, however, very different from a desktop application. For instance, mobile apps are expected to run on multiple mobile operating systems, various screen sizes, and diverse technologies. Testing of mobile apps is therefore different from that of desktop applications. Additionally, mobile apps differ in their context of use and may need to take a number of factors into consideration including internet connection availability and speed, computational complexity, memory requirements, battery status, and accessibility features. These factors affect the software life cycle of a mobile app project and therefore more suitable architectures, design patterns, and testing approaches are needed. In practice, students as well as developers use their experience in desktop application development and customize the methodologies and tools to fit the particularities of a mobile app.

Source: Ghita Kouadri Mostefaoui Faisal Tariq (2019). Apps Engineering Design, Development, Security, and Testing. CRC Press.

Geocoding

Geocoding (geographically enabling unit records) is defined as the process of finding associated geographic coordinates (expressed in latitude and longitude) from other geographic data for the statistical units, such as street addresses or postal codes. (Geocoding is a way to ensure that the data “knows” where it is.)
In other words, geocoding involves taking location information for these statistical units (such as address) and linking this information to a location coordinate (i.e., x,y,z coordinates) and/or a small geographic area. The geocodes (the location coordinates and geographic areas codes) obtained from this process can be stored directly on the statistical unit record or linked in some way to the record. There is a common misunderstanding between geocoding and georeferencing, so it is important to emphasize that while they are related, they are quite different. Georeferencing is often done, for example, with raster images. Georeferencing is the process of referencing data against a known geospatial coordinate system by matching to known points of reference in the coordinate system so that the data can be analyzed, viewed, and queried with other geographic data.

In the GIS industry, geocoding is synonymous with address matching, which is the process of assigning map coordinate locations to addresses in a database.30 A GIS is capable of doing this by comparing the elements of an address or a table of addresses with the address attributes of a reference dataset—the GIS data layer used as the geographic reference layer (e.g., a city’s street centerlines layer)—to find a match (i.e., to determine whether particular address falls within an address range associated with a feature in the reference).

But the concept of geocoding goes beyond address matching. It covers a continuum of spatial scales: from individual housing units to EA levels, up to higher administrative or national levels. The use of GPS, directly capturing precise data at the level of point locations (latitude and longitude coordinates), allows the coding of centroids, building corners, or building point-of-entry coordinates for a unit such as a block of land, building, or dwelling.

Excerpt From: Amor Laaribi. “GIS and the 2020 Census.” iBooks.

Open

“Many other considerations pertain to “open”: open data, open specifications, open APIs, open source, and, most importantly, open systems that are standards-compliant and interoperable for an open community.”

Excerpt From: Amor Laaribi. “GIS and the 2020 Census.” iBooks.

Finding the best locations and paths

“A very common type of spatial analysis, and probably the one you are most familiar with, is optimization and finding the best of something. You might be looking for the best route to travel, the best path to ride a bicycle, the best corridor to build a pipeline, or the best location to site a new store.

Using multiple input variables or a set of decision criteria for finding the best locations and paths can help you make more informed decisions using your spatial data.

Types
• Finding the best locations that satisfy a set of criteria
• Finding the best allocation of resources to geographic areas
• Finding the best route, path, or flow along a network
• Finding the best route, path, or corridor across open terrain
• Finding the best supply locations given known demand and a travel network”

Excerpt From: Amor Laaribi. “GIS and the 2020 Census.” iBooks.

Understanding Where

“If you don’t know where you are, you are lost. Understanding where is about putting the world in context. Where are you? What is around you? Very similar to when you were two years old, your journey of spatial analysis requires an understanding of how you fit into your geography.

Understanding where includes geocoding your data, putting it on a map, and symbolizing it in ways that can help you visualize and understand your data. Within the taxonomy of spatial analysis, the first category of understanding where contains three types of questions.

Types:
• Understanding where things are (location maps)
• Understanding where the variations and patterns in values are (comparative maps)
• Understanding where and when things change”

Excerpt From: Amor Laaribi. “GIS and the 2020 Census.” iBooks.

Geoblockchain

“A blockchain is a growing list of records, called blocks, which are linked using cryptography. Each block contains a cryptographic hash of the previous block, a timestamp, and transaction data. It is a ledger that records transactions in a verifiable, permanent way.”

“Geography is critically important to capture in a blockchain record, which is why we are now calling this a geoblockchain.”

“Adding location to the blockchain would provide enhanced security and validation because the same transaction cannot happen in two places at the same time. Use cases for blockchain being explored today include land title, supply chain, and data exchanges. The amount of data that will become available with systems like these is worth consideration and needs research.”

Excerpt From: Amor Laaribi. “GIS and the 2020 Census.” iBooks.

Where My Location Data come from?

Basically, your Browser feature -Geolocation-, will try to determine your position using one of these several ways. These list, show the ordered devices about what Geolocation will give your location.

  1. GPS (Global Positioning System)
    This happen for smartphone / anything which has GPS inside. If you have smartphone with GPS capabilities and set to high accuracy mode, you’ll likely to obtain the location data from this. GPS calculate location information from GPS satelite signal. It has the highest accuracy. In most Android smartphone, the accuracy can be up to 10 metres.
  2. Mobile Network Location
    This happen if you use a wireless modem or phone without GPS chip built in it. Rather than GPS satellite’s signal, this one use signal from mobile provider. The accuracy may vary. 
  3. WiFi Positioning System
    If you are indoor, and using Wifi, this is the likely you’ll get. Some WiFi have location services capabilities, which able to obtain or save location data. If you’re concern with this stuff, try accessing this website from laptop with your Wifi network. If you can get exact location with very good accuracy, then your WiFi might have such feature. 
  4. IP Address Location
    This one will detects your location based on nearest Public IP Address on your devices, (can be your computer, or the router, or your ISP provider). Depend on the IP information available, but in many case, the public IP is often hidden behind Internet Service Provider NAT, resulting poor accuracy. This is the most often case for PC / laptop user which access internet from cable LAN, or WiFi without Geolocation capabilities. The accuracy is in level of city, region, or even country.

Source: https://mycurrentlocation.net

Development of Web-Based Application for GIS Data Format Coordinate System Conversion

By Elysonia Alim and Shahabuddin Amerudin (Supervisor)

Unpublished 2018 4th Year Undergraduate Project’s Technical Paper

It is difficult to process GIS vector data when they are not aligned with one another. The need for different coordinate systems rose from the fact that some coordinate systems are better fitted to describe the phenomenon happening in a specific area. The purpose of this study is to develop a web application capable of converting the coordinate system of a GIS data format such as a shapefile for Peninsular Malaysia. The web application named Coordinate Conversion Application (CCA) was developed using Django and Python and is capable of 5 coordinate transformations namely WGS84 to GDM2000 and vice versa, WGS84 to MRSO (old), MRSO (old) to Cassini (old) and vice versa. Results obtained were compared with existing software such as GDTS and ArcGIS, and analysis shows that CCA has achieved satisfactory accuracy.

Download Unpublished Technical Paper