Skip to content

Commit

Permalink
Add learning links for all
Browse files Browse the repository at this point in the history
  • Loading branch information
rusinikita committed Oct 9, 2023
1 parent b83c795 commit 57a5449
Show file tree
Hide file tree
Showing 9 changed files with 112 additions and 9 deletions.
10 changes: 9 additions & 1 deletion challenge/files/00_tutorial.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,11 @@ func main() {
fmt.Println(funCat)
}
"""
learning_advise = "You need to be familiar with structure, method, pointer and pointer receiver concepts."
learning_advise = """
If you can't find issue. That means you need to learn language basics. Use this links.
Answer: changeColor is value receiver function. Use pointer receiver to modify structure value.
"""

[[learning_links]]
title = "Tour of Go"
Expand All @@ -25,6 +29,10 @@ url = "https://go.dev/tour/welcome/1"
title = "Go by Example"
url = "https://gobyexample.com/"

[[learning_links]]
title = "Gopherlings"
url = "https://github.com/soypat/gopherlings"

[[learning_links]]
title = "Learn Go With Tests"
url = "https://quii.gitbook.io/learn-go-with-tests/"
Expand Down
2 changes: 1 addition & 1 deletion challenge/files/01_structs.toml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ func main() {
learning_advise = """
Go functions gets a copy of argument values. We use pointers to avoid value copying. But pointer is value too.
Play with pointers. Read about value receiver vs pointer receiver.
Play with pointers. Learn about value receiver vs pointer receiver.
"""

[[learning_links]]
Expand Down
18 changes: 17 additions & 1 deletion challenge/files/02_mutex.toml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,23 @@ func C() {
chain = chain + " --> C"
}
"""
learning_advise = "Read sync.Mutex docs and play with this code"
learning_advise = "Read sync.Mutex docs and find deadlock."

[[learning_links]]
title = "Docs"
url = "https://pkg.go.dev/sync#Mutex"

[[learning_links]]
title = "Tour of Go"
url = "https://go.dev/tour/concurrency/9"

[[learning_links]]
title = "Go by Example"
url = "https://gobyexample.com/mutexes"

[[learning_links]]
title = "Learn Go With Tests"
url = "https://quii.gitbook.io/learn-go-with-tests/go-fundamentals/sync"

[[questions]]
text = "Select program output"
Expand Down
21 changes: 20 additions & 1 deletion challenge/files/03_mutex_2.toml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,26 @@ func (m *Map) Len() int {
return len(m.m)
}
"""
learning_advise = "Read sync.Mutex docs, find map zero value and play with this code"
learning_advise = """
1. Read sync.Mutex docs
2. map zero value is nil
"""

[[learning_links]]
title = "Docs"
url = "https://pkg.go.dev/sync#Mutex"

[[learning_links]]
title = "Tour of Go"
url = "https://go.dev/tour/concurrency/9"

[[learning_links]]
title = "Go by Example"
url = "https://gobyexample.com/mutexes"

[[learning_links]]
title = "Learn Go With Tests"
url = "https://quii.gitbook.io/learn-go-with-tests/go-fundamentals/sync"

[[questions]]
text = "This structure is used in other packages. Find issues."
Expand Down
10 changes: 9 additions & 1 deletion challenge/files/04_rwmutex.toml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,15 @@ func C() {
defer mu.RUnlock()
}
"""
learning_advise = "Read sync.RWMutex docs and play with this code"
learning_advise = "Read sync.RWMutex docs, it works different than Mutex"

[[learning_links]]
title = "Docs"
url = "https://pkg.go.dev/sync#RWMutex"

[[learning_links]]
title = "Tour of Go"
url = "https://go.dev/tour/concurrency/9"

[[questions]]
text = "Select program output"
Expand Down
14 changes: 13 additions & 1 deletion challenge/files/05_waitgroup.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,19 @@ func main() {
fmt.Println("Done")
}
"""
learning_advise = "Read sync.WaitGroup docs and play with this code"
learning_advise = "Read sync.WaitGroup docs"

[[learning_links]]
title = "Docs"
url = "https://pkg.go.dev/sync#WaitGroup"

[[learning_links]]
title = "Go by Example"
url = "https://gobyexample.com/waitgroups"

[[learning_links]]
title = "Learn Go With Tests"
url = "https://quii.gitbook.io/learn-go-with-tests/go-fundamentals/sync"

[[questions]]
text = "Select program output"
Expand Down
18 changes: 17 additions & 1 deletion challenge/files/06_parrallel_queries.toml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,23 @@ func main() {
fmt.Println(callResults...)
}
"""
learning_advise = "Read sync.WaitGroup, sync.Mutex docs and play with this code"
learning_advise = "Read sync.WaitGroup, sync.Mutex docs"

[[learning_links]]
title = "Docs"
url = "https://pkg.go.dev/sync#WaitGroup"

[[learning_links]]
title = "Go by Example: WaitGroup"
url = "https://gobyexample.com/waitgroups"

[[learning_links]]
title = "Go by Example: Mutex"
url = "https://gobyexample.com/mutexes"

[[learning_links]]
title = "Learn Go With Tests"
url = "https://quii.gitbook.io/learn-go-with-tests/go-fundamentals/sync"

[[questions]]
text = "Select program output"
Expand Down
14 changes: 13 additions & 1 deletion challenge/files/07_channels_1.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,19 @@ func main() {
}
}
"""
learning_advise = "Read about channels, buffered channels and play with this code"
learning_advise = "Learn about channels, buffered channels and channel close"

[[learning_links]]
title = "Tour of Go"
url = "https://go.dev/tour/concurrency/2"

[[learning_links]]
title = "Go by Example"
url = "https://gobyexample.com/channels"

[[learning_links]]
title = "Learn Go With Tests"
url = "https://quii.gitbook.io/learn-go-with-tests/go-fundamentals/concurrency"

[[questions]]
text = "Select program output"
Expand Down
14 changes: 13 additions & 1 deletion challenge/files/08_channels_2.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,19 @@ func main() {
fmt.Println(count)
}
"""
learning_advise = "Read about channels, channel closing and play with this code"
learning_advise = "Learn about channels, buffered channels and channel close"

[[learning_links]]
title = "Tour of Go"
url = "https://go.dev/tour/concurrency/2"

[[learning_links]]
title = "Go by Example"
url = "https://gobyexample.com/channels"

[[learning_links]]
title = "Learn Go With Tests"
url = "https://quii.gitbook.io/learn-go-with-tests/go-fundamentals/concurrency"

[[questions]]
text = "Select program output"
Expand Down

0 comments on commit 57a5449

Please sign in to comment.