small medium large xlarge

Powerful Command-Line Applications in Go, in beta

October 23, 2019

Best Sellers:

Make sure you haven't missed anything!

  1. Real-Time Phoenix
  2. Quantum Computing
  3. Agile Web Development with Rails 6
  4. Software Estimation Without Guessing
  5. Designing Elixir Systems with OTP

See all bestsellers…

Command-line tools are a staple of professional software development, with a rich history that ranges from the elegant Unix shells to the Swiss-army-bottle-opener of Perl, to full on programming languages such as Ruby, Python—and now, Go.

See how you can use Go as your next secret weapon with Powerful Command-Line Applications in Go: Build Fast and Maintainable Tools, now available in beta from

Powerful Command-Line Applications in Go: Build Fast and Maintainable Tools

Go is a modern programming language that combines the reliability of compiled languages with the ease of use and flexibility of dynamic typed languages. With Go, you can develop cross-platform command-line tools that are fast and reliable. Work through practical examples to develop elegant and efficient tools by applying Go's rich standard library, its built-in support for concurrency, and its expressive syntax. Use Go's integrated testing capabilities to automatically test your tools, ensuring they work reliably even across code refactoring.

Develop CLI tools that interact with your users by using common input/output patterns, including environment variables and flags. Handle files to read or persist data, and manipulate paths consistently in cross-platform scenarios. Control processes and handle signals, and use a benchmark driven approach and Go's concurrency primitives to create tools that perform well. Use powerful external libraries such as Cobra to create modern and flexible tools that handle subcommands, and develop tools that interact with databases, APIs, and network services. Finally, leverage what you learned by tackling additional challenges at the end of each chapter.

Now available in beta from

Upcoming Author Appearances

  • 2019-10-25 James O. Coplien,
    Prague, Czech
  • 2019-11-15 Frances Buontempo,
    Meeting Cpp, Berlin
  • About Beta Books

    Pragmatic Bookshelf pioneered the idea of Beta Books. Here's how it works: a couple of months before a book is finished, we'll release it here on as a beta.

    When you place your order, you'll get the Beta eBook in its current state immediately. This version could be anywhere from 75% to 100% complete. It hasn't been copyedited or indexed, and will likely contain typos fresh from the author. But this is your chance to participate in the process. You can report suggestions, fixes, wishes, and the author can incorporate your feedback throughout the process.

    If you have "notify" set in your user settings, you'll receive an email update when the book is updated, and it will be delivered to your Dropbox or GDrive if you have that configured.

    When the final book is published, we’ll let you know that as well. You’ll also continue to get updates to the eBook, free for the lifetime of that edition.

    For more information, please see

    Don't Get Left Out

    Are your friends jealous that you get these spiffy email newsletters and they don't? Clue them in that all they need to do is create an account on (email address and password is all it takes) and select the checkbox to receive newsletters.

    Are you following us on Twitter and/or Facebook? Here's where you can find us and keep up with the latest news and commentary, and occasional discounts:

    Tell your friends! Tweet this

    Follow us on Twitter: pragprog</a>, <a href="">pragpub, Andy Hunt @PragmaticAndy.

    Coming Soon:

    • Modern Front-End Development for Rails: Webpacker, Stimulus, and React, in beta
    • A Common-Sense Guide to Data Structures and Algorithms, Second Edition, in beta
    • Competing with Unicorns, in beta

    Recently Released:

    Thanks for your continued support,

    Andy Hunt
    Publisher, Pragmatic Bookshelf

    Books • eBooks • PragPub Magazine • Audiobooks and Screencasts