Welcome to another Dev Update, where we look back at what happened last week and forward to what is planned for this week. Intensive interviewing took place this week and we are happy to announce that our team has grown again; we have hired another two high quality C++ guys. They shall be working remotely and starting imminently, a more official “Welcome aboard” will no doubt be posted when all the i’s are dotted and t’s crossed.
With the team growing, especially remotely, it presents us all with new challenges. This has led us to review our Dev workflow and for QA to investigate and propose a new more rigorous code review process, steering us toward tools like Jira, Hipchat, Jenkins, Gerrit, Crucible, FishEye, CodeShip and Drone.io. In the last week we have frantically been trialling, configuring and testing these tools; there is very little red tape here in MaidSafe - once an area of improvement has been identified, it is all hands to the pumps to complete the enhancement. These tools will allow us to make our QA processes way more rigid and should ultimately result in more robust code. They also will also help increase awareness and the organisation of priority tasks across a much larger team, both here in Troon and elsewhere.
Simplifying the Dev environment, with the aim of making it a one-click affair to get started and apps coded, has also been a major focus of many members of the team this week. A lot of effort has gone into creating Installers across all platforms and they should be released into the wild very soon. This is great news for anyone wanting to start developing applications, as it will give a click-and-go build environment for SAFE applications.
The Testnet 1 debugging focus has continued in earnest, with efforts concentrated on stabilising the testnet. The SQLite and bad_alloc issues in particular have been identified and targeted. Routing networks have also been created across various geo-locations specifically to squash testnet 1 bugs. Anyone that follows the commits on Github will notice that excellent progress has been made in this area also. So expect to see Testnet 1 activity increasing greatly in the near future.
RUDP is now 100% reliable under packet loss, up from 99.8% two weeks ago. It took an enormous number of test iterations to reach this point as when a codebase only fails 0.2% of the time, it takes 500 iterations to get each failure and if you didn’t quite get the logging right, you wasted those iterations. Now that RUDP is 100% reliable under packet loss, SYN cookie support for RUDP has been significantly refactored and improved and re-enabled - the former implementation had been disabled as it didn’t work too well, but the new implementation correctly filters out SYN floods and session hijacks at a very low level, and hopefully RUDP can now survive a DDoS attack and other aggressive network overload techniques. We are currently iterating RUDP under packet loss to figure out the best balance of sensitivity to DDoS attacks, and once that is complete the changes to this experimental RUDP branch shall be inspected by all engineering staff before it is allowed to enter the main code base.
As always - thank you for taking time to keep up-to-date with our progress,
The entire MaidSafe team.