Telegram Contests
βœ”
132K subscribers
2 photos
3 videos
62 files
245 links
Here we announce Telegram coding contests in Android Java, iOS Swift, JS, C/C++. Discussion: @contests
Download Telegram
The winners of the Telegram JavaScript Contest have been selected.

We received 560 scripts in this competition. We were truly impressed by the skill and attention to detail shown by many participants.

Meet the winners:

1st place – $10,000 each

πŸ₯‡ @tolyayanot – LINK
Incredible size – only 4Kb after gzip. Impressive performance on a wide variety of devices.

πŸ₯‡ @v11141n – LINK
Amazing usability and attention to detail. Small things like the shaking animation when you try to disable all data on a graph won our hearts.

2nd place – $3,000 each

πŸ₯ˆ @deNULL – LINK
πŸ₯ˆ @pavlo – LINK
πŸ₯ˆ @vshabanov – LINK
πŸ₯ˆ @zinchuk – LINK

3rd place – $2,000 each

πŸ₯‰ Denys Sokolov – LINK
πŸ₯‰ @energizer91 – LINK
πŸ₯‰ @ftkvyn – LINK
πŸ₯‰ @stasminchenko – LINK
πŸ₯‰ Alexander Pervushin – LINK
πŸ₯‰ Anonymous – LINK
πŸ₯‰ @dkaraush – LINK
πŸ₯‰ @nekrtemplar – LINK

4th place – $1,000 each

πŸŽ– @AlekseyMironenko – LINK
πŸŽ– Alexander Prokofyev – LINK
πŸŽ– @hypercrab – LINK
πŸŽ– @qtran – LINK
πŸŽ– Valeriy Katkov – LINK
πŸŽ– @broadsw0rd – LINK
πŸŽ– @ilya_merkulov – LINK
πŸŽ– @tzador – LINK
πŸŽ– @yurysmykalov – LINK

Congratulations to the winners!

All participants must have received feedback on their apps from the bot by now. Unfortunately, a large part of the submissions were not optimized for popular mobile devices – either showing critically insufficient performance or not functioning at all. We had to discard all such apps, as well as those that significantly departed from the contest design guidelines.

As a result of Stage 1, we’ve distributed $176,000 among Android, iOS and JS developers. At least another $150,000 will be distributed in Stage 2 that starts later today.

In Stage 2, all submissions will be publicly available for everybody to test and review. The participants of Stage 2 will be able to find and publicly report issues in the apps of their fellow contestants for at least a week before the results are announced.

We’ll be back with details of Stage 2 this evening.
Announcing Stage 2 of the Chart Coding Competition for Android, iOS and JavaScript developers.

Dates: April 7-15. The last submission will be accepted via @jobs_bot at 11:59 PM CET, April 15.

Prize budget: at least $150,000 to be distributed among the winners.

Who can participate: Everybody. However, those who went through Stage 1 will have significant competitive advantage.

Goal: Build 5 graphs based on the input data we provide. In addition to line charts developed in Stage 1, we are inviting developers to support 3 new chart types: line charts with 2 Y axes, bar charts and percentage stacked area charts.

Those who aim for the first prize will also have to support the zoom in / zoom out feature and pie charts. Zooming in allows to expand each data point into another graph with a more detailed X-axis. For example, each point on a 365-day daily graph can be zoomed into a 24-hour graph on a 168-hour timeline, as shown on one of the video demonstrations below.

Here are the 5 graphs expected in the contest:

1. A line chart with 2 lines, exactly like in Stage 1 (Screenshot 1).

Bonus goal: A line chart with 2 lines that zooms into another line chart with 2 lines (Screenshot 2), as shown on the first video below.

2. A line chart with 2 lines and 2 Y axes (Screenshot 3).

Bonus goal: A line chart with 2 Y axes that zooms into another line chart (Screenshot 2), as shown on the first video video demonstration below.

3. A stacked bar chart with 7 data types (Screenshots 5-6).

Bonus goal: A stacked bar chart with 7 data types which zooms into another stacked bar chart with 7 data types.

4. A daily bar chart with single data type (Screenshot 7).

Bonus goal: A daily bar chart with a single data type zooms into a line chart with 3 lines (the other two lines can represent values from 1 day and 1 week ago, as shown on Screenshot 8). Please see the second video demonstration below.

5. A percentage stacked area chart with 6 data types (Screenshots 9, 10).

Bonus goal: A percentage stacked area chart with 6 data types that zooms into a pie chart with average values for the selected period (Screenshot 11). See the third video demonstration below.

Note that you are not expected to implement the zooming transitions exactly as shown in the video demonstrations. They may be replaced with any slick and fast transition of your choice.

The Y-scale on line graphs should start with the lowest visible value (Screenshot 4). A long tap on any data filter should uncheck all other filters.

As in Stage 1, we will provide input data for all 5 graphs within the next 24 hours. We’ll also be updating you on the testing process, which, as mentioned before, will be public.

Good luck!
Screenshots.zip
10 MB
Upd. Screenshot 3 on April 7, 9:56 AM CET
This media is not supported in your browser
VIEW IN TELEGRAM
Chart 1 + Bonus Goal.

Upd. April 7, 9:44 AM CET
This media is not supported in your browser
VIEW IN TELEGRAM
Chart 5 with Bonus Goal. You may use any transition you like.
When selecting the winners of Stage 2, we will consider speed, attention to detail and functionality.

We will test and potentially award all developers that correctly implemented the 5 chart types described above.

Some developers may choose not to implement the bonus goal, focusing on speed and usability of the main graphs instead. Others may opt to aim for the big prize. Either strategy has its good points.

Have fun finding the best approach. We’ll be back with the input data tomorrow.
Telegram Contests pinned Β«Announcing Stage 2 of the Chart Coding Competition for Android, iOS and JavaScript developers. Dates: April 7-15. The last submission will be accepted via @jobs_bot at 11:59 PM CET, April 15. Prize budget: at least $150,000 to be distributed among the winners.…»
Please find the input data for Stage 2 in the archive below. There are 5 folders there, each containing a .json for the corresponding graph (β€œoverview.json”) and 12 subfolders (β€œYYYY-MM”) with "zoomed" graphs for each day of each month (β€œDD.json”). The subfolders with daily graphs are required only for those aiming to achieve the bonus goal.

Compared to Stage 1, we added a few new parameters and chart types into the JSONs.

chart.columns – List of all data columns in the chart. Each column has its label at position 0, followed by values.
x values are UNIX timestamps in milliseconds.

chart.types – Chart types for each of the columns. Supported values:
"line",
"area”,
"bar”,
"x" (x axis values for each of the charts at the corresponding positions).

chart.colors – Color for each variable in 6-hex-digit format (e.g. "#AAAAAA").
chart.names – Name for each variable.
chart.percentage – true for percentage based values.
chart.stacked – true for values stacking on top of each other.
chart.y_scaled – true for charts with 2 Y axes.
Note that in the input data provided above, the β€œzoomed” per hour data for each day (Charts 1, 2 and 3) can be accompanied by data for up to 6 other days – typically, 3 days preceding and 3 days following the requested day. This structure allow to display the bottom navigation bar in the β€œzoomed” mode using just one data file.

For those who don’t need this optimization, we prepared the same data with no additional days included when zooming. See the archive below.

(All of this is relevant only for the developers who are aiming for the bonus goal. The rest can just use the "overview.js" files.)
Earlier today our designers fixed glitches in Video 1 and Screenshot 3. To make up for their mistake for you, they came up with color descriptions used in all the screenshots. They hope you might find these descriptions useful, particularly those for colors with opacity parameters.

https://telegra.ph/JS-Design-Specification-04-07
https://telegra.ph/Android-Design-Specification-04-07
https://telegra.ph/iOS-Design-Specification-04-07
The coding contest ends tomorrow at 11:59 PM CET, April 15. To avoid doubt – this is 28 hours from now.

@jobs_bot has just started accepting apps.

To submit your app for the coding competition, start @jobs_bot and select β€œApril Coding Competition”. The bot will ask you a couple of questions and will be ready to receive the app (.APK/.IPA/.ZIP).

Please note that the JavaScript submission mechanics have changed compared to Stage 1. We now expect a .ZIP file containing an index.html evoking all the dependent resources using relative addresses.

During the evaluation week, independent testers will be able to download your apps and run them locally.
Telegram Contests
The coding contest ends tomorrow at 11:59 PM CET, April 15. To avoid doubt – this is 28 hours from now. @jobs_bot has just started accepting apps. To submit your app for the coding competition, start @jobs_bot and select β€œApril Coding Competition”. The bot…
In addition to the above:

1. JavaScript developers that use AJAX requests in their scripts may keep them, as long as all the paths in their scripts are relative.

To simplify the testing process of such JS apps for third parties, we will host them on our domain.

2. As in Stage 1, iOS developers are still expected to include the 4 UDIDs provided by @jobs_bot. iOS developers that managed to obtain TestFlight links for their apps are welcome to submit these links in addition to the .IPAs.

The public testing of the iOS apps shall be performed using the re-signing technique described here.
12 JavaScript developers have already submitted their apps to @jobs_bot ahead of today's deadline. Unfortunately, at least 3 of them used absolute paths. Such apps will have to be discarded.

If you are submitting JavaScript code, please double check that all paths you use are relative.
286 developers submitted their apps for the April Coding Contest. Among them, 130 developers used JavaScript, 62 iOS Swift and 94 Android Java. Interestingly, 10 developers managed to send their apps during the last minute of the allowed time (11:59 PM CET).

Given the difficulty and the timeframe of the contest, we are excited too see so many developers taking part in Stage 2.

Within the next 24 hours, we’ll make all the apps available for public review.
All the 286 apps submitted during the contest are now publicly available for review at https://contest.dev

During the next 7 days, everybody is welcome to find and report issues in the competing apps. The developers have the opportunity to publicly reply to issues found in their apps.

To make the perception of the apps unprejudiced, each contestant has been assigned a random alias.
As you may have noticed, the Contest Platform now allows testers to vote for apps.

This voting process won't define who will win the Contest, but will help us ensure we don't miss any high-quality submissions.

The apps are sorted by rating (i.e. the number of votes) by default, but you can choose to sort them by submission time or issue count.