Algorithms with Go is free, but you need to provide a working email address to gain access. I won't spam you and unsubscribing is very easy.

Just a heads up, my paid Go courses are discounted right now. You can read more here .

"I understand how basic algorithms work, but I can't actually implement them in code"

Don't worry, you aren't alone! Not everyone will admit it, but many developers feel exactly what you are feeling when they get started with coding, algorithms, and more.

Whether you are a CS student at university, self-learning at home, or something in between, the scenario is nearly always the same. First you start to learn the algorithm, and at a high level it all seems to make sense. You can even walk through the algorithm on paper, showing what steps should be taken and how the state changes as the algorithm is used. And then when you sit down to code it everything seems to fall apart...

↣ How do I write code that swaps two values?

↣ What the heck are bytes and runes? I just want to reverse my string!

↣ How do I tell my code to only consider half of the list?

↣ Why is my graph algorithm using non-existent edges in this graph?

And the list goes on and on and on...

Rather than running into a single problem that you can work out, what typically happens is you get overwhelmed with smaller challenges. You need to figure out how to do all these litle details right, and without every single one being implemented correctly, your code will never work.

But don't worry! This doesn't mean you aren't smart enough, or math-oriented enough, or anything else like that. It simply means you need some practice and guidance.