Bubar kita
Dina mbukak bakal dianakake ing kantor JetBrains ing Pusat Bisnis Times, ing ngendi para siswa master sinau. Diwiwiti ing 17:00. Sampeyan bisa ngerteni kabeh rincian lan ndhaptar acara kasebut ing situs web
Salah sawijining komponen utama program kasebut yaiku praktik. Siswa duwe akeh: peer mingguan, proyek semester lan hackathon. Thanks kanggo ngrampungake metodologi lan teknologi pangembangan modern sajrone sinau, para lulusan cepet nggabungake proses kerja perusahaan IT gedhe.
Ing kirim iki, kita pengin ngobrol kanthi luwih rinci babagan hackathon DevDays, sing ditindakake saben nem wulan. Aturan kasebut prasaja: tim saka 3-4 wong ngumpul lan telung dina siswa nggawa gagasan dhewe kanggo urip. Apa bisa teka saka iki? Waca bagean pisanan crita babagan proyek hackathon semester iki saka siswa dhewe :)
Diary karo rekomendasi film
Pengarang gagasan
Ivan Iluh
Line-up
Ivan Ilchuk β parsing plot film, server
Vladislav Korablinov - pangembangan model kanggo mbandhingake jarak entri buku harian lan plot film
Dmitry Valchuk - UI
Nikita Vinokurov β UI, desain
Tujuan proyek kita yaiku nulis aplikasi desktop - buku harian sing bakal menehi rekomendasi film kanggo pangguna adhedhasar entri kasebut.
Ide iki teka nalika aku lagi menyang universitas lan mikir babagan masalahku. "Apa wae masalah sing diadhepi wong, sawetara penulis klasik wis nulis babagan iki," pikirku. "Lan wiwit ana sing nulis, tegese ana sing wis nggawe film." Dadi kepinginan kanggo nonton film babagan wong karo siksa mental padha katon alamiah.
Temenan, ana macem-macem buku harian sing kapisah lan layanan rekomendasi sing kapisah (nanging biasane rekomendasi kasebut adhedhasar apa sing disenengi wong sadurunge). Ing asas, proyek iki ana sing padha karo nggoleki film kanthi poin-poin penting, nanging isih, pisanan, aplikasi kita nyedhiyakake fungsionalitas buku harian.
Kepiye carane kita ngetrapake iki? Nalika sampeyan menet tombol sihir, buku harian ngirim entri menyang server, ing ngendi film kasebut dipilih adhedhasar deskripsi sing dijupuk saka Wikipedia. Frontend kita digawe ing Electron (kita nggunakake, dudu situs web, amarga kita pisanan mutusake kanggo nyimpen data pangguna ora ing server, nanging sacara lokal ing komputer), lan server lan sistem rekomendasi dhewe digawe ing Python: TFs padha dipikolehi saka gambaran -IDF vektor sing padha dibandhingake kanggo jarak menyang vektor entri diary.
Salah siji anggota tim makarya mung ing model, liyane makarya tanggung ing ngarep-mburi (pisanan bebarengan karo anggota katelu, sing banjur pindhah menyang testing). Aku melu parsing plot film saka Wikipedia lan server.
Langkah demi langkah kita nyedhaki asil, ngatasi sawetara masalah, diwiwiti kanthi kasunyatan manawa model kasebut mbutuhake akeh RAM, sing pungkasane angel nransfer data menyang server.
Saiki, kanggo nemokake film ing wayah sore, sampeyan ora perlu akeh gaweyan: asil karya telung dina kita yaiku aplikasi desktop lan server, sing diakses pangguna liwat https, nampa pilihan saka 5 film kanthi pilihan. gambaran singkat lan poster.
Kesanku babagan proyek kasebut positif banget: karya kasebut narik kawigaten wiwit esuk nganti pungkasan wengi, lan aplikasi sing diasilake sacara periodik ngasilake asil sing lucu banget ing gaya "Sleepless Night" kanggo entri buku harian babagan peer ing universitas utawa film. bab dina pisanan sekolah kanggo crita bab dina pisanan ing departemen.
Link sing relevan, installer, lan liya-liyane bisa ditemokake
Generator rute
Pengarang gagasan
Artemyeva Irina
Line-up
Artemyeva Irina - pimpinan tim, loop utama
Gordeeva Lyudmila - music
Platonov Vladislav - rute
Aku seneng banget mlaku-mlaku ing kutha: ndeleng bangunan, wong, mikir babagan sejarah. Nanging, malah nalika ngganti panggonan manggon, cepet utawa mengko aku ngadhepi karo masalah kanggo milih rute: Aku wis rampung kabeh sing aku bisa mikir. Iki carane idea teka munggah kanggo otomatis generasi rute: sampeyan nuduhake titik wiwitan lan dawa rute, lan program menehi pilihan. Mlaku-mlaku bisa dawa, mula pangembangan logis saka ide kasebut katon nambah kemampuan kanggo nunjukake titik penengah kanggo "mandeg," ing ngendi sampeyan bisa ngemil lan ngaso. Cabang pangembangan liyane yaiku musik. Mlaku-mlaku menyang musik mesthi luwih nyenengake, mula luwih becik nambahake kemampuan kanggo milih dhaptar lagu adhedhasar rute sing digawe.
Ora bisa nemokake solusi kasebut ing antarane aplikasi sing wis ana. Analog sing paling cedhak yaiku perencana rute: Google Maps, 2GIS, lsp.
Paling trep duwe aplikasi kasebut ing telpon, mula nggunakake Telegram minangka pilihan sing apik. Ngidini sampeyan nampilake peta lan muter musik, lan sampeyan bisa ngontrol kabeh iki kanthi nulis bot. Karya utama karo peta wis rampung nggunakake Google Map API. Python nggampangake kanggo gabungke loro teknologi.
Ana wong telu ing tim, mula tugas kasebut dipΓ©rang dadi rong subtugas sing ora tumpang tindih (makarya nganggo peta lan nggarap musik) supaya wong lanang bisa kerja kanthi mandiri, lan aku kudu nggabungake asil kasebut.
Ora ana sing nate nggarap Google Map API utawa nulis bot Telegram, mula masalah utama yaiku jumlah wektu sing diparengake kanggo ngleksanakake proyek kasebut: ngerteni soko mesthi mbutuhake wektu luwih akeh tinimbang nindakake apa sing sampeyan ngerti. Iku uga angel kanggo milih Telegram bot API: amarga pamblokiran, ora kabeh padha bisa lan aku kudu berjuang kanggo nyetel kabeh.
Perlu dicritakake kanthi kapisah carane masalah ngasilake rute ditanggulangi. Iku gampang kanggo mbangun rute antarane rong lokasi, nanging apa sampeyan bisa kurban pangguna yen mung dawa rute dikenal? Ayo pangguna pengin mlaku 10 kilometer. Titik dipilih kanthi arah sing sewenang-wenang, jarak sing ana ing garis lurus yaiku 10 kilometer, sawise rute kasebut dibangun menyang titik iki ing dalan sing nyata. Paling kamungkinan, iku ora bakal langsung, supaya kita shorten menyang 10 kilometer. Ana akeh pilihan kanggo rute kasebut - kita entuk generator rute nyata!
Kaping pisanan, aku pengin mbagi peta menyang wilayah sing cocog karo wilayah ijo: tanggul, plataran, lurung-lurung, supaya entuk rute sing paling nyenengake kanggo mlaku-mlaku, lan uga ngasilake musik sing cocog karo wilayah kasebut. Nanging nindakake iki nggunakake Google Map API ternyata angel (kita ora duwe wektu kanggo ngatasi masalah iki). Nanging, sampeyan bisa nindakake pambangunan rute liwat jinis lokasi tartamtu (toko, taman, perpustakaan): yen rute kasebut ngubengi kabeh panggonan sing ditemtokake, nanging jarak sing dikarepake durung dilewati, wis rampung menyang a jarak sing ditemtokake pangguna ing arah acak. Google Map API uga ngidini sampeyan ngetung kira-kira wektu lelungan, sing mbantu sampeyan milih dhaptar lagu kanthi persis kanggo kabeh mlaku.
Ing pungkasan
Masalah utama nggarap musik yaiku ora ngerti saka ngendi entuk file mp3 tanpa mbutuhake pangguna duwe akun ing layanan apa wae. Diputusake kanggo njaluk musik saka pangguna (mode UserMusic). Iki nggawe masalah anyar: ora saben wong duwe kemampuan kanggo ngundhuh trek. Salah sawijining solusi yaiku nggawe repositori karo musik saka pangguna (mode BotMusic) - saka iku sampeyan bisa ngasilake musik preduli saka layanan.
Sanajan ora sampurna, kita ngrampungake tugas: kita rampung karo aplikasi sing pengin digunakake. UmumΓ©, iki keren banget: telung dina kepungkur sampeyan mung duwe ide lan ora ana siji-sijine pamikiran babagan carane ngetrapake, nanging saiki ana solusi sing bisa digunakake. Iki telung dina sing penting banget kanggo aku. Aku ora wedi maneh nggawe prekara sing ora duwe kawruh sing cukup kanggo dileksanakake, dadi pimpinan tim pancen menarik banget, lan aku ngerti wong-wong sing apik banget sing gabung karo timku. luwih apik!
Demokrasi cair
Pengarang gagasan
Stanislav Sychev
Line-up
Stanislav Sychev - pimpinan tim, database
Nikolay Izyumov β antarmuka bot
Anton Ryabushev - backend
Ing macem-macem klompok, asring ana kabutuhan kanggo nggawe keputusan utawa milih. Biasane ing kasus kaya mengkono padha Resor kanggo
Kanggo ngatasi masalah loro sistem kasebut, Brian Ford ngusulake konsep kasebut
Conto panggunaan demokrasi cair ditemokake ing politik, lan kita pengin ngetrapake ide sing padha kanggo panggunaan saben dina ing kabeh jinis klompok wong. Ing hackathon DevDays sabanjure, kita mutusake kanggo nulis bot Telegram kanggo milih miturut prinsip demokrasi cair. Ing wektu sing padha, aku pengin ngindhari masalah umum karo bot kasebut - nyepetake obrolan umum kanthi pesen saka bot. Solusi kasebut yaiku nggawa fungsi sabisa menyang obrolan pribadi.
Kanggo nggawe bot iki kita digunakake
Mesthine, telung dina iku wektu sing cendhak, saengga sajrone hackathon kita ngetrapake ide kasebut menyang tingkat prototipe. AkibatΓ©, kita nggawe bot sing nulis ing obrolan umum mung informasi babagan bukaan voting lan asil anonim. Kemampuan kanggo milih lan nggawe polling ditindakake liwat korespondensi pribadi karo bot. Kanggo milih, ketik printah sing nampilake dhaptar masalah sing mbutuhake perhatian langsung. Ing korespondensi pribadi, sampeyan bisa ndeleng dhaptar delegasi lan swara sadurunge, lan uga menehi voting ing salah sawijining topik.
Iku menarik kanggo nggarap proyek, kita tetep ing universitas nganti tengah wengi, kita mikir yen iki cara sing apik kanggo ngaso saka sinau, sanajan iku banget ngeselake. Iku pengalaman sing nyenengake makarya ing tim sing raket.
PS. Enrollment kanggo program master kanggo taun akademik sabanjurΓ© wis
Sumber: www.habr.com