IP2Location PHP Library Optimization Contest

PHP Programming

Please join our IP2Location PHP Library Optimization contest. We are giving away US$100.00 to one programmer who can speed up the IP2Location PHP Library to achieve the fastest query time.

How do I join the contest?

You need to have a free account in IP2Location LITE. If you do not have one, you may register for one at http://lite.ip2location.com/sign-up. Then, send us the enrolment request by email at support@ip2location.com with a title IP2Location PHP Library Optimization Contest. We will reply you within 2 working days to confirm your participation.

What is the prize?

We will be giving away US$100.00 to one final winner.

What is the duration of this contest?

This contest is open for all PHP developers and will run from 1st April 2016 (00:00 UTC+0) to 31st May 2016 (23:59 UTC+0).

When will the winner be announced

The winner will be announced on the 30th June 2016.

What is the winner selection criteria?

This contest is all about query time speed optimization. The participant with the fastest query time using our standard benchmark script and environment will win this contest. However, our Panel of Judges will also review all source codes changes to make sure the modification adhered to the terms and conditions.

The Panel of Judges' decision is final and NO appeal shall be allowed.

In the event of a tie, the prize will be shared equally among the winners.

Where can I get the IP2Location PHP Library and BIN data file for my local development?

You can download the IP2Location PHP Library from github.

For the BIN database, please download the DB11.LITE BIN file for testing.

How do I test my modifications?

We will issue every participant a dedicated testing account on our test server. You will need to login to our server to evaluate the query time. This is to make sure that all participants are benchmarking their query times using the same hardware environment. We wil use the same test server to re-evaluate your modified PHP library.

Below are the procedures for the testing.

  1. Login to the test server.
  2. Change the directory to resources.
    cd resources
  3. Open the IP2Location.php file using vi editor, and replace the code with your submission codes.
    vi IP2Location.php
  4. Run the test script.
    php test.php
  5. Open testing_report.txt to view the total time taken for query.

How do I submit my improved version of IP2Location PHP Library?

You are required to submit your optimized PHP library file, IP2Location.php at submission page. We will re-test your library file for the query time result. After that, we will email you the result that we obtained, and this result will be the official result for us to determine the final winner.

Can I know my current ranking?

We will publish the best query time that we have obtained from participants' submissions at the submission page. You may use this information to gauge your benchmark data.

What are the guidelines or restrictions for source codes modification?

Please visit the Other Terms and Conditions section for the information.

Other Terms and Conditions

  • Cash prize will be transferred to winner via Paypal.
  • Prize is non-transferable and non-substitutable.
  • Up to 5 submissions per participant are allowed within the contest duration. We will pick the best query time result obtained per participant.
  • You shall only modify the IP2Location PHP Library file, IP2Location.php, to optimize the query performance.
  • You are not allowed to modify IP2Location BIN data file and the test script (test.php).
  • The modification shall be done solely using the PHP language and only the PHP libraries supported in our test server. You are not allowed to use additional 3rd party library, OpenSource or Non-OpenSource, in your modification.
  • You are not allowed to execute external shell commands from the library.
  • You are not allowed to modify, remove or edit the public function name, parameters and the variables exposed in the library.
  • By participating in this contest, you consent to IP2Location.com using your personal data for publishing in any mass media, social media or marketing materials for advertising or publicity purposes in any manner as IP2Location.com deems necessary.
  • By participating in this contest, you warrant that all materials submitted herein are the rightful property of yours and do not infringe or violate the rights of any other third party. Your agree to indemnify and keep indemnified IP2Location.com and its subsidiaries, affiliates, partners, employees, agents, advertising agencies and others associated with the development and execution of this contest, against any and all injuries, claims, losses, damages, and/or expenses whatsoever arising from any infringement or violation of the rights of any third party intellectual property.
  • By participating in this contest, you grant IP2Location.com all rights to include the source codes as part of their library in all future releases.
  • IP2Location.com reserves the right to change or alter the terms and conditions as stated herein at any time by placing such amended terms and conditions on the contest's website.
  • IP2Location.com reserves the right to suspend, discontinue, or cancel the contest for whatever reason whereby in such event, you shall not make any claim against IP2Location.com and IP2Location.com shall not be liable to you for whatsoever losses or damages that have incurred by or may be suffered by you.