Skip to content
UdemyGoPaid courseAll LevelsCertificate

Go Bootcamp: Master Golang with 1000+ Exercises and Projects (Udemy.com)

Master and Deeply Understand Google's Go from Scratch with Illustrated In-Depth Tutorials & 1000+ Hands-On Exercises.

Created by: Jose Portilla

Last updated May 2021

Our take

Based on the ratings of 4,012 students, a sample of their written reviews and the syllabus, as the course stood in May 2021. No course pays to be reviewed.

This is a Go fundamentals course from Inanc Gumus, listed on Udemy with Jose Portilla and Pierian Training, running about 16 hours across 196 lectures. It spends most of its time on how the language really works: arrays, slices, maps, UTF-8, structs with JSON, pointers, methods and interfaces. Small projects, like a retro clock, a spam masker and a log parser, are spread between the sections. It is pitched at total beginners and at programmers switching languages, and the reviews show both groups got something from it.

Students like the teaching. Reviewers praise the slide structure and checkpoints, the clear explanations of small details and the steady flow of exercises, and one Java developer with 20 years of experience said it gave enough confidence to write production quality code. The complaints are consistent. Concurrency is missing, along with goroutines, channels and generics, and several reviewers note that people have been asking for it for years. The interfaces section also has fewer exercises than the others, one reviewer found the pace slow for experienced coders, and the auto-generated English captions get called unusable.

The last update was May 2021, so expect older material, and the missing topics are the real catch. About 89 percent of the 4,012 ratings are four or five stars, so the lessons that do exist land well. Treat it as the first half of a Go education: take it for the fundamentals and internals, then pick a separate course for concurrency. Anyone who wants one complete Go path in a single place should look elsewhere.

Best forBeginners or Java-style developers who want to understand Go's slices, maps and interfaces deeply before touching concurrency.
Skip it ifYou need goroutines, channels or generics, which reviewers say the course never covers.

Pros

  • Animated slides and checkpoints walk through what happens behind the scenes in Go
  • Explains the internals of slices, maps and interfaces, not just the syntax
  • Plenty of exercises with solutions, plus small projects like a log parser and spam masker
  • Instructor replies to student questions quickly and usefully, according to one reviewer

Cons

  • Goroutines, channels and generics are missing, and reviewers say they never arrived
  • Last updated in May 2021, so it is more than five years old
  • Interfaces section has fewer exercises, and the auto-generated captions are called unusable
Excellent course overall. Covers language features in great detail and does not just provide projects to follow without understanding the language.
Jamal Moore, a student

Marketed to all levels. Fits true beginners and switchers, though experienced coders may find the pace slow.

icon
What you will learn

  • Learn from a Go Contributor
  • Learn Go Tips & Tricks that you can't find easily anywhere else
  • Go from a total Go beginner to a confident Go programmer
  • Practice Go with 1000+ Exercises (with included solutions)
  • Understand Go In-Depth with Animated Illustrations (Pass Interviews)
  • Learn the Go internals and common Go idioms and best-practices
  • Create a Log File Parser that parses log files
  • Create a Spam Masker that masks spammy words within a block of text
  • Create a command-line Retro Led Clock that shows time
  • Create Console Animations, Dictionary Programs, and more

Course content

17 sections · 196 lectures · 16 hours of video 18 quizzes, 57 articles

  1. 1Basics 2 free previews58 lectures · 4 hours
  2. 2Projects: For Go Basics11 lectures · 2 quizzes · 45 min
  3. 3Arrays and Memory Layout17 lectures · 2 quizzes · 1.6 hours
  4. 4Project: Write a Retro Clock 1 free preview7 lectures · 30 min
  5. 5Slices and Internals 1 free preview26 lectures · 8 quizzes · 2.2 hours
  6. 6Project: Write a File Finder 1 free preview5 lectures · 15 min
  7. 7Project: Animate a Bouncing Ball 1 free preview7 lectures · 27 min
  8. 8UTF-8: Encode and Decode10 lectures · 1 quiz · 42 min
  9. 9Project: Create a Spam Masker7 lectures · 22 min
  10. 10Maps and Internals5 lectures · 1 quiz · 28 min

Who it is for

The instructor says it suits

  • Take this course as the best companion to fully understand the official Go Spec and book.
  • Beginners who have never programmed before.
  • Programmers switching languages to Go.
  • Go programmers who want to level up their skills!
  • Go programmers who want to learn the internals of slices, maps, interfaces, and so on.

What you need before you start

  • Access to a computer with an internet connection.

How it compares

Against the other 52 rated Udemy courses in Go on CourseDuck:

  • Rating4.7 out of 5higher than 84% of them
  • Reviews4,012#8 of 53 by number of reviews
  • Length15.8 hourslonger than 76% of them
  • Last updatedMay 2021earlier than 71% of them

icon
Quality Score

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 94 / 100

icon
Course Description

Go is a programming language created by Google, and this course is the most intuitive, in-depth, and highest-quality Go course on Udemy, with an insane level of attention to detail. You'll understand both the why and how. We've included thousands of animations, exercises, quizzes, examples, challenges, projects, and so on. By the end of the course, you'll become a confident Go programmer from scratch.

Why should you take this course now?

  • Watch ultra-detailed, entertaining, intuitive, and easy to understand illustrations and animations.

  • Solve 1000+ hands-on exercises (solutions are also included).

  • Create projects including a log parser, file scanner, spam masker, and more.

  • Learn Go programming tips and tricks that you can't find easily anywhere else.

  • Learn the Go internals and common Go idioms and best-practices.

Why should you learn Go (aka Golang and Go lang)?

  • Go is one of the most desired, easy to learn, and the highest paying programming languages. There are 1+ million Go programmers around the world, and the number is increasing each day exponentially. It's been used by Google, Facebook, Twitter, Uber, Docker, Kubernetes, Heroku, and many others.

  • Go is Efficient like C, C++, and Java, and Easy to use like Python and Javascript. It's Open-Source, Simple, Powerful, Efficient, Cross-Platform (OS X, Windows, Linux, ...), Compiled, Garbage-Collected, and Concurrent.

  • Go is best for Command-line Tools, Web APIs, Distributed Network Applications like Microservices, Database Engines, Big-Data Processing Pipelines, and so on.

What are you going to learn from this course (briefly)?

  • Go OOP: Interfaces and Methods

    • Internals of Methods and Interfaces

    • Functions and Pointers: Program design, pass by value, and addressability.

    • Implicit interface satisfaction

    • Type assertion and Type Switch

    • Empty interface: []interface{} vs interface{}

    • Value, Pointer, and Nil Receivers

    • Promoted Methods

  • Famous Interfaces

    • Tips about when to use interfaces

    • fmt.Stringer, sort.Sort, json.Marshaler, json.Unmarshaler, and so on.

  • Composite Types: Arrays, Slices, Maps, and Structs

    • Internals of Slices and Maps

    • Backing array, slice header, capacity, and map header

    • JSON encoding and decoding, field tags, embedding

    • Make, copy, full Slice expressions and append mechanics

    • UTF-8 encoding and decoding

  • Go Type System Mechanics

    • Type inference, underlying, predeclared, and unnamed types.

    • Untyped constants and iota.

    • Blank Identifier, short declaration, redeclaration, scopes, naming conventions

  • I/O

    • Process Command-Line Arguments, printf, working with files, bufio.Scanner, ...

  • How to create your own Go packages

    • How to run multiple Go files, and how to use third-party packages

  • Go tools

    • Debugging Go code, go doc, and others.

  • ...and more.

icon
Udemy Discount

The discount is applied through our link. Open the course from here and Udemy's current promotional price is applied at checkout on most courses, no code to type.

Some courses are excluded from Udemy's promotions. If the price does not drop, clear your browser cookies and use the button again.

icon
Instructor Details

Jose Portilla

Jose Marcial Portilla has a BS and MS in Mechanical Engineering from Santa Clara University and years of experience as a professional instructor and trainer for Data Science, Machine Learning and Python Programming. He has publications and patents in various fields such as microfluidics, materials science, and data science. Over the course of his career he has developed a skill set in analyzing data and he hopes to use his experience in teaching and data science to help other people learn the power of programming, the ability to analyze data, and the skills needed to present the data in clear and beautiful visualizations. Currently he works as the Head of Data Science for Pierian Training and provides in-person data science and python programming training courses to employees working at top companies, including General Electric, Cigna, SalesForce, Starbucks, McKinsey and many more. Feel free to check out the website link to find out more information about training offerings.

icon
More courses by Jose Portilla

$199.99

$159.99

$124.99

$159.99

$27.99

$27.99

icon
More Go courses

$19.99

$99.99

$79.99

$89.99

$94.99

$94.99

icon
Reviews

4.7

4,012 ratings on Udemy

Select a bar to show only those reviews.Select the bar again to show every rating.

By Emiliano Santucci on 11/6/2022

This course take me a deep learning about Go with several use cases of what happen behind the scene. Now I know what Go do and how it do. I love the slides structures and UX with a lot points of reflection and checkpoints with a "prove yoursealf" approach. My vote don't have 5 stars just for few points: 1. Inanc, I suggest you to work at least on english translation; the auto-generated one its unusable 2. Missing a couple of exercises on interfaces section as exists as the other sections. If any come from OOP languages like me, it is a blow mind concept and, imho, need to prove yourself with it. 3. Missing a section about Go modules: it seems a core concept and I think is really useful to understand for a real application. Thank you for all Inanc Emiliano

By Rajesh Goel on 9/20/2021

I love the teaching style. Also, it gave me enough confidence by explaining minute details so well (the fundamental doubts) to say that I know GO language fundamentals. After completing all the exercises and doing its examples, I am confident to say that I can write/fix production quality code now. My background: I am a Java Developer for 20 years and I have gained Java knowledge by reading many books along the way (there were no online courses then). I can definitely say I know Java fundamentals.

By Tryfon Farmakakis on 4/15/2021

The course was well structured and presented, with a lot of useful examples and exercises. Also the instructor checks for new questions by students and replies in a useful and timely manner. In general I was satisfied, but it wasn't perfect. I give it 4 instead of 5 stars for the following reasons: - It doesn't go to enough depth, such that an experienced programmer interested to learn the language would require. For example essential language features for an experienced programmer, such as concurrency or networking are completely absent from the course. - The instructor is good but his problematic pronunciation of English can become cumbersome, which wouldn't be an issue if the lectures' transcript wasn't just an automatic machine-translation with problems of its own, so that it could serve as a reliable reference.

By Jeewan Sooriyaarachchi on 12/2/2020

It was a great experience to learn Go from scratch. Topics were well explained and coding exercises were very good. Also coding exercises at the end of each topic are excellent way to practice the knowledge. Highly recommend for anyone wants learn Go. It would be great if you can add some coding exercises to interfaces section as well. Also provide some guidelines to carry on learning and contributing to Go opensource projects to improve the coding skills will more beneficial.

By Matthew Zito on 10/21/2020

This is THE introductory Go course to take on Udemy. The instructor really has a talent for teaching - I was very impressed by the quality and level of detail in this course. I especially appreciated that the instructor teaches you Go best practices and explains how the language works under the hood along the way. I've tried to get into Go via other courses on Udemy. This is the only one that did it for me.

By Mearaj Bhagad on 10/17/2020

This is definitely a very good course for developers who are new to golang and for the people who are new to the programming world. Everything is explained from scratch, assuming user has no previous knowledge of golang programming and/or any other programming language. The go concurrency topic which is missing, if added would definitely add more value to this course. Thank you, I enjoyed learning. :)

By Thanh Nguyen on 5/10/2020

This is the best Go Lang course I have seen on Udemy, why do I know that? because I have purchased every Go lang course on Udemy with rating of 4.3 up, and I have completed two course with Certificate, and many other courses at 50% done, including this course I have completed with certificate. The teaching details and knowledge is absolutely amazing, in this course I have learned many important concepts that I did not see from some other courses. I do read the Go Lang spec along the way and the book call "The go programming language" by Alan A. A Donovan, and Brian W. Kernighan while learning from this course and I can see that the instructor is true very knowledgeable and he have studied the spec carefully while creating this course. I really love to see if the instructor will put together the advanced training with some real app development projects to teach really app design and implementation. Especially in Fullstack web development area. Thank you very much for such amazing Go Lang training course, instructor Inanc Gumus, I am really appreciate it. Chris N.

By Hannibal Rasberry on 2/16/2020

I recently had to edit my review of this course. Currently I am half way done with the course and I have every intention on finishing. However, as I get closer to the end I am starting to notice more and more things about the course that are bothering me. First off let me say, the video tutorials are really good. If you are a beginner you really do feel yourself learning and understanding more and more with each course. Some people say that it can get a bit boring if you are an experienced programmer. However, as it says in the description of the course, it's meant for people with little to no experience. So I have no problem with the course there. However, I do have a problem with the course in one regard and that is the exercises left for us in each section. If you are trying to learn this material to the best of your ability, you most likely will come across the exercises as well and will try to complete them. However, the more you do the more you start to realize something. There are some problems that will ask you to do things, that you don't recall being covered. In some cases the problems will simply instruct you to google somethings to help you solve them. However, the information found won't always provide the information you are looking for. And there will be times, when you don't even understand what you are supposed to use the suggested items for at all. Sadly the directions of the problems can leave you feeling a bit uncertain, because while you may understand what is being asked of you in some parts you may not always understand what's being asked in others. And unfortunately, this problem can only become even more exasperated when you decide to check the solutions provided to you. Sometimes the instructor will solve the problems he provides in very creative ways. In some cases this is good, because it allows you to see different methods at which you can tackle the problem. The problem is, for some of the methods he uses, you will at times feel yourself feeling confused because he hasn't covered the method he used or the technique shown. So you will be looking at his code trying to figure out what he did, because it's something you've honestly never seen before if you are complete beginner. For instance, on one of his exercises regarding loops he uses a line of code to pertains to slices. However, he doesn't actually touch upon the topic of arrays and slices two sections after this point. The only reason I was able to recognize it personally, is because I read about arrays and slices prior to taking the course. But for anyone who's a newcomer you can simply just find yourself confused looking at the solution provided because you simply don't understand what's being put together. That being said I still plan to finish the course. I think the course provides much useful information to help beginners. But sometimes it does feel like the instructor does forget he is taking to beginners. And that can be very frustrating when time comes to do the exercises.

By Ahsan Deliri on 2/7/2019

Inanc is possibly the most well informed Go instructor you can find on the internet. When you write software there are gaps in knowledge because we are all constantly piecing ideas together. Somethings are assumed to be common knowledge but they really aren't. You'll go years slightly embarrassed about not knowing how something really works and worrying about the day where that gap will cause you endless pain. Inanc is a foundational level instructor. If you plan on writing golang as your language of choice, you will appreciate Inanc's contributions to your future success. The truth of the matter is you'll end up wanting him to teach more after he's done. The price you pay is a steal for his course.

By Paul Waldmann on 11/7/2018

Hands down, the best course on Udemy! I've enrolled in many different high rated courses but none of them were able to give me an instant understanding of everything that is being taught. Inanc is explaining everything in a slow & steady pace with in-depth explanations of every topic. This course is straight to the point and with his friendly, experienced and engaging charm, he absolutely nailed it. I'm looking forward to more videos and updates in the near future, I strongly recommend this course if you're also serious about learning Go. This course is going to be the GO to place, when it comes to learning go programming.

Showing all 10 reviews on CourseDuck

Read all 4,012 reviews on Udemy