I am currently working on a Dapp project (Shape) whose first major development phase is now nearing its end. Since transaction costs are always a big concern for developers, I want to use this article to share some of the insights I gained throughout the past couple of weeks/months in this area in terms of optimization.

Image for post
Image for post
“closeup photo of 100 US dollar banknotes” by Pepi Stojanovski on Unsplash

Below, I present a list of optimization techniques, some of which with references to more detailed articles on the subject, you can apply to your contract design. …


One key struggle, many developers have with smart contracts is: Once they are deployed, they are there! Altering a contract after deploying under normal circumstances is extremely difficult; not for manipulation but also not for advancement. This is why developers started thinking about ways to design a smart contract back-end which could be updated however the contract owner sees fit.

Image for post
Image for post
Photo by rawpixel on Unsplash

Contract Structure

Just a very brief sum up of what the most common design for updatable contracts looks like:

Updatability can be achieved by separating variables from functions, meaning that there is one Core contract, containing all variables and an arbitrary number…

Lucas Aschenbach

Blockchain development, UI/UX design, Mathematics

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store