Skip to product information
1 of 3

Borrowing a Cup of Algorithms

Borrowing a Cup of Algorithms

by James Edward Gray II (JEG2)

Regular price $12
Regular price Sale price $12
Sale Sold out

You've heard the term algorithm at some point in your programming journey, but how, exactly, are you supposed to turn an arcane series of steps into a solution for a problem that doesn't even look like the intended purpose?  How do we combine algorithms to conquer tasks neither could handle alone?

In this installment from How to Train Your Scrappy Programmer, we will explore various algorithms that can help solve hard problems, like:

  • Graph data structures and their algorithms
  • Pathfinding with Breadth-first Search 
  • Topological sorts
  • Polygon inclusion
  • Flood fills
  • And more!

We will discuss when and how to use them and why they excel at what they do.  We will dive into the world of algorithms to create dynamic solutions that not only work well together to solve a difficult problem, but create fun animations in the process. 

By the end of this interactive guide, you will have practiced finding and adapting multiple algorithms to turn seemingly insurmountable problems into fun and solvable puzzles.

View full details

Who Is This For?

This lesson is intended for any programmer who has heard rumors of the great power known as "algorithms" and is ready to peek behind the curtain. This guide has light references to some topics covered in previous guides. It is assumed that the reader will be comfortable with the use of Kino inputs, Stream iterators, Enum.into/3, and sets.

Expert level knowledge is not required. The free sample includes a code test that will help you decide if you are ready for this content. For those who aren't, links to free guides are included to help get you up to speed.

* This product requires a Livebook installation. There's a free desktop app for macOS and Windows.

Download Free Sample

Try Before You Buy

A free sample is available that includes simple installation instructions, the table of contents, an introduction, one complete guide, a conclusion, and the occasional joke or two. Almost all code samples in the guide are written in the Elixir programming language, but know that this is an interactive environment where you can run, edit, and rerun all the code you see inline and view the results live. You are strongly encouraged to explore this sample to see if this content is right for you.

Download Free Sample

About the Author

James has been a developer and manager of developers for around two decades. In both roles, teaching programming has always been a big focus of his work. James cares deeply about design, practical examples, visualization of algorithms, and how to train fluency.

James co-wrote Designing Elixir Systems with OTP with Bruce Tate, who's one heck of a nice guy. He has been a prominent member of the Elixir and Ruby communities, delivering books, documentation, and numerous conference talks. He has trained programmers all over the world.

Learn More

We're Not Satisfied Until You're Satisfied

If you are unsatisfied with your purchase for any reason, just send us a message letting us know why — so we can improve in the future — and we will refund your money.