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
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 DOMName: login-form — POST
<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-form — POST
<form id="modal-signup-form" name="signup-form" method="POST" class="ajax-form medium-margin" ajax="/AJAX/hackerearth/signup/?source=challenge-competitive-1986589&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-reset — POST
<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