CINXE.COM
DEV Community
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>DEV Community</title> <meta name="last-updated" content="2024-11-28 11:03:50 UTC"> <meta name="user-signed-in" content="false"> <meta name="head-cached-at" content="1732791830"> <meta name="environment" content="production"> <link rel="stylesheet" href="https://assets.dev.to/assets/minimal-6206ee9219dabd8e1168cebeb1f34c12ab133f7723e45d4b24dd76b43fee1fbc.css" media="all" id="main-minimal-stylesheet" /> <link rel="stylesheet" href="https://assets.dev.to/assets/views-4dd5770daa5d9d443ed73a724fb1913af9b093295bf1a72307f0fb322e5df1d9.css" media="all" id="main-views-stylesheet" /> <link rel="stylesheet" href="https://assets.dev.to/assets/crayons-f94476cf86ce9153627fd53a77e651ec54b82b6be20ddb1bf93e3dd40b81aeab.css" media="all" id="main-crayons-stylesheet" /> <script src="https://assets.dev.to/assets/base-8dcc8a97f0617dfbfe06690e34a9d71cb7dd6554611a24ec3f71fb6b96414828.js" defer="defer"></script> <script src="https://assets.dev.to/assets/application-147cebefc5c4cddde055e8f5eb0055e811469b08405170e2411fbd7944b5ac04.js" defer="defer"></script> <script src="https://assets.dev.to/assets/baseInitializers-bc498cfd7bb7d2a2da59d68d0b2055cc2dd26fee3669ab88edbb396d37bc3369.js" defer="defer"></script> <script src="https://assets.dev.to/assets/baseTracking-b6bf73e5ee66633e151e7d5b7c6bbccedfa4c59e3615be97b98c4c0f543ddae7.js" defer="defer"></script> <meta name="search-script" content="https://assets.dev.to/assets/Search-cc5e8a352578866203771def747f37c3ec6a0869de0458328e0fcba3d5d2fceb.js"> <link rel="canonical" href="https://dev.to/" /> <meta name="description" content="A constructive and inclusive social network for software developers. With you every step of your journey."> <meta name="keywords" content="software development, engineering, rails, javascript, ruby"> <meta property="og:type" content="website" /> <meta property="og:url" content="https://dev.to/" /> <meta property="og:title" content="DEV Community" /> <meta property="og:image" content="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg"> <meta property="og:description" content="A constructive and inclusive social network for software developers. With you every step of your journey." /> <meta property="og:site_name" content="DEV Community" /> <meta name="twitter:site" content="@thepracticaldev"> <meta name="twitter:title" content="DEV Community"> <meta name="twitter:description" content="A constructive and inclusive social network for software developers. With you every step of your journey."> <meta name="twitter:image:src" content="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg"> <meta name="twitter:card" content="summary_large_image"> <link rel="alternate" type="application/rss+xml" title="DEV Community RSS Feed" href="https://dev.to/feed" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover"> <link rel="icon" type="image/x-icon" href="https://media2.dev.to/dynamic/image/width=32,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" /> <link rel="apple-touch-icon" href="https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png"> <link rel="apple-touch-icon" sizes="152x152" href="https://media2.dev.to/dynamic/image/width=152,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png"> <link rel="apple-touch-icon" sizes="180x180" href="https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png"> <link rel="apple-touch-icon" sizes="167x167" href="https://media2.dev.to/dynamic/image/width=167,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png"> <link href="https://media2.dev.to/dynamic/image/width=192,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" rel="icon" sizes="192x192" /> <link href="https://media2.dev.to/dynamic/image/width=128,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" rel="icon" sizes="128x128" /> <meta name="apple-mobile-web-app-title" content="dev.to"> <meta name="application-name" content="dev.to"> <meta name="theme-color" content="#ffffff" media="(prefers-color-scheme: light)"> <meta name="theme-color" content="#000000" media="(prefers-color-scheme: dark)"> <link rel="search" href="https://dev.to/open-search.xml" type="application/opensearchdescription+xml" title="DEV Community" /> <meta property="forem:name" content="DEV Community" /> <meta property="forem:logo" content="https://media2.dev.to/dynamic/image/width=512,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" /> <meta property="forem:domain" content="dev.to" /> </head> <body class="sans-serif-article-body default-header" data-user-status="logged-out" data-community-name="DEV Community" data-subscription-icon="https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png" data-locale="en" data-honeybadger-key="hbp_nqu4Y66HuEKlD6YRGssZuRQnPOjDm50J8Zkr" data-deployed-at="2024-11-27T20:09:47Z" data-latest-commit-id="39401f1330aa77effb25163fd2a840dcd3adb045" data-ga-tracking="UA-71991109-1" data-cookie-banner-user-context="logged_out_only" data-cookie-banner-platform-context="off" data-algolia-id="PRSOBFP46H" data-algolia-search-key="9aa7d31610cba78851c9b1f63776a9dd" data-algolia-display="true" data-ga4-tracking-id="G-TYEM8Y3JN3"> <link rel="stylesheet" href="https://assets.dev.to/assets/minimal-6206ee9219dabd8e1168cebeb1f34c12ab133f7723e45d4b24dd76b43fee1fbc.css" media="all" id="secondary-minimal-stylesheet" /> <link rel="stylesheet" href="https://assets.dev.to/assets/views-4dd5770daa5d9d443ed73a724fb1913af9b093295bf1a72307f0fb322e5df1d9.css" media="all" id="secondary-views-stylesheet" /> <link rel="stylesheet" href="https://assets.dev.to/assets/crayons-f94476cf86ce9153627fd53a77e651ec54b82b6be20ddb1bf93e3dd40b81aeab.css" media="all" id="secondary-crayons-stylesheet" /> <div id="body-styles"> <style> :root { --accent-brand-lighter-rgb: 80, 99, 301; --accent-brand-rgb: 59, 73, 223; --accent-brand-darker-rgb: 47, 58, 178; } </style> </div> <div id="audiocontent" data-podcast=""> </div> <div class="navigation-progress" id="navigation-progress"></div> <header id="topbar" class="crayons-header topbar print-hidden"> <span id="route-change-target" tabindex="-1"></span> <a href="#main-content" class="skip-content-link">Skip to content</a> <div class="crayons-header__container"> <span class="inline-block m:hidden "> <button class="c-btn c-btn--icon-alone js-hamburger-trigger mx-2"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="afpahcsx03wxjpra9ygk2syvl0htdnxm" class="crayons-icon"><title id="afpahcsx03wxjpra9ygk2syvl0htdnxm">Navigation menu</title> <path d="M3 4h18v2H3V4zm0 7h18v2H3v-2zm0 7h18v2H3v-2z"></path> </svg> </button> </span> <a href="/" class="site-logo" aria-label="DEV Community Home"> <img class="site-logo__img" src="https://media2.dev.to/dynamic/image/quality=100/https://dev-to-uploads.s3.amazonaws.com/uploads/logos/resized_logo_UQww2soKuUsjaOGNB38o.png" style="aspect-ratio: 10 / 8" alt="DEV Community"> </a> <div class="crayons-header--search js-search-form" id="header-search"> <form accept-charset="UTF-8" method="get" action="/search" role="search"> <div class="crayons-fields crayons-fields--horizontal"> <div class="crayons-field flex-1 relative"> <input id="search-input" class="crayons-header--search-input crayons-textfield js-search-input" type="text" id="nav-search" name="q" placeholder="Search..." autocomplete="off" /> <button type="submit" aria-label="Search" class="c-btn c-btn--icon-alone absolute inset-px right-auto mt-0 py-0"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a4x02d57nrk98zg4oawdew13qrpc155f" aria-hidden="true" class="crayons-icon"><title id="a4x02d57nrk98zg4oawdew13qrpc155f">Search</title> <path d="M18.031 16.617l4.283 4.282-1.415 1.415-4.282-4.283A8.96 8.96 0 0111 20c-4.968 0-9-4.032-9-9s4.032-9 9-9 9 4.032 9 9a8.96 8.96 0 01-1.969 5.617zm-2.006-.742A6.977 6.977 0 0018 11c0-3.868-3.133-7-7-7-3.868 0-7 3.132-7 7 0 3.867 3.132 7 7 7a6.977 6.977 0 004.875-1.975l.15-.15z"></path> </svg> </button> <a class="crayons-header--search-brand-indicator" href="https://www.algolia.com/developers/?utm_source=devto&utm_medium=referral" target="_blank" rel="noopener noreferrer"> Powered by <svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" width="24" height="24" viewBox="0 0 500 500.34" role="img" aria-labelledby="a9n7iqrnph1doynx042wcmdngsm1em3a" aria-hidden="true" class="crayons-icon"><title id="a9n7iqrnph1doynx042wcmdngsm1em3a">Search</title> <defs></defs><path class="cls-1" d="M250,0C113.38,0,2,110.16,.03,246.32c-2,138.29,110.19,252.87,248.49,253.67,42.71,.25,83.85-10.2,120.38-30.05,3.56-1.93,4.11-6.83,1.08-9.52l-23.39-20.74c-4.75-4.22-11.52-5.41-17.37-2.92-25.5,10.85-53.21,16.39-81.76,16.04-111.75-1.37-202.04-94.35-200.26-206.1,1.76-110.33,92.06-199.55,202.8-199.55h202.83V407.68l-115.08-102.25c-3.72-3.31-9.43-2.66-12.43,1.31-18.47,24.46-48.56,39.67-81.98,37.36-46.36-3.2-83.92-40.52-87.4-86.86-4.15-55.28,39.65-101.58,94.07-101.58,49.21,0,89.74,37.88,93.97,86.01,.38,4.28,2.31,8.28,5.53,11.13l29.97,26.57c3.4,3.01,8.8,1.17,9.63-3.3,2.16-11.55,2.92-23.6,2.07-35.95-4.83-70.39-61.84-127.01-132.26-131.35-80.73-4.98-148.23,58.18-150.37,137.35-2.09,77.15,61.12,143.66,138.28,145.36,32.21,.71,62.07-9.42,86.2-26.97l150.36,133.29c6.45,5.71,16.62,1.14,16.62-7.48V9.49C500,4.25,495.75,0,490.51,0H250Z"></path> </svg> Algolia </a> </div> </div> </form> </div> <div class="flex items-center h-100 ml-auto"> <a class="c-link c-link--icon-alone c-link--block m:hidden mx-1" id="search-link" aria-label="Search" href="/search"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="afmhrrxtkwx6ieposzmmqg5f94r6lq15" class="crayons-icon"><title id="afmhrrxtkwx6ieposzmmqg5f94r6lq15">Search</title> <path d="M18.031 16.617l4.283 4.282-1.415 1.415-4.282-4.283A8.96 8.96 0 0111 20c-4.968 0-9-4.032-9-9s4.032-9 9-9 9 4.032 9 9a8.96 8.96 0 01-1.969 5.617zm-2.006-.742A6.977 6.977 0 0018 11c0-3.868-3.133-7-7-7-3.868 0-7 3.132-7 7 0 3.867 3.132 7 7 7a6.977 6.977 0 004.875-1.975l.15-.15z"></path> </svg> </a> <div class="flex" id="authentication-top-nav-actions"> <span class="hidden m:block"> <a href="/enter" class="c-link c-link--block mr-2 whitespace-nowrap ml-auto" data-no-instant> Log in </a> </span> <a href="/enter?state=new-user" data-tracking-id="ca_top_nav" data-tracking-source="top_navbar" class="c-cta c-cta--branded whitespace-nowrap mr-2" data-no-instant> Create account </a> </div> </div> </div> </header> <div class="hamburger"> <div class="hamburger__content"> <header class="hamburger__content__header"> <h2 class="fs-l fw-bold flex-1 break-word lh-tight">DEV Community</h2> <button class="c-btn c-btn--icon-alone js-hamburger-trigger shrink-0" aria-label="Close"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="at74p543eqcm2gr4hs9lj3ug9nn51x6k" aria-hidden="true" class="crayons-icon c-btn__icon"><title id="at74p543eqcm2gr4hs9lj3ug9nn51x6k">Close</title><path d="M12 10.586l4.95-4.95 1.414 1.414-4.95 4.95 4.95 4.95-1.414 1.414-4.95-4.95-4.95 4.95-1.414-1.414 4.95-4.95-4.95-4.95L7.05 5.636l4.95 4.95z"></path></svg> </button> </header> <div class="p-2 js-navigation-links-container" id="authentication-hamburger-actions"> </div> </div> <div class="hamburger__overlay js-hamburger-trigger"></div> </div> <div id="active-broadcast" class="broadcast-wrapper"></div> <div id="page-content" class="wrapper stories stories-index" data-current-page="stories-index"> <div id="page-content-inner" data-internal-nav="false"> <div id="page-route-change" class="screen-reader-only" aria-live="polite" aria-atomic="true"></div> <script src="https://assets.dev.to/assets/homePage-5643b14dfc436f410e9f6334243ccf9a67528b80fea52142ee2e9b4958f55ad2.js" defer="defer"></script> <div class="crayons-layout crayons-layout--3-cols crayons-layout--3-cols--drop-right-left" id="index-container" data-params="{"sort_by":"hotness_score","sort_direction":"desc"}" data-which="" data-tag="" data-feed="base-feed" data-feed-use-stories-endpoint="false" data-feed-context-type="home" data-feed-category-impression="impression" data-feed-category-click="click" data-feed-category-reaction="reaction" data-feed-category-comment="comment" data-feed-category-extended_pageview="extended_pageview" data-articles-since=""> <div id="sidebar-wrapper-left" class="sidebar-wrapper sidebar-wrapper-left crayons-layout__sidebar-left crayons-layout__content"> <aside class="side-bar" aria-label="Primary sidebar"> <div class="crayons-card crayons-card--secondary p-4"> <h2 class="crayons-subtitle-2 lh-tight mb-4"> DEV Community is a community of 2,467,177 amazing developers </h2> <p class="color-base-70 mb-4"> We're a place where coders share, stay up-to-date and grow their careers. </p> <div> <a href="/enter?state=new-user" data-tracking-id="ca_left_sidebar_home_page" data-tracking-source="left_sidebar" class="c-cta c-cta--branded justify-center w-100 mb-1" aria-label="Create new account">Create account</a> <a href="/enter" class="c-link c-link--block justify-center" aria-label="Log in">Log in</a> </div> </div> <nav class="mb-4 mt-4" data-testid="main-nav" aria-label="DEV Community"> <ul class="default-navigation-links sidebar-navigation-links spec-sidebar-navigation-links"> <li> <a href="/" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 44 44" width="24" height="24"> <g class="nc-icon-wrapper"> <path fill="#A0041E" d="M13.344 18.702h-2a.5.5 0 01-.5-.5v-7a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v7a.5.5 0 01-.5.5z"/> <path fill="#FFE8B6" d="M9 20L22 7l13 13v17H9z"/> <path fill="#FFCC4D" d="M22 20h1v16h-1z"/> <path fill="#66757F" d="M35 21a.997.997 0 01-.707-.293L22 8.414 9.707 20.707a1 1 0 11-1.414-1.414l13-13a.999.999 0 011.414 0l13 13A.999.999 0 0135 21z"/> <path fill="#66757F" d="M22 21a.999.999 0 01-.707-1.707l6.5-6.5a1 1 0 111.414 1.414l-6.5 6.5A.997.997 0 0122 21z"/> <path fill="#C1694F" d="M14 30h4v6h-4z"/> <path fill="#55ACEE" d="M14 21h4v4h-4zm12.5 0h4v4h-4zm0 9h4v4h-4z"/> <path fill="#5C913B" d="M37.5 37.5A1.5 1.5 0 0136 39H8a1.5 1.5 0 010-3h28a1.5 1.5 0 011.5 1.5z"/> </g> </svg> </span> Home </a> </li> <li> <a href="/++" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg version="1.0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 166.000000 102.000000" preserveAspectRatio="xMidYMid meet" fill="#3b49df"> <g transform="translate(0.000000,102.000000) scale(0.100000,-0.100000)" fill="#3b49df" stroke="none"> <path d="M305 953 c-42 -22 -64 -43 -83 -78 -14 -25 -18 -76 -22 -305 -7 -313 -12 -336 -96 -450 -24 -33 -44 -62 -44 -65 0 -3 318 -4 708 -3 l707 3 47 27 c32 20 52 41 67 72 21 43 22 54 19 374 l-3 330 -31 39 c-61 76 -30 73 -669 73 -500 -1 -574 -3 -600 -17z m405 -278 l0 -84 83 -3 82 -3 0 -75 0 -75 -82 -3 -83 -3 0 -84 0 -85 -75 0 -75 0 0 85 0 85 -75 0 c-41 0 -75 3 -75 8 0 4 8 39 18 77 l18 70 57 3 57 3 0 84 0 85 75 0 75 0 0 -85z m578 -2 l3 -82 82 -3 82 -3 0 -75 0 -75 -82 -3 -82 -3 -3 -82 -3 -82 -75 0 -75 0 -3 83 -3 82 -79 0 -80 0 0 80 0 80 80 0 80 0 0 78 c0 43 3 82 7 86 4 4 39 5 78 4 l70 -3 3 -82z"/> </g> </svg> </span> DEV++ </a> </li> <li> <a href="/pod" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 44 44" width="24" height="24"> <g class="nc-icon-wrapper"> <path fill="#292F33" d="M10 19h24v2H10zm15 15c0 2.208-.792 4-3 4-2.209 0-3-1.792-3-4s.791-2 3-2c2.208 0 3-.208 3 2z"/> <path fill="#66757F" d="M22 35c-6.627 0-10 1.343-10 3v2h20v-2c0-1.657-3.373-3-10-3z"/> <path fill="#99AAB5" d="M22 4a9 9 0 00-9 9v7h18v-7a9 9 0 00-9-9z"/> <g fill="#292F33" transform="translate(4 4)"> <circle cx="15.5" cy="2.5" r="1.5"/> <circle cx="20.5" cy="2.5" r="1.5"/> <circle cx="17.5" cy="6.5" r="1.5"/> <circle cx="22.5" cy="6.5" r="1.5"/> <circle cx="12.5" cy="6.5" r="1.5"/> <circle cx="15.5" cy="10.5" r="1.5"/> <circle cx="10.5" cy="10.5" r="1.5"/> <circle cx="20.5" cy="10.5" r="1.5"/> <circle cx="25.5" cy="10.5" r="1.5"/> <circle cx="17.5" cy="14.5" r="1.5"/> <circle cx="22.5" cy="14.5" r="1.5"/> <circle cx="12.5" cy="14.5" r="1.5"/> </g> <path fill="#66757F" d="M13 19.062V21c0 4.971 4.029 9 9 9s9-4.029 9-9v-1.938H13z"/> <path fill="#66757F" d="M34 18a1 1 0 00-1 1v2c0 6.074-4.925 11-11 11s-11-4.926-11-11v-2a1 1 0 00-2 0v2c0 7.18 5.82 13 13 13s13-5.82 13-13v-2a1 1 0 00-1-1z"/> </g> </svg> </span> Podcasts </a> </li> <li> <a href="/videos" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 44 44" width="24" height="24"> <g transform="translate(4 4)"> <path fill="#31373D" d="M34.074 18l-4.832 3H28v-4c0-.088-.02-.169-.026-.256C31.436 15.864 34 12.735 34 9a8 8 0 00-16.001 0c0 1.463.412 2.822 1.099 4H14.92c.047-.328.08-.66.08-1a7 7 0 10-14 0 6.995 6.995 0 004 6.317V29a4 4 0 004 4h15a4 4 0 004-4v-3h1.242l4.832 3H35V18h-.926zM28.727 3.977a5.713 5.713 0 012.984 4.961L28.18 8.35a2.276 2.276 0 00-.583-.982l1.13-3.391zm-.9 6.342l3.552.592a5.713 5.713 0 01-4.214 3.669 3.985 3.985 0 00-1.392-1.148l.625-2.19a2.425 2.425 0 001.429-.923zM26 3.285c.282 0 .557.027.828.067l-1.131 3.392c-.404.054-.772.21-1.081.446L21.42 5.592A5.703 5.703 0 0126 3.285zM20.285 9c0-.563.085-1.106.236-1.62l3.194 1.597-.002.023c0 .657.313 1.245.771 1.662L23.816 13h-1.871a5.665 5.665 0 01-1.66-4zm-9.088-.385A4.64 4.64 0 0112.667 12c0 .344-.043.677-.113 1H10.1c.145-.304.233-.641.233-1a2.32 2.32 0 00-.392-1.292l1.256-2.093zM8 7.333c.519 0 1.01.105 1.476.261L8.22 9.688c-.073-.007-.145-.022-.22-.022a2.32 2.32 0 00-1.292.392L4.615 8.803A4.64 4.64 0 018 7.333zM3.333 12c0-.519.105-1.01.261-1.477l2.095 1.257c-.007.073-.022.144-.022.22 0 .75.36 1.41.91 1.837a3.987 3.987 0 00-1.353 1.895C4.083 14.881 3.333 13.533 3.333 12z"/> <circle fill="#8899A6" cx="24" cy="19" r="2"/> <circle fill="#8899A6" cx="9" cy="19" r="2"/> <path fill="#8899A6" d="M24 27a2 2 0 00-2-2H11a2 2 0 00-2 2v6a2 2 0 002 2h11a2 2 0 002-2v-6z"/> </g> </svg> </span> Videos </a> </li> <li> <a href="/tags" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 44 44" width="24" height="24"> <g class="nc-icon-wrapper"> <path fill="#FFD983" d="M36.017 24.181L21.345 9.746C20.687 9.087 19.823 9 18.96 9H8.883C7.029 9 6 10.029 6 11.883v10.082c0 .861.089 1.723.746 2.38L21.3 39.017a3.287 3.287 0 004.688 0l10.059-10.088c1.31-1.312 1.28-3.438-.03-4.748zm-23.596-8.76a1.497 1.497 0 11-2.118-2.117 1.497 1.497 0 012.118 2.117z"/> <path fill="#D99E82" d="M13.952 11.772a3.66 3.66 0 00-5.179 0 3.663 3.663 0 105.18 5.18 3.664 3.664 0 00-.001-5.18zm-1.53 3.65a1.499 1.499 0 11-2.119-2.12 1.499 1.499 0 012.119 2.12z"/> <path fill="#C1694F" d="M12.507 14.501a1 1 0 11-1.415-1.414l8.485-8.485a1 1 0 111.415 1.414l-8.485 8.485z"/> </g> </svg> </span> Tags </a> </li> <li> <a href="/help" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 44 44" width="24" height="24"> <g class="nc-icon-wrapper"> <path fill="#FFD983" d="M33 15.06c0 6.439-5 7.439-5 13.44 0 3.098-3.123 3.359-5.5 3.359-2.053 0-6.586-.779-6.586-3.361C15.914 22.5 11 21.5 11 15.06c0-6.031 5.285-10.92 11.083-10.92C27.883 4.14 33 9.029 33 15.06z"/> <path fill="#CCD6DD" d="M26.167 36.5c0 .828-2.234 2.5-4.167 2.5-1.933 0-4.167-1.672-4.167-2.5 0-.828 2.233-.5 4.167-.5 1.933 0 4.167-.328 4.167.5z"/> <path fill="#FFCC4D" d="M26.707 14.293a.999.999 0 00-1.414 0L22 17.586l-3.293-3.293a1 1 0 10-1.414 1.414L21 19.414V30a1 1 0 102 0V19.414l3.707-3.707a.999.999 0 000-1.414z"/> <path fill="#99AAB5" d="M28 35a2 2 0 01-2 2h-8a2 2 0 01-2-2v-6h12v6z"/> <path fill="#CCD6DD" d="M15.999 36a1 1 0 01-.163-1.986l12-2a.994.994 0 011.15.822.999.999 0 01-.822 1.15l-12 2a.927.927 0 01-.165.014zm0-4a1 1 0 01-.163-1.986l12-2a.995.995 0 011.15.822.999.999 0 01-.822 1.15l-12 2a.927.927 0 01-.165.014z"/> </g> </svg> </span> DEV Help </a> </li> <li> <a href="https://shop.forem.com/" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#F4900C" d="M11 0C6.582 0 3 3.582 3 8v8h2V8c0-3.313 2.687-6 6-6 3.314 0 6 2.687 6 6v8h2V8c0-4.418-3.582-8-8-8z"/><path fill="#DD2E44" d="M1 8l2 2 2-2 2 2 2-2 2 2 2-2 2 2 2-2 2 2 2-2v23H1z"/><path fill="#FFCC4D" d="M25 5c-4.418 0-8 3.582-8 8v8h2v-8c0-3.314 2.688-6 6-6 3.315 0 6 2.686 6 6v8h2v-8c0-4.418-3.582-8-8-8z"/><path fill="#744EAA" d="M15 13l2 2 2-2 2 2 2-2 2 2 2-2 2 2 2-2 2 2 2-2v23H15z"/></svg> </span> Forem Shop </a> </li> <li> <a href="/advertise" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 44 44" width="24" height="24"> <path fill="#DD2E44" d="M39.885 15.833c0-5.45-4.418-9.868-9.867-9.868-3.308 0-6.227 1.633-8.018 4.129-1.791-2.496-4.71-4.129-8.017-4.129-5.45 0-9.868 4.417-9.868 9.868 0 .772.098 1.52.266 2.241C5.751 26.587 15.216 35.568 22 38.034c6.783-2.466 16.249-11.447 17.617-19.959.17-.721.268-1.469.268-2.242z"/> </svg> </span> Advertise on DEV </a> </li> <li> <a href="/challenges" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFAC33" d="M5.123 5h6C12.227 5 13 4.896 13 6V4c0-1.104-.773-2-1.877-2h-8c-2 0-3.583 2.125-3 5 0 0 1.791 9.375 1.917 9.958C2.373 18.5 4.164 20 6.081 20h6.958c1.105 0-.039-1.896-.039-3v-2c0 1.104-.773 2-1.877 2h-4c-1.104 0-1.833-1.042-2-2S3.539 7.667 3.539 7.667C3.206 5.75 4.018 5 5.123 5zm25.812 0h-6C23.831 5 22 4.896 22 6V4c0-1.104 1.831-2 2.935-2h8c2 0 3.584 2.125 3 5 0 0-1.633 9.419-1.771 10-.354 1.5-2.042 3-4 3h-7.146C21.914 20 22 18.104 22 17v-2c0 1.104 1.831 2 2.935 2h4c1.104 0 1.834-1.042 2-2s1.584-7.333 1.584-7.333C32.851 5.75 32.04 5 30.935 5zM20.832 22c0-6.958-2.709 0-2.709 0s-3-6.958-3 0-3.291 10-3.291 10h12.292c-.001 0-3.292-3.042-3.292-10z"/><path fill="#FFCC4D" d="M29.123 6.577c0 6.775-6.77 18.192-11 18.192-4.231 0-11-11.417-11-18.192 0-5.195 1-6.319 3-6.319 1.374 0 6.025-.027 8-.027l7-.001c2.917-.001 4 .684 4 6.347z"/><path fill="#C1694F" d="M27 33c0 1.104.227 2-.877 2h-16C9.018 35 9 34.104 9 33v-1c0-1.104 1.164-2 2.206-2h13.917c1.042 0 1.877.896 1.877 2v1z"/><path fill="#C1694F" d="M29 34.625c0 .76.165 1.375-1.252 1.375H8.498C7.206 36 7 35.385 7 34.625v-.25C7 33.615 7.738 33 8.498 33h19.25c.759 0 1.252.615 1.252 1.375v.25z"/></svg> </span> DEV Challenges </a> </li> <li> <a href="/showcase" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFAC33" d="M34.347 16.893l-8.899-3.294-3.323-10.891c-.128-.42-.517-.708-.956-.708-.439 0-.828.288-.956.708l-3.322 10.891-8.9 3.294c-.393.146-.653.519-.653.938 0 .418.26.793.653.938l8.895 3.293 3.324 11.223c.126.424.516.715.959.715.442 0 .833-.291.959-.716l3.324-11.223 8.896-3.293c.391-.144.652-.518.652-.937 0-.418-.261-.792-.653-.938z"/><path fill="#FFCC4D" d="M14.347 27.894l-2.314-.856-.9-3.3c-.118-.436-.513-.738-.964-.738-.451 0-.846.302-.965.737l-.9 3.3-2.313.856c-.393.145-.653.52-.653.938 0 .418.26.793.653.938l2.301.853.907 3.622c.112.444.511.756.97.756.459 0 .858-.312.97-.757l.907-3.622 2.301-.853c.393-.144.653-.519.653-.937 0-.418-.26-.793-.653-.937zM10.009 6.231l-2.364-.875-.876-2.365c-.145-.393-.519-.653-.938-.653-.418 0-.792.26-.938.653l-.875 2.365-2.365.875c-.393.146-.653.52-.653.938 0 .418.26.793.653.938l2.365.875.875 2.365c.146.393.52.653.938.653.418 0 .792-.26.938-.653l.875-2.365 2.365-.875c.393-.146.653-.52.653-.938 0-.418-.26-.792-.653-.938z"/></svg> </span> DEV Showcase </a> </li> <li> <a href="/about" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 864 864"> <defs> <style> .cls-2 { clip-path: url(#clippath); } .cls-3 { fill: #fff; } .cls-4 { fill: #0f0f0f; } </style> <clipPath id="clippath"> <rect class="cls-1" width="864" height="864"/> </clipPath> </defs> <g class="cls-2"> <rect x="-3.85" y="-28.35" width="871.71" height="920.7"/> <rect class="cls-3" x="105.43" y="211.09" width="651.13" height="491.58"/> <g> <path class="cls-4" d="M811.52-35.36c-263.17-.01-526.35-.01-789.52,0-32.21,0-60.2,18.9-71.43,48.82-2.14,5.7-3.17,12.16-3.17,18.28-.15,266.9-.13,533.8-.13,800.69,0,30.23,17.2,55.53,45.61,66.98,4.86,1.96,9.8,3.71,14.7,5.56H825.55c10.35-4.91,21.61-8.52,30.85-15,20.83-14.61,31.31-35.48,31.32-61.1,.06-262.5,.05-525,.06-787.51,0-42.82-33.65-76.71-76.26-76.72ZM306.58,506.45c-.79,36.65-35.76,70.78-73.17,72.19-31.04,1.17-62.16,.25-93.25,.21-.87,0-1.74-.47-3.09-.85V282.12c1.75-.3,3.52-.85,5.3-.86,30.14-.05,60.3-.55,90.43,.12,36.94,.82,73.06,35.65,73.8,72.61,1.03,50.8,1.07,101.66-.03,152.46Zm182.9,72.08c-2.86,.14-5.86,.4-8.87,.4-34.55,.03-69.1,.04-103.64,0-19.44-.02-33.95-13.13-35.82-32.43-.51-5.3-.68-10.64-.68-15.97-.04-68.77,.01-137.54-.07-206.31-.01-12.95,1.52-25.52,12.5-33.89,5.49-4.18,12.61-8.57,19.08-8.7,38.9-.8,77.82-.4,117.41-.4v53.47c-22.23,0-44.13-.08-66.03,.04-9.05,.05-21.91-2.92-26.14,1.74-4.84,5.33-2.29,17.62-2.47,26.9-.25,12.78-.06,25.57-.06,39.77h57.77v53.98h-57.09v67.83h94.12v53.57Zm243.21-247.2c-18.03,67.91-35.68,135.93-54.59,203.6-3.31,11.86-10.43,23.59-18.57,32.97-13.96,16.09-37.39,16.28-51.56,.38-8.27-9.27-15.65-20.96-18.91-32.8-22.82-82.77-44.46-165.86-66.44-248.87-.39-1.46-.25-3.07-.42-5.38,18.47,0,36.65-.21,54.81,.31,1.95,.06,4.81,4.07,5.51,6.71,15.81,59.77,31.36,119.62,46.99,179.44,1.06,4.06,2.3,8.08,5.06,11.86,17.18-66.02,34.35-132.03,51.54-198.07h59.54c-4.4,16.96-8.58,33.43-12.94,49.86Z"/> <path class="cls-4" d="M190.38,525.05v-189.03c13.36,0,26.62-1.48,39.39,.39,14.83,2.16,23.31,13.98,23.47,30.76,.41,42.02,.5,84.05-.04,126.07-.25,19.16-10.84,29.89-30.15,31.65-10.51,.96-21.18,.17-32.67,.17Z"/> </g> </g> </svg> </span> About </a> </li> <li> <a href="/contact" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 44 44" width="24" height="24"> <g class="nc-icon-wrapper"> <path fill="#FFAC33" d="M38.724 33.656c-1.239-.01-1.241 1.205-1.241 1.205H22.5c-5.246 0-9.5-4.254-9.5-9.5s4.254-9.5 9.5-9.5 9.5 4.254 9.5 9.5c0 3.062-1.6 5.897-3.852 7.633h5.434C35.022 30.849 36 28.139 36 25.361c0-7.456-6.045-13.5-13.5-13.5-7.456 0-13.5 6.044-13.5 13.5 0 7.455 6.044 13.5 13.5 13.5h14.982s-.003 1.127 1.241 1.139c1.238.012 1.228-1.245 1.228-1.245l.014-3.821s.001-1.267-1.241-1.278zM9 18.26a16.047 16.047 0 014-4.739V13c0-5 5-7 5-8s-1-1-1-1H5C4 4 4 5 4 5c0 1 5 3.333 5 7.69v5.57z"/> <path fill="#BE1931" d="M17.091 33.166a9.487 9.487 0 01-4.045-8.72l-3.977-.461c-.046.452-.069.911-.069 1.376 0 4.573 2.28 8.608 5.76 11.051l2.331-3.246z"/> <path fill="#BE1931" d="M10 29.924s-5.188-.812-5 1 5-1 5-1zm0 .312s-4.125 2.688-2.938 3.75S10 30.236 10 30.236z"/> </g> </svg> </span> Contact </a> </li> <li> <a href="/free-postgres-database-tier" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg xmlns="http://www.w3.org/2000/svg" height="64" viewBox="0 0 25.6 25.6" width="64"><style><![CDATA[.B{stroke-linecap:round}.C{stroke-linejoin:round}.D{stroke-linejoin:miter}.E{stroke-width:.716}]]></style><g fill="none" stroke="#fff"><path d="M18.983 18.636c.163-1.357.114-1.555 1.124-1.336l.257.023c.777.035 1.793-.125 2.4-.402 1.285-.596 2.047-1.592.78-1.33-2.89.596-3.1-.383-3.1-.383 3.053-4.53 4.33-10.28 3.227-11.687-3.004-3.84-8.205-2.024-8.292-1.976l-.028.005c-.57-.12-1.2-.19-1.93-.2-1.308-.02-2.3.343-3.054.914 0 0-9.277-3.822-8.846 4.807.092 1.836 2.63 13.9 5.66 10.25C8.29 15.987 9.36 14.86 9.36 14.86c.53.353 1.167.533 1.834.468l.052-.044a2.01 2.01 0 0 0 .021.518c-.78.872-.55 1.025-2.11 1.346-1.578.325-.65.904-.046 1.056.734.184 2.432.444 3.58-1.162l-.046.183c.306.245.285 1.76.33 2.842s.116 2.093.337 2.688.48 2.13 2.53 1.7c1.713-.367 3.023-.896 3.143-5.81" fill="#000" stroke="#000" stroke-linecap="butt" stroke-width="2.149" class="D"/><path d="M23.535 15.6c-2.89.596-3.1-.383-3.1-.383 3.053-4.53 4.33-10.28 3.228-11.687-3.004-3.84-8.205-2.023-8.292-1.976l-.028.005a10.31 10.31 0 0 0-1.929-.201c-1.308-.02-2.3.343-3.054.914 0 0-9.278-3.822-8.846 4.807.092 1.836 2.63 13.9 5.66 10.25C8.29 15.987 9.36 14.86 9.36 14.86c.53.353 1.167.533 1.834.468l.052-.044a2.02 2.02 0 0 0 .021.518c-.78.872-.55 1.025-2.11 1.346-1.578.325-.65.904-.046 1.056.734.184 2.432.444 3.58-1.162l-.046.183c.306.245.52 1.593.484 2.815s-.06 2.06.18 2.716.48 2.13 2.53 1.7c1.713-.367 2.6-1.32 2.725-2.906.088-1.128.286-.962.3-1.97l.16-.478c.183-1.53.03-2.023 1.085-1.793l.257.023c.777.035 1.794-.125 2.39-.402 1.285-.596 2.047-1.592.78-1.33z" fill="#336791" stroke="none"/><g class="E"><g class="B"><path d="M12.814 16.467c-.08 2.846.02 5.712.298 6.4s.875 2.05 2.926 1.612c1.713-.367 2.337-1.078 2.607-2.647l.633-5.017M10.356 2.2S1.072-1.596 1.504 7.033c.092 1.836 2.63 13.9 5.66 10.25C8.27 15.95 9.27 14.907 9.27 14.907m6.1-13.4c-.32.1 5.164-2.005 8.282 1.978 1.1 1.407-.175 7.157-3.228 11.687" class="C"/><path d="M20.425 15.17s.2.98 3.1.382c1.267-.262.504.734-.78 1.33-1.054.49-3.418.615-3.457-.06-.1-1.745 1.244-1.215 1.147-1.652-.088-.394-.69-.78-1.086-1.744-.347-.84-4.76-7.29 1.224-6.333.22-.045-1.56-5.7-7.16-5.782S7.99 8.196 7.99 8.196" stroke-linejoin="bevel"/></g><g class="C"><path d="M11.247 15.768c-.78.872-.55 1.025-2.11 1.346-1.578.325-.65.904-.046 1.056.734.184 2.432.444 3.58-1.163.35-.49-.002-1.27-.482-1.468-.232-.096-.542-.216-.94.23z"/><path d="M11.196 15.753c-.08-.513.168-1.122.433-1.836.398-1.07 1.316-2.14.582-5.537-.547-2.53-4.22-.527-4.22-.184s.166 1.74-.06 3.365c-.297 2.122 1.35 3.916 3.246 3.733" class="B"/></g></g><g fill="#fff" class="D"><path d="M10.322 8.145c-.017.117.215.43.516.472s.558-.202.575-.32-.215-.246-.516-.288-.56.02-.575.136z" stroke-width=".239"/><path d="M19.486 7.906c.016.117-.215.43-.516.472s-.56-.202-.575-.32.215-.246.516-.288.56.02.575.136z" stroke-width=".119"/></g><path d="M20.562 7.095c.05.92-.198 1.545-.23 2.524-.046 1.422.678 3.05-.413 4.68" class="B C E"/></g></svg> </span> Free Postgres Database </a> </li> <li> <a href="/guides" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 47.5 47.5" style="enable-background:new 0 0 47.5 47.5;" id="svg2" xml:space="preserve"><defs id="defs6"><clipPath id="clipPath18"><path d="M 0,38 38,38 38,0 0,0 0,38 z" id="path20"/></clipPath></defs><g transform="matrix(1.25,0,0,-1.25,0,47.5)" id="g12"><g id="g14"><g clip-path="url(#clipPath18)" id="g16"><g transform="translate(33,30)" id="g22"><path d="m 0,0 -28,0 c -2.209,0 -4,-1.791 -4,-4 l 0,-15 c 0,-2.209 1.791,-4 4,-4 l 11.416,0 c 0.52,-0.596 1.477,-1 2.584,-1 1.107,0 2.064,0.404 2.584,1 L 0,-23 c 2.209,0 4,1.791 4,4 L 4,-4 C 4,-1.791 2.209,0 0,0" id="path24" style="fill:#226699;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g><g transform="translate(21,10)" id="g26"><path d="m 0,0 c 0,-1.104 -0.896,-2 -2,-2 -1.104,0 -2,0.896 -2,2 l 0,18 c 0,1.104 0.896,2 2,2 1.104,0 2,-0.896 2,-2 L 0,0 z" id="path28" style="fill:#292f33;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g><g transform="translate(19,11)" id="g30"><path d="m 0,0 c 0,-1.104 -0.896,-2 -2,-2 l -12,0 c -1.104,0 -2,0.896 -2,2 l 0,18 c 0,1.104 0.896,2 2,2 l 12,0 c 1.104,0 2,-0.896 2,-2 L 0,0 z" id="path32" style="fill:#99aab5;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g><g transform="translate(19,11)" id="g34"><path d="m 0,0 c -0.999,1.998 -3.657,2 -4,2 -2,0 -5,-2 -8,-2 -1,0 -2,0.896 -2,2 l 0,16 c 0,1.104 1,2 2,2 3.255,0 6,2 8,2 3,0 4,-1.896 4,-3 L 0,0 z" id="path36" style="fill:#e1e8ed;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g><g transform="translate(35,11)" id="g38"><path d="m 0,0 c 0,-1.104 -0.896,-2 -2,-2 l -12,0 c -1.104,0 -2,0.896 -2,2 l 0,18 c 0,1.104 0.896,2 2,2 l 12,0 c 1.104,0 2,-0.896 2,-2 L 0,0 z" id="path40" style="fill:#99aab5;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g><g transform="translate(19,11)" id="g42"><path d="m 0,0 c 0.999,1.998 3.657,2 4,2 2,0 5,-2 8,-2 1,0 2,0.896 2,2 l 0,16 c 0,1.104 -1,2 -2,2 C 8.744,20 6,22 4,22 1,22 0,20.104 0,19 L 0,0 z" id="path44" style="fill:#ccd6dd;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g></g></g></g></svg> </span> Guides </a> </li> <li> <a href="/software-comparisons" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 45 45" style="enable-background:new 0 0 45 45;" xml:space="preserve" version="1.1" id="svg2"><metadata id="metadata8"><rdf:RDF><cc:Work rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/></cc:Work></rdf:RDF></metadata><defs id="defs6"><clipPath id="clipPath16" clipPathUnits="userSpaceOnUse"><path id="path18" d="M 0,36 36,36 36,0 0,0 0,36 Z"/></clipPath></defs><g transform="matrix(1.25,0,0,-1.25,0,45)" id="g10"><g id="g12"><g clip-path="url(#clipPath16)" id="g14"><g transform="translate(2,20)" id="g20"><path id="path22" style="fill:#ffcc4d;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c 0,-8.837 7.164,-16 16,-16 8.837,0 16,7.163 16,16 C 32,8.836 24.837,16 16,16 7.164,16 0,8.836 0,0"/></g><g transform="translate(15.4063,25.5)" id="g24"><path id="path26" style="fill:#664500;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c 0,-1.381 -0.896,-2.5 -2,-2.5 -1.104,0 -2,1.119 -2,2.5 0,1.38 0.896,2.5 2,2.5 1.104,0 2,-1.12 2,-2.5"/></g><g transform="translate(26,24.5)" id="g28"><path id="path30" style="fill:#664500;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c 0,-1.381 -0.895,-2.5 -2,-2.5 -1.104,0 -2,1.119 -2,2.5 0,1.38 0.896,2.5 2,2.5 1.105,0 2,-1.12 2,-2.5"/></g><g transform="translate(9.6709,29.667)" id="g32"><path id="path34" style="fill:#664500;fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 0,0 C -0.164,0.087 -0.303,0.223 -0.391,0.398 -0.607,0.827 -0.431,1.325 0.002,1.511 4.268,3.341 7.701,1.554 7.845,1.477 8.278,1.246 8.453,0.729 8.236,0.323 8.02,-0.082 7.496,-0.223 7.063,0.005 6.94,0.069 4.231,1.437 0.785,-0.042 0.528,-0.151 0.238,-0.127 0,0"/></g><g transform="translate(14.7427,16.4277)" id="g36"><path id="path38" style="fill:#664500;fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 0,0 C -0.136,0.127 -0.236,0.293 -0.276,0.486 -0.375,0.955 -0.078,1.392 0.389,1.46 4.981,2.138 7.841,-0.469 7.962,-0.58 8.322,-0.914 8.357,-1.457 8.044,-1.795 7.732,-2.131 7.189,-2.133 6.83,-1.801 6.726,-1.709 4.458,0.307 0.748,-0.24 0.471,-0.281 0.197,-0.184 0,0"/></g><g transform="translate(20.4307,25.917)" id="g40"><path id="path42" style="fill:#664500;fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 0,0 C -0.156,0.098 -0.286,0.243 -0.362,0.424 -0.549,0.866 -0.339,1.352 0.105,1.508 4.486,3.044 7.79,1.028 7.929,0.941 8.344,0.681 8.483,0.154 8.24,-0.237 7.998,-0.627 7.464,-0.732 7.049,-0.475 6.929,-0.402 4.321,1.146 0.782,-0.095 0.518,-0.187 0.23,-0.143 0,0"/></g><g transform="translate(17.2764,0.8682)" id="g44"><path id="path46" style="fill:#f4900c;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c 0,0 1.265,0.411 1.429,1.352 0.173,0.971 -0.624,1.167 -0.624,1.167 0,0 1.041,0.208 1.172,1.376 0.123,1.1 -0.862,1.363 -0.862,1.363 0,0 0.97,0.4 1.016,1.539 0.038,0.959 -0.995,1.428 -0.995,1.428 0,0 5.038,1.22 5.555,1.34 0.516,0.121 1.321,0.616 1.07,1.695 -0.249,1.08 -1.204,1.118 -1.698,1.003 -0.494,-0.116 -6.744,-1.567 -8.9,-2.069 -0.23,-0.053 -1.308,-0.302 -1.439,-0.334 -0.54,-0.127 -0.785,0.111 -0.405,0.512 0.509,0.536 0.833,1.129 0.947,2.113 0.119,1.036 -0.232,2.314 -0.433,2.809 -0.374,0.921 -1.005,1.649 -1.734,1.899 -1.138,0.39 -1.946,-0.321 -1.542,-1.561 0.604,-1.855 0.209,-3.375 -0.833,-4.293 -2.449,-2.157 -3.589,-3.695 -2.83,-6.973 0.827,-3.575 4.377,-5.876 7.952,-5.048 C -2.965,-0.64 0,0 0,0"/></g></g></g></g></svg> </span> Software comparisons </a> </li> </ul> </nav> <nav class="mb-4" data-testid="other-nav" aria-labelledby="other-nav-heading-sidebar"> <h2 id="other-nav-heading-sidebar" class="crayons-subtitle-3 py-2 pl-3"> Other </h2> <ul class="other-navigation-links sidebar-navigation-links spec-sidebar-navigation-links"> <li> <a href="/code-of-conduct" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 44 44" width="24" height="24"> <g class="nc-icon-wrapper"> <path fill="#FFDB5E" d="M38.956 21.916c0-.503-.12-.975-.321-1.404-1.341-4.326-7.619-4.01-16.549-4.221-1.493-.035-.639-1.798-.115-5.668.341-2.517-1.282-6.382-4.01-6.382-4.498 0-.171 3.548-4.148 12.322-2.125 4.688-6.875 2.062-6.875 6.771v10.719c0 1.833.18 3.595 2.758 3.885 2.499.281 1.937 2.062 5.542 2.062h18.044a3.337 3.337 0 003.333-3.334c0-.762-.267-1.456-.698-2.018 1.02-.571 1.72-1.649 1.72-2.899 0-.76-.266-1.454-.696-2.015 1.023-.57 1.725-1.649 1.725-2.901 0-.909-.368-1.733-.961-2.336a3.311 3.311 0 001.251-2.581z"/> <path fill="#EE9547" d="M27.02 25.249h8.604c1.17 0 2.268-.626 2.866-1.633a.876.876 0 00-1.506-.892 1.588 1.588 0 01-1.361.775h-8.81c-.873 0-1.583-.71-1.583-1.583s.71-1.583 1.583-1.583H32.7a.875.875 0 000-1.75h-5.888a3.337 3.337 0 00-3.333 3.333c0 1.025.475 1.932 1.205 2.544a3.32 3.32 0 00-.998 2.373c0 1.028.478 1.938 1.212 2.549a3.318 3.318 0 00.419 5.08 3.305 3.305 0 00-.852 2.204 3.337 3.337 0 003.333 3.333h5.484a3.35 3.35 0 002.867-1.632.875.875 0 00-1.504-.894 1.594 1.594 0 01-1.363.776h-5.484c-.873 0-1.583-.71-1.583-1.583s.71-1.583 1.583-1.583h6.506a3.35 3.35 0 002.867-1.633.875.875 0 10-1.504-.894 1.572 1.572 0 01-1.363.777h-7.063a1.585 1.585 0 010-3.167h8.091a3.35 3.35 0 002.867-1.632.875.875 0 00-1.504-.894 1.573 1.573 0 01-1.363.776H27.02a1.585 1.585 0 010-3.167z"/> </g> </svg> </span> Code of Conduct </a> </li> <li> <a href="/privacy" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 44 44" width="24" height="24"> <g transform="translate(4 4)"> <circle fill="#FFCC4D" cx="18" cy="18" r="18"/> <path fill="#664500" d="M27.335 23.629a.501.501 0 00-.635-.029c-.039.029-3.922 2.9-8.7 2.9-4.766 0-8.662-2.871-8.7-2.9a.5.5 0 10-.729.657C8.7 24.472 11.788 29.5 18 29.5s9.301-5.028 9.429-5.243a.499.499 0 00-.094-.628z"/> <path fill="#65471B" d="M18 26.591c-.148 0-.291-.011-.438-.016v4.516h.875v-4.517c-.145.005-.289.017-.437.017z"/> <path fill="#FFF" d="M22 26c.016-.004-1.45.378-2.446.486-.366.042-.737.076-1.117.089v4.517H20c1.1 0 2-.9 2-2V26zm-8 0c-.016-.004 1.45.378 2.446.486.366.042.737.076 1.117.089v4.517H16c-1.1 0-2-.9-2-2V26z"/> <path fill="#65471B" d="M27.335 23.629a.501.501 0 00-.635-.029c-.03.022-2.259 1.668-5.411 2.47-.443.113-1.864.43-3.286.431-1.424 0-2.849-.318-3.292-.431-3.152-.802-5.381-2.448-5.411-2.47a.501.501 0 00-.729.657c.097.162 1.885 3.067 5.429 4.481v-1.829c-.016-.004 1.45.378 2.446.486.366.042.737.076 1.117.089.146.005.289.016.437.016.148 0 .291-.011.438-.016.38-.013.751-.046 1.117-.089.996-.108 2.462-.49 2.446-.486v1.829c3.544-1.414 5.332-4.319 5.429-4.481a.5.5 0 00-.095-.628zm-.711-9.605c0 1.714-.938 3.104-2.096 3.104-1.157 0-2.096-1.39-2.096-3.104s.938-3.104 2.096-3.104c1.158 0 2.096 1.39 2.096 3.104zm-17.167 0c0 1.714.938 3.104 2.096 3.104 1.157 0 2.096-1.39 2.096-3.104s-.938-3.104-2.096-3.104c-1.158 0-2.096 1.39-2.096 3.104z"/> <path fill="#292F33" d="M34.808 9.627c-.171-.166-1.267.274-2.376-.291-2.288-1.166-8.07-2.291-11.834.376-.403.285-2.087.333-2.558.313-.471.021-2.155-.027-2.558-.313-3.763-2.667-9.545-1.542-11.833-.376-1.109.565-2.205.125-2.376.291-.247.239-.247 1.196.001 1.436.246.239 1.477.515 1.722 1.232.247.718.249 4.958 2.213 6.424 1.839 1.372 6.129 1.785 8.848.238 2.372-1.349 2.289-4.189 2.724-5.881.155-.603.592-.907 1.26-.907s1.105.304 1.26.907c.435 1.691.351 4.532 2.724 5.881 2.719 1.546 7.009 1.133 8.847-.238 1.965-1.465 1.967-5.706 2.213-6.424.245-.717 1.476-.994 1.722-1.232.248-.24.249-1.197.001-1.436zm-20.194 3.65c-.077 1.105-.274 3.227-1.597 3.98-.811.462-1.868.743-2.974.743h-.001c-1.225 0-2.923-.347-3.587-.842-.83-.619-1.146-3.167-1.265-4.12-.076-.607-.28-2.09.388-2.318 1.06-.361 2.539-.643 4.052-.643.693 0 3.021.043 4.155.741 1.005.617.872 1.851.829 2.459zm16.278-.253c-.119.954-.435 3.515-1.265 4.134-.664.495-2.362.842-3.587.842h-.001c-1.107 0-2.163-.281-2.975-.743-1.323-.752-1.52-2.861-1.597-3.966-.042-.608-.176-1.851.829-2.468 1.135-.698 3.462-.746 4.155-.746 1.513 0 2.991.277 4.052.638.668.228.465 1.702.389 2.309z"/> </g> </svg> </span> Privacy Policy </a> </li> <li> <a href="/terms" class="sidebar-navigation-link c-link c-link--block c-link--icon-left"> <span class="c-link__icon"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 44 44" width="24" height="24"> <g transform="translate(4 4)"> <ellipse fill="#F5F8FA" cx="8.828" cy="18" rx="7.953" ry="13.281"/> <path fill="#E1E8ED" d="M8.828 32.031C3.948 32.031.125 25.868.125 18S3.948 3.969 8.828 3.969 17.531 10.132 17.531 18s-3.823 14.031-8.703 14.031zm0-26.562C4.856 5.469 1.625 11.09 1.625 18s3.231 12.531 7.203 12.531S16.031 24.91 16.031 18 12.8 5.469 8.828 5.469z"/> <circle fill="#8899A6" cx="6.594" cy="18" r="4.96"/> <circle fill="#292F33" cx="6.594" cy="18" r="3.565"/> <circle fill="#F5F8FA" cx="7.911" cy="15.443" r="1.426"/> <ellipse fill="#F5F8FA" cx="27.234" cy="18" rx="7.953" ry="13.281"/> <path fill="#E1E8ED" d="M27.234 32.031c-4.88 0-8.703-6.163-8.703-14.031s3.823-14.031 8.703-14.031S35.938 10.132 35.938 18s-3.824 14.031-8.704 14.031zm0-26.562c-3.972 0-7.203 5.622-7.203 12.531 0 6.91 3.231 12.531 7.203 12.531S34.438 24.91 34.438 18 31.206 5.469 27.234 5.469z"/> <circle fill="#8899A6" cx="25" cy="18" r="4.96"/> <circle fill="#292F33" cx="25" cy="18" r="3.565"/> <circle fill="#F5F8FA" cx="26.317" cy="15.443" r="1.426"/> </g> </svg> </span> Terms of use </a> </li> </ul> </nav> <div class="flex justify-start mb-4"> <a href="https://twitter.com/thepracticaldev" target="_blank" class="c-link c-link--icon-alone c-link--block " rel="noopener me"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a7y03wzkywh3onjb1ezme7dacht9h21n" class="crayons-icon c-link__icon"><title id="a7y03wzkywh3onjb1ezme7dacht9h21n">Twitter</title> <path d="M14.095479,10.316482L22.286354,1h-1.940718l-7.115352,8.087682L7.551414,1H1l8.589488,12.231093L1,23h1.940717l7.509372-8.542861L16.448587,23H23L14.095479,10.316482z M11.436522,13.338465l-0.871624-1.218704l-6.924311-9.68815h2.981339l5.58978,7.82155l0.867949,1.218704l7.26506,10.166271h-2.981339L11.436522,13.338465z"></path> </svg> </a> <a href="https://facebook.com/thepracticaldev" target="_blank" class="c-link c-link--icon-alone c-link--block " rel="noopener me"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="aajm830tgf1nvmaq8j9i52wpkfphlvow" class="crayons-icon c-link__icon"><title id="aajm830tgf1nvmaq8j9i52wpkfphlvow">Facebook</title> <path d="M15.402 21v-6.966h2.333l.349-2.708h-2.682V9.598c0-.784.218-1.319 1.342-1.319h1.434V5.857a19.188 19.188 0 00-2.09-.107c-2.067 0-3.482 1.262-3.482 3.58v1.996h-2.338v2.708h2.338V21H4a1 1 0 01-1-1V4a1 1 0 011-1h16a1 1 0 011 1v16a1 1 0 01-1 1h-4.598z"></path> </svg> </a> <a href="https://github.com/forem" target="_blank" class="c-link c-link--icon-alone c-link--block " rel="noopener me"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a6ucax2j5vbrf6ywvfn5z7lw6h2cgjgg" class="crayons-icon c-link__icon"><title id="a6ucax2j5vbrf6ywvfn5z7lw6h2cgjgg">Github</title> <path d="M12 2C6.475 2 2 6.475 2 12a9.994 9.994 0 006.838 9.488c.5.087.687-.213.687-.476 0-.237-.013-1.024-.013-1.862-2.512.463-3.162-.612-3.362-1.175-.113-.288-.6-1.175-1.025-1.413-.35-.187-.85-.65-.013-.662.788-.013 1.35.725 1.538 1.025.9 1.512 2.338 1.087 2.912.825.088-.65.35-1.087.638-1.337-2.225-.25-4.55-1.113-4.55-4.938 0-1.088.387-1.987 1.025-2.688-.1-.25-.45-1.275.1-2.65 0 0 .837-.262 2.75 1.026a9.28 9.28 0 012.5-.338c.85 0 1.7.112 2.5.337 1.912-1.3 2.75-1.024 2.75-1.024.55 1.375.2 2.4.1 2.65.637.7 1.025 1.587 1.025 2.687 0 3.838-2.337 4.688-4.562 4.938.362.312.675.912.675 1.85 0 1.337-.013 2.412-.013 2.75 0 .262.188.574.688.474A10.016 10.016 0 0022 12c0-5.525-4.475-10-10-10z"></path> </svg> </a> <a href="https://instagram.com/thepracticaldev" target="_blank" class="c-link c-link--icon-alone c-link--block " rel="noopener me"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ahvzywo5pqvnmnvf2hdecazy4lu7hg6" class="crayons-icon c-link__icon"><title id="ahvzywo5pqvnmnvf2hdecazy4lu7hg6">Instagram</title> <path d="M12 2c2.717 0 3.056.01 4.122.06 1.065.05 1.79.217 2.428.465.66.254 1.216.598 1.772 1.153.509.5.902 1.105 1.153 1.772.247.637.415 1.363.465 2.428.047 1.066.06 1.405.06 4.122 0 2.717-.01 3.056-.06 4.122-.05 1.065-.218 1.79-.465 2.428a4.883 4.883 0 01-1.153 1.772c-.5.508-1.105.902-1.772 1.153-.637.247-1.363.415-2.428.465-1.066.047-1.405.06-4.122.06-2.717 0-3.056-.01-4.122-.06-1.065-.05-1.79-.218-2.428-.465a4.89 4.89 0 01-1.772-1.153 4.904 4.904 0 01-1.153-1.772c-.248-.637-.415-1.363-.465-2.428C2.013 15.056 2 14.717 2 12c0-2.717.01-3.056.06-4.122.05-1.066.217-1.79.465-2.428a4.88 4.88 0 011.153-1.772A4.897 4.897 0 015.45 2.525c.638-.248 1.362-.415 2.428-.465C8.944 2.013 9.283 2 12 2zm0 5a5 5 0 100 10 5 5 0 000-10zm6.5-.25a1.25 1.25 0 10-2.5 0 1.25 1.25 0 002.5 0zM12 9a3 3 0 110 6 3 3 0 010-6z"></path> </svg> </a> <a href="https://twitch.com/thepracticaldev" target="_blank" class="c-link c-link--icon-alone c-link--block " rel="noopener me"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="asr0wtuo1yl08kmoq0uykq22n22y1g13" class="crayons-icon c-link__icon"><title id="asr0wtuo1yl08kmoq0uykq22n22y1g13">Twitch</title> <path d="M4.3 3H21v11.7l-4.7 4.7h-3.9l-2.5 2.4H7v-2.4H3V6.2L4.3 3zM5 17.4h4v2.4h.095l2.5-2.4h3.877L19 13.872V5H5v12.4zM15 8h2v4.7h-2V8zm0 0h2v4.7h-2V8zm-5 0h2v4.7h-2V8z"></path> </svg> </a> <a href="https://fosstodon.org/@thepracticaldev" target="_blank" class="c-link c-link--icon-alone c-link--block " rel="noopener me"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="at7egbw588fh0ja9gotwl3m8npzmbtq7" class="crayons-icon c-link__icon"><title id="at7egbw588fh0ja9gotwl3m8npzmbtq7">Mastodon</title> <path d="M21.258 13.99c-.274 1.41-2.456 2.955-4.962 3.254-1.306.156-2.593.3-3.965.236-2.243-.103-4.014-.535-4.014-.535 0 .218.014.426.04.62.292 2.215 2.196 2.347 4 2.41 1.82.062 3.44-.45 3.44-.45l.076 1.646s-1.274.684-3.542.81c-1.25.068-2.803-.032-4.612-.51-3.923-1.039-4.598-5.22-4.701-9.464-.031-1.26-.012-2.447-.012-3.44 0-4.34 2.843-5.611 2.843-5.611 1.433-.658 3.892-.935 6.45-.956h.062c2.557.02 5.018.298 6.451.956 0 0 2.843 1.272 2.843 5.61 0 0 .036 3.201-.397 5.424zm-2.956-5.087c0-1.074-.273-1.927-.822-2.558-.567-.631-1.308-.955-2.229-.955-1.065 0-1.871.41-2.405 1.228l-.518.87-.519-.87C11.276 5.8 10.47 5.39 9.405 5.39c-.921 0-1.663.324-2.229.955-.549.631-.822 1.484-.822 2.558v5.253h2.081V9.057c0-1.075.452-1.62 1.357-1.62 1 0 1.501.647 1.501 1.927v2.79h2.07v-2.79c0-1.28.5-1.927 1.5-1.927.905 0 1.358.545 1.358 1.62v5.1h2.08V8.902l.001.001z"></path> </svg> </a> </div> <nav class="mb-6" aria-label="Secondary sidebar nav"> <h3 class="crayons-subtitle-3 p-2">Popular Tags</h3> <div id="sidebar-nav-default-tags" class="overflow-y-auto" style="max-height: 42vh"> <div class="sidebar-nav-element" id="default-sidebar-element-webdev"> <a class="c-link c-link--block" href="/t/webdev"> #webdev </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-javascript"> <a class="c-link c-link--block" href="/t/javascript"> #javascript </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-programming"> <a class="c-link c-link--block" href="/t/programming"> #programming </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-beginners"> <a class="c-link c-link--block" href="/t/beginners"> #beginners </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-tutorial"> <a class="c-link c-link--block" href="/t/tutorial"> #tutorial </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-ai"> <a class="c-link c-link--block" href="/t/ai"> #ai </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-react"> <a class="c-link c-link--block" href="/t/react"> #react </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-python"> <a class="c-link c-link--block" href="/t/python"> #python </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-devops"> <a class="c-link c-link--block" href="/t/devops"> #devops </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-aws"> <a class="c-link c-link--block" href="/t/aws"> #aws </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-productivity"> <a class="c-link c-link--block" href="/t/productivity"> #productivity </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-opensource"> <a class="c-link c-link--block" href="/t/opensource"> #opensource </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-career"> <a class="c-link c-link--block" href="/t/career"> #career </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-node"> <a class="c-link c-link--block" href="/t/node"> #node </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-css"> <a class="c-link c-link--block" href="/t/css"> #css </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-java"> <a class="c-link c-link--block" href="/t/java"> #java </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-typescript"> <a class="c-link c-link--block" href="/t/typescript"> #typescript </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-news"> <a class="c-link c-link--block" href="/t/news"> #news </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-learning"> <a class="c-link c-link--block" href="/t/learning"> #learning </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-api"> <a class="c-link c-link--block" href="/t/api"> #api </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-cloud"> <a class="c-link c-link--block" href="/t/cloud"> #cloud </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-database"> <a class="c-link c-link--block" href="/t/database"> #database </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-discuss"> <a class="c-link c-link--block" href="/t/discuss"> #discuss </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-testing"> <a class="c-link c-link--block" href="/t/testing"> #testing </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-machinelearning"> <a class="c-link c-link--block" href="/t/machinelearning"> #machinelearning </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-security"> <a class="c-link c-link--block" href="/t/security"> #security </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-php"> <a class="c-link c-link--block" href="/t/php"> #php </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-development"> <a class="c-link c-link--block" href="/t/development"> #development </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-docker"> <a class="c-link c-link--block" href="/t/docker"> #docker </a> </div> <div class="sidebar-nav-element" id="default-sidebar-element-frontend"> <a class="c-link c-link--block" href="/t/frontend"> #frontend </a> </div> </div> </nav> <div class="js-billboard-container" data-async-url="/billboards/sidebar_left"></div> <div class="js-billboard-container pt-4" data-async-url="/billboards/sidebar_left_2"></div> <footer class="mt-6 fs-s sidebar-footer"> <p> <a class="c-link c-link--branded fw-medium" aria-label="DEV Community Home" href="/">DEV Community</a> A constructive and inclusive social network for software developers. With you every step of your journey. </p> <p class="mt-4">Built on <a class="c-link c-link--branded" target="_blank" rel="noopener" href="https://www.forem.com">Forem</a> — the <a target="_blank" rel="noopener" class="c-link c-link--branded" href="https://dev.to/t/opensource">open source</a> software that powers <a target="_blank" rel="noopener" class="c-link c-link--branded" href="https://dev.to">DEV</a> and other inclusive communities.</p> <p class="mt-4">Made with love and <a target="_blank" rel="noopener" class="c-link c-link--branded" href="https://dev.to/t/rails">Ruby on Rails</a>. DEV Community <span title="copyright">©</span> 2016 - 2024.</p> </footer> </aside> </div> <script src="https://assets.dev.to/assets/billboard-a7ffd2b38d410444a4ef2d42c6ce905699d84b1520aed314b817a767ddc3b362.js" defer="defer"></script> <main class="articles-list crayons-layout__content" id="main-content" data-follow-button-container="true"> <header class="p-2 px-3 m:p-0 m:px-0 m:mb-2 fs-l"> <h1 class="screen-reader-only">Posts</h1> <nav class="-mx-3 m:mx-0 s:flex items-center justify-between" aria-label="View posts by"> <ul class="crayons-navigation crayons-navigation--horizontal"> <li> <a data-text="Relevant" href="/" class="crayons-navigation__item crayons-navigation__item--current" aria-current="page">Relevant</a> </li> <li> <a data-text="Latest" href="/latest" class="crayons-navigation__item "> Latest </a> </li> <li> <a data-text="Top" href="/top/week" class="crayons-navigation__item " > Top </a> </li> </ul> </nav> </header> <div class="crayons-story crayons-story__billboard billboard js-billboard" style="border: 5px solid #1d49f4" data-display-unit data-id="193788" data-category-click="click" data-category-impression="impression" data-context-type="home" data-dismissal-sku="devchallenge_november_27" data-special="nothing" data-article-id="" data-type-of="in_house"> <div class="crayons-story__body"> <div class="crayons-story__top flex"> <div class="crayons-bb__header relative"> <div class="crayons-bb__title">👋 DEV Challenges</div> <button id="sponsorship-dropdown-trigger-193788" aria-controls="sponsorship-dropdown-193788" aria-expanded="false" aria-haspopup="true" class="dropBtn crayons-bb__dropdown crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon" aria-label="Toggle dropdown menu"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="amhzqwuagj4coyv5wlzqmwpwqnp938z0" class="crayons-icon pointer-events-none"><title id="amhzqwuagj4coyv5wlzqmwpwqnp938z0">Dropdown menu</title> <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path> </svg> </button> <div id="sponsorship-dropdown-193788" class="crayons-dropdown sponsorship-dropdown right-0"> <ul class="list-none m-0"> <li> <a class="crayons-link crayons-link--block" href='/billboards'> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="16" height="16" role="img" aria-hidden="true" class="crayons-icon c-btn__icon"> <path d="M12 22C6.477 22 2 17.523 2 12S6.477 2 12 2s10 4.477 10 10-4.477 10-10 10zm0-2a8 8 0 100-16 8 8 0 000 16zM11 7h2v2h-2V7zm0 4h2v6h-2v-6z"></path> </svg> What's a billboard? </a> </li> <li> <a class="crayons-link crayons-link--block" href='/settings/customization#sponsors'> <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" role="img" aria-hidden="true" class="crayons-icon c-btn__icon"> <path d="M3.34 16.9999C2.91727 16.2689 2.58866 15.4874 2.362 14.6739C2.85531 14.423 3.26959 14.0406 3.55903 13.5688C3.84846 13.0971 4.00176 12.5545 4.00197 12.0011C4.00218 11.4476 3.84928 10.9049 3.5602 10.4329C3.27112 9.961 2.85712 9.57821 2.364 9.32694C2.81604 7.69243 3.67673 6.1999 4.865 4.98994C5.32909 5.29167 5.86762 5.45911 6.42098 5.47373C6.97434 5.48834 7.52095 5.34958 8.00033 5.07278C8.47971 4.79598 8.87315 4.39194 9.13713 3.90539C9.4011 3.41883 9.52531 2.86872 9.496 2.31594C11.1381 1.89157 12.8612 1.89226 14.503 2.31795C14.474 2.87071 14.5984 3.42073 14.8626 3.90715C15.1268 4.39357 15.5204 4.79742 15.9998 5.07401C16.4793 5.35059 17.0259 5.48913 17.5793 5.4743C18.1326 5.45946 18.671 5.29183 19.135 4.98994C19.714 5.57994 20.228 6.25095 20.66 6.99995C21.093 7.74895 21.417 8.52995 21.638 9.32595C21.1447 9.57685 20.7304 9.95932 20.441 10.4311C20.1515 10.9028 19.9982 11.4454 19.998 11.9988C19.9978 12.5523 20.1507 13.095 20.4398 13.5669C20.7289 14.0389 21.1429 14.4217 21.636 14.6729C21.184 16.3075 20.3233 17.8 19.135 19.0099C18.6709 18.7082 18.1324 18.5408 17.579 18.5262C17.0257 18.5115 16.479 18.6503 15.9997 18.9271C15.5203 19.2039 15.1268 19.6079 14.8629 20.0945C14.5989 20.5811 14.4747 21.1312 14.504 21.6839C12.8619 22.1083 11.1388 22.1076 9.497 21.6819C9.52605 21.1292 9.4016 20.5792 9.13742 20.0927C8.87324 19.6063 8.47964 19.2025 8.00017 18.9259C7.5207 18.6493 6.97405 18.5108 6.42073 18.5256C5.8674 18.5404 5.32896 18.7081 4.865 19.0099C4.27399 18.4069 3.76159 17.7315 3.34 16.9999ZM9 17.1959C10.0656 17.8106 10.8668 18.797 11.25 19.9659C11.749 20.0129 12.25 20.0139 12.749 19.9669C13.1324 18.7978 13.934 17.8114 15 17.1969C16.0652 16.5806 17.3205 16.3794 18.525 16.6319C18.815 16.2239 19.065 15.7889 19.273 15.3339C18.4524 14.4174 17.9991 13.2302 18 11.9999C18 10.7399 18.47 9.56295 19.273 8.66595C19.0635 8.21109 18.8125 7.77658 18.523 7.36795C17.3193 7.62025 16.0648 7.41942 15 6.80395C13.9344 6.18932 13.1332 5.20293 12.75 4.03394C12.251 3.98694 11.75 3.98594 11.251 4.03294C10.8676 5.20209 10.066 6.1885 9 6.80295C7.93478 7.41926 6.67948 7.62046 5.475 7.36795C5.18556 7.77623 4.93513 8.21081 4.727 8.66595C5.54757 9.5825 6.00088 10.7697 6 11.9999C6 13.2599 5.53 14.4369 4.727 15.3339C4.93647 15.7888 5.18754 16.2233 5.477 16.6319C6.68072 16.3796 7.93521 16.5805 9 17.1959ZM12 14.9999C11.2044 14.9999 10.4413 14.6839 9.87868 14.1213C9.31607 13.5587 9 12.7956 9 11.9999C9 11.2043 9.31607 10.4412 9.87868 9.87862C10.4413 9.31602 11.2044 8.99995 12 8.99995C12.7956 8.99995 13.5587 9.31602 14.1213 9.87862C14.6839 10.4412 15 11.2043 15 11.9999C15 12.7956 14.6839 13.5587 14.1213 14.1213C13.5587 14.6839 12.7956 14.9999 12 14.9999ZM12 12.9999C12.2652 12.9999 12.5196 12.8946 12.7071 12.7071C12.8946 12.5195 13 12.2652 13 11.9999C13 11.7347 12.8946 11.4804 12.7071 11.2928C12.5196 11.1053 12.2652 10.9999 12 10.9999C11.7348 10.9999 11.4804 11.1053 11.2929 11.2928C11.1054 11.4804 11 11.7347 11 11.9999C11 12.2652 11.1054 12.5195 11.2929 12.7071C11.4804 12.8946 11.7348 12.9999 12 12.9999Z" fill="black"></path> </svg> Manage preferences </a> </li> <hr /> <li> <a class="crayons-link crayons-link--block" href="/report-abuse?billboard=193788"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="16" height="16" role="img" aria-hidden="true" class="crayons-icon c-btn__icon"> <path d="M12.382 3a1 1 0 0 1 .894.553L14 5h6a1 1 0 0 1 1 1v11a1 1 0 0 1-1 1h-6.382a1 1 0 0 1-.894-.553L12 16H5v6H3V3h9.382Zm-.618 2H5v9h8.236l1 2H19V7h-6.236l-1-2Z"></path> </svg> Report billboard </a> </li> </ul> </div> </div> <button id="sponsorship-close-trigger-193788" aria-controls="sponsorship-close-193788" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="acrbazg5k7iil5zqdamfpuqqzgepan3m" class="crayons-icon pointer-events-none"><title id="acrbazg5k7iil5zqdamfpuqqzgepan3m">Close</title><path d="M12 10.586l4.95-4.95 1.414 1.414-4.95 4.95 4.95 4.95-1.414 1.414-4.95-4.95-4.95 4.95-1.414-1.414 4.95-4.95-4.95-4.95L7.05 5.636l4.95 4.95z"></path></svg> </button> </div> <div class="crayons-story__indention-billboard"> <div class="text-styles text-styles--billboard"> <p><a href="https://dev.to/devteam/join-us-for-the-devcycle-feature-flag-challenge-1000-in-prizes-1h23?bb=193788"><img src="https://media2.dev.to/dynamic/image/width=775%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhl16q1vibqwfu9d87hwm.png" alt="Participate in the DevCycle Contest" width="3911" height="1641" loading="lazy"></a></p> <h3> <a name="lets-do-it" href="#lets-do-it"> </a> Let's do it!</h3> <div class="ltag__link"> <a href="/devteam?bb=193788" class="ltag__link__link"> <div class="ltag__link__org__pic"> <img src="https://media2.dev.to/dynamic/image/width=775%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F1%2Fd908a186-5651-4a5a-9f76-15200bc6801f.jpg" alt="The DEV Team" width="150" height="150" loading="lazy"> <div class="ltag__link__user__pic"> <img src="https://media2.dev.to/dynamic/image/width=775%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3%2F13d3b32a-d381-4549-b95e-ec665768ce8f.png" alt="" width="150" height="150" loading="lazy"> </div> </div> </a> <a href="/devteam/join-us-for-the-devcycle-feature-flag-challenge-1000-in-prizes-1h23?bb=193788" class="ltag__link__link"> <div class="ltag__link__content"> <h2>Join us for the DevCycle Feature Flag Challenge: $1,000 in Prizes!</h2> <h3>dev.to staff for The DEV Team ・ Nov 27</h3> <div class="ltag__link__taglist"> <span class="ltag__link__tag">#devchallenge</span> <span class="ltag__link__tag">#devcyclechallenge</span> <span class="ltag__link__tag">#webdev</span> <span class="ltag__link__tag">#devops</span> </div> </div> </a> </div> <p>Happy coding ❤️</p> </div> </div> </div> </div> <div class="crayons-story crayons-story--featured" data-feed-content-id="2122568" data-content-user-id="236396"> <a href="/swirl/from-zero-to-app-learning-through-open-source-ai-projects-3dkn" aria-labelledby="article-link-2122568" class="crayons-story__hidden-navigation-link">From Zero to Hero: Learning Through 📖 Open Source AI Projects 💻</a> <div id="featured-story-marker" data-featured-article="articles-2122568"></div> <div class="crayons-article__cover crayons-article__cover__image__feed" style="aspect-ratio: auto 1000 / 420;"> <a href="/swirl/from-zero-to-app-learning-through-open-source-ai-projects-3dkn" title="From Zero to Hero: Learning Through 📖 Open Source AI Projects 💻" aria-label="article" class="crayons-article__cover__image__feed crayons-story__cover__image"> <img src="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2npwz6bbw4ajc9m0apn1.gif" width="1000" height="420" style="background-color:#dddddd;" class="crayons-article__cover__image__feed" alt="Cover image for From Zero to Hero: Learning Through 📖 Open Source AI Projects 💻"> </a> </div> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a class="crayons-logo crayons-logo--l" href="/swirl"> <img alt="SWIRL logo" src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F7463%2F0b752367-361d-4d4b-b1a0-47928f7843e0.png" class="crayons-logo__image" loading="lazy" /> </a> <a href="/srbhr" class="crayons-avatar crayons-avatar--s absolute -right-2 -bottom-2 border-solid border-2 border-base-inverted "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F236396%2F1767c256-4b76-4f40-b668-ccda42509f03.png" alt="srbhr profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/srbhr" class="crayons-story__secondary fw-medium m:hidden"> Saurabh Rai </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2122568" aria-controls="story-author-preview-content-2122568" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Saurabh Rai profile details"> Saurabh Rai <a style="display: inline;" href="/++"><img alt="Subscriber" class="subscription-icon" src="https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png" /></a> </button> <div id="story-author-preview-content-2122568" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/srbhr" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F236396%2F1767c256-4b76-4f40-b668-ccda42509f03.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Saurabh Rai</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":236396,"className":"User","name":"Saurabh Rai"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="236396"></div> </div> </div> </div> <span> <span class="crayons-story__tertiary fw-normal"> for </span><a href="/swirl" class="crayons-story__secondary fw-medium">SWIRL </a> </span> </div> <a href="/swirl/from-zero-to-app-learning-through-open-source-ai-projects-3dkn" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-26T17:41:02Z">Nov 26</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732642862"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/swirl/from-zero-to-app-learning-through-open-source-ai-projects-3dkn" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2npwz6bbw4ajc9m0apn1.gif" id="article-link-2122568"> From Zero to Hero: Learning Through 📖 Open Source AI Projects 💻 </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 131, 53, 0.10); --tag-prefix: #008335; --tag-bg-hover: rgba(0, 131, 53, 0.10); --tag-prefix-hover: #008335; " href="/t/beginners"><span class="crayons-tag__prefix">#</span>beginners</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(23, 253, 26, 0.10); --tag-prefix: #17fd1a; --tag-bg-hover: rgba(23, 253, 26, 0.10); --tag-prefix-hover: #17fd1a; " href="/t/ai"><span class="crayons-tag__prefix">#</span>ai</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(38, 190, 0, 0.10); --tag-prefix: #26BE00; --tag-bg-hover: rgba(38, 190, 0, 0.10); --tag-prefix-hover: #26BE00; " href="/t/opensource"><span class="crayons-tag__prefix">#</span>opensource</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/swirl/from-zero-to-app-learning-through-open-source-ai-projects-3dkn" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2122568" aria-label="Add a comment to post - From Zero to Hero: Learning Through 📖 Open Source AI Projects 💻"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">252<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="/swirl/from-zero-to-app-learning-through-open-source-ai-projects-3dkn#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - From Zero to Hero: Learning Through 📖 Open Source AI Projects 💻"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ac9elnhjgr8lkfbpjhvhvjarck4cxuzd" class="crayons-icon"><title id="ac9elnhjgr8lkfbpjhvhvjarck4cxuzd">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> 23<span class="hidden s:inline"> comments</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 5 min read </small> <button type="button" id="article-save-button-2122568" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2122568" data-article-author-id="236396" aria-label="Save post From Zero to Hero: Learning Through 📖 Open Source AI Projects 💻 to reading list" title="Save post From Zero to Hero: Learning Through 📖 Open Source AI Projects 💻 to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div id="article-index-podcast-div"></div> <div class="substories" id="substories"> <div class="crayons-story crayons-story__billboard billboard js-billboard" style="" data-display-unit data-id="3649" data-category-click="click" data-category-impression="impression" data-context-type="home" data-dismissal-sku="" data-special="nothing" data-article-id="" data-type-of="in_house"> <div class="crayons-story__body"> <div class="crayons-story__top flex"> <div class="crayons-bb__header relative"> <div class="crayons-bb__title">DEV Community</div> <button id="sponsorship-dropdown-trigger-3649" aria-controls="sponsorship-dropdown-3649" aria-expanded="false" aria-haspopup="true" class="dropBtn crayons-bb__dropdown crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon" aria-label="Toggle dropdown menu"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="aeygjtnwfpest06m8k091j0pfg5m0z6l" class="crayons-icon pointer-events-none"><title id="aeygjtnwfpest06m8k091j0pfg5m0z6l">Dropdown menu</title> <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path> </svg> </button> <div id="sponsorship-dropdown-3649" class="crayons-dropdown sponsorship-dropdown right-0"> <ul class="list-none m-0"> <li> <a class="crayons-link crayons-link--block" href='/billboards'> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="16" height="16" role="img" aria-hidden="true" class="crayons-icon c-btn__icon"> <path d="M12 22C6.477 22 2 17.523 2 12S6.477 2 12 2s10 4.477 10 10-4.477 10-10 10zm0-2a8 8 0 100-16 8 8 0 000 16zM11 7h2v2h-2V7zm0 4h2v6h-2v-6z"></path> </svg> What's a billboard? </a> </li> <li> <a class="crayons-link crayons-link--block" href='/settings/customization#sponsors'> <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" role="img" aria-hidden="true" class="crayons-icon c-btn__icon"> <path d="M3.34 16.9999C2.91727 16.2689 2.58866 15.4874 2.362 14.6739C2.85531 14.423 3.26959 14.0406 3.55903 13.5688C3.84846 13.0971 4.00176 12.5545 4.00197 12.0011C4.00218 11.4476 3.84928 10.9049 3.5602 10.4329C3.27112 9.961 2.85712 9.57821 2.364 9.32694C2.81604 7.69243 3.67673 6.1999 4.865 4.98994C5.32909 5.29167 5.86762 5.45911 6.42098 5.47373C6.97434 5.48834 7.52095 5.34958 8.00033 5.07278C8.47971 4.79598 8.87315 4.39194 9.13713 3.90539C9.4011 3.41883 9.52531 2.86872 9.496 2.31594C11.1381 1.89157 12.8612 1.89226 14.503 2.31795C14.474 2.87071 14.5984 3.42073 14.8626 3.90715C15.1268 4.39357 15.5204 4.79742 15.9998 5.07401C16.4793 5.35059 17.0259 5.48913 17.5793 5.4743C18.1326 5.45946 18.671 5.29183 19.135 4.98994C19.714 5.57994 20.228 6.25095 20.66 6.99995C21.093 7.74895 21.417 8.52995 21.638 9.32595C21.1447 9.57685 20.7304 9.95932 20.441 10.4311C20.1515 10.9028 19.9982 11.4454 19.998 11.9988C19.9978 12.5523 20.1507 13.095 20.4398 13.5669C20.7289 14.0389 21.1429 14.4217 21.636 14.6729C21.184 16.3075 20.3233 17.8 19.135 19.0099C18.6709 18.7082 18.1324 18.5408 17.579 18.5262C17.0257 18.5115 16.479 18.6503 15.9997 18.9271C15.5203 19.2039 15.1268 19.6079 14.8629 20.0945C14.5989 20.5811 14.4747 21.1312 14.504 21.6839C12.8619 22.1083 11.1388 22.1076 9.497 21.6819C9.52605 21.1292 9.4016 20.5792 9.13742 20.0927C8.87324 19.6063 8.47964 19.2025 8.00017 18.9259C7.5207 18.6493 6.97405 18.5108 6.42073 18.5256C5.8674 18.5404 5.32896 18.7081 4.865 19.0099C4.27399 18.4069 3.76159 17.7315 3.34 16.9999ZM9 17.1959C10.0656 17.8106 10.8668 18.797 11.25 19.9659C11.749 20.0129 12.25 20.0139 12.749 19.9669C13.1324 18.7978 13.934 17.8114 15 17.1969C16.0652 16.5806 17.3205 16.3794 18.525 16.6319C18.815 16.2239 19.065 15.7889 19.273 15.3339C18.4524 14.4174 17.9991 13.2302 18 11.9999C18 10.7399 18.47 9.56295 19.273 8.66595C19.0635 8.21109 18.8125 7.77658 18.523 7.36795C17.3193 7.62025 16.0648 7.41942 15 6.80395C13.9344 6.18932 13.1332 5.20293 12.75 4.03394C12.251 3.98694 11.75 3.98594 11.251 4.03294C10.8676 5.20209 10.066 6.1885 9 6.80295C7.93478 7.41926 6.67948 7.62046 5.475 7.36795C5.18556 7.77623 4.93513 8.21081 4.727 8.66595C5.54757 9.5825 6.00088 10.7697 6 11.9999C6 13.2599 5.53 14.4369 4.727 15.3339C4.93647 15.7888 5.18754 16.2233 5.477 16.6319C6.68072 16.3796 7.93521 16.5805 9 17.1959ZM12 14.9999C11.2044 14.9999 10.4413 14.6839 9.87868 14.1213C9.31607 13.5587 9 12.7956 9 11.9999C9 11.2043 9.31607 10.4412 9.87868 9.87862C10.4413 9.31602 11.2044 8.99995 12 8.99995C12.7956 8.99995 13.5587 9.31602 14.1213 9.87862C14.6839 10.4412 15 11.2043 15 11.9999C15 12.7956 14.6839 13.5587 14.1213 14.1213C13.5587 14.6839 12.7956 14.9999 12 14.9999ZM12 12.9999C12.2652 12.9999 12.5196 12.8946 12.7071 12.7071C12.8946 12.5195 13 12.2652 13 11.9999C13 11.7347 12.8946 11.4804 12.7071 11.2928C12.5196 11.1053 12.2652 10.9999 12 10.9999C11.7348 10.9999 11.4804 11.1053 11.2929 11.2928C11.1054 11.4804 11 11.7347 11 11.9999C11 12.2652 11.1054 12.5195 11.2929 12.7071C11.4804 12.8946 11.7348 12.9999 12 12.9999Z" fill="black"></path> </svg> Manage preferences </a> </li> <hr /> <li> <a class="crayons-link crayons-link--block" href="/report-abuse?billboard=3649"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="16" height="16" role="img" aria-hidden="true" class="crayons-icon c-btn__icon"> <path d="M12.382 3a1 1 0 0 1 .894.553L14 5h6a1 1 0 0 1 1 1v11a1 1 0 0 1-1 1h-6.382a1 1 0 0 1-.894-.553L12 16H5v6H3V3h9.382Zm-.618 2H5v9h8.236l1 2H19V7h-6.236l-1-2Z"></path> </svg> Report billboard </a> </li> </ul> </div> </div> </div> <div class="crayons-story__indention-billboard"> <div class="text-styles text-styles--billboard"> <p><a href="https://dev.to/enter?state=new-user&bb=3649"><img src="https://media2.dev.to/dynamic/image/width=775%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwixrm7ejmrua4su7agha.jpg" alt="DEV" width="3000" height="1575" loading="lazy"></a></p> <h3> <a name="need-to-stay-uptodate-with-the-most-relevant-trends-in-software-such-as-generate-ai-cloud-computing-and-all-things-frontend" href="#need-to-stay-uptodate-with-the-most-relevant-trends-in-software-such-as-generate-ai-cloud-computing-and-all-things-frontend"> </a> Need to stay up-to-date with the most relevant trends in software, such as generate AI, cloud computing, and all things frontend?</h3> <p>Look no further.</p> <p>You can do so much more once you <strong>create your account</strong>. Follow the devs and topics you care about, and keep up-to-date.</p> <p><a href="https://dev.to/enter?state=new-user&bb=3649" class="ltag_cta ltag_cta--branded" role="button">Start now — it only takes two minutes</a></p> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2077134" data-content-user-id="950976"> <a href="/encore/10-best-developer-tools-to-make-backend-development-easier-12me" aria-labelledby="article-link-2077134" class="crayons-story__hidden-navigation-link">10 Best Developer Tools to Make Backend Development Easier 👩💻 🚀</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a class="crayons-logo crayons-logo--l" href="/encore"> <img alt="Encore logo" src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F4094%2F34ea76ef-564a-401f-85bd-4ae600dc8955.png" class="crayons-logo__image" loading="lazy" /> </a> <a href="/anmolbaranwal" class="crayons-avatar crayons-avatar--s absolute -right-2 -bottom-2 border-solid border-2 border-base-inverted "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F950976%2F69363f37-b7c5-4f1e-a2fe-29b4e4e33e92.png" alt="anmolbaranwal profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/anmolbaranwal" class="crayons-story__secondary fw-medium m:hidden"> Anmol Baranwal </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2077134" aria-controls="story-author-preview-content-2077134" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Anmol Baranwal profile details"> Anmol Baranwal <a style="display: inline;" href="/++"><img alt="Subscriber" class="subscription-icon" src="https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png" /></a> </button> <div id="story-author-preview-content-2077134" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/anmolbaranwal" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F950976%2F69363f37-b7c5-4f1e-a2fe-29b4e4e33e92.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Anmol Baranwal</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":950976,"className":"User","name":"Anmol Baranwal"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="950976"></div> </div> </div> </div> <span> <span class="crayons-story__tertiary fw-normal"> for </span><a href="/encore" class="crayons-story__secondary fw-medium">Encore</a> </span> </div> <a href="/encore/10-best-developer-tools-to-make-backend-development-easier-12me" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:11:52Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732788712"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/encore/10-best-developer-tools-to-make-backend-development-easier-12me" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcksz9gd6bxrl073ju7z2.png" id="article-link-2077134"> 10 Best Developer Tools to Make Backend Development Easier 👩💻 🚀 </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(38, 190, 0, 0.10); --tag-prefix: #26BE00; --tag-bg-hover: rgba(38, 190, 0, 0.10); --tag-prefix-hover: #26BE00; " href="/t/opensource"><span class="crayons-tag__prefix">#</span>opensource</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(35, 74, 132, 0.10); --tag-prefix: #234A84; --tag-bg-hover: rgba(35, 74, 132, 0.10); --tag-prefix-hover: #234A84; " href="/t/typescript"><span class="crayons-tag__prefix">#</span>typescript</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/backend"><span class="crayons-tag__prefix">#</span>backend</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/encore/10-best-developer-tools-to-make-backend-development-easier-12me" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2077134" aria-label="Add a comment to post - 10 Best Developer Tools to Make Backend Development Easier 👩💻 🚀"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">40<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="/encore/10-best-developer-tools-to-make-backend-development-easier-12me#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - 10 Best Developer Tools to Make Backend Development Easier 👩💻 🚀"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ai49zz0c1i49zlzs9l8almyjf212ktgo" class="crayons-icon"><title id="ai49zz0c1i49zlzs9l8almyjf212ktgo">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> 1<span class="hidden s:inline"> comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 15 min read </small> <button type="button" id="article-save-button-2077134" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2077134" data-article-author-id="950976" aria-label="Save post 10 Best Developer Tools to Make Backend Development Easier 👩💻 🚀 to reading list" title="Save post 10 Best Developer Tools to Make Backend Development Easier 👩💻 🚀 to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2123800" data-content-user-id="941720"> <a href="/dumebii/the-use-of-ai-in-content-generation-j0l" aria-labelledby="article-link-2123800" class="crayons-story__hidden-navigation-link">The Use Of AI In Content Generation</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/dumebii" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F941720%2Ff316bf93-ef0b-4bc5-aee2-5e062255d5f0.jpg" alt="dumebii profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/dumebii" class="crayons-story__secondary fw-medium m:hidden"> Dumebi Okolo </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2123800" aria-controls="story-author-preview-content-2123800" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Dumebi Okolo profile details"> Dumebi Okolo </button> <div id="story-author-preview-content-2123800" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/dumebii" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F941720%2Ff316bf93-ef0b-4bc5-aee2-5e062255d5f0.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Dumebi Okolo</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":941720,"className":"User","name":"Dumebi Okolo"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="941720"></div> </div> </div> </div> </div> <a href="/dumebii/the-use-of-ai-in-content-generation-j0l" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-27T11:10:59Z">Nov 27</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732705859"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/dumebii/the-use-of-ai-in-content-generation-j0l" data-preload-image="" id="article-link-2123800"> The Use Of AI In Content Generation </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--filled " style=" --tag-bg: rgba(113, 234, 139, 0.10); --tag-prefix: #71EA8B; --tag-bg-hover: rgba(113, 234, 139, 0.10); --tag-prefix-hover: #71EA8B; " href="/t/discuss"><span class="crayons-tag__prefix">#</span>discuss</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(118, 118, 118, 0.10); --tag-prefix: #767676; --tag-bg-hover: rgba(118, 118, 118, 0.10); --tag-prefix-hover: #767676; " href="/t/chatgpt"><span class="crayons-tag__prefix">#</span>chatgpt</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(255, 191, 255, 0.10); --tag-prefix: #FFBFFF; --tag-bg-hover: rgba(255, 191, 255, 0.10); --tag-prefix-hover: #FFBFFF; " href="/t/devdiscuss"><span class="crayons-tag__prefix">#</span>devdiscuss</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(178, 83, 83, 0.10); --tag-prefix: #b25353; --tag-bg-hover: rgba(178, 83, 83, 0.10); --tag-prefix-hover: #b25353; " href="/t/devrel"><span class="crayons-tag__prefix">#</span>devrel</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/dumebii/the-use-of-ai-in-content-generation-j0l" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2123800" aria-label="Add a comment to post - The Use Of AI In Content Generation"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">11<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="/dumebii/the-use-of-ai-in-content-generation-j0l#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - The Use Of AI In Content Generation"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ar56xt64eqi8qzqkqfij30kb27hc2yqf" class="crayons-icon"><title id="ar56xt64eqi8qzqkqfij30kb27hc2yqf">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> 6<span class="hidden s:inline"> comments</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2123800" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2123800" data-article-author-id="941720" aria-label="Save post The Use Of AI In Content Generation to reading list" title="Save post The Use Of AI In Content Generation to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2124353" data-content-user-id="1"> <a href="/ben/i-absolutely-love-when-css-gets-new-features-even-though-it-usually-takes-me-years-to-remember-to-11po" aria-labelledby="article-link-2124353" class="crayons-story__hidden-navigation-link">I absolutely love when CSS gets new features (Even though it usually takes me years to remember to use them 😄)</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/ben" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1%2Ff451a206-11c8-4e3d-8936-143d0a7e65bb.png" alt="ben profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/ben" class="crayons-story__secondary fw-medium m:hidden"> Ben Halpern </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2124353" aria-controls="story-author-preview-content-2124353" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Ben Halpern profile details"> Ben Halpern <a style="display: inline;" href="/++"><img alt="Subscriber" class="subscription-icon" src="https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png" /></a> </button> <div id="story-author-preview-content-2124353" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/ben" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1%2Ff451a206-11c8-4e3d-8936-143d0a7e65bb.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Ben Halpern</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1,"className":"User","name":"Ben Halpern"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1"></div> </div> </div> </div> </div> <a href="/ben/i-absolutely-love-when-css-gets-new-features-even-though-it-usually-takes-me-years-to-remember-to-11po" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-27T20:03:22Z">Nov 27</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732737802"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/ben/i-absolutely-love-when-css-gets-new-features-even-though-it-usually-takes-me-years-to-remember-to-11po" data-preload-image="" id="article-link-2124353"> I absolutely love when CSS gets new features (Even though it usually takes me years to remember to use them 😄) </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/ben/i-absolutely-love-when-css-gets-new-features-even-though-it-usually-takes-me-years-to-remember-to-11po" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2124353" aria-label="Add a comment to post - I absolutely love when CSS gets new features (Even though it usually takes me years to remember to use them 😄)"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">12<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="/ben/i-absolutely-love-when-css-gets-new-features-even-though-it-usually-takes-me-years-to-remember-to-11po#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - I absolutely love when CSS gets new features (Even though it usually takes me years to remember to use them 😄)"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="atlxtk27anxws3jtw59xpte5y38iaekr" class="crayons-icon"><title id="atlxtk27anxws3jtw59xpte5y38iaekr">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2124353" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2124353" data-article-author-id="1" aria-label="Save post I absolutely love when CSS gets new features (Even though it usually takes me years to remember to use them 😄) to reading list" title="Save post I absolutely love when CSS gets new features (Even though it usually takes me years to remember to use them 😄) to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2124604" data-content-user-id="1821395"> <a href="/osmar_ponce_a5d5cbd78d981/anytime-i-install-linux-on-a-new-machine-or-start-fresh-this-is-where-i-will-regain-all-of-my-cli-22cl" aria-labelledby="article-link-2124604" class="crayons-story__hidden-navigation-link">Anytime i install linux on a new machine or start fresh, this is where i will regain all of my cli tools.</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/osmar_ponce_a5d5cbd78d981" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1821395%2F9846d401-35e3-4d71-b3e0-d96d8bb207fc.png" alt="osmar_ponce_a5d5cbd78d981 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/osmar_ponce_a5d5cbd78d981" class="crayons-story__secondary fw-medium m:hidden"> Osmar Ponce </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2124604" aria-controls="story-author-preview-content-2124604" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Osmar Ponce profile details"> Osmar Ponce </button> <div id="story-author-preview-content-2124604" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/osmar_ponce_a5d5cbd78d981" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1821395%2F9846d401-35e3-4d71-b3e0-d96d8bb207fc.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Osmar Ponce</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1821395,"className":"User","name":"Osmar Ponce"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1821395"></div> </div> </div> </div> </div> <a href="/osmar_ponce_a5d5cbd78d981/anytime-i-install-linux-on-a-new-machine-or-start-fresh-this-is-where-i-will-regain-all-of-my-cli-22cl" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T00:48:22Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732754902"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/osmar_ponce_a5d5cbd78d981/anytime-i-install-linux-on-a-new-machine-or-start-fresh-this-is-where-i-will-regain-all-of-my-cli-22cl" data-preload-image="" id="article-link-2124604"> Anytime i install linux on a new machine or start fresh, this is where i will regain all of my cli tools. </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/osmar_ponce_a5d5cbd78d981/anytime-i-install-linux-on-a-new-machine-or-start-fresh-this-is-where-i-will-regain-all-of-my-cli-22cl" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2124604" aria-label="Add a comment to post - Anytime i install linux on a new machine or start fresh, this is where i will regain all of my cli tools."> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">3<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="/osmar_ponce_a5d5cbd78d981/anytime-i-install-linux-on-a-new-machine-or-start-fresh-this-is-where-i-will-regain-all-of-my-cli-22cl#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Anytime i install linux on a new machine or start fresh, this is where i will regain all of my cli tools."> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ab9lcs9hvy2816etito3mrrpqylxqvkm" class="crayons-icon"><title id="ab9lcs9hvy2816etito3mrrpqylxqvkm">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2124604" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2124604" data-article-author-id="1821395" aria-label="Save post Anytime i install linux on a new machine or start fresh, this is where i will regain all of my cli tools. to reading list" title="Save post Anytime i install linux on a new machine or start fresh, this is where i will regain all of my cli tools. to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2124492" data-content-user-id="264"> <a href="/jess/safe-thanksgiving-travels-to-anyone-whos-partaking-onl" aria-labelledby="article-link-2124492" class="crayons-story__hidden-navigation-link">Safe Thanksgiving travels to anyone who's partaking!</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/jess" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F264%2F40d89fb9-4de0-414d-8a06-f52ddda0bc75.jpg" alt="jess profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/jess" class="crayons-story__secondary fw-medium m:hidden"> Jess Lee </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2124492" aria-controls="story-author-preview-content-2124492" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Jess Lee profile details"> Jess Lee <a style="display: inline;" href="/++"><img alt="Subscriber" class="subscription-icon" src="https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png" /></a> </button> <div id="story-author-preview-content-2124492" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/jess" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F264%2F40d89fb9-4de0-414d-8a06-f52ddda0bc75.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Jess Lee</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":264,"className":"User","name":"Jess Lee"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="264"></div> </div> </div> </div> </div> <a href="/jess/safe-thanksgiving-travels-to-anyone-whos-partaking-onl" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-27T22:06:36Z">Nov 27</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732745196"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/jess/safe-thanksgiving-travels-to-anyone-whos-partaking-onl" data-preload-image="" id="article-link-2124492"> Safe Thanksgiving travels to anyone who's partaking! </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--filled " style=" --tag-bg: rgba(208, 236, 255, 0.10); --tag-prefix: #D0ECFF; --tag-bg-hover: rgba(208, 236, 255, 0.10); --tag-prefix-hover: #D0ECFF; " href="/t/watercooler"><span class="crayons-tag__prefix">#</span>watercooler</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/jess/safe-thanksgiving-travels-to-anyone-whos-partaking-onl" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2124492" aria-label="Add a comment to post - Safe Thanksgiving travels to anyone who's partaking!"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">1<span class="hidden s:inline"> reaction</span></span> </div> </a> <a href="/jess/safe-thanksgiving-travels-to-anyone-whos-partaking-onl#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Safe Thanksgiving travels to anyone who's partaking!"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ago3f24hpcocbwufdgthnxsralv5cqm7" class="crayons-icon"><title id="ago3f24hpcocbwufdgthnxsralv5cqm7">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2124492" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2124492" data-article-author-id="264" aria-label="Save post Safe Thanksgiving travels to anyone who's partaking! to reading list" title="Save post Safe Thanksgiving travels to anyone who's partaking! to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2124928" data-content-user-id="1971849"> <a href="/nozibul_islam_113b1d5334f/my-leetcode-journey-from-beginner-to-earning-the-annual-badge-560k" aria-labelledby="article-link-2124928" class="crayons-story__hidden-navigation-link">My LeetCode Journey: From Beginner to Earning the Annual Badge!</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/nozibul_islam_113b1d5334f" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1971849%2Fe97063c6-1893-40f0-af60-b650acae49cd.png" alt="nozibul_islam_113b1d5334f profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/nozibul_islam_113b1d5334f" class="crayons-story__secondary fw-medium m:hidden"> Nozibul Islam </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2124928" aria-controls="story-author-preview-content-2124928" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Nozibul Islam profile details"> Nozibul Islam </button> <div id="story-author-preview-content-2124928" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/nozibul_islam_113b1d5334f" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1971849%2Fe97063c6-1893-40f0-af60-b650acae49cd.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Nozibul Islam</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1971849,"className":"User","name":"Nozibul Islam"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1971849"></div> </div> </div> </div> </div> <a href="/nozibul_islam_113b1d5334f/my-leetcode-journey-from-beginner-to-earning-the-annual-badge-560k" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T06:34:16Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732775656"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/nozibul_islam_113b1d5334f/my-leetcode-journey-from-beginner-to-earning-the-annual-badge-560k" data-preload-image="" id="article-link-2124928"> My LeetCode Journey: From Beginner to Earning the Annual Badge! </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/nozibul_islam_113b1d5334f/my-leetcode-journey-from-beginner-to-earning-the-annual-badge-560k" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2124928" aria-label="Add a comment to post - My LeetCode Journey: From Beginner to Earning the Annual Badge!"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">15<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="/nozibul_islam_113b1d5334f/my-leetcode-journey-from-beginner-to-earning-the-annual-badge-560k#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - My LeetCode Journey: From Beginner to Earning the Annual Badge!"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a255hzfpf1joavolg7l0y6rwcanowmx6" class="crayons-icon"><title id="a255hzfpf1joavolg7l0y6rwcanowmx6">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2124928" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2124928" data-article-author-id="1971849" aria-label="Save post My LeetCode Journey: From Beginner to Earning the Annual Badge! to reading list" title="Save post My LeetCode Journey: From Beginner to Earning the Annual Badge! to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2124927" data-content-user-id="1971849"> <a href="/nozibul_islam_113b1d5334f/my-leetcode-journey-from-beginner-to-earning-the-annual-badge-4e93" aria-labelledby="article-link-2124927" class="crayons-story__hidden-navigation-link">My LeetCode Journey: From Beginner to Earning the Annual Badge! 🎉</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/nozibul_islam_113b1d5334f" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1971849%2Fe97063c6-1893-40f0-af60-b650acae49cd.png" alt="nozibul_islam_113b1d5334f profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/nozibul_islam_113b1d5334f" class="crayons-story__secondary fw-medium m:hidden"> Nozibul Islam </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2124927" aria-controls="story-author-preview-content-2124927" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Nozibul Islam profile details"> Nozibul Islam </button> <div id="story-author-preview-content-2124927" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/nozibul_islam_113b1d5334f" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1971849%2Fe97063c6-1893-40f0-af60-b650acae49cd.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Nozibul Islam</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1971849,"className":"User","name":"Nozibul Islam"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1971849"></div> </div> </div> </div> </div> <a href="/nozibul_islam_113b1d5334f/my-leetcode-journey-from-beginner-to-earning-the-annual-badge-4e93" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T06:33:20Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732775600"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/nozibul_islam_113b1d5334f/my-leetcode-journey-from-beginner-to-earning-the-annual-badge-4e93" data-preload-image="" id="article-link-2124927"> My LeetCode Journey: From Beginner to Earning the Annual Badge! 🎉 </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 0, 0, 0.10); --tag-prefix: #000000; --tag-bg-hover: rgba(0, 0, 0, 0.10); --tag-prefix-hover: #000000; " href="/t/leetcode"><span class="crayons-tag__prefix">#</span>leetcode</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/problemsolving"><span class="crayons-tag__prefix">#</span>problemsolving</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(175, 39, 242, 0.10); --tag-prefix: #af27f2; --tag-bg-hover: rgba(175, 39, 242, 0.10); --tag-prefix-hover: #af27f2; " href="/t/coding"><span class="crayons-tag__prefix">#</span>coding</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/nozibul_islam_113b1d5334f/my-leetcode-journey-from-beginner-to-earning-the-annual-badge-4e93" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2124927" aria-label="Add a comment to post - My LeetCode Journey: From Beginner to Earning the Annual Badge! 🎉"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">15<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="/nozibul_islam_113b1d5334f/my-leetcode-journey-from-beginner-to-earning-the-annual-badge-4e93#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - My LeetCode Journey: From Beginner to Earning the Annual Badge! 🎉"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ajxup9ia0fnwps082ml5smc7nco48w68" class="crayons-icon"><title id="ajxup9ia0fnwps082ml5smc7nco48w68">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2124927" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2124927" data-article-author-id="1971849" aria-label="Save post My LeetCode Journey: From Beginner to Earning the Annual Badge! 🎉 to reading list" title="Save post My LeetCode Journey: From Beginner to Earning the Annual Badge! 🎉 to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2124272" data-content-user-id="1"> <a href="/ben/looking-forward-to-this-one-22lb" aria-labelledby="article-link-2124272" class="crayons-story__hidden-navigation-link">Looking forward to this one!</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/ben" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1%2Ff451a206-11c8-4e3d-8936-143d0a7e65bb.png" alt="ben profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/ben" class="crayons-story__secondary fw-medium m:hidden"> Ben Halpern </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2124272" aria-controls="story-author-preview-content-2124272" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Ben Halpern profile details"> Ben Halpern <a style="display: inline;" href="/++"><img alt="Subscriber" class="subscription-icon" src="https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png" /></a> </button> <div id="story-author-preview-content-2124272" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/ben" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1%2Ff451a206-11c8-4e3d-8936-143d0a7e65bb.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Ben Halpern</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1,"className":"User","name":"Ben Halpern"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1"></div> </div> </div> </div> </div> <a href="/ben/looking-forward-to-this-one-22lb" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-27T18:43:05Z">Nov 27</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732732985"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/ben/looking-forward-to-this-one-22lb" data-preload-image="" id="article-link-2124272"> Looking forward to this one! </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/ben/looking-forward-to-this-one-22lb" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2124272" aria-label="Add a comment to post - Looking forward to this one!"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">8<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="/ben/looking-forward-to-this-one-22lb#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Looking forward to this one!"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="am7e0hfhcs7knsnbrl13rhnqynvkr4wg" class="crayons-icon"><title id="am7e0hfhcs7knsnbrl13rhnqynvkr4wg">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2124272" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2124272" data-article-author-id="1" aria-label="Save post Looking forward to this one! to reading list" title="Save post Looking forward to this one! to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2124237" data-content-user-id="18254"> <a href="/thomasbnt/what-is-your-best-playlist-music-for-work-1olb" aria-labelledby="article-link-2124237" class="crayons-story__hidden-navigation-link">What is your BEST playlist music for work? 🎶</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/thomasbnt" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F18254%2Fc3e65d32-bfe2-48ed-93b3-f2caf9c60dd7.png" alt="thomasbnt profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/thomasbnt" class="crayons-story__secondary fw-medium m:hidden"> Thomas Bnt </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2124237" aria-controls="story-author-preview-content-2124237" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Thomas Bnt profile details"> Thomas Bnt <a style="display: inline;" href="/++"><img alt="Subscriber" class="subscription-icon" src="https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png" /></a> </button> <div id="story-author-preview-content-2124237" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/thomasbnt" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F18254%2Fc3e65d32-bfe2-48ed-93b3-f2caf9c60dd7.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Thomas Bnt</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":18254,"className":"User","name":"Thomas Bnt"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="18254"></div> </div> </div> </div> </div> <a href="/thomasbnt/what-is-your-best-playlist-music-for-work-1olb" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-27T17:48:37Z">Nov 27</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732729717"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/thomasbnt/what-is-your-best-playlist-music-for-work-1olb" data-preload-image="" id="article-link-2124237"> What is your BEST playlist music for work? 🎶 </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--filled " style=" --tag-bg: rgba(208, 236, 255, 0.10); --tag-prefix: #D0ECFF; --tag-bg-hover: rgba(208, 236, 255, 0.10); --tag-prefix-hover: #D0ECFF; " href="/t/watercooler"><span class="crayons-tag__prefix">#</span>watercooler</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(113, 234, 139, 0.10); --tag-prefix: #71EA8B; --tag-bg-hover: rgba(113, 234, 139, 0.10); --tag-prefix-hover: #71EA8B; " href="/t/discuss"><span class="crayons-tag__prefix">#</span>discuss</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(111, 0, 139, 0.10); --tag-prefix: #6f008b; --tag-bg-hover: rgba(111, 0, 139, 0.10); --tag-prefix-hover: #6f008b; " href="/t/music"><span class="crayons-tag__prefix">#</span>music</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/thomasbnt/what-is-your-best-playlist-music-for-work-1olb" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2124237" aria-label="Add a comment to post - What is your BEST playlist music for work? 🎶"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">1<span class="hidden s:inline"> reaction</span></span> </div> </a> <a href="/thomasbnt/what-is-your-best-playlist-music-for-work-1olb#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - What is your BEST playlist music for work? 🎶"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aqhtgc3niyloh7sjtll10fj8mlkxod0g" class="crayons-icon"><title id="aqhtgc3niyloh7sjtll10fj8mlkxod0g">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> 4<span class="hidden s:inline"> comments</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2124237" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2124237" data-article-author-id="18254" aria-label="Save post What is your BEST playlist music for work? 🎶 to reading list" title="Save post What is your BEST playlist music for work? 🎶 to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2070493" data-content-user-id="362557"> <a href="/nfrankel/why-home-assistant-f94" aria-labelledby="article-link-2070493" class="crayons-story__hidden-navigation-link">Why Home Assistant?</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/nfrankel" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F362557%2F479d9637-2db0-4b0a-8070-edbe538c4180.jpg" alt="nfrankel profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/nfrankel" class="crayons-story__secondary fw-medium m:hidden"> Nicolas Fränkel </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2070493" aria-controls="story-author-preview-content-2070493" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Nicolas Fränkel profile details"> Nicolas Fränkel </button> <div id="story-author-preview-content-2070493" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/nfrankel" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F362557%2F479d9637-2db0-4b0a-8070-edbe538c4180.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Nicolas Fränkel</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":362557,"className":"User","name":"Nicolas Fränkel"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="362557"></div> </div> </div> </div> </div> <a href="/nfrankel/why-home-assistant-f94" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T09:02:00Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732784520"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/nfrankel/why-home-assistant-f94" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzqidtkind3f5t50egr7x.png" id="article-link-2070493"> Why Home Assistant? </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/homeassistant"><span class="crayons-tag__prefix">#</span>homeassistant</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/iot"><span class="crayons-tag__prefix">#</span>iot</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/nfrankel/why-home-assistant-f94" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2070493" aria-label="Add a comment to post - Why Home Assistant?"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">5<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="/nfrankel/why-home-assistant-f94#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Why Home Assistant?"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aatigzufsavidgrafe0ywcgnqetyujfn" class="crayons-icon"><title id="aatigzufsavidgrafe0ywcgnqetyujfn">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 3 min read </small> <button type="button" id="article-save-button-2070493" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2070493" data-article-author-id="362557" aria-label="Save post Why Home Assistant? to reading list" title="Save post Why Home Assistant? to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2124702" data-content-user-id="1417311"> <a href="/faceplugin/how-digital-onboarding-kyc-is-transforming-identity-verification-1ioa" aria-labelledby="article-link-2124702" class="crayons-story__hidden-navigation-link">How Digital Onboarding KYC is Transforming Identity Verification</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/faceplugin" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1417311%2Fa9e82bb1-779d-4cda-85d5-75f54e316889.png" alt="faceplugin profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/faceplugin" class="crayons-story__secondary fw-medium m:hidden"> Faceplugin </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2124702" aria-controls="story-author-preview-content-2124702" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Faceplugin profile details"> Faceplugin </button> <div id="story-author-preview-content-2124702" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/faceplugin" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1417311%2Fa9e82bb1-779d-4cda-85d5-75f54e316889.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Faceplugin</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1417311,"className":"User","name":"Faceplugin"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1417311"></div> </div> </div> </div> </div> <a href="/faceplugin/how-digital-onboarding-kyc-is-transforming-identity-verification-1ioa" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T02:26:57Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732760817"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/faceplugin/how-digital-onboarding-kyc-is-transforming-identity-verification-1ioa" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjrtxzl1ykd9ygijutmrb.jpg" id="article-link-2124702"> How Digital Onboarding KYC is Transforming Identity Verification </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(229, 255, 227, 0.10); --tag-prefix: #E5FFE3; --tag-bg-hover: rgba(229, 255, 227, 0.10); --tag-prefix-hover: #E5FFE3; " href="/t/machinelearning"><span class="crayons-tag__prefix">#</span>machinelearning</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 153, 153, 0.10); --tag-prefix: #009999; --tag-bg-hover: rgba(0, 153, 153, 0.10); --tag-prefix-hover: #009999; " href="/t/datascience"><span class="crayons-tag__prefix">#</span>datascience</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(217, 140, 217, 0.10); --tag-prefix: #d98cd9; --tag-bg-hover: rgba(217, 140, 217, 0.10); --tag-prefix-hover: #d98cd9; " href="/t/computerscience"><span class="crayons-tag__prefix">#</span>computerscience</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/faceplugin/how-digital-onboarding-kyc-is-transforming-identity-verification-1ioa" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2124702" aria-label="Add a comment to post - How Digital Onboarding KYC is Transforming Identity Verification"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">24<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="/faceplugin/how-digital-onboarding-kyc-is-transforming-identity-verification-1ioa#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - How Digital Onboarding KYC is Transforming Identity Verification"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ahxqesb5p00bvwt1x60lbd5g8gj1berq" class="crayons-icon"><title id="ahxqesb5p00bvwt1x60lbd5g8gj1berq">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2124702" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2124702" data-article-author-id="1417311" aria-label="Save post How Digital Onboarding KYC is Transforming Identity Verification to reading list" title="Save post How Digital Onboarding KYC is Transforming Identity Verification to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2124449" data-content-user-id="2103048"> <a href="/hmpljs/i-changed-the-logo-for-the-js-project-what-do-you-think-79e" aria-labelledby="article-link-2124449" class="crayons-story__hidden-navigation-link">I changed the logo for the js project. What do you think? It’s 🔥?</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a class="crayons-logo crayons-logo--l" href="/hmpljs"> <img alt="HMPL.js logo" src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F9852%2Fc11ce6b7-4a78-483f-a93d-95f7684c4924.png" class="crayons-logo__image" loading="lazy" /> </a> <a href="/anthonymax" class="crayons-avatar crayons-avatar--s absolute -right-2 -bottom-2 border-solid border-2 border-base-inverted "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2103048%2Fce133397-96b5-4c53-9831-eadabf494660.png" alt="anthonymax profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/anthonymax" class="crayons-story__secondary fw-medium m:hidden"> Anthony Max </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2124449" aria-controls="story-author-preview-content-2124449" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Anthony Max profile details"> Anthony Max <a style="display: inline;" href="/++"><img alt="Subscriber" class="subscription-icon" src="https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png" /></a> </button> <div id="story-author-preview-content-2124449" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/anthonymax" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2103048%2Fce133397-96b5-4c53-9831-eadabf494660.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Anthony Max</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2103048,"className":"User","name":"Anthony Max"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2103048"></div> </div> </div> </div> <span> <span class="crayons-story__tertiary fw-normal"> for </span><a href="/hmpljs" class="crayons-story__secondary fw-medium">HMPL.js</a> </span> </div> <a href="/hmpljs/i-changed-the-logo-for-the-js-project-what-do-you-think-79e" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T06:59:06Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732777146"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/hmpljs/i-changed-the-logo-for-the-js-project-what-do-you-think-79e" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdpe92vedrq70ch6b3f07.png" id="article-link-2124449"> I changed the logo for the js project. What do you think? It’s 🔥? </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(86, 39, 101, 0.10); --tag-prefix: #562765; --tag-bg-hover: rgba(86, 39, 101, 0.10); --tag-prefix-hover: #562765; " href="/t/webdev"><span class="crayons-tag__prefix">#</span>webdev</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(247, 223, 30, 0.10); --tag-prefix: #f7df1e; --tag-bg-hover: rgba(247, 223, 30, 0.10); --tag-prefix-hover: #f7df1e; " href="/t/javascript"><span class="crayons-tag__prefix">#</span>javascript</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(38, 190, 0, 0.10); --tag-prefix: #26BE00; --tag-bg-hover: rgba(38, 190, 0, 0.10); --tag-prefix-hover: #26BE00; " href="/t/opensource"><span class="crayons-tag__prefix">#</span>opensource</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/hmpljs/i-changed-the-logo-for-the-js-project-what-do-you-think-79e" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2124449" aria-label="Add a comment to post - I changed the logo for the js project. What do you think? It’s 🔥?"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">5<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="/hmpljs/i-changed-the-logo-for-the-js-project-what-do-you-think-79e#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - I changed the logo for the js project. What do you think? It’s 🔥?"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="antuqjliu82ez6zg5z7dziluhzfk420k" class="crayons-icon"><title id="antuqjliu82ez6zg5z7dziluhzfk420k">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> 1<span class="hidden s:inline"> comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 3 min read </small> <button type="button" id="article-save-button-2124449" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2124449" data-article-author-id="2103048" aria-label="Save post I changed the logo for the js project. What do you think? It’s 🔥? to reading list" title="Save post I changed the logo for the js project. What do you think? It’s 🔥? to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125060" data-content-user-id="1262818"> <a href="/devmercy/simplifying-asynchronous-code-with-top-level-await-in-javascript-5h51" aria-labelledby="article-link-2125060" class="crayons-story__hidden-navigation-link">Simplifying asynchronous code with Top-Level Await in Javascript</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/devmercy" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1262818%2F84ed0d4b-49eb-405c-8a1e-f0334bef0762.jpg" alt="devmercy profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/devmercy" class="crayons-story__secondary fw-medium m:hidden"> Mercy </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125060" aria-controls="story-author-preview-content-2125060" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Mercy profile details"> Mercy </button> <div id="story-author-preview-content-2125060" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/devmercy" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1262818%2F84ed0d4b-49eb-405c-8a1e-f0334bef0762.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Mercy</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1262818,"className":"User","name":"Mercy"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1262818"></div> </div> </div> </div> </div> <a href="/devmercy/simplifying-asynchronous-code-with-top-level-await-in-javascript-5h51" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T08:20:33Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732782033"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/devmercy/simplifying-asynchronous-code-with-top-level-await-in-javascript-5h51" data-preload-image="" id="article-link-2125060"> Simplifying asynchronous code with Top-Level Await in Javascript </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(86, 39, 101, 0.10); --tag-prefix: #562765; --tag-bg-hover: rgba(86, 39, 101, 0.10); --tag-prefix-hover: #562765; " href="/t/webdev"><span class="crayons-tag__prefix">#</span>webdev</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(247, 223, 30, 0.10); --tag-prefix: #f7df1e; --tag-bg-hover: rgba(247, 223, 30, 0.10); --tag-prefix-hover: #f7df1e; " href="/t/javascript"><span class="crayons-tag__prefix">#</span>javascript</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(254, 255, 165, 0.10); --tag-prefix: #FEFFA5; --tag-bg-hover: rgba(254, 255, 165, 0.10); --tag-prefix-hover: #FEFFA5; " href="/t/tutorial"><span class="crayons-tag__prefix">#</span>tutorial</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/devmercy/simplifying-asynchronous-code-with-top-level-await-in-javascript-5h51" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2125060" aria-label="Add a comment to post - Simplifying asynchronous code with Top-Level Await in Javascript"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">5<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="/devmercy/simplifying-asynchronous-code-with-top-level-await-in-javascript-5h51#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Simplifying asynchronous code with Top-Level Await in Javascript"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a3qh4tehocwrb0m1qmlcyg4j1v1nrm8q" class="crayons-icon"><title id="a3qh4tehocwrb0m1qmlcyg4j1v1nrm8q">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> 2<span class="hidden s:inline"> comments</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 3 min read </small> <button type="button" id="article-save-button-2125060" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125060" data-article-author-id="1262818" aria-label="Save post Simplifying asynchronous code with Top-Level Await in Javascript to reading list" title="Save post Simplifying asynchronous code with Top-Level Await in Javascript to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125219" data-content-user-id="1015047"> <a href="/aysha/understanding-open-source-licenses-3144" aria-labelledby="article-link-2125219" class="crayons-story__hidden-navigation-link">Understanding Open-Source Licenses</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/aysha" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1015047%2F142a5ff2-32b9-465e-9116-3de3fec34085.jpeg" alt="aysha profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/aysha" class="crayons-story__secondary fw-medium m:hidden"> Aysha Muhammed </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125219" aria-controls="story-author-preview-content-2125219" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Aysha Muhammed profile details"> Aysha Muhammed </button> <div id="story-author-preview-content-2125219" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/aysha" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1015047%2F142a5ff2-32b9-465e-9116-3de3fec34085.jpeg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Aysha Muhammed</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1015047,"className":"User","name":"Aysha Muhammed"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1015047"></div> </div> </div> </div> </div> <a href="/aysha/understanding-open-source-licenses-3144" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:21:45Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732789305"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/aysha/understanding-open-source-licenses-3144" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0qka4d30etqj9bey9g1b.png" id="article-link-2125219"> Understanding Open-Source Licenses </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(38, 190, 0, 0.10); --tag-prefix: #26BE00; --tag-bg-hover: rgba(38, 190, 0, 0.10); --tag-prefix-hover: #26BE00; " href="/t/opensource"><span class="crayons-tag__prefix">#</span>opensource</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 0, 0, 0.10); --tag-prefix: #000000; --tag-bg-hover: rgba(0, 0, 0, 0.10); --tag-prefix-hover: #000000; " href="/t/github"><span class="crayons-tag__prefix">#</span>github</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/softwaredevelopment"><span class="crayons-tag__prefix">#</span>softwaredevelopment</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/aysha/understanding-open-source-licenses-3144#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Understanding Open-Source Licenses"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="adyqozg2jl810yakvfxw2urs1c0wazo2" class="crayons-icon"><title id="adyqozg2jl810yakvfxw2urs1c0wazo2">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 6 min read </small> <button type="button" id="article-save-button-2125219" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125219" data-article-author-id="1015047" aria-label="Save post Understanding Open-Source Licenses to reading list" title="Save post Understanding Open-Source Licenses to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2124843" data-content-user-id="820341"> <a href="/nevodavid/-2b31" aria-labelledby="article-link-2124843" class="crayons-story__hidden-navigation-link">🚀</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/nevodavid" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F820341%2F5d291561-0d60-40cf-a9d3-959dab08f1ac.png" alt="nevodavid profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/nevodavid" class="crayons-story__secondary fw-medium m:hidden"> Nevo David </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2124843" aria-controls="story-author-preview-content-2124843" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Nevo David profile details"> Nevo David <a style="display: inline;" href="/++"><img alt="Subscriber" class="subscription-icon" src="https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png" /></a> </button> <div id="story-author-preview-content-2124843" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/nevodavid" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F820341%2F5d291561-0d60-40cf-a9d3-959dab08f1ac.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Nevo David</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":820341,"className":"User","name":"Nevo David"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="820341"></div> </div> </div> </div> </div> <a href="/nevodavid/-2b31" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T05:56:14Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732773374"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/nevodavid/-2b31" data-preload-image="" id="article-link-2124843"> 🚀 </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/nevodavid/-2b31" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2124843" aria-label="Add a comment to post - 🚀"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">5<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="/nevodavid/-2b31#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - 🚀"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aciqs62qxwzzhk6w6c7nxwplyp0r7153" class="crayons-icon"><title id="aciqs62qxwzzhk6w6c7nxwplyp0r7153">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2124843" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2124843" data-article-author-id="820341" aria-label="Save post 🚀 to reading list" title="Save post 🚀 to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125259" data-content-user-id="1374805"> <a href="/sarahthomasdev/how-to-test-edge-on-macos-with-top-methods-42h7" aria-labelledby="article-link-2125259" class="crayons-story__hidden-navigation-link">How to test Edge on macOS? (with Top Methods)</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/sarahthomasdev" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1374805%2Ff45b1d11-5c97-49b3-ba78-0ca5d4581e4d.png" alt="sarahthomasdev profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/sarahthomasdev" class="crayons-story__secondary fw-medium m:hidden"> Sarah Thomas </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125259" aria-controls="story-author-preview-content-2125259" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Sarah Thomas profile details"> Sarah Thomas </button> <div id="story-author-preview-content-2125259" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/sarahthomasdev" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1374805%2Ff45b1d11-5c97-49b3-ba78-0ca5d4581e4d.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Sarah Thomas</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1374805,"className":"User","name":"Sarah Thomas"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1374805"></div> </div> </div> </div> </div> <a href="/sarahthomasdev/how-to-test-edge-on-macos-with-top-methods-42h7" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:50:20Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732791020"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/sarahthomasdev/how-to-test-edge-on-macos-with-top-methods-42h7" data-preload-image="" id="article-link-2125259"> How to test Edge on macOS? (with Top Methods) </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(12, 118, 226, 0.10); --tag-prefix: #0c76e2; --tag-bg-hover: rgba(12, 118, 226, 0.10); --tag-prefix-hover: #0c76e2; " href="/t/ios"><span class="crayons-tag__prefix">#</span>ios</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(1, 155, 101, 0.10); --tag-prefix: #019b65; --tag-bg-hover: rgba(1, 155, 101, 0.10); --tag-prefix-hover: #019b65; " href="/t/testing"><span class="crayons-tag__prefix">#</span>testing</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/softwaredevelopment"><span class="crayons-tag__prefix">#</span>softwaredevelopment</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/softwareengineering"><span class="crayons-tag__prefix">#</span>softwareengineering</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/sarahthomasdev/how-to-test-edge-on-macos-with-top-methods-42h7#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - How to test Edge on macOS? (with Top Methods)"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="abwcspxwscqj9k7lj1vlabto2u5w3421" class="crayons-icon"><title id="abwcspxwscqj9k7lj1vlabto2u5w3421">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 4 min read </small> <button type="button" id="article-save-button-2125259" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125259" data-article-author-id="1374805" aria-label="Save post How to test Edge on macOS? (with Top Methods) to reading list" title="Save post How to test Edge on macOS? (with Top Methods) to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125245" data-content-user-id="2492184"> <a href="/iskender83/blockchain-for-decentralized-finance-defi-security-c41" aria-labelledby="article-link-2125245" class="crayons-story__hidden-navigation-link">Blockchain for Decentralized Finance (DeFi) Security</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/iskender83" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" alt="iskender83 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/iskender83" class="crayons-story__secondary fw-medium m:hidden"> iskender </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125245" aria-controls="story-author-preview-content-2125245" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="iskender profile details"> iskender </button> <div id="story-author-preview-content-2125245" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/iskender83" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">iskender</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2492184,"className":"User","name":"iskender"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2492184"></div> </div> </div> </div> </div> <a href="/iskender83/blockchain-for-decentralized-finance-defi-security-c41" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:38:38Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732790318"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/iskender83/blockchain-for-decentralized-finance-defi-security-c41" data-preload-image="" id="article-link-2125245"> Blockchain for Decentralized Finance (DeFi) Security </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/iskender83/blockchain-for-decentralized-finance-defi-security-c41#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Blockchain for Decentralized Finance (DeFi) Security"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a87mnl8ia3n7w75v1empx1g02aescojg" class="crayons-icon"><title id="a87mnl8ia3n7w75v1empx1g02aescojg">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125245" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125245" data-article-author-id="2492184" aria-label="Save post Blockchain for Decentralized Finance (DeFi) Security to reading list" title="Save post Blockchain for Decentralized Finance (DeFi) Security to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125249" data-content-user-id="2490229"> <a href="/veinar/secrets-101-a-fun-and-practical-basic-guide-to-avoiding-leaks-and-not-becoming-a-meme-37kd" aria-labelledby="article-link-2125249" class="crayons-story__hidden-navigation-link">Secrets 101: A fun and practical basic guide to avoiding leaks and not becoming a meme</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/veinar" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2490229%2F1887ce91-7258-48a5-a38c-d2f7823fa6c5.jpg" alt="veinar profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/veinar" class="crayons-story__secondary fw-medium m:hidden"> Konrad Kurek </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125249" aria-controls="story-author-preview-content-2125249" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Konrad Kurek profile details"> Konrad Kurek </button> <div id="story-author-preview-content-2125249" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/veinar" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2490229%2F1887ce91-7258-48a5-a38c-d2f7823fa6c5.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Konrad Kurek</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2490229,"className":"User","name":"Konrad Kurek"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2490229"></div> </div> </div> </div> </div> <a href="/veinar/secrets-101-a-fun-and-practical-basic-guide-to-avoiding-leaks-and-not-becoming-a-meme-37kd" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:43:12Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732790592"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/veinar/secrets-101-a-fun-and-practical-basic-guide-to-avoiding-leaks-and-not-becoming-a-meme-37kd" data-preload-image="" id="article-link-2125249"> Secrets 101: A fun and practical basic guide to avoiding leaks and not becoming a meme </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(27, 172, 128, 0.10); --tag-prefix: #1bac80; --tag-bg-hover: rgba(27, 172, 128, 0.10); --tag-prefix-hover: #1bac80; " href="/t/security"><span class="crayons-tag__prefix">#</span>security</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(6, 181, 0, 0.10); --tag-prefix: #06B500; --tag-bg-hover: rgba(6, 181, 0, 0.10); --tag-prefix-hover: #06B500; " href="/t/devops"><span class="crayons-tag__prefix">#</span>devops</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/development"><span class="crayons-tag__prefix">#</span>development</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/veinar/secrets-101-a-fun-and-practical-basic-guide-to-avoiding-leaks-and-not-becoming-a-meme-37kd#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Secrets 101: A fun and practical basic guide to avoiding leaks and not becoming a meme"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a7powt1e1ow2zkq895q2le5p6xr4duoa" class="crayons-icon"><title id="a7powt1e1ow2zkq895q2le5p6xr4duoa">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 4 min read </small> <button type="button" id="article-save-button-2125249" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125249" data-article-author-id="2490229" aria-label="Save post Secrets 101: A fun and practical basic guide to avoiding leaks and not becoming a meme to reading list" title="Save post Secrets 101: A fun and practical basic guide to avoiding leaks and not becoming a meme to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125242" data-content-user-id="2316139"> <a href="/alphabetanetcom/secure-device-authentication-in-python-introducing-the-system-hardware-id-generator-script-1iim" aria-labelledby="article-link-2125242" class="crayons-story__hidden-navigation-link">Secure Device Authentication in Python: Introducing the System Hardware ID Generator Script</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/alphabetanetcom" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2316139%2Fecd5b475-60eb-4840-ba41-3e1e8dd9d4ec.png" alt="alphabetanetcom profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/alphabetanetcom" class="crayons-story__secondary fw-medium m:hidden"> Pavel Izosimov </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125242" aria-controls="story-author-preview-content-2125242" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Pavel Izosimov profile details"> Pavel Izosimov </button> <div id="story-author-preview-content-2125242" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/alphabetanetcom" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2316139%2Fecd5b475-60eb-4840-ba41-3e1e8dd9d4ec.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Pavel Izosimov</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2316139,"className":"User","name":"Pavel Izosimov"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2316139"></div> </div> </div> </div> </div> <a href="/alphabetanetcom/secure-device-authentication-in-python-introducing-the-system-hardware-id-generator-script-1iim" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:35:57Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732790157"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/alphabetanetcom/secure-device-authentication-in-python-introducing-the-system-hardware-id-generator-script-1iim" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fka5e9zvcj6rafcn0yyeh.png" id="article-link-2125242"> Secure Device Authentication in Python: Introducing the System Hardware ID Generator Script </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(30, 56, 187, 0.10); --tag-prefix: #1E38BB; --tag-bg-hover: rgba(30, 56, 187, 0.10); --tag-prefix-hover: #1E38BB; " href="/t/python"><span class="crayons-tag__prefix">#</span>python</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(27, 172, 128, 0.10); --tag-prefix: #1bac80; --tag-bg-hover: rgba(27, 172, 128, 0.10); --tag-prefix-hover: #1bac80; " href="/t/security"><span class="crayons-tag__prefix">#</span>security</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(38, 190, 0, 0.10); --tag-prefix: #26BE00; --tag-bg-hover: rgba(38, 190, 0, 0.10); --tag-prefix-hover: #26BE00; " href="/t/opensource"><span class="crayons-tag__prefix">#</span>opensource</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(254, 255, 165, 0.10); --tag-prefix: #FEFFA5; --tag-bg-hover: rgba(254, 255, 165, 0.10); --tag-prefix-hover: #FEFFA5; " href="/t/tutorial"><span class="crayons-tag__prefix">#</span>tutorial</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/alphabetanetcom/secure-device-authentication-in-python-introducing-the-system-hardware-id-generator-script-1iim#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Secure Device Authentication in Python: Introducing the System Hardware ID Generator Script"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aeffjdl85dbp1nuuti9xixwj4iy7o2qf" class="crayons-icon"><title id="aeffjdl85dbp1nuuti9xixwj4iy7o2qf">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 5 min read </small> <button type="button" id="article-save-button-2125242" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125242" data-article-author-id="2316139" aria-label="Save post Secure Device Authentication in Python: Introducing the System Hardware ID Generator Script to reading list" title="Save post Secure Device Authentication in Python: Introducing the System Hardware ID Generator Script to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125241" data-content-user-id="2492184"> <a href="/iskender83/cloud-security-for-real-time-applications-30ho" aria-labelledby="article-link-2125241" class="crayons-story__hidden-navigation-link">Cloud Security for Real-Time Applications</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/iskender83" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" alt="iskender83 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/iskender83" class="crayons-story__secondary fw-medium m:hidden"> iskender </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125241" aria-controls="story-author-preview-content-2125241" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="iskender profile details"> iskender </button> <div id="story-author-preview-content-2125241" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/iskender83" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">iskender</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2492184,"className":"User","name":"iskender"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2492184"></div> </div> </div> </div> </div> <a href="/iskender83/cloud-security-for-real-time-applications-30ho" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:33:37Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732790017"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/iskender83/cloud-security-for-real-time-applications-30ho" data-preload-image="" id="article-link-2125241"> Cloud Security for Real-Time Applications </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/iskender83/cloud-security-for-real-time-applications-30ho#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Cloud Security for Real-Time Applications"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a7o6x8dwasgu1ou23gwevqt7gujo6lw6" class="crayons-icon"><title id="a7o6x8dwasgu1ou23gwevqt7gujo6lw6">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125241" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125241" data-article-author-id="2492184" aria-label="Save post Cloud Security for Real-Time Applications to reading list" title="Save post Cloud Security for Real-Time Applications to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125255" data-content-user-id="2492184"> <a href="/iskender83/ai-powered-vulnerability-management-tools-4a93" aria-labelledby="article-link-2125255" class="crayons-story__hidden-navigation-link">AI-Powered Vulnerability Management Tools</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/iskender83" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" alt="iskender83 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/iskender83" class="crayons-story__secondary fw-medium m:hidden"> iskender </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125255" aria-controls="story-author-preview-content-2125255" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="iskender profile details"> iskender </button> <div id="story-author-preview-content-2125255" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/iskender83" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">iskender</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2492184,"className":"User","name":"iskender"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2492184"></div> </div> </div> </div> </div> <a href="/iskender83/ai-powered-vulnerability-management-tools-4a93" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:48:38Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732790918"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/iskender83/ai-powered-vulnerability-management-tools-4a93" data-preload-image="" id="article-link-2125255"> AI-Powered Vulnerability Management Tools </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/iskender83/ai-powered-vulnerability-management-tools-4a93#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - AI-Powered Vulnerability Management Tools"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a1it53tf6jtb033ac5jmv3g0fvzn7l6o" class="crayons-icon"><title id="a1it53tf6jtb033ac5jmv3g0fvzn7l6o">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125255" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125255" data-article-author-id="2492184" aria-label="Save post AI-Powered Vulnerability Management Tools to reading list" title="Save post AI-Powered Vulnerability Management Tools to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125254" data-content-user-id="582887"> <a href="/codegreen/rest-template-vs-web-client-in-spring-boot-56il" aria-labelledby="article-link-2125254" class="crayons-story__hidden-navigation-link">Rest Template vs Web Client in Spring Boot</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/codegreen" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F582887%2F46d6cd27-247f-4af7-ab18-e585483accbe.jpeg" alt="codegreen profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/codegreen" class="crayons-story__secondary fw-medium m:hidden"> Code Green </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125254" aria-controls="story-author-preview-content-2125254" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Code Green profile details"> Code Green </button> <div id="story-author-preview-content-2125254" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/codegreen" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F582887%2F46d6cd27-247f-4af7-ab18-e585483accbe.jpeg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Code Green</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":582887,"className":"User","name":"Code Green"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="582887"></div> </div> </div> </div> </div> <a href="/codegreen/rest-template-vs-web-client-in-spring-boot-56il" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:47:49Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732790869"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/codegreen/rest-template-vs-web-client-in-spring-boot-56il" data-preload-image="" id="article-link-2125254"> Rest Template vs Web Client in Spring Boot </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(126, 72, 16, 0.10); --tag-prefix: #7e4810; --tag-bg-hover: rgba(126, 72, 16, 0.10); --tag-prefix-hover: #7e4810; " href="/t/java"><span class="crayons-tag__prefix">#</span>java</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/springboot"><span class="crayons-tag__prefix">#</span>springboot</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/codegreen/rest-template-vs-web-client-in-spring-boot-56il#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Rest Template vs Web Client in Spring Boot"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="amydwmldp5w4zt7z7htwawvxdk33751s" class="crayons-icon"><title id="amydwmldp5w4zt7z7htwawvxdk33751s">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 3 min read </small> <button type="button" id="article-save-button-2125254" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125254" data-article-author-id="582887" aria-label="Save post Rest Template vs Web Client in Spring Boot to reading list" title="Save post Rest Template vs Web Client in Spring Boot to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2124692" data-content-user-id="1"> <a href="/ben/wow-249p" aria-labelledby="article-link-2124692" class="crayons-story__hidden-navigation-link">Wow</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/ben" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1%2Ff451a206-11c8-4e3d-8936-143d0a7e65bb.png" alt="ben profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/ben" class="crayons-story__secondary fw-medium m:hidden"> Ben Halpern </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2124692" aria-controls="story-author-preview-content-2124692" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Ben Halpern profile details"> Ben Halpern <a style="display: inline;" href="/++"><img alt="Subscriber" class="subscription-icon" src="https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png" /></a> </button> <div id="story-author-preview-content-2124692" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/ben" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1%2Ff451a206-11c8-4e3d-8936-143d0a7e65bb.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Ben Halpern</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1,"className":"User","name":"Ben Halpern"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1"></div> </div> </div> </div> </div> <a href="/ben/wow-249p" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T02:04:48Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732759488"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/ben/wow-249p" data-preload-image="" id="article-link-2124692"> Wow </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/ben/wow-249p" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2124692" aria-label="Add a comment to post - Wow"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> </span> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">2<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="/ben/wow-249p#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Wow"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="atmhxag5jh8wblfb4c14g0l13c9taifc" class="crayons-icon"><title id="atmhxag5jh8wblfb4c14g0l13c9taifc">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2124692" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2124692" data-article-author-id="1" aria-label="Save post Wow to reading list" title="Save post Wow to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125236" data-content-user-id="974558"> <a href="/petereskandar/-1pm0" aria-labelledby="article-link-2125236" class="crayons-story__hidden-navigation-link">[Boost]</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/petereskandar" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F974558%2F77478aec-a15d-4777-8216-8bb49220e049.jpeg" alt="petereskandar profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/petereskandar" class="crayons-story__secondary fw-medium m:hidden"> Peter Eskandar </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125236" aria-controls="story-author-preview-content-2125236" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Peter Eskandar profile details"> Peter Eskandar </button> <div id="story-author-preview-content-2125236" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/petereskandar" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F974558%2F77478aec-a15d-4777-8216-8bb49220e049.jpeg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Peter Eskandar</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":974558,"className":"User","name":"Peter Eskandar"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="974558"></div> </div> </div> </div> </div> <a href="/petereskandar/-1pm0" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:29:47Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732789787"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/petereskandar/-1pm0" data-preload-image="" id="article-link-2125236"> [Boost] </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/petereskandar/-1pm0#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - [Boost]"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aov1xk6krc94ubd4xar1pn3jc55zzjmq" class="crayons-icon"><title id="aov1xk6krc94ubd4xar1pn3jc55zzjmq">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2125236" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125236" data-article-author-id="974558" aria-label="Save post [Boost] to reading list" title="Save post [Boost] to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125233" data-content-user-id="2492184"> <a href="/iskender83/cloud-security-monitoring-best-practices-48hk" aria-labelledby="article-link-2125233" class="crayons-story__hidden-navigation-link">Cloud Security Monitoring Best Practices</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/iskender83" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" alt="iskender83 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/iskender83" class="crayons-story__secondary fw-medium m:hidden"> iskender </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125233" aria-controls="story-author-preview-content-2125233" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="iskender profile details"> iskender </button> <div id="story-author-preview-content-2125233" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/iskender83" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">iskender</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2492184,"className":"User","name":"iskender"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2492184"></div> </div> </div> </div> </div> <a href="/iskender83/cloud-security-monitoring-best-practices-48hk" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:28:38Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732789718"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/iskender83/cloud-security-monitoring-best-practices-48hk" data-preload-image="" id="article-link-2125233"> Cloud Security Monitoring Best Practices </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/iskender83/cloud-security-monitoring-best-practices-48hk#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Cloud Security Monitoring Best Practices"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a1a8cave2y60zjsr2pmjino7vekufb25" class="crayons-icon"><title id="a1a8cave2y60zjsr2pmjino7vekufb25">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125233" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125233" data-article-author-id="2492184" aria-label="Save post Cloud Security Monitoring Best Practices to reading list" title="Save post Cloud Security Monitoring Best Practices to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125238" data-content-user-id="1077052"> <a href="/ahikmah/understanding-the-evolution-of-word-representation-static-vs-dynamic-embeddings-5331" aria-labelledby="article-link-2125238" class="crayons-story__hidden-navigation-link">Understanding the Evolution of Word Representation: Static vs. Dynamic Embeddings</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/ahikmah" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1077052%2F665b33da-300c-4b56-8a09-4e0464bbc17b.jpeg" alt="ahikmah profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/ahikmah" class="crayons-story__secondary fw-medium m:hidden"> Awaliyatul Hikmah </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125238" aria-controls="story-author-preview-content-2125238" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Awaliyatul Hikmah profile details"> Awaliyatul Hikmah </button> <div id="story-author-preview-content-2125238" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/ahikmah" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1077052%2F665b33da-300c-4b56-8a09-4e0464bbc17b.jpeg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Awaliyatul Hikmah</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1077052,"className":"User","name":"Awaliyatul Hikmah"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1077052"></div> </div> </div> </div> </div> <a href="/ahikmah/understanding-the-evolution-of-word-representation-static-vs-dynamic-embeddings-5331" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:32:11Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732789931"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/ahikmah/understanding-the-evolution-of-word-representation-static-vs-dynamic-embeddings-5331" data-preload-image="" id="article-link-2125238"> Understanding the Evolution of Word Representation: Static vs. Dynamic Embeddings </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/ahikmah/understanding-the-evolution-of-word-representation-static-vs-dynamic-embeddings-5331#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Understanding the Evolution of Word Representation: Static vs. Dynamic Embeddings"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a7ld6woq0eb3uy9oxx8myxmz1z1pedu6" class="crayons-icon"><title id="a7ld6woq0eb3uy9oxx8myxmz1z1pedu6">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125238" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125238" data-article-author-id="1077052" aria-label="Save post Understanding the Evolution of Word Representation: Static vs. Dynamic Embeddings to reading list" title="Save post Understanding the Evolution of Word Representation: Static vs. Dynamic Embeddings to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125230" data-content-user-id="2495522"> <a href="/eaton_businessschool_6db/ai-in-finance-transforming-banking-and-investment-2j1k" aria-labelledby="article-link-2125230" class="crayons-story__hidden-navigation-link">AI in Finance: Transforming Banking and Investment</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/eaton_businessschool_6db" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2495522%2F12feb570-629b-46ea-9375-6c4d07a71780.png" alt="eaton_businessschool_6db profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/eaton_businessschool_6db" class="crayons-story__secondary fw-medium m:hidden"> Eaton Business School </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125230" aria-controls="story-author-preview-content-2125230" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Eaton Business School profile details"> Eaton Business School </button> <div id="story-author-preview-content-2125230" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/eaton_businessschool_6db" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2495522%2F12feb570-629b-46ea-9375-6c4d07a71780.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Eaton Business School</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2495522,"className":"User","name":"Eaton Business School"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2495522"></div> </div> </div> </div> </div> <a href="/eaton_businessschool_6db/ai-in-finance-transforming-banking-and-investment-2j1k" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:27:50Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732789670"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/eaton_businessschool_6db/ai-in-finance-transforming-banking-and-investment-2j1k" data-preload-image="" id="article-link-2125230"> AI in Finance: Transforming Banking and Investment </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(23, 253, 26, 0.10); --tag-prefix: #17fd1a; --tag-bg-hover: rgba(23, 253, 26, 0.10); --tag-prefix-hover: #17fd1a; " href="/t/ai"><span class="crayons-tag__prefix">#</span>ai</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/banking"><span class="crayons-tag__prefix">#</span>banking</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/eaton_businessschool_6db/ai-in-finance-transforming-banking-and-investment-2j1k#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - AI in Finance: Transforming Banking and Investment"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="af7g1qitruggrkpnpquc9p4jppxvgknr" class="crayons-icon"><title id="af7g1qitruggrkpnpquc9p4jppxvgknr">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125230" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125230" data-article-author-id="2495522" aria-label="Save post AI in Finance: Transforming Banking and Investment to reading list" title="Save post AI in Finance: Transforming Banking and Investment to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125224" data-content-user-id="2492184"> <a href="/iskender83/cloud-based-threat-intelligence-platforms-for-enterprise-security-1ek4" aria-labelledby="article-link-2125224" class="crayons-story__hidden-navigation-link">Cloud-Based Threat Intelligence Platforms for Enterprise Security</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/iskender83" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" alt="iskender83 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/iskender83" class="crayons-story__secondary fw-medium m:hidden"> iskender </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125224" aria-controls="story-author-preview-content-2125224" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="iskender profile details"> iskender </button> <div id="story-author-preview-content-2125224" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/iskender83" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">iskender</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2492184,"className":"User","name":"iskender"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2492184"></div> </div> </div> </div> </div> <a href="/iskender83/cloud-based-threat-intelligence-platforms-for-enterprise-security-1ek4" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:23:38Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732789418"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/iskender83/cloud-based-threat-intelligence-platforms-for-enterprise-security-1ek4" data-preload-image="" id="article-link-2125224"> Cloud-Based Threat Intelligence Platforms for Enterprise Security </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/iskender83/cloud-based-threat-intelligence-platforms-for-enterprise-security-1ek4#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Cloud-Based Threat Intelligence Platforms for Enterprise Security"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ao3f6uxy9p6hjng6dnj1qvi4pvxvtnor" class="crayons-icon"><title id="ao3f6uxy9p6hjng6dnj1qvi4pvxvtnor">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125224" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125224" data-article-author-id="2492184" aria-label="Save post Cloud-Based Threat Intelligence Platforms for Enterprise Security to reading list" title="Save post Cloud-Based Threat Intelligence Platforms for Enterprise Security to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125227" data-content-user-id="885899"> <a href="/excelsior2021/i-built-a-browser-game-2mh6" aria-labelledby="article-link-2125227" class="crayons-story__hidden-navigation-link">I built a browser game 🎮</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/excelsior2021" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F885899%2F5d41df04-e213-4e5b-80f7-157fa2fb0d05.jpeg" alt="excelsior2021 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/excelsior2021" class="crayons-story__secondary fw-medium m:hidden"> Jonathan </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125227" aria-controls="story-author-preview-content-2125227" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Jonathan profile details"> Jonathan </button> <div id="story-author-preview-content-2125227" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/excelsior2021" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F885899%2F5d41df04-e213-4e5b-80f7-157fa2fb0d05.jpeg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Jonathan</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":885899,"className":"User","name":"Jonathan"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="885899"></div> </div> </div> </div> </div> <a href="/excelsior2021/i-built-a-browser-game-2mh6" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:25:44Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732789544"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/excelsior2021/i-built-a-browser-game-2mh6" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9zvob4dw03u0eeg3bt1y.png" id="article-link-2125227"> I built a browser game 🎮 </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(255, 51, 224, 0.10); --tag-prefix: #ff33e0; --tag-bg-hover: rgba(255, 51, 224, 0.10); --tag-prefix-hover: #ff33e0; " href="/t/frontend"><span class="crayons-tag__prefix">#</span>frontend</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(86, 39, 101, 0.10); --tag-prefix: #562765; --tag-bg-hover: rgba(86, 39, 101, 0.10); --tag-prefix-hover: #562765; " href="/t/webdev"><span class="crayons-tag__prefix">#</span>webdev</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(247, 223, 30, 0.10); --tag-prefix: #f7df1e; --tag-bg-hover: rgba(247, 223, 30, 0.10); --tag-prefix-hover: #f7df1e; " href="/t/javascript"><span class="crayons-tag__prefix">#</span>javascript</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 131, 53, 0.10); --tag-prefix: #008335; --tag-bg-hover: rgba(0, 131, 53, 0.10); --tag-prefix-hover: #008335; " href="/t/beginners"><span class="crayons-tag__prefix">#</span>beginners</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/excelsior2021/i-built-a-browser-game-2mh6#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - I built a browser game 🎮"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a3gnh71093ebii51t16mf4g9dlc58tzf" class="crayons-icon"><title id="a3gnh71093ebii51t16mf4g9dlc58tzf">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125227" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125227" data-article-author-id="885899" aria-label="Save post I built a browser game 🎮 to reading list" title="Save post I built a browser game 🎮 to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125223" data-content-user-id="1015496"> <a href="/vaeng/from-heartbeats-to-cache-misses-making-big-numbers-hit-home-4ogi" aria-labelledby="article-link-2125223" class="crayons-story__hidden-navigation-link">From Heartbeats to Cache Misses: Making Big Numbers Hit Home</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/vaeng" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1015496%2F221c8adf-c6b4-4bf7-8b90-c3aa58c2dcb4.png" alt="vaeng profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/vaeng" class="crayons-story__secondary fw-medium m:hidden"> Christian Willner </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125223" aria-controls="story-author-preview-content-2125223" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Christian Willner profile details"> Christian Willner </button> <div id="story-author-preview-content-2125223" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/vaeng" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1015496%2F221c8adf-c6b4-4bf7-8b90-c3aa58c2dcb4.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Christian Willner</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1015496,"className":"User","name":"Christian Willner"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1015496"></div> </div> </div> </div> </div> <a href="/vaeng/from-heartbeats-to-cache-misses-making-big-numbers-hit-home-4ogi" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:22:54Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732789374"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/vaeng/from-heartbeats-to-cache-misses-making-big-numbers-hit-home-4ogi" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fofzi6636s4kbs18zz90c.jpg" id="article-link-2125223"> From Heartbeats to Cache Misses: Making Big Numbers Hit Home </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/data"><span class="crayons-tag__prefix">#</span>data</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/cache"><span class="crayons-tag__prefix">#</span>cache</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/vaeng/from-heartbeats-to-cache-misses-making-big-numbers-hit-home-4ogi#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - From Heartbeats to Cache Misses: Making Big Numbers Hit Home"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="avepr2vaje297odz81ea1hw7e57jhsy" class="crayons-icon"><title id="avepr2vaje297odz81ea1hw7e57jhsy">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125223" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125223" data-article-author-id="1015496" aria-label="Save post From Heartbeats to Cache Misses: Making Big Numbers Hit Home to reading list" title="Save post From Heartbeats to Cache Misses: Making Big Numbers Hit Home to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125205" data-content-user-id="2492184"> <a href="/iskender83/cloud-security-for-devops-teams-3m22" aria-labelledby="article-link-2125205" class="crayons-story__hidden-navigation-link">Cloud Security for DevOps Teams</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/iskender83" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" alt="iskender83 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/iskender83" class="crayons-story__secondary fw-medium m:hidden"> iskender </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125205" aria-controls="story-author-preview-content-2125205" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="iskender profile details"> iskender </button> <div id="story-author-preview-content-2125205" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/iskender83" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">iskender</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2492184,"className":"User","name":"iskender"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2492184"></div> </div> </div> </div> </div> <a href="/iskender83/cloud-security-for-devops-teams-3m22" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:18:39Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732789119"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/iskender83/cloud-security-for-devops-teams-3m22" data-preload-image="" id="article-link-2125205"> Cloud Security for DevOps Teams </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/iskender83/cloud-security-for-devops-teams-3m22#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Cloud Security for DevOps Teams"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aiflpl7zn4slfsskx055igfr0ldyhf8o" class="crayons-icon"><title id="aiflpl7zn4slfsskx055igfr0ldyhf8o">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 3 min read </small> <button type="button" id="article-save-button-2125205" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125205" data-article-author-id="2492184" aria-label="Save post Cloud Security for DevOps Teams to reading list" title="Save post Cloud Security for DevOps Teams to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125220" data-content-user-id="192552"> <a href="/abhayit2000/tips-for-smart-tv-app-testing-from-harlem-to-hollywood-fim" aria-labelledby="article-link-2125220" class="crayons-story__hidden-navigation-link">Tips For Smart TV App Testing From Harlem To Hollywood</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/abhayit2000" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F192552%2F7cb38e84-a424-4e46-ae72-1e11336ad594.png" alt="abhayit2000 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/abhayit2000" class="crayons-story__secondary fw-medium m:hidden"> Abhay Chaturvedi </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125220" aria-controls="story-author-preview-content-2125220" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Abhay Chaturvedi profile details"> Abhay Chaturvedi </button> <div id="story-author-preview-content-2125220" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/abhayit2000" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F192552%2F7cb38e84-a424-4e46-ae72-1e11336ad594.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Abhay Chaturvedi</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":192552,"className":"User","name":"Abhay Chaturvedi"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="192552"></div> </div> </div> </div> </div> <a href="/abhayit2000/tips-for-smart-tv-app-testing-from-harlem-to-hollywood-fim" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:21:47Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732789307"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/abhayit2000/tips-for-smart-tv-app-testing-from-harlem-to-hollywood-fim" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffiif55taau32sdf20aog.png" id="article-link-2125220"> Tips For Smart TV App Testing From Harlem To Hollywood </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(86, 39, 101, 0.10); --tag-prefix: #562765; --tag-bg-hover: rgba(86, 39, 101, 0.10); --tag-prefix-hover: #562765; " href="/t/webdev"><span class="crayons-tag__prefix">#</span>webdev</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/smarttv"><span class="crayons-tag__prefix">#</span>smarttv</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(1, 155, 101, 0.10); --tag-prefix: #019b65; --tag-bg-hover: rgba(1, 155, 101, 0.10); --tag-prefix-hover: #019b65; " href="/t/testing"><span class="crayons-tag__prefix">#</span>testing</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(175, 39, 242, 0.10); --tag-prefix: #af27f2; --tag-bg-hover: rgba(175, 39, 242, 0.10); --tag-prefix-hover: #af27f2; " href="/t/coding"><span class="crayons-tag__prefix">#</span>coding</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/abhayit2000/tips-for-smart-tv-app-testing-from-harlem-to-hollywood-fim#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Tips For Smart TV App Testing From Harlem To Hollywood"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ahly1kr1f6orbp2840o8eacbqpmngy2z" class="crayons-icon"><title id="ahly1kr1f6orbp2840o8eacbqpmngy2z">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 4 min read </small> <button type="button" id="article-save-button-2125220" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125220" data-article-author-id="192552" aria-label="Save post Tips For Smart TV App Testing From Harlem To Hollywood to reading list" title="Save post Tips For Smart TV App Testing From Harlem To Hollywood to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2121340" data-content-user-id="35090"> <a href="/mohessaid/how-to-host-hugo-in-vercel-3d57" aria-labelledby="article-link-2121340" class="crayons-story__hidden-navigation-link">How to Host Hugo in Vercel</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/mohessaid" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F35090%2F63237a06-6307-4763-9ffb-b29ee18f1b35.png" alt="mohessaid profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/mohessaid" class="crayons-story__secondary fw-medium m:hidden"> Mohammed E. MEZERREG </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2121340" aria-controls="story-author-preview-content-2121340" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Mohammed E. MEZERREG profile details"> Mohammed E. MEZERREG </button> <div id="story-author-preview-content-2121340" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/mohessaid" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F35090%2F63237a06-6307-4763-9ffb-b29ee18f1b35.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Mohammed E. MEZERREG</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":35090,"className":"User","name":"Mohammed E. MEZERREG"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="35090"></div> </div> </div> </div> </div> <a href="/mohessaid/how-to-host-hugo-in-vercel-3d57" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:30:55Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732789855"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/mohessaid/how-to-host-hugo-in-vercel-3d57" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5dw1cg199ya4koefrnjn.png" id="article-link-2121340"> How to Host Hugo in Vercel </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/hugo"><span class="crayons-tag__prefix">#</span>hugo</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/vercel"><span class="crayons-tag__prefix">#</span>vercel</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(41, 190, 176, 0.10); --tag-prefix: #29BEB0; --tag-bg-hover: rgba(41, 190, 176, 0.10); --tag-prefix-hover: #29BEB0; " href="/t/go"><span class="crayons-tag__prefix">#</span>go</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 4, 241, 0.10); --tag-prefix: #0004f1; --tag-bg-hover: rgba(0, 4, 241, 0.10); --tag-prefix-hover: #0004f1; " href="/t/website"><span class="crayons-tag__prefix">#</span>website</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/mohessaid/how-to-host-hugo-in-vercel-3d57#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - How to Host Hugo in Vercel"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="any9b9z5t0dktn5kmhzrgpwqa56jao4i" class="crayons-icon"><title id="any9b9z5t0dktn5kmhzrgpwqa56jao4i">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 4 min read </small> <button type="button" id="article-save-button-2121340" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2121340" data-article-author-id="35090" aria-label="Save post How to Host Hugo in Vercel to reading list" title="Save post How to Host Hugo in Vercel to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125190" data-content-user-id="2492184"> <a href="/iskender83/securing-cloud-based-machine-learning-models-3nb1" aria-labelledby="article-link-2125190" class="crayons-story__hidden-navigation-link">Securing Cloud-Based Machine Learning Models</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/iskender83" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" alt="iskender83 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/iskender83" class="crayons-story__secondary fw-medium m:hidden"> iskender </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125190" aria-controls="story-author-preview-content-2125190" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="iskender profile details"> iskender </button> <div id="story-author-preview-content-2125190" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/iskender83" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">iskender</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2492184,"className":"User","name":"iskender"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2492184"></div> </div> </div> </div> </div> <a href="/iskender83/securing-cloud-based-machine-learning-models-3nb1" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:02:55Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732788175"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/iskender83/securing-cloud-based-machine-learning-models-3nb1" data-preload-image="" id="article-link-2125190"> Securing Cloud-Based Machine Learning Models </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/iskender83/securing-cloud-based-machine-learning-models-3nb1#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Securing Cloud-Based Machine Learning Models"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a38in8d1gmg4spdfdizllnm8o61shplr" class="crayons-icon"><title id="a38in8d1gmg4spdfdizllnm8o61shplr">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125190" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125190" data-article-author-id="2492184" aria-label="Save post Securing Cloud-Based Machine Learning Models to reading list" title="Save post Securing Cloud-Based Machine Learning Models to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125187" data-content-user-id="569676"> <a href="/lukapeharda/why-i-hate-black-fridays-a-developers-thurs-dread-manifesto-48ep" aria-labelledby="article-link-2125187" class="crayons-story__hidden-navigation-link">Why I Hate Black Fridays: A Developer's Thurs-dread Manifesto</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/lukapeharda" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F569676%2F6239d72b-c1a6-4c01-8ba0-2cccad053476.png" alt="lukapeharda profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/lukapeharda" class="crayons-story__secondary fw-medium m:hidden"> Luka Peharda </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125187" aria-controls="story-author-preview-content-2125187" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Luka Peharda profile details"> Luka Peharda </button> <div id="story-author-preview-content-2125187" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/lukapeharda" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F569676%2F6239d72b-c1a6-4c01-8ba0-2cccad053476.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Luka Peharda</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":569676,"className":"User","name":"Luka Peharda"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="569676"></div> </div> </div> </div> </div> <a href="/lukapeharda/why-i-hate-black-fridays-a-developers-thurs-dread-manifesto-48ep" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:00:13Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732788013"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/lukapeharda/why-i-hate-black-fridays-a-developers-thurs-dread-manifesto-48ep" data-preload-image="" id="article-link-2125187"> Why I Hate Black Fridays: A Developer's Thurs-dread Manifesto </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/blackfriday"><span class="crayons-tag__prefix">#</span>blackfriday</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(86, 39, 101, 0.10); --tag-prefix: #562765; --tag-bg-hover: rgba(86, 39, 101, 0.10); --tag-prefix-hover: #562765; " href="/t/webdev"><span class="crayons-tag__prefix">#</span>webdev</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/lukapeharda/why-i-hate-black-fridays-a-developers-thurs-dread-manifesto-48ep#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Why I Hate Black Fridays: A Developer's Thurs-dread Manifesto"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="acx23w41aon4hkymgxztbz2msx7q2pie" class="crayons-icon"><title id="acx23w41aon4hkymgxztbz2msx7q2pie">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125187" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125187" data-article-author-id="569676" aria-label="Save post Why I Hate Black Fridays: A Developer's Thurs-dread Manifesto to reading list" title="Save post Why I Hate Black Fridays: A Developer's Thurs-dread Manifesto to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125193" data-content-user-id="2480275"> <a href="/dexterhale/choosing-the-right-image-format-for-your-website-3gga" aria-labelledby="article-link-2125193" class="crayons-story__hidden-navigation-link">Choosing the Right Image Format for Your Website</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/dexterhale" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2480275%2F227f7f4b-57a4-4293-8dd7-0a8f34e500b8.png" alt="dexterhale profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/dexterhale" class="crayons-story__secondary fw-medium m:hidden"> Dexter Hale </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125193" aria-controls="story-author-preview-content-2125193" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Dexter Hale profile details"> Dexter Hale </button> <div id="story-author-preview-content-2125193" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/dexterhale" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2480275%2F227f7f4b-57a4-4293-8dd7-0a8f34e500b8.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Dexter Hale</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2480275,"className":"User","name":"Dexter Hale"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2480275"></div> </div> </div> </div> </div> <a href="/dexterhale/choosing-the-right-image-format-for-your-website-3gga" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:05:09Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732788309"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/dexterhale/choosing-the-right-image-format-for-your-website-3gga" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F62gl03lgw5ph7wdr61wq.jpeg" id="article-link-2125193"> Choosing the Right Image Format for Your Website </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(86, 39, 101, 0.10); --tag-prefix: #562765; --tag-bg-hover: rgba(86, 39, 101, 0.10); --tag-prefix-hover: #562765; " href="/t/webdev"><span class="crayons-tag__prefix">#</span>webdev</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 131, 53, 0.10); --tag-prefix: #008335; --tag-bg-hover: rgba(0, 131, 53, 0.10); --tag-prefix-hover: #008335; " href="/t/beginners"><span class="crayons-tag__prefix">#</span>beginners</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(254, 255, 165, 0.10); --tag-prefix: #FEFFA5; --tag-bg-hover: rgba(254, 255, 165, 0.10); --tag-prefix-hover: #FEFFA5; " href="/t/tutorial"><span class="crayons-tag__prefix">#</span>tutorial</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(42, 7, 152, 0.10); --tag-prefix: #2A0798; --tag-bg-hover: rgba(42, 7, 152, 0.10); --tag-prefix-hover: #2A0798; " href="/t/productivity"><span class="crayons-tag__prefix">#</span>productivity</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/dexterhale/choosing-the-right-image-format-for-your-website-3gga#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Choosing the Right Image Format for Your Website"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a5q2vhy75t4t0uy9zdg90ybf26w7wogw" class="crayons-icon"><title id="a5q2vhy75t4t0uy9zdg90ybf26w7wogw">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125193" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125193" data-article-author-id="2480275" aria-label="Save post Choosing the Right Image Format for Your Website to reading list" title="Save post Choosing the Right Image Format for Your Website to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125196" data-content-user-id="2463093"> <a href="/junissen9/project-lead-code-gnl" aria-labelledby="article-link-2125196" class="crayons-story__hidden-navigation-link">Project lead code</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/junissen9" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2463093%2F3ee097bd-f1d8-47b0-a90a-66d454a7c421.jpg" alt="junissen9 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/junissen9" class="crayons-story__secondary fw-medium m:hidden"> Junissen </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125196" aria-controls="story-author-preview-content-2125196" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Junissen profile details"> Junissen </button> <div id="story-author-preview-content-2125196" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/junissen9" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2463093%2F3ee097bd-f1d8-47b0-a90a-66d454a7c421.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Junissen</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2463093,"className":"User","name":"Junissen"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2463093"></div> </div> </div> </div> </div> <a href="/junissen9/project-lead-code-gnl" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:07:50Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732788470"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/junissen9/project-lead-code-gnl" data-preload-image="" id="article-link-2125196"> Project lead code </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(6, 181, 0, 0.10); --tag-prefix: #06B500; --tag-bg-hover: rgba(6, 181, 0, 0.10); --tag-prefix-hover: #06B500; " href="/t/devops"><span class="crayons-tag__prefix">#</span>devops</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(38, 190, 0, 0.10); --tag-prefix: #26BE00; --tag-bg-hover: rgba(38, 190, 0, 0.10); --tag-prefix-hover: #26BE00; " href="/t/opensource"><span class="crayons-tag__prefix">#</span>opensource</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(126, 72, 16, 0.10); --tag-prefix: #7e4810; --tag-bg-hover: rgba(126, 72, 16, 0.10); --tag-prefix-hover: #7e4810; " href="/t/java"><span class="crayons-tag__prefix">#</span>java</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(163, 252, 85, 0.10); --tag-prefix: #a3fc55; --tag-bg-hover: rgba(163, 252, 85, 0.10); --tag-prefix-hover: #a3fc55; " href="/t/mobile"><span class="crayons-tag__prefix">#</span>mobile</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/junissen9/project-lead-code-gnl#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Project lead code"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="acr392jzks9mf09sujea1u0n9zbw81id" class="crayons-icon"><title id="acr392jzks9mf09sujea1u0n9zbw81id">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125196" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125196" data-article-author-id="2463093" aria-label="Save post Project lead code to reading list" title="Save post Project lead code to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125202" data-content-user-id="2438298"> <a href="/aaravjoshi/master-python-coroutines-create-custom-async-tools-for-powerful-concurrent-apps-1dpc" aria-labelledby="article-link-2125202" class="crayons-story__hidden-navigation-link">Master Python Coroutines: Create Custom Async Tools for Powerful Concurrent Apps</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/aaravjoshi" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2438298%2F1ebf28a1-b750-44d1-8802-ce7efd90c8ba.jpg" alt="aaravjoshi profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/aaravjoshi" class="crayons-story__secondary fw-medium m:hidden"> Aarav Joshi </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125202" aria-controls="story-author-preview-content-2125202" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Aarav Joshi profile details"> Aarav Joshi </button> <div id="story-author-preview-content-2125202" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/aaravjoshi" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2438298%2F1ebf28a1-b750-44d1-8802-ce7efd90c8ba.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Aarav Joshi</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2438298,"className":"User","name":"Aarav Joshi"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2438298"></div> </div> </div> </div> </div> <a href="/aaravjoshi/master-python-coroutines-create-custom-async-tools-for-powerful-concurrent-apps-1dpc" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:13:29Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732788809"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/aaravjoshi/master-python-coroutines-create-custom-async-tools-for-powerful-concurrent-apps-1dpc" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fjsschools.com%2Fimages%2Fcc605c74-d8c3-428a-ab6e-14eb7f665530.webp" id="article-link-2125202"> Master Python Coroutines: Create Custom Async Tools for Powerful Concurrent Apps </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 0, 0, 0.10); --tag-prefix: #000000; --tag-bg-hover: rgba(0, 0, 0, 0.10); --tag-prefix-hover: #000000; " href="/t/devto"><span class="crayons-tag__prefix">#</span>devto</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(30, 56, 187, 0.10); --tag-prefix: #1E38BB; --tag-bg-hover: rgba(30, 56, 187, 0.10); --tag-prefix-hover: #1E38BB; " href="/t/python"><span class="crayons-tag__prefix">#</span>python</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/softwareengineering"><span class="crayons-tag__prefix">#</span>softwareengineering</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/aaravjoshi/master-python-coroutines-create-custom-async-tools-for-powerful-concurrent-apps-1dpc" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2125202" aria-label="Add a comment to post - Master Python Coroutines: Create Custom Async Tools for Powerful Concurrent Apps"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">1<span class="hidden s:inline"> reaction</span></span> </div> </a> <a href="/aaravjoshi/master-python-coroutines-create-custom-async-tools-for-powerful-concurrent-apps-1dpc#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Master Python Coroutines: Create Custom Async Tools for Powerful Concurrent Apps"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="arx150vwynuf2h5s9negmex62xhwpe8f" class="crayons-icon"><title id="arx150vwynuf2h5s9negmex62xhwpe8f">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 6 min read </small> <button type="button" id="article-save-button-2125202" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125202" data-article-author-id="2438298" aria-label="Save post Master Python Coroutines: Create Custom Async Tools for Powerful Concurrent Apps to reading list" title="Save post Master Python Coroutines: Create Custom Async Tools for Powerful Concurrent Apps to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125200" data-content-user-id="577527"> <a href="/marcuskohlberg/-hoa" aria-labelledby="article-link-2125200" class="crayons-story__hidden-navigation-link">[Boost]</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/marcuskohlberg" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F577527%2Fdc97c6e3-cd4f-4618-b7a4-b04753829937.jpg" alt="marcuskohlberg profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/marcuskohlberg" class="crayons-story__secondary fw-medium m:hidden"> Marcus Kohlberg </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125200" aria-controls="story-author-preview-content-2125200" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Marcus Kohlberg profile details"> Marcus Kohlberg </button> <div id="story-author-preview-content-2125200" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/marcuskohlberg" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F577527%2Fdc97c6e3-cd4f-4618-b7a4-b04753829937.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Marcus Kohlberg</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":577527,"className":"User","name":"Marcus Kohlberg"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="577527"></div> </div> </div> </div> </div> <a href="/marcuskohlberg/-hoa" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T10:12:05Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732788725"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/marcuskohlberg/-hoa" data-preload-image="" id="article-link-2125200"> [Boost] </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/marcuskohlberg/-hoa#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - [Boost]"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="amu2ih34xdisn899zddiic2ar8y9qaw3" class="crayons-icon"><title id="amu2ih34xdisn899zddiic2ar8y9qaw3">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2125200" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125200" data-article-author-id="577527" aria-label="Save post [Boost] to reading list" title="Save post [Boost] to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125175" data-content-user-id="2046075"> <a href="/akhil_mittal/leveraging-argocd-for-kubernetes-applications-implementation-use-cases-and-best-practices-5dmo" aria-labelledby="article-link-2125175" class="crayons-story__hidden-navigation-link">Leveraging ArgoCD for Kubernetes Applications: Implementation, Use Cases, and Best Practices</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/akhil_mittal" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2046075%2F38b1c82a-43e6-4322-8ae9-4dad6530ab6f.jpg" alt="akhil_mittal profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/akhil_mittal" class="crayons-story__secondary fw-medium m:hidden"> akhil mittal </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125175" aria-controls="story-author-preview-content-2125175" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="akhil mittal profile details"> akhil mittal </button> <div id="story-author-preview-content-2125175" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/akhil_mittal" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2046075%2F38b1c82a-43e6-4322-8ae9-4dad6530ab6f.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">akhil mittal</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2046075,"className":"User","name":"akhil mittal"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2046075"></div> </div> </div> </div> </div> <a href="/akhil_mittal/leveraging-argocd-for-kubernetes-applications-implementation-use-cases-and-best-practices-5dmo" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T09:53:39Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732787619"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/akhil_mittal/leveraging-argocd-for-kubernetes-applications-implementation-use-cases-and-best-practices-5dmo" data-preload-image="" id="article-link-2125175"> Leveraging ArgoCD for Kubernetes Applications: Implementation, Use Cases, and Best Practices </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/gitops"><span class="crayons-tag__prefix">#</span>gitops</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/argocd"><span class="crayons-tag__prefix">#</span>argocd</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(50, 109, 230, 0.10); --tag-prefix: #326de6; --tag-bg-hover: rgba(50, 109, 230, 0.10); --tag-prefix-hover: #326de6; " href="/t/kubernetes"><span class="crayons-tag__prefix">#</span>kubernetes</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(255, 102, 237, 0.10); --tag-prefix: #ff66ed; --tag-bg-hover: rgba(255, 102, 237, 0.10); --tag-prefix-hover: #ff66ed; " href="/t/learning"><span class="crayons-tag__prefix">#</span>learning</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/akhil_mittal/leveraging-argocd-for-kubernetes-applications-implementation-use-cases-and-best-practices-5dmo#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Leveraging ArgoCD for Kubernetes Applications: Implementation, Use Cases, and Best Practices"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="asxiwckfjjqy63fupqef8vfyg4mlu41x" class="crayons-icon"><title id="asxiwckfjjqy63fupqef8vfyg4mlu41x">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 3 min read </small> <button type="button" id="article-save-button-2125175" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125175" data-article-author-id="2046075" aria-label="Save post Leveraging ArgoCD for Kubernetes Applications: Implementation, Use Cases, and Best Practices to reading list" title="Save post Leveraging ArgoCD for Kubernetes Applications: Implementation, Use Cases, and Best Practices to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125183" data-content-user-id="2492184"> <a href="/iskender83/ai-for-cloud-based-risk-management-and-threat-intelligence-m7i" aria-labelledby="article-link-2125183" class="crayons-story__hidden-navigation-link">AI for Cloud-Based Risk Management and Threat Intelligence</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/iskender83" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" alt="iskender83 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/iskender83" class="crayons-story__secondary fw-medium m:hidden"> iskender </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125183" aria-controls="story-author-preview-content-2125183" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="iskender profile details"> iskender </button> <div id="story-author-preview-content-2125183" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/iskender83" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">iskender</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2492184,"className":"User","name":"iskender"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2492184"></div> </div> </div> </div> </div> <a href="/iskender83/ai-for-cloud-based-risk-management-and-threat-intelligence-m7i" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T09:57:58Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732787878"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/iskender83/ai-for-cloud-based-risk-management-and-threat-intelligence-m7i" data-preload-image="" id="article-link-2125183"> AI for Cloud-Based Risk Management and Threat Intelligence </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/iskender83/ai-for-cloud-based-risk-management-and-threat-intelligence-m7i#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - AI for Cloud-Based Risk Management and Threat Intelligence"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ahkg9rzd0pij6abs0b573lpekiliz5sx" class="crayons-icon"><title id="ahkg9rzd0pij6abs0b573lpekiliz5sx">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 3 min read </small> <button type="button" id="article-save-button-2125183" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125183" data-article-author-id="2492184" aria-label="Save post AI for Cloud-Based Risk Management and Threat Intelligence to reading list" title="Save post AI for Cloud-Based Risk Management and Threat Intelligence to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125182" data-content-user-id="2438298"> <a href="/aaravjoshi/supercharge-your-spring-boot-testcontainers-and-chaos-engineering-for-bulletproof-apps-1l3l" aria-labelledby="article-link-2125182" class="crayons-story__hidden-navigation-link">Supercharge Your Spring Boot: TestContainers and Chaos Engineering for Bulletproof Apps</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/aaravjoshi" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2438298%2F1ebf28a1-b750-44d1-8802-ce7efd90c8ba.jpg" alt="aaravjoshi profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/aaravjoshi" class="crayons-story__secondary fw-medium m:hidden"> Aarav Joshi </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125182" aria-controls="story-author-preview-content-2125182" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Aarav Joshi profile details"> Aarav Joshi </button> <div id="story-author-preview-content-2125182" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/aaravjoshi" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2438298%2F1ebf28a1-b750-44d1-8802-ce7efd90c8ba.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Aarav Joshi</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2438298,"className":"User","name":"Aarav Joshi"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2438298"></div> </div> </div> </div> </div> <a href="/aaravjoshi/supercharge-your-spring-boot-testcontainers-and-chaos-engineering-for-bulletproof-apps-1l3l" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T09:57:54Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732787874"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/aaravjoshi/supercharge-your-spring-boot-testcontainers-and-chaos-engineering-for-bulletproof-apps-1l3l" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fjsschools.com%2Fimages%2F4090205c-fcc9-469d-85a7-2b177075254b.webp" id="article-link-2125182"> Supercharge Your Spring Boot: TestContainers and Chaos Engineering for Bulletproof Apps </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 0, 0, 0.10); --tag-prefix: #000000; --tag-bg-hover: rgba(0, 0, 0, 0.10); --tag-prefix-hover: #000000; " href="/t/devto"><span class="crayons-tag__prefix">#</span>devto</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/springboot"><span class="crayons-tag__prefix">#</span>springboot</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/softwareengineering"><span class="crayons-tag__prefix">#</span>softwareengineering</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/aaravjoshi/supercharge-your-spring-boot-testcontainers-and-chaos-engineering-for-bulletproof-apps-1l3l" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2125182" aria-label="Add a comment to post - Supercharge Your Spring Boot: TestContainers and Chaos Engineering for Bulletproof Apps"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">1<span class="hidden s:inline"> reaction</span></span> </div> </a> <a href="/aaravjoshi/supercharge-your-spring-boot-testcontainers-and-chaos-engineering-for-bulletproof-apps-1l3l#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Supercharge Your Spring Boot: TestContainers and Chaos Engineering for Bulletproof Apps"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="am3h12zp6azbeh4qh7nv9c8bulsjpj57" class="crayons-icon"><title id="am3h12zp6azbeh4qh7nv9c8bulsjpj57">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 6 min read </small> <button type="button" id="article-save-button-2125182" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125182" data-article-author-id="2438298" aria-label="Save post Supercharge Your Spring Boot: TestContainers and Chaos Engineering for Bulletproof Apps to reading list" title="Save post Supercharge Your Spring Boot: TestContainers and Chaos Engineering for Bulletproof Apps to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125168" data-content-user-id="2492184"> <a href="/iskender83/blockchain-for-secure-cloud-based-digital-identity-45f" aria-labelledby="article-link-2125168" class="crayons-story__hidden-navigation-link">Blockchain for Secure Cloud-Based Digital Identity</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/iskender83" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" alt="iskender83 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/iskender83" class="crayons-story__secondary fw-medium m:hidden"> iskender </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125168" aria-controls="story-author-preview-content-2125168" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="iskender profile details"> iskender </button> <div id="story-author-preview-content-2125168" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/iskender83" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">iskender</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2492184,"className":"User","name":"iskender"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2492184"></div> </div> </div> </div> </div> <a href="/iskender83/blockchain-for-secure-cloud-based-digital-identity-45f" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T09:47:58Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732787278"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/iskender83/blockchain-for-secure-cloud-based-digital-identity-45f" data-preload-image="" id="article-link-2125168"> Blockchain for Secure Cloud-Based Digital Identity </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/iskender83/blockchain-for-secure-cloud-based-digital-identity-45f#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Blockchain for Secure Cloud-Based Digital Identity"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="amqx7p61vrnmeazzrh8xe18i52hxbzpw" class="crayons-icon"><title id="amqx7p61vrnmeazzrh8xe18i52hxbzpw">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 3 min read </small> <button type="button" id="article-save-button-2125168" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125168" data-article-author-id="2492184" aria-label="Save post Blockchain for Secure Cloud-Based Digital Identity to reading list" title="Save post Blockchain for Secure Cloud-Based Digital Identity to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125173" data-content-user-id="2492184"> <a href="/iskender83/edge-computing-security-challenges-37d2" aria-labelledby="article-link-2125173" class="crayons-story__hidden-navigation-link">Edge Computing Security Challenges</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/iskender83" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" alt="iskender83 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/iskender83" class="crayons-story__secondary fw-medium m:hidden"> iskender </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125173" aria-controls="story-author-preview-content-2125173" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="iskender profile details"> iskender </button> <div id="story-author-preview-content-2125173" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/iskender83" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">iskender</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2492184,"className":"User","name":"iskender"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2492184"></div> </div> </div> </div> </div> <a href="/iskender83/edge-computing-security-challenges-37d2" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T09:52:56Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732787576"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/iskender83/edge-computing-security-challenges-37d2" data-preload-image="" id="article-link-2125173"> Edge Computing Security Challenges </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/iskender83/edge-computing-security-challenges-37d2#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Edge Computing Security Challenges"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ail9wv06uc4emcvxxj3ekpn0vvjsiz00" class="crayons-icon"><title id="ail9wv06uc4emcvxxj3ekpn0vvjsiz00">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125173" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125173" data-article-author-id="2492184" aria-label="Save post Edge Computing Security Challenges to reading list" title="Save post Edge Computing Security Challenges to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125178" data-content-user-id="1241213"> <a href="/kastuv/solid-principle-tricks-5enh" aria-labelledby="article-link-2125178" class="crayons-story__hidden-navigation-link">Solid Principle Tricks</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/kastuv" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1241213%2Fe1d5cf53-0046-4f02-b5e4-e2cd0665ed93.jpeg" alt="kastuv profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/kastuv" class="crayons-story__secondary fw-medium m:hidden"> Kaustuv Pokharel </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125178" aria-controls="story-author-preview-content-2125178" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Kaustuv Pokharel profile details"> Kaustuv Pokharel </button> <div id="story-author-preview-content-2125178" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/kastuv" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1241213%2Fe1d5cf53-0046-4f02-b5e4-e2cd0665ed93.jpeg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Kaustuv Pokharel</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1241213,"className":"User","name":"Kaustuv Pokharel"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1241213"></div> </div> </div> </div> </div> <a href="/kastuv/solid-principle-tricks-5enh" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T09:56:21Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732787781"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/kastuv/solid-principle-tricks-5enh" data-preload-image="" id="article-link-2125178"> Solid Principle Tricks </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/kastuv/solid-principle-tricks-5enh#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Solid Principle Tricks"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="acz70tp8rsxh8haf8y4xub0os04pvpy2" class="crayons-icon"><title id="acz70tp8rsxh8haf8y4xub0os04pvpy2">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 3 min read </small> <button type="button" id="article-save-button-2125178" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125178" data-article-author-id="1241213" aria-label="Save post Solid Principle Tricks to reading list" title="Save post Solid Principle Tricks to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125164" data-content-user-id="627952"> <a href="/juniourrau/asynchronous-javascript-the-journey-from-callbacks-to-async-await-eal" aria-labelledby="article-link-2125164" class="crayons-story__hidden-navigation-link">Asynchronous JavaScript - The Journey from Callbacks to Async Await</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/juniourrau" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F627952%2Fac6cb717-a0ac-4f9a-80b3-094dc5c545a4.png" alt="juniourrau profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/juniourrau" class="crayons-story__secondary fw-medium m:hidden"> Ravin Rau </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125164" aria-controls="story-author-preview-content-2125164" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Ravin Rau profile details"> Ravin Rau </button> <div id="story-author-preview-content-2125164" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/juniourrau" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F627952%2Fac6cb717-a0ac-4f9a-80b3-094dc5c545a4.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Ravin Rau</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":627952,"className":"User","name":"Ravin Rau"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="627952"></div> </div> </div> </div> </div> <a href="/juniourrau/asynchronous-javascript-the-journey-from-callbacks-to-async-await-eal" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T09:43:42Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732787022"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/juniourrau/asynchronous-javascript-the-journey-from-callbacks-to-async-await-eal" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxry8h8kld38enmhhixg5.png" id="article-link-2125164"> Asynchronous JavaScript - The Journey from Callbacks to Async Await </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(247, 223, 30, 0.10); --tag-prefix: #f7df1e; --tag-bg-hover: rgba(247, 223, 30, 0.10); --tag-prefix-hover: #f7df1e; " href="/t/javascript"><span class="crayons-tag__prefix">#</span>javascript</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(86, 39, 101, 0.10); --tag-prefix: #562765; --tag-bg-hover: rgba(86, 39, 101, 0.10); --tag-prefix-hover: #562765; " href="/t/webdev"><span class="crayons-tag__prefix">#</span>webdev</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 131, 53, 0.10); --tag-prefix: #008335; --tag-bg-hover: rgba(0, 131, 53, 0.10); --tag-prefix-hover: #008335; " href="/t/beginners"><span class="crayons-tag__prefix">#</span>beginners</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/juniourrau/asynchronous-javascript-the-journey-from-callbacks-to-async-await-eal#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Asynchronous JavaScript - The Journey from Callbacks to Async Await"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a7t3424wtaz1kwff1m2jgoq0tff6bwqi" class="crayons-icon"><title id="a7t3424wtaz1kwff1m2jgoq0tff6bwqi">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 10 min read </small> <button type="button" id="article-save-button-2125164" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125164" data-article-author-id="627952" aria-label="Save post Asynchronous JavaScript - The Journey from Callbacks to Async Await to reading list" title="Save post Asynchronous JavaScript - The Journey from Callbacks to Async Await to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125181" data-content-user-id="944478"> <a href="/mdarifulhaque/2290-minimum-obstacle-removal-to-reach-corner-4fg6" aria-labelledby="article-link-2125181" class="crayons-story__hidden-navigation-link">2290. Minimum Obstacle Removal to Reach Corner</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/mdarifulhaque" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F944478%2F148ec474-230c-4c52-8b8e-5aba51bc6d2e.jpeg" alt="mdarifulhaque profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/mdarifulhaque" class="crayons-story__secondary fw-medium m:hidden"> MD ARIFUL HAQUE </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125181" aria-controls="story-author-preview-content-2125181" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="MD ARIFUL HAQUE profile details"> MD ARIFUL HAQUE </button> <div id="story-author-preview-content-2125181" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/mdarifulhaque" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F944478%2F148ec474-230c-4c52-8b8e-5aba51bc6d2e.jpeg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">MD ARIFUL HAQUE</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":944478,"className":"User","name":"MD ARIFUL HAQUE"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="944478"></div> </div> </div> </div> </div> <a href="/mdarifulhaque/2290-minimum-obstacle-removal-to-reach-corner-4fg6" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T09:57:37Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732787857"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/mdarifulhaque/2290-minimum-obstacle-removal-to-reach-corner-4fg6" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4kzm76nk1te6wgumnjan.png" id="article-link-2125181"> 2290. Minimum Obstacle Removal to Reach Corner </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(35, 161, 170, 0.10); --tag-prefix: #23A1AA; --tag-bg-hover: rgba(35, 161, 170, 0.10); --tag-prefix-hover: #23A1AA; " href="/t/php"><span class="crayons-tag__prefix">#</span>php</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 0, 0, 0.10); --tag-prefix: #000000; --tag-bg-hover: rgba(0, 0, 0, 0.10); --tag-prefix-hover: #000000; " href="/t/leetcode"><span class="crayons-tag__prefix">#</span>leetcode</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 128, 0, 0.10); --tag-prefix: #008000; --tag-bg-hover: rgba(0, 128, 0, 0.10); --tag-prefix-hover: #008000; " href="/t/algorithms"><span class="crayons-tag__prefix">#</span>algorithms</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/mdarifulhaque/2290-minimum-obstacle-removal-to-reach-corner-4fg6#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - 2290. Minimum Obstacle Removal to Reach Corner"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a45fug9t03c4864ldp39k7db5qvbu1nb" class="crayons-icon"><title id="a45fug9t03c4864ldp39k7db5qvbu1nb">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 4 min read </small> <button type="button" id="article-save-button-2125181" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125181" data-article-author-id="944478" aria-label="Save post 2290. Minimum Obstacle Removal to Reach Corner to reading list" title="Save post 2290. Minimum Obstacle Removal to Reach Corner to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2123382" data-content-user-id="121492"> <a href="/raguram90/basic-cascading-form-react-native-20ao" aria-labelledby="article-link-2123382" class="crayons-story__hidden-navigation-link">Basic Cascading Form React Native</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/raguram90" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F121492%2F8367eb66-e404-4ee3-9ed2-675ba7ec28da.jpeg" alt="raguram90 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/raguram90" class="crayons-story__secondary fw-medium m:hidden"> RamR </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2123382" aria-controls="story-author-preview-content-2123382" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="RamR profile details"> RamR </button> <div id="story-author-preview-content-2123382" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/raguram90" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F121492%2F8367eb66-e404-4ee3-9ed2-675ba7ec28da.jpeg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">RamR</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":121492,"className":"User","name":"RamR"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="121492"></div> </div> </div> </div> </div> <a href="/raguram90/basic-cascading-form-react-native-20ao" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T09:03:21Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732784601"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/raguram90/basic-cascading-form-react-native-20ao" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F443kom6mc8pnkpx3vzmd.jpg" id="article-link-2123382"> Basic Cascading Form React Native </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(247, 223, 30, 0.10); --tag-prefix: #f7df1e; --tag-bg-hover: rgba(247, 223, 30, 0.10); --tag-prefix-hover: #f7df1e; " href="/t/javascript"><span class="crayons-tag__prefix">#</span>javascript</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(34, 34, 34, 0.10); --tag-prefix: #222222; --tag-bg-hover: rgba(34, 34, 34, 0.10); --tag-prefix-hover: #222222; " href="/t/react"><span class="crayons-tag__prefix">#</span>react</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(86, 160, 54, 0.10); --tag-prefix: #56a036; --tag-bg-hover: rgba(86, 160, 54, 0.10); --tag-prefix-hover: #56a036; " href="/t/android"><span class="crayons-tag__prefix">#</span>android</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(12, 118, 226, 0.10); --tag-prefix: #0c76e2; --tag-bg-hover: rgba(12, 118, 226, 0.10); --tag-prefix-hover: #0c76e2; " href="/t/ios"><span class="crayons-tag__prefix">#</span>ios</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/raguram90/basic-cascading-form-react-native-20ao" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2123382" aria-label="Add a comment to post - Basic Cascading Form React Native"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">1<span class="hidden s:inline"> reaction</span></span> </div> </a> <a href="/raguram90/basic-cascading-form-react-native-20ao#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Basic Cascading Form React Native"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ac2n5oysstr6pn1effjr4prrjbpe7zor" class="crayons-icon"><title id="ac2n5oysstr6pn1effjr4prrjbpe7zor">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 5 min read </small> <button type="button" id="article-save-button-2123382" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2123382" data-article-author-id="121492" aria-label="Save post Basic Cascading Form React Native to reading list" title="Save post Basic Cascading Form React Native to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2125136" data-content-user-id="2492184"> <a href="/iskender83/cloud-security-policies-for-critical-infrastructure-protection-2me2" aria-labelledby="article-link-2125136" class="crayons-story__hidden-navigation-link">Cloud Security Policies for Critical Infrastructure Protection</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/iskender83" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" alt="iskender83 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/iskender83" class="crayons-story__secondary fw-medium m:hidden"> iskender </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2125136" aria-controls="story-author-preview-content-2125136" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="iskender profile details"> iskender </button> <div id="story-author-preview-content-2125136" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/iskender83" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2492184%2F6d36a2c1-9ca7-4ad7-9286-5e6494948682.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">iskender</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2492184,"className":"User","name":"iskender"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2492184"></div> </div> </div> </div> </div> <a href="/iskender83/cloud-security-policies-for-critical-infrastructure-protection-2me2" class="crayons-story__tertiary fs-xs"><time datetime="2024-11-28T09:27:54Z">Nov 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1732786074"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="/iskender83/cloud-security-policies-for-critical-infrastructure-protection-2me2" data-preload-image="" id="article-link-2125136"> Cloud Security Policies for Critical Infrastructure Protection </a> </h2> <div class="crayons-story__tags"> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="/iskender83/cloud-security-policies-for-critical-infrastructure-protection-2me2#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Cloud Security Policies for Critical Infrastructure Protection"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a85p0o5wt74bgkuqdloud3v5w67z77eu" class="crayons-icon"><title id="a85p0o5wt74bgkuqdloud3v5w67z77eu">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2125136" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2125136" data-article-author-id="2492184" aria-label="Save post Cloud Security Policies for Critical Infrastructure Protection to reading list" title="Save post Cloud Security Policies for Critical Infrastructure Protection to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="placeholder-div"></div> <div class="single-article-small-pic" id="article-index-hidden-div" style="display:none"></div> </div> <script src="https://assets.dev.to/assets/homePageFeedShortcuts-f7364bc2d6cb139c03e7fe80e32782ba5af34857d2b308e3caa8d902e579a3af.js" defer="defer"></script> <script src="https://assets.dev.to/assets/feedPreviewCards-8d16b0b656456a28c0a290f756cf6e21e19833111c4796f48c631bfea8323d51.js" defer="defer"></script> <div id="followed-podcasts" data-episodes="null"></div> <div class="loading-articles" id="loading-articles"> loading... </div> </main> <div id="sidebar-wrapper-right" class="sidebar-wrapper sidebar-wrapper-right crayons-layout__sidebar-right crayons-layout__content"> <aside class="side-bar sidebar-additional showing grid gap-4" id="sidebar-additional"> <div class="crayons-card crayons-card--secondary crayons-bb billboard js-billboard" style="" data-display-unit data-id="137093" data-category-click="click" data-category-impression="impression" data-context-type="home" data-special="nothing" data-article-id="" data-type-of="in_house"> <div class="crayons-bb__header relative"> <div class="crayons-bb__title">👋 What's happening this week</div> <button id="sponsorship-dropdown-trigger-137093" aria-controls="sponsorship-dropdown-137093" aria-expanded="false" aria-haspopup="true" class="dropBtn crayons-bb__dropdown crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon" aria-label="Toggle dropdown menu"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="aoeeowj5c6k8mtjv5585z5nx81eoodv4" class="crayons-icon pointer-events-none"><title id="aoeeowj5c6k8mtjv5585z5nx81eoodv4">Dropdown menu</title> <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path> </svg> </button> <div id="sponsorship-dropdown-137093" class="crayons-dropdown sponsorship-dropdown right-0"> <ul class="list-none m-0"> <li> <a class="crayons-link crayons-link--block" href='/billboards'> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="16" height="16" role="img" aria-hidden="true" class="crayons-icon c-btn__icon"> <path d="M12 22C6.477 22 2 17.523 2 12S6.477 2 12 2s10 4.477 10 10-4.477 10-10 10zm0-2a8 8 0 100-16 8 8 0 000 16zM11 7h2v2h-2V7zm0 4h2v6h-2v-6z"></path> </svg> What's a billboard? </a> </li> <li> <a class="crayons-link crayons-link--block" href='/settings/customization#sponsors'> <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" role="img" aria-hidden="true" class="crayons-icon c-btn__icon"> <path d="M3.34 16.9999C2.91727 16.2689 2.58866 15.4874 2.362 14.6739C2.85531 14.423 3.26959 14.0406 3.55903 13.5688C3.84846 13.0971 4.00176 12.5545 4.00197 12.0011C4.00218 11.4476 3.84928 10.9049 3.5602 10.4329C3.27112 9.961 2.85712 9.57821 2.364 9.32694C2.81604 7.69243 3.67673 6.1999 4.865 4.98994C5.32909 5.29167 5.86762 5.45911 6.42098 5.47373C6.97434 5.48834 7.52095 5.34958 8.00033 5.07278C8.47971 4.79598 8.87315 4.39194 9.13713 3.90539C9.4011 3.41883 9.52531 2.86872 9.496 2.31594C11.1381 1.89157 12.8612 1.89226 14.503 2.31795C14.474 2.87071 14.5984 3.42073 14.8626 3.90715C15.1268 4.39357 15.5204 4.79742 15.9998 5.07401C16.4793 5.35059 17.0259 5.48913 17.5793 5.4743C18.1326 5.45946 18.671 5.29183 19.135 4.98994C19.714 5.57994 20.228 6.25095 20.66 6.99995C21.093 7.74895 21.417 8.52995 21.638 9.32595C21.1447 9.57685 20.7304 9.95932 20.441 10.4311C20.1515 10.9028 19.9982 11.4454 19.998 11.9988C19.9978 12.5523 20.1507 13.095 20.4398 13.5669C20.7289 14.0389 21.1429 14.4217 21.636 14.6729C21.184 16.3075 20.3233 17.8 19.135 19.0099C18.6709 18.7082 18.1324 18.5408 17.579 18.5262C17.0257 18.5115 16.479 18.6503 15.9997 18.9271C15.5203 19.2039 15.1268 19.6079 14.8629 20.0945C14.5989 20.5811 14.4747 21.1312 14.504 21.6839C12.8619 22.1083 11.1388 22.1076 9.497 21.6819C9.52605 21.1292 9.4016 20.5792 9.13742 20.0927C8.87324 19.6063 8.47964 19.2025 8.00017 18.9259C7.5207 18.6493 6.97405 18.5108 6.42073 18.5256C5.8674 18.5404 5.32896 18.7081 4.865 19.0099C4.27399 18.4069 3.76159 17.7315 3.34 16.9999ZM9 17.1959C10.0656 17.8106 10.8668 18.797 11.25 19.9659C11.749 20.0129 12.25 20.0139 12.749 19.9669C13.1324 18.7978 13.934 17.8114 15 17.1969C16.0652 16.5806 17.3205 16.3794 18.525 16.6319C18.815 16.2239 19.065 15.7889 19.273 15.3339C18.4524 14.4174 17.9991 13.2302 18 11.9999C18 10.7399 18.47 9.56295 19.273 8.66595C19.0635 8.21109 18.8125 7.77658 18.523 7.36795C17.3193 7.62025 16.0648 7.41942 15 6.80395C13.9344 6.18932 13.1332 5.20293 12.75 4.03394C12.251 3.98694 11.75 3.98594 11.251 4.03294C10.8676 5.20209 10.066 6.1885 9 6.80295C7.93478 7.41926 6.67948 7.62046 5.475 7.36795C5.18556 7.77623 4.93513 8.21081 4.727 8.66595C5.54757 9.5825 6.00088 10.7697 6 11.9999C6 13.2599 5.53 14.4369 4.727 15.3339C4.93647 15.7888 5.18754 16.2233 5.477 16.6319C6.68072 16.3796 7.93521 16.5805 9 17.1959ZM12 14.9999C11.2044 14.9999 10.4413 14.6839 9.87868 14.1213C9.31607 13.5587 9 12.7956 9 11.9999C9 11.2043 9.31607 10.4412 9.87868 9.87862C10.4413 9.31602 11.2044 8.99995 12 8.99995C12.7956 8.99995 13.5587 9.31602 14.1213 9.87862C14.6839 10.4412 15 11.2043 15 11.9999C15 12.7956 14.6839 13.5587 14.1213 14.1213C13.5587 14.6839 12.7956 14.9999 12 14.9999ZM12 12.9999C12.2652 12.9999 12.5196 12.8946 12.7071 12.7071C12.8946 12.5195 13 12.2652 13 11.9999C13 11.7347 12.8946 11.4804 12.7071 11.2928C12.5196 11.1053 12.2652 10.9999 12 10.9999C11.7348 10.9999 11.4804 11.1053 11.2929 11.2928C11.1054 11.4804 11 11.7347 11 11.9999C11 12.2652 11.1054 12.5195 11.2929 12.7071C11.4804 12.8946 11.7348 12.9999 12 12.9999Z" fill="black"></path> </svg> Manage preferences </a> </li> <hr /> <li> <a class="crayons-link crayons-link--block" href="/report-abuse?billboard=137093"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="16" height="16" role="img" aria-hidden="true" class="crayons-icon c-btn__icon"> <path d="M12.382 3a1 1 0 0 1 .894.553L14 5h6a1 1 0 0 1 1 1v11a1 1 0 0 1-1 1h-6.382a1 1 0 0 1-.894-.553L12 16H5v6H3V3h9.382Zm-.618 2H5v9h8.236l1 2H19V7h-6.236l-1-2Z"></path> </svg> Report billboard </a> </li> </ul> </div> </div> <div class="p-1 pt-3 text-styles text-styles--billboard"> <h3>Challenges 🤗</h3> <div style="border: 2px solid #3c3d40; padding: 12px; border-radius: 8px; margin-top: 10px; margin-bottom: 15px"> <p style="margin-bottom:10px;">Just Launched ️🔥</p> <img src="https://media2.dev.to/dynamic/image/width=880%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhl16q1vibqwfu9d87hwm.png" style="width:100%;display:block;margin-bottom: 10px;" height="1641" width="3911" loading="lazy"> <p style="margin-bottom: 5px;"><strong><a href="https://dev.to/devteam/join-us-for-the-devcycle-feature-flag-challenge-1000-in-prizes-1h23?bb=137093">DevCycle Feature Flag Challenge</a></strong></p> <p style="margin-bottom: 5px;"><em>Submissions Due December 8.</em></p> </div> <h4>Have a great week ❤️</h4> </div> </div> <section class="crayons-card crayons-card--secondary crayons-layout__content"> <header class="crayons-card__header"> <h3 class="crayons-subtitle-2"><a href="/t/discuss" class="crayons-link">#discuss</a></h3> <div class="fs-xs color-base-70"> Discussion threads targeting the whole community </div> </header> <div> <a class="crayons-link crayons-link--contentful" href="/thomasbnt/what-is-your-best-playlist-music-for-work-1olb"> What is your BEST playlist music for work? 🎶 <div class="crayons-link__secondary"> 4 comments </div> </a> <a class="crayons-link crayons-link--contentful" href="/ben/meme-monday-3ad1"> Meme Monday <div class="crayons-link__secondary"> 54 comments </div> </a> <a class="crayons-link crayons-link--contentful" href="/dumebii/the-use-of-ai-in-content-generation-j0l"> The Use Of AI In Content Generation <div class="crayons-link__secondary"> 6 comments </div> </a> <a class="crayons-link crayons-link--contentful" href="/td5r/post-about-can-or-cannot-ai-replace-coders-are-narrow-minded-4gi3"> Post about, can or cannot AI replace coders are narrow minded... <div class="crayons-link__secondary"> 1 comment </div> </a> <a class="crayons-link crayons-link--contentful" href="/matt4k/i-want-to-participate-in-a-web-application-project-could-you-give-me-some-ideas-1a70"> I want to participate in a web application project. Could you give me some ideas? <div class="crayons-link__secondary"> 1 comment </div> </a> </div> </section> <section class="crayons-card crayons-card--secondary crayons-layout__content"> <header class="crayons-card__header"> <h3 class="crayons-subtitle-2"><a href="/t/watercooler" class="crayons-link">#watercooler</a></h3> <div class="fs-xs color-base-70"> Light, and off-topic conversation. </div> </header> <div> <a class="crayons-link crayons-link--contentful" href="/thomasbnt/what-is-your-best-playlist-music-for-work-1olb"> What is your BEST playlist music for work? 🎶 <div class="crayons-link__secondary"> 4 comments </div> </a> <a class="crayons-link crayons-link--contentful" href="/ben/meme-monday-3ad1"> Meme Monday <div class="crayons-link__secondary"> 54 comments </div> </a> <a class="crayons-link crayons-link--contentful" href="/jess/safe-thanksgiving-travels-to-anyone-whos-partaking-onl"> Safe Thanksgiving travels to anyone who's partaking! <div class="crayons-link__secondary"> <span class="c-indicator c-indicator--warning">New</span> </div> </a> <a class="crayons-link crayons-link--contentful" href="/jarvisscript/2024-black-friday-and-cyber-monday-deals-for-developers-4mlo"> 2024 Black Friday and Cyber Monday deals for developers. <div class="crayons-link__secondary"> <span class="c-indicator c-indicator--warning">New</span> </div> </a> <a class="crayons-link crayons-link--contentful" href="/ben/happy-monday-e6m"> Happy Monday <div class="crayons-link__secondary"> <span class="c-indicator c-indicator--warning">New</span> </div> </a> </div> </section> <section class="widget"> <header> <h4>trending guides/resources</h4> </header> <div class="widget-body"> <div class="widget-link-list"> <a class="crayons-link crayons-link--contentful" href="/richardshaju/stop-using-try-catch-a-better-way-to-handle-errors-in-javascript-14cm"> Stop Using Try-Catch: A Better Way to Handle Errors in JavaScript </a> <a class="crayons-link crayons-link--contentful" href="/somadevtoo/8-system-design-couress-to-learn-distributed-system-architecture-2025-4j81"> 8 System Design Courses to learn Distributed System Architecture (2025) </a> <a class="crayons-link crayons-link--contentful" href="/balrajola/top-10-modern-javascript-patterns-for-2025-1hle"> Top 10 Modern JavaScript Patterns for 2025 </a> <a class="crayons-link crayons-link--contentful" href="/koladev/how-senior-software-engineers-document-their-project-1nf4"> How Senior Software Engineers Document Their Project </a> <a class="crayons-link crayons-link--contentful" href="/noah-00/no-more-trycatch-a-better-way-to-handle-errors-in-typescript-5hbd"> No more Try/Catch: a better way to handle errors in TypeScript </a> <a class="crayons-link crayons-link--contentful" href="/prodevopsguytech/50-devops-project-ideas-to-build-your-skills-from-beginner-to-advanced-3e07"> 50 DevOps Project Ideas to Build Your Skills: From Beginner to Advanced </a> <a class="crayons-link crayons-link--contentful" href="/r0mymendez/diagram-as-code-creating-dynamic-and-interactive-documentation-for-visual-content-2p93"> Diagram-as-Code: Creating Dynamic and Interactive Documentation for Visual Content </a> <a class="crayons-link crayons-link--contentful" href="/prodevopsguytech/writing-a-dockerfile-beginners-to-advanced-31ie"> Writing a Dockerfile: Beginners to Advanced </a> <a class="crayons-link crayons-link--contentful" href="/kishansheth/200-project-ideas-from-beginner-to-advanced-with-open-source-contributions-3g6a"> 🔥 200 Project Ideas from Beginner to Advanced with Open Source Contributions 🚀 </a> <a class="crayons-link crayons-link--contentful" href="/pmbanugo/how-we-moved-from-aws-to-flyio-7h3"> How We Moved from AWS to Fly.io </a> <a class="crayons-link crayons-link--contentful" href="/mukhilpadmanabhan/top-10-vscode-extensions-to-supercharge-your-workflow-3ige"> Top 10 VSCode Extensions to Supercharge Your Workflow </a> <a class="crayons-link crayons-link--contentful" href="/niharikaa/top-10-advanced-typescript-concepts-that-every-developer-should-know-4kg4"> 10 Advanced TypeScript Concepts Every Developer Should Know </a> <a class="crayons-link crayons-link--contentful" href="/code42cate/5-awesome-docker-tools-to-make-your-life-easier-22kl"> 5 Awesome Docker Tools To Make Your Life Easier </a> <a class="crayons-link crayons-link--contentful" href="/karishmashukla/maxun-open-source-no-code-web-data-extraction-platform-4316"> Maxun: Open Source No-Code Web Data Extraction Platform⚡️ </a> <a class="crayons-link crayons-link--contentful" href="/prodevopsguytech/python-for-devops-a-comprehensive-guide-from-beginner-to-advanced-2pmm"> Python for DevOps: A Comprehensive Guide from Beginner to Advanced </a> <a class="crayons-link crayons-link--contentful" href="/arindam_1729/9-open-source-libraries-to-supercharge-your-next-project-c71"> 9 Open Source Libraries to Supercharge Your Next Project 🔋⚡️ </a> <a class="crayons-link crayons-link--contentful" href="/encore/nodejs-frameworks-roundup-2024-elysia-hono-nest-encore-which-should-you-pick-19oj"> Node.js Frameworks Roundup 2024 — Elysia / Hono / Nest / Encore — Which should you pick? </a> <a class="crayons-link crayons-link--contentful" href="/jagroop2001/20-javascript-tricks-every-developer-must-know-4pcj"> 20 JavaScript Tricks Every Developer Must Know 🚀 </a> <a class="crayons-link crayons-link--contentful" href="/thenanjay/docker-image-optimization-reducing-size-for-faster-deployments-489g"> Docker Image Optimization: Reducing Size for Faster Deployments </a> <a class="crayons-link crayons-link--contentful" href="/encore/building-simple-event-driven-applications-with-pubsub-k57"> Building simple event-driven applications with Pub/Sub </a> </div> </div> </section> <section class="widget"> <header> <h4>recently queried</h4> </header> <div class="widget-body"> <div class="widget-link-list"> <a class="crayons-link crayons-link--contentful" href="/fihra/arrays-vs-lists-vs-arraylists-1da4"> List vs Array </a> <a class="crayons-link crayons-link--contentful" href="/nahidsaikat/flask-with-sqlalchemy-marshmallow-5aj2"> Flask Marshmallow </a> <a class="crayons-link crayons-link--contentful" href="/codemouse92/dead-simple-python-project-structure-and-imports-38c6"> Python Package Structure </a> <a class="crayons-link crayons-link--contentful" href="/thepracticaldev/daily-challenge-229-haiku-validator-d29"> Haiku Checker </a> <a class="crayons-link crayons-link--contentful" href="/0xkoji/the-alternative-of-ngrok-53ob"> Ngrok Alternative </a> <a class="crayons-link crayons-link--contentful" href="/saurabhdaware/i-made-a-text-to-handwriting-tool-to-write-my-college-assignments-for-me-4ko"> Handwriting Generator </a> <a class="crayons-link crayons-link--contentful" href="/saurabhdaware/but-what-the-hell-is-package-lock-json-b04"> package-lock.json vs package.json </a> <a class="crayons-link crayons-link--contentful" href="/serhatteker/how-to-upgrade-to-python-3-7-on-ubuntu-18-04-18-10-5hab"> How to Update Python </a> <a class="crayons-link crayons-link--contentful" href="/alvaromontoro/using-important-in-css-75c"> CSS Important </a> <a class="crayons-link crayons-link--contentful" href="/pjcalvo/selenium-vs-the-world-faster-clicker-3o6d"> How to Click Faster </a> <a class="crayons-link crayons-link--contentful" href="/webdeasy/top-20-css-buttons-animations-f41"> Button Animation CSS </a> <a class="crayons-link crayons-link--contentful" href="/suvink/graphic-designing-using-opengl-and-python-beginners-1i4f"> Opengl Python </a> <a class="crayons-link crayons-link--contentful" href="/dcodeyt/creating-beautiful-html-tables-with-css-428l"> Table CSS </a> <a class="crayons-link crayons-link--contentful" href="/gruberb/intro-to-web-programming-in-rust-for-nodejs-developers-lp"> Rust for Web </a> <a class="crayons-link crayons-link--contentful" href="/vuelancer/free-online-code-playground-for-html-css-javascript-3kk4"> JavaScript Playground </a> <a class="crayons-link crayons-link--contentful" href="/azure/azure-free-account-is-it-really-free-53cb"> Azure Free Tier </a> <a class="crayons-link crayons-link--contentful" href="/flippedcoding/difference-between-development-stage-and-production-d0p"> Production Environment </a> <a class="crayons-link crayons-link--contentful" href="/drews256/ridiculously-easy-row-and-column-layouts-with-flexbox-1k01"> Flex Two Columns </a> <a class="crayons-link crayons-link--contentful" href="/hereisnaman/logical-or-vs-nullish-coalescing-operator-in-javascript-3851"> JavaScript || </a> <a class="crayons-link crayons-link--contentful" href="/akhilnaidu/how-to-install-virtual-box-in-chromeos-2164"> Virtualbox on Chromebook </a> </div> </div> </section> </aside> </div> </div> <script src="https://assets.dev.to/assets/storiesList-b9c50cbd898a3a64258a3a49db1c531651b0a4a11937be35ed4651111802b5b5.js" defer="defer"></script> <script src="https://assets.dev.to/assets/followButtons-f2455d1f50a862b83fa006b1953e3a1644598781243cae25d3e75b13c04184fd.js" defer="defer"></script> <script src="https://assets.dev.to/assets/feedPreviewCards-8d16b0b656456a28c0a290f756cf6e21e19833111c4796f48c631bfea8323d51.js" defer="defer"></script> <script src="https://assets.dev.to/assets/heroBannerClose-08daef9d8f6109d73b3876fb088e26e5a46a047f93d787c38871fdbfbfc56e95.js" defer="defer"></script> <script src="https://assets.dev.to/assets/localizeArticleDates-70147c5c6bfe350b42e020ebb2a3dd37419d83978982b5a67b6389119bf162ac.js" defer="defer"></script> <script src="https://assets.dev.to/assets/feedEvents-7af7cd698ce6285b3578c7f8435941b968d1866dd6ec40d8c5228ea1384acb03.js" defer="defer"></script> <div id="runtime-banner-container"></div> </div> </div> <footer id="footer" class="crayons-footer print-hidden"> <div id="footer-container" class="crayons-footer__container"> <div style="" data-display-unit data-id="146443" data-category-click="click" data-category-impression="impression" data-context-type="home" data-special="nothing" data-article-id="152338" data-type-of="in_house"> <p style="font-weight: bold;margin-bottom: 10px"> Thank you to our Diamond Sponsor <a href="https://neon.tech/">Neon</a> for supporting our community. </p> </div> <p class="fs-s crayons-footer__description"> <a class="c-link c-link--branded fw-medium" aria-label="DEV Community Home" href="/">DEV Community</a> — A constructive and inclusive social network for software developers. With you every step of your journey. </p> <ul class="footer__nav-links flex gap-2 justify-center flex-wrap fs-s p-0" style="" /> <li class="footer__nav-link flex items-center"> <a href="/"> Home </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/++"> DEV++ </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/pod"> Podcasts </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/videos"> Videos </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/tags"> Tags </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/help"> DEV Help </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="https://shop.forem.com/"> Forem Shop </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/advertise"> Advertise on DEV </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/challenges"> DEV Challenges </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/showcase"> DEV Showcase </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/about"> About </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/contact"> Contact </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/free-postgres-database-tier"> Free Postgres Database </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/guides"> Guides </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/software-comparisons"> Software comparisons </a> <span class="dot ml-2"></span> </li> </ul> <ul class="footer__nav-links flex gap-2 justify-center flex-wrap fs-s p-0" style="" /> <li class="footer__nav-link flex items-center"> <a href="/code-of-conduct"> Code of Conduct </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/privacy"> Privacy Policy </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/terms"> Terms of use </a> <span class="dot ml-2"></span> </li> </ul> <div class="fs-s"> <p>Built on <a class="c-link c-link--branded" target="_blank" rel="noopener" href="https://www.forem.com">Forem</a> — the <a target="_blank" rel="noopener" class="c-link c-link--branded" href="https://dev.to/t/opensource">open source</a> software that powers <a target="_blank" rel="noopener" class="c-link c-link--branded" href="https://dev.to">DEV</a> and other inclusive communities.</p> <p>Made with love and <a target="_blank" rel="noopener" class="c-link c-link--branded" href="https://dev.to/t/rails">Ruby on Rails</a>. DEV Community <span title="copyright">©</span> 2016 - 2024.</p> </div> </div> </footer> <div id="snack-zone"></div> <div id="global-signup-modal" class="authentication-modal hidden"> <div class="authentication-modal__container"> <figure class="authentication-modal__image-container"> <img class="authentication-modal__image" src="https://media2.dev.to/dynamic/image/width=190,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" alt="DEV Community" loading="lazy" /> </figure> <div class="authentication-modal__content"> <p class="authentication-modal__description"> We're a place where coders share, stay up-to-date and grow their careers. </p> </div> <div class="authentication-modal__actions"> <a href="/enter" class="crayons-btn" aria-label="Log in" data-no-instant> Log in </a> <a href="/enter?state=new-user" class="crayons-btn crayons-btn--ghost-brand js-global-signup-modal__create-account" aria-label="Create new account" data-no-instant> Create account </a> </div> </div> </div> <script src="https://assets.dev.to/assets/signupModalShortcuts-0b25469b985100a01e94cbd7fccaf7f0a4d776e129aac65c766aa32cb28ab29a.js" defer="defer"></script> <div id="cookie-consent"></div> <div id="i18n-translations" data-translations="{"en":{"core":{"add_comment":"Add comment","beta":"beta","comment":"Comment","copy_link":"Copy link","edit_profile":"Edit profile","follow":"Follow","follow_back":"Follow back","following":"Following","like":"Like","loading":"loading...","reaction":"Reaction","report_abuse":"Report abuse","search":"Search","success_settings":"Successfully updated settings.","counted_organization":{"one":"%{count} organization","other":"%{count} organizations"},"counted_user":{"one":"%{count} person","other":"%{count} people"},"not_following":"You're not following anyone","following_everyone":"You're following %{details} (everyone)","you_are_following":"You're following","and":"and"}}}"></div> <div id="reaction-category-resources" class="hidden" aria-hidden="true"> <img data-name="Like" data-slug="like" data-position="1" src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> <img data-name="Unicorn" data-slug="unicorn" data-position="2" src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> <img data-name="Exploding Head" data-slug="exploding_head" data-position="3" src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18" /> <img data-name="Raised Hands" data-slug="raised_hands" data-position="4" src="https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg" width="18" height="18" /> <img data-name="Fire" data-slug="fire" data-position="5" src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="18" height="18" /> </div> </body> </html>