My coding journey started in earnest during the start of 2018 when I was asked to solve a mapping problem. After some experimentation I found google earth and with that the ability to load a .kml file into Google Earth that would allow a user to points of interest added to that map, it was like a light bulb going off in my head. Almost at once I could see that using maps as a way to demonstrate complex ideas was going to be a huge advantage. But in order to get to this communication phase I first needed to get the fundamentals right. This involved getting into web development, data manipulation, automation and then communication.
Now in order to plot complex pieces of information together one must be able to digest and manipulate data, this is a blog post in itself but needless to say that without the ability to manipulate data, at scale, any idea communication is dead in the water. This was when I discovered R Studio. This is a most fantastic piece of open source software that is published to the web by enthusiasts, to my commercial mind this didn’t make sense. Why would people give up their time for a cause if it wasn’t for money? It is on the back of this idea that I was allowed to progress and a huge thanks to those people who do give up their time to make improvements to the ecosystem. {Open source for the win, more on this in another post}. After bumping my head a lot, I became familiar with concepts like joins, longitudinal, lateral data, time series data sets all in the hope of unpacking the insights that this data provided. The other lesson here is the ability to look at a dataset to see whether it contains the necessary pieces you need in order to investigate your theory or topic. The data was not only traditional but also location based, so understanding things like latitude and longitude and them seeing them manifest on a map would also be something that I would need to grapple with, one query at a time. All of these skills were not taught at university nor were they acquired for my day job, I feel this is a great achievement in and of itself, which is being slightly proficient in this skill. Anyone looking to get into developing web apps or any other maps for that matter will need this skill and a few basic concepts really do go a long way.
Once I was able to manipulate data to the degree that I needed. I was then able to find ways of putting data together into something that anyone could read and interpret. At work this involved boring PowerPoint presentations (a skill in itself) but outside of work this involved understanding HTML ( the skeleton) and CSS (the appearance) and JavaScript (the behavior) as postulated by Balaji S. Well out of my depth at this point. This is where I turned to fiverr and was able to find someone to teach me how to get it was done and where to start. The approach here was to get basic building blocks of the fundamentals of web app development. I found myself asking, so now that I have done a few ‘hello world’ tutorials how does anyone else see this information?
I wrote a spec draft of the project that I needed keeping things super simple (hosting and the right host provider is another blog post!). I needed to be clear in my instructions here as this was about trying to get the person that I hired to annotate the code in each step that they were taking. This was in the hope that I would be able to understand it and then I would be able to make changes to it once the project was finished. Thus I could spend the money on getting the framework developed but the final details around the product I would then be able to manipulate, not only would I be able to change the underlying data, with my new found skills, I would also be able to expand the application into new data points. This cost me around $140 to get done and cheap for the ultimate outcome of the learning experience. Some of the best school fees.
Once the UK was unexpectedly into lockdown during 2020 I saw this as the perfect opportunity to learn more. One I had the time on the weekends and some evenings to learn about how things worked and two on the weekends I would be able to keep going without distraction. This was the perfect learning environment. The overarching principle is that one is able to get rapid feedback when dealing with these types of projects, you will know almost immediately when you have broken it and its super easy to retrace your steps. As Anders Erikson would say, a “kind learning environment“.
I have no idea where this is going, as I have read though, innovation lies somewhere at the intersection of disparate disciplines. Where they seemingly do not connect, one with knowledge of all domains could join them together. This is how Walter Isaacson was able to conclude his book about innovators.
An example of what I have made can be found here at this subdomain: map.sagejyoung.com its not much at all but its something that I developed from a standing start and I am able to unpick the entire program down to its component parts. Something that I would not have been able to do 2 years ago.