BLADE Tech Update

adbank
adbank blog
6 min readFeb 12, 2019

--

Another BLADE post already? What can we say: we’re excited!

Adbank is disrupting the digital advertising industry. With BLADE, advertisers, publishers and end users are connected in a way that’s never been done before. The team has been hard at work so let’s take a look at some of the challenges they’ve faced and the genius solutions they’ve built to make BLADE a truly amazing piece of technology…

What is BLADE?

The newest project within the adbank ecosystem is the BLADE browser extension. If you’re new and haven’t heard the hype about BLADE yet, you can get caught up with our past posts:

For a quick recap, the BLADE browser extension is an ad-blocking extension that replaces blocked ads with adbank-powered ads.

Why would an end user want to use an adblocker that serves ads, you ask? Because end users get paid when they see them.

Ad-blocking browser extensions are nothing new: Adblock Plus and UBlock both have over ten million installs each — and there are many other ad blockers out there to choose from. Now, for the first time ever, end users and the immensely important role they play in the advertising ecosystem is recognized and rewarded.

What we’ve been working on:

Building tech like this is groundbreaking. There is nothing like it in the world and every day has been a challenging, rewarding and mind-blowing experience for the team. We could not be more excited!

While building BLADE, the development team has had to contend with challenges and the team has found some truly amazing solutions. Several of these solutions are the first implementations of their kind in the world! We’re going to give you an insider’s look at three challenges the team has encountered and their respective solutions.

Challenge #1: Reducing Gas Costs

The tech team has been working to reduce gas costs involved with the ADB token. In addition, the team has been working to reduce the complexity and improve the performance of executing the transactions within the Ethereum network, specifically around transferring the rewarded ADB tokens to the end user’s external wallet.

To this end, we implemented functionality to support bulk transactions. To achieve this, the development team created an additional smart contract — Adbank Reward Claim contract.

Don’t worry, there has been no change to the ADB token, token swap, etc. — this is just some of the magic that happens behind the scenes to make the whole ecosystem function!

An additional smart contract makes it possible to reduce the complexity, increase security, and provide the ability for the adbank network to perform bulk payouts (both automatic and manual) which reduces gas costs.

The payout procedure:

  1. End users earn ADB tokens by viewing adbank powered ads while using the BLADE extension.
  2. Once an end user has earned enough ADB tokens to meet the minimum payout threshold, adbank automatically transfers the ADB from it’s wallet to the Adbank Reward Claim contract, paying the Etherium gas.
  3. ADB in the Adbank Reward Claim contract can be manually withdrawn by the end user. If the end user does not manually withdraw their ADB, adbank will automatically send them to the end user’s wallet based on a schedule.

By using bulk transaction functionality, there is less expense in form of Ethereum network fee.

Challenge #2: Registration Flow

Our amazing team is constantly solving the technical and UI/UX related challenges of building a piece of technology like BLADE.

Our goal with BLADE is to provide a tool that is simple and enjoyable to use. To this end, the team is currently working on end user registration flow, to ensure that registration occurs directly within the extension with no redirects.

Challenges are inevitable, but we have solutions!

Let’s take a look at user registration within the BLADE browser extension:

  • The end user installs the Chrome extension from the Chrome Store and then clicks to open the extension.
  • The end user then sees the “Welcome” screen which invites them to “Get Started”
  • To start the registration process, the end user reads and accepts the “Terms & Conditions” and then sets their password
  • Next, BLADE automatically generates a secret phrase. The phrase is critical to write down and keep safe, as it allows the end user to recover the account if they lose their password.
  • Next is KYC verification. This step can be completed at a later time and the user can earn ADB rewards without having completed KYC verification. KYC will need to be completed to be able to withdraw ADB tokens.
  • The last step during the registration is setting the end user’s External Wallet (where the payouts will be transferred to). The end user will also set the Automatic Transfers checkbox, that allows payouts to happen automatically.

That’s it! That is how the end user registration process looks like, and where the team have been working hard to ensure the best UI/UX possible.

Challenge #3: Ad Blocking

It’s no surprise, building the ad blocking functionality is labour intensive. The team was faced with the question: spend a ton of time (and money) to reinvent the wheel, or use an open source solution.

So, the decision was made to build the BLADE extension on top of the open source tech of AdBlock Plus. This decision saved countless hours which were then able to be used for other development activities, moving the project along even faster.

Based on the potential changes coming from Google Chrome we are happy with our decision to build on the back of Adblock Plus which is suspected to be the least affected adblock solution.

The development team has created elegant solutions for many challenges so far and we expect many more challenges before BLADE is released! We hope this provides more transparency into building a piece of technology like BLADE, the project management and decisions that get made, and how the adbank team works!

Stay tuned for more on the development of BLADE in upcoming articles. We’ll cover the challenges we’re encountering and the creative solutions the team has implemented.

Follow along on the BLADE GitHub here. Join the Telegram channel here where you can meet the team, ask questions, and get all the updates first!

--

--