{"id":18953064,"url":"https://github.com/packtworkshops/the-go-workshop","last_synced_at":"2025-08-20T01:31:05.720Z","repository":{"id":41063288,"uuid":"215318063","full_name":"PacktWorkshops/The-Go-Workshop","owner":"PacktWorkshops","description":"A New, Interactive Approach to Learning Go","archived":false,"fork":false,"pushed_at":"2023-02-24T17:42:39.000Z","size":6941,"stargazers_count":140,"open_issues_count":3,"forks_count":88,"subscribers_count":12,"default_branch":"master","last_synced_at":"2024-12-06T22:32:34.392Z","etag":null,"topics":["fmt","go","go-channel","go-import","go-interface","go-library","go-map","go-modules","go-package","go-panic","go-recover","go-routine","go-slice","golang","range"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PacktWorkshops.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-10-15T14:21:53.000Z","updated_at":"2024-12-01T19:06:54.000Z","dependencies_parsed_at":"2024-06-18T21:32:04.131Z","dependency_job_id":"04d6d61e-7253-4345-822d-6e003fbdf3db","html_url":"https://github.com/PacktWorkshops/The-Go-Workshop","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PacktWorkshops%2FThe-Go-Workshop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PacktWorkshops%2FThe-Go-Workshop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PacktWorkshops%2FThe-Go-Workshop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PacktWorkshops%2FThe-Go-Workshop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PacktWorkshops","download_url":"https://codeload.github.com/PacktWorkshops/The-Go-Workshop/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230382858,"owners_count":18216854,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["fmt","go","go-channel","go-import","go-interface","go-library","go-map","go-modules","go-package","go-panic","go-recover","go-routine","go-slice","golang","range"],"created_at":"2024-11-08T13:35:53.351Z","updated_at":"2024-12-19T05:07:05.139Z","avatar_url":"https://github.com/PacktWorkshops.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# The Go Workshop\n[![GitHub issues](https://img.shields.io/github/issues/PacktWorkshops/The-Go-Workshop.svg)](https://github.com/PacktWorkshops/The-Go-Workshop/issues)\n[![GitHub forks](https://img.shields.io/github/forks/PacktWorkshops/The-Go-Workshop.svg)](https://github.com/PacktWorkshops/The-Go-Workshop/network)\n[![GitHub stars](https://img.shields.io/github/stars/PacktWorkshops/The-Go-Workshop.svg)](https://github.com/PacktWorkshops/The-Go-Workshop/stargazers)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/PacktWorkshops/The-Go-Workshop/pulls)\n[![Go 1.12](https://img.shields.io/badge/Go-1.12-blue.svg)](https://golang.org/doc/install)\n\nThis is the repository for [The Go Workshop](https://www.amazon.com/Go-Workshop-Interactive-Approach-Learning-dp-1838647945/dp/1838647945/ref=mt_other?_encoding=UTF8\u0026me=\u0026qid=1611061203\u0026utm_source=github\u0026utm_medium=repository\u0026utm_campaign=9781838647940\u0026utm_term=Go\u0026utm_content=The%20Go%20Workshop), published by [Packt](https://www.packtpub.com/?utm_source=github). It contains all the supporting project files necessary to work through the course from start to finish.\n\n## Requirements and Setup\n\u003ca href=\"https://www.amazon.com/Go-Workshop-Interactive-Approach-Learning-dp-1838647945/dp/1838647945/ref=mt_other?_encoding=UTF8\u0026me=\u0026qid=1611061203\u0026utm_source=github\u0026utm_medium=repository\u0026utm_campaign=9781838647940\u0026utm_term=Go\u0026utm_content=The%20Go%20Workshop\"\u003e\u003cimg src=\"https://github.com/PacktWorkshops/Workshop-Covers/blob/master/The%20Go%20Workshop.png\" alt=\"The Go Workshop\" height=\"340px\" width=\"280px\" align=\"right\" this.target=\"_blank\"\u003e\u003c/a\u003e\n\nTo get started with the project files, you'll need to:\n1. Install the [Go Compiler](https://golang.org/doc/install)\n2. Install [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)\n3. Install [Visual Studio Code (Editor/IDE)](https://code.visualstudio.com/)\n\n## About The Go Workshop\n\n[The Go Workshop](https://www.amazon.com/Go-Workshop-Interactive-Approach-Learning-dp-1838647945/dp/1838647945/ref=mt_other?_encoding=UTF8\u0026me=\u0026qid=1611061203\u0026utm_source=github\u0026utm_medium=repository\u0026utm_campaign=9781838647940\u0026utm_term=Go\u0026utm_content=The%20Go%20Workshop) takes you from being a novice Go programmer to a confident developer who can leverage the key features of the language to build real-world applications. This workshop helps you cut through excessive theory and delve into the practical features and techniques that are commonly applied to design performant, scalable applications.\n\n## What you will learn\n* Understand Go syntax and use it to handle data and write functions\n* Debug your Go code to troubleshoot development problems\n* Safely handle errors and recover from panics\n* Implement polymorphism by using interfaces\n* Work with files and connect to external databases\n* Create a HTTP client and server and work with a RESTful web API\n* Use concurrency to design software that can multitask\n* Use Go Tools to simplify development and improve your code\n\n## Related Workshops and Book\nIf you've found this repository useful, you might want to check out some of our other workshop titles:\n* [The JavaScript Workshop](https://www.amazon.com/JavaScript-Workshop-Interactive-Approach-Learning-ebook/dp/B0824584WF/ref=sr_1_1?dchild=1\u0026keywords=The%20JavaScript%20Workshop\u0026qid=1611056880\u0026sr=8-1\u0026utm_source=GitHub\u0026utm_medium=Repository\u0026utm_campaign=9781838641917\u0026utm_term=JavaScript\u0026utm_content=The%20JavaScript%20Workshop)\n* [The React Workshop](https://www.amazon.com/React-Workshop-Interactive-Approach-Learning-ebook/dp/B082VG6JCL/ref=sr_1_1?dchild=1\u0026keywords=The%20React%20Workshop\u0026qid=1611056710\u0026sr=8-1\u0026utm_source=GitHub\u0026utm_medium=Repository\u0026utm_campaign=9781838645564\u0026utm_term=React\u0026utm_content=The%20React%20Workshop)\n* [Front End Development Projects with Vue.js](https://www.amazon.com/Front-End-Development-Projects-Vue-js-applications-dp-1838984828/dp/1838984828/ref=mt_other?_encoding=UTF8\u0026me=\u0026qid=1611065499\u0026utm_source=github\u0026utm_medium=repository\u0026utm_campaign=9781838984823\u0026utm_term=Vue\u0026utm_content=Front-End%20Development%20Projects%20with%20Vue.js)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpacktworkshops%2Fthe-go-workshop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpacktworkshops%2Fthe-go-workshop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpacktworkshops%2Fthe-go-workshop/lists"}