ico-magnifying_glass
    ico-arrow-big-left

    IBM Cognitive - Fun Challenge 2 - Translator

    PRIZES

    1st

    Register
    Submit
    The challenge is finished.
    Show Deadlinesicon-arrow-up

    Challenge Overview

    In this challenge, we will explore creating a custom application using Watson cognitive services and host it on Bluemix Platform. The custom application will utilize Tone Analyzer, Language Translator and Cloudant DB.

    Challenge Prizes

    This challenge is part of the Topcoder Cognitive Community challenge series.  There are no cash prizes.  You will win Cognitive points toward the leaderboard and the leader at the end of the challenge series wins an all expenses paid trip to TCO17.

    Points payout breaks down as follows:
    - 1st through 3rd place each get 500 points
    - 4th through 10th place each get 350 points
    - 11th place or lower each get 100 points

     

    Initial Setup

    1. If you have not already, go to http://cognitive.topcoder.com/  and click the Join the Topcoder Cognitive Community Button. Fill out the registration form and confirm your email address.
    2. Go to the challenge forum and follow the thread on how to setup or extend your Bluemix trial account.  Doing so will give you a Bluemix account without requiring you to enter your credit card information. Even if you did this on the last challenge, do it again to extend your free trial further for this challenge.
    3. Create a GitHub account if you don’t have one, and log in.


    Requirements

    The application should provide an api endpoint that takes a string and a target language as input, and outputs 3 things:
    - Translated text
    - Tone of the source text
    - Tone of the translated text

    The application should store the generated inputs and outputs in a cloudant db and should provide be a very basic UI demonstrating the use of the deployed application.

     

    Steps

    1. Fork this Bluemix Starter Pack to your own GitHub Repo: https://github.com/topcoderinc/Topcoder-StarterPack_BluemixNode

    2. Add Services for
      - Watson - Tone Analyzer
      - Watson - Language Translator
      - Data & Analytics - Cloudant NoSQL DB

    3. Create a GET API request with 2 endpoints
      - /api/translate
      - /api/history

    4. Implement the API defined in the attached Swagger doc.  You may use editor.swagger.io generators if you wish.  You also do not have to follow the API to the letter.  As long as the inputs and outputs work as required, you are welcome to make additions or corrections as you see fit.

    5. Create a very simple UI that uses the above Api. A sample UI screenshot are provided below. UI is provided for demonstration only, and not necessarily to implement as is. Feel free to experiment with the UI.  You will not be critiqued on the design of your UI, only the functionality surfaced in it.

    6. Follow the deployment instructions to deploy to your own Bluemix Account with the url format: tc-<yourhandle>-02translate.mybluemix.net

    NOTE: If you’re creating this application in such a way as you have the frontend and backend as deployed separate applications to bluemix, your URLs should be as such:
    UI:   tc-<yourhandle>-02translate.mybluemix.net
    API: tc-<yourhandle>-02translateapi.mybluemix.net
     

    Example UI
    Example UI

    Input Screen
     - Header JPG and PSD attached to this challenge.  Use them if you like, or make your own!
     - We recommend you use Bootstrap for UI, but you are not required
     - Show Translation History (not pictured above)
          - Show the last 5 translations (pulled from the cloudantdb)
          - Only show the input string, destination language, translated string.


    Completed Translation Screen

    The output screen layout is completely up to you.  You may show it on the same screen, or on a separate screen.  
    The items we need to see are:

    1. The input string
    2. The selected language
    3. The calculated input string tone
      - Only show the values for Social Tone (Openness, Conscientiousness, Extraversion, Agreeableness and Emotional Range)
      - You are welcome to get creative with how to show these values.
    4. The translation destination language
    5. The translated string
    6. The calculated translation string tone
      - Only show the values for Social Tone (Openness, Conscientiousness, Extraversion, Agreeableness and Emotional Range)
      - You are welcome to get creative with how to show these values.

    Final Submission Guidelines

    Final Submission Guidelines
    1. Deploy your application to your own Bluemix instance.
    2. Upload a .zip containing your source code and a text file called bluemix-deployment.txt.  This .txt file should contain the URL defined above for us to test.
    3. You can use any programming language to build the application, as long it’s supported by Bluemix, has an api, provides a UI, and meets the spec criteria.

     

    Review Guidelines

    Since this is a fun, educational challenge, the reviewer will be judging:
    1. If your deployed URL works as defined.  The test case is:
      - Input a string
      - Select a language and click “Go”
      - Make sure all values requested are returned
      - Try another translation to see if their previous ended up in the history
    2. Overall approach
      - Is your submission relatively clean (regardless of programming language)?
      - Were they able to break the UI with very basic testing?
      - Creativity applied to the UI

    Reliability Rating and Bonus

    For challenges that have a reliability bonus, the bonus depends on the reliability rating at the moment of registration for that project. A participant with no previous projects is considered to have no reliability rating, and therefore gets no bonus. Reliability bonus does not apply to Digital Run winnings. Since reliability rating is based on the past 15 projects, it can only have 15 discrete values.
    Read more.

    REVIEW STYLE:

    Final Review:

    Community Review Board
    ?

    Approval:

    User Sign-Off
    ?

    CHALLENGE LINKS:

    Review Scorecard