{"id":109701,"date":"2024-07-29T15:16:43","date_gmt":"2024-07-29T15:16:43","guid":{"rendered":"https:\/\/wp.dash.org\/?p=109701"},"modified":"2024-07-30T15:21:47","modified_gmt":"2024-07-30T15:21:47","slug":"why-did-dash-evolution-take-so-long-to-release","status":"publish","type":"post","link":"https:\/\/wp.dash.org\/news\/why-did-dash-evolution-take-so-long-to-release\/","title":{"rendered":"Why did Dash Evolution take so long to release?"},"content":{"rendered":"
Disclaimer<\/span>: I am writing this in good faith as an explanation from a personal point of view on why it took Dash Evolution so many years to be released since it was first announced back in 2015. For context, I have been around in Dash development for a long time, as a very part time contributor from 2015 to 2017, then as head of mobile team from 2018 until I became CTO in 2021. I participated in some conversations with our founder when Evolution was conceived, and even though I did not actively contribute to Evolution until late 2020, I\u2019ve witnessed its entire lifecycle up to this point. In this blog post my goal is not to diminish the efforts of any previous contributor, but to honestly lay out things as I saw them unfold.<\/span><\/p>\n Multiple development teams took a crack at it. Almost all of what is being released was built after I became CTO in 2021. The current team, mainly people who were hired by myself, have delivered it. The amount of work accomplished in just 3 years by our team is quite impressive.<\/span><\/p>\n Dash Evolution development took place generally among 5 eras.<\/span><\/p>\n Era 1 (2015 – <\/b>mid<\/b> 2017<\/b>)<\/b>: <\/span>Evan Duffield<\/b> + small team. After Evan Duffield, Dash\u2019s founder, announced Dash Evolution back in 2015 he got to work trying to build it, his original approach had some merit, he decided to use an SQLite Database on all masternodes to try to store data that could be accessed by the network.<\/span><\/p>\n Characteristics of Era 1:<\/span><\/p>\n Opinion: Not much work actually took place on Evolution. I was a part time contributor, mostly for iOS development.<\/span><\/p>\n Era 2 (<\/b>mid 2017<\/b> – mid 2018)<\/b>: <\/span>Andy Freer<\/b> (transition to CTO) + <\/span>Ryan Taylor<\/b> (transition to CEO). Andy Freer took charge as the new lead of development. During this phase many ideas came into existence.\u00a0<\/span><\/p>\n Characteristics of Era 2:<\/span><\/p>\n Opinion: Many interesting ideas for Evolution, but not enough technical competence to build them. Decision to use MongoDB and Javascript which were bad architectural decisions. Lack of implementation progress. Many wasted efforts.<\/span><\/p>\n Era 3 (mid 2018 – mid 2021)<\/b>: <\/span>Bob Caroll<\/b> (CTO) + <\/span>Ryan Taylor<\/b> (CEO). Bob Caroll was hired as CTO and worked on bringing stability to our teams. During this phase very ad-hoc development became structured thanks in part to efforts by our COO Robert Wiecko.<\/span><\/p>\n Characteristics of Era 3:<\/span><\/p>\n Opinion: Many things that looked good on paper happened in this era, but we had very bad technical foundations for Evolution. Some people worked very hard for very little achievements. This period had a very large number of meetings. The Core and Mobile teams however did very well with the Core team laying the foundation of the future consensus that will drive Evolution.<\/span><\/p>\n Era 4 (early 2021 – March 2022)<\/b>: <\/span>Samuel Westrich<\/b> (head of mobile team -> interim CTO -> CTO) + <\/span>Ryan Taylor<\/b> (CEO): After losing faith in the ability of the teams to deliver, I decided to do my best to build things myself. I started by building out the consensus mechanism that I saw that was needed in Tenderdash. This received very positive feedback, so I then put forward my vision for both the project and delivery.<\/span><\/p>\n Characteristics of Era 4:<\/span><\/p>\n Opinion: Dash Evolution development was not going well. Since I really believed in the overall project I decided to step up because I knew that more bad decisions could mean the end of the project. I inherited a very bad technical architecture coupled with promises to our community that the launch would be right around the corner. In 2021 and 2022, I had not yet fully realized how bad things were and only gradually understood. Most of the development existed in Javascript and Javascript is not a language suited for blockchain development. It was understood that a complete rewrite would take years. The technical team with me leading them decided to keep a part of the project in Javascript and the other part would be in Rust, with GoLang being kept for Tenderdash. At this time I trusted team members who believed such an architecture would work.<\/span><\/p>\n Transition between Era 4 and Era 5: <\/b>In February 2022, our previous CEO Ryan Taylor resigned during a time where a sizable fraction of the Dash community expressed through voting their displeasure with the direction of DCG.<\/span><\/p>\n Characteristics of the transition period:<\/span><\/p>\n Opinion: This transition is actually quite important. Before this event, almost all decisions I took needed to be justified and led to many meetings. There was a constant pressure to release fast, but in my opinion that pressure came with no long term vision on the health of the project.<\/span><\/p>\n Era 5 (February 2022 – now)<\/b>: <\/span>Samuel Westrich<\/b> (CTO) + <\/span>DCG Board<\/b>: This is the time where the vast majority of development took place.<\/span><\/p>\n Characteristics of Era 5:<\/span><\/p>\n Opinion: Obviously since I was leading development efforts during this time I will have a biased opinion of this phase. During this phase there were many very heated arguments about the architecture of Platform. I would often silo myself and work like a madman to prove to others that systems that I devised would work. <\/span>I believe many team members adopted a similar approach, driven by our shared commitment to success. Ultimately, these efforts were rewarding. While I am confident that my architectural guidance and substantial development contributions were critical to our success, they were just one piece of the puzzle.<\/span> The completion of Evolution was a result of a<\/span> strong collaborative effort and would not have been produced if not for the amazing contributions from many of our team members. We have successfully delivered the project and laid an excellent foundation for future work. Let\u2019s start Era 6!<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"Disclaimer: I am writing this in good faith as an explanation from a personal point of view on why it took Dash Evolution so many years to be released since it was first announced back in 2015. For context, I have been around in Dash development for a long time, as a very part time…","protected":false},"author":50,"featured_media":109753,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[290,216],"tags":[],"class_list":["post-109701","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","category-news"],"acf":[],"yoast_head":"\nSo why did this take so long to build?<\/span><\/h2>\n
Short answer<\/span>:<\/span><\/h3>\n
Long answer<\/span>:\u00a0<\/span><\/h3>\n
\n
\n
\n
\n
\n
\n
\n