ICOs are the hot topic of the day and deservedly so, because of their potential to be agile capital-raisers for coin creation at almost one fourth the cost of an IPO. ICOs can be looked upon as an alternative method of crowdfunding that has evolved outside of the traditional system of finance. An ICO progresses over a period of a week or more and allows the purchase of newly issued token in exchange for the pre-established cryptocurrency. The token will have a designated price which does not change during the period of ICO making the token supply static. Other options are to have a static supply with dynamic funding (More the funds, higher the token price) or have a dynamic token supply that will be determined by the number of funds received (Static price for token, new token created for every paid currency unit within a limited time frame). ICOs are one of the easiest and quickest ways for companies to fund their projects and for users to invest in projects.
The Process of Building a Coin
From a developer’s perspective, the process of creating a coin and a landing page using the Ethereum platform are as follows.
Specifications
Agreeing upon a set of specifications will help in laying down the rules and avoid making updates which might reduce the trust from the community. Basic parameters like start date, end date, minimum and maximum caps and the currency for exchange are discussed and confirmed during this phase.
Smart Contract Implementation, Testing & Deployment
All lines of codes are tested thoroughly and tests are conducted for all possible scenarios. Static code analysis, audit and code review helps to detect inconsistent behaviour and fix them.
Tools of the Trade
To develop a basic Ethereum Smart Contract to represent a coin with a simple Initial Coin Offering can be accomplished with Solidity as the programming language, OpenZeppelin Solidity contracts as the foundation for the Smart contract, Truffle Framework as the testing and building tool, TestRPC for Ethereum blockchain node simulation, JavaScript for programming the unit tests and MyEtherWallet for testing and deployment of the contract on Ethereum blockchain.
Implementation
An instance of the contract is tested to check its properties by accessing the fields and calling functions to implement missing parts.
Deployment
After putting the contract through a set of unit tests, it is compiled using Truffle and deployed to test Ethereum blockchain using MyEtherWallet
Manual Testing
The code is put through extensive unit tests before going live and also tested against a working blockchain.
ICO Status Page
The status page is a crucial part of the ICO. An ideal status page effectively informs token buyers about the basic ICO parameters like start and end dates, minimum and maximum cap, rates, bonuses etc.
Conclusion
So far we have covered the introduction to Ethereum Smart Contracts, ICOs, the importance of clear specifications, development of smart contracts, manual and automatic testing. There’s more to a successful ICO, such as an effective whitepaper, technical execution, and ICO Marketing Strategies. Find complete ICO and coin development solution under one roof at Blockchain App Factory.