Section 1 : Introduction

lecture 1 Valuable Resources 7:24
lecture 2 Why go 11:52
lecture 3 How to succeed 11:18

Section 2 : Course Overview

lecture 4 Course resources 7:6
lecture 5 Documentation 6:49
lecture 6 Accelerate learning 1:34

Section 3 : Your development environment

lecture 7 The terminal 6:51
lecture 8 Bash on windows 8:17
lecture 9 Shell bash commands I 11:14
lecture 10 Shell bash commands II 7:36
lecture 11 Installing Go 10:19
lecture 12 Go modules - introduction 2:54
lecture 13 Go workspace 6:9
lecture 14 Environment variables 9:7
lecture 15 IDE's 11:33
lecture 16 Go commands 15:8
lecture 17 Github repos 11:1
lecture 18 Github explored 8:35
lecture 19 Package management 6:7
lecture 20 Go modules overview 6:16
lecture 21 Creating a go module 4:53
lecture 22 Adding a dependency 4:53
lecture 23 Upgrading dependencies 3:54

Section 4 : Variables, values, & type

lecture 24 Playground 6:19
lecture 25 Hello world 10:32
lecture 26 Introduction to packages 16:5
lecture 27 Short declaration operator 12:53
lecture 28 The var keyword 11:40
lecture 29 Exploring type 13:1
lecture 30 Zero value 4:2
lecture 31 The fmt package 9:36
lecture 32 Creating your own type 5:48
lecture 33 Conversion, not casting 6:4

Section 5 : Exercises - Ninja Level 1

lecture 34 Hands-on exercise #1 5:32
lecture 35 Hands-on exercise #2 3:11
lecture 36 Hands-on exercise #3 2:50
lecture 37 Hands-on exercise #4 5:22
lecture 38 Hands-on exercise #5 3:20
lecture 39 Hands-on exercise #6 10:29

Section 6 : Programming fundamentals

lecture 40 Bool type 8:8
lecture 41 How computers work 21:26
lecture 42 Numeric types 15:1
lecture 43 String type 15:31
lecture 44 Numeral systems 17:51
lecture 45 Constants 3:36
lecture 46 Iota 2:47
lecture 47 Bit shifting 11:12

Section 7 : Exercises - Ninja Level 2

lecture 48 Hands-on exercise #1 1:55
lecture 49 Hands-on exercise #2 4:2
lecture 50 Hands-on exercise #3 1:13
lecture 51 Hands-on exercise #4 2:36
lecture 52 Hands-on exercise #5 0:52
lecture 53 Hands-on exercise #6 1:13
lecture 54 Hands-on exercise #7 12:38

Section 8 : Control flow

lecture 55 Understanding control flow 1:47
lecture 56 Loop - init, condition, post 4:15
lecture 57 Loop - nesting loops 3:54
lecture 58 Loop - for statement 10:22
lecture 59 Loop - break & continue 6:37
lecture 60 Loop - printing ascii 6:39
lecture 61 Conditional - if statement 7:19
lecture 62 Conditional - if, else if, else 3:10
lecture 63 Loop, conditional, modulus 3:24
lecture 64 Conditional - switch statement 8:35
lecture 65 Conditional - switch statement documentation 8:27
lecture 66 Conditional logic operators 4:0

Section 9 : Exercises - Ninja Level 3

lecture 67 Hands-on exercise #1 2:18
lecture 68 Hands-on exercise #2 2:36
lecture 69 Hands-on exercise #3 1:55
lecture 70 Hands-on exercise #4 1:11
lecture 71 Hands-on exercise #5 2:56
lecture 72 Hands-on exercise #6 1:4
lecture 73 Hands-on exercise #7 1:28
lecture 74 Hands-on exercise #8 1:25
lecture 75 Hands-on exercise #9 2:6
lecture 76 Hands-on exercise #10 5:31

Section 10 : Grouping data

lecture 77 Array 4:48
lecture 78 Slice - composite literal 5:30
lecture 79 Slice - for range 3:23
lecture 80 Slice - slicing a slice 4:35
lecture 81 Slice - append to a slice 5:18
lecture 82 Slice - deleting from a slice 4:54
lecture 83 Slice - make 9:48
lecture 84 Slice - multi-dimensional slice 3:57
lecture 85 Map - introduction 11:50
lecture 86 Map - add element & range 4:16
lecture 87 Map - delete 3:15

Section 11 : Exercises - Ninja Level 4

lecture 88 Hands-on exercise #1 2:38
lecture 89 Hands-on exercise #2 1:16
lecture 90 Hands-on exercise #3 4:0
lecture 91 Hands-on exercise #4 3:23
lecture 92 Hands-on exercise #5 5:39
lecture 93 Hands-on exercise #6 5:25
lecture 94 Hands-on exercise #7 9:14
lecture 95 Hands-on exercise #8 4:1
lecture 96 Hands-on exercise #9 1:25
lecture 97 Hands-on exercise #10 1:36

Section 12 : Structs

lecture 98 Struct 4:7
lecture 99 Embedded structs 5:37
lecture 100 Reading documentation 7:40
lecture 101 Anonymous structs 3:31
lecture 102 Housekeeping 18:47

Section 13 : Exercises - Ninja Level 5

lecture 103 Hands-on exercise #1 4:11
lecture 104 Hands-on exercise #2 4:11
lecture 105 Hands-on exercise #3 3:54
lecture 106 Hands-on exercise #4 3:56

Section 14 : Functions

lecture 107 Syntax 12:36
lecture 108 Variadic parameter 9:4
lecture 109 Unfurling a slice 13:25
lecture 110 Defer 6:13
lecture 111 Methods 7:17
lecture 112 Interfaces & polymorphism 20:15
lecture 113 Anonymous func 4:29
lecture 114 func expression 3:48
lecture 115 Returning a func 11:50
lecture 116 Callback 12:50
lecture 117 Closure 9:27
lecture 118 Recursion 9:34

Section 15 : Exercises - Ninja Level 6

lecture 119 Hands-on exercise #1 10:9
lecture 120 Hands-on exercise #2 4:41
lecture 121 Hands-on exercise #3 6:7
lecture 122 Hands-on exercise #4 5:19
lecture 123 Hands-on exercise #5
lecture 124 Hands-on exercise #6 2:6
lecture 125 Hands-on exercise #7 4:14
lecture 126 Hands-on exercise #8 2:24
lecture 127 Hands-on exercise #9 8:25
lecture 128 Hands-on exercise #10 3:12
lecture 129 Hands-on exercise #11 5:48

Section 16 : Pointers

lecture 130 What are pointer 11:55
lecture 131 When to use pointers 9:4
lecture 132 Method sets 6:31

Section 17 : Exercises - Ninja Level 7

lecture 133 Hands-on exercise #1 1:2
lecture 134 Hands-on exercise #2 5:37

Section 18 : Application

lecture 135 JSON documentation 12:12
lecture 136 JSON marshal 6:28
lecture 137 JSON unmarshal 16:15
lecture 138 Writer interface 15:37
lecture 139 Sort 5:44
lecture 140 Sort custom 10:32
lecture 141 bcrypt 12:2

Section 19 : Exercises - Ninja Level 8

lecture 142 Hands-on exercise #1 4:7
lecture 143 Hands-on exercise #2 8:0
lecture 144 Hands-on exercise #3 5:17
lecture 145 Hands-on exercise #4 12:14
lecture 146 Hands-on exercise #5 9:55

Section 20 : Concurrency

lecture 147 Concurrency vs parallelism 5:50
lecture 148 WaitGroup 12:28
lecture 149 Method sets revisited 12:1
lecture 150 Documentation 18:4
lecture 151 Race condition 12:30
lecture 152 Mutex 4:28
lecture 153 Atomic 5:44

Section 21 : Exercises - Ninja Level 9

lecture 154 Hands-on exercise #1 16:14
lecture 155 Hands-on exercise #2 11:56
lecture 156 Hands-on exercise #3 11:5
lecture 157 Hands-on exercise #4 4:42
lecture 158 Hands-on exercise #5 4:48
lecture 159 Hands-on exercise #6 5:40
lecture 160 Hands-on exercise #7 6:42

Section 22 : Channels

lecture 161 Understanding channels 15:52
lecture 162 Directional channels 9:55
lecture 163 Using channels 6:36
lecture 164 Range 5:34
lecture 165 Select 10:28
lecture 166 Comma ok idiom 5:56
lecture 167 Fan in
lecture 168 Fan out 6:35
lecture 169 Context 14:40

Section 23 : Exercises - Ninja Level 10

lecture 170 Hands-on exercise #1 3:19
lecture 171 Hands-on exercise #2 2:36
lecture 172 Hands-on exercise #3 3:26
lecture 173 Hands-on exercise #4 6:17
lecture 174 Hands-on exercise #5 2:45
lecture 175 Hands-on exercise #6 3:8
lecture 176 Hands-on exercise #7 7:44

Section 24 : Error handling

lecture 177 Understanding 14:43
lecture 178 Checking errors 7:4
lecture 179 Printing and logging 9:11
lecture 180 Recover 10:7
lecture 181 Errors with info 18:26

Section 25 : Exercises - Ninja Level 11

lecture 182 Hands-on exercise #1 3:45
lecture 183 Hands-on exercise #2 11:54
lecture 184 Hands-on exercise #3 10:37
lecture 185 Hands-on exercise #4 6:1
lecture 186 Hands-on exercise #5 1:40
lecture 186 Hands-on exercise #5 1:40

Section 26 : Writing documentation

lecture 187 Introduction 12:24
lecture 188 go doc 8:45
lecture 189 godoc 6:46
lecture 190 godoc.org 6:13
lecture 191 Writing documentation 12:4

Section 27 : Exercises - Ninja Level 12

lecture 192 Hands-on exercise #1 4:39

Section 28 : Testing & benchmarking

lecture 193 Introduction 14:14
lecture 194 Table tests 7:45
lecture 195 Example tests 9:47
lecture 196 Golint 4:45
lecture 197 Benchmark 9:26
lecture 198 Coverage 8:36
lecture 199 Benchmark examples 12:13
lecture 200 Review 12:33

Section 29 : Exercises - Ninja Level 13

lecture 201 Hands-on exercise #1 13:31
lecture 202 Hands-on exercise #2 19:5
lecture 203 Hands-on exercise #3 15:4

Section 30 : Farewell

lecture 204 Farewell 5:53

Section 31 : BONUS MATERIAL

lecture 205 An Entire Second Course - Provided for Free!. 1:20

Section 32 : Introduction

lecture 206 Why choose the Go programming language
lecture 207 Hello World! 9:37

Section 33 : Installing Go

lecture 208 Section Overview 3:12
lecture 209 The Terminal 6:14
lecture 210 Installation Insights 8:48
lecture 211 Go Workspace 8:48
lecture 212 Environment Variables 6:52
lecture 213 Windows - Configuring Path Variables 8:2
lecture 214 Mac - Configuring Path Variables 10:23
lecture 215 IMPORTANT - REGARDING LINUX VIDEOS THAT FOLLOW Text
lecture 216 Linux - Machine Setup 33:39
lecture 217 Linux - Machine Configuration 12:43
lecture 218 Linux - Configuring Path Variables 21:42
lecture 219 Testing Your Installation 4:32
lecture 220 Section Review 4:4

Section 34 : Your Development Environment

lecture 221 Section Overview 1:51
lecture 222 Go Editors 9:7
lecture 223 WebStorm & Atom.io 6:34
lecture 224 Remove - INTRODUCTION TO BRAINMEASURES PROCTOR SYS Pdf
lecture 225 Creating Your First Project 9:3
lecture 226 Hello World with Webstorm 8:15
lecture 227 The Go Command & Documentation 5:47
lecture 228 Understanding Github 7:37
lecture 229 Using Github 14:24
lecture 230 Section Review 3:40

Section 35 : Computer Fundamentals

lecture 231 Section Overview 2:3
lecture 232 How Computers Work - Part I 9:57
lecture 233 How Computers Work - Part II 12:30
lecture 234 Github Update Command 8:55
lecture 235 Numeral Systems 4:7
lecture 236 Binary Numbering System 7:41
lecture 237 Hexadecimal Numbering System 7:8
lecture 238 Text Encoding 9:25
lecture 239 Coding Scheme Programs 9:33
lecture 240 Format Printing 9:33
lecture 241 Section Review 9:16

Section 36 : Language Fundamentals

lecture 242 Section Overview 5:50
lecture 243 Packages 7:55
lecture 244 Go Commands 5:46
lecture 245 Variables 8:45
lecture 246 Scope 7:50
lecture 247 Scope II 10:9
lecture 248 Closure 11:15
lecture 249 Language Spec 10:4
lecture 250 Blank Identifier 4:25
lecture 251 Constants 9:2
lecture 252 Constants II 7:21
lecture 253 Words of Encouragement 3:42
lecture 254 Memory Addresses 6:41
lecture 255 Pointers 6:20
lecture 256 Using Pointers 7:45
lecture 257 Remainder 5:47
lecture 258 Section Review 15:3

Section 37 : Control Flow

lecture 259 Section Overview
lecture 260 For Loop 6:53
lecture 261 Nested Loops 6:23
lecture 262 Conditions, Break, & Continue 7:24
lecture 263 Documentation & Terminology 13:2
lecture 264 Rune 6:23
lecture 265 String Type 10:41
lecture 266 Switch Statements 7:28
lecture 267 If Statements 7:8
lecture 268 Exercise Solutions 14:1
lecture 269 Section Review 8:41

Section 38 : Functions

lecture 370 Section Overview 1:51
lecture 271 Intro To Functions 7:48
lecture 272 Func Returns 5:27
lecture 273 Variadic Functions 6:50
lecture 274 Variadic Arguments 5:8
lecture 275 Func Expressions 5:42
lecture 276 Closure 6:4
lecture 277 Callbacks 6:49
lecture 278 Callback Example 5:35
lecture 279 Recursion 5:4
lecture 280 Defer 4:21
lecture 281 Pass By Value 6:41
lecture 282 Reference Types 5:7
lecture 283 Anonymous Self-Executing Functions 1:39
lecture 284 Bool Expressions 7:24
lecture 285 Exercises - Part I 7:47
lecture 286 Exercises - Part II 6:41
lecture 287 Exercises - Part III 7:51
lecture 288 Section Review 10:27

Section 39 : Data Structures - Array

lecture 289 Data Structures Overview 6:7
lecture 290 Array 8:28
lecture 291 Array Examples 10:45

Section 40 : Data Structures - Slice

lecture 292 Slices 10:4
lecture 293 Slice Examples 9:38
lecture 294 More Slice Examples 6:34
lecture 295 Creating A Slice 12:43
lecture 296 Incrementing A Slice Item 5:16
lecture 297 Section Review 12:30

Section 41 : Data Structures - Map

lecture 298 Maps Introduction 6:18
lecture 299 Map Examples - Part 8:30
lecture 300 Map Examples - Part II 8:46
lecture 301 Map Examples - Part III 5:9
lecture 302 Map Documentation 10:43
lecture 303 Map Range Loop 3:43
lecture 304 GitHub Pull 4:8
lecture 305 Hash Tables 13:52
lecture 306 Hashing Words 10:57
lecture 307 Hashing Words II 12:5
lecture 308 Build A Hash Table 9:14
lecture 309 Finished Hash Algorithm 11:41

Section 42 : Data Structures - Struct

lecture 310 Structs Introduction 6:14
lecture 311 OOP in Go 11:37
lecture 312 User-Defined Types 10:46
lecture 313 Composition 10:28
lecture 314 JSON Marshal 11:40
lecture 315 JSON Unmarshal 3:13
lecture 316 JSON Encode 6:42
lecture 317 JSON Decode 5:36

Section 43 : Interfaces

lecture 318 Interfaces Introduction 3:20
lecture 319 Interface Examples 10:24
lecture 320 Code Substitutability 12:27
lecture 321 Bill Kennedy 8:32
lecture 322 Donovan & Kernighan 11:54
lecture 323 Sort Package 10:27
lecture 324 Sort Solution 9:40
lecture 325 Sort Reverse 15:56
lecture 326 Sort Slice Int 3:35
lecture 327 Empty Interface 8:56
lecture 328 Method Sets 11:40
lecture 329 Conversion vs Assertion 10:21

Section 44 : Concurrency

lecture 330 Concurrency & WaitGroup 5:11
lecture 331 Parallelism 4:42
lecture 332 Race Conditions 4:9
lecture 333 Mutex 3:46
lecture 334 Atomicity 3:58
lecture 335 Review & Channels Preview 8:35

Section 45 : Channels

lecture 336 Channels - Introduction 9:30
lecture 337 Range Clause 5:36
lecture 338 N-to-1 5:22
lecture 339 Semaphores - Part 1 7:29
lecture 340 Semaphores - Part 2 1:37
lecture 341 1-to-N 4:14
lecture 342 Channels as Arguments & Returns 7:2
lecture 343 Channel Direction 5:47

Section 46 : Applied Concurrency

lecture 344 Incrementor With Channels 6:2
lecture 345 Deadlock Challenge 7:15
lecture 346 Factorial Challenge 4:43
lecture 347 Pipeline Pattern 6:35
lecture 348 Factorial Challenge Redux 5:37
lecture 349 Factorial Challenge Redux Solution 4:38
lecture 350 Fan Out Fan In Pattern - Overview 3:33
lecture 351 Fan In Pattern 7:3
lecture 352 Fan Out Fan In - Example 16:21

Section 47 : Concurrency Challenges

lecture 353 Fan Out Fan In - Challenge 1:31
lecture 354 Fan Out Fan In - Solution 9:11
lecture 355 Fan Out Fan In - Challenge Factorial 2:6
lecture 356 Fan Out Fan In - Solution Factorial 11:23
lecture 357 Deadlock Challenge 0:43
lecture 358 Deadlock Solution 4:22
lecture 359 Incrementor Challenge Revisited 1:11
lecture 360 Incrementor Solution 5:45

Section 48 : Concurrency Resources

lecture 361 Additional Resources

Section 49 : Error Handling

lecture 363 An Introduction to Error Handling in Go 5:42
lecture 364 Improving Your Code with Golint 5:56
lecture 365 Handling Errors & Logging Errors to a File 8:45
lecture 366 Four Common Ways to Handle Errors 5:45
lecture 367 Custom Errors - Creating Values of Type error 7:25
lecture 368 Idiomatic Error Handling 4:28
lecture 369 Providing Context with Errors 5:12
lecture 370 Providing Even More Context with Errors 7:12
lecture 371 Error Handling Review & Resources 4:48