germanattanasio / nycschoolfinder

:pencil2: NYC School Finder using Watson APIs - Watson Hackathon Project
http://nyc-school-finder.mybluemix.net/
MIT License
12 stars 22 forks source link

NYC School Finder

Watson Hackathon Entry from Havas Worldwide New York - 4-5 May, 2015

Links

Technical overview

  1. NYC Open Data datasets used for our school listings. We pulled multiple data sets on NYC high schools from their APIs, cached them into Cloudant, Took the basic data + school performance + SAT scores, safety, etc.

  2. This School data is then analyzed for personality insights, and that is cached into Cloudant as well.

  3. When you submit sample text, it's sent to personality insights on the fly. We have some autobiographical writing samples as well for you all to try out.

  4. The student's profile is then compared with every single school in the database, and the best matches are displayed in this interactive visualization.

  5. The matches are additionally fed into tradeoff analytics leveraged to further refine based on not only the personality match score, but also SAT scores, graduation and college rates, much more data available.

  6. Uses personality insights to generate suggested careers based on existing personality to career research

Running locally

The application uses Node.js and npm so you will have to download and install them as part of the steps below.

  1. Copy the credentials from your VCAP_SERVICES service in Bluemix to VCAP_SERVICES.json, you can see the credentials using:

    $ cf env <application-name>

    Example output:

    System-Provided:
    {
    "VCAP_SERVICES": {
      "personality_insights": [{
          "credentials": {
            "url": "<url>",
            "password": "<password>",
            "username": "<username>"
          },
        "label": "personality_insights",
        "name": "personality-insights-service",
        "plan": "Standard"
     }]
    }
    }

    You need to copy the credentials for Personality Insights, Tradeoff Analytics and Cloudant.

  2. Install Node.js

  3. Go to the project folder in a terminal and run:

  4. Install the dependencies

    $ npm install
  5. Go to https://cloudant.com/ and use the credentials from the VCAP_SERVICES to create two databases: schools and tradeoffs.

  6. Populate the databases with school information

    $ npm run train
  7. Start the application

    $ npm start
  8. Go to http://localhost:3000

Team

HOW TO WIN HACKATHONS

  1. Make sure your demo is FAST. If any processing is too slow, CACHE IT.
  2. Make a rad intro video.

License

See the LICENSE file for license rights and limitations (MIT).