Algorithms

Algorithms

Algorithms are a fascinating topic, the heart of computer science. To perform any action, a computer must be given all instructions to execute step by step. Algorithms are unambiguous specification that drives problem solving. Algorithms can perform calculation, data processing, sorting, formating, etc. Algorithms are meant to automate processes.

‟Take Google Maps or Waze. On the one hand, they amplify human ability - you are able to reach your destination faster and more easily. But at the same time, you are shifting the authority to the algorithm and losing your ability to find your own way.” ⎼ Yuval Noah Harari

I’m in love with some of them because they are beautifully simple or incredibly elegant. This section will handle my favorites.

  • Fountain Codes - Transfer information over noisy channels. Example given with txqr a project that uses Animated QR codes to transfer data over mobiles.
  • Any Bret Victor essays, demo, experiments. This inspired me so much and make myself questioning my day to day life as an engineer. He made me rethink the way we explain and learn things and share them with peers. I’m so frustrated not seeing his demos becoming real life products.
    • Algojammer - A project that stole the idea of “Learning programming” is an attempt to turn Bret’s work into reality.