Mark As Completed Discussion

Objective: In this lesson, we'll cover how to use this platform!

  • You'll learn what the AlgoDaily philosophy is.
  • We'll give you a tour of our wonderful platform.
  • You'll see how to maximize your time on this site.

Thank you for joining the AlgoDaily community!

Hi there! Welcome to AlgoDaily - a training platform designed with one mission: to help 1 million people become software engineers with at least $1 million net worth.

It is our mission to democratize careers in software. We accomplish this by helping beginner and non-traditional developers land their first jobs and get better at interviews. We do this by taking a slightly different approach than the usual "Leetcode grind", and we share hard-earned career lessons gained from working on various software engineering companies and teams.

You've made a great decision to embark on this course with us. First up is this lesson on how to use the AlgoDaily platform.

This walkthrough aims to explain what we're all about. We'll also answer several questions that get asked often, and give you a tour of the basic features to maximize your learning while you're here.

Build your intuition. Click the correct answer from the options.

Throughout the lessons, you'll get short quiz questions to make sure you're retaining the stuff you've learned.

Ok, first one up: which is the mission of AlgoDaily?

Click the option that best answers the question.

  • to make the world's largest mechnical keyboard manufacturer
  • to help 1 million people become software engineers with at least $1 million net worth
  • to be big enough to put up an ad on the superbowl

Our Philosophy

The AlgoDaily philosophy is this: we believe that Computer Science is the secret sauce that makes the modern world go round. Seriously, everything is moving to a device or online. Work, entertainment, music, education-- yep, all of it is popping up in a browser window or on a device. But the sad truth is that there just aren't enough engineers around to keep up with all of this, and even fewer who are able to go beyond CRUD (create-read-update-delete) applications.

So, first problem: we need more software engineers. But your options are time-consuming and tedious: lengthy lectures, drab assignments, and dense textbooks.

Then, problem two: to find engineers who are capable of solving difficult technical problems, many software companies have resorted to testing candidates on Computer Science fundamentals. There is admittedly a contentious debate around these interviews. However, they are still the best measures of capability in a short timeframe and at a certain level of scale.

Our Philosophy

Most non-traditional learners don't have access to intermediate-level Computer Science theory, despite them being some of the most determined and hardworking students of the craft. And furthermore, many traditional Computer Science degrees don't do a great job of making the "harder" topics accessible.

So we flipped this on its head:

  1. We are super efficient and only focus on creating content that directly boosts a software engineer's career. We help you get your first job, land an even better gig, and get promoted-- nothing else.

  2. Get results quickly! When asked what was holding them back, the most common response was lack of time. We structure our courses so that they:

  • Only the most practical concepts are presented. We recognize the importance of theory but focus on the practical.
  • Can be completed in a single full-time work week (40 hours) or less.
  • Text-first, videos-second: our lessons are mostly in text. While we do have videos for certain tougher concepts, it's quicker to read than watch, and answering questions and writing code constantly ensures you retain the material.
  1. Reading a textbook or watching a lecture is boring and one-sided. Our material engages you, with executable code samples, interactive quizzes, and discussion threads on every concept.

What's more, no other resource has such beautiful, helpful visuals accompanying each guide. Professionally curated illustrations, diagrams, and step debuggers are invaluable for visual learners.

Courses

Our core offering is our practical and interactive crash courses. Each course consists of sections, each section focusing on one high-level concept. We then drill down on the nitty gritty with lessons and challenges.

Courses

Each course comes with its own daily newsletter, delivering the content to you in a bite-sized way. We cover this in Daily Newsletter.

Lessons

Lessons are where the majority of our initial learnings will take place. They make up a big core of AlgoDaily.

There's a number of topic walkthroughs and guides that are offered on the site. We highly recommend you do work through all of these lessons by answering all the questions and marking it as complete. They streamline attaining the technical background you need to reach your goals.

Interactive Mode

Courses

While lessons are presented by default in Article Mode, or long-form tutorials-- there is the option to see the content as slides. Interactive Mode is an alternative presentation that allows you to concentrate on one screen (or smaller sliver of content) at a time.

To navigate through the many screens/steps of the lesson, click the bottom two buttons, Back and Next.

Additionally, you can open up the side menu by clicking the hamburger button on the bottom left. This will open up a menu showing all possible navigational directions within this lesson.

Courses

When you get to the end of a lesson, if you are logged in, the lesson will be saved as completed to your account.

Let's cover some basic AlgoDaily features. We can begin by our namesake, the AlgoDaily newsletter.

Daily Newsletter

When you register for the website, you are defaulted into the daily newsletter.

Every day, you are sent a daily challenge from our list of challenges. The challenge sent is based on where you are in the curriculum. The email will look something like the below:

When we run out of challenges to send you, you'll continue to be an automatic subscriber to the AlgoDaily newsletter. We'll send you the latest and greatest content that arrives on the platform, and occasional updates or highlights from the tech world that we want to share.

You can change the course newsletter you're on by going to Account --> General Settings, and selecting the one you'd like to be subscribed to:

Changing Newsletters

Each newsletter will be personalized with the content you chose:

Changing Newsletters

Changing Days

Now that you've signed up, you'll begin receiving daily problems in your inbox. You can always refer to our list of challenges to see what's coming up next.

You are free to change the day that you are currently on at any given time. This can be done by going to the Settings tab and changing your "Day On" attribute. Note that this is option is limited to premium users.

Changing Days

Approaching the Challenges

Next up are the actual coding problems-- important for interviews and real practice for career growth-- otherwise known as challenges.

I urge you read the following two lessons. They will provide you with even more context in approaching the problems, especially if it's your first time interviewing.

  1. How to Get Better at Coding Interviews
  2. How to Prepare for a Technical Interview
Approaching The Challenges

The daily newsletter will provide you with the question prompt of that day's coding challenge. We recommend you take the following approach to try to solve it:

  1. Read through the question in the email, and think about implementation.
  2. Write a solution out by hand, on a piece of paper or a whiteboard. This is extremely important, especially if you want to do well in whiteboard interviews.
  3. Click the link in the email, or navigate to the challenge on this platform. Wrestle with the problem in the code editor for a bit, and see if you can figure it out. Do your best!
  4. Try to get all tests passing with your solution.
  5. Step through the explanations with Next.
  6. Go through the official solution in the visualizer.
  7. Share and teach! Try to help others with solving the problem in our forum. If you spot something off, feel free to edit it!

Save Your Work to Files

We recognize that many users want to own the code they worked on while on AlgoDaily.com, and we agree. Whether it’s to build a code portfolio, or to reference your solution in the future, you may want to download it locally. This is now possible with our SAVE FILE feature, performed by clicking the link on any challenge.

Approaching The Challenges

Let's test your knowledge. Click the correct answer from the options.

These are the kinds of questions you'll see. They're intended to help you retain a deep understanding of our material, rather than forgetting in passing.

Which of these options is not part of the AlgoDaily philosophy?

Click the option that best answers the question.

  • focus on the practical motivations
  • get results quickly
  • make trainings visual and interactive
  • grind 24/7

We offer a code editor that can execute the written code at any time, whether to submit a solution or test some scratch code.

Running Tests and Code

Click the Run Code button in the toolbar. Run Code will run all the code in the editor-- be sure to log or print your statements to see an output. You may remove the appended tests if desired.

Running Tests And Code

Note that you don't need to do anything other than fill out the function signature. Our test runner will take care of managing input/output, so no need to manually get user input. The contents of your function will get invoked when our tests call yourFunction(ourInput). It will assert the return value of this function with the expected return value for the test case.

Press Reset any time you want to reset to the original function signature or code.

Note: if you see something unexpected (we save your work to your local storage), hit Reset to get back to the original code state.

Code Visualizations

Click VISUALIZE in the Our Solutions section of any challenge to view the visualizer. This is a beloved feature by many in our community, as it allows you to step through a simple input with an algorithm.

Note: Not all problems include this yet!

Code Visualizations

Completions

There's two ways to "complete" a problem. Note-- you'll need to be logged in to do so. The first way is to go through our explanation steps, and mark is as Complete.

The second way is to run tests-- if all test cases pass, it'll automatically get marked as completed.

Completions

Marking challenges as completed lets you keep track of your progress, and helps you climb the leaderboard.

Streaks/Leaderboard

This shows the users with the most completions, and longest streaks. It is updated multiple times during the day programmatically.

Click here for access to the leaderboard.

It can also be accessed via the dashboard.

Want To Save Your Solutions? Export Them in Bulk

Many students create GitHub repositories for their AlgoDaily solutions. This could be for reference down the line, or to create a portfolio of code samples. Regardless, we'd like to make it easier for you. You now have the option to easily export all your solutions on the settings page.

Bulk Export Solutions

Clip and Save Screens as Notes

Finally, we're thrilled to announce we're building out a flash cards feature. Eventually, you'll be able to review concepts with spaced repetition. As the first iteration, you can now clip and save chunks of content in each tutorial to Notes in the right hand side. To do so, hover over any floating note icon to the upper right of a content blob, and click "Add to Notes". In the future, you'll be able to save all your notes in one place, and render it as a PDF.

Save Notes

You've completed your first lesson.

Way to go! Next up, press COMPLETE to conclude this lesson and save it to your profile. Note: you must be logged in to do so!

Cheers, and let's master some programming interviews together. :-)

What is your refund policy?

We strongly believe in trying out a product extensively before making a financial investment. For that reason, we provide a very generous free experience on the site, providing large parts of the site without a paywall.

With this in mind, due to the nature of our business (which is providing content), we do not provide refunds on subscription payments. Unfortunately, we've seen too many people take advantage of our generosity by signing up for a month, using what they need, and demanding a refund.

We opt to keep things flexible-- if you have an interview in a month, and just need it for that period of time, we encourage you to cancel right after! You can always re-subscribe should you need the materials at a later point.

Note: the exception is if you purchased a lifetime membership, you can request a refund within 3 business days. We understand this is a larger commitment and that mitigating circumstances can affect it.

Creating a Course

Would you like to add to the curriculum? Reach out to us.

Topics often include (but are definitely not limited to):

  1. Technical interviews
  2. Algorithms and data structures
  3. Javascript
  4. Software engineering careers
  5. Mentorship
  6. Philosophy
  7. Entrepreneurship
  8. Books and book reviews

We work with very favorable author-friendly splits. If you feel inspired and want to create great technical training material, while reaping the benefits of your creations, reach out!

One Pager Cheat Sheet

  • Welcome to AlgoDaily - the training platform with one mission: to help 1 million people become software engineers with at least $1 million net worth - where you'll learn how to use the platform, understand the AlgoDaily philosophy, get a tour of its features, and maximize your time on this site!
  • AlgoDaily strives to provide the skills and experience needed to land their first job in software engineering and earn a substantially livable wage, aiming to help 1 million people become software engineers with at least $1 million net worth.
  • We are determined to provide people who want to be software engineers with the most efficient route possible to get the best job, with our material being ruthlessly practical, quick to complete, engaging and visually stimulating.
  • Our platform offers interactive and practical crash courses to help people attain the desired technical background, completed with a daily newsletter, article mode, and interactive mode for easier navigation.
  • Receive AlgoDaily challenges and content with a subscription to the default newsletter.
  • Subscribe to the newsletter of your choice under your Account > General Settings to receive personalized content.
  • You can change your "Day On" attribute by going to the Settings tab (restricted to premium users).
  • You should take time to read, plan and run tests in order to solve coding challenges, as well as have the possibility to save your work and share your insights with others in the AlgoDaily forum.
  • The AlgoDaily approach emphasizes understanding the concept before attempting a compliant solution, rather than grinding 24/7.
  • We offer a code editor with a Run Code button in the toolbar to execute the code and see the output automatically, and a Reset button to go back to the initial code state.
  • Our community loves the Visualizer feature which allows users to step through a simple input with an algorithm, although it is not yet included on all challenges.
  • Marking challenges as Complete or passing all test cases helps you keep track of your progress and climb the leaderboard, but you'll need to be logged in to do so.
  • The leaderboard shows the users with the highest completions and longest streaks and can be programmatically updated multiple times per day and accessed through the dashboard.
  • You can now export all your AlgoDaily solutions from the settings page, making it easier for you to save your work for future reference.
  • We are introducing the Notes feature which allows you to clip and save screens as notes in each tutorial.
  • You must be logged in to COMPLETE the lesson and save it to your profile - congratulations, you've finished your first lesson!
  • Reach out to us if you would like to create great technical training material for topics such as Technical Interviews, Algorithms and Data Structures, Javascript, Software Engineering Careers, Mentorship, Philosophy, Entrepreneurship, and Books and Book Reviews, with very favorable author-friendly splits.