CINXE.COM
The Go Programming Language
<!DOCTYPE html> <html lang="en" data-theme="auto"> <head> <link rel="preconnect" href="https://www.googletagmanager.com"> <script >(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-W8MVQXG');</script> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="theme-color" content="#00add8"> <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Material+Icons"> <link rel="stylesheet" href="/css/styles.css"> <link rel="icon" href="/images/favicon-gopher.png" sizes="any"> <link rel="apple-touch-icon" href="/images/favicon-gopher-plain.png"/> <link rel="icon" href="/images/favicon-gopher.svg" type="image/svg+xml"> <link rel="me" href="https://hachyderm.io/@golang"> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-W8MVQXG');</script> <script src="/js/site.js"></script> <meta name="og:url" content="https://go.dev/"> <meta name="og:title" content="The Go Programming Language"> <title>The Go Programming Language</title> <meta name="og:description" content="Go is an open source programming language that makes it simple to build secure, scalable systems."> <meta name="description" content="Go is an open source programming language that makes it simple to build secure, scalable systems."> <meta name="og:image" content="https://go.dev/doc/gopher/gopher5logo.jpg"> <meta name="twitter:image" content="https://go.dev/doc/gopher/gopherbelly300.jpg"> <meta name="twitter:card" content="summary"> <meta name="twitter:site" content="@golang"> </head> <body class="Site"> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-W8MVQXG" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <header class="Site-header js-siteHeader"> <div class="Header Header--dark"> <nav class="Header-nav"> <a href="/"> <img class="js-headerLogo Header-logo" src="/images/go-logo-white.svg" alt="Go"> </a> <div class="skip-navigation-wrapper"> <a class="skip-to-content-link" aria-label="Skip to main content" href="#main-content"> Skip to Main Content </a> </div> <div class="Header-rightContent"> <ul class="Header-menu"> <li class="Header-menuItem "> <a href="#" class="js-desktop-menu-hover" aria-label=Why Go aria-describedby="dropdown-description"> Why Go <i class="material-icons" aria-hidden="true">arrow_drop_down</i> </a> <div class="screen-reader-only" id="dropdown-description" hidden> Press Enter to activate/deactivate dropdown </div> <ul class="Header-submenu js-desktop-submenu-hover" aria-label="submenu"> <li class="Header-submenuItem"> <div> <a href="/solutions/case-studies"> Case Studies </a> </div> <p>Common problems companies solve with Go</p> </li> <li class="Header-submenuItem"> <div> <a href="/solutions/use-cases"> Use Cases </a> </div> <p>Stories about how and why companies use Go</p> </li> <li class="Header-submenuItem"> <div> <a href="/security/"> Security </a> </div> <p>How Go can help keep you secure by default</p> </li> </ul> </li> <li class="Header-menuItem "> <a href="/learn/" aria-label=Learn aria-describedby="dropdown-description"> Learn </a> <div class="screen-reader-only" id="dropdown-description" hidden> Press Enter to activate/deactivate dropdown </div> </li> <li class="Header-menuItem "> <a href="#" class="js-desktop-menu-hover" aria-label=Docs aria-describedby="dropdown-description"> Docs <i class="material-icons" aria-hidden="true">arrow_drop_down</i> </a> <div class="screen-reader-only" id="dropdown-description" hidden> Press Enter to activate/deactivate dropdown </div> <ul class="Header-submenu js-desktop-submenu-hover" aria-label="submenu"> <li class="Header-submenuItem"> <div> <a href="/doc/effective_go"> Effective Go </a> </div> <p>Tips for writing clear, performant, and idiomatic Go code</p> </li> <li class="Header-submenuItem"> <div> <a href="/doc"> Go User Manual </a> </div> <p>A complete introduction to building software with Go</p> </li> <li class="Header-submenuItem"> <div> <a href="https://pkg.go.dev/std"> Standard library </a> </div> <p>Reference documentation for Go's standard library</p> </li> <li class="Header-submenuItem"> <div> <a href="/doc/devel/release"> Release Notes </a> </div> <p>Learn what's new in each Go release</p> </li> </ul> </li> <li class="Header-menuItem "> <a href="https://pkg.go.dev" aria-label=Packages aria-describedby="dropdown-description"> Packages </a> <div class="screen-reader-only" id="dropdown-description" hidden> Press Enter to activate/deactivate dropdown </div> </li> <li class="Header-menuItem "> <a href="#" class="js-desktop-menu-hover" aria-label=Community aria-describedby="dropdown-description"> Community <i class="material-icons" aria-hidden="true">arrow_drop_down</i> </a> <div class="screen-reader-only" id="dropdown-description" hidden> Press Enter to activate/deactivate dropdown </div> <ul class="Header-submenu js-desktop-submenu-hover" aria-label="submenu"> <li class="Header-submenuItem"> <div> <a href="/talks/"> Recorded Talks </a> </div> <p>Videos from prior events</p> </li> <li class="Header-submenuItem"> <div> <a href="https://www.meetup.com/pro/go"> Meetups <i class="material-icons">open_in_new</i> </a> </div> <p>Meet other local Go developers</p> </li> <li class="Header-submenuItem"> <div> <a href="/wiki/Conferences"> Conferences <i class="material-icons">open_in_new</i> </a> </div> <p>Learn and network with Go developers from around the world</p> </li> <li class="Header-submenuItem"> <div> <a href="/blog"> Go blog </a> </div> <p>The Go project's official blog.</p> </li> <li class="Header-submenuItem"> <div> <a href="/help"> Go project </a> </div> <p>Get help and stay informed from Go</p> </li> <li class="Header-submenuItem"> <div> Get connected </div> <p></p> <div class="Header-socialIcons"> <a class="Header-socialIcon" aria-label="Get connected with google-groups (Opens in new window)" href="https://groups.google.com/g/golang-nuts"><img src="/images/logos/social/google-groups.svg" /></a> <a class="Header-socialIcon" aria-label="Get connected with github (Opens in new window)" href="https://github.com/golang"><img src="/images/logos/social/github.svg" /></a> <a class="Header-socialIcon" aria-label="Get connected with twitter (Opens in new window)" href="https://twitter.com/golang"><img src="/images/logos/social/twitter.svg" /></a> <a class="Header-socialIcon" aria-label="Get connected with reddit (Opens in new window)" href="https://www.reddit.com/r/golang/"><img src="/images/logos/social/reddit.svg" /></a> <a class="Header-socialIcon" aria-label="Get connected with slack (Opens in new window)" href="https://invite.slack.golangbridge.org/"><img src="/images/logos/social/slack.svg" /></a> <a class="Header-socialIcon" aria-label="Get connected with stack-overflow (Opens in new window)" href="https://stackoverflow.com/tags/go"><img src="/images/logos/social/stack-overflow.svg" /></a> </div> </li> </ul> </li> </ul> <button class="Header-navOpen js-headerMenuButton Header-navOpen--white" aria-label="Open navigation."> </button> </div> </nav> </div> </header> <aside class="NavigationDrawer js-header"> <nav class="NavigationDrawer-nav"> <div class="NavigationDrawer-header"> <a href="/"> <img class="NavigationDrawer-logo" src="/images/go-logo-blue.svg" alt="Go."> </a> </div> <ul class="NavigationDrawer-list"> <li class="NavigationDrawer-listItem js-mobile-subnav-trigger NavigationDrawer-hasSubnav"> <a href="#"><span>Why Go</span> <i class="material-icons">navigate_next</i></a> <div class="NavigationDrawer NavigationDrawer-submenuItem"> <nav class="NavigationDrawer-nav"> <div class="NavigationDrawer-header"> <a href="#"><i class="material-icons">navigate_before</i>Why Go</a> </div> <ul class="NavigationDrawer-list"> <li class="NavigationDrawer-listItem"> <a href="/solutions/case-studies"> Case Studies </a> </li> <li class="NavigationDrawer-listItem"> <a href="/solutions/use-cases"> Use Cases </a> </li> <li class="NavigationDrawer-listItem"> <a href="/security/"> Security </a> </li> </ul> </div> </div> </li> <li class="NavigationDrawer-listItem "> <a href="/learn/">Learn</a> </li> <li class="NavigationDrawer-listItem js-mobile-subnav-trigger NavigationDrawer-hasSubnav"> <a href="#"><span>Docs</span> <i class="material-icons">navigate_next</i></a> <div class="NavigationDrawer NavigationDrawer-submenuItem"> <nav class="NavigationDrawer-nav"> <div class="NavigationDrawer-header"> <a href="#"><i class="material-icons">navigate_before</i>Docs</a> </div> <ul class="NavigationDrawer-list"> <li class="NavigationDrawer-listItem"> <a href="/doc/effective_go"> Effective Go </a> </li> <li class="NavigationDrawer-listItem"> <a href="/doc"> Go User Manual </a> </li> <li class="NavigationDrawer-listItem"> <a href="https://pkg.go.dev/std"> Standard library </a> </li> <li class="NavigationDrawer-listItem"> <a href="/doc/devel/release"> Release Notes </a> </li> </ul> </div> </div> </li> <li class="NavigationDrawer-listItem "> <a href="https://pkg.go.dev">Packages</a> </li> <li class="NavigationDrawer-listItem js-mobile-subnav-trigger NavigationDrawer-hasSubnav"> <a href="#"><span>Community</span> <i class="material-icons">navigate_next</i></a> <div class="NavigationDrawer NavigationDrawer-submenuItem"> <nav class="NavigationDrawer-nav"> <div class="NavigationDrawer-header"> <a href="#"><i class="material-icons">navigate_before</i>Community</a> </div> <ul class="NavigationDrawer-list"> <li class="NavigationDrawer-listItem"> <a href="/talks/"> Recorded Talks </a> </li> <li class="NavigationDrawer-listItem"> <a href="https://www.meetup.com/pro/go"> Meetups <i class="material-icons">open_in_new</i> </a> </li> <li class="NavigationDrawer-listItem"> <a href="/wiki/Conferences"> Conferences <i class="material-icons">open_in_new</i> </a> </li> <li class="NavigationDrawer-listItem"> <a href="/blog"> Go blog </a> </li> <li class="NavigationDrawer-listItem"> <a href="/help"> Go project </a> </li> <li class="NavigationDrawer-listItem"> <div>Get connected</div> <div class="Header-socialIcons"> <a class="Header-socialIcon" href="https://groups.google.com/g/golang-nuts"><img src="/images/logos/social/google-groups.svg" /></a> <a class="Header-socialIcon" href="https://github.com/golang"><img src="/images/logos/social/github.svg" /></a> <a class="Header-socialIcon" href="https://twitter.com/golang"><img src="/images/logos/social/twitter.svg" /></a> <a class="Header-socialIcon" href="https://www.reddit.com/r/golang/"><img src="/images/logos/social/reddit.svg" /></a> <a class="Header-socialIcon" href="https://invite.slack.golangbridge.org/"><img src="/images/logos/social/slack.svg" /></a> <a class="Header-socialIcon" href="https://stackoverflow.com/tags/go"><img src="/images/logos/social/stack-overflow.svg" /></a> </div> </li> </ul> </div> </div> </li> </ul> </nav> </aside> <div class="NavigationDrawer-scrim js-scrim" role="presentation"></div> <main class="SiteContent SiteContent--default" id="main-content"> <section class="Hero bluebg"> <div class="Hero-gridContainer"> <div class="Hero-blurb"> <h1>Build simple, secure, scalable systems with Go</h1> <ul class="Hero-blurbList"> <li> <svg width="12" height="10" viewBox="0 0 12 10" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M10.8519 0.52594L3.89189 7.10404L1.14811 4.51081L0 5.59592L3.89189 9.27426L12 1.61105L10.8519 0.52594Z" fill="white" fill-opacity="0.87"> </svg> An open-source programming language supported by Google </li> <li> <svg width="12" height="10" viewBox="0 0 12 10" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M10.8519 0.52594L3.89189 7.10404L1.14811 4.51081L0 5.59592L3.89189 9.27426L12 1.61105L10.8519 0.52594Z" fill="white" fill-opacity="0.87"> </svg> Easy to learn and great for teams </li> <li> <svg width="12" height="10" viewBox="0 0 12 10" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M10.8519 0.52594L3.89189 7.10404L1.14811 4.51081L0 5.59592L3.89189 9.27426L12 1.61105L10.8519 0.52594Z" fill="white" fill-opacity="0.87"> </svg> Built-in concurrency and a robust standard library </li> <li> <svg width="12" height="10" viewBox="0 0 12 10" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M10.8519 0.52594L3.89189 7.10404L1.14811 4.51081L0 5.59592L3.89189 9.27426L12 1.61105L10.8519 0.52594Z" fill="white" fill-opacity="0.87"> </svg> Large ecosystem of partners, communities, and tools </li> </ul> </div> <div class="Hero-actions"> <div data-version="" class="js-latestGoVersion"> <a class="Primary" href="/learn/" aria-label="Get Started" aria-describedby="getStarted-description" role="button">Get Started</a> <a class="Secondary js-downloadBtn" href="/dl" aria-label="Download" aria-describedby="download-description" role="button">Download</a> <div class="screen-reader-only" id="getStarted-description" hidden> Opens a new window with the Get Started guide. </div> <div class="screen-reader-only" id="download-description" hidden> Opens a new window to download Go. </div> </div> <div class="Hero-footnote"> <p> Download packages for <a class="js-downloadWin">Windows 64-bit</a>, <a class="js-downloadMac">macOS</a>, <a class="js-downloadLinux">Linux</a>, and <a href="/dl/" aria-describedby="newwindow-description">more</a> </p> <p> The <code>go</code> command by default downloads and authenticates modules using the Go module mirror and Go checksum database run by Google. <a href="/dl" aria-describedby="newwindow-description">Learn more.</a> </p> </div> </div> <div class="screen-reader-only" id="newwindow-description" hidden> Opens in new window. </div> <div class="Hero-gopher"> <img class="Hero-gopherLadder" src="/images/gophers/ladder.svg" alt="Go Gopher climbing a ladder."> </div> </div> </section> <section class="WhoUses"> <div class="WhoUses-gridContainer"> <div class="WhoUses-header"> <h2 class="WhoUses-headerH2">Companies using Go</h2> <p class="WhoUses-subheader">Organizations in every industry use Go to power their software and services <a href="/solutions/" class="WhoUsesCaseStudyList-seeAll" aria-describedby="newwindow-description"> View all stories </a> </p> </div> <div class="WhoUsesCaseStudyList"> <ul class="WhoUsesCaseStudyList-gridContainer"> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="/solutions/google/" aria-label="View CaseStudy of Google, (opens in new window)" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/google.svg" class="WhoUsesCaseStudyList-logo" alt=""> <p>View case study</p> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="/solutions/paypal" aria-label="View CaseStudy of PayPal, (opens in new window)" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/paypal.svg" class="WhoUsesCaseStudyList-logo" alt=""> <p>View case study</p> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="/solutions/americanexpress" aria-label="View CaseStudy of American Express, (opens in new window)" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/american-express.svg" class="WhoUsesCaseStudyList-logo" alt=""> <p>View case study</p> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="/solutions/mercadolibre" aria-label="View CaseStudy of MercadoLibre, (opens in new window)" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/mercadolibre_light.svg" class="WhoUsesCaseStudyList-logo" alt=""> <p>View case study</p> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://bitly.com/blog/why-we-write-everything-in-go/?utm_source=go-dev&utm_medium=referral&utm_campaign=go-dev&utm_content=case-study" aria-label="View CaseStudy of Bitly, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/bitly.svg" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://medium.com/capital-one-tech/a-serverless-and-go-journey-credit-offers-api-74ef1f9fde7f" aria-label="View CaseStudy of Capital One, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/capitalone_light.svg" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://www.cockroachlabs.com/blog/why-go-was-the-right-choice-for-cockroachdb/" aria-label="View CaseStudy of Cockroach Labs, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/cockroach.svg" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://blogs.dropbox.com/tech/2014/07/open-sourcing-our-go-libraries/" aria-label="View CaseStudy of Dropbox, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/dropbox.png" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://blog.cloudflare.com/graceful-upgrades-in-go/" aria-label="View CaseStudy of Cloudflare, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/cloudflare_light.svg" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://entgo.io/blog/2019/10/03/introducing-ent/" aria-label="View CaseStudy of Facebook, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/meta_light.svg" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://cloudblogs.microsoft.com/opensource/2018/02/21/go-lang-brian-ketelsen-explains-fast-growth/" aria-label="View CaseStudy of Microsoft, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/microsoft_light.svg" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://medium.com/tech-at-wildlife-studios/pitaya-wildlifes-golang-go-af57865f7a11" aria-label="View CaseStudy of Wildlife Studios, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/wildlife_light.svg" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://www.cloudwego.io/" aria-label="View CaseStudy of ByteDance, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/bytedance_light.svg" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://medium.com/netflix-techblog/application-data-caching-using-ssds-5bf25df851ef" aria-label="View CaseStudy of Netflix, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/netflix.svg" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://technology.riotgames.com/news/leveraging-golang-game-development-and-operations" aria-label="View CaseStudy of Riot Games, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/riot_light.svg" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://www.zdnet.com/article/salesforce-why-we-ditched-python-for-googles-go-language-in-einstein-analytics/" aria-label="View CaseStudy of Salesforce, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/salesforce.svg" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://blog.twitch.tv/en/2016/07/05/gos-march-to-low-latency-gc-a6fa96f06eb7/" aria-label="View CaseStudy of Twitch, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/twitch.svg" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://blog.twitter.com/engineering/en_us/a/2015/handling-five-billion-sessions-a-day-in-real-time.html" aria-label="View CaseStudy of Twitter, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/twitter.svg" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> <li class="WhoUsesCaseStudyList-caseStudy"> <a href="https://eng.uber.com/aresdb/" aria-label="View CaseStudy of Uber, (opens in new window)" target="_blank" rel="noopener" class="WhoUsesCaseStudyList-caseStudyLink"> <img loading="lazy" height="48" width="30%" src="/images/logos/uber_light.svg" class="WhoUsesCaseStudyList-logo" alt=""> </a> </li> </ul> </div> </section> <section class="TestimonialsGo"> <div class="GoCarousel"> <div class="GoCarousel-controlsContainer"> <div class="GoCarousel-wrapper"> <ul class="js-testimonialsGoQuotes TestimonialsGo-quotes"> <li class="TestimonialsGo-quoteGroup GoCarousel-slide" id="quote_slide0"> <div class="TestimonialsGo-quoteSingleItem"> <div class="TestimonialsGo-quoteSection"> <p class="TestimonialsGo-quote">“At the time, no single team member knew Go, but <strong>within a month, everyone was writing in Go</strong> and we were building out the endpoints. It was the flexibility, how easy it was to use, and the really cool concept behind Go (how Go handles native concurrency, garbage collection, and of course safety+speed.) that helped engage us during the build. Also, who can beat that cute mascot!”</p> <div class="TestimonialsGo-author">— Jaime Enrique Garcia Lopez, <span class="NoWrapSpan">Senior Software Development Manager</span> <span class="NoWrapSpan"> at Capital One</span> </div> </div> </div> </li> <li class="TestimonialsGo-quoteGroup GoCarousel-slide" id="quote_slide1"> <div class="TestimonialsGo-quoteSingleItem"> <div class="TestimonialsGo-quoteSection"> <p class="TestimonialsGo-quote">"<strong>A small language that compiles fast makes for a happy developer.</strong> The Go language is small, compiles really fast, and as a result it lets your mind focus on the actual problem and less on the tool you are using to solve it. Code, test, debug cycles are so quick that you forget you are not working with an interpreted language. Looking at our code, you see <strong>less boilerplate and more business logic.</strong>"</p> <div class="TestimonialsGo-author">— Clayton Coleman, <span class="NoWrapSpan">Lead Engineer, Open Shift</span> <span class="NoWrapSpan"> at RedHat</span> </div> </div> </div> </li> <li class="TestimonialsGo-quoteGroup GoCarousel-slide" id="quote_slide2"> <div class="TestimonialsGo-quoteSingleItem"> <div class="TestimonialsGo-quoteSection"> <p class="TestimonialsGo-quote">“<strong>Go has excellent characteristics for scalability and services written using it typically have very small memory footprints.</strong> Because code is compiled into a single static binary, services can also be containerised with ease, making it much simpler to build and deploy. These attributes make <strong>Go an ideal choice for companies building microservices</strong>, as you can easily deploy into a highly available and scalable environment such as Kubernetes.”</p> <div class="TestimonialsGo-author">— Matt Boyle, <span class="NoWrapSpan">Lead Software Engineer</span> <span class="NoWrapSpan"> at Curve</span> </div> </div> </div> </li> <li class="TestimonialsGo-quoteGroup GoCarousel-slide" id="quote_slide3"> <div class="TestimonialsGo-quoteSingleItem"> <div class="TestimonialsGo-quoteSection"> <p class="TestimonialsGo-quote">"In our tightly managed environments where we run Go code, <strong>we have seen a CPU reduction of approximately 10%</strong> with cleaner and maintainable code."</p> <div class="TestimonialsGo-author">— Bala Natarajan, <span class="NoWrapSpan">Sr. Director of Engineering, Developer Experience</span> <span class="NoWrapSpan"> at PayPal</span> </div> </div> </div> </li> <li class="TestimonialsGo-quoteGroup GoCarousel-slide" id="quote_slide4"> <div class="TestimonialsGo-quoteSingleItem"> <div class="TestimonialsGo-quoteSection"> <p class="TestimonialsGo-quote">"Tooling has always been a problem with our legacy code base... but we have found that Go has excellent tooling, plus built-in testing, benchmarking, and profiling frameworks. It is easy to write efficient and resilient applications. <strong>After working on Go, most of our developers don't want to go back to other languages.</strong>"</p> <div class="TestimonialsGo-author">— Benjamin Cane, <span class="NoWrapSpan">Vice President and Principal Engineer</span> <span class="NoWrapSpan"> at American Express</span> </div> </div> </div> </li> <li class="TestimonialsGo-quoteGroup GoCarousel-slide" id="quote_slide5"> <div class="TestimonialsGo-quoteSingleItem"> <div class="TestimonialsGo-quoteSection"> <p class="TestimonialsGo-quote">"...when a programming language is designed for exactly the environment most of us use right now—scalable, cloud-based servers that are optimized for performance—a lot can go right."</p> <div class="TestimonialsGo-author">— John Biggs and Ben Popper, <span class="NoWrapSpan"></span> <span class="NoWrapSpan"> at Stack Overflow</span> </div> </div> </div> </li> </ul> </div> <button class="js-testimonialsPrev GoCarousel-controlPrev" hidden> <i class="GoCarousel-icon material-icons">navigate_before</i> </button> <button class="js-testimonialsNext GoCarousel-controlNext"> <i class="GoCarousel-icon material-icons">navigate_next</i> </button> </div> </div> </section> <section class="Playground"> <div class="Playground-gridContainer"> <div class="Playground-headerContainer"> <h2 class="HomeSection-header">Try Go</h2> </div> <div class="Playground-inputContainer"> <div class="Playground-preContainer"> Press Esc to move out of the editor. </div> <textarea class="Playground-input js-playgroundCodeEl" spellcheck="false" aria-label="Try Go" aria-describedby="editor-description" id="code"> // You can edit this code! // Click here and start typing. package main import "fmt" func main() { fmt.Println("Hello, 世界") }</textarea> </div> <div class="screen-reader-only" id="editor-description" hidden> Press Esc to move out of the editor. </div> <div class="Playground-outputContainer js-playgroundOutputEl"> <pre class="Playground-output"><noscript>Hello, 世界</noscript></pre> </div> <div class="Playground-controls"> <select class="Playground-selectExample js-playgroundToysEl" aria-label="Code examples"> <option value="hello.go">Hello, World!</option> <option value="life.go">Conway's Game of Life</option> <option value="fib.go">Fibonacci Closure</option> <option value="peano.go">Peano Integers</option> <option value="pi.go">Concurrent pi</option> <option value="sieve.go">Concurrent Prime Sieve</option> <option value="solitaire.go">Peg Solitaire Solver</option> <option value="tree.go">Tree Comparison</option> </select> <div class="Playground-buttons"> <button class="Button Button--primary js-playgroundRunEl Playground-runButton" title="Run this code [shift-enter]">Run</button> <div class="Playground-secondaryButtons"> <button class="Button js-playgroundShareEl Playground-button" title="Share in Go Playground">Share</button> <a class="Button tour Playground-button" href="/tour/" title="Tour Go from your browser">Tour</a> </div> </div> </div> </div> </section> <section class="WhyGo"> <div class="WhyGo-gridContainer"> <div class="WhyGo-header"> <h2 class="WhyGo-headerH2">What’s possible with Go</h2> <p class="WhyGo-subheader"> Use Go for a variety of software development purposes </p> </div> <ul class="WhyGo-reasons"> <li class="WhyGo-reason"> <div class="WhyGo-reasonDetails"> <div class="WhyGo-reasonIcon" role="presentation"> <img class="DarkMode-img" src="/images/icons/sphere-dark.svg" alt="Sphere"> <img class="LightMode-img" src="/images/icons/sphere.svg" alt="Sphere"> </div> <div class="WhyGo-reasonText"> <h3 class="WhyGo-reasonTitle">Cloud & Network Services</h3> <p> With a strong ecosystem of tools and APIs on major cloud providers, it is easier than ever to build services with Go. </p> </div> </div> <div class="WhyGo-reasonFooter"> <div class="WhyGo-reasonPackages"> <div class="WhyGo-reasonPackagesHeader"> <img src="/images/icons/package.svg" alt="Packages."> Popular Packages: </div> <ul class="WhyGo-reasonPackagesList"> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="https://cloud.google.com/go/home" target="_blank" rel="noopener"> cloud.google.com/go </a> </li> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="https://aws.amazon.com/sdk-for-go/" target="_blank" rel="noopener"> aws/client </a> </li> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="https://github.com/Azure/azure-sdk-for-go" target="_blank" rel="noopener"> Azure/azure-sdk-for-go </a> </li> </ul> </div> <div class="WhyGo-reasonLearnMoreLink"> <a href="/solutions/cloud/" aria-describedby="newwindow-description">Learn More <i class="material-icons WhyGo-forwardArrowIcon" aria-hidden="true">arrow_forward</i></a> </div> </div> </li> <li class="WhyGo-reason"> <div class="WhyGo-reasonDetails"> <div class="WhyGo-reasonIcon" role="presentation"> <img class="DarkMode-img" src="/images/icons/command-folder-dark.svg" alt="Command Line"> <img class="LightMode-img" src="/images/icons/command-folder.svg" alt="Command Line"> </div> <div class="WhyGo-reasonText"> <h3 class="WhyGo-reasonTitle">Command-line Interfaces</h3> <p> With popular open source packages and a robust standard library, use Go to create fast and elegant CLIs. </p> </div> </div> <div class="WhyGo-reasonFooter"> <div class="WhyGo-reasonPackages"> <div class="WhyGo-reasonPackagesHeader"> <img src="/images/icons/package.svg" alt="Packages."> Popular Packages: </div> <ul class="WhyGo-reasonPackagesList"> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="https://github.com/spf13/cobra" target="_blank" rel="noopener"> spf13/cobra </a> </li> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="https://github.com/spf13/viper" target="_blank" rel="noopener"> spf13/viper </a> </li> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="https://github.com/urfave/cli" target="_blank" rel="noopener"> urfave/cli </a> </li> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="https://github.com/go-delve/delve" target="_blank" rel="noopener"> delve </a> </li> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="https://github.com/chzyer/readline" target="_blank" rel="noopener"> chzyer/readline </a> </li> </ul> </div> <div class="WhyGo-reasonLearnMoreLink"> <a href="/solutions/clis/" aria-describedby="newwindow-description">Learn More <i class="material-icons WhyGo-forwardArrowIcon" aria-hidden="true">arrow_forward</i></a> </div> </div> </li> <li class="WhyGo-reason"> <div class="WhyGo-reasonDetails"> <div class="WhyGo-reasonIcon" role="presentation"> <img class="DarkMode-img" src="/images/icons/code-dark.svg" alt="Code"> <img class="LightMode-img" src="/images/icons/code.svg" alt="Code"> </div> <div class="WhyGo-reasonText"> <h3 class="WhyGo-reasonTitle">Web Development</h3> <p> With enhanced memory performance and support for several IDEs, Go powers fast and scalable web applications. </p> </div> </div> <div class="WhyGo-reasonFooter"> <div class="WhyGo-reasonPackages"> <div class="WhyGo-reasonPackagesHeader"> <img src="/images/icons/package.svg" alt="Packages."> Popular Packages: </div> <ul class="WhyGo-reasonPackagesList"> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="/pkg/net/http/" target="_blank" rel="noopener"> net/http </a> </li> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="/pkg/html/template/" target="_blank" rel="noopener"> html/template </a> </li> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="https://github.com/flosch/pongo2" target="_blank" rel="noopener"> flosch/pongo2 </a> </li> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="/pkg/database/sql/" target="_blank" rel="noopener"> database/sql </a> </li> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="https://github.com/elastic/go-elasticsearch" target="_blank" rel="noopener"> elastic/go-elasticsearch </a> </li> </ul> </div> <div class="WhyGo-reasonLearnMoreLink"> <a href="/solutions/webdev/" aria-describedby="newwindow-description">Learn More <i class="material-icons WhyGo-forwardArrowIcon" aria-hidden="true">arrow_forward</i></a> </div> </div> </li> <li class="WhyGo-reason"> <div class="WhyGo-reasonDetails"> <div class="WhyGo-reasonIcon" role="presentation"> <img class="DarkMode-img" src="/images/icons/gear-dark.svg" alt="Sphere"> <img class="LightMode-img" src="/images/icons/gear.svg" alt="Sphere"> </div> <div class="WhyGo-reasonText"> <h3 class="WhyGo-reasonTitle">DevOps & Site Reliability</h3> <p> With fast build times, lean syntax, an automatic formatter and doc generator, Go is built to support both DevOps and SRE. </p> </div> </div> <div class="WhyGo-reasonFooter"> <div class="WhyGo-reasonPackages"> <div class="WhyGo-reasonPackagesHeader"> <img src="/images/icons/package.svg" alt="Packages."> Popular Packages: </div> <ul class="WhyGo-reasonPackagesList"> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="https://github.com/open-telemetry/opentelemetry-go" target="_blank" rel="noopener"> open-telemetry/opentelemetry-go </a> </li> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="https://github.com/istio/istio" target="_blank" rel="noopener"> istio/istio </a> </li> <li class="WhyGo-reasonPackage"> <a class="WhyGo-reasonLink" href="https://github.com/urfave/cli" target="_blank" rel="noopener"> urfave/cli </a> </li> </ul> </div> <div class="WhyGo-reasonLearnMoreLink"> <a href="/solutions/devops/" aria-describedby="newwindow-description">Learn More <i class="material-icons WhyGo-forwardArrowIcon" aria-hidden="true">arrow_forward</i></a> </div> </div> </li> <li class="WhyGo-reason"> <div class="WhyGo-reasonShowMore"> <div class="WhyGo-reasonShowMoreImgWrapper"> <img class="WhyGo-reasonShowMoreImg" loading="lazy" height="148" width="229" src="/images/gophers/biplane.svg" alt="Go Gopher is skateboarding."> </div> <div class="WhyGo-reasonShowMoreLink"> <a href="/solutions/use-cases" aria-describedby="newwindow-description">More use cases <i class="material-icons WhyGo-forwardArrowIcon" aria-hidden="true">arrow_forward</i></a> </div> </div> </li> </ul> </div> </section> <section class="GettingStartedGo"> <div class="GettingStartedGo-gridContainer"> <div class="GettingStartedGo-header"> <h2 class="GettingStartedGo-headerH2">Get started with Go</h2> <p class="GettingStartedGo-headerDesc"> Explore a wealth of learning resources, including guided journeys, courses, books, and more. </p> <div class="GettingStartedGo-ctas"> <a class="GettingStartedGo-primaryCta" href="/learn/"aria-describedby="newwindow-description">Get Started</a> <a href="/doc/install/" aria-describedby="newwindow-description">Download Go</a> </div> </div> <div class="GettingStartedGo-resourcesSection"> <ul class="GettingStartedGo-resourcesList"> <li class="GettingStartedGo-resourcesHeader"> Resources to start on your own </li> <li class="GettingStartedGo-resourceItem"> <a href="/learn#guided-learning-journeys" class="GettingStartedGo-resourceItemTitle" aria-describedby="newwindow-description"> Guided learning journeys </a> <div class="GettingStartedGo-resourceItemDescription"> Step-by-step tutorials to get your feet wet </div> </li> <li class="GettingStartedGo-resourceItem"> <a href="/learn#online-learning" class="GettingStartedGo-resourceItemTitle" aria-describedby="newwindow-description"> Online learning </a> <div class="GettingStartedGo-resourceItemDescription"> Browse resources and learn at your own pace </div> </li> <li class="GettingStartedGo-resourceItem"> <a href="/learn#featured-books" class="GettingStartedGo-resourceItemTitle" aria-describedby="newwindow-description"> Featured books </a> <div class="GettingStartedGo-resourceItemDescription"> Read through structured chapters and theories </div> </li> <li class="GettingStartedGo-resourceItem"> <a href="/learn#self-paced-labs" class="GettingStartedGo-resourceItemTitle" aria-describedby="newwindow-description"> Cloud Self-paced labs </a> <div class="GettingStartedGo-resourceItemDescription"> Jump in to deploying Go apps on GCP </div> </li> </ul> <ul class="GettingStartedGo-resourcesList"> <li class="GettingStartedGo-resourcesHeader"> In-Person Trainings </li> <li class="GettingStartedGo-resourceItem"> <a href="https://www.ardanlabs.com/" class="GettingStartedGo-resourceItemTitle" aria-describedby="newwindow-description"> Ardan Labs </a> <div class="GettingStartedGo-resourceItemDescription"> Offering customized on-site live training classes. </div> </li> <li class="GettingStartedGo-resourceItem"> <a href="https://www.gopherguides.com/" class="GettingStartedGo-resourceItemTitle" aria-describedby="newwindow-description"> Gopher Guides </a> <div class="GettingStartedGo-resourceItemDescription"> Customized In-person, remote, and online training classes. Training for Developers by Developers. </div> </li> <li class="GettingStartedGo-resourceItem"> <a href="https://bosssauce.it/services/training" class="GettingStartedGo-resourceItemTitle" aria-describedby="newwindow-description"> Boss Sauce Creative </a> <div class="GettingStartedGo-resourceItemDescription"> Personalized or track-based Go training for teams. </div> </li> <li class="GettingStartedGo-resourceItem"> <a href="https://github.com/shijuvar/gokit/tree/master/training" class="GettingStartedGo-resourceItemTitle" aria-describedby="newwindow-description"> Shiju Varghese </a> <div class="GettingStartedGo-resourceItemDescription"> On-site classroom training on Go and consulting on distributed systems architectures, in India. </div> </li> </ul> </div> </div> </section> <script src="/js/index.js" defer></script> </main> <footer class="Site-footer"> <div class="Footer"> <div class="Container"> <div class="Footer-links"> <div class="Footer-linkColumn"> <a href="/solutions/" class="Footer-link Footer-link--primary" aria-describedby="footer-description"> Why Go </a> <a href="/solutions/use-cases" class="Footer-link" aria-describedby="footer-description"> Use Cases </a> <a href="/solutions/case-studies" class="Footer-link" aria-describedby="footer-description"> Case Studies </a> </div> <div class="Footer-linkColumn"> <a href="/learn/" class="Footer-link Footer-link--primary" aria-describedby="footer-description"> Get Started </a> <a href="/play" class="Footer-link" aria-describedby="footer-description"> Playground </a> <a href="/tour/" class="Footer-link" aria-describedby="footer-description"> Tour </a> <a href="https://stackoverflow.com/questions/tagged/go?tab=Newest" class="Footer-link" aria-describedby="footer-description"> Stack Overflow </a> <a href="/help/" class="Footer-link" aria-describedby="footer-description"> Help </a> </div> <div class="Footer-linkColumn"> <a href="https://pkg.go.dev" class="Footer-link Footer-link--primary" aria-describedby="footer-description"> Packages </a> <a href="/pkg/" class="Footer-link" aria-describedby="footer-description"> Standard Library </a> <a href="https://pkg.go.dev/about" class="Footer-link" aria-describedby="footer-description"> About Go Packages </a> </div> <div class="Footer-linkColumn"> <a href="/project" class="Footer-link Footer-link--primary" aria-describedby="footer-description"> About </a> <a href="/dl/" class="Footer-link" aria-describedby="footer-description"> Download </a> <a href="/blog/" class="Footer-link" aria-describedby="footer-description"> Blog </a> <a href="https://github.com/golang/go/issues" class="Footer-link" aria-describedby="footer-description"> Issue Tracker </a> <a href="/doc/devel/release" class="Footer-link" aria-describedby="footer-description"> Release Notes </a> <a href="/brand" class="Footer-link" aria-describedby="footer-description"> Brand Guidelines </a> <a href="/conduct" class="Footer-link" aria-describedby="footer-description"> Code of Conduct </a> </div> <div class="Footer-linkColumn"> <a href="https://www.twitter.com/golang" class="Footer-link Footer-link--primary" aria-describedby="footer-description"> Connect </a> <a href="https://www.twitter.com/golang" class="Footer-link" aria-describedby="footer-description"> Twitter </a> <a href="https://github.com/golang" class="Footer-link" aria-describedby="footer-description"> GitHub </a> <a href="https://invite.slack.golangbridge.org/" class="Footer-link" aria-describedby="footer-description"> Slack </a> <a href="https://reddit.com/r/golang" class="Footer-link" aria-describedby="footer-description"> r/golang </a> <a href="https://www.meetup.com/pro/go" class="Footer-link" aria-describedby="footer-description"> Meetup </a> <a href="https://golangweekly.com/" class="Footer-link" aria-describedby="footer-description"> Golang Weekly </a> </div> </div> </div> </div> <div class="screen-reader-only" id="footer-description" hidden> Opens in new window. </div> <div class="Footer"> <div class="Container Container--fullBleed"> <div class="Footer-bottom"> <img class="Footer-gopher" src="/images/gophers/pilot-bust.svg" alt="The Go Gopher"> <ul class="Footer-listRow"> <li class="Footer-listItem"> <a href="/copyright" aria-describedby="footer-description">Copyright</a> </li> <li class="Footer-listItem"> <a href="/tos" aria-describedby="footer-description">Terms of Service</a> </li> <li class="Footer-listItem"> <a href="http://www.google.com/intl/en/policies/privacy/" aria-describedby="footer-description" target="_blank" rel="noopener"> Privacy Policy </a> </li> <li class="Footer-listItem"> <a href="/s/website-issue" aria-describedby="footer-description" target="_blank" rel="noopener" > Report an Issue </a> </li> <li class="Footer-listItem go-Footer-listItem"> <button class="go-Button go-Button--text go-Footer-toggleTheme js-toggleTheme" aria-label="Toggle theme"> <img data-value="auto" class="go-Icon go-Icon--inverted" height="24" width="24" src="/images/icons/brightness_6_gm_grey_24dp.svg" alt="System theme"> <img data-value="dark" class="go-Icon go-Icon--inverted" height="24" width="24" src="/images/icons/brightness_2_gm_grey_24dp.svg" alt="Dark theme"> <img data-value="light" class="go-Icon go-Icon--inverted" height="24" width="24" src="/images/icons/light_mode_gm_grey_24dp.svg" alt="Light theme"> </button> </li> </ul> <a class="Footer-googleLogo" target="_blank" href="https://google.com" rel="noopener"> <img class="Footer-googleLogoImg" src="/images/google-white.png" alt="Google logo"> </a> </div> </div> </div> <script src="/js/jquery.js"></script> <script src="/js/carousels.js"></script> <script src="/js/searchBox.js"></script> <script src="/js/misc.js"></script> <script src="/js/hats.js"></script> <script src="/js/playground.js"></script> <script src="/js/godocs.js"></script> <script async src="/js/copypaste.js"></script> </footer> <section class="Cookie-notice js-cookieNotice"> <div>go.dev uses cookies from Google to deliver and enhance the quality of its services and to analyze traffic. <a target=_blank href="https://policies.google.com/technologies/cookies">Learn more.</a></div> <div><button class="go-Button">Okay</button></div> </section> </body> </html>