atte juvonen

i blog & i code

Learn new skills

2022-08-22how-to

Great learning materials are rare. This is a collection of gems I’ve encountered over the years, presented as a 90’s style web link list, intended for anyone who wants to learn new skills.



Machine Learning Coursera Course by Andrew Ng

Skill: Machine Learning — learn how to apply existing machine learning techniques, understand why they work, and how to troubleshoot issues.

Type of material: Videos and coding exercises

Why is it good: Great interplay between lectures and exercises. Clarity of explanations. Introductory scope. Enough math to understand why these methods work, but not too much.



Competitive Programmer’s Handbook by Antti Laaksonen

Skill: Exact algorithms — learn how to invent algorithms for ”code competition” -type problems (problems where exactly-correct answer is required and the main challenge is time or memory complexity).

Type of material: Book

Why is it good: Simplified explanations of many algorithmic techniques and algorithmic problem solving approaches. Unlike most algorithm books, this one is focused on ideas and code, not on the underlying math. This is the ”bible” of Finnish competitive programmers.



Essentials of Metaheuristics by Sean Luke

Skill: Optimization algorithms — learn techniques to find ”good enough” solutions for problems where an exactly-correct solution is not required. Typically used when an exact algorithm would be computationally infeasible and machine learning methods can not be applied. For example, route optimization often falls into this category.

Type of material: Book

Why is it good: A practical approach. Scope. Clarity of explanations. I recommend you to read this book while implementing and testing selected approaches on a real problem as you go along.



Introduction to Cryptography by Christof Paar

Skill: Cryptography

Type of material: Videos

Why is it good: Clarity of explanations and visual illustrations. Entertaining presentation style.



Become a Data Scientist by DataCamp

Skill: Data Science

Type of material: Infographic

Why is it good: The entire field, from all angles, in one beautiful illustration.



The Modern JavaScript Tutorial by Ilya Kantor et al.

Skill: JavaScript language and browser APIs

Type of material: Website (alternatively available as a book)

Why is it good: Comprehensive, neatly organized & well written. Great explanations with illustrative examples. Goes wide and deep into the subject matter. Suitable both as a top-down read and as a place to look up specific topics.



Scrimba React course by Bob Ziroll

Skill: ReactJS — learn React fundamentals and practical coding skills

Type of material: Interactive screencasts

Why is it good: A modern way of combining lecture/presentation -elements and a development environment where you can practice on code exercises. Runs in your browser.



Money Stuff by Matt Levine

Skill: Finance — learn that everything is securities fraud.

Type of material: Email newsletter

Why is it good: Marvelous writing style. Unpacks recent events in finance with simplicity and wit, often connecting them to larger themes that run through the newsletter over time. Hugely entertaining and educational. Also released as web articles if you don’t want to give out your email.



Learning Music by Ableton

Skill: Composing music

Type of material: Interactive website

Why is it good: Experiment with composing music directly in your browser. No previous experience required. The tutorial begins with simple composing examples and tasks along with teaching basic fundamentals of music.