Category Archives: Application Development

Web 3 and Crypto

A brief overview of cryptocurrencies and web 3. I’ve tried to keep it at a high level but with enough depth so you can understand it’s potential in your life and business.

 

The progression – Web 1, 2 and 3

 

I’ve been on the internet for a long time! My first time connecting with others online was in the days of BBSs, where you would dial in and everything was just text, when IRC chat was how you talked to others around the world.

Then came web 1, with netscape and single page slow loading pages (remember modems?). As things sped up and we added CGI programming with perl (and php) it became a bit more dynamic. Forms and collecting data, collocating servers and all that fun!

Web 2 is identified by much more interactive sites, e-commerce, cloud computing, client/server and micro services. This is where most of us are now. It’s a very active space and will continue to be far into the future. It is also more or less centralization, where the large internet companies own the big services, think google, youtube, facebook (meta) and twitter (maybe).

There is a big future for Web 3 and it’s already been in progress for quite some time. Web 3 is associated with client apps that talk to decentralized global virtual machines (more on that in a bit). The decentralized aspect of web 3 is one of the big advantages.

 

Cryptography

 

Cryptography is at the core of decentralized global currencies. It is what allows the system to know who owns what on the network. In it’s basic form, Public Key Cryptography provides a user with a Private Key. This key must be kept secret and secure from everyone except the owner. From this Private Key a Public Key can be generated. When someone encrypts a message with a Public Key, only the Private Key owner can decrypt that message. Your Public Key should be shared with anyone that might send you messages. Remember, always keep your Private Key secure.

Your Private Key also gives you the ability to sign digital content. This signature can be verified using your Public Key, verifying it was you who signed the content.

You would usually use a wallet to store your private key. You can use a browser based wallet such as metamask, a browser like brave with a wallet built in or an app. You can also use a service such as coinbase, which would act like your wallet.

 

Blockchain

 

The blockchain is a distributed, immutable chain of blocks, where each block has a group of recent transactions. The blocks are created by miners who verify the transactions and add the blocks to the global chain. The miner is rewarded with crypto for each block they successfully verify.

There are many different blockchains. There are public primary block chains like the Bitcoin blockchain or Ethereum Mainnet blockchain. There are consortium blockchains, where a group of companies or people run a blockchain for their specific purpose. Testing blockchains for developers and private blockchains.

The public blockchains are an immutable, distributed record that provides proof of ownership. These chains are run on a vast array of nodes on the network, which provides distributed durability. This is part of the value of the system.

 

Ethereum

 

Ethereum is a crypto network that uses the ether currency. Ethereum provides a global virtual machine (read computer) that can be programmed with smart contracts (Dapps, distributed applications). The global virtual machine is a distributed computer that runs on the ethereum network. A smart contract is a program that anyone can write and deploy to the EVM (Ethereum Virtual Machine). When your smart contract runs, it uses gas, priced in Wei (1 ether = 10^18 Wei), to pay for the resources used in executing your smart contract (program).

An example might be helpful, this is one I came across in my research. Imagine you wanted to ensure that you were the first one to create a specific document. You could create a notary service. When you upload your document, it would take a hash of the document (a unique signature) and call your smart contract. The smart contract would store that signature with your name and date on the blockchain. If anyone ever wanted to check that document in the future, they would upload it and your smart contract would respond with the information from when you originally uploaded it. The job of the smart contract would be the two functions, to initially store the information on the public blockchain and to retrieve the information in the future.

I’m sure you can imagine many other uses for a global virtual computer that stores its data in a distributed immutable blockchain. While Bitcoin is independent of Ethereum, bitcoin is essentially a specialized Dapp that provides decentralized value transfer as it’s primary function.

 

NFTs

 

NFTs are one example of a smart contract that is similar to the notary service. Anyone can sign digital content using the NFT smart contract and receive ownership of the NFT, that NFT can then be transferred to someone else with its transfer history stored on the public blockchain. That NFT is verifiable on the public blockchain, along with it’s ownership history. The signature by the original owner or creator also provides provenance. While some of the early uses seem a little silly, this is a quickly emerging area that may eventually be tied to physical assets. Imagine real estate transactions where the deed transfer is only a matter of transferring an NFT!

 

DAO – decentralized autonomous organization

 

DAOs are a new form of organization that allows like minded people to work together. They are like businesses that are collectively owned and managed by its members. The members of the group propose ideas and they are voted on by all the members. Everything is open and the rules of spending for the organization are built into its code. Sometimes membership is based on owning the organizations NFT, only approved members are allowed to own NFTs which come with organizational rights.

 

Web3

 

Web 3 ties all these technologies together. Your Private/Public keys, web or mobile front-ends, smart contracts and the backing blockchain. As you can imagine, there are a lot of possibilities. There are many companies in the space doing new and innovative things. Some rethinking old services and some building entirely new products. What would you build now that you know a little about this field?

 

Why?

 

Crypto started as a backlash against centralized finance. Technologists saw that there was a way that didn’t centralize all the power to a small group of elite bankers. It has it’s roots in open source software, which was a backlash to the closed software development of the past. Ethereum and the EVM is the next step, a backlash against the big internet companies with their closed systems where a majority of the control is in their hands. In a global decentralized computer, one company can’t decide what is allowed and what isn’t. No doubt this has it’s issues also and will need to be figured out over time. In the long run though, I vote for freedom and decentralization.

A lot of people ask, why does it have value? The value comes from it being a decentralized network of computers that store an immutable record of data. This does several things.

To build a network of this scale requires the buy in of many nodes, this only happens if the node operators see value in running a node.

 

Conclusion

 

This was a whirlwind tour with a lot of details being glossed over. I hope you find it valuable in your exploration of crypto. I didn’t touch on any of the many other crypto currencies, which offer features that might be useful to your application (more privacy of transactions for instance). The web 3 movement is happening with our without you. I think you should be part of it. It will give power back to individuals in a way we’re only just beginning to imagine.

 

Acronyms and Crypto Slang

 

airdrop – a way for projects to distribute coins to holders of certain coins
altcoin – any coin other than bitcoin
aml – anti money laundering
ape – invest in something without doing you’re own research
ath – all-time high
bags – what you’re holding (your investments)
btd/btfd – buy the f***ing dip, buy when the market is red
bpd – bitcoin pizza day, big pay day
capitulate – sell
cbdc – central bank digital currency
cex – centralized exchange (e.g. coinbase)
dao – decentralized autonomous organization
defi – decentralized finance
degen – degenerate as in a degenerate gambler
diamond hands – not going to sell
dex – decentralized exchange (e.g. 1inch)
dyor – do your own research
erc-20 – any coin built on ethereum is an erc-20 token
fomo – fear of missing out
fud – fear, uncertainty, and doubt
hodl – a misspelling of “hold” or “hold on for dear life”
hold – don’t sell
kyc – know your customer
lp – liquidity provider
moon – when coins drastically rise in price
nft – non-fungible token
ngmi – not gonna make it
nyknyc – not your keys, not your coins
paper hands – someone who sells easily
poh – proof of history, to measure time before consensus used by solana
pos – proof of stake, a consensus mechanism used by ethereum 2.0
pow – proof of work, a consensus mechanism used by bitcoin
pump and dump – artificially inflate the price of an asset and sell high
rekt – when you lose a bunch of money
rug pull – get scammed
satoshi – the pseudonymous founder of bitcoin and 0.00000001 BTC
shill – to peddle a coin
shitcoin – a useless coin or a coin with poor fundamentals
tor – the onion router, a browser used to access the “dark web”
tps – transactions per second
wagmi – we’re all gonna make it
whale – an investor with a large amount of crypto
when lambo – when will you have enough money to buy a lambo
xbt – an alternative abbreviation for bitcoin (btc)

Slang Source

 

Links

 

Here are some links to projects that I’ve found interesting, either on the crypto currencies themselves or web 3 projects:

https://ethereum.org
https://ethereum.github.io/yellowpaper/paper.pdf (technical)
https://metamask.io (browser based wallet)
https://www.coinbase.com/
https://brave.com/
https://ens.domains/
https://ipfs.io/
https://www.storj.io/
https://d.tube/
https://somee.social/
https://steemit.com/
https://ethlance.com/
https://uniswap.org/
https://lido.fi/

 

 

Quick PPP Loan Analysis

Data about the recent PPP loans was released today. We downloaded it and took a quick look at it. While the company names were only provided for companies who received greater than $150k, that was still 661,218 small businesses.

A couple notable points. California by far received the most loans at 87,689. Texas, New York, Florida coming up next, in that order. Most of the loans were granted in April, but it looks like they’re still being approved. There are many more business types than I realized! I didn’t realize all of them had employees, do trusts employ people?

4820 businesses received between 5 and 10 million! That’s a big number for a “small” business. The top three lenders were JP Morgan Chase, Bank of America and Truist Bank d/b/a Branch Banking & Trust Co (which I’ve never heard of, but was BB&T which I have heard of). I’m sure there is lots more analysis that can be done with this data set, but I just wanted to provide a little taste.

To get to analyzing quickly. We imported the csv into MongoDB and then connected that to MetaBase. What a nice workflow! Thanks to those two products for making it so painless to explore new data sets.

Download the original data here.

The Business Owner’s Guide to Hosting

Web hosts provide the ‘space’ where your website lives on the Internet. Making wise hosting choices will ensure your visitors have a pleasant and productive experience on your website.

Let’s explore the factors that comprise web hosting, what your particular website requires to run optimally and what services are available to help you make the most prudent choice for your customers and for your bottom line.

The first question is, “What does your site need?” There’s a continuum of what websites ‘do’ — from being a static, informational page to providing a full-blown e-commerce experience. Here are some terms with which you should be familiar when assessing your specific hosting needs:3

With those factors in mind, you can make an informed decision concerning the server (hugely powerful computer). You’ll choose among:

Shared server: Your website is one of perhaps thousands running on a single server. Because you share resources with those other sites, the possibility exists that resources your site requires could be periodically distributed to meet the needs of other sites, temporarily affecting your site’s performance. If your site’s requirements are minimal, however, this won’t be a cause for concern and makes this the ideal — and least costly — choice for most businesses.

  1. Dedicated server: This is your site’s server — and yours alone. Choose this option when your site must have the highest possible degree of uptime (uninterrupted operation) and performance. It’s extremely expensive, and therefore not appropriate for all businesses.
  2. Virtual server: A server is compartmentalized into mini dedicated servers. This option provides a small dedicated server whose size can be scaled according to your needs. If your site periodically requires more resources — but not constantly — this is a more cost-effective choice than a dedicated server.
  3. Co-location: Your server is located at a data center (a specialized environment exclusively built and maintained to operate servers). They guarantee an outstanding degree of security, uptime and performance. If you need total control over the configuration and location of your server, this is the option for you.

Other website hosting considerations include:

Reliability: While all hosting services promise a high degree of uptime, it’s more important to some businesses than others. If your company will suffer with even minor and infrequent variations in reliability, host with a provider who offers a Service Level Agreement (SLA), which is a contract that defines and guarantees the level of reliability you can expect. SLAs come with hefty price tags which are only worth it if your business will suffer should your site go down.

Security: It’s important to learn the procedure a host has in place to safeguard the information you’ve stored on their equipment. “Redundancy” is a term that refers to the backup measures a host will implement to prevent data loss.

PowerConnect Video

PowerConnect allows financial professionals to search through multiple transcripts simultaneously, making their jobs more efficient and allowing them to easily track changes from one transcript to the next, across multiple companies and quarters.

We created this video to provide a high level overview explaining the concept since the idea is new to many people. The video was used to help generate interest in the product from both users and potential investors.