CINXE.COM
Case Study: How to Improve Model Deployment Efficiency | DagsHub
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <title>Case Study: How to Improve Model Deployment Efficiency | DagsHub</title> <meta name="HandheldFriendly" content="True" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <link rel="preload" href="/blog/assets/css/app.css?v=d16ee3eaf3" as="style" /> <link rel="preload" href="/blog/assets/js/manifest.js?v=d16ee3eaf3" as="script" /> <link rel="preload" href="/blog/assets/js/vendor/content-api.min.js?v=d16ee3eaf3" as="script" /> <link rel="preload" href="/blog/assets/js/vendor.js?v=d16ee3eaf3" as="script" /> <link rel="preload" href="/blog/assets/js/app.js?v=d16ee3eaf3" as="script" /> <link rel="preconnect" href="https://polyfill.io"> <link rel="dns-prefetch" href="https://polyfill.io"> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Lato:wght@100;300;400;700;900&display=swap" rel="stylesheet"> <link rel="preload" href="/blog/assets/css/post.css?v=d16ee3eaf3" as="style" /> <link rel="preload" href="/blog/assets/js/post.js?v=d16ee3eaf3" as="script" /> <style> /* These font-faces are here to make fonts work if the Ghost instance is installed in a subdirectory */ /* source-sans-pro-regular */ @font-face { font-family: 'Source Sans Pro'; font-style: normal; font-weight: 400; font-display: swap; src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'), url("/blog/assets/fonts/source-sans-pro/source-sans-pro-regular.woff2?v=d16ee3eaf3") format('woff2'), url("/blog/assets/fonts/source-sans-pro/source-sans-pro-regular.woff?v=d16ee3eaf3") format('woff'); } /* source-sans-pro-600 */ @font-face { font-family: 'Source Sans Pro'; font-style: normal; font-weight: 600; font-display: swap; src: local('Source Sans Pro SemiBold'), local('SourceSansPro-SemiBold'), url("/blog/assets/fonts/source-sans-pro/source-sans-pro-600.woff2?v=d16ee3eaf3") format('woff2'), url("/blog/assets/fonts/source-sans-pro/source-sans-pro-600.woff?v=d16ee3eaf3") format('woff'); } /* source-sans-pro-700 */ @font-face { font-family: 'Source Sans Pro'; font-style: normal; font-weight: 700; font-display: swap; src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'), url("/blog/assets/fonts/source-sans-pro/source-sans-pro-700.woff2?v=d16ee3eaf3") format('woff2'), url("/blog/assets/fonts/source-sans-pro/source-sans-pro-700.woff?v=d16ee3eaf3") format('woff'); } /* iconmoon */ @font-face { font-family: 'icomoon'; font-weight: normal; font-style: normal; font-display: swap; src: url("/blog/assets/fonts/icomoon/icomoon.eot?aoz2mo?v=d16ee3eaf3"); src: url("/blog/assets/fonts/icomoon/icomoon.eot?aoz2mo#iefix?v=d16ee3eaf3") format('embedded-opentype'), url("/blog/assets/fonts/icomoon/icomoon.ttf?aoz2mo?v=d16ee3eaf3") format('truetype'), url("/blog/assets/fonts/icomoon/icomoon.woff?aoz2mo?v=d16ee3eaf3") format('woff'), url("/blog/assets/fonts/icomoon/icomoon.svg?aoz2mo#icomoon?v=d16ee3eaf3") format('svg'); } </style> <script defer src="/blog/assets/fonts/fontawesome/all.min.js?v=d16ee3eaf3"></script> <link rel="stylesheet" type="text/css" href="/blog/assets/fonts/octicons/octicons.min.css?v=d16ee3eaf3"> <link rel="stylesheet" type="text/css" href="/blog/assets/css/app.css?v=d16ee3eaf3" media="screen" /> <link rel="stylesheet" type="text/css" href="/blog/assets/css/post.css?v=d16ee3eaf3" media="screen" /> <meta name="description" content="Accelerate model deployment & collaboration: How CY4GATE improved efficiency using DagsHub as their ML project management tool." /> <link rel="icon" href="/blog/favicon.ico" type="image/x-icon" /> <link rel="canonical" href="https://dagshub.com/blog/cy4gate-improve-model-deployment-efficiency/" /> <meta name="referrer" content="no-referrer-when-downgrade" /> <meta property="og:site_name" content="DagsHub Blog" /> <meta property="og:type" content="article" /> <meta property="og:title" content="Case Study: How to Improve Model Deployment Efficiency | DagsHub" /> <meta property="og:description" content="Accelerate model deployment & collaboration: How CY4GATE improved efficiency using DagsHub as their ML project management tool." /> <meta property="og:url" content="https://dagshub.com/blog/cy4gate-improve-model-deployment-efficiency/" /> <meta property="og:image" content="https://dagshub.com/blog/content/images/2023/06/Image_Cy4Gate.png" /> <meta property="article:published_time" content="2023-07-05T15:18:34.000Z" /> <meta property="article:modified_time" content="2024-11-21T14:32:26.000Z" /> <meta property="article:tag" content="Case Studies" /> <meta property="article:publisher" content="https://www.facebook.com/dagshub" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:title" content="Case Study: How to Improve Model Deployment Efficiency | DagsHub" /> <meta name="twitter:description" content="Accelerate model deployment & collaboration: How CY4GATE improved efficiency using DagsHub as their ML project management tool." /> <meta name="twitter:url" content="https://dagshub.com/blog/cy4gate-improve-model-deployment-efficiency/" /> <meta name="twitter:image" content="https://dagshub.com/blog/content/images/2023/06/Image_Cy4Gate.png" /> <meta name="twitter:label1" content="Written by" /> <meta name="twitter:data1" content="Loren Mor" /> <meta name="twitter:label2" content="Filed under" /> <meta name="twitter:data2" content="Case Studies" /> <meta name="twitter:site" content="@TheRealDAGsHub" /> <meta property="og:image:width" content="1192" /> <meta property="og:image:height" content="657" /> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Article", "publisher": { "@type": "Organization", "name": "DagsHub Blog", "url": "https://dagshub.com/blog/", "logo": { "@type": "ImageObject", "url": "https://dagshub.com/blog/content/images/2023/12/Dagshub-favicon.svg" } }, "author": { "@type": "Person", "name": "Loren Mor", "image": { "@type": "ImageObject", "url": "https://dagshub.com/blog/content/images/2023/06/loren.jpeg", "width": 500, "height": 500 }, "url": "https://dagshub.com/blog/author/loren/", "sameAs": [] }, "headline": "Case Study: How to Improve Model Deployment Efficiency | DagsHub", "url": "https://dagshub.com/blog/cy4gate-improve-model-deployment-efficiency/", "datePublished": "2023-07-05T15:18:34.000Z", "dateModified": "2024-11-21T14:32:26.000Z", "image": { "@type": "ImageObject", "url": "https://dagshub.com/blog/content/images/2023/06/Image_Cy4Gate.png", "width": 1192, "height": 657 }, "keywords": "Case Studies", "description": "Accelerate model deployment & collaboration: How CY4GATE improved efficiency using DagsHub as their ML project management tool.", "mainEntityOfPage": { "@type": "WebPage", "@id": "https://dagshub.com/blog/" } } </script> <meta name="generator" content="Ghost 3.42" /> <link rel="alternate" type="application/rss+xml" title="DagsHub Blog" href="https://dagshub.com/blog/rss/" /> <script> const ghostSearchApiKey = '44bb83122f80c74bc070982817' </script> <!-- prism.js syntax highlighting --> <link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.21.0/themes/prism.min.css" /> <link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.21.0/themes/prism-tomorrow.min.css" /> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-PGHTMDN');</script> <!-- End Google Tag Manager --> <style> pre[class*="language-"] { margin: 0 0 1.5em !important; } code { text-shadow: none !important; } .token.operator { background: none !important; } :not(pre) > code[class*="language-"], pre[class*="language-"] { background: #20262E !important; } html { --aside-background-color: #f1f1ef; } html[data-theme='dark'] { --aside-background-color: #103037; } aside { padding: 1em; margin-bottom: 30px; font-size: 1.25em; line-height: 1.6em; background-color: var(--aside-background-color); border-radius: 10px; display: flex; } aside div.aside-emoji { display: block; } aside div.aside-text { display: flex; flex-direction: column; margin-left: 8px; } pre[class*=language-] { border-radius: 10px; } </style> <script> // @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat const ghostHost = "https://dagshub.com/blog" // @license-end </script> </head> <body class="post-template tag-case-study"> <header class="site-head site-head__bacground" role="banner" itemscope="itemscope" itemtype="http://schema.org/WPHeader"> <div class="site-head__wrap"> <div class="container container-lg"> <div class="site-head__frame"> <!-- Custom logo and site title. --> <div class="site-logo"> <a href="https://dagshub.com/" class="custom-logo-link" rel="home" aria-current="page"><img width="143" height="40" src="https://dagshub.com/wp-content/uploads/2024/04/dagshab.svg" class="custom-logo" alt="DagsHub" decoding="async"></a> <span class="screen-reader-text" itemprop="name">DagsHub</span> </div> <button class="nav-opener" aria-label="nav opener" onClick="this.parentNode.parentNode.parentNode.parentNode.classList.toggle('nav-active')"><span><em>Menu</em></span></button> <div class="site-head__holder"> <!-- Main menu. --> <nav class="site-head__nav js-header-menu-item" role="navigation" itemscope="itemscope" itemtype="http://schema.org/SiteNavigationElement"> <ul class="menu head-nav main-header-menu"><li id="menu-item-2351" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-2351" aria-haspopup="true"> <div class="menu-item__link menu-item__link--title">Resources</div> <button class="dropdown-toggle" aria-expanded="false" onClick="this.classList.toggle('toggled-on');this.parentNode.classList.toggle('submenu-open')"><span class="screen-readers">Expand child menu</span><span class="opener-arrow"><svg class="svg-icon icon-chevron-down" width="20" height="20"><use xlink:href='/blog/assets/images/icons.svg?v=d16ee3eaf3#icon-chevron-down'></use></svg></span></button> <ul class="sub-menu level0"> <li id="menu-item-2357" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2357"> <a href="https://dagshub.com/blog/" class="menu-item__link"><span class="menu-item__text">Blog</span></a> </li> <li id="menu-item-2358" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2358"> <a href="https://dagshub.com/datasets/" class="menu-item__link"><span class="menu-item__text">Datasets</span></a> </li> <li id="menu-item-2359" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2359"> <a href="https://dagshub.com/glossary/" class="menu-item__link"><span class="menu-item__text">Glossary</span></a> </li> <li id="menu-item-2360" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2360"> <a href="https://dagshub.com/blog/tag/tutorials/" class="menu-item__link"><span class="menu-item__text">Tutorial & Webinars</span></a> </li> </ul> </li> <li id="menu-item-2352" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2352"> <a href="https://dagshub.com/docs" class="menu-item__link"><span class="menu-item__text">Docs</span></a> </li> <li id="menu-item-2353" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-2353" aria-haspopup="true"> <div class="menu-item__link menu-item__link--title">Product</div> <button class="dropdown-toggle" aria-expanded="false" onClick="this.classList.toggle('toggled-on');this.parentNode.classList.toggle('submenu-open')"><span class="screen-readers">Expand child menu</span><span class="opener-arrow"><svg class="svg-icon icon-chevron-down" width="20" height="20"><use xlink:href='/blog/assets/images/icons.svg?v=d16ee3eaf3#icon-chevron-down'></use></svg></span></button> <ul class="sub-menu level0"> <li id="menu-item-2361" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2361"> <a href="https://dagshub.com/data-engine/" class="menu-item__link"><span class="menu-item__text"><span class="icon-image"><svg class="svg-icon icon-data-engine" width="20" height="20"><use xlink:href='/blog/assets/images/icons.svg?v=d16ee3eaf3#icon-data-engine'></use></svg></span><span class="menu-text-wrapper"><span class="menu-text">Data engine</span><span class="menu-description">Manage your unstructured data</span></span></span></a> </li> <li id="menu-item-2362" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2362"> <a href="https://dagshub.com/use-cases/llm/" class="menu-item__link"><span class="menu-item__text"><span class="icon-image"><svg class="svg-icon icon-llms" width="20" height="20"><use xlink:href='/blog/assets/images/icons.svg?v=d16ee3eaf3#icon-llms'></use></svg></span><span class="menu-text-wrapper"><span class="menu-text">LLMs</span><span class="menu-description">Build LLM projects quickly</span></span></span></a> </li> <li id="menu-item-2363" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2363"> <a href="https://dagshub.com/product/" class="menu-item__link"><span class="menu-item__text"><span class="icon-image"><svg class="svg-icon icon-linear-search" width="20" height="20"><use xlink:href='/blog/assets/images/icons.svg?v=d16ee3eaf3#icon-linear-search'></use></svg></span><span class="menu-text-wrapper"><span class="menu-text">Overview</span><span class="menu-description">Organize your entire project under one roof</span></span></span></a> </li> <li id="menu-item-2364" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2364"> <a href="https://dagshub.com/enterprise/" class="menu-item__link"><span class="menu-item__text"><span class="icon-image"><svg class="svg-icon icon-enterprise" width="20" height="20"><use xlink:href='/blog/assets/images/icons.svg?v=d16ee3eaf3#icon-enterprise'></use></svg></span><span class="menu-text-wrapper"><span class="menu-text">Enterprise</span><span class="menu-description">A single source of truth for your organization</span></span></span></a> </li> </ul> </li> <li id="menu-item-2354" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2354"> <a href="/enterprise/" class="menu-item__link"><span class="menu-item__text">Enterprise</span></a> </li> <li id="menu-item-2355" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2355"> <a href="https://dagshub.com/pricing" class="menu-item__link"><span class="menu-item__text">Pricing</span></a> </li> <li id="menu-item-2356" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-2356" aria-haspopup="true"> <div class="menu-item__link menu-item__link--title">Company</div> <button class="dropdown-toggle" aria-expanded="false" onClick="this.classList.toggle('toggled-on');this.parentNode.classList.toggle('submenu-open')"><span class="screen-readers">Expand child menu</span><span class="opener-arrow"><svg class="svg-icon icon-chevron-down" width="20" height="20"><use xlink:href='/blog/assets/images/icons.svg?v=d16ee3eaf3#icon-chevron-down'></use></svg></span></button> <ul class="sub-menu level0"> <li id="menu-item-2365" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2365"> <a href="https://dagshub.com/about" class="menu-item__link"><span class="menu-item__text">About</span></a> </li> <li id="menu-item-2366" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2366"> <a href="https://dagshub.com/careers" class="menu-item__link"><span class="menu-item__text">Careers</span></a> </li> <li id="menu-item-2367" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2367"> <a href="https://dagshub.com/contact-us/" class="menu-item__link"><span class="menu-item__text">Contact us</span></a> </li> </ul> </li> </ul> </nav> <div class="site-head__tools"> <ul class="menu head-nav main-header-menu"><li id="menu-item-2372" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2372"><a rel="Navbar_Login_Clicked" href="https://dagshub.com/user/login" class="menu-item__link" data-analytics-event="Navbar_Login_Clicked">Log in</a></li> <li id="menu-item-2389" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2389"><a rel="Navbar_BookADemo_Clicked" href="https://dagshub.com/book-a-demo/" class="menu-item__button btn btn--white-outline" data-analytics-event="Navbar_BookADemo_Clicked"><span class="btn__text">Book a demo</span></a></li> <li id="menu-item-2370" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2370"><a rel="Navbar_StartFree_Clicked" href="https://dagshub.com/user/sign_up" class="menu-item__button btn btn--primary" data-analytics-event="Navbar_StartFree_Clicked"><span class="btn__text">Start Free</span></a></li> </ul> </div> </div> </div> </div> </div> </header> <main class="main-wrap"> <article> <div class="l-content in-post"> <div class="l-wrapper in-post js-aos-wrapper" data-aos="fade-up" data-aos-delay="300"> <div class="l-post-content js-progress-content"> <header class="m-heading"> <h1 class="m-heading__title in-post">20% faster time to production with efficient data management</h1> <ul class="details"> <li> <div style="background-image: url(/blog/content/images/size/w100/2023/06/loren.jpeg);"></div> <a href="https://dagshub.com/blog/author/loren/">Loren Mor</a> </li> <li>5 min read</li> <li>a year ago</li> </ul> <p class="bio">Marketing @DagsHub </p> <img src="https://dagshub.com/blog/content/images/2023/06/Image_Cy4Gate.png" alt="" class="featured" /> </header> <div class="p-container"> <div class="p-sidebar"> <strong>About DagsHub</strong> <a> <img src="/blog/assets/images/video-placeholder.png?v=d16ee3eaf3" alt="" /> <svg class="svg-icon icon-play-color" width="100" height="100" "=""><use xlink:href="../assets/images/play-icon.svg#icon-play-color"></use></svg> </a> <p>DagsHub simplifies the process of building better models and managing unstructured data projects by consolidating data, code, experiments, and models in one place.</p> <hr /> <strong>Table of Contents</strong> <ul></ul> <b>Share This Article</b> <a href="https://www.facebook.com/sharer/sharer.php?u=https://dagshub.com/blog/cy4gate-improve-model-deployment-efficiency/" onclick="window.open(this.href, 'pop', 'width=500,height=570');return false;" class="m-icon-button filled in-share" target="_blank" rel="noopener" aria-label="Share on Facebook"> <span class="icon-facebook" aria-hidden="true"></span> </a> <a href="https://www.linkedin.com/shareArticle?mini=true&url=https://dagshub.com/blog/cy4gate-improve-model-deployment-efficiency/" onclick="window.open(this.href, 'share-linkedin', 'width=500,height=570');return false;" class="m-icon-button filled in-share" target="_blank" rel="noopener" aria-label="Share on LinkedIn"> <span class="icon-linkedin" aria-hidden="true"></span> </a> <a href="https://twitter.com/intent/tweet?text=20%25%20faster%20time%20to%20production%20with%20efficient%20data%20management&url=https://dagshub.com/blog/cy4gate-improve-model-deployment-efficiency/" onclick="window.open(this.href, 'share-twitter', 'width=500,height=605');return false;" class="m-icon-button filled in-share" target="_blank" rel="noopener" aria-label="Share on Twitter"> <span class="icon-twitter" aria-hidden="true"></span> </a> </div> <div class="p-content"> <!--kg-card-begin: markdown--><p>Learn how CY4GATE, a leading cybersecurity solutions provider, used DagsHub to reduce their time-to-production by 20% and improve their collaboration on AI projects.</p> <p>By managing their large-scale data projects with DagsHub, CY4GATE ensured their projects' reproducibility, were able to experiment faster, and spent 40% less time coordinating collaborative machine learning work. DagsHub enabled CY4GATE to manage their entire project lifecycle in one platform, streamlining the ML workflow, and delivering better outcomes for CY4GATE.</p> <p>In this case study, we explore CY4GATE's use case, main <a href="https://dagshub.com/glossary/mlops/">MLOps</a> challenges, and how DagsHub provided a comprehensive solution for them.</p> <!--kg-card-end: markdown--><!--kg-card-begin: markdown--><h2 id="companyoverview">Company overview</h2> <p><a href="https://discord.com/invite/9gU36Y6" rel="nofollow" target="_blank">CY4GATE</a> is a leading provider of cybersecurity solutions. The company's mission is to design, develop, and produce technologies, products, and services that meet the rigorous needs of Cyber Intelligence & Cyber Security. Their client base includes armed forces, police, intelligence agencies, and civilian companies in Italy and abroad. With its one-of-a-kind business model, CY4GATE offers proprietary products that cover the entire cyber market, focusing on data collection, analysis, and security. Their comprehensive offerings ensure clients receive tailored solutions to enhance their cybersecurity posture.</p> <h2 id="howcy4gateappliesmlintheirwork">How CY4GATE applies ML in their work</h2> <p>CY4GATE leverages machine learning (ML) in two key areas.<br> Firstly, in the cybersecurity domain, they apply ML models to analyze cybersecurity data and logs, enabling advanced threat detection and response capabilities. This helps safeguard their clients' systems and networks from potential cyber threats.</p> <p>Secondly, in the realm of decision intelligence, CY4GATE uses ML algorithms to extract valuable insights from unstructured data sources like PDFs, images, and videos. This enables organizations and military entities to make informed decisions based on the extracted knowledge. Additionally, CY4GATE actively participates in European research projects, contributing to and publishing their ML models, which further advances the field of cybersecurity.</p> <!--kg-card-end: markdown--><!--kg-card-begin: markdown--><h2 id="thechallenges">The challenges</h2> <p>The ML team at CY4GATE faced several challenges that hindered their productivity. These challenges included coordinating experimentation & collaboration, difficulties in ensuring accountability and reproducibility, and inefficient data management and storage for large-scale projects.</p> <h3 id="coordinatingexperimentationcollaboration">Coordinating experimentation & collaboration</h3> <p>The ML team at CY4GATE faced challenges in coordinating experimentation and promoting effective collaboration. Working on multiple projects required involving multiple team members, but distributing the workload while ensuring comprehensive knowledge sharing and progress documentation proved challenging. The situation was compounded by the team members' varying familiarity with different tools and their individual logging styles, making result comparison and interpretation difficult. This resulted in more siloed workflow, hindering effective collaboration.</p> <blockquote> <p>“This led to some confusion inside the team because not all the members had the complete information.”</p> </blockquote> <h3 id="accountabilityandreproducibility">Accountability and reproducibility</h3> <p>Ensuring accountability and ensuring reproducibility were ongoing challenges for the ML team. The absence of standardized logging structures hindered the ability to extract essential information from the logs, such as the specific architecture or tools used during modeling. This lack of standardized documentation impeded the ML team's ability to review, validate, and compare experiments accurately, potentially leading to inconsistencies in results and analysis.</p> <h3 id="inefficientdatamanagementandstorageforlargescaleprojects">Inefficient data management and storage for large-scale projects</h3> <p>The ML team at CY4GATE faced a critical issue related to the management and sharing of their large datasets. Without a centralized repository like DagsHub, each researcher had to individually send links or files to team members requiring their data. This approach proved inefficient, especially when dealing with sensitive information that sometimes required physically transferring data using thumb drives, introducing potential security concerns.</p> <blockquote> <p>“The process has always been solid, but now there's way less stress involved.”</p> </blockquote> <p>The problem worsened as data was added or modified, as there was no proper tracking system in place. Without a data tracking system in place, work was unreproducible and different versions of datasets were scattered across multiple locations and team members, making it difficult to determine who was working with which version. This lack of organization and version control hindered collaboration and productivity within the team.</p> <!--kg-card-end: markdown--><!--kg-card-begin: markdown--><h2 id="thesolution">The solution</h2> <p>CY4GATE discovered that DagsHub offered a comprehensive end-to-end platform for managing their ML projects and addressing their wider range of needs in the ML lifecycle. While initially exploring Label Studio integration for an NLP project, CY4GATE recognized that DagsHub could provide much more than just labeling capabilities. The user-friendly interface and cost-effectiveness of DagsHub compared to other solutions impressed the team, leading them to choose DagsHub as their primary tool for ML project management.</p> <p>Here are the main ways they used DagsHub as their ML solution:</p> <h3 id="acceleratedexperimentation">Accelerated experimentation:</h3> <p>DagsHub allowed CY4GATE to conduct experiments at a faster pace. They could now test different models, architectures, and hyperparameters more efficiently, enabling them to iterate and optimize their solutions more rapidly.</p> <blockquote> <p>“We are now able to move through the MLOps processes more easily, and we can apply updates, say, to add a last-minute feature, to a version ready to be put in production much more quickly than before.”</p> </blockquote> <h3 id="standardizationofexperimenttrackingandreproducibility">Standardization of experiment tracking and reproducibility:</h3> <p>By utilizing DagsHub, CY4GATE implemented a standardized logging system across their projects. Every team member followed the same logging structure, ensuring consistency and making it easier to interpret and compare results. This enhanced the accountability and reproducibility of their experiments.</p> <h3 id="enhancedcollaborationandcoordination">Enhanced collaboration and coordination:</h3> <p>DagsHub facilitated better collaboration and coordination among team members. Multiple people could now work on the same project simultaneously, utilizing different machines and logging their experiments in real-time while being able to share intermediate results and data versions. This streamlined the workflow, improved communication, and allowed for better knowledge sharing.</p> <blockquote> <p>“We were able to store all of our projects in one location and this led to an increment in collaboration, and consequently productivity, on top of a more smooth transfer of code between different departments of the company.“</p> </blockquote> <h3 id="efficientdatastorageandmanagement">Efficient data storage and management:</h3> <p>With DagsHub, CY4GATE resolved its data storage challenges. They no longer relied solely on local machines to store their data. DagsHub provided a central source of truth where they could store and manage their datasets effectively. This ensured a more scalable and organized approach to data storage.</p> <h3 id="optimizedcodesharingandsecureinternaldatatransfer">Optimized code sharing and secure internal data transfer</h3> <p>By implementing DagsHub, the ML team resolved their challenges in sharing project information and achieved secure internal data transfer within the company network. They replaced time-consuming and more risky methods like email or USB drives with a streamlined sharing process accessible to all teams.</p> <blockquote> <p>“The biggest change is how quickly we can share code, pushing and cloning even big projects in a few minutes at worst.”</p> </blockquote> <p>DagsHub eliminated old transfer methods with file size limitations and storage constraints, enabling seamless sharing of large files and datasets. With VPN access and internal network connectivity, team members could retrieve information from anywhere without physical transfers or external devices.</p> <blockquote> <p>“We never had any leaks before, the process has always worked fine, but now there's much less stress.”</p> </blockquote> <!--kg-card-end: markdown--><!--kg-card-begin: markdown--><h2 id="theresultsimpact">The results / impact</h2> <p>With the adoption of DagsHub as their <a href="https://dagshub.com/glossary/mlops-platform/">MLOps platform</a>, CY4GATE witnessed significant results and impacts, including:</p> <h3 id="improvedefficiencyinmodeldeployment">Improved efficiency in model deployment:</h3> <p>By eliminating the back-and-forth between development teams and production environments, CY4GATE achieved a 20% reduction in time-to-production. They could identify and address compatibility issues early on, ensuring smoother transitions from development to production, and enhancing their ability to deliver cybersecurity solutions to clients.</p> <blockquote> <p>“The model test is an important stage in model deployment. To test the model in a test environment, we share and try with the DevOps department and by using Dagshub this stage of the deployment has been straightforward.”</p> </blockquote> <h3 id="improvedcollaborativeworkandtimesavings">Improved collaborative work and time savings:</h3> <p>By using DagsHub, CY4GATE reduced the time needed for coordinating collaborative work by 40%, meaning they could do more in the same amount of time. The platform's collaborative features facilitated teamwork and coordination among team members, leading to increased productivity.</p> <blockquote> <p>“We have more or less 20% Time gain in model deployment for production and over 40% time gain for collaborative work”</p> </blockquote> <p>By integrating various tools, including Git, DVC, MLflow, and Label Studio, DagsHub provided CY4GATE with a comprehensive solution that streamlined its workflow from project inception to deployment. With DagsHub, they successfully designed data pipelines, automated training with DVC, managed hyperparameters with MLflow, and versioned their data efficiently.</p> <p>Overall, DagsHub played a pivotal role in centralizing CY4GATE's machine-learning workflow, improving collaboration, accessibility, and efficiency. The platform's features significantly reduced time-consuming tasks and accelerated the development and deployment processes, leading to increased productivity and better outcomes for the organization.</p> <!--kg-card-end: markdown--> </div> </div> </div> </div> </div> <section class="m-recommended"> <div class="l-wrapper in-recommended"> <h3 class="m-section-title in-recommended">Recommended for you</h3> <div class="m-recommended-articles"> <div class="m-recommended-slider glide js-recommended-slider"> <div class="glide__track" data-glide-el="track"> <div class="glide__slides"> <div class="m-recommended-slider__item glide__slide"> <article class="m-article-card post tag-case-study tag-bio tag-reproducibility"> <div class="m-article-card__picture"> <a href="/blog/mana-bio-reproducibility-and-experimentation/" class="m-article-card__picture-link" aria-hidden="true" tabindex="-1"></a> <img class="m-article-card__picture-background" src="/blog/content/images/size/w600/2023/11/manabio-1.png" loading="lazy" alt=""> <a href="https://dagshub.com/blog/author/dean/" class="m-article-card__author js-tooltip" aria-label="Dean Pleban" data-tippy-content="Posted by Dean Pleban "> <div style="background-image: url(/blog/content/images/size/w100/2020/08/deanprofile.jpg);"></div> </a> </div> <div class="m-article-card__info"> <a href="https://dagshub.com/blog/tag/case-study/" class="m-article-card__tag">Case Studies</a> <a href="/blog/mana-bio-reproducibility-and-experimentation/" class="m-article-card__info-link" aria-label="50% improvement in biotech data quality"> <div> <h2 class="m-article-card__title js-article-card-title " title="50% improvement in biotech data quality"> 50% improvement in biotech data quality </h2> </div> <div class="m-article-card__timestamp"> <span>a year ago</span> <span>•</span> <span>5 min read</span> </div> </a> </div> </article> </div> <div class="m-recommended-slider__item glide__slide"> <article class="m-article-card post tag-active-learning tag-case-study tag-domain-expert"> <div class="m-article-card__picture"> <a href="/blog/active-learning-with-domain-experts-a-case-study/" class="m-article-card__picture-link" aria-hidden="true" tabindex="-1"></a> <img class="m-article-card__picture-background" src="/blog/content/images/size/w600/2023/10/quang-tri-nguyen-VckdJzo7ig0-unsplash.jpg" loading="lazy" alt=""> <a href="https://dagshub.com/blog/author/yono/" class="m-article-card__author js-tooltip" aria-label="Yono Mittlefehldt" data-tippy-content="Posted by Yono Mittlefehldt "> <div style="background-image: url(/blog/content/images/size/w100/2022/06/Yono4-color.jpg);"></div> </a> </div> <div class="m-article-card__info"> <a href="https://dagshub.com/blog/tag/active-learning/" class="m-article-card__tag">Active Learning</a> <a href="/blog/active-learning-with-domain-experts-a-case-study/" class="m-article-card__info-link" aria-label="Active Learning with Domain Experts - Working with Dentists on Machine Learning"> <div> <h2 class="m-article-card__title js-article-card-title " title="Active Learning with Domain Experts - Working with Dentists on Machine Learning"> Active Learning with Domain Experts - Working with Dentists on Machine Learning </h2> </div> <div class="m-article-card__timestamp"> <span>a year ago</span> <span>•</span> <span>7 min read</span> </div> </a> </div> </article> </div> <div class="m-recommended-slider__item glide__slide"> <article class="m-article-card post tag-case-study"> <div class="m-article-card__picture"> <a href="/blog/macsos-breakthrough-tripling-experiment-speed-and-streamlining-ai-development-for-edge-devices/" class="m-article-card__picture-link" aria-hidden="true" tabindex="-1"></a> <img class="m-article-card__picture-background" src="/blog/content/images/size/w600/2024/05/TV---2.png" loading="lazy" alt=""> <a href="https://dagshub.com/blog/author/daniel-tannor/" class="m-article-card__author js-tooltip" aria-label="Daniel Tannor" data-tippy-content="Posted by Daniel Tannor "> <div style="background-image: url(/blog/content/images/size/w100/2024/02/Profile-pic.jpg);"></div> </a> </div> <div class="m-article-card__info"> <a href="https://dagshub.com/blog/tag/case-study/" class="m-article-card__tag">Case Studies</a> <a href="/blog/macsos-breakthrough-tripling-experiment-speed-and-streamlining-ai-development-for-edge-devices/" class="m-article-card__info-link" aria-label="40% increased experiment speed and streamlining AI Development for Edge Devices"> <div> <h2 class="m-article-card__title js-article-card-title " title="40% increased experiment speed and streamlining AI Development for Edge Devices"> 40% increased experiment speed and streamlining AI Development for Edge Devices </h2> </div> <div class="m-article-card__timestamp"> <span>7 months ago</span> <span>•</span> <span>2 min read</span> </div> </a> </div> </article> </div> </div> </div> <div data-glide-el="controls" class="glide__arrows js-controls"> <button data-glide-dir="<" class="m-icon-button filled in-recommended-articles glide-prev" aria-label="Previous"> <span class="icon-arrow-left" aria-hidden="true"></span> </button> <button data-glide-dir=">" class="m-icon-button filled in-recommended-articles glide-next" aria-label="Next"> <span class="icon-arrow-right" aria-hidden="true"></span> </button> </div> </div> </div> </div> </section> </div> </article> </main> <div class="video-modal"> <div class="video-modal-container"> <div class="video-modal-iframe"> <button><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" tabindex="-1"><path d="M20 20L4 4m16 0L4 20"></path></svg></button> <div> </div> </div> </div> </div> <div class="m-search js-search" role="dialog" aria-modal="true" aria-label="Search"> <button class="m-icon-button outlined as-close-search js-close-search" aria-label="Close search"> <span class="icon-close" aria-hidden="true"></span> </button> <div class="m-search__content"> <form class="m-search__form"> <div class="pos-relative"> <span class="icon-search m-search-icon" aria-hidden="true"></span> <label for="search-input" class="sr-only"> Type to search </label> <input id="search-input" type="text" class="m-input in-search js-input-search" placeholder="Type to search"> </div> </form> <div class="js-search-results hide"></div> <p class="m-not-found align-center hide js-no-results"> No results for your search, please try with something else. </p> </div> </div> <div class="site-pre-footer"> <div class="container"> <div class="content-wrapper"> <h3 class="title">Manage your unstructured data. Scale to millions of experiments today.</h3> <p class="description">See how leading data scientists manage their data.</p> <div class="button-group"> <a href="/book-a-demo/" target="" class="btn btn__lg btn--white-outline" data-analytics-event="Footer_BookADemo_Clicked">Book A Demo</a> <a href="https://dagshub.com/user/sign_up" target="" class="btn btn__lg btn--primary" data-analytics-event="Footer_StartFree_Clicked">Start Free</a> </div> </div> </div> </div> <div class="site-footer"> <div class="container"> <div class="site-footer__wrap"> <div class="site-footer__logo"> <div class="site-logo"> <a href="https://dagshub.com/" class="custom-logo-link" rel="home" aria-current="page"><img width="143" height="40" src="https://dagshub.com/wp-content/uploads/2024/04/dagshab.svg" class="custom-logo" alt="DagsHub" decoding="async"></a> </div> <div class="site-footer__social"> <!-- <h3 class="wdiget-title">Follow us</h3> --> <ul class="social-list"> <li class="social-list__item"> <a href="https://twitter.com/TheRealDAGsHub" target="_blank" class="social-list__link"><svg class="svg-icon icon-twitter" width="18" height="18" "=""><use xlink:href="/assets/images/icons.svg?ver=1717065551#icon-twitter"></use></svg><span class="screen-reader-text"></span></a> </li> <li class="social-list__item"> <a href="https://www.linkedin.com/company/dagshub" target="_blank" class="social-list__link"><svg class="svg-icon icon-linkedin" width="18" height="18" "=""><use xlink:href="/assets/images/icons.svg?ver=1717065551#icon-linkedin"></use></svg><span class="screen-reader-text"></span></a> </li> <li class="social-list__item"> <a href="https://youtube.com/c/dagshub" target="_blank" class="social-list__link"><svg class="svg-icon icon-youtube" width="18" height="18" "=""><use xlink:href="/assets/images/icons.svg?ver=1717065551#icon-youtube"></use></svg><span class="screen-reader-text"></span></a> </li> <li class="social-list__item"> <a href="https://discord.com/invite/9gU36Y6" target="_blank" class="social-list__link"><svg class="svg-icon icon-discord" width="18" height="18" "=""><use xlink:href="/assets/images/icons.svg?ver=1717065551#icon-discord"></use></svg><span class="screen-reader-text"></span></a> </li> </ul> </div> <img src="https://dagshub.com/wp-content/uploads/2024/04/image-54.png" alt="" class="bottom_logo"> </div> <div class="site-footer__frame"> <div class="site-footer__holder"> <div class="site-footer__nav"> <ul id="menu-pro-footer-menu" class="footer-nav"><li id="menu-item-14" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-14"><a>Resources</a> <ul class="sub-menu"> <li id="menu-item-15" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-15"><a href="https://dagshub.com/docs">Docs</a></li> <li id="menu-item-16" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-16"><a href="https://dagshub.com/blog">Blog</a></li> <li id="menu-item-101" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-101"><a href="/datasets/">Datasets</a></li> <li id="menu-item-1586" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1586"><a href="/glossary/">Glossary</a></li> <li id="menu-item-2247" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2247"><a href="https://dagshub.com/blog/tag/case-study/">Case Studies</a></li> <li id="menu-item-2244" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2244"><a href="https://dagshub.com/blog/tag/tutorials/">Tutorials & Webinars</a></li> </ul> </li> <li id="menu-item-1708" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-1708"><a>Product</a> <ul class="sub-menu"> <li id="menu-item-2076" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2076"><a href="https://dagshub.com/data-engine/">Data Engine</a></li> <li id="menu-item-2250" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2250"><a href="https://dagshub.com/use-cases/llm/">LLMs</a></li> <li id="menu-item-1463" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1463"><a href="https://dagshub.com/product/">Platform</a></li> <li id="menu-item-1711" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1711"><a href="https://dagshub.com/enterprise/">Enterprise</a></li> <li id="menu-item-2464" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2464"><a href="https://dagshub.com/pricing">Pricing</a></li> </ul> </li> <li id="menu-item-2347" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-2347"><a>Company</a> <ul class="sub-menu"> <li id="menu-item-2348" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2348"><a href="https://dagshub.com/about">About</a></li> <li id="menu-item-2349" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2349"><a href="https://dagshub.com/careers">Careers</a></li> <li id="menu-item-2350" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2350"><a href="https://dagshub.com/contact-us/">Contact us</a></li> </ul> </li> <li id="menu-item-18" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-18"><a>Community</a> <ul class="sub-menu"> <li id="menu-item-17" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17"><a href="https://dagshub.com/explore/repos">Explore</a></li> </ul> </li> </ul> </div> <div class="site-footer__info"> </div> </div> </div> <div class="footer_subcscription"> <div class="wpcf7 js" id="wpcf7-f2374-o1" lang="en-US" dir="ltr"> <div class="screen-reader-response"><p role="status" aria-live="polite" aria-atomic="true"></p> <ul></ul></div> <form action="/#wpcf7-f2374-o1" method="post" class="wpcf7-form init" aria-label="Contact form" novalidate="novalidate" data-status="init"> <div style="display: none;"> <input type="hidden" name="_wpcf7" value="2374"> <input type="hidden" name="_wpcf7_version" value="5.8.4"> <input type="hidden" name="_wpcf7_locale" value="en_US"> <input type="hidden" name="_wpcf7_unit_tag" value="wpcf7-f2374-o1"> <input type="hidden" name="_wpcf7_container_post" value="0"> <input type="hidden" name="_wpcf7_posted_data_hash" value=""> <input type="hidden" name="_wpcf7_recaptcha_response" value="03AFcWeA4uj_aRc8aqV6-AMa3S2nwbXoJUrg1L40giuqdchHOq_JcNlanE7TtT7mEAnRdQPseB8ahQoj1M1z7ruAH-lsUT-wOx3SmVYjszVfDoGIs2QlJWN7xgWlQEdD43woDSYmlNLXCC9XsBAMdMRiPtmY6-sjaVVEReUmcys9Sq5_uL0aNXxKkoL3SZvQZTW5sC0JO2eMikeoDobVCGpC3YlJG-nYT3mFaNjCxn7i-p2M_K7cFG9PUYpJNEqO-LOcW906Nf8sb1MKDAGWMhMBapyPxryKux6euldj2DhALMUW7jmNwhpaK9h7QaLgnbYy2JEo4lvcrQWQ7YnFV-DePKnnlYYudX-_wDbOxFf53Jo2SZkfKfFl3bYXDDalTLyp3hkCzI8Z69putSHsAeDDccflIRKq2qSWdGbOB1VdDwFsFz5oLCDU956C52phb_B36_22QdpFW_9qUiEfsFE_dv6cFop-AcEZ0Je2PXXM8iEK888LKoLi6HkH0aD8geB18vSxfJbr8RIZG1XNVpi1PuZxBqa_USXGy4NOWWCfmvfyo5SlZnbgnIiGfoWmFnvq0JZ6SDP0ZWxOgIIXeqDbyQ6uh942-NFho6peSdmLofXeGQDQIttjnDZM7D497GVTXhEpLHjeLIRb-FkyqiFmJM20aNEmi4zqA0r45ogEBcH24XkVWHtzK6b_owMEemE0KAeEkvJVa-32W1606ZooU0cxM3A6oCSNyF56r8XOW4_GsUxB1GXkW9M5Pd0Rktg2dREMTbYoyl9j541U-_skQQqx8JgRI8M8QEouZQwLPGKZkXZpNYWBGauNqyqUS5mu7nM9JP8g4Y-ad1ovzZSPxJplfCZxlJnMNz7GoRhN2ztM5eX1ZZwUxTEpLOHXIPUDL_VXBpisk9M_NeK1mSEmSNVO4gshOPBJs5ZSG2Uoy2sTAywrYyQahV7JIgC_V40RR49t_WyWAsdcjpVftgqyiEf6xZJmWHC8VXMRJMPfQpOkq0U8AZic0QVRfshiMiKpOHM-ZP7ux9kpzDBGZ4drQ2jJj2-rLlgHISsZ6k_wNHam7AZV1bOjbZUVg-nF5gp1IIZoBylMU1sqWhd_H0HdoKyb9QkE1-Vj_pSgGUnR4A-WbCA3xJXUow_zLekDj48e3WLxJVzyuhHCosBx-3WFi113Fu9-DXunhkTIpwv_uMjOF7DAIkbKSARbObhYj1SslmsakCY0fYgePE4DXJlNCTyFOyMneWtA3hENxzkZMb7QujC7z44YdzcHaNeX3ELEIYX2TSW8fqDv0_7eiNH5iC0lqRZ4TulmzeEjlqRW0HiNPn-Gerlw8FJljfGXW5_U0nOcXLb0N0_SREwHXIaOwO-zgVSBpCo_LlV7aMFDTqPFcmFX2B1rBIuHc8HVAmUWgolsEqJGbJUSQnsgGBQKSycBY7cq6cMSkx0F2dyaoP1Fs3ShKgTZ11LmLt2WEdjjaKdDM-bk7KoxmZxAC3D8EgdTibmxEHMhkKYGu0BxNUesCLaY5L_mRB3tXyKFYHxL9U46BslSwiBbYb-gMSQX-t9NQR4OGhv5shptwufrEPu-fOBv1LPXUid9sVDSEdRRNnhaV8BPHo9iHEuqv5NBfCbEID4-AOYrjsNFjv3dOuQPZe6soXmuh-Ic4A21KYNwOBvm0s9B6cbJT3OjVgy0rpdt_yFa5oa8EJNkNWEJzAw8l-SCVSKVp0OK7inEJHA3OMgYv784rZJxbPzvXy1NPyEqOT-T814_VN2pCFoO6NQ4XlHe7AdBn6Z_dTQipze62UHLrTrP3pwy9GWZIp4NeXdnCq4zLNpa339wKBT00WYNbL8e5qAYdm7g6ONP-rybJhtMeEXw5EZgq8ZvqmVgPEWQvZlQQnZbLtH6DpMnUeYGNwt9OS4xM0gMcnRxgLN8bG26-L-HGWcQJAboHP04ZDhOpx3iJfcFoKJy8JjVRDaXDbCaV4aLuS2G5IOPaUp9qYTRZOvtikUru6FVFcMzBHLZPbZg2l-Y1NfoFiuUDDhMuWdrcsUrHpgXva2CospJ2LWpjZnml4cROYxHfJQKNF6BlDAtgwInchv7wQfechNV-gPFKnCuR7raRbLuEGa6hAhx2PxyqSMeEtLyfe7Ur2V-TzMAvmbt7vFADS6brXDsc9OCJTLyV5UMT2EZ46Eqx5fXpXSc8pPgB5ZxL3vMTSQCfqjoUzBc3d_9OkOtrcHB7jc8HWgAE"> </div> <div class="footer-subcription-box"> <h3 class="title">ML Newsletter</h3> <p class="description">Top MLOps articles, case studies, events (and more) in your inbox every month</p> <div class="form-wrap c-form-subscription"> <div class="c-form-primary__field"><span class="wpcf7-form-control-wrap" data-name="your-email"><input size="40" class="wpcf7-form-control wpcf7-email wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-email" autocomplete="email" aria-required="true" aria-invalid="false" placeholder="Email" value="" type="email" name="your-email"></span></div> <input class="wpcf7-form-control wpcf7-submit has-spinner" type="submit" value="Subscribe"><span class="wpcf7-spinner"></span> </div> <div id="customMessage" style="display: none;"> You're subscribed! Check your inbox for exciting updates! </div> </div><div class="wpcf7-response-output" aria-hidden="true"></div> </form> </div> </div> </div> <div class="site-footer__row"> <div class="site-footer__copy">©2024 © Copyright Dagshub 2023</div> </div> </div> <div class="elipse-background"></div> <div class="elipse-background right"></div> </div> <div class="m-alert success subscribe js-alert" data-notification="subscribe"> Great! You've successfully subscribed. <button class="m-alert__close js-notification-close" aria-label="Close"> <span class="icon-close"></span> </button> </div> <div class="m-alert success signup js-alert" data-notification="signup"> Great! Next, complete checkout for full access. <button class="m-alert__close js-notification-close" aria-label="Close"> <span class="icon-close"></span> </button> </div> <div class="m-alert success signin js-alert" data-notification="signin"> Welcome back! You've successfully signed in. <button class="m-alert__close js-notification-close" aria-label="Close"> <span class="icon-close"></span> </button> </div> <div class="m-alert success checkout js-alert" data-notification="checkout"> Success! Your account is fully activated, you now have access to all content. <button class="m-alert__close js-notification-close" aria-label="Close"> <span class="icon-close"></span> </button> </div> <script crossorigin="anonymous" src="https://polyfill.io/v3/polyfill.min.js?features=IntersectionObserver%2CPromise%2CArray.prototype.includes%2CString.prototype.endsWith%2CString.prototype.startsWith%2CObject.assign%2CNodeList.prototype.forEach"></script> <script defer src="/blog/assets/js/manifest.js?v=d16ee3eaf3"></script> <script defer src="/blog/assets/js/vendor/content-api.min.js?v=d16ee3eaf3"></script> <script defer src="/blog/assets/js/vendor.js?v=d16ee3eaf3"></script> <script defer src="/blog/assets/js/app.js?v=d16ee3eaf3"></script> <script defer src="/blog/assets/js/post.js?v=d16ee3eaf3"></script> <!-- script tag --> <!-- prism.js --> <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.21.0/prism.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.21.0/components/prism-bash.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.21.0/components/prism-python.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.21.0/components/prism-r.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.28.0/components/prism-core.min.js" integrity="sha512-9khQRAUBYEJDCDVP2yw3LRUQvjJ0Pjx0EShmaQjcHa6AXiOv6qHQu9lCAIR8O+/D8FtaCoJ2c0Tf9Xo7hYH01Q==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.28.0/plugins/autoloader/prism-autoloader.min.js" integrity="sha512-fTl/qcO1VgvKtOMApX2PdZzkziyr2stM65GYPLGuYMnuMm1z2JLJG6XVU7C/mR+E7xBUqCivykuhlzfqxXBXbg==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> </body> </html>