Giter VIP home page Giter VIP logo

sortbot's Introduction

sortbot

👋 Meet Sortbot

The Sortbot wants everything to be in order. Numerical, alphabetical, chronological, and even by surface area, the Sortbot needs everything in its proper place.

This API sends you lists to sort—by algorithm or, if you have a lot of time on your hands, manually (who doesn’t want to spend an afternoon sorting 1,000 numbers?).

Take the sortbot exam—where the sets get more and more complicated—and compare your speed with other entrants by submitting your completion token to the repository.

📖 How does it work?

To start an exam GET:

https://api.noopschallenge.com/sortbot/exam

The first question is easy—enter your GitHub username.

POST to sortbot/exam/start a JSON object with your username: { 'login': 'noops-challenge' }

Now we're getting somewhere! The exam is timed, so be quick.

The exam follows the same API pattern as the Mazebot.

When you POST your username, you'll receive a URL back from the API named nextSet—that URL has your state in it, and that's how Sortbot keeps track of where you are in the exam.

When you GET a request to /sortbot/exam/{state} you'll receive a JSON array with a question and instruction.

The question will be an array. The array could be composed of numbers, strings, or objects. The instruction will tell you how to sort the array. Following the instructions, sort the array, and POST it as a JSON object back to /sortbot/exam/{state}

If your response matches our solution, you'll get another question. If it doesn't...well, try again.

Sound like fun? Try our Ruby Solver to get a headstart on your exam, and then write your own solver in the language of your choice.

✨ A few ideas

  • Write a solver in a new-to-you language that accesses the API and returns the data sets correctly sorted.
  • Write a browser-based version that enables a human to sort a set themselves and see if they can ever beat a computer.
  • Computers are really good at sorting data. What are humans faster at sorting? What can we add to the API that would give a human a change to beat a robot?

Complete API documentation: API.md

More about Sortbot here: https://noopschallenge.com/challenges/sortbot

sortbot's People

Contributors

doolittle avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.