Algorithm-Wiki is a database of algorithms and their historical origins. The platform covers a variety of analysis, including the growth of algorithms and their impacts across industries.

Nov 27, 2021

If you’re a self-taught engineer or bootcamp grad, you owe it to yourself to learn computer science. Thankfully, you can give yourself a world-class CS education without investing years and a small fortune in a degree program 💸.

There are plenty of resources out there, but some are better than others. You don’t need yet another “200+ Free Online Courses” listicle. You need answers to these questions:

  • Which subjects should you learn, and why?

  • What is the best book or video lecture series for each subject?

This guide is our attempt to definitively answer these questions.

Read More

Now let’s talk about one more seemingly unrelated topic just so we can “surprise” ourselves when we realize it’s category theory. By the way, in this chapter there will be another surprise in addition to that, so don’t fall asleep.

Also, I will not merely transport you to a different branch of mathematics, but to an entirely different discipline - logic.

Aug 20, 2021

Hello! Recently I’ve been thinking about why I explain things the way I do. The usual way I write is:

  1. Try to learn a topic

  2. Read a bunch of explanations that I find confusing

  3. Eventually understand the topic

  4. Write an explanation that makes sense to me, to help others

So why do I find all these explanations so confusing? I decided to try and find out! I came up with a list of 12 patterns that make explanations hard for me to understand. For each pattern I’ll also explain what I like to do instead to avoid the issue.

Read More

Simple mathematical concepts such as counting appear to be firmly anchored in the natural process of thinking. Studies have shown that even very young children and animals possess such skills to a certain extent. This is hardly surprising because counting is extremely useful in terms of evolution. For example, it is required for even very simple forms of trading. And counting helps in estimating the size of a hostile group and, accordingly, whether it is better to attack or retreat.

Digital Signal Processing is one of the most powerful technologies that will shape science and engineering in the twenty-first century. Revolutionary changes have already been made in a broad range of fields: communications, medical imaging, radar & sonar, high fidelity music reproduction, and oil prospecting, to name just a few. Each of these areas has developed a deep DSP technology, with its own algorithms, mathematics, and specialized techniques. This combination of breath and depth makes it impossible for any one individual to master all of the DSP technology that has been developed. DSP education involves two tasks: learning general concepts that apply to the field as a whole, and learning specialized techniques for your particular area of interest. This chapter starts our journey into the world of Digital Signal Processing by describing the dramatic effect that DSP has made in several diverse fields. The revolution has begun.

Read More

It’s often said that the internet has democratized education: the sum of human knowledge is only a Google search away! And yet, having access to information is only half of the story; you also need to be able to convert raw information into usable skills.

For a lot of us, the gap between the two can lead to things like tutorial hell—getting stuck doing tutorial after tutorial without ever feeling like you’re making substantive progress.

Learning how to learn effectively is super important, especially as a software developer; learning new things is practically the whole gig! If you can learn to quickly pick up new languages/frameworks/tools, you’ll be able to be way more productive than the average developer. It’s sort of a superpower.

In this blog post, I’ll share what I’ve learned about learning, and show you how I pick up new skills lickety-split!

Read More
Jun 9, 2021

If you’re visualizing it, almost every textbook sentence provides you with an opportunity to create a new image in your mind. As you progress further through the textbook, it will call back to more and more earlier concepts. In biochemistry, it’s things like the relationship between Gibbs free energy, enthalpy, entropy, and electrostatic potential; the amino acids; the nucleotides; different types of lipids; and a variety of major enzymes (i.e. DNA polymerase) and pathways (i.e. glycolysis). If you can figure out what those concepts are, and memorize them, you’ll be able to picture them when it mentions them casually in passing. If you can’t remember glutamine’s abbreviation or chemical structure, then every time the book mentions G (or is it E?), you’ll miss out on an opportunity to practice recalling it, or else you’ll have to interrupt your flow to look it up for the umpteenth time. This is a role for flashcards and super-convenient reference charts. Some knowledge is most helpful if you can access it in five seconds or less.

Read More

I’m hoping that this blog post could be helpful to someone who has decided to work in the area of symmetric key crypto. During my symmetric-key cryptanalysis journey in my grad school I had a fair amount of zig-zag-ing. Here, I’ll try to distill the key steps that enabled me to be productive in this area.

By symmetric key cryptanalysis considered are attacks on schemes such as block ciphers, stream ciphers, hash functions and AEAD schemes. An attack would be a violation of security promises made by the primitive, in time or space complexity less than projected by the primitive authors. This is regardless of whether the attack is practical or not. An unpractical attack cannot be fully verified and it has happened indeed that whole classes of peer reviewed cryptanalysis papers turn out to not work at all, which is, well, another topic.

Read More

These are the tape recordings of Richard Feynman’s 1961-64 Caltech Introductory Physics lectures, which form the basis of the book The Feynman Lectures on Physics. The original recordings were made on 14” reel-to-reel tapes, now preserved in Caltech’s Archive. In 2010 the entire collection was digitized by media preservationist George Blood, at a sampling rate of 96 kHz with 24-bit samples, PCM-encoded in tiff files about 2 GB each in size. For this online publication we are serving more compact versions, downsampled to 48 kHz with 16-bit samples, reencoded as AAC-HE (mp4) and Opus (ogg) at a data rate of 48 kbps.

We present entire lecture tapes without any editing or enhancement, including the tape leader. Parts of some lectures edited out of the commercial versions of these recordings are preserved here intact. Recorded material outside the lectures, including discussions between Feynman and his students and/or colleagues, never previously published, can be found in this publication. Three entire lecture recordings never heard before outside Caltech, including two lectures on Quantum Mechanics Feynman gave in 1964, are also included in this publication.1

Read More

A community for sharing resources/materials on learning and education.

Created on Sep 28, 2020
By @gurlic