For us, blockchain is community. Therefore, on our platform, the community is very important; You all collaborate on a project, you all then vote on this project, and you all leverage each other knowledge. These are the foundation of AllianceBlock participative economy.
This week we will release a renewed social section with a reworked public profile, an easier way to manage your contacts and easy to configure privacy settings.
Bug Bounty Program update
First of all, thank you @sandurtjuh for your quality submissions in the past week! This is the current state of the Bug Bounty Program (only eligible entries are displayed, solved items from last week are removed):
Please note that all bugs with the status "done" will be released to production later this week.
Other things that have been added or changed:
Later this week we will release a major upgrade to user profiles, contacts, privacy settings and we will introduce two factor authorization.
This is a list of the features that were added, changes that were made and bugs that were solved:
- Send ETH to friends by username instead of wallet address
- An improved project filter
- An improved way of checking user session lifetime
- Fixed a bug where data would not always be loaded on a page refresh
- Introduced 2FA-setting in account settings
- 2FA (when set in account settings) at Sign In screen
- Fixed progress bar color in project details screen
- New Account Settings section
- Added new Notification Settings section
- Added daily/weekly/monthly e-mail digest (to be set in Notification Settings section)
- Revamped public profile with portfolio distribution overview and a custom cover image
- Public profile setup and preview before publishing
- Extremely easy to configure privacy settings through visual wizard with clear examples of impacted areas
- Revamped contact section
- Ability to remove contacts
- Switch between contact card and table view
- Search in contacts
- Redesigned invite new user by email address (add multiple email addresses)
More about 2FA, Public Profile and Privacy Settings
Click on your avatar in the top right corner:
Click Account Settings:
Scroll down to the fourth item and click the toggle switch to enable 2FA:
A wizard will guide you through the rest of the configuration.
Setup public profile and privacy settings
Click on your avatar in the top right corner:
Click on Public Profile:
On the new page, update your information and click the Save and Setup Privacy Settings button below.
On the popup, click the Setup Privacy Settings button:
For each section of your public profile, you will be asked about your desired level of privacy, choose one and press Save and Go Next:
Once done, you can preview your profile or publish it immediately:
And you're done!
Our way of working
Inspired by questions after our first weekly update we have asked our Lead Full Stack Developer, Stephan Boeve, to tell you guys in more detail what we do and how we do it:
I’m involved with AllianceBlock since the beginning and saw almost every bit grow to what you know today. Slowly but surely the team grew from 3 to more than 20 people today and our platform matured. We have an awesome team with a good set of personalities and skills. We are continuously searching for ways to improve ourselves, the way we work and the platform.
Our team is focussed on Agile/Scrum, which is an excellent way to have maximum grip on the development tasks and progress, while remaining flexible at the same time responding to community feedback and bug reports.
In order to adapt quicker to new insights and improve faster we started out with weekly sprints. Once we got into a smooth flow, we changed to sprints that last for two weeks.
Before the start of a sprint, the team refines every issue and task which has been planned and judges them by difficulty to develop. We have daily calls to share information about our progress and to tackle any concerns or blocking issues.
Once a sprint is finished, we take time to evaluate the team and the progress. From our conclusions we divide tasks to improve on those points.
We use Atlassian Jira for creating and tracking of stories, tasks & bugs. Since we started working with Jira we’ve created over 1600 tickets for the platform alone.
For the actual software development, we use GitLab to manage our repositories and branches. For every user story in Jira, a branch is created in which a developer codes, runs tests and commits to a merge request. When that request is approved by another team member, it’s merged to an environment branch for automated building, testing and deployment.
We have most of our backend split up in different micro services, split by their purpose. This allows the backend to be scaled horizontally more easily when the load of a specific service increases and also keeps it cost efficient. We use EC2 / Docker containers for our backend services. Docker allows us to have the complete backend building & running locally with a single command. We are planning to move the EC2 containers to Lambda functions since they are more isolated and will scale better.
With the help of GitLab CI & Docker, we’re able to automate and simplify most (repeating) steps of the development cycle. This greatly decreases development time while increasing the quality of our work.
Furthermore, as our team grows and the platform matures, documentation becomes ever more important. From specific documentation about our code, to code guidelines for our languages, and in-depth How to articles for the tooling we use. We tend to cover as much as we can for everyone’s benefit and to accommodate the team's growth.
Besides that we want an easy to use platform, we want it to be pleasurable to work with. When we look back at blockchain transactions (investing in a project, creating or accepting a Token Swap offer or when sending ETH or tokens to another wallet), you might recognize this screen:
Next week we will work on releasing an update where this will be a thing of the past. This will definitely increase the usability of the platform.
As mentioned in the previous update, we are also implementing KYC/AML at the moment. Which means that you will be able to see the (mandatory) KYC/AML procedure on our platform. For now KYC/AML will be optional, since we are also still running on testnet. We recommended, when trying out the KYC/AML procedure, to not use real data.