Skip to content

Instantly share code, notes, and snippets.

View SlavaBatig's full-sized avatar
💀
gen z zuckerberg

SlavaBatig

💀
gen z zuckerberg
View GitHub Profile
@SlavaBatig
SlavaBatig / state_full.go
Last active September 10, 2025 13:39
full state machine assignment
/**
* Create a simple state machine for document workflow with these states:
* - draft
* - submitted
* - under review
* - approved or rejected
*
* The workflow should be:
* - draft -> submitted -> under review -> approved or rejected
*
@SlavaBatig
SlavaBatig / state.go
Last active September 10, 2025 13:34
state machine assignment
/**
* Create a simple state machine for document workflow with these states:
* - draft
* - submitted
* - under review
* - approved or rejected
*
* The workflow should be:
* - draft -> submitted -> under review -> approved or rejected
*
@SlavaBatig
SlavaBatig / queue_full.go
Last active September 10, 2025 13:43
enhanced queue full
// implement async queue that won't block the main thread
package main
import (
"fmt"
"math/rand"
"sync"
"time"
)
@SlavaBatig
SlavaBatig / enhanced_queue.go
Last active September 10, 2025 13:55
enhanced async queue assignment
// implement async queue that won't block the main thread
// YOUR CODE GOES HERE
func main() {
queue1 := &Queue{Name: "queue1"}
queue1.Add("task1", func() {
time.Sleep(time.Duration(random()) * time.Millisecond)
})
@SlavaBatig
SlavaBatig / queue.go
Last active September 10, 2025 13:50
async queue assignment
// implement async queue that won't block the main thread
// YOUR CODE GOES HERE
func main() {
queue1 := &Queue{Name: "queue1"}
queue1.Add("task1", func() {
time.Sleep(time.Duration(random()) * time.Millisecond)
})