Issue #1: Updates From the Dev Cave
By: Jenn Perez
Tags: Ethereum, Bitcoin, Crypto, Blockchain

Welcome to XYO Network’s very first installment of “Updates From the Dev Cave!”

This is where we’ll share what our awesome dev team is working on, and dig deeper into blockchain and other technology that keeps us coding — late into the night.

This content will be tailor-made for card-carrying github members, but even if you’re just a little curious about blockchain and all the cool projects in the works, hop on board and enjoy the ride. We’ll be posting (at least) every other week.

For our first installment, we’re highlighting the work of a few special guests who are the newest members of the XYO team!

From Caching to Quadhashing: Introducing LayerOne’s Tech

**We’ve just purchased LayerOne, a groundbreaking blockchain development firm. More on that below**

So, how is LayerOne’s location technology different than XYO’s? Here’s a breakdown from our announcement of the sale:

At XYO, we operate at the intersection of Internet of Things (IoT) and Location, which we combine to call “Location of Things” (LoT). But how we combine this with blockchain is where it gets really interesting.

XYO Network is a **Relative** location network — a network tied together by constantly moving nodes.

Yet as humans, we have a hard time reading location data this way, because it’s nearly impossible to understand location data unless one overlays maps as context. We need **Absolute location** protocols — latitude-longitude coordinates, for example — to see and understand exactly where things are in the world.

Need an example? Here’s how Relative location and Absolute location work together:

Relative location: Jim and Jenn are 1.5 meters away from each other.

Relative location AND Absolute location: Jim and Jenn are 1.5 meters away from each other…at Lat. 53.343813 and Long: -6.263538 (bonus points if you’ve been there — I hear the beer is amazing).

LayerOne provides the absolute location. Here’s a breakdown of what they’re working on:

Quadhashing

LayerOne created what we are now calling the Quadhash. A Quadhash is the fastest, most versatile storage protocol for saving locations on the blockchain. On the blockchain, every Bit counts, and location storage needs to be fast, efficient, and precise.With Quadhashes, everything about a location can easily be packaged in a single unsigned integer! We’ve also built a Quadhash library that solves complex location-related problems using simple math and bit-shifts. It is entirely extensible to be used for things like Geo-Indexes, Non-Fungible Tokens, Spatial aggregation, a 3D space representation, or anything that targets a specific point in space/time. We are going to be using Quadhashes at XYO to store real-world locations, events, and build spatially aware smart contracts on the blockchain.

Super cool sidenote: Quadhashes are accurate down to three meters, HOWEVER, if you wanted to use Quadhashes to get ridiculously granular, you can drill down to the nanometer.

Caching

While it would be nice to run a dApp entirely off the blockchain, in reality the responsiveness needed for a fully featured application just wouldn’t be up to today’s standards. This is where caching comes to save the day. By caching relevant blockchain transactions and events, we can provide a very responsive experience to the user as well as allow for more advanced operations not currently possible on the blockchain. In the end, the blockchain always remains the source of truth for all important data points.

React App

When we first started building the app, we tried a relatively new React-Blockchain library called Drizzle. After weeks of trying to figure out how to make Drizzle play nicely with our redux architecture, we decided to roll our own. The gist of it is simple — on app load, create a singleton instance of web3. This can be modified to be anything that talks to the blockchain, such as MetaMask and Portis. From there, we can treat web3 like an API. Combining this with Redux Saga, which allows us to chain actions and side effects together, we have a seamless flow from API request actions in the components, which trigger sagas to fire, which then call API success actions that update our local Redux store.

Dapp Deployer (Easily deploy your web3 dApps)

Development tools are seriously lacking for blockchain developers. The Dapp Deployer is a program that builds, migrates, and deploys your smart contracts to where they need to go. It also imports them with deployed configuration into your React project! Previously, in order to deploy an update for developers to test, our blockchain engineer would migrate the contracts, copy the ABI’s to the local React project, also copy them to our backend that watches the updated contracts as well. Then the React developer and API developer would have to update the addresses for the newly deployed contracts! Whew, all that copying, renaming, and deploying takes hours of developers time. That’s why we are building the Dapp Deployer, which automates the entire smart contract deployment process down to a few seconds!

With many more blockchain projects in the pipeline, you’ll be hearing lots more from the XYO Sacramento team.

Welcome, LayerOne Engineers and Developers!

Rebranded as XYO Sacramento, LayerOne is the latest addition to the XYO fold. Made up of some of the most talented blockchain developers in the location space, LayerOne made waves at ETHDenver Hackathon when they unveiled their innovative geospatial blockchain tech.

Here’s a breakdown of who they are:

Graham McBain: Co-founder, genius, believer that blockchain can pull people out of poverty.

Kevin Weiler: Co-founder, Lead Blockchain Engineer, helped NASA deploy a satellite, sold his last startup for more than $7 million.

CJ McGregor: Backend Engineer, single-handedly built a dating app that supported 30,000 users.

Rasheed Bustamam: React Developer, part-time coach and mentor to working professionals, conducted technical training and development for MIT (yes, that MIT).

Upcoming AMA: What Do You Want to Know?

We’ve thrown a lot at you today, between our LayerOne press announcement, this dev update, and our newsletter. And here’s one other thing: We’re going to start hosting regular AMAs on all things blockchain and geolocation-related!

This will be your chance to ask the tough questions, kick the proverbial tires, and just shoot the binary breeze with developers.

Have questions you want answered live during an AMA? Send us your questions via Facebook or tweet at us with the hashtag #XYOgeodev.

Thanks for reading our first issue of Updates from the Dev Cave. See you soon!

Jenn Perez

Senior Content Manager

XYO Network