Share E-Book
Scan to open this page

Scan with your phone to open this page

Author: Aliénor Latour, Donia Chaiehloudj, Pascal Bertrand

These small Go projects will build big Go skills! Learn hands-on as you build 11 engaging applications. In Learn Go with Pocket-Sized Projects you’ll create 11 small applications and tools, including: • A currency convertor application • A health tracking app • A load balancer for sharing jobs between workers in the Cloud • An HTML template • A microcontroller-based temperature monitor • …and more! Learn Go with Pocket-Sized Projects teaches you to write professional-level Go code by creating handy tools and fun apps. Each small, self-contained project introduces important practical skills, including ensuring that your code is thoroughly tested and documented! You’ll make architectural decisions for your projects and organize your code in a maintainable way. Everything you learn is easy to scale-up to full-size Go applications. Purchase of the print book includes a free eBook in PDF and ePub formats from Manning Publications. About the technology Go delivers the low-level power of system languages like C and Rust with developer-friendly features like garbage collection and a powerful standard library. Millions of programmers choose Go because it speeds up program construction, streamlines dependency management, and makes complex code simple to write, read, and maintain. About the book In Learn Go with Pocket-Sized Projects you’ll learn some of the most important skills of Go programming, from Go’s unique idiomatic syntax to writing microservices. You’ll develop your Go toolbox with engaging hands-on projects that are fully working and simple to write. Create standalone command-line programs including Wordle-alike games, request data from external APIs, play with the TinyGo compiler for embedded systems, and more. By the time you’re done building, you’ll be able to create standalone, deployable, and scalable applications with ease! About the reader For beginner Go programmers looking to build their skills with hands-on projects. About the author Aliénor Latour is a b

AI Reading Assistant

Whole-book reading guide from stratified index samples; jump to passages in the text

AI guide
【One-Line Pitch】 A hands-on Go tutorial that teaches professional habits—testing, documentation, architecture, and maintainability—by building eleven small, self-contained applications. Best for developers who already program in another language and want to learn Go by shipping working code rather than reading theory. 【Book Arc】 - **Opening (~0%–15%)**: Introduces Go's philosophy, tooling, and setup, then eases you in with a "Hello, earth!" program that grows into a multilingual greeter using maps, flags, and table-driven tests. Solves the cold-start problem of writing and testing your first idiomatic Go code. - **Early (~15%–30%)**: Builds core language fluency through small utilities—a JSON-driven "bookworm" digest with loops and maps, a reusable logging library that introduces packages, interfaces, and the functional options pattern, and a terminal word game (Gordle) covering runes and input handling. - **Middle (~30%–50%)**: Moves into real-world concerns: a currency converter that confronts floating-point money representation and HTTP calls, plus concurrency fundamentals explored through a goroutine-based maze/treasure search with channels and cancellation. - **Late (~50%–75%)**: Shifts to services and cloud patterns—a gRPC-based habits tracker with protobuf, generated mocks, unit and integration testing, and context handling, followed by an HTML templating front end that talks to the gRPC backend. - **Ending (~75%–100%)**: Explores Go beyond the server with WebAssembly and TinyGo for embedded targets, then closes with appendices on installation, formatting, zero values, benchmarking, pass-by-value vs. pointer, fuzzing, and database connectivity. 【Key Takeaways】 - **Projects are the teaching unit, not the reward** (Early): each chapter is a small, complete app that introduces one or two concepts, so you learn syntax and design together rather than in isolation. - **Testing is woven into every project** (Early): Example functions, Test functions, table-driven tests, mocks, integration tests, and fuzzing appear as first-class design tools, not afterthoughts. - **Idiomatic Go design emerges from constraints** (Middle): implicit interfaces, the functional options pattern, and package APIs are taught through refactoring real code, showing why Go favors composition over inheritance. - **Concurrency is introduced through a concrete search problem** (Middle): goroutines, channels, quit signals, and tracking in-flight work are explored via a maze/treasure scenario rather than abstract primitives. - **Money and floating point are treated as a design problem** (Middle): the converter project forces you to think about representing decimals and validating results, a lesson that transfers to any domain with precision requirements. - **Microservices are built incrementally** (Late): protobuf definitions, code generation, business/API layering, mocks, and context propagation are assembled step by step into a working gRPC service. - **Go reaches beyond the backend** (Ending): WebAssembly and TinyGo demonstrate that the same language can target browsers and microcontrollers, broadening your sense of Go's applicability. - **Appendices are a reference toolkit** (Ending): zero values, benchmarking, pass-by-value semantics, fuzzing, and database access are collected for lookup rather than linear reading. 【Reading Tips】 - Read sequentially: later chapters reuse code and concepts from earlier ones, so skipping ahead will leave gaps in the shared project lineage. - Deep-read the testing sections even if you already test in another language—Go's testing package, table-driven style, and fuzzing have specific idioms worth absorbing. - Treat the concurrency and gRPC chapters as the hard spots; budget extra time to run the code and experiment with cancellation and context behavior. - Skim the appendices on first pass, then return to them as reference when a project touches zero values, benchmarking, or database access. - Type the code yourself rather than downloading it; the book's value is in the decisions you make while building, not in the finished listings. 【Coverage Limits】 This guide is based on stratified excerpts covering the front matter, table of contents, and early chapters; detailed content of later projects is inferred from chapter titles and summaries, so specific implementation details beyond the excerpts are not covered.
Excerpt 1
lay with the TinyGo compiler for embedded systems, and more. By the time you’re done building, you’ll be able to create standalone, deployable, and scalable...
View in text
Excerpt 2
Some practice with Hello Wasm 12.1.2 Write a file server 12.2 Multiplication quiz project 12.2.1 Displaying random numbers on the HTML page 12.2.2 Registerin...
View in text
Excerpt 3
Holmes, John Guthrie, Leonardo Taccari, Maria Ana, Mattia A. Di Gangi, Mihaela Barbu, Muneeb Shaikh, Naveen Achyuta, Neil Croll, Pablo Acuna, Paul Broadwith,...
View in text
Excerpt 4
social media marketing to satellite imagery and e-commerce. Through the course of her career, she tried her skills as a frontend developer and as a project m...
View in text
Excerpt 5
y another after the original code writer leaves the company. It’s therefore crucial companies choose a language that aims for readability. Go’s key features...
View in text
Excerpt 6
at some point, and we’ll cover this throughout the projects. Testing your code The first 11 chapters include unit testing (chapter 12 doesn’t because it’s mo...
View in text
Excerpt 7
language of your choice and prints the associated greeting. Ensure this program is covered by unit tests. 2.1 Any travel begins at home Our journey as develo...
View in text
Excerpt 8
cript, in Fortran, in Go, or in any language of your choice. It has to be able to tell the human user that everything went fine or that something didn’t—in w...
View in text
Tags
AI categories
GoProgramming LanguageBackend
ISBN: 1633438805
Publish Year: 2025
Language: English
Pages: 512
File Format: EPUB
File Size: 2.1 MB