This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| tutorials:learning_gis [2025/09/10 18:21] – Taylor Robbins | tutorials:learning_gis [2025/09/10 19:28] (current) – Taylor Robbins | ||
|---|---|---|---|
| Line 4: | Line 4: | ||
| **Date**: September 9th 2025 | **Date**: September 9th 2025 | ||
| - | I recently made the decision to leave my job in the game industry and work on my side project full time. The side project I ended up settling on is a tool in a field of expertise that I have not personally had a lot of experience with, and although the goal of the project is to make something that I might use and therefore I have some intuition about what kinds of tools might not exist that I want to make, I don't actually know much about the existing endeavors in the space, or the breadth of the target audience I am designing for. I suspect that one of the following may be true: | + | ===== Introduction ===== |
| + | |||
| + | I recently made the decision to leave my job in the game industry and work on my side project full time. The side project I ended up settling on is a tool in a field of expertise | ||
| - My goals have been considered before and either the software already exists but is not well known, or it has been implemented in a sub-optimal way negating the value proposition of the workflow. For example maybe the tool is only available in a web browser, or only available for dekstop, or only works on a small set of data before slowing down, etc. | - My goals have been considered before and either the software already exists but is not well known, or it has been implemented in a sub-optimal way negating the value proposition of the workflow. For example maybe the tool is only available in a web browser, or only available for dekstop, or only works on a small set of data before slowing down, etc. | ||
| Line 10: | Line 12: | ||
| - The tool I want is indeed " | - The tool I want is indeed " | ||
| + | With those possibilities in mind it can often feel a little daunting to enter a new space and try to make progress. I am very likely to make incorrect assumptions or follow threads that end up being dead ends. Or I may do a bunch of work on a tool that I think is cool only to realize too late that some tool already exists and is much more capable than my tool. | ||
| + | |||
| + | For this reason I am approaching this project with a much different style than I normally would a video game. I don't have a fully formed idea of what the end product should be. I know I am ignorant of many facets of the problem and most of the history in the space. But I won't make progress on either problem unless I push forward and start trying to make things in the space. While I go I will do research into the space (reading books, finding existing software and testing it's functionality, | ||
| + | |||
| + | This page should serve a little bit like a blog of my experience, but it will be centered around this core idea that should be applicable to more than just my experience. Each section will cover a particular concrete example of my experience moving from Video Game Development to Geospatial Software, but hopefully the examples help highlight the kind of thing you might experience if you decide to do a similar major transition into a new space. In particular, if you are considering moving into a new field and have been scared of the process, I hope that this page helps encourage you to take the plunge. | ||
| + | |||
| + | ===== The Goal ===== | ||
| + | |||
| + | The is obviously a lot of existing software in and related to maps, so let's go through a few things that I know exist: | ||
| + | |||
| + | < | ||
| + | digraph { | ||
| + | label = " | ||
| + | GlobalMaps; | ||
| + | ExerciseAid; | ||
| + | Academic; | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Companies like Google and Apple have a massive investment in collecting information about our planet and providing access to that data in a huge variety of ways. These endeavors represent the sort of primary thing that a computer might help someone do in-relation to geospatial data. Almost everyone has the need for directions and information gathering. The primary goal here is to collect information from various sources (satellites, | ||
| + | |||
| + | Another kind of geospatial software that exists is personal fitness aids. Many of these are mobile apps that help you track and plan your exercise. For example, you can record your bike ride or run using a smart phone or smart watch to track your GPS location throughout the run, using one of these apps. That location data often gets uploaded to a server somewhere, and the way in which you use the data is determined by the design of the particular app. This kind of location data is distinct from the global maps software in that the location data (and often metadata like time, heart rate, etc.) is personal, it mostly is useful for you alone. As such most of these apps will guarantee an amount of privacy in relation to your location data. However, a distinction of this kind of software is that it doesn' | ||
| + | * TODO: Software like ArcGIS | ||
| + | * TODO: Software like fantasy map creators [[https:// | ||
| + | * TODO: Software like JOSM | ||
| + | * TODO: Python packages for interacting with GIS data | ||
| - | ====== Notes ====== | + | ===== TODO/Notes ===== |
| * First proper use of double | * First proper use of double | ||
| * Remembering my focus (end user, produce and consume, game-y) | * Remembering my focus (end user, produce and consume, game-y) | ||
| * Offline rendering of tiles. Downloading subsets of data from API. Map display expectations from users that are hard to implement in real-time. | * Offline rendering of tiles. Downloading subsets of data from API. Map display expectations from users that are hard to implement in real-time. | ||
| * The size of OpenStreetMaps data. Space partititioning. Back of the envelope math for computational capability for an average laptop/ | * The size of OpenStreetMaps data. Space partititioning. Back of the envelope math for computational capability for an average laptop/ | ||