Go Programming By Example (Golang)

What you’ll learn

  • This practical course will enable you to build reliable, and efficient software, delivering basic to advanced concepts using Go
  • You will learn control structures, arrays, slices, maps, and functions
  • You will learn pointers, structs, and interfaces
  • You will learn concurrency & parallelism, goroutines, channels, and reflections
  • You will learn packages, documentation, unit testing, error handling, json, reflections
  • You will learn to install the Go compiler, Visual Studio Code, MySQL, and PostgreSQL
  • You will see a tour of SQL and also learn to connect Go to MySQL and PostgreSQL
  • You will work on a final assignment


  • A Windows or Mac Computer
  • Some experience with a programming language


Go that is called a ‘C for the 21st century’ was designed in 2007 to address some of the industry problems.

Today, many well-known companies like Google, Adobe, Facebook, IBM, and many more use Go.

They use Go, because of its simple approach to implement complex concepts.

This practical course will enable you to build simple, reliable, and efficient software, delivering basic to advanced concepts using Go.

The course is over 23 hours, including 160+ lectures, over 163 code examples, chapter assignments and a final assignment.

Emphasis has been placed on reviewing code examples, diagrams and white boarding.

The course gradually moves from basic to advanced topics and eventually ends with a final assignment.

In 16 sections, it covers topics such as language fundamentals, control structures, arrays, slices, maps, functions, callbacks, closures, pointers, structs, interfaces, concurrency & parallelism, goroutines, channels, packages, documentation, error handling, unit testing, json, files, reflections, MySQL, and may more.

Who is the target audience?

  • Programmers willing to learn core Golang programming (covering basic to advanced topics)

Created by Kam Hojati
Last updated 12/2018
English [Auto-generated]

Size: 10.99 GB

Friendly Websites

Related Posts

Assignment Help

This type of connection is best to use when downloading large files on a network. A. Data B. Ethernet C. Router D. Wi-Fi


This type of connection is best to use when downloading large files on a network. A. Data B. Ethernet C. Router D. Wi-Fi


Assignment Help

Image files are grouped into two categories: _____.



data encryption and virus scanning utilities


In this scenario, Jack has determined that a virus has infiltrated his computer and corrupted several data files, but he doesn’t know what to do.

The two most helpful utilities are data encryption and virus scanning.

If Jack encrypted his data files and use virus scanning to scan the computer for viruses, the computer’s firewall will quarantine and delete the virus.

So, the correct answer is data encryption and virus scanning.


Assignment Help

“because data in a computer can be easily accessed and modified, that presents a challange for the investigators of a computer crime. what method is used to make sure the files the investigator have have not been changed from their original state found in the crime computer


Hey there!

Let’s assume that this question is referring to every digital calendar ever made. As in, even those made on devices without internet connectivity or any other fancy features that we utilize with many digital calendars today. 

If a planning device that came with a digital calendar didn’t have internet connectivity, it wouldn’t be able to be connected to the cloud. Back when these devices were around, it wasn’t even plausible to store things like calendar events and contacts in what we know as the “cloud”. Also, these devices probably had to be hardwired to a computer and new software had to be downloaded to them, so the updates weren’t automatic. Archaic, right?

Also, consider the fact that even reputable websites/companies such as Google with Google Calendars or Apple with iCalendar will never go without their malfunctions or threats. Sometimes, these websites can be hacked and the data that they contain can be compromised, especially if they’re stored on the cloud. Also, even though it’s not realistic, Google or Apple could one day decide to completely get rid of their calendar programs altogether. So, this means that digital calendars are definitely able to be destroyed or lost. 

That just leaves “They can be used anywhere”. This is true, even with those archaic devices specifically used for scheduling events and such. Nowadays, you have your phone and possibly a laptop on you at all times, which will likely have a calendar on it as a stock application. So, I think this is your answer. 

Hope this helped you out! 🙂


Assignment Help

Jack and jill each own a collection of mp3 files. jill has six mp3 files less than three times the number that jack has. if jill owns 135 mp3 files, then how many does jack own



Option C – BD=76 cm

Step-by-step explanation:

Given : You are designing a diamond-shaped kite. you know that AD = 44.8 cm, DC = 72 cm, and AC = 84.8 cm.

To find : How long BD should it be?

Solution :

First we draw a rough diagram.

The given sides were AD = 44.8 cm, DC = 72 cm and AC = 84.8 cm.

According to properties of kite

Two disjoint pairs of consecutive sides are congruent.

So, AD=AB=44.8 cm

DC=BC=72 cm

The diagonals are perpendicular.

So, AC ⊥ BD

Let O be the point where diagonal intersect let let the partition be x and y.


AC=  x+y=84.8 …….[1]

Perpendicular bisect the diagonal BD into equal parts let it be z.



Applying Pythagorean theorem in ΔAOD

where H=AD=44.8 ,P= AO=x , B=OD=z


(44.8)^2=x^2+z^2  ………[2]

Applying Pythagorean theorem in ΔCOD

where H=DC=72 ,P= OC=y , B=OD=z


(72)^2=y^2+z^2 …………[3]

Subtract [2] and [3]




37.464=x-y ……….[4]

Add equation [1] and [4], to get values of x and y




Substitute x in [1]




Substitute value of x in equation [2], to get z






We know, BD=z+z

BD= 38.06+38.06

BD= 76.12

Nearest to whole number BD=76 cm

Therefore, Option c – BD=76 cm is correct.


Assignment Help

Kazaa software is commonly used to share audio and video files and documents over the internet. these files are located in? users’ computers and not on a centralized server. kazaa is an example of? ________.


The answer to this question is Digital technology.

Digital technology refers to the software and hardware that
are used in our homes, schools, and offices which are evolving. Digital technologies
are electronic tools like online games, social media, and mobile devices.
Digital technology comprises of electronics like fast computers, portable
devices, and networks with higher connections.


Assignment Help

Explain in detail what it means to synchronize computers and mobile devices. include at least two strategies for keeping your files in sync in your answer


If someone wants to use a wireless keyboard and mouse with a laptop computer, below are the steps.

First check if there’s a USB receiver attached to the mouse or keyboard. If there is, see below steps.

1. Connect the USB receiver of both mouse and keyboard into the USB port of your laptop computer. Some USB dongle would ask you to install or add it your device, just click OK and then add.
2. Make sure that the batteries on your wireless keyboard and mouse are working. And also check if the keyboard and mouse are turned on or have power.
3. Check if there’s a “connected” indication for both wireless mouse and keyboard on your laptop. You can now use your wireless mouse and keyboard on your laptop.

If there’s no USB receiver, and you’re using a bluetooth wireless mouse and keyboard, below are some steps to follow.

1. Turn on bluetooth connection on your laptop.
2. Make sure that batteries are working and turn on both wireless mouse and keyboard.
3. On your laptop, find your wireless mouse and keyboard under bluetooth option and connect the devices. You can now use your wireless bluetooth mouse and keyboard for laptop.


Assignment Help

Tagging a photo means to do what? (A)Putting flags on the important parts (B)Attaching labels to a photograph with descriptive terms about the photograph (C)Organizing digital files by the type and subject of the photographs (D)Putting tabs on the photograph to attach to the display board when mounting


A. Defragmenter. If your files are scattered all over the disk, loading them takes a long time. This can happen because your disk will utilize all empty spots, even if a file doesn’t fit. A defragmenter moves the pieces around until they form one contiguous file, which loads way faster.

Disk cleanup is only about freeing up space by deleting unused stuff.

Quicktime is a video codec, allowing you to view Apple format videos

Winzip compresses files. This may slightly speed up loading time, but you have to add decompression time to it, so it wouldn’t increase productivity.