
Sedikit lebih dari sebulan yang lalu, ketika kami melihat di saluran Hacker Rusia di telegram pengumuman hackathon, dan bahkan robot, dan juga terjadi di negara lain, teman-teman saya dan saya memutuskan - mengapa tidak? Kami berpartisipasi dalam sejumlah besar hackathon di Rusia, tetapi kami tidak pernah melihatnya di sana, di luar negeri. Setelah dengan cepat mengumpulkan dan menyelesaikan masalah visa, kami pergi ke Helsinki untuk mengumpulkan robot dari Lego Mindstorms.
Dalam artikel ini saya akan mencoba memberi tahu apa yang harus kita lakukan, apakah itu layak untuk berpartisipasi, dan berapa banyak biaya yang kita keluarkan untuk waktu dan uang. Ayo mulai!
Tentang tugas
Acara itu disebut Pemberontakan Robot , untuk mengambil bagian di dalamnya. perlu mendaftar paling lambat 2,5 minggu (omong-omong, ada tertulis bahwa tim akan dipilih, tetapi tampaknya tautan ke github dengan sejumlah kecil proyek sudah cukup untuk dilalui). Tugas utama adalah merakit robot dari satu set robot Lego Mindstorms yang akan melewati trek:

Itu terdiri dari beberapa tahap utama:
- Labirin dengan garis putih digambar di lantai. Labirin itu dibagi secara diagonal dan pada awalnya dipindahkan terpisah sehingga tidak mungkin dilewati. Itu perlu untuk memanggil robot pada platform tekanan kuning, tunggu beberapa detik sampai labirin bergerak kembali, dan bergerak.
- Tahap kedua adalah platform dengan pin logam (yang oleh panitia disebut pohon besi). Di antara mereka perlu mengemudi tanpa macet dan tidak mengenai mereka.
- Pada tahap ketiga, itu perlu untuk mengarahkan ke ujung platform, tekan tombol merah, ambil kubus yang terjatuh akibat menekan, dan kembali ke awal dengan itu, letakkan di platform - maka pintu akan terbuka di mana Anda dapat melewati.
- Pada tahap ketiga, ada tiga disk berputar yang terletak satu demi satu dan berputar ke arah yang berbeda. Pada disk ini, hambatan kecil juga ditemukan. Di bagian rute yang baru saja Anda kendarai
- Tahap kedua dari belakang, di mana diperlukan dengan menekan tombol untuk menaikkan ramp, memanggilnya, dan kemudian turun ke bagian akhir jalan. Tahap ini memiliki tingkat kesulitan yang berbeda, yang dapat dipilih dengan menekan tombol multi-warna - semakin tinggi kerumitannya, semakin banyak poin yang diberikan untuk melewati panggung (misalnya, salah satu opsi adalah bahwa jalan naik dan turun terus-menerus).
- Tahap terakhir. Setelah menyelesaikan rute, robot tetap mengambil satu dari enam tempat untuk pemenang. Tapi, karena ada lebih dari enam orang yang melewati trek, setelah semua tempat diambil, orang-orang berikutnya yang melewati trek harus "menantang" seseorang yang sudah berdiri di podium dan mendorongnya keluar dari ring.

Seperti yang disebutkan sebelumnya, sistem poin bekerja dalam kompetisi. Poin di final diterima untuk gaya kode, jalur yang jelas dari trek, kompleksitas tahap kedua dari belakang, tingkat otonomi. Misalnya, untuk ketidakhadiran lengkap (kontrol dari komputer / remote control / joystick) mereka menetapkan 0 poin, untuk lintasan trek yang dilompati dengan keras - 100 poin, dan maksimum 500 poin dapat diperoleh menggunakan pembelajaran mesin.
Poin juga bisa diperoleh bahkan sebelum final - untuk ini Anda harus melalui pencarian tambahan. Untuk mendapatkan akses ke tugas-tugas, perlu untuk menemukan beberapa baris yang dienkripsi oleh cipher Caesar di situs, mendekripsi, mengikuti tautan, menemukan tautan ke halaman lain, dan sejumlah besar pencarian dari kompleksitas yang berbeda sudah diposting di sana. Misalnya, ada tugas-tugas seperti itu: ada dua gambar dengan noise, orang harus menebak bahwa mereka harus ditumpangkan dan dikurangi untuk mendapatkan kata yang perlu disediakan sebagai jawaban. Ngomong-ngomong, poin yang diterima sebelum final juga bisa dihabiskan, tetapi lebih pada itu di bawah.
Dan juga, dari hal yang menarik, panitia memikirkan latar belakang dan latar. Menurut legenda, hackathon terjadi di wilayah pabrik otomatis besar, yang menghasilkan robot. Dan, tanpa disangka-sangka, ada yang tidak beres :) Kamar tempat hackathon diadakan, pakaian penyelenggara - semuanya didekorasi dengan gaya cerita ini, dan terlihat sangat keren. Dan tugas-tugas yang perlu diselesaikan juga termasuk dalam pengaturan ini.
Tentang peralatan

Panitia menyediakan kit Mindstorm Lego untuk tim, yang terdiri dari pengontrol EV3, sensor warna, sonar, tiga mesin, giroskop dan kabel, yang cukup untuk menghubungkannya. Juga termasuk hal-hal sepele, seperti roda, trek, blok lego. Set itu ternyata sangat sedikit, bukan?
Untuk menyelesaikan masalah dengan benar, set seperti itu tidak cukup, sehingga para peserta memiliki dua opsi - baik membawa besi tambahan dengan mereka (ternyata nanti, Anda dapat menggunakan besi apa pun, bukan hanya lego - raspberry pi, arduino, kamera yang berbeda Itulah yang dilakukan sebagian besar peserta, membawa modul-modul yang diperlukan dari rumah (well, tetapi kami tidak memiliki apa pun bersama kami.) Tetapi bagi mereka yang bertingkah lengang seperti kami, ada semacam toko tempat Anda dapat bertukar poin yang diterima untuk modul (kanan Ya, ia mendapatkan 15 jam sebelum akhir Hackaton yang sedikit terlambat).
Tentang robot kami

Mungkin, harus dikatakan bahwa pengontrol EV3, seperti seluruh set, bahkan tidak dipegang oleh tim mana pun sebelum hackathon. Oleh karena itu, dalam kompartemen dengan kurangnya bagian yang diperlukan dan tambahan zat besi, hasil yang kami dapatkan sangat diharapkan.
Sebelum perjalanan, melihat informasi yang dikirim panitia kepada kami dan sedikit googling, kami menemukan bahwa mikrokontroler ARM3 (ARM9) ada di EV3, dan Debian dapat diletakkan di sana. Bersukacitalah pada kenyataan bahwa kita dapat menulis di pro, dan tidak menghubungkan blok, kami berharap dapat bekerja dengan perangkat keras baru.
Namun dalam kenyataannya, semuanya ternyata tidak semerah yang kami harapkan. Kami menyadari bahwa semuanya tidak akan persis seperti yang kami harapkan, segera setelah kami meluncurkan EV3 dan mencoba memperbaruinya. Karena itu baru saja digantung. Hal yang sama terjadi ketika mencoba menginstal gcc. Setelah menyiksa diri sendiri dengan hal ini untuk waktu yang cukup lama dan sampai ke bawah mentor dan anggota tim lain, kami menemukan beberapa hal penting: satu-satunya pilihan untuk bekerja dengan plus adalah kompilasi silang, hampir semua tim menulis dengan python (beberapa orang mencoba melakukan sesuatu dalam JavaScript dan C #) , dan juga bahwa selain kami ada beberapa peserta berbahasa Rusia.

Setelah membuat keputusan sulit untuk menulis dengan python, kami akhirnya mulai bekerja. Bahkan, bahkan setelah itu kami menemukan sejumlah besar masalah kecil, tapi saya tidak akan membebani artikel ini dengan mereka.
Sebagai hasilnya, pada akhir hackathon, kami berhasil melakukan dan hanya men-debug remote control. Namun, meskipun demikian, kami menempati peringkat ke-11 dari 29, yang, menurut saya, sangat bagus untuk pertama kalinya.
Tentang bagaimana mereka mengatur perjalanan

Sekarang saya akan memberi tahu Anda sedikit tentang apa yang perlu dilakukan dan berapa banyak uang yang kami butuhkan untuk perjalanan. Pertama-tama, kami menulis surat kepada panitia dan bertanya tentang segala sesuatu yang setidaknya sedikit tidak bisa dipahami oleh kami. Setelah melewati seleksi, atas permintaan kami, panitia mengirimi kami undangan untuk mendapatkan visa, meskipun mereka mengirimnya ketika kami telah menyerahkan dokumen selama hampir seminggu. Tetapi, pada prinsipnya, visa ke Finlandia adalah salah satu yang termudah, jadi kami tidak terlalu khawatir bahwa visa itu tidak akan diberikan kepada kami. Ngomong-ngomong, kami beruntung, dan mereka dikeluarkan melalui pusat visa dalam 5-6 hari. Perumahan di Helsinki mahal, jadi kami, sebagai siswa miskin, memutuskan untuk tidak menyewa rumah selama hackathon, tetapi untuk menulis kode sepanjang waktu atau tidur di sana (omong-omong, ada masalah, karena seratus orang hanya ada dua tempat tidur gantung dan ayunan kecil, yang jelas tidak cukup) ) Ngomong-ngomong, hackathon makan tiga kali sehari :)
Kami mendapat pesawat dari Moskow, tetapi kami beruntung, dan Pobeda memiliki penawaran khusus, jadi selain membeli barang bawaan dan membayar untuk pilihan kursi, tiketnya cukup murah.
Dan beberapa kata tentang hambatan bahasa. Dalam tim kami yang terdiri dari tiga orang, hanya satu orang yang bisa berbahasa Inggris dengan baik, dan dua orang bisa melakukan sesuatu di tingkat pemula. Dan itu sudah cukup. Pada prinsipnya, jika tingkat bahasa Inggris Anda berada di tingkat kelas 11 sekolah, Anda tidak perlu takut - dalam kasus-kasus ekstrem, Anda dapat membeli kartu SIM lokal sebesar 6 euro selama lima hari dan menggunakan penerjemah Google. Dalam kasus-kasus ekstrem, di hackathon kami menemukan beberapa orang Finlandia berbahasa Rusia, termasuk di antara para penyelenggara.
Perkiraan perkiraan untuk perjalanan tiga hari:
- Visa melalui pusat visa ~ 5000 rubel (tergantung pada euro).
- Tiket pesawat terbang 3.000 rubel, untuk pemilihan bagasi dan kursi 1.000 rubel lainnya.
- Kartu sim, biaya transportasi di Helsinki ~ 2000 rubel.
- Suatu malam di hotel, karena pesawat itu di pagi hari ~ 1500 rubel
Total: 12.500 per orang.
Ringkasan

Sebagai kesimpulan, saya ingin mengatakan bahwa ini mungkin merupakan hackathon terbaik dalam organisasi, di mana saya berpartisipasi (dan ada banyak dari mereka). Partisipasi di dalamnya memberi saya dan rekan tim pengalaman yang luar biasa berada di lingkungan TI negara lain, dan meskipun ada banyak masalah teknis, kami menerima banyak kesan positif. Ngomong-ngomong, Pemberontakan Robot diadakan setiap tahun, jadi saya berharap untuk bertemu dengan salah satu pembaca artikel ini di sana nanti.
Publikasi ini menggunakan foto-foto dari kelompok hackathon .