Programming Algorithms: Learning Algorithms (Once And For All!)

Programming Algorithms: How To Learn Algorithms?

► Get My BEST-SELLING Book, The Complete Software Developer’s Career Guide For FREE ◄

Learning Algorithms: Is It Really Necessary?:
Preparing For A Job Interview Pluralsight Course:
Becoming A Better Developer With Programming Challenges:
Top Coder:
Cracking The Coding Interview:
Programming Pearls:

Programming Algorithms: How To Learn Algorithms?

Recently, I did a video about programming algorithms and whether it was a good idea to learn it or not. I see a lot of programmers making much noise about programming algorithms and well… In the end, it might not be ALL OF THIS for you to worry about it so much.

I know this topic divides opinions on the internet. Some programmers might say that learning algorithms will definitely make your career stand out from the crowd, while others might say that you should not invest your time in learning algorithms because it is useless.

An algorithm is a self-contained step-by-step set of operations to be performed. Programming Algorithms perform calculation, data processing, and/or automated reasoning tasks.

“A programming algorithm is a set of instructions designed to perform a specific task. This can be a simple process, such as multiplying two numbers, or a complex operation, such as playing a compressed video file. Search engines use proprietary algorithms to display the most relevant results from their search index for specific queries.

In computer programming, algorithms are often created as functions. These functions serve as small programs that can be referenced by a larger program. For example, an image viewing application may include a library of functions that each use a custom algorithm to render different image file formats. An image editing program may contain algorithms designed to process image data. Examples of image processing algorithms include cropping, resizing, sharpening, blurring, red-eye reduction, and color enhancement.”

So, a lot of programmers started to ask me: Okay John, how do I learn algorithms after all?

In this video, I’ll provide you the best resources on the internet for learning algorithms and everything you need to know.

If you have a question, email me at

If you liked this video, share, like and, of course, subscribe!

Subscribe To My YouTube Channel:

Visit Simple Programmer Website:

Connect with me on social media:

Other Links:
Sign up for the Simple Programmer Newsletter:
Simple Programmer blog:
Learn how to learn anything quickly:
Boost your career now:

#programming #algorithms #learnalgorithms #programmingalgorithms #computerscience #learningalgorithms


zachary taylor says:

Dane Watson says:

Yet another awesome John Sonmez production!!

Vipin Sharma says:


maxirater says:

I have a recommendation for anyone who has tried to read a algorithms book and your eyes glaze over because it just doesnt make any practical sense. Watch the Simon Allardice videos on Algorithms at They are very brief and will give a good overview on what Algorithms are and what they do. Also keep in mind that Algorithms and Data Structures go hand in hand, you can learn one without the other.

Samy David says:

hackerrank is nice too

Setofhornsandahalo says:

Nice view and good vid John

Tom van Schaijk says:

Just wrote a blog on a nice starting algorithm. Check it out:

CrypticCalamari says:

Practice practice practice. There are learning techniques you could use called spaced repetition where you’re presented with a question which if you answer it correctly, the gap between when you’re presented the question again is lengthened, otherwise it is shortened.

There is a site called, which let’s you create flashcard decks, though I’m not sure if it lets you control whether you consider the answer right or not, which would be necessary when practicing algorithms.

Regardless it should be simple to code up a command line script which you attach to cron for each “deck” you have which could be a text file with algorithms you need to practice. The script would run, present you an algorithm from the deck, and ask you if you got the algorithm right or not, then adjust the file (“deck”) where the algorithm name is located and maybe record the input in a log file for later review of progress or lack thereof.

I don’t necessarily believe that learning algorithms needs to be attached to a project, especially if you’re in college still and trying to learn for quizzes and exams. Even if you’re memory wains on the exact implementation details after you stop the spaced repetition, you’ll remember very clearly the general idea and structure of the algorithms, which will help you reboot those unpracticed neurons later; think muscle memory, but like … memory memory? I need better analogies …

James Henry Smith says:

Dumb, just promotes other work. No different than an affiliate.

Temple Naylor says:

I love the new location for shooting videos! 🙂

Kaleb Berry says:

Topcoder 95% of the time the Arena never works. I tired the applet and Arena, it never worked for years, it’s crazy. Idk how to get it going.

Sebastian Nielsen says:

But are the websites free?!?

mark hugo says:

Please make a algorithm youtube course (if you have time) ,please

Russell Baker says:

Nice video. Keep those coming.

Miro Georgiev says:

I don’t know about other people, but I find the info on this channel very educational. As far as I can tell, it is straight forward and honest. Personally, I don’t get a lot of the latter nowadays. Enjoyment….

Simon Suh says:

thanks for vid

Sean Casaus says:

leetcode is what most people at my school like to use

TheLongBit Coder says:

I am curious about your intro, why do you have it in some videos and don’t in others ?

Yash Paunikar says:

Do you have a fitness channel???

Marko Novakovic says:

nice video

Thomas Marny says:

I dont like you.

Marissa Richardson says:

Thanks for this John. 🙂

Dmitri Pavlutin says:

I was recently playing at
Pretty interesting for small regular coding challenges.

Lohe221 says:

Are your biceps high or low attachment?

Harshendu Bhardwaj says:

Great information, John.

KZ11 Hohenzollern says:

Thank you, John. I want to be so developed human being like you. Psychicaly, physicaly too. You are my example for my goals, I hope you understand me, I don’t know enough English words for this. (We have cold and wet winter, each day it’s different, how the hell is USA always so utopic – I think that German army would surrender before they come to my house)

David Soto says:

Is that Sunset Cliffs, Luscomb Point? Hey John I just started a coding Bootcamp after self thought here-and-there what’s the best way to go as someone who is barely getting into turning web dev as a career?

Evil Exists says:

Misleading i came to learn how to do X not be linked to do X 🙁

SuperGrimmy says: is also pretty cool.

f266101463 says:

I will definitely check out the plural sight

NC killezio says:

Thank you so much for this video

xMaoxoaMx says:

2 Videos on Algorithms and no mention of Cormens? Isnt it like THE Book?

Nak Koe says:

What do you actually do for work simpleprogrammer? Back-end development|??

pavXX says:

Side comment: Chest/arms looking good JS. You ever go over your strength workouts?

Not To Be says:

Nice! Thanks dude.

 Write a comment


Do you like our videos?
Do you want to see more like that?

Please click below to support us on Facebook!