www.hackerearth.com Open in urlscan Pro
2a02:26f0:6c00::210:bab2  Public Scan

Submitted URL: https://u20898730.ct.sendgrid.net/ls/click?upn=uAhBnF9EpWUNdnN-2B06LbcVFgARY0mGCqGGWYCmKk-2FyzIVNwSgY6Wh2LYvvXL3Y-2Fs6NxV3mO4QPMX4...
Effective URL: https://www.hackerearth.com/en-us/challenges/competitive/ballerina-coding-challenge/?utm_source=email&utm_medium=footer&utm_...
Submission: On August 24 via api from SG — Scanned from DE

Form analysis 3 forms found in the DOM

Name: login-formPOST

<form id="modal-login-form" name="login-form" method="POST" class="ajax-form medium-margin" ajax="/AJAX/login/" data-hs-cf-bound="true">
  <div class="wrapper small-wrapper">
    <input type="text" name="login" placeholder="Username or Email" required="" id="id_login">
  </div>
  <div class="wrapper small-wrapper">
    <input type="password" name="password" placeholder="Password" required="" id="id_password">
  </div>
  <input type="hidden" name="next" value="/en-us/challenges/competitive/ballerina-coding-challenge/">
  <div>
    <a href="#" class="link-3 show-hide-many login-signup-link" show="password-reset" hide="login-form">Forgot Password?</a>
    <div class="clear"></div>
  </div>
  <div class="login-footer standard-margin">
    <div>
      <input type="submit" name="submit" clicked="Logging In.." value="Log in" class="button login-btn weight-600 large">
    </div>
    <div class="align-center dark regular dont-have-account"> Don't have an account? <a href="#" class="login-signup-link show-hide-many regular bold" show="signup-form-div" hide="login-form"> Sign up</a>
    </div>
  </div>
</form>

Name: signup-formPOST

<form id="modal-signup-form" name="signup-form" method="POST" class="ajax-form medium-margin" ajax="/AJAX/hackerearth/signup/?source=challenge-competitive-1986589&amp;next=/en-us/challenges/competitive/ballerina-coding-challenge/"
  data-hs-cf-bound="true">
  <div class="wrapper small-wrapper float-left">
    <input type="text" name="first_name" placeholder="First Name" maxlength="30" required="" id="id_first_name">
  </div>
  <div class="wrapper small-wrapper float-right">
    <input type="text" name="last_name" placeholder="Last Name" maxlength="30" id="id_last_name">
  </div>
  <div class="clear"></div>
  <div class="wrapper small-wrapper">
    <input type="text" name="email" placeholder="Email" maxlength="75" required="" id="id_email">
  </div>
  <div class="wrapper small-wrapper password-wrapper">
    <input type="password" name="password" placeholder="Password" required="" id="id_password">
    <div class="password-tooltip hidden">
      <div class="tooltip-heading align-center">Password requirements</div>
      <ul>
        <li id="js-alphabet"><span>An alphabet</span></li>
        <li id="js-number"><span>A number</span></li>
        <li id="js-special"><span>A special character</span></li>
        <li id="js-length"><span>Minimum 8 characters</span></li>
      </ul>
    </div>
  </div>
  <div class="wrapper small-wrapper signup-captcha">
    <input type="hidden" name="g-recaptcha-response" id="id_recaptcha"> This site is protected by reCAPTCHA and the Google <a href="https://policies.google.com/privacy">Privacy Policy</a> and
    <a href="https://policies.google.com/terms">            Terms of Service</a> apply.
  </div>
  <div class="signup-footer medium-margin">
    <button id="signup-start-now" class="button login-btn weight-600 large disabled recaptcha-v3 " target="gdpr-modal" recaptcha-site-key="6LeyqcIZAAAAAOcy_5WJORJsuu9zmbZZxIRp4-em" data-action="signup" country-code="DE"
      target-form="modal-signup-form">Sign up</button>
    <div class="align-center regular dont-have-account"> Have an account? <a href="#" class="show-hide-many regular login-signup-link bold" show="login-form" hide="signup-form-div"> Log in</a>
    </div>
  </div>
  <style>
    #gdpr-modal {
      position: absolute;
      bottom: 0;
    }
  </style>
  <div id="gdpr-modal" class="modal-window smaller-modal hidden">
    <style>
      #gdpr-modal-content {
        font-family: 'Open Sans', sans-serif;
      }

      #gdpr-modal-content .modal-header {
        padding: 50px 55px 35px 55px;
        font-size: 24px;
        font-weight: 400;
      }

      #gdpr-modal-content .modal-footer {
        padding: 25px 55px 90px;
      }

      #gdpr-modal-content .modal-content {
        padding: 0 55px 5px;
        font-size: 16px;
        line-height: 22px;
      }

      #gdpr-modal-content .modal-footer .checkbox-row {
        font-size: 16px;
        display: inline-flex;
      }

      #gdpr-modal-content a {
        color: #0099ff;
      }

      #gdpr-modal-content .button.disabled {
        background: #f5f6f6 !important;
      }
    </style>
    <div id="gdpr-modal-content">
      <div class="modal-header">HackerEarth’s Privacy Policy and Terms of Service</div>
      <div class="modal-content"> We care about your data privacy. HackerEarth uses the information that you provide to contact you about relevant content, products, and services. <br> <br> Our <a href="/privacy/" target="_blank">Privacy Policy</a>
        and <a href="/terms-of-service/" target="_blank">Terms of Service</a> will help you understand that you are in control of your data at HackerEarth. </div>
      <div class="modal-footer">
        <div class="margin-bottom-15 regular checkbox-row">
          <input type="checkbox" name="gdpr-tnc"> I have read and I agree.
        </div>
        <div class="">
          <input type="submit" name="submit" value="Proceed" class="button btn-blue fontawesome btn-largest disabled large" id="gdpr-submit">
        </div>
      </div>
    </div>
  </div>
  <script type="text/javascript" src="https://static-fastly.hackerearth.com/static/hackerearth/password-requirements.99680283a61f.js" crossorigin="anonymous" defer=""></script>
  <script type="text/javascript">
    window.onload = showPasswordTooltip($('.password-wrapper #id_password'), false);
    showPasswordTooltip($('#password-error #id_password'), true);
  </script>
</form>

Name: password-resetPOST

<form name="password-reset" method="POST" class="ajax-form" ajax="/AJAX/password/reset/?next=/en-us/challenges/competitive/ballerina-coding-challenge/" data-hs-cf-bound="true">
  <p class="regular"> A password reset link will be sent to the following email id</p>
  <div class="wrapper">
    <input type="text" name="email" size="30" placeholder="Email" required="" id="id_email">
  </div>
  <div class="reset-footer medium-margin">
    <input id="reset-password" type="submit" name="submit" clicked="Sending.." value="Send Password Reset Link" class="button login-btn weight-600">
    <button id="login-link" class="login-link show-hide-many link-btn button-medium pointer bold" show="login-form" hide="password-reset">Back to login page</button>
  </div>
  <script>
    $('#reset-password').click(function() {
      $('#login-link').addClass('hidden');
    })
  </script>
</form>

Text Content

We use cookies to improve your experience and track website usage.I
understandCookie Policy

Ensure that you are logged in and have the required permissions to access the
test.

A server error has occurred. Please refresh the page or try after some time.

An error has occurred. Please refresh the page or try after some time.





   
 * PRACTICE
   
 * COMPETE
   
 * JOBS
   
 * LEADERBOARD

   
 * 
 * LOGIN
 * SIGN UP
   


HackerEarth’s Privacy Policy and Terms of Service
We care about your data privacy. HackerEarth uses the information that you
provide to contact you about relevant content, products, and services.

Our Privacy Policy and Terms of Service will help you understand that you are in
control of your data at HackerEarth.
I have read and I agree.


Please refresh the page to see the time in your system timezone

Comment permalink


OPENS AT: Sep 21, 11:01 PM

CLOSES AT: Sep 24, 10:59 PM

DURATION: 3 days

REGISTER


BALLERINA CODING CHALLENGE

Online 1705 Registered



SOCIAL SHARE




INVITE FRIENDS VIA EMAIL

Login to invite friends


ABOUT CHALLENGE

Ballerina is an open-source programming language for the cloud that makes it
easier to use, combine, and create network services.

During this hackathon, you will learn and use Ballerina comprehensively to solve
problems and discover better ways to optimize network services. Welcome, and
enjoy!



Want to know more about Ballerina?

 * Visit our website
 * Download Ballerina
 * Browse our learn Ballerina page



Instructions

 * Each problem has an associated Ballerina package template, and you must use
   that template to write your solution.
 * Example inputs and outputs are listed in each problem description, and
   Ballerina test cases are available for each example in the provided package
   template.
 * Please follow the Get Started with Ballerina Guide to set up Ballerina for
   local development.
 * Test your solution by running "bal test" from the package root directory.
 * You are welcome to test your solution by adding more test cases. However, we
   will not use your test cases to try out the submitted solution.
 * Alternatively, you can use the “Run code” button in the web IDE to run the
   sample tests.
 * Once you are confident with your solution, use the “Submit code” button in
   the web IDE to submit your solution. You can continue to resubmit until your
   submission obtains a satisfactory score.

Note:

The built-in web IDE of the HackerEarth platform has limited support for
Ballerina, thus we recommend you set up Ballerina locally. You can download
VSCode and install the Ballerina VSCode Extension from the marketplace. For each
problem, you can download the package folder locally, implement the solution,
test it, and then copy your solution into the web IDE in HackerEarth for
submission.

Main Prizes (5000 USD, 2500 USD, and 1000 USD)

 * You must make successful submissions for the following problems:
   * Category 1: Any three problems
   * Category 2: All problems
   * Category 3: Any four problems
   * Category 4: All problems
   * Categories 5, 6, and 7: Any three problems from all 3 categories
 * A submission is considered as successful if you score at least 7 out of 10.
 * The above criteria define the minimum needed to be eligible for the main
   prizes.
 * We encourage you to submit solutions to as many problems as you can to
   increase your total score and chances of winning the main prizes.

Consolation Prizes (50 USD consolation prizes)

 * You must score at least 5 out of 10 for the below problems:
   * Category 1: Any two problems
   * Category 2: Any two problems
   * Category 3: Any three problems
   * Category 4: All problems (This category has only 1 problem)
 * Out of the candidates who fulfills the above criteria, top 50 by the overall
   score will be selected for the consolation prizes.


ABOUT COMPANY

Founded in 2005, WSO2 enables thousands of enterprises, including hundreds of
the world’s largest corporations, top universities, and governments, to drive
their digital transformation journeys—executing more than 60 trillion
transactions and managing over 1 billion identities annually. Using WSO2 for API
management, integration, and customer identity and access management (CIAM),
these organizations are harnessing the full power of their APIs to securely
deliver their digital services and applications. Our open-source, API-first
approach to software that runs on-premises and in the cloud helps developers and
architects to be more productive and rapidly compose digital products to meet
demand while remaining free from vendor lock-in. WSO2 has over 900 employees
worldwide with offices in Australia, Brazil, Germany, India, Sri Lanka, the UAE,
the UK, and the US.


GUIDELINES

 * This coding challenge consists of 20 problems categorized under the following
   categories:
   * Category 1: Language basics (4 questions)
   * Category 2: Working with databases...

more
 * This coding challenge consists of 20 problems categorized under the following
   categories:
   * Category 1: Language basics (4 questions)
   * Category 2: Working with databases (4 questions)
   * Category 3: HTTP Client support (5 questions)
   * Category 4: HTTP RESTful services (1 question)
   * Category 5: GraphQL (2 questions)
   * Category 6: WebSocket (2 questions)
   * Category 7: WebSub (2 questions)
 * The model for this challenge is to “Climb the Ladder”.
 * All code must be written using Ballerina.
 * You have 48 hours to complete your solutions, starting Thursday, 22
   September, 2022 at 12.00 a.m. (GMT). We recommend you look at the Ballerina
   Learn page to familiarize yourself with the language.
 * As shown above, there will be 20 problems covering the main features of
   Ballerina. Each problem is worth 10 points. Whoever gets the most points with
   the best code quality will be declared the winner.
 * We will take the top 20 (by points obtained) and hand them over to a group of
   expert judges to choose the top 3 winners.
 * The judges will consider the correctness, authenticity, and how well you have
   utilizedBallerina's strengths when selecting the top 3.
 * You can participate even if you know a WSO2 contributor or one of the judges
   - we will do our best to ensure that nepotism does not occur.
 * You retain the ownership of all submitted code after the competition.
 * Entry to the competition is FREE.

Judging Criteria

 * A set of test cases that are different from the sample test cases will be
   executed once you submit your code and you will be able to see your score out
   of 10 once the evaluation is completed.
 * For each submission, you will receive a test score (test_score) based on the
   number of test cases that passed. The maximum test score for a submission is
   10.
 * Top 50 participants who meet the eligibility criteria for consolation prizes
   (50 USD) will receive the prize. In case of a tie (by score), the total time
   (the lower the better) taken to complete the challenge will be considered.
 * Top 20 participants with the highest score who meet the eligibility criteria
   for the main prizes will be picked for judges to evaluate their submissions
   for the main prizes.
 * Our judges will review the code based on correctness, authenticity and how
   well they showcase Ballerina's strengths. Based on this, they will assign a
   code review score (code_review_score). The maximum code review score for a
   submission is 10.
 * The final score (submission_score) of a submission will be calculated as
   follows:

submission_score = test_score * 0.8 + code_review_score * 0.2

 * The total score of the 20 participants will be adjusted with the submission
   score as calculated above.
 * The participant with the highest total score will receive the 1st prize (5000
   USD).
 * The participant with the second-highest total score will receive the 2nd
   prize (2500 USD).
 * The participant with the third-highest total score will receive the 3rd prize
   (1000 USD).
 * Out of the candidates who fulfills the above criteria, top 50 by the overall
   score will be selected for the consolation prizes.

The hackathon is not open to officers, directors, employees, and advisory board
members (and their immediate families and members of the same household) of
WSO2, and its subsidiaries, interns, contractors, agents, judges, advertising
and promotion agencies, and respective affiliates.


FAQS

1. How can I set up Ballerina locally?

Please follow the Get started with Ballerina guide.

2. How can I test my solution?

In the web IDE, you can use the “Run code” butt...

more

1. How can I set up Ballerina locally?

Please follow the Get started with Ballerina guide.

2. How can I test my solution?

In the web IDE, you can use the “Run code” button. Locally (or in terminal) you
can use the “bal test” command to run the tests.

3. Where can I get help?

You can visit the Ballerina Discord server to find help regarding this challenge
and Ballerina in general.

4. What will happen if I submit solutions to more problems than those specified
in the eligibility criteria for the main prize?

The eligibility criteria define the minimum you need to do. Therefore, submit as
many solutions as possible because we take the scores of all submitted solutions
to figure out the top 20.

5. What will happen if I submit solutions to more problems than those specified
in the eligibility criteria for the consolation prizes?

The eligibility criteria defines the minimum you need to do. You must be among
the top 50 by score to receive a consolation prize. To increase your chances,
submit solutions to as many problems as possible.

6. What if I’m eligible for the consolation prizes but tied at rank 50?

In case of a tie, the total time taken to complete the challenge is considered
in the ascending order. Therefore, try to complete the challenge as soon as
possible.

By participating in this campaign, I agree to applicable Terms and Services.


Tell your friends
Great! You have been registered to the challenge, now tell your friends about
it.

Twitter Facebook

Note: You have to be logged in to participate in the challenge. Signup Now
Restricted Challenge – No Access




Log in
Sign up
Reset Password
Forgot Password?

Don't have an account? Sign up
Password requirements
 * An alphabet
 * A number
 * A special character
 * Minimum 8 characters

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of
Service apply.
Sign up
Have an account? Log in
HackerEarth’s Privacy Policy and Terms of Service
We care about your data privacy. HackerEarth uses the information that you
provide to contact you about relevant content, products, and services.

Our Privacy Policy and Terms of Service will help you understand that you are in
control of your data at HackerEarth.
I have read and I agree.


A password reset link will be sent to the following email id


Back to login page
HackerEarth’s Privacy Policy and Terms of Service
We care about your data privacy. HackerEarth uses the information that you
provide to contact you about relevant content, products, and services.

Our Privacy Policy and Terms of Service will help you understand that you are in
control of your data at HackerEarth.
I have read and I agree.

 * +1-650-461-4192
 * contact@hackerearth.com

 * 
 * 
 * 
 * 


FOR DEVELOPERS

 * Hackathons
 * Challenges
 * Jobs
 * Practice


FOR BUSINESSES

 * Hackathons
 * Assessments
 * FaceCode
 * Learning and Development


KNOWLEDGE

 * Practice
 * Interview Prep
 * Codemonk
 * Engineering Blog


COMPANY

 * About us
 * Careers
 * Press
 * Support
 * Contact
 * Privacy Policy

 * © 2022 HackerEarth All rights reserved
 * Terms of Service
 * Privacy Policy

Logout

Notifications
Mark All as Read


View All Notifications











?







×
We Value Your Privacy
Settings
NextRoll, Inc. ("NextRoll") and our advertising partners use cookies and similar
technologies on this site and use personal data (e.g., your IP address). If you
consent, the cookies, device identifiers, or other information can be stored or
accessed on your device for the purposes described below. You can click "Allow
All" or "Decline All" or click Settings above to customize your consent.
NextRoll and our advertising partners process personal data to: ● Store and/or
access information on a device; ● Create a personalized content profile; ●
Select personalised content; ● Personalized ads, ad measurement and audience
insights; ● Product development. For some of the purposes above, our advertising
partners: ● Use precise geolocation data. Some of our partners rely on their
legitimate business interests to process personal data. View our advertising
partners if you wish to provide or deny consent for specific partners, review
the purposes each partner believes they have a legitimate interest for, and
object to such processing.
If you select Decline All, you will still be able to view content on this site
and you will still receive advertising, but the advertising will not be tailored
for you. You may change your setting whenever you see the Manage consent
preferences on this site.
Decline All
Allow All
Manage consent preferences