Let's Go! Learn to Build Professional Web Applications With Golang

Go is a great language for building web applications. But teaching yourself from blog posts and the standard-library documentation can often leave you with more questions than answers.

You might be wondering:

Let’s Go answers these questions for you — and a whole lot more.

The book guides you through the start-to-finish build of a real-world application, so you'll gain all the knowledge, understanding and confidence needed to create production-quality applications with Go.

Let's Go book cover

What You’ll Learn…

  1. All the fundamentals — How to start a server, create handlers, send responses, route requests and serve static files.
  2. Structure and organization — How to create an idiomatic and scalable structure for your web application.
  3. Using Modules — How to use Go's new Module functionality to manage and version control your dependencies.
  4. Managing configuration — How to use command-line flags and dependency injection to manage your application settings.
  5. Logging and Error Handling — How to implement leveled logging and centralized error handling.
  6. SQL databases — How to design a database model, set up a connection pool, and execute statements and queries.
  7. HTML templating — How to cache your templates, display dynamic data, create custom functions and handle runtime errors.
  8. Middleware — How to create your own middleware to perform common actions (like logging requests and recovering panics).
  9. RESTful routing — How to create a modern request routing structure that follows the principles of REST.
  10. Form validation — How to implement reusable and user-friendly pattern for validating forms and displaying errors.
  11. Session management — How to use and configure sessions to persist data between requests.
  12. Using HTTPS — How to correctly setup a HTTPS server and configure it for improved performance and security.
  13. Prevent common vulnerabilities — How to prevent SQL injection, CSRF, XSS, clickjacking and slow-client attacks.
  14. Authentication and authorization — How to safely encrypt user passwords and add signup, login and logout functionality.
  15. Request context — How to use Go's context.Context to pass data between your middleware and handlers.
  16. And most importantly… How to put it together in a fully-functioning application!

Want to get a better feel for the book? Take a look through the free sample

What Readers Are Saying…

I feel like this is the best programming book I've ever read. I came in with a basic understanding of golang relative to web development and this book clearly broke down all the essentials you need to get up to speed with the language in a web dev context.”

Michael Deigl, Toronto

I like that the book follows along a practical example. Most book examples relate to one chapter which is rather bad for learning a new language. With an evolving example it is much easier to follow along.”

Daniel Reichenbach, Berlin

I really liked the advice on how to structure a project. I'm now refactoring my first Golang project to use your advice, which will make it easier to read and maintain.”

Paul Bradbury, Cumbria

“I liked that the book was clear and that it reinforced what I already knew, but got a second opinion. Really glad it addressed the security issues in some of the libs.”

Lucas Caballero, Colorado

Foreword

Let's Go teaches you step-by-step how to create fast, secure and maintainable web applications using the fantastic programming language Go.

The idea behind the book is to help you learn by doing. Together we'll walk through the start-to-finish build of a web application — from structuring your workspace, through to session management, authenticating users and securing your server.

Building a complete web application in this way has a number of benefits. It helps put the things you're learning into context, it demonstrates how different parts of your codebase link together, and it forces us to work through the edge-cases and difficulties that come up when writing software in real-life. In essence, you'll learn more that you would by just reading Go's (great) documentation or standalone blog posts.

By the end of the book you’ll have the understanding — and confidence — to build your own production-quality web applications with Golang.

Although you can read the book cover-to-cover, it's designed specifically so you can follow along with the project build yourself.

Break out your text editor, and happy coding!

Alex Edwards

About the Author

Hey, I’m Alex Edwards, a full-stack web developer. I began working with Golang 5 years ago in 2013, and have been teaching people and writing about the language for nearly as long.

I’ve used Go to build a variety of production applications, from simple websites (including the one you’re reading now) to high-frequency trading systems. I also work on a number of open source Go packages, including the popular session management system SCS.

I live near Innsbruck, Austria. I post regularly on my blog and you can follow me on Instagram, Twitter and Github.

Money-back guarantee — If you don’t get anything from the book, then I don’t want your money. Just reply to your purchase receipt with 30 days and I’ll issue a full refund.

How will I get the book? You can buy online by PayPal, credit card or debit card over a secure encrypted connection. After purchase you'll immediately be given a download link for the book, and a email confirmation will also be sent to you.

Any questions? Feel free to drop me an email at alex@alexedwards.net and I’ll be happy to help.

Download Your Copy Now…

Let’s Go $29.95

  • The full book covering all 68 chapters
  • HTML and PDF versions for easy following-along
  • Epub version optimized for ebook readers
  • DRM-free
  • Future updates and releases
I want this!

Let’s Go plus Source Code $44.95

  • The full book covering all 68 chapters
  • Complete source code for all chapters
  • HTML and PDF versions for easy following-along
  • Epub version optimized for ebook readers
  • DRM-free
  • Future updates and releases
I want this!

Publication Information

Close Fancy a 10% discount? Take the quick survey