
Here we will talk a little about sports programming, to which many are accustomed. Recently,
An experimental round of Unknown Language Round # 1 was held at
Codeforces .
On it, participants were asked to solve some simple tasks (the
first ,
second and that's
it
the rest ). The peculiarity of the round is that tasks can be solved only in one programming language, which
not known to participants before the start of the round. It was announced that the language is not
mainstream language. In other words, the participants were asked to figure out the speed in 2.5 hours.
in an unfamiliar language and solve problems on it.
The language of this round was Tcl. As written in
Wikipedia: “Tcl (from the English. Command Command Language -` command language of tools', read `tickle 'or` tc-el')
- high level scripting language ".
The participants were also provided with the simplest Tcl program (folding two integers) and the ability to write
code in a WYSIWYG editor with the ability to run on the server side (for those who did not want to download and / or install
interpreter). Here is a link to the
official post on
Codeforces and round discussion .
The results exceeded our expectations. Many participants quickly figured out the syntax and basics of the unfamiliar
language and quickly began to solve problems. Some were even allowed to write elegant solutions. Here, for example the code on
simple, but still a task . In short, it should be
it was to sort the rows of the table according to several criteria
also given in the input.
')
set a [split [gets stdin]] set rules [split [gets stdin] ","] while {[gets stdin line]>=0} { lappend li $line } set rules [lreverse $rules] foreach {line} $rules { scan $line {%s %s} cname order set li [lsort [expr ([string equal $order "ASC"]?"-increasing":"-decreasing")] -index [lsearch $a $cname] $li] } foreach {line} $li { puts $line }
After the competition, shorter and more elegant codes were handed over to the reshenie.
Judging by the reviews - the experience was successful. Many participants enjoyed such entertainment. Apparently caught
a certain drive, understanding the language, competing in the ability to quickly penetrate into something new.
It should be noted that “similar entertainment” was first proposed by me, it seems, five years ago.
Saratov State University together with the company
Mirantis conducts
annual courses in Java and C / C ++. I teach Java courses - the subject is sometimes difficult, for example, already at the second lesson a couple of days ago we
We studied how class loading in Java works, how to write your own loaders. Selection of course participants is not a trivial task. Those wishing to come 50-100 people, and it is necessary to select
ten people in each of the two groups. I proposed a selection that consisted of solving simple problems on
unfamiliar language. It is easily automated and allows you to assess the ability to quickly learn, proves the ability of a person in principle to write
program, does not depend on the knowledge of the candidate in a particular area, easily scaled to any number of candidates. Perhaps the past five
years proved its effectiveness - people are selected for the courses they need, with them it is interesting later
work.
Recently, we were approached by users from Iran with a proposal to repeat the experiment. They were
Tasks were prepared, and
Unknown Language Round # 2 was set for March 20 (New Year's Eve in Iran). Of course,
the language of the round will be different. What exactly? While the secret :) Here is a link to the
official post and discussion .
I invite you to join and take part in such an unusual competition. On that
its duration will be 3 hours, beginning
on March 20th at 7:00 pm (Moscow time) .
For simplified registration on
Codeforces, you can use Gmail, OpenID
and even a VK account.
Several links: