Bagaimana rasanya mendengarkan kode dengan kecepatan 1000 kata per menit

Kisah tragedi kecil dan kemenangan besar dari seorang pengembang yang sangat baik yang membutuhkan bantuan

Bagaimana rasanya mendengarkan kode dengan kecepatan 1000 kata per menit

Di Universitas Federal Timur Jauh terdapat pusat kegiatan proyek - di sana para master dan sarjana menemukan proyek teknik yang sudah memiliki pelanggan, uang, dan prospek. Perkuliahan dan kursus intensif juga diadakan di sana. Spesialis berpengalaman berbicara tentang hal-hal modern dan terapan.

Salah satu kursus intensif dikhususkan untuk penggunaan sistem kontainerisasi Docker untuk komputasi terdistribusi dan orkestrasi. Acara ini dihadiri oleh mahasiswa magister dan pascasarjana matematika terapan, teknik, persiapan perangkat lunak dan bidang teknis lainnya.

Gurunya adalah seorang pria berkacamata hitam, potongan rambut modis, syal, mudah bergaul dan terlalu percaya diri - terutama untuk siswa tahun kedua berusia 21 tahun. Namanya Evgeny Nekrasov, dia masuk FEFU baru dua tahun lalu.

Wunderkind

“Ya, mereka lebih tua dan memiliki status lebih, tapi saya tidak bisa mengatakan mereka lebih berpengalaman. Selain itu, saya terkadang memberikan ceramah kepada teman sekelas saya untuk guru kami. Pada titik tertentu, kami menyadari bahwa dia tidak bisa memberi saya apa pun lagi tentang Pemrograman Berorientasi Objek, jadi dari waktu ke waktu saya mengajarinya tentang OOP, pengembangan modern, GitHub, dan penggunaan sistem kontrol versi.”

Bagaimana rasanya mendengarkan kode dengan kecepatan 1000 kata per menit

Evgeniy dapat menulis dalam Scala, Clojure, Java, JavaScript, Python, Haskell, TypeScript, PHP, Rust, C++, C dan Assembler. “Saya tahu JavaScript lebih baik, sisanya satu atau dua level lebih rendah. Tetapi pada saat yang sama, saya dapat memprogram pengontrol dalam Rust atau C++ dalam satu jam. Saya tidak mempelajari bahasa-bahasa ini dengan sengaja. Saya mempelajarinya untuk tugas yang diberikan kepada saya. Saya dapat bergabung dengan proyek apa pun dengan mempelajari dokumentasi dan manual. Saya tahu sintaks bahasanya, dan bahasa mana yang akan digunakan tidak terlalu penting. Sama halnya dengan kerangka kerja dan perpustakaan - cukup baca dokumentasinya dan saya memahami cara kerjanya. Semuanya ditentukan oleh mata pelajaran dan tugas.”

Evgeniy telah intensif mempelajari pemrograman sejak tahun 2013. Seorang guru ilmu komputer SMA yang buta total membuatnya tertarik pada ilmu komputer. Jalurnya dimulai dengan web - HTML, JavaScript, PHP.

"Saya hanya penasaran. Saya tidak banyak tidur - saya selalu sibuk dengan sesuatu, membaca sesuatu, mempelajari sesuatu.”

Pada tahun 2015, Evgeniy melamar kompetisi “Umnik” untuk mendukung proyek teknis ilmuwan muda yang berusia di atas delapan belas tahun. Tapi dia belum berusia delapan belas tahun, jadi dia gagal memenangkan kompetisi - tetapi Evgeniy diperhatikan oleh komunitas pengembang lokal. Ia bertemu dengan Sergei Milekhin, yang saat itu sedang menyelenggarakan konferensi di Vladivostok sebagai bagian dari Google Developer Fest. “Dia mengundang saya ke sana, saya datang, mendengarkan, saya menyukainya. Tahun berikutnya saya datang lagi, semakin mengenal orang, berkomunikasi.”

Andrey Sitnik dari komunitas VLDC mulai membantu Evgeniy dengan proyek webnya. “Saya perlu membangun aplikasi soket web multi-thread. Saya sudah lama berpikir tentang bagaimana melakukan ini di PHP, dan beralih ke Andrey. Dia mengatakan kepada saya, “ambil paket node.js, npm yang ada di Internet, dan jangan mematahkan kepala. Dan secara umum, memindahkan open source itu keren.” Jadi saya meningkatkan bahasa Inggris saya, mulai membaca dokumentasi dan memposting proyek di GitHub.”

Pada tahun 2018, Evgeniy telah memberikan presentasi di Google Dev Fest, berbicara tentang perkembangan di bidang antarmuka yang dapat diakses, prostesis ekstremitas atas, pengembangan antarmuka saraf, dan sistem kontrol akses nirkontak. Kini Evgeniy sudah memasuki tahun kedua program sarjana Rekayasa Perangkat Lunak, namun ia sudah berhasil menyelesaikannya dan sedang menyelesaikan tugas akhirnya.

“Saya diberitahu untuk mengimplementasikan struktur data dalam tabel hash. Ini adalah hal standar yang diberikan kepada semua orang di universitas. Saya mendapatkan 12 ribu baris kode dan banyak kruk,” kata Evgeniy sambil tertawa, “Saya membuat tabel hash dan strukturnya yang dimodifikasi dalam JavaScript untuk membaca data lebih cepat. Dan gurunya berkata: “Saya ingin kamu menulis apa yang lebih mudah bagi saya sehingga saya dapat mengevaluasinya.” Itu sangat menjengkelkan."

Proyek pribadi Evgeniy terlihat jauh lebih menarik. Yang pertama adalah pengembangan standar web untuk penyandang disabilitas fisik. Ia ingin menciptakan sumber daya yang menyediakan teknologi bantu sehingga penyandang disabilitas penglihatan dapat dengan mudah menggunakannya tanpa khawatir kehilangan informasi. Evgeniy mengetahui masalah ini dengan baik, karena dia sendiri kehilangan penglihatannya.

Cedera

“Saya dulunya adalah remaja biasa, dengan seluruh anggota tubuh saya berada di tempatnya. Pada tahun 2012, saya meledakkan diri. Saya pergi jalan-jalan dengan seorang teman, mengambil sebuah silinder di jalan, dan silinder itu meledak di tangan saya. Tangan kanan saya robek, tangan kiri saya lumpuh, penglihatan saya rusak, dan pendengaran saya terganggu. Selama enam bulan saya hanya berbaring di meja operasi.

Tangan kiri dirakit menjadi beberapa bagian, pelat dan jarum rajut dipasang. Setelah lima bulan saya bisa bekerja untuknya.

Setelah cedera, saya tidak bisa melihat apa pun. Namun dokter berhasil mengembalikan persepsi cahaya. Tak ada yang tersisa dari mataku kecuali cangkangnya. Segala sesuatu di dalamnya telah diganti - badan kaca, lensa. Segalanya mungkin."

Pada tahun 2013, Zhenya bersekolah di lembaga pemasyarakatan untuk anak tunanetra. Guru ilmu komputer yang buta total itu mengajarinya cara menggunakan komputer lagi. Untuk tujuan ini, program khusus digunakan - pembaca layar. Mereka mengakses API sistem operasi untuk mendapatkan akses ke antarmuka dan sedikit mengubah cara pengendaliannya.

Zhenya menyebut dirinya pengguna Linux yang rajin; dia menggunakan Debian. Dengan menggunakan keyboard, dia menavigasi elemen antarmuka, dan penyintesis ucapan menyuarakan apa yang terjadi.

“Sekarang Anda hanya akan mendengar suara spasi,” dia memberitahu saya sebelum menyalakan program.

Kedengarannya seperti kode atau obrolan alien, tetapi kenyataannya itu adalah bahasa Rusia atau Inggris biasa, hanya saja synthesizer berbicara dengan kecepatan luar biasa untuk telinga yang tidak terlatih.

“Tidak sulit untuk mempelajarinya. Awalnya saya bekerja di Windows dan menggunakan pembaca layar Jaws. Saya menggunakannya dan berpikir, “Tuhan, bagaimana Engkau bisa bekerja dengan kecepatan yang begitu lambat.” Saya memperbesar dan menyadari bahwa telinga itu melengkung menjadi tabung. Saya mengembalikannya dan secara bertahap mulai meningkatkannya sebesar 5-10 persen setiap minggunya. Saya mempercepat synthesizer hingga seratus kata, bahkan lebih, dan lagi dan lagi. Sekarang dia berbicara seribu kata per menit.”

Zhenya menulis dalam editor teks biasa - Gedit atau Nano. Menyalin sumber dari Github, meluncurkan pembaca layar dan mendengarkan kodenya. Untuk memastikan bahwa ini dapat dengan mudah dibaca dan dipahami oleh pengembang lain, ia menggunakan linter dan konfigurasi secara keseluruhan. Namun Zhenya tidak dapat menggunakan lingkungan pengembangan karena tidak dapat diakses oleh orang buta karena penerapannya.

“Mereka dibuat sedemikian rupa sehingga jendelanya ditentukan oleh sistem, dan semua yang ada di dalam jendela tidak terlihat oleh pembaca layar karena tidak dapat mengaksesnya. Saya sekarang telah menghubungi JetBrains secara langsung untuk mencoba dan membuat beberapa perbaikan pada lingkungan mereka. Mereka mengirimi saya sumber PyCharm. IDE ini diimplementasikan pada Intellij Idea, sehingga semua perubahan dapat diterapkan baik di sana maupun di sana.”

Hambatan lainnya adalah kurangnya kepatuhan terhadap standar web umum. Misalnya, kita melihat judul besar pada suatu halaman. Banyak pengembang menerapkan ini menggunakan tag span untuk mengencangkan font ke ukuran yang diinginkan, dan hasilnya terlihat bagus. Namun karena teks bukan judul untuk sistem, pembaca layar tidak mengenalinya sebagai elemen menu dan tidak mengizinkan interaksi.

Zhenya dengan mudah menggunakan VKontakte versi seluler, tetapi menghindari Facebook: “VK nyaman bagi saya karena memiliki daftar menu navigasi terpisah. Ia memiliki elemen dan judul yang bagi saya merupakan pembagian semantik halaman. Misalnya, judul tingkat pertama yang mencantumkan nama panggilan saya - Saya tahu ini adalah judul halaman. Saya tahu bahwa tajuk “pesan” membagi halaman, dan di bawahnya ada daftar dialog.

Facebook mempromosikan aksesibilitas, tetapi kenyataannya semuanya sangat buruk sehingga tidak mungkin untuk memahami apa pun. Saya membukanya - dan program mulai macet, halamannya sangat lambat, semuanya melompat-lompat bagi saya. Ada banyak tombol di mana-mana, dan saya berpikir, “bagaimana cara menggunakan ini?!” Saya hanya akan menggunakannya jika saya menyelesaikan klien saya atau menghubungkan pihak ketiga.”

Penelitian

Zhenya tinggal di Vladivostok di asrama universitas biasa. Ada kamar mandi di dalam kamar, dua lemari, dua tempat tidur, dua meja, dua rak, kulkas. Tidak ada gadget khusus, tapi menurutnya tidak diperlukan. “Keterbatasan penglihatan bukan berarti saya tidak bisa berjalan atau tidak menemukan jalan. Tapi saya bisa dan dengan senang hati melengkapi diri saya dengan rumah pintar jika saya punya bahan habis pakai. Saya tidak punya uang untuk membeli komponen. Bagi seorang siswa menghabiskan lima ribu biaya hanya untuk mengolok-oloknya sangatlah tidak menguntungkan.”

Zhenya tinggal bersama seorang gadis, dia membantu dalam banyak hal di sekitar rumah: “menyebarkan sandwich, menuangkan teh, mencuci pakaian. Oleh karena itu, saya memiliki lebih banyak waktu untuk bersantai dan melakukan hal-hal yang saya sukai.”

Misalnya, Zhenya memiliki grup musik tempat dia memainkan gitar listrik. Dia juga belajar setelah cedera. Pada tahun 2016, dia menghabiskan tiga bulan di pusat rehabilitasi, di mana dia meminta seorang guru untuk membantunya dengan gitarnya. Awalnya saya bermain-main dengan jahitan baju yang dibalik. Lalu saya membangun mediator.

“Saya mengambil perban untuk menguatkan tangan yang digunakan, misalnya oleh karateka, membedahnya pada pemisah jari dan menariknya ke lengan bawah. Ada bantalan busa yang melindungi sikat dari kerusakan - untuk itu saya menjahit pick yang dipotong oleh saudara saya dari spatula plastik untuk saya. Ternyata itu adalah lidah plastik yang panjang, yang saya gunakan untuk memainkan senar – memetik dan memetik.”

Ledakan tersebut meledakkan gendang telinganya, sehingga Zhenya tidak dapat mendengar frekuensi rendah. Gitarnya tidak memiliki senar keenam (terendah), dan senar kelima disetel berbeda. Dia kebanyakan memainkan bagian solo.

Namun kegiatan utamanya tetap pengembangan dan penelitian.

Tangan palsu

Bagaimana rasanya mendengarkan kode dengan kecepatan 1000 kata per menit

Salah satu proyeknya adalah pengembangan prostesis ekstremitas atas dengan sistem kontrol cerdas. Pada tahun 2016, Zhenya mendatangi orang yang mengembangkan prostesis dan mulai membantunya dalam pengujian. Pada tahun 2017, mereka mengikuti hackathon Neurostart. Dalam tim yang terdiri dari tiga orang, Zhenya memprogram pengontrol tingkat rendah. Dua orang lagi membuat modelnya sendiri dan mengajarkan jaringan saraf untuk sistem kontrol.

Sekarang Zhenya telah mengambil alih seluruh bagian perangkat lunak dari proyek tersebut. Ia menggunakan Myo Armband untuk membaca potensi otot, membuat topeng berdasarkan potensi tersebut, dan menerapkan model jaringan saraf di atasnya untuk mengenali gerakan—inilah yang menjadi dasar sistem kontrol.

“Gelang itu memiliki delapan sensor. Mereka mengirimkan perubahan potensial ke perangkat input apa pun. Saya memusnahkan SDK mereka dengan tangan saya sendiri, mendekompilasi semua yang diperlukan, dan menulis lib saya sendiri dengan Python untuk membaca data. Tentu saja datanya tidak cukup. Bahkan jika saya memasang satu miliar sensor pada kulit saya, itu masih belum cukup. Kulit bergerak melewati otot dan datanya tercampur.”

Kedepannya, Zhenya berencana memasang beberapa sensor di bawah kulit dan otot. Dia akan mencobanya sekarang - tetapi operasi semacam itu dilarang di Rusia. Jika seorang ahli bedah menanamkan peralatan yang tidak bersertifikat di bawah kulit seseorang, ia akan kehilangan ijazahnya. Namun, Zhenya menjahit satu sensor ke tangannya - sebuah tag RFID, seperti pada kunci elektronik, untuk membuka interkom atau kunci apa pun yang akan dihubungkan dengan kunci tersebut.

Mata buatan

Bersama Bogdan Shcheglov, seorang ahli biokimia dan biofisika, Zhenya sedang mengerjakan prototipe mata buatan. Bogdan terlibat dalam pemodelan 3D bola mata dan menghubungkan semua sirkuit mikro dalam model tiga dimensi dengan saraf optik, Zhenya sedang membangun model matematika.

“Kami mempelajari banyak literatur tentang analog yang ada, teknologi yang ada di pasaran dan saat ini, dan menyadari bahwa pengenalan gambar tidak relevan. Namun kami mengetahui bahwa matriks sebelumnya telah dibuat untuk merekam foton dan energinya. Kami memutuskan untuk mengembangkan matriks serupa dalam ukuran yang lebih kecil, yang mampu mendaftarkan setidaknya sekumpulan foton minimum dan membangun pulsa listrik berdasarkan matriks tersebut. Dengan cara ini kami menghilangkan lapisan perantara dari gambar yang jelas dan pengenalannya - kami hanya bekerja secara langsung.”

Hasilnya adalah penglihatan yang tidak sesuai dengan pengertian klasik. Namun seperti yang dikatakan Zhenya, sisa saraf optik harus merasakan suplai impuls listrik dengan cara yang sama seperti dari mata asli. Pada tahun 2018, mereka mendiskusikan proyek tersebut dengan rektor Universitas Teknik Kelautan, Gleb Turishchin, dan mentor Skolkovo Olga Velichko. Mereka menegaskan bahwa masalah ini dapat diselesaikan dengan menggunakan teknologi yang sudah ada di dunia.

“Tetapi tugas ini bahkan lebih sulit daripada mengembangkan prostetik. Kita bahkan tidak dapat melakukan percobaan pada katak untuk memeriksa seberapa baik retina menghasilkan impuls, bagaimana mereka bergantung pada cahaya yang berbeda, area mana yang menghasilkan lebih banyak, mana yang lebih sedikit. Kami membutuhkan pendanaan yang memungkinkan kami menyewa laboratorium dan mempekerjakan orang untuk menguraikan tugas dan mengurangi tenggat waktu. Ditambah biaya semua bahan yang diperlukan. Biasanya, semuanya bergantung pada uang.”

Birokrasi

Bogdan dan Zhenya mengajukan permohonan pendanaan ke Skolkovo tetapi ditolak - hanya produk jadi dengan potensi komersial yang dikirim ke sana, dan bukan proyek penelitian yang masih dalam tahap awal.

Terlepas dari semua orisinalitas cerita Zhenya, terlepas dari kemampuan dan kesuksesannya yang menginspirasi, orang akan terkejut dengan nasib buruk birokrasi yang aneh. Sangat menjengkelkan mendengar hal ini dengan latar belakang berita. Inilah “produk yang dibutuhkan orang” lainnya (aplikasi foto, pengoptimalan iklan, atau jenis obrolan baru) yang menerima pendapatan dan investasi jutaan dolar. Tetapi seorang penggila yang tidak dikenal tidak tahu apa yang harus dilakukan dengan idenya.

Tahun ini Zhenya memenangkan studi gratis selama enam bulan di Austria di bawah program kemitraan antar universitas - tetapi dia tidak bisa kuliah di sana. Untuk mengkonfirmasi visa, diperlukan jaminan bahwa ia memiliki uang untuk perumahan dan kehidupan di Salzburg.

“Mengajukan permohonan dana tidak membuahkan hasil, karena pendanaan hanya diberikan untuk program diploma penuh,” kata Zhenya, “Mengajukan permohonan ke Universitas Salzburg sendiri juga tidak membuahkan hasil - universitas tidak memiliki asrama sendiri dan tidak dapat membantu kami dengan akomodasi.

Saya menulis surat ke sepuluh dana, dan hanya tiga atau empat yang menanggapi saya. Selain itu, mereka menjawab bahwa gelar ilmiah saya tidak cocok untuk mereka - mereka membutuhkan gelar master dan lebih tinggi. Prestasi ilmiah saya dalam studi sarjana tidak dihargai oleh mereka. Jika Anda belajar di universitas lokal, Anda memiliki gelar sarjana dan terlibat dalam penelitian teknis, maka Anda dapat mendaftar di universitas tersebut. Namun bagi orang dari luar negeri, sayangnya mereka tidak memilikinya.

Saya menghubungi dana Rusia dengan jumlah yang kira-kira sama. Di Skolkovo mereka mengatakan kepada saya: maaf, tapi kami hanya bekerja dengan master. Yayasan lain mengatakan kepada saya bahwa mereka tidak memiliki pendanaan selama enam bulan, atau mereka hanya bekerja pada program diploma, atau tidak membiayai individu. Dan yayasan Prokhorov dan Potanin bahkan tidak menjawab saya.

Saya menerima surat dari Yandex bahwa mereka terlibat dalam kegiatan amal yang besar dan perusahaan saat ini tidak memiliki dana, tetapi mereka mendoakan yang terbaik untuk saya.

Saya bahkan menyetujui pembiayaan bertarget kontrak, yang memungkinkan saya pergi dan belajar, dan sebagai hasilnya saya akan membawa sesuatu untuk perusahaan. Namun semuanya berhenti pada tingkat komunikasi yang rendah. Saya mengerti tentang apa ini. Orang yang bekerja pada panggilan telepon dan surat hanya bekerja sesuai dengan dokumen. Mereka melihat ada lamaran yang datang, bahkan mungkin keren. Tetapi mereka akan menulis: maaf, tidak, karena jangka waktu lamaran telah habis atau Anda tidak memenuhi syarat sesuai dengan status Anda. Tapi saya tidak punya kesempatan untuk menjangkau tempat yang lebih tinggi dari pemilik dana, saya tidak punya kontak seperti itu.”

Namun postingan tentang masalah Zhenya mulai menyebar dengan cepat di jejaring sosial. Dalam beberapa hari pertama, kami mengumpulkan sekitar 50 rubel - dari jumlah yang dibutuhkan 000 euro. Tidak banyak waktu untuk bersiap, tetapi banyak orang sudah menulis surat kepada Zhenya tentang dukungan. Mungkin semuanya akan berhasil.

Saya akan dengan senang hati mengakhiri teks panjang tentang kembalinya pahlawan dari Austria ini dengan pengalaman baru dan kuat. Atau menerima hibah untuk salah satu proyek, dan foto dari laboratorium baru. Namun pesan itu berhenti di sebuah kamar asrama, dimana terdapat dua lemari, dua tempat tidur, dua meja, dua rak, dan lemari es.

Bagi saya, komunitas profesional yang besar diperlukan untuk saling membantu. Istri Nekrasov membutuhkan uang, kontak yang berguna, ide, nasihat, apa saja. Mari tingkatkan karma kita.

Kontak Zhenya dan tokoh penting lainnyae-mail: [email dilindungi]
Телефон: +7-914-968-93-21
Telegram dan WhatsApp: +7-999-057-85-48
github: github.com/Ravino
vk.com: vk.com/ravino_doul

Detail untuk transfer dana:
Nomor kartu: 4276 5000 3572 4382 atau nomor telepon +7-914-968-93-21
Dompet Yandex melalui nomor telepon +7-914-968-93-21

Penerima: Nekrasov Evgeniy

Sumber: www.habr.com

Tambah komentar