Jangan menjadi Kode Tyrant, jadilah mentor

Peretasan perangkat keras adalah metode kehidupan di sini di Hackaday. Kami merayakan Pekerjaan setiap hari dengan lem panas, lakban, bagian-bagian terikcling, serta apa pun di antaranya. Ini musim terbuka untuk meretas perangkat keras. Di dunia, untuk beberapa alasan aplikasi perangkat lunak tidak mendapatkan perawatan laissez-faire yang sama persis. “Terlalu banyak baris dalam file itu” “kebiasaan buruk” “nama variabel buruk” komentar sering turun. Bahkan pekerjaan paling jelek yang paling jelek tidak aman. Membangun robot untuk memancarkan laser ke mata seseorang? Jauh lebih baik pastikan Anda memiliki kurang dari 500 baris kode per file!

Kenapa ini? Apa yang membuat pengunjung serta komentator mengadakan aplikasi perangkat lunak ke dasar yang lebih tinggi daripada perangkat keras yang terjadi untuk berjalan? Alasannya banyak dan juga bervariasi, serta itu adalah pola yang ingin saya saksikan berhenti.

Teknik perangkat lunak adalah ilmu yang cukup muda serta evolusi cepat. Setiap beberapa bulan ada bahasa panas baru di blok, dengan forum, grup individu, serta artikel berlimpah. Bahkan Metode Insinyur aplikasi perangkat lunak bekerja secara teratur berubah. Air terjun ke gesit, model V, model spiral. Bahkan modifikasi metodifikasi gaya aplikasi perangkat lunak – dari kode pseudo ke UML untuk menguji pengembangan yang didorong, listing terus menerus.

Istilah-istilah seperti “kode bersih” terlempar ke sekitar. Ini tidak cukup besar untuk memiliki aplikasi perangkat lunak yang berfungsi. Aplikasi perangkat lunak perlu dikomentari dengan baik, dapat dipertahankan, elegan, dan juga tentu saja, mematuhi praktik pengkodean terbaik. Banyak dari ini adalah ide-ide hebat … di lingkungan kerja. Pekerjaan adalah betapa besarnya mendidih ini. Insinyur aplikasi perangkat lunak harus tetap sebanyak tanggal dengan pola baru untuk dapat digunakan.

Ada sejumlah besar mentalitas “kelahiran kembali” di antara pengembang aplikasi perangkat lunak ahli. Coders biasanya tidak suka memiliki modifikasi yang diperlukan pada mereka. Namun ketika mereka menemukan alat atau sistem yang mereka sukai, mereka menerimanya secara profesional, serta dalam proyek-proyek pribadi mereka. Kemudian mereka menyebarkan berita tentang teknik atau alat baru ini; Pada reddit, di forum, untuk setiap individu yang akan mendengarkan. Contoh tradisional ini adalah, tentu saja, editor seperti perdebatan VI vs Emacs.

Kode Tyrants.

XKCD selalu relevan
Evangelisisme ini adalah tempat banyak komentar berasal. Banyak coders berpengalaman benar-benar percaya jika Anda tidak melakukan hal-hal dengan cara mereka, Anda melakukannya dengan cara yang salah. Selain tentu saja, jika seseorang salah di web yang perlu mereka perbaiki. Saya suka menelepon panggilan orang-orang ini kode tiran. Itu tidak masalah tingkat keahlian Anda, latar belakang, jika Anda mengkodekan untuk bekerja, atau untuk proyek yang menyenangkan. Mereka akan menunjukkan kepada Anda dengan cara mereka, serta siap untuk membantah topik berjam-jam dengan orang lain yang melompat masuk.

Jangan menjadi kode tiran. Ada banyak lokasi di web untuk menyambungkan alat serta teknik.

Seseorang yang hanya menemukan program yang kemungkinan besar tidak diperlukan untuk memahami semua trik paling keren. Bahkan, hal-hal terbaru bisa merugikan. Coder baru yang ditemukan untuk memprogram C / C ++ pada sistem tertanam kemungkinan besar tidak akan dilayani dengan baik dengan diajarkan C ++ 11 yang bijaksana pointer. Saya telah melihat coders menggerutu bahwa seseorang tidak memanfaatkan ternarys ketika mereka mungkin. Operator ternary adalah kesucian hewan peliharaan saya.

ini

Formulir Panjang1.
2.
3.
4.
5.
6.
7.
8.
if (foo> bar)
{
output = fizz;
}
lain
{
output = buzz;
}

vs ini

Formulir singkat1
output = foo> bilah? fizz: buzz;

Siapa pun dapat memeriksa potongan pertama. Itu hampir berbahasa Inggris. Sementara yang lebih pendek, cuplikan kedua tidak dapat dibaca oleh seorang coder baru. Kompiler tidak memberikan sialan, Anda akan mendapatkan output perakitan yang sama persis.

Belajar kode

Banyak programmer ulung telah lupa seperti apa penemuan untuk memprogram. Tutorial yang tidak terlalu masuk akal, pesan kesalahan samar, serta urusan forum yang pernah menjadi jawaban yang tidak pernah dijawab.

Arduino mencoba membuat segalanya sedikit lebih mudah. Namun pada intinya, itu hanya C dicampur dengan sedikit C ++ (salah satu bahasa tersulit untuk melompat ke). Punya kesalahan dalam program Anda? Ide Arduino hanya akan memuntahkan teks kesalahan dari AVR-GCC. Ini bukan friendly Newbie yang tepat.

Gim rousing dengan tepat seberapa buruk itu memilah?
Apa yang dilakukan oleh seorang programmer neophyte ketika mereka macet? Hal yang persis sama dengan pro lakukan. Hop ke Google dan mulailah mencari. Di sinilah hal-hal dapat berubah dari yang buruk menjadi lebih buruk. Untuk satu alasan atau lain, StackOverflow selalu berada di 10 hasil pencarian pengkodean teratas. Sebagai sumber daya, itu sedikit pedang bermata dua. Ada banyak info hebat di sana. Namun, kode tiran telah sibuk, dengan berdebat, nitpicking, serta jawaban dapat terdiri dari informasi yang sudah usang yang sudah ketinggalan zaman, serta biasa. Lebih banyak dari beberapa penulis blog telah menyesali ini. Ketika Randal Munroe membuat Stackoverflow menjawab contoh A untuk komik XKCD, Anda mengerti Anda dalam masalah.Jenis tumpukan telah diterapkan, Anda dapat memeriksanya di sini. Coders berpengalaman dapat memisahkan sinyal dari kebisingan. Namun seseorang yang baru akan memiliki karenanya.

Jadilah seorang Mentor

Jadi apa pilihan untuk semua ini? Saya percaya orang-orang radio amatir memiliki sistem yang hebat untuk itu. Sukarawan mentor, yang disebut “Elmers” membantu para pecinta dalam perjalanan mereka dari Neophyte ke Journeyman. Menurut ARLL, mentoring dimulai dengan klub regional. Bagi kami, klub-klub ini hackerspaces dan juga memat. Orang yang menjadi sukarelawan waktu di daerah-daerah ini sudah melakukan tugas yang fantastis membantu orang menemukan aplikasi perangkat lunak maupun perangkat keras. Saya sarankan mereka melangkah lebih jauh. Cobalah untuk menemukan sekelompok inti orang yang siap untuk akhirnya menjadi mentor – untuk mengambil kewajiban untuk beberapa siswa. Itu menunjukkan bidang pertanyaan mereka, serta membimbing mereka ketika mereka mengalami kesulitan menemukan kode. Bukan hanya ketika atau dua kali seminggu di Open Hack Night. berikan mereka email Anda serta masalah lapangan saat mereka masuk.

Menjadi seorang mentor tidak menunjukkan mentor dari bawah ke atas. Ada banyak tutorial, video, serta buku di luar sana. Beberapa baik, yang lain tidak terlalu banyak. Mentor yang hebat harus dapat dipotong dengan gulma serta menyarankan beberapa yang hebat.
Tidak semua orang secara fisik dekat dengan hackerspace. Bagi mereka satu-satunya pilihan ada di sumber daya Internet. Ada subreddits, serta forum, serta hackaday.io kita sendiri, yang memiliki kelompok orang yang luar biasa di saluran obrolan hack.

Pembelajaran pengkodean dari mentor adalah pengalaman yang memuaskan baik untuk peserta pelatihan serta mentor itu sendiri. Harapannya adalah bahwa peserta pelatihan akan berakhir menjadi mentor kode, membantu generasi berikutnya pergi dari kode neophyte ke kode peretasan perangkat keras.