2018

There is a shift that is happening; it is rooted in the rapid expansion of decentralized cryptographic protocols. Public private key pairs are becoming common use for securing/storing digital assets, providing proof, determining truth. Where our data lives, who owns the data, and who can that change data are all questions that are being asked. Collectively we have a distributed consciousness in the internet; there is a small gap from when we wake up to when we check state. This could be the glance of a cryptocurrency price, notifications, categorizing messages; it is our terminal into a digital world that is layered and distributed. We tap into the information layer, we trade intangible digital value waves that we are collectively starting to operate on constantly. The technology is converging and accelerating; there is an interesting shift happening and decentralized technologies are what is driving it.

This past year I learned:

  • How to build Ethereum Blockchain Applications
  • How to build Hyperledger Blockchain Applications
  • How to develop enterprise managed packages on the Salesforce Platform

This is going into the 6th year I have written on my blog. I am at just over 70,000 views all time.

2017-12-26 09_29_08-Stats ‹ domsteil — WordPress.com

Hit a little under 28,000 views this year in total; a 250% increase from last year. This was driven mostly by cryptocurrency and ICOs becoming mainstream and Blockchain becoming top of mind in the enterprise throughout the latter half of the year.

2017-12-31 09_29_10-Stats ‹ domsteil — WordPress.com

 

2017-12-26 09_40_16-Stats ‹ domsteil — WordPress.com

Here are the past couple years of this same blog posts.

2013: A Year in Review

2014

2015

2016:

2017

These were some of my goals from 2017

Focus in 2017

  • Build Dapps
  • Build with Babel, ReactJS, Redux, GraphQL, and Node
  • Keep building Bots and a VR/AR interface library in Unity
  • Learn about Containers, Docker, Kubernetes
  • Learn how to write python scripts with Tensorflow, Theano and Keras libraries
  • Write 21.co computer python scripts
  • Write 1000 Ethereum Smart Contract Clauses
  • Read Applied Cryptography cover to cover with annotations
  • Keep a written Daily Journal and Physical Calendar
  • Say my autosuggestion every morning
  • Drink more water, run, and read everyday (52 books, 365 miles)
  • Get 100K views on the site
  • More water every day
  • Eat Healthy: Chicken, Vegetables, Almonds, Salmon, Brown Rice, Eggs, Protein Powder, Oatmeal

Some of the highlights from 2017:

  • Started a blockchain company
  • Moved to Barcelona
  • New York for the third time for the Consensus 2017 Hackathon and won the awards from IBM Cloud and Wanxiang
  • Went to China for the first time for a Blockchain Conference
  • Presented on Blockchain at Dreamforce
  • Continued to invest in ICOs and trade cryptocurrencies

build, keep, learn, write, read.

The focus in 2018 will be working on the foundational side of a great organization for many years to come. The focus will be on using technology to build great products with a great team.

Focus in 2018

  • Build Dapps
  • Build with ReasonML and ReactJS
  • Work with 200 Customers to start building Dapps
  • Work with people passionate about Crypto/Blockchain + Salesforce
  • Build a great team
  • Go to China First Program
  • Learn Mandarin Every Day on my phone and read the phrase book
  • Run 3 Miles and lift every morning
  • Build something incredible with IPFS
  • Build Dapps NLP Engine from scratch with Prolog
  • Build Lisk Apps and deploy from Salesforce
  • Keep a daily journal and a physical calendar
  • Say my autosuggestion every morning
  • Run, and read everyday
  • Get 150K views on the site
  • Eat Healthy: Chicken, Vegetables, Almonds, Salmon, Brown Rice, Egg Whites, Protein Powder, Tuna, Oatmeal, Almond Milk
  • Drink more water

This year I spent a lot of my time traveling and with that I read and reread some great books:

  • Advanced Apex Programming
  • Building Microservices
  • Designing Data-Intensive Applications
  • Force.com Enterprise Architecture
  • Traction
  • Emotional Agility
  • Learning React
  • The Hard Thing About Hard things
  • Slicing Pie
  • The Reputation Economy
  • Scar Tissue (on s single flight from London – Seattle)
  • Applied Cryptography with Annotations
  • The Startup Playbook
  • The Social Organism
  • Sam Walton’s Made in America
  • Think and Grow Rich
  • Ponder on This

This year I really got into Numerology. I would start to use numerology for trading cryptocurrencies and a number of other things. I think that it is something that is part of the other side of the coin, the metaphysical stuff we don’t talk about; I find very interesting.

Virtualization and Distributed Microservices

  • Microservices
  • The Art of Capacity Planning
  • ZooKeeper
  • Cryptography infosec
  • Docker Containers

This year I have definitely become more interested in leveraging virtual machines and building using containers. More and more research on decentralized/distributed systems, cryptography, virtualization, microservices, tokenization; these are the technologies leading the shift. Diving into architecture around technologies like Docker Swarm, Kong API Gateway and NGINX, Kafka, ZooKeeper. Learning to use decentralized technologies like Urbit and IPFS. Running and interacting with Bitcoin core. Using Ubuntu VMs to run an Ethereum Node provider or Hyperledger nodes but over all just testing out different software using containers in a virtual machine instance. I think the combination of using git, node, and docker is very powerful for developing web applications. Also learning to use vim was very valuable as well for the VMs. Teams can ssh in, push to shared repos, sync; it is aligned with the open source and distributed nature. I have worked on defining multiple blockchain protocols and how they differ from each other; which ones to focus my time towards and also which ones have the greatest upside long term. The yes or no on whether or not to dive in is always a questions that takes time; I think that one of the technologies that I really went down a rabbit hole with this year was IPFS.

IPFS

I think that decentralized filesystem build with the hash links and content addressing is the future of the internet.

I am really excited to build with IPFS and combine it with other p2p protocols. The shift towards decentralized p2p technologies such as bitcoin and ipfs are part of a shift towards individuals have full ownership, responsibility and control of their valuable digital assets. A digital asset can be a coin; but also personal data, or the metadata about what we do. These sorts of networks are shifting the pendulum back towards personal computing that can still be networked and used however not through a custodian service where we are told to fetch that data from.

The concept of What vs Where a piece of data is:

  • Tamper proof/evident
  • Permanent
  • Content Addressed
  • Immutable
  • Ever Present
  • Traversable
  • Hash Agnostic
  • Interoperable

It is at the crux, a powerful concept.

Mining

I set my miners back up; the price of BTC made it interesting. It didn’t take too long. Just hard to order a few wires from Amazon and they were printing digital gold again. Though not profitable (in dollars at least, it is still creating bitcoins), there is nostalgia from the sound and checking to see how much was created overnight. Personal capital investment in machinery that you own is that creating something is why I like it.

Business

I learned a lot about starting a business over the past year. Everything from startup financing to product development sprints; to equity, vesting, boards, contracts, negotiations. It is all part of it. A few months in I wrote something along the lines of: Starting a company is a mix of assumptions, strategies, emotions, decisions, expectations, risks, costs, disciplines, interests; but above all belief in a vision and a drive fueled by passion and focused persistence. One of the most important things however I believe is timing. When building Dapps.ai this year I spent a lot of time sitting in my studio in Barcelona, drawing out on the back of a physical calendar what an interface could look like, what problem it solved, what technologies it was built on, and how long it would take. I have months and months of these notes and in review, I think timing was the underlying current in and catalyst for everything. At the beginning of the January of 2017, the hedge was that cryptocurrency and blockchain would eventually “go mainstream” and companies would have to adopt a strategy; just when. The different technologies to choose from in time will become self-evident. I wrote down everything I thought would need be of part of or of focus: Bitcoin, Ethereum, ZCash, Solidity, ethercamp, Blockstack, 21.co, Tierion, Lightning, Chain, Corda, Lisk, Hyperledger, Monax, truffle, metamask, web3, zeppelin, next.js, ipfs, swarm, bigchaindb, infura, raiden, string labs, parity, uPort.

(A lot focused on how can one securely prove/sign/send with a pKey when interacting with Ethereum dapps).

“Knowing enough to think you’re right, but not enough to know you’re wrong. What single bit of evidence, what would it take to show you that you’re wrong.” -NDT

Fast forward a year and the overall awareness of the market and industry is second to none, yet still in its infancy on a global scale. With this comes that the realization that it will have to cycle back down (as it is cyclical) and we will have to continue to build upon our learning’s and decide what is the technology that will shape the future. Knowing what technology to focus on and devote time too is probably one of the tougher parts. The other part of this process was how to bring a product to market in a timely manner. Coming up with an MVP, building a package, learning about execution context and limits, putting the package through security review. In addition, it made me think about things like serialization, encryption and decryption, key management for applications, how to price and application and how to market an application. I want to continue to learn how to build on the Salesforce Platform and incorporate many other blockchain technology protocols. Every programming language, technology, platform, syntax; it all builds on each other. Building upon administrative and developer skills on the Salesforce platform and different computer science disciplines in the blockchain space; that is where the core focus is. Event driven applications that can be used with existing customer data, implemented processes and other apps is what drives a lot of the value of the combination; the polyglot persistence.

Crypto

I think looking at the prices of all of these cryptoassets for about 5 years now, you could day trade; but you could also create wallets offline, store the keys in a safe place, send a little of the top 20 coins to each and go and move to some island or forest and don’t touch them.

20170104_151415
coinmarketcap.com on January 4th, 2017

It is a very incredible time to see all of these networks grow in the way they have. The latter half of this year the market growing from 100 billion to over half a trillion is unbelievable.

The groups being formed together to take part of this movement whether on twitter or a chat group is a driving force. In retrospect years from now it will be obvious that decentralized cryptocurrencies, electronic cash, digital tokens would be what shaped the future. I won’t go into any price predictions. I will say that I believe that network function tokens for things like computation/storage, tokens that will enable private transactions, and token driven platforms for decentralized application development; will all continue to become networks that increase in demand and overall value.

2017-12-31 09_11_54-20170906_172535.png ‎- Photos

 

Crypto and Blockchain

There is a polarization distinction between the two sides; crypto and blockchain.

You have crypto drive by token incentivized open projects and you have enterprise blockchain platforms driven by enterprise cash and consortia. I think there is value in both and there will be things that are invented in both that will contribute to the overall development and progression of the technology.

The analogy is like an intranet and the internet. Another good quote was something like you can have an acoustic showing or a rock concert but you can’t have one disguised as the other.

This is a bit the sentiment I feel when hearing questions like what is Blockchain, versus using opensource protocol based digital tokens and their respective blockchains. Similarly developing applications with Ethereum and Hyperledger is too different sides of the brain. One you are thinking in how to sign messages from a browser, gas optimization and price, virtual abstractions that can be tokenized and traded; the other you are thinking in abstractions for business logic, how has access to the distributed infrastructure. One is a singleton that is updated, may become congested, but ultimately is a live and decentralized state machine. Both having a common goal of achieving consensus with the state of a system. Bitcoin on a state of UTXOs, Ethereum on a state of Accounts, Hyperledger on the state of the validity and order of transactions. I think that Proof-of-Work and the largest distribution of public-private key infrastructure to provide a verifiable, censorship resistant informational system; is at its core is the 0 to 1.

  • Decentralization
  • Security
  • Scalability

Again, from all of the above technologies there will continue to be an ecosystem that is growing and ever changing. I started this year using spending time configuring my testrpc, then becoming familiar with web3 and solc npm packages at the command line, and finally understanding how to create and sign Ethereum messages from the browser to deploy Smart Contracts.

Web3, Solc, IPFS

By the end of the year I was able to create an application on the Salesforce AppExchange to do the same; an Ethereum client for the Salesforce platform. Abstract away metalanguage, concepts and create an interface that was dynamic and give companies a way to manage all of the necessary components of these networks. I didn’t focus on or building the killer app with a focus on the existing frameworks. The killer app of blockchains so far has been using and trading digital tokens. The two main networks that’s function have been used are Bitcoin, and Ethereum for creating more tokens. We are just beginning to see dapps other than for the creation of tokens being create ie non-fungible tokens, rarity. Tokenization of digital assets is undoubtedly going to continue to rise. Though we may not be using (most) of these digital tokens in the physical world, in the digital world where we continue to spend more and more of our time these tokens will be used.

Hyperledger

The second half of the year I spent a lot of time learning and building with Hyperledger Fabric and Hyperledger Composer. The main difference is with this technology you are building everything from the ground up. The infrastructure, a blockchain explorer, the business network layer such as participants, assets, transaction logic, the gui to use the netwowrk; it is a different process that spinning up a node app and calling the ropsten testnet. Configuring Dockerfiles spinning up instances, writing the network model; though in JavaScript is mech different then the ideal of deploying Solidity to a singleton and creating a web3 UI to interface with the contract.

Dapps Inc.

I want this company to grow globally; from different geolocations, computer science disciplines and different technologists; and I want to build a company that is built on products, revenue and customers. I am interested in making decentralized technologies like Bitcoin, Ethereum, Hyperledger and IPFS useful for businesses around the world.

This next year at Dapps Inc. my sole focus is on four main things:

  • capital – cryptoasset fund
  • chat – build the village
  • network – nodes and infrastructure
  • solutions – decentralized solutions

I want to continue to learn from a larger community and the great minds in the space.

  • Build the best team of people
  • Build the best products and services
  • Have customers pay us for the products and services.

The ability to use decentralized computing, have processing and decisions made at the edge endpoints of the graph creates the fastest feedback loop. We can now access this edge data and update state to others on a p2p network. With this comes security and network challenges of connecting and processing this next era of computing. The decentralized and distributed era of technology is rapidly becoming reality. I truly enjoy working on this technology. I do believe in the economic incentive mechanisms for peer-to-peer cryptographic protocols and I am all for open source founders that can monetize, and users can become equity owners. That shift is already happening.  It is important to keep building, developing and combining the latest technology, learning every day.

Definiteness of purpose, the knowledge of what one wants, and a burning desire to possess it. I will continue to build the mastermind group and devote energy to drive combinatorial creativity through technology and people.

Happy New Year.

Live the Dream.

-Dom

Thoughts on Bitcoin

Bitcoin is.

The security of bitcoin as a protocol is derived from the quantum properties it uses as a secure informational state machine. The state transitions can be trusted based on pure mathematics.

  • Elliptical Curves
  • Digital Signatures
  • Proof-of-Work

Bitcoin as a system is the most powerful machine / computer in the world.

It has already achieved this in a quick almost 10 years.

What makes it incredibly valuable with respect to the concept of money is that it is fairly easy to write to the the most powerful machine in the world.

State is live.

Transactions that are submitted are picked up by 98% of the hashing power of the machine.

It is a universal singleton.

By definition it is information creation in the purest form.

It is quantum in that a bitcoin address exist in a digital layer thats function is created on a spent output and used on input.

That act of transferring a bitcoin is that which creates the value.

No digital file is transferred.

Bitcoin is simply a namespace for the act of quantum transactional state verification.

It is a wave until that act of spending makes it material. It is untangible yet verdical.

Consensus is secured by gravity and energy.

There is a distribution of energy that is secured by the ability to call and announce state change verification. It’s inputs and outputs on the network.

It is a graph database d = 1.32

Hashlink:

ipfs/QmZHh2KKXTFtdmk5ybV2hmjXZvEpmyXEvj11DnNoguukmF

Interoperable, Scalable Blockchain Protocols

Last week I attended the Wanxiang Global Blockchain Summit in Shanghai. There were a number of sessions but one that really stuck with me was about potential scaling solutions for distributed consensus protocols.

There is a concept of polyglot persistence which essentially means certain databases are meant for certain reasons. You have SQL database, noSQL databases, graph databases, blockchains, distributed fault-tolerant consensus ledgers, CRDTS; all of these different types of protocols. They have different consensus mechanisms, data models, query languages, state change and message ordering models such as validators or orderers; but in order to effectively scale they need to be to interoperate and need to be able to complement each other.

They will need to be able to share account state. They will need to be able to resolve any concurrency issues that arise. They will need to be able to resolve replication and eventually be consistent.

Most of my time is spent working at the application layer but an assumption that I have as that building solutions that will incorporate multiple protocols will be important in the future.

This type of approach is not necessarily found in the blockchain space specifically because of the economic/personal incentives one has if heavily invested in a specific protocol. This could be time learning Solidity versus Kotlin; this could be owning a bunch of Ether vs NEO; this could be working at a company that is heavily contributing to a particular open project.

Regardless of ones preference in blockchain/distributed ledger/consensus database; this past trip to Shanghai validated that taking a multi-blockchain approach and being open to learning the differences between them and how they could also complement each other is going to have a great effect on the way that solutions in the future will be built.

An example of this is the new Ethermint Token.

Ethereum and Tendermint

In what is being called the Shanghai Accord; a new partnership between the two projects was announced in which they will work together to help scale blockchain technology. Tendermint a Proof of Stake consensus protocol and its new Internet of Blockchains Hub / project Cosmos is working closely with Ethereum project to essentially create derivate tokens on Tendermint infrastrucutre in what is being called a hard spoon. Essentially a new coin is minted on another chain (tendermint) that uses the account state or balances of an existing token on a chain (ethereum); and we have Ethermint. This could mean in an effort to provide a scalable cross-blockchain solution in which tokens now have shared state/accountbalances on the Ethereum Chain and the Tendermint Chain.

Content-Addressed Blockchain Resolvers

This is but one approach to have inter-operable blockchains. Other approaches have been proposed historically such as pegged side chains but one to me that seems very interesting is leveraging IPFS at the network the content address and resolve through the different blockchain / databases (as long as there is a key value store) using multihash and the ipld thinwaist protocol. It is still much just concept but again it is aligned with the idea of having multiple chains interoperating to address some of the issues that blockchains are facing today.

Plasma

Another approach is using Plasma; this allows transactions to occur offchain; only broadcasting them to the chain if there is a transaction dispute; you never sent me the money, vice versa). In this way the blockchain becomes an arbiter or a distributed court house; a way to have veridical computing if there is in fact a need for the chain based settlement.

Proof-of-Stake

Another take away  and interesting concept is the movement to proof-of-stake. Ethereum’s movement towards POS is in Vlad Zamfir’s Casper protocol. Other chains such as Lisk uses a dPOS system and Tendermint is on POS as well. A common theme between them is the concept of weight. The stake and the weight of stake has some very interesting implications on the security and threat models that could be introduced to the protocol. More on Proof-of-Stake/Casper in another post.

There have been a few recent cross chain atomic swaps recently aswell.

Litecoin + Decred

https://blog.decred.org/2017/09/20/On-Chain-Atomic-Swaps/

And cross chain transaction component verifications.

ZKSnarks + Ethereum

The Byzantium hard fork went live on Ethereum’s Ropsten testnet at block 1,700,000; one of the features was support for ZKSnarks. On the Ethereum ropsten testnet a a zksnarks component of the Zcash transaction was verified.

Public Chains and Financial Services

Lastly from Nick Szabo’s talk on Smart Contracts the idea of a smart contracts acting a digital distributed vending machine was very interesting. There are certain security guarantees; and the rules are deterministic and known (you put in money into the machine something comes out). I have heard the vending machine analogy from Chain.com as well, the concepts share the same vision of taking the best of public blockchain technology and the best of existing financial services.

 

2017-09-16 01_49_44-Untitled - Notepad

2017-09-20 09_43_59-Dapps.ai Platform - PowerPoint

2017-09-16 02_00_15-Untitled - Notepad

 

IPLD Resolvers

This was in my drafts from a few months back, right when I got really excited about IPFS, content addressing data, and the potential future applications that will be built on the protocol.

Content addressing is a true computational advancement in the way that we think about adding and retrieve content on the web. We can take existing databases and use the various parts of the IPFS protocol to build clusters of nodes that are serving content in the form of IPLD structures.

IPLD enables futureproof, immutable, secure graphs of data the essentially are giants Merkle Trees. The advantages of converting a relational database or key value db into a merkle tree are endless.

The data and named links gives the collection of IPFS objects the structure of a Merkle DAG — DAG meaning Directed Acyclic Graph, and Merkle to signify that this is a cryptographically authenticated data structure that uses cryptographic hashes to address content.

This protocol enables an entirely new way to search and retrieve data. It is no longer about where a file is located on a website. It is now about what exact piece of data you are looking for. If I send you an email with a link in it and 30 days later you click the link, how can you be certain that the data you are looking at is the same as what I original sent you? You can’t.

With IPLD you can use content addressing to know for certain that a piece of content has not changed. You can can traverse the IPLD object and seamlessly pick out piece of the data. By using IPLD once that data is locally cached you can use the application offline.

You can work on an application with other peers around you as well using a shared state. But why is this is important for businesses?

Content addressing for companies will ensure a number of open standards. We can now take fully encrypted private networks that are content addressed.

This is a future proof system. Hashes that are currently used in databased can be broken but now we have multi-hashing protocols.

We can build blockchains that use IPLD and libp2p.

The IPLD resolver uses two main pieces; the bitswap and the blocks-service.

Bitswap is transferring blocks and blocks-services is determining what needs to be fetched based on what is currently in the local cache and what needs to be fetched. This prevents duplication and increase efficiencies in the system.

We will be creating a resolver for the enterprise that enables them to take their existing database tables and convert them into giant merkle trees that are interoperable. IPLD is like a global adapter for cryptographic protocols.

Creating the Enterprise Forrest

Here is where it gets interesting. The enterprise uses a few different types of database; relational SQL databases, noSQL distributed databases.

Salesforce is a another type of database that we can take and convert into a Merkle Tree.

S3, is another type of database,

I call this tables to trees.

We are going to take systems that are onPrem siloed or centralized to a cloud provider and turn them into merkle trees using IPLD content addressing.

The IPLD resolver is an internal DAG API module:

We can create a plug and play system of resolvers. This is where a company can take their existing relational database and keep it.

We will resolve the database and run a blockchain in parallel. This blockchain will be built using two protocols that are from the IPFS project: ipld and libp2p

The IPLD Resolver for the enterprise will consist of

.put

.get

.remove

.support.add

.support.rm

We will take any enterprise database and build out the content addressed merkle tree on it.

Content Addressing enterprise content on IPFS-Clusters

Enterprise can consist of 10,000 nodes 50,000 nodes 100,000 nodes and the IPLD object has to be under 1 MB.

That all will be hosting the merkle tree mirror of the relational database.

This can also enable offline operation for the network. Essentially they have their own protocol that is mirroring their on-premise system.

We will be starting with dag-mySQL, dag-noSQL, dag-apex

The MySQL hash function that exist on the on premise system stays when implemented. If that hash is ever broken there is no way to upgrade the system with up completely migrating it.

This makes data migration a lot easier or not even necessary in the future. Once the data is content addressed and creates the merkle tree, we can then start traversing the data.

We will also build interfaces that can interact with the IPLD data

IPLD is a format that can enable version control. The resolver will essentially take any database, any enterprise implementation, and convert it into a merkle tree.

We are essentially planting the seeds (product) and watering them (services). Once these trees are all in place that can communicating because they are all using the same data format.

Future Proofing your Business

We are creating distributed, authenticated, hash-linked data structures. IPLD is a common hash-chain format for distributed data structures.

Each node in these merkle trees will have a unique Content Identified – a format for these hash-links.

This is a database agnostic path notation any hash – any data format.

This will have a multihash – multiple cryptographic hashes, multicodec – multiple serialization formats, multibase – multiple base encodings 

Again, why is the important for businesses? The most important is transparency and security, this is a tamper proof, tamper evident database that can be shared, traversed, replicated, distributed, cached, encrypted and you know now exactly WHAT you are linking to, not where. You know which hash function to verify with. You know what base it is in.

This new protocol enables cryptographic systems to interoperate over a p2p network that serves hash linked data.

IPFS 0.4.5 includes that dag command that can be used to traverse IPLD objects.

Now to write the dag-sql resolver.

Take any existing relational database and you can now traverse that database content addressing.

Content Addressing your database to a cluster of IPFS Cluster nodes on a private encrypted network.

Deterministic head of the cluster then writes new entries.

We use the Ethereum network to assign a key pair for your users to leverage the mobile interface. You can sign in via fingerprint or by facial recognition using the Microsoft Cognitive Toolkit. Your database will run in parallel , you will keep your on premise system and have a content addressed. Content Addressing a filesystem or any type of database creates a Merkle DAG. With this Merkle DAG we can format your data in a way that is secure, immutable, tamper proof, futureproof and able to communicate with other underlying network protocols and apllication stacks. We can effectively create a blockchain network out of your exisiting database the runs securely on a cluster of p2p nodes. I am planting business merkle dag seeds in the merkle forrest. Patches of these forrest will be able to communicate with other protocols via and hash and in any format.

This is the way that the internet will work going into the future. A purely decentralized web of business trees.

 

Continued:

On Graph Data Types

DAG:

In a graph model, each vertex consists of:

  • A unique identifier
  • a set of outgoing edges
  • a set of incoming edges
  • a collection of properties (key-value pairs)

Each edge consists of:

  • A unique identifier
  • The vertex at which the edge starts (the tail vertex)
  • The vertex at which the edge ends ( the head vetex)
  • A label to describe the kind of relationahship between the two vertices
  • A collection of properties (key-value pairs)

Important aspects of the model:

Any vertex can have an edge connecting it with an other vertex. There is no schema that restricts which kinds of things can or cannot be associated.

Given an vertex, you can efficiently find both its incoming and its outgoing edges, and thus traverse the graph – ie. follow a a path through a chain of vertices- both forward and backward. ie ie why you can traverse a hashed blockchain with a resolver.

By using different lables for different kinds of relationships, you can store several different kinds of information in a single graph, while still maintaining a clean data model.

 

 

2017

We are on the edge of the future – seeing the emergence of technology that we dreamed of years ago; AI powered bots, Holographic GUIs, autonomous vehicles, decentralized application networks. It’s happening fast. There is new form of distributed world consciousness of truth in the internet, it enables people to come to distributed consensus about certain things. Sometimes it is tough to tell which are certain, cryptographic proof of providence of content will become a standard. Ratings and reputation currency creating the convergence of identity. Proliferation of meta-physics in numbers. More ICOs, tokenized application networks, appcoin protocols, zero-proof currency spinoffs, enterprise crypto consortium, and crypto hedge-funds.

This past year I learned:

This is going into the 5th year I have written on my blog. I am at just over 45,000 views all time.

screenshot-2017-01-01-08-51-20

Hit 11,424 this year in total views; not bad, though a slight decrease from 2015.

2016-12-01 16_17_47-Stats ‹ domsteil — WordPress.com.png

2013: A Year in Review

2014

2015

2016:

 

These were some my goals from 2016:

  • Learn AngularJS and ReactJS
  • Learn Microsoft CRM Programming C# .NET
  • Earn Blockchain Technology Patent for Smart Contract Management
  • Build the Dreamforce Story and Demos – (Alphabet type HUGE Conglemerate)
  • Build Salesforce Lightning Components for the Relaunch
  • Learn how to push GIT, anywhere in the world to anyone in the world
  • Build 21.co applications to earn Bitcoin
  • Learn Chinese and Portuguese
  • Build a program with the Tessel.io
  • Start MicroSaas with the BizSpark program at Microsoft
  • Trade Cryptocurrency daily, more ICOs,
  • Finish the Art of War
  • Write a blog post on the state of cryptocurrency
  • More water every day
  • Eat Healthy: Chicken, Vegetables, Almonds, Salmon, Brown Rice, Eggs, Protein Powder, Oatmeal
  • Run and Lift at 6AM at Koret out by 6:45 to get to work by 8

Some of the highlights from 2016:

  • Traveled to London for work and visited Spain (Madrid, Barcelona, and Ibiza) with my Dad for his 60th.
  • Flew to New York for the second time for the Consensus 2016 Hackathon and won the prize for best App on Azure by Microsoft. MicroSaas – Enterprise Smart Contract Platform and Exchange (BizSpark grant).
  • Made it into an article in TechCrunch for Bots and VR at Apttus
  • Started investing in ICOs

Focus in 2017

  • Build Dapps
  • Build with Babel, ReactJS, Redux, GraphQL, and Node
  • Keep building Bots and a VR/AR interface library in Unity
  • Learn about Containers, Docker, Kubernetes
  • Learn how to write python scripts with Tensorflow, Theano and Keras libraries
  • Write 21.co computer python scripts
  • Write 1000 Ethereum Smart Contract Clauses
  • Read Applied Cryptography cover to cover with annotations
  • Keep a written Daily Journal and Physical Calendar
  • Say my autosuggestion every morning
  • Drink more water, run, and read everyday (52 books, 365 miles)
  • Get 100K views on the site

Crypto –

Cryptocurrencies, cryptographic application networks, applied cryptography protocols, application coins, decentralized application networks. Dapps.

Bitcoin is first and last OR Bitcoin is first of many. The price of bitcoin is next to $1000 and the overall market capitalization has hit an all time high:

screenshot-2017-01-01-09-05-35

 

Do we only need one cryptographic state machine for the world similar to one internet to the world? Does segwit, payment channels, teechans and the like round out the Bitcoin network or do Turing complete scripting decentralized state networks aka Ethereum bring us into the next generation of decentralized applications. There is room for both, and the price of both tokens Year over Year seems to think so as well. Despite the Dao hack dropping the price from a high of 19$, down to around $7.50 now, Ethereum is moving fast.

Companies such as Truffle are making Smart Contract development for the Ethereum network much easier. Zeppelin is creating a library for secure and effetive smart contracts, BlockApps is creating the bridge for Enterprise Blockchain deployments and apps, and MetaMask is making your browser Ethereum network compatible via the web3 api.

ZCash – zkSnarks – Zero Knowledge Proofs has a ton of upside; 21 million notes that come with an encrypted memo field, a key that enabled selective disclosure, and ofcourse the blockchain immutable, petrified effect.

Brave and Blockstack are reimagining the internet browser experience.

The finserv platforms players have launched  R3 Corda and also Chain has launched its platform and smart contract language Ivy.

Enterprise is off the races with Microsoft leading the pack; and IBM not far behind banking on hyperledger on blue mix, and AWS with Monax.

consulting firms are just starting on POCs such as Delotties Rubik;

I think this is a fundamental shift in the enterprise back office from on-premise, to cloud, to dapps.

Dapps for the enterprise; or a new UI over decentralized application networks like bitcoin or ethereum.

That is next.

One last thing on ICOs and blockchain tokens; a paper was released on the difference between securities and blockchain tokens which I found interesting. Ideally if doing an ICO or any cryptocurrency the following is something to keep in mind:

  • the token is sold once there is an operational network using the token, or immediately before the token goes live, it its more likely to be purchased with the intention of use rather than profit
  • It is built with all of the technical permissions necessary to actions the networks functions; it is for use and able to be used by an individual buying the token
  • A token which has a specific function that is only available to token holders is more likely to be purchased in order to access that function and less likely to be purchased with an expectation of profit.

The buy in is based on the premise of the usefulness of the underlying function that the token enables on the decentralized network. The value of the token is based on the supply and demand of the underlying function.

AR –

Built AR Hololens CPQ Applications

Jet and Bike configuration inside of Hololens –

Learned how to create a Holo-App

Learned C# classes and  Visual Studio

Learned Unity how to build GameObjects, import GameObjects from Blender. Applying scripts to different game objects and manager objects. How to call methods that looked into the children of certain gameobjects and in doing so was able to create animations and implement visual rendering based on user interaction via voice and gesture taps.

Unity is a very powerful platform to learn, it is very remarkable to essentially anchor an image from a computer into a digital layer in the space around you.

I think Unity and the platform is amazing. You are able to download a 3D model import it into a scene, apply a script, and deploy it the 3D world to interact with.

This learning curve to accomplish this is not too bad. You can start designing and deploying 3D models in a holographic interface. The other cool thing is that they stayed anchored; in that when i put a hologram in my living room, and come back two weeks later my hologram is still there.

It’s thethered to the real world in space; theres context to what you build.

I enjoy working on VR.

I think that setting up the VR and learning how to deploy holograms was one of the hardest but coolest projects I have ever worked on.

Bots –

Build Bots using Howdy.Ai for Slack, wrote the OAuth 2 script

Built bots using Microsoft Botbuilder and attended BotDay

Built out Max… bots on Azure

Integrated LUIS NLP model into the Bot code hosted on bitbucket continuous deployment to Azure web app.

Conversationalist are no doubt a new way to interact with applications, but they also inherently change the way we build software.

Bots are never really a finished piece, there is always something to optimize, tweak, add in; to make the bot more human like to create a better experience for the user.

There is so much friction that is removed in conversational interfaces. The advancements with lingustics and computers is astonishing. I remember creating my first SVG trees using prolog to parse english and japanese sentences. I didn’t realize it then but ultimately that recursive programming was an excellent base line for my understanding of how to create bots that leverage NLP.

The other important thing about getting a bot up and running is that is is being hosted, you have the app id, secret, you have continuous deployment from a bitbucket repo, you have the right size application node, your webservice are leverage keys that do not expire causing latency issues, you are testing locally with an emualtor before pushing changes to the live bot, that you are taking into a fact security, querying the data intelligently, that the bot sounds conversational and you have removed console log statements from the dialect, that you are able to talk to the bot randomly and achieve some outcome, that the bot is available in multiple channels and dynamically can alter the response based on the context, that the bot learns, and you learn, what it is that can make it more efficient, effective, and execute what it is it is being told to do.

Also,

that you have a pricing model for the bot, and you know exactly how much this bot is going to cost you and earn your platform provider in the form of consumption, that it is ultimately going to have to be managed through a lifecycle of improvements, and that during these lifecycles people who need to access the bot are going to come and go and you will need a way to manage what users have access, in addition to if you want to update at a certain time for certain users, how that can be accomplished, and ultimately if you can run some different advanced algothritms through all of the data you are collecting because you are essentially creating a platform, in essence you will need a way to bake in some form of deep nueral net; my guess would be to stay ahead of the market.

 

I am truly excited to begin the next step in my career. I’ll be working on the technology that is fundamentally going to change the way that enterprise companies around the world do business. There is the combination of having a decentralized blockchain network facilitate certain business functions between trustless parties. The decentralized trustless yet collaborative industry. Decentralized Applications that enable certain functions and state on a world computer, a distributed consensus protocol, from an internet browser. There is the concept of having an intelligent agent calling and deploying to these decentralized networks…

 

Happy New Year,

Live the dream.

-Dom

 

 

 

 

CryptoTrends

This article is about what hasn’t been in the headlines in the crypto space.

By crypto space I mean: cryptographic currencies, decentralized ledgers, distributed consensus protocols and thee / a blockchain protocol.

It is fast pace, riveting, real-time, global; it never sleeps.

From the highly anticipated Halvening, to the Rise of Ethereum and the Fall of the DAO, to the next big anticipated ICO; this year has arguably been the most exciting for this global phenomenon.

I haven’t posted in awhile, it still feels like the wild west times of cryptographic state transition machines. Lots has changed but governments still do not know how to classify it, exchanges have trouble securing it, people still can’t get enough of it; a true computational advancement growing before our eyes into a new global digital layer.

You have computing nodes around the world opting in to share the concurrent state of ownership of digital entities coupled with an arms race of specialized chips consuming immense amounts of energy incentivizing the search for a mathematical proof that secures and enables a robust cryptographic monetary system.

A truly born global and open enabler of immediate value transfer.

Clearing and settlement that relies purely on the underlying cryptographic stacking of blocks full, and I mean completely full, of digital cryptographic signatures.

On the Surface

Someone can securely hold digital entities of value, they can be exchanged and used anywhere in the world, there is no one that tells them how much they can send or spend; the rules are written in computer code.

One can engage in instant digital arbitrage and use a physical proxy for food at a restaurant or a means of transportation. This is the current reality we live in, or in other words:

There is a digital layer that not everyone in the world knows about. This layer is operated in p2p cryptography. It has already arrived, but is not evenly distributed yet.

One could leverage this layer in reality if they know the way to access it:

One way is to use Shapeshift to exchange one alt for another, set the withdraw address to a web wallet, send the alt from a web wallet a global digital exchange, sell for Bitcoin, withdraw to a wallet associated to a Bitcoin debit card then go to the nearest ATM for cash effectivo.

This could take maybe 15-20 minutes.

In real time using a variety of mediums, pure decentralized digital arbitrage. A seamless flow of taking a non-tangible digital unspent transaction output and turning it into cash.

At any point, regardless of location in the entire world, you can buy, sell, short, swap, any digital entity of any magnitude via a computer in your pocket and then go and use it IRL.

It’s unfathomable.

What other asset class can you trade digitally and globally at any time then immediately exchange for cash? That has this type of volitility?

Now if buying dinner or booking a flight is the first step, this is only going to become more and more prevalent as more asset classes are put on the blockchain. If I can spend coins on the blockchain, why can’t I earn coins on the blockchain?

On the Machine Layer

Machines do not need a UI in order to interact with the blockchain.

You don’t have to be there for a machine to interact with your endpoint.

If right now I can do all of the above, trade, sell, spend, crypto, pull out money, then I should have just an easy a time earning the above via some digital mechanism.

This is what the 21 computer enables – one’s machines to earn bitcoin per http request.

This still really doesn’t encompass the profound implications of being able to directly interface with a global value transfer network at the command line or by writing a consumable API. Tapping into the network should be easy, creating a closed loop once in should be even easier.

Something I thought is fitting is it comes down to input vs output. The analogy is equivalent to one Elon Musk mentionend recently in that as humans our input sensors are incredible, however the output is very inefficicent ( I have been typing on the train as fast as I can for the last half hour and I am barely at 800 words). It’s even worse when we are on a phone. We have two thumbs. Two measly thumbs to try and explain. Nueral lace is a way’s out but I think being able to incentivise machines for output is a step in a indirect but somehow related path.

I need to make it more of a habit to code in Python on my 21.co computer.

__init__ method   | Flask 

Bots

I haven’t been writing as much because I have been building bots. I have been using Howdy.ai’s BotKit to create a number of Slack bots.

Following tutorials online and eventually creating the conversations handlers, and connecting them to various APIs using a combination of npm packages, node.js, and heroku.

The platforms that are driving the new shifters Slack, Facebook Messenger, Microsoft. The big differentiator is that Slack was made enterprise team first. They have the most momentum and a great indicator of this is their growing appexchange.

As an operating system for teams of any size, there is a huge upside to bringing in the various tools one would use on a daily basis into one place.

Being able to leverage /commands, Webhooks, and bots will enable new levels of productivity and ultimately drive business outcomes.

I will have a post soon on how to build these integrations to Slack.

The next bots I make will be with Microsoft botbuilder and Azure.

OAuth

serialize JSON, deserialize.

Callbacks

ICO’S and CryptoArbitrage

There has been a recent increase in the number of Initial Coin Offerings.

Lisk was a solid one. Despite the DDOS on the web wallet at launch, overall the coin has given strong returns, has gotten some great backing, and a has accumulated a relatively high market capitalization.

There have been a few other ones ICOs recently that I have not participated in. The big thing here is your looking at the the tech, the team, are devs going to build on the platform, what is the main differentiator, what exchanges are going to list it and last but definitely not least; follow the whales and traders on Twitter.

There is no question whether or not you can profit off Alts, you’re hedging a quick come up versus a platform and community that contributes to growth and continued innovation.

Don’t Just Hold

From an immediate coin flipping for profit point of view I would make sure that you have a few different mediums you could use to exchange the altcoin into BTC in a relatively fast way, within at least an hour. Confirmation times and amounts do vary by exchange and by the level of identity verification you have on the exchange but ultimately you want to make sure that if you are going to be investing in an alt that you know that it can be converted back into Bitcoin with out jumping through too many hoops.

When making an exchange in the crypto world it comes down to liquidity and security. If you want to you can completely trade via your phone, log into your various wallets via web browsers, and refresh and count blocks until your money has moved. Not really recommended for various security reasons but it does work.On the flip side you can get a device for an offline wallet or create, print, and send a multisig paperwallet.

Just a side note I would make sure when trading that you send a little bit first to an address verify it got there and then send the rest, just good practice. On the flip side if you are cashing out from bitcoin to a bank account make sure that the card / account your are withdrawing the money to is not closed or inactive.

Definitely keep an eye on:

coinmarketcap.com

WhaleClub, twitter feeds

check what time it is in China, NY, and SF.

On the Protocol

I often forget that the code that operates all of this can be directly interfaced with. Actually sending the raw transaction data.

Actually piecing together EVM assembly.

Review the code of the protocol. In a sense if you find a bug the bounty could be millions.

On Nodes

The number of nodes that keep a copy of the blockchain needs to be increased. This also means that the number of nodes running the same version of a protocol needs to be increased as well. A network of Raspberry Pis can create a interactable global digital layer if you know how to directly interface with the Bitcoin Protocol or a high level level language that does so.

I don’t think that Ethereum should soft fork or hard fork, disclaimer: did not throw DAOn.

Conclusion

Overall I think that there is a bigger trend in play that is the same way that everyone learned typing, cryptography will be the same way. Everyone will be learning / using cryptography.

Think about that you have this entirely new layer that not that much has been built on yet.
Look around, nothing really is running on the blockchain yet.
Think about what the Internet as a communication layer between people looked like.
What if cars ran on a P2P blockchain mesh network. Each stored a copy of the blockchain.
Would it make sense for cars to be connected via a blockchain layer vs an Internet layer?
Or better yet is a easier for to achieve the outcome by calling directly it from a blockchain?

 

More Research on:

Seg Witness

OP Return

Recursive Bots and NLP

Questions:

A big question was whether or not Bitcoin was going to be the first or the last cryptocurrency. It’s definitely not the last, but will the alts stick?

Which of the big 5 tech companies will make the first major Bitcoin acquisition?

 

MicroSaas

This post is from my time at the Consensus 2016 Hackathon a few months ago.

The consensus from the 2016 Hackathon was that smart contracts and decentralized applications will drive blockchain innovation and businesses into the future.

This year’s hackathon was held in the heart of Times Square at Microsoft’s Technology Center. I would say the event had about 4x as many devs compared to the hackathon last September. Out of the 25 different teams that presented on Sunday, about 15-20 were built on Ethereum; a huge increase from the 3 of 15 teams at last year’s hackathon. A few of the applications including the winning one, Decentralized Energy Utility, were built using Hyperledger on IBM’s Cloud and Tierion was used by several teams as well to embed data at scale into the blockchain.

Though the majority of the focus from a development standpoint was not focused on the Bitcoin blockchain, there were exciting  announcements by 21 around the Machine-Payable web and Bitcoin as the 3rd layer to the Internet. They have now open sourced the 21 libraries which effectively could make any computer a Bitcoin computer. This could spur a whole new set of financial innovation webs with different P2P escrow and lending models, micropayments and connected blockchain technology stacks.

Another huge launch was the Bitcoin Market Open Bazaar. This is a next generation open market built on Bitcoin. This is the first of many of these types of markets and platforms or even business models that will be completely recreated using blockchain technology. In order to support these types of new business there needs to be a scalable backend .

One of the biggest takeaways from the hackathon was that Cloud platforms such as Microsoft Azure, IBM Cloud and AWS are partnering with various Smart Contract and blockchain companies to build consortiums and spark blockchain innovation. This could be by listing the app on the platform, running POCs or sponsoring / hosting hackathons.

These huge cloud companies have started a chains race to attract the best developers and the newest most innovation companies in an effort to “make blockchain real”. By leveraging the cloud infrastructure of these different platforms, blockchain applications can be rapidly deployed and scale. With this notion in mind, I knew going into the Hackathon the I wanted to build using the Azure platform.

We built MicroSaas using Blockapps, the best-in-class blockchain application platform that enables developers to quickly build and scale applications on Microsoft Azure.

So what is MicroSaas?

MicroSaas is a enterprise software platform and marketplace to aggregate micro-consumable APIs across multiple cloud software vendors and service providers. Through Ethereum Smart Contracts, we enable vendors to be paid on a per transaction basis in real time as API calls are made by users. As the calls are made by the user, ether is deducted from the smart contract and paid to the vendor. If the user wants to switch vendors or do some other business function, they can buy a different contract from the market.

This new model frees users from the Per-User-Per-Month SaaS model, provides a verifiable proof of vendor service level, and it enables early stage startups in developing markets to access these critical SaaS functions. The platform also allows users to switch vendors on the fly depending on the use case, performance demands, or cost.

MicroSaaS is the name of new age of enterprise computing; it enables Business-to-Business micropayments on a global decentralized network facilitating value transfer and state transition for SMBs. Businesses around the globe will grow on the MicroSaaS platform. The traditional model for enterprise SaaS software will continue to thrive at the commercial and enterprise level but MicroSaas enables new markets and businesses where a per user per month model is not feasible to grow the business.

Instead these businesses will use micropayments to make API calls embedded within JavaScript components running the commands that drive business growth; creating a contact in a database, sending an eSignature, appending a general ledger.

MicroSaas was the winner of the Microsoft’s hackathon award; 3 years of full access to software, services, support and $750 a month of credits to build on the Azure platform via the Micosoft Bizspark program.

This is the beginning of entire new business platform built on the world’s first decentralized virtual machine. We use Smart Contracts in Solidity to store the variable state and functions of traditional objects or entities in cloud business platforms such as Account’s, Opportunities, etc.  This completely new transaction and payment model also enables other software vendors to build their businesses with Ethereum smart contracts creating an entirely new range of decentralized software applications.

It enables new forms of data verification and automation using cryptographic hash functions at each stage of the revenue driving business process.

Companies can now operate under the assumption that both parties have cryptographic representation of every deterministic property of a process. The price of the API, the outcomes of the transaction, are completely based on met or unmet inputs that are cryptographically locked into smart contracts and active on the Ethereum blockchain. The amount of ether it is going to cost to deploy the contract plus the charge for using the SaaS application can be set in the properties and shared as fact in the state of the abstract virtual computer.

This is a revolutionary concept. Shared state, distributed consensus, validity; all properties derived from Bitcoin now applied to the enterprise software world.

Individual software vendors, system integrators, and partners will leverage this technology with their customers creating an immutable history of every transaction made between the service providers.

Check out MicroSaas on Devpost.