10 X lebih produktif ? Tidak mungkin. Saya cenderung berpikir faktor multiplikasi lebih seperti 1,1, yang bertambah setelah beberapa saat.
Apa yang dibicarakan Steve Yegge sebenarnya adalah refleksi untuk menjadi seorang ahli dalam Emacs, dan itu sangat jarang. Orang-orang yang mencapai efek multiplikasi ini secara aktif menyesuaikan pengalaman Emacs mereka dengan menulis elisp untuk menyesuaikan Emacs agar sesuai dengan kebutuhan spesifik mereka. Misalnya, Yegge menulis ejakulasi . Menafsirkan kutipan Yegge dengan tegas menyiratkan Anda menyesuaikan Emacs untuk membuatnya lebih mudah untuk menyesuaikan / memperluas Emacs.
Inilah cara saya memecah berbagai tingkat keahlian yang berlaku untuk Emacs:
- Seorang pemula tahu bagaimana menjalankan Emacs, menggerakkan kursor di sekitar, membuat beberapa pengeditan, keluar dari Emacs.
- Seorang pemula yang mahir tahu bagaimana memasukkan beberapa penyesuaian dasar pada mereka
.emacs
, atau telah sepenuhnya menyalin potongan-potongan orang lain .emacs
ke dalam milik mereka. Mereka tahu cara membuat binding kunci global, require
paket bawaan, mengaktifkan mode minor.
- Pengguna Emacs yang kompeten memiliki
.emacs
file besar , mungkin dipecah menjadi beberapa file. Mereka mengunduh dan menggunakan paket non-standar, tahu cara menemukan dokumentasi untuk perintah, mode, melihat ikatan kunci yang ada, merasa nyaman dengan perbedaan antara mode minor dan mode mayor. Pengguna yang kompeten umumnya menjaga satu instance Emacs berjalan selama berhari-hari / minggu, menulis, menyusun, menjalankan dan men-debug program dari Emacs mereka.
- Pengguna mahir merasa nyaman menulis emacs lisp, membuat perintah interaktif mereka sendiri, dan nyaman menulis mode minor. Pengguna yang mahir melihat kode emacs lisp untuk mendapatkan pemahaman yang lebih baik tentang mode yang mereka gunakan, menggunakan debugger elisp, dan umumnya menggunakan proses yang lebih rendah (shell, proses lisp, ...).
- Pengguna Expert Emacs menulis mode utama baru dari awal, mencari dan memodifikasi kode C untuk Emacs, tahu apa itu pengeditan rekursif dan menggunakannya, gunakan komunikasi antar-proses untuk mengintegrasikan Emacs dengan alat eksternal. Mereka juga membaca milis emacs-devel .
Dan karena Anda meminta pengalaman pribadi, berikut adalah contoh dari apa yang saya lakukan secara pribadi yang membuatnya merasa saya lebih produktif. Catatan: Saya kebetulan bekerja di sebuah perusahaan di mana kami tidak berada di dekat tepi pendarahan dari lingkungan pengembangan, misalnya, kami masih menggunakan CVS.
- Saya mengintegrasikan Emacs dengan alat pelacak bug: ketika saya membuat komitmen, itu mencatat nama file dan versi di bidang untuk bug, dan dari Emacs saya dapat melihat bug saya, menugaskan mereka, menyelesaikannya, dll.
- Saya menulis sebuah jembatan yang menghubungkan produk saya (pekerjaan harian) dan Emacs, secara efektif membuat produk saya menjadi proses yang lebih rendah - memungkinkan saya untuk membuat perubahan pada kode sumber dengan cepat.
- Saya memperpanjang penanganan TAGS dengan find-file-in-tag yang menyediakan sejumlah pintasan yang sesuai dengan lingkungan pengembangan saya.
- Saya menulis mode yang mengambil hasil regresi dan memungkinkan saya untuk melompat ke kegagalan, memeriksa file log, menjalankan kembali satu tes atau lebih, atau memasuki menjalankan debug, dengan penekanan tombol minimal.
- Laporan status mingguan saya (ya, saya menggunakan Emacs untuk email) dibuat secara otomatis menggunakan komitmen yang saya buat sepanjang minggu.
Itu adalah perubahan yang saya buat untuk secara khusus menyesuaikan Emacs dengan lingkungan dan alur kerja saya.
Apakah saya 10X lebih produktif daripada orang lain di sekitar saya? Tidak.
Namun, untuk pekerjaan sehari-hari saya, ada banyak tugas yang dapat saya lakukan dengan beberapa penekanan tombol yang orang lain habiskan lebih lama di lingkungan yang tidak disesuaikan, dan yang umumnya mengharuskan mereka untuk beralih antara editor dan browser web atau shell .
Apakah mereka contoh yang mencengangkan? Tidak. Saya yakin banyak dari apa yang telah saya lakukan sudah tersedia di Visual Studio . Apakah artikel saya akan mengembalikan Anda ke Gereja Emacs? Mungkin tidak.
Namun, jika Anda melihat pola perilaku di lingkungan pengembangan Anda, dan Anda memiliki rasa gatal yang memberitahu Anda, "Saya benar-benar tidak harus melakukan X / Y / Z berulang kali, jika saya hanya bisa ..." lalu Saya sarankan mencoba menggunakan Emacs untuk menggaruk gatal itu. Goresan itu bisa menjadi langkah pertama ke jalan "perkuat diri" yang dibicarakan Steve Yegge.
Catatan kecil: Saya tidak tahu bahwa banyak (ada?) Pengguna Emacs yang benar-benar ahli secara aktif menggunakan situs stack overflow, atau, setidaknya, mereka tidak menjawab pertanyaan terkait Emacs. Saya mengatakan bahwa berdasarkan pada pengguna teratas untuk emacs dan tag elisp pada stack overflow.