ivanromanov's blog

By ivanromanov, 11 years ago, In English

I'm going to attend World Finals in St. Petersburg and have shared my reasons on why do I go here: http://battleofthebrains.podbean.com/2013/06/17/why-do-i-go-to-the-acm-icpc-world-finals/

Full text and comments »

  • Vote: I like it
  • +123
  • Vote: I do not like it

By ivanromanov, 11 years ago, translation, In English

I have visited ACM-ICPC Headquarters on May 15, it was cool!

More pictures and a few comments in Russian are in my blog: http://ivanromanov.livejournal.com/10154.html

Full text and comments »

  • Vote: I like it
  • +121
  • Vote: I do not like it

By ivanromanov, 11 years ago, In English

Anyone up for a dinner in Budapest now? Text me +41793974157

P. S. It's cool here! Although really warm :-)

UPD. Was served a cup of tea with beautiful lemon press:

Had great traditional Hungarian pancakes "palacsintak". Strongly recommend, especially if you don't mind having burning rum on it:

Full text and comments »

  • Vote: I like it
  • +85
  • Vote: I do not like it

By ivanromanov, 11 years ago, In English

Recently an updated version of the the ACM ICPC World Finals has been published. First Finals in Russia will take place June 30 — July 4, 2013 in St. Petersburg. I have sketched a map of the most important places of the event: hotels, contest site, opening ceremony, etc.

2013 ACM ICPC map

UPD. Three hotels (Astoria, Angleterre and Renaissance) are located right next to the famous Saint Isaac's Cathedral. Two other hotels are a bit further away: Petro Palace and Domina Prestige. Manége, also facing the Saint Isaac's Square, will host IBM Techtrack and dinner, UPE Dinner, and will serve as a meeting point to board the buses for transportation to other sites.

The Opening ceremony should take place in the Аlexandrinsky Theatre, right next to Anichkov Palace, which is well-known to programmers for hosting NEERC for many years till 2010, as well as numerous other competitions. For example, besides NEERC I participated there in ROI and Russian school team olympiad.

The World Finals 2013 will be performed in the Main Arena of Yubileyny Sports Palace. I want to emphasize the word "Sports", bc what we are doing here is a sport programming.

Full text and comments »

  • Vote: I like it
  • +62
  • Vote: I do not like it

By ivanromanov, 11 years ago, translation, In English

Before leaving Tehran I asked SeMeKh a couple of questions on how the training for the competitions works in Iran.

There are local and regional Olympiads in Informatics in Iran which take place across the whole country. Top 40 winners will get together in so-called Golden Camp and train the whole summer, with a break of 2-3 weeks in Ramadan, so the camp duration exceeds 2 months. Part of the participants with lowest scores leave the camp earlier. The rating of participants is classified as either gold, silver, or bronze. "Golden" participants get the right to enter any university in the country without Concur. The 4 participants of IOI are also selected from the "gold" category. Please note, that there is no national Olympiad in Informatics. — see note below.

Iranian competitors achieved following results in the International Olympiad in Informatics:

  • 2012, Italy — two gold (mR.ilchi, havaliza), two silver (LGM, mruxim) medals.
  • 2011, Thailand — three silver (including SeMeKh and sajad22), one bronze (kasnavi) medal.
  • 2010, Canada — gold (a70babat), two silver (Mehrdad, SeMeKh), one bronze medal.
  • 2009, Bulgaria — gold (a70babat) and three silver (including pooya_, Solej) medals.
  • 2008 — unfortunately, Egypt didn't grant visas to the team of Iran.
  • 2007, Croatia — gold and three silver (including Saeed_Reza) medals.

As you can see, results are very high, all 4 pupils normally get medals, there is often a gold one. Many organizations support and organize high school students for comptetion, which is unfortunately not the case with university students. I have not heard of a well-organized system of training for ACM ICPC in the country. Hopefully, the situation with support from universities, government and business will change, and I suspect it is a local business who will initiate the change.

There were not enough time to discover more details, so I will be happy to here rich comments from Iranians on the topic as well as tough questions from everyone interested.

UPD. Please see important comment from A.K.Goharshady below.

UPD 2. Here are some numbers from inoi.ir. There are about 10000 participants in the first stage. About 1000-2000 qualify to the second stage, which is a two-day event which includes multiple-choice test and a kind of examination. Some 60-70 people go to the stage where they solve problems using a computer, 35-40 summer camp participants will be selected here. There are 8 gold medalists at the camp, 4 of which will then take part in IOI.

Full text and comments »

  • Vote: I like it
  • +96
  • Vote: I do not like it

By ivanromanov, 11 years ago, In English

Hi everybody, it's 11:10 local time at Tehran, I'll tell you how the Bayan Programming contest 2013 (1391) onsite Finals is progressing.

22:17. Peter50216, cerealguy and Egor are top-three! Congratulations!

22:05. Closing ceremony. The rejudge took place for one problem.

18:30. Not everything of Funkoders has been judged yet, so the results of this additional fun contest will come later.

18:29. It's over!

18:27. Announcement: two minutes to the end of the contest. It should have 5 though.

18:10. It's a fun competition, so there are two guys entertaining competitors and spectators:

18:04. Every couple of minutes one of the baloons exploid, making a person next to it jumping up.

17:54. Only the first submission will count. There are 15 problems. Competitors hope that the problems are not harder than in the main round.

17:51. Let's begin!

17:50. Funkoders challenge will last 42 minutes and will contains lots of problems.

16:26. The contestants are having lunch now, afterwards the Funkoders Challenge is scheduled — a contest for fun. While you are guessing about the winner's name, I'll announce the winner of our "guess-the-wireless-password" contest. Actually, nobody had it 100% correct. The password was "bayan", so MikeMirzayanov who suggested "Bayan" is winning a special prize: he won the right to contribute to Codeforces completely free of charge the whole day tomorrow, on Sunday! Congratulations!

16:05. The contest has finished!

16:00. Five minutes until the finish of the contest.

15:35. Half an hour before the contest end (again). Here are some details about "rejudge". The score for each problem depends on submission time, number of wrong tries and number of people successfully solved that problem. So, after the contest end everything will be rejudged to double-check and make sure the final results are correct. Discrepancies, if any at all, will be investigated manually.

15:19. Announcement: 45 minutes until the end of the contest. Ranklist will not be updated anymore. Some rejudges may take place.

15:13. Current standings:

15:05. Announcement: according to the jury team decision, the contest duration will be extended by 30 minutes.

15:02. Half an hour till the end. I see a small chance that the contest will be prolonged.

14:45. With baloons it looks like this (larger photo here):

14:36. There are few more people who solved one problem: havaliza, Nick name, liympanda and cheshme.

14:34. Baloons are distributed now for every solved problem: green is assigned to the most popular task F.

14:20. Announcement: please check clarifications, the constraint for interactive problem is published now. The interactive problem will not be removed from the problemset, although this possibility has been considered before.

14:18. The problems are hard, there are not many submissions.

14:16. Nicknames of Galapagos, fmwviormv and Haas do not match those on TopCoder. Also, cerealguy uses a nickname mikhail in the contest today.

14:11. We have a new leader: peter50216 with A, F, G. Then cerealguy — F and G, mruxim, Galapagos with A, watashi with G. Then come anrieff, fmwviormv, kelvin, Haas, Egor and Dmitry_Egorov with F.

13:59. watashi is on the second place at the moment with problem G. He is followed by mruxim, peter50216 and Galapagos who solved problem A. Three more people with problem F follow: kelvin, Egor, Dmitry_Egorov.

13:55. Almost the half of the contest has passed, and we have just 8 people who solved at least one task. Just recently cerealguy has got his second accepted and he dominates the ranklist with problems F and G.

13:53. I hope you missed me. I missed Iranian food so much, so I had to have a lunch break. Standings follow.

13:01. Announcement: please check clarifications. (One of the constraints has been fixed.)

12:57. It is very quite in the contest area. Egor is the only one with his headphones on, he codes something thoroughly, looking at the problem statements frequently.

12:43. There are 7 problems for three hours. Unfortunately, there is no standings table available on the web.

12:40. cerealguy seems to be the only one who brought Mac to compete on. He seems to write a code for at least 3 minutes now.

12:33. Contestants have printed versions of problems.


12:31. My laptop shows Swiss time, which is 10:01 now, and I'm getting very good in adding 2.5 hours to it to put a timestamp in Iranian timezone to each update.

12:28. One problem may be removed from the problemset, because the are some difficulties with it. We hope to begin soon.

12:26. By now everyone should be logged in with their username and password.

12:18. Four executables are available: {32-bit, 64-bit}x{Windows, Linux}. SeMeKh: "I hope nobody has any other OS."

12:14. Contestants can test their solution to the interactive task locally, providing the simulator with N (size of task) and a random seed. The simulator will generate a hashed result ("secret key"), which can be submitted to the judge.

12:11. Mehran apologises for the delay and encourages the participants to make themselves familiar with interactive problem. Every announcement is made in English and in Farsi.

12:05. Here is the contest area:

12:02. There 56 contestants here, representing Iran, Russia, China, Taiwan, Bulgaria.

11:52. All of the password guesses in comments correctly spotted the main keyword of the contest :-) But there is no 100% correct answer yet.

11:49. Network issue is resolved. SeMeKh announces, that one of the problems will be interactive, the binary executable will be available.

11:38. It has been anounced, that one of the contestants has problem with network. We'll try to fix it and start as soon as possible.

11:27. All contestants have entered the competition area. Mehran, one of the problemsetters from Bayan, has announced the Wi-fi network name and password where contestants have to connect. Can you guess the password?

11:13. While you wait for updates from me, you can read the first part of my nano-research on how it works (can also be read as "IT works") in Iran. Or just look at the pictures from the first two days in Tehran.

11:11. With a delay of about one hour contestants started to enter the competition area.

Full text and comments »

  • Vote: I like it
  • +114
  • Vote: I do not like it

By ivanromanov, 11 years ago, In English

I took this chance being in Tehran to learn more about professional life of an IT specialist in Iran. This path actually starts in the school, continues at the university followed by a professional career.

Here is the first part of my research, it is an interview with Mr. Ali Ghadiri, the founder and CEO of Bayan. Being not only an IT-entrepreneur, but also serving as a school teacher for over 10 years, he provided information on educational system of Iran as well as about job situation.


How is the educational system organized in Iran in general? E. g., does one have to pay for school or university?

Ali Ghadiri: Both paid and free-of-charge models co-exist.

The best schools, especially high schools, are not free. Besides entirely private schools, there are semi-government ones, where you have to pass entrance exams. They are called “sampad” and exist in many cities in Iran, in Tehran there are about 10 sampads for boys and 10 for girls (Comment from Ivan: in Russia we call such schools Lyceum, in Switzerland they are called Gymnasium. Feel free to tell us about analogue in your country in comments). Normally you go to the school at the age of 7, although in some cities there is a mandatory year of preparation before it. The primary, guidance and higher levels of the school take 6, 3 and 3 years respectively, which is a relatively new rule (before it was 5+3+4). Actually, one of my employees used to be my pupil in past.

The situation with universities is different. There is no gender separation there, and the best universities are the government ones, where students don’t have to pay. In order to study there, you have to pass a nation-wide “concur” exam. There are some plans to change this system to allow universities to conduct their own entrance exams. Nowadays about 2/3 of students are girls, because if a young man failing the exam will go for 2 years to the military service. Mostly, we learn much more in high schools rather than in universities, where many courses are boring and not useful.

Is there any difference in the availability of trainings for boys and girls in Iran?

A. G.: No difference. Like everywhere in the world, girls are less interested in the IT than boys. But there are some exceptions: Iran has a girl who is gold medalist in IMO.

Do top-performers in Olympiads and contests receive any scholarships or being paid some additional money for that?

A. G.: There is an organization which supports talented young people. They try to help those ranked high in national and international competitions and Olympiads. Unfortunately, ACM ICPC is not included: participants have to cover all their costs themselves.

If an Iranian team wins ACM ICPC, what can they get from the government?

A. G.: Nothing. Though, the situation with IOI is different.

Do bright people leave the country often?

A. G.: Unfortunately, yes, because of situation with universities. I have heard different opinions from those who left: some say it’s same wasting of time; some say it’s better than in Iran. In the recent years more people are staying and more people are coming back to Iran.


How do you see the job market situation for software engineering? Is it easy to find a job? Is it hard to find good people?

A. G.: It is very simple. If you are a good software engineer, there are always lots of jobs to choose from. If you are a normal programmer, there is always a job. If you call yourself a programmer, but you are not qualified enough, you may find a job if you try hard.

If a company looks for talented and skilled software engineers, it has to compete with lots of other employers. It’s easier to find a regular programmer, and there is a choice less qualified ones.

Which programming languages are mostly used?

A. G.: Mostly, Java and C++ are mostly popular among IT students. For example, in Sharif University the common language is Java. Those without formal education in computer science and IT, who are self-trained programmers, usually use ASP.NET and PHP. We at Bayan mostly use Python, Java and C++.

Languages used by last year's participants of Bayan Programming contest


National firewall, or filtering system, that blocks access to some websites — does it disturb?

A. G.: Since I’m also a teacher, as a teacher, I believe the firewall is good, because it helps student’s souls to remain clean and pure. But as a developer and an IT-person, I think the filtering system is not as sophisticated and as clever as it should be. It should be revised as soon as possible. And as a user, I think that no one likes the limitations. I believe that a cleverer and more sophisticated filtering would reduce the unhappiness of users.

What are the examples of difficulties you face due to right-to-left writing in Persian language?

A. G.: The situation today is much better than several years ago. There are still some code editors which cannot handle, for example, comments that we do in the source code. In those cases we might change the editor or use fenglish, i. e. Farsi spelled in Latin alphabet.


What does your company do?

A. G.: The company is 11 years old. It began as a start-up with 3 members, now it has more than 40 developers. We provide advanced bloghosting service (blog.ir). We have our cloud file-sharing system bayanbox.ir. We have an email system hod.ir which is going to become publically available in a few months. While the latter will probably be available only as a paid service, the two former services exist in both free and full version available for a fee.

We also have a meta-search engine salam.ir, which is tuned for Persian pages and results. Salam in Persian means “Hello”.

Full text and comments »

  • Vote: I like it
  • +60
  • Vote: I do not like it

By ivanromanov, 11 years ago, translation, In English

There is less than one hour till the contest start, participants are waiting in the lobby while the last preparations are being made in the second floor (Mezzanine).

UPD. The contest start delays, for now we expect about half an hour delay.

Internet connection in the hotel has been repaired at about 4:00 in the morning, so we have a bit more pictures from the past 50 hours:


Full text and comments »

  • Vote: I like it
  • +71
  • Vote: I do not like it

By ivanromanov, 11 years ago, In English

Today, with all international participants of the Bayan Programming contest finals arrived in Tehran, we have visited some places in Tehran. You can see on the following picture (from right to left, because this is how things are being read in Farsi): video-op making documentary about the contest, watashi, liympanda, anrieff, Egor, cerealguy, Sadegh with Dmitry_Egorov hiding behind him, kelvin and peter50216.

We started at Niavaran Cultural Historic Complex which has several palaces where Iranian Shahs (Kings) and their families used to live before the Islamic Revolution in 1979.

After visiting museums with impressionist arts from Shagal, Dali, Picasso, vehicle museum with Rollce-Royses, Palaces with persian carpets, mirror halls und even mountain skis of former palace owners, we went to the bazar in the northern part of Tehran. I hope to post more pictures as soon as possible, because Bazar is must-see: at least on photos or even better to experience it personally.

We had an impressive lunch after the sightseeing. Sitting on the rugs, we tasted bread with cream, olives in a sauce made from bean and fruits, rice and Bakhtiari-kebab made from large piece of beef covered with mix of chicked with eggs. Our café is situated right across the street from Shahid Beheshti University, recommended to us in the comments to my previous post.

Later, at the hotel, we met some of the Iranian participants of the contest. Some of them represent a Sharif University team, which will go to the ACM ICPC Finals in Saint-Petersburg in summer. You can see havaliza in the red t-shirt and I hope you'll help me to identify other Codeforces members in the comments.

As the contest starts in less than 7 hours, it's time to wish a good luck to all of the participants of a Bayan Programming contest 2013 finals: good luck!

Full text and comments »

  • Vote: I like it
  • +134
  • Vote: I do not like it

By ivanromanov, 11 years ago, translation, In English

I arrived to Iran last night. Almost simultaneously with me two Bayan Programming Contest participants have also arrived to the Tehran Imam Khomeini International Airport.

Mr. Sadegh Hajsamadi from Bayan warmly welcomed us: peter50216, kelvin and myself at the airport and hired a taxi which took us directly to the hotel. Thank you, Sadegh!

The hotel arranged by Bayan for the contest is very modern, nice and has a conference room that will fit more than 60 contestants.

I have not met other contestants yet, but I got a chance to visit the Bayan office. Mr. Ali Ghadiri, company's CEO, and Mr. Mostafa Rokooie, the contest manager, have invited me to a very traditional Persian lunch with local specialities. The food was delicious, thanks to Ali and to Mostafa!

Unfortunately, I cannot show you the inside of the office because of the problem statements all over the place and algorithm ideas that are written on whiteboards, but here is at least a competition banner near the entrance that you can see:

And if you feel like starting learning Persian, here is the first word — Bayan:

Full text and comments »

  • Vote: I like it
  • +182
  • Vote: I do not like it

By ivanromanov, 11 years ago, translation, In English

Bayan has published the schedule of the upcoming finals of their contest: http://en.bayancontest.ir/post/Contest-schedule

The contest should be quite compact: just two days and everything in the same hotel. All participants has to register themselves on Friday, February 15. Actually, the schedule does not say "February 15", it just says "Friday". Participants of the onsite event have got email invitations to Tehran for February 14-17, so let's assume we are talking about 15th of February, 2013. Speaking about dates, I have to mention that it's right now the year 1391 in Iranian Solar Hijri calendar. The New year is celebrated on March equinox, that's why the Sun is mentioned in the calendar name.

The contest will be held next day, on Saturday. All events should take place in the Parsian Azadi Hotel, which is located at the very north of the city next to Alborz mountains. Looks quite fascinating:

As far as I know, the Bayan Contest team has not communicated any transportation details to foreign participants. I checked out how you can get from the IKA airport to the hotel. One can take a bus to the subway station, cross the city in metro, exit near the Embassy of Russian Federation (Swiss Embassy is also nearby) and take a taxi. Here are the details: https://maps.google.com/maps/ms?msid=203576579397348428033.0004d54f4678ed65db970&msa=0please beware, this is not the official information, it's just my idea on getting around in Tehran.

UPD. All the participants will be welcomed and picked up at Imam Khomeini Airport by Bayan staffs, and will be transported to the hotel afterwards.

Full text and comments »

  • Vote: I like it
  • +85
  • Vote: I do not like it

By ivanromanov, 13 years ago, In English

It looks like the World Finals in Poland is going to be between 13th and 18th of May, 2012. http://www.xeniosworld.com/2011/06/the-acm-icpc-world-finals-2012-in-warsaw/

I also found on YouTube a video that tells how good is Warsaw for hosting the contest http://www.youtube.com/watch?v=Gj3gqzY_9o4

Full text and comments »

  • Vote: I like it
  • +40
  • Vote: I do not like it

By ivanromanov, 14 years ago, translation, In English
For TopCoder SRMs I always use TopCoderParser, an IntelliJ IDEA plugin from Yakov Sirotkin. It is a great simple tool that pastes a problem description as .java solution template with sample tests. To make plugin work with latest versions of my favorite IDE (like IntelliJ IDEA 9 Community Edition), I fixed the line #128 of the original source code.
Instead of:
PsiElementFactory factory = element.getManager().getElementFactory();
PsiFileFactory factory = PsiFileFactory.getInstance(element.getProject());

Thanks to the original authors. Simply copy topcoderparser.jar to the IDEA plugins directory, and RETester.java (simple test invoker from Roman Elizarov) to your project directory. Enjoy.

Full text and comments »

  • Vote: I like it
  • +12
  • Vote: I do not like it

By ivanromanov, 14 years ago, translation, In English
According to Snarknews (in Russian only), Shanghai JTU has become the World Champion for the third time (2002, 2005, 2010), this means it has the same number of victories as the Stanford University and the SPbSU ITMO.

Then goes the Moscow State University (Gusakov, Kornakov, Razenshtein) - the European Champions! Congratulations to the team and to their coach Anton Pankratiev!

The next one is the biggest surprise of this contest (IMHO) - Taiwan National University. Personally for me it was a pleasant surprise, because in November I visited Taiwan - a nice island! I recommend it to everyone. It was my first trip to Asia, a good start .

The following two teams - Kiev State University (Grinenko, Neiter, Simonenko) and Petrozavodsk State University (Denisov, Nikolaevskyi). In person I know only the guys from Petrozavodsk, I'm glad for Alexei, Denis, Ilya, and Denis Petrovich, Vladimir Alekseevich, Victor Nicolaevich - congratulations to all of them!

An interesting fact: the three leaders of the last Petrozavodsk training session took the positions among the five best teams, and in the same order!

The sixth place - Tsinghua. The seventh - alma mater, Saratov SU (Bondarenko, Matov, Yakunin)! Congratulations to Natasha, Dima, Vova, Misha, Antonina Gavrilovna on their silver medals!

The eighth position - Warsaw, a nice city. The ninth - St. Petersburg SU (Antipov, Levin, Smirnov), the forth medal to our North-Eastern European region. 10th and 11th were Zhongshan and Fudan. The 12th was the University that hosted the previous World Championship in Stockholm - KTH, Sweden.

Congratulations to the medalists once again!

UPD. It occurred that SPbSU has the same penalty time as the eighth position. Moreover, there is a chance that Russia will have one more medalist - Ural SU (Burmistrov, Dublennih, Kurpilianskyi) occupies the 13th position and is the last team which solved 6+ problems.

UPD2. 4 gold medals, 5 silver medals (including SPbSU), 4 bronze medals (including UralSU). Totally, NEERC is the Vice-World champion, the European champion, got a gold medal, three silver medals and a bronze one.

Full text and comments »

  • Vote: I like it
  • +24
  • Vote: I do not like it