Selama bertahun-tahun pengalaman saya:
- Bahasa telah berubah (biasanya relatif lambat).
- Berbagai masalah yang bisa dipecahkan secara praktis telah tumbuh (agak lebih cepat);
- Ukuran dan kompleksitas solusi telah meningkat (relatif cepat);
- Ada sesuatu yang
flavor of the day
(kadang baik, sering buruk).
Seperti dicatat pada diskusi tentang pola, geng empat tidak menemukan pola. Mereka datang dengan terminologi dan template untuk solusi yang sudah diterapkan.
Tidak seperti banyak bidang lain, masih banyak yang tidak biasa dilakukan. Saya telah melihat banyak barang canggih datang dan pergi. Banyak dari ini adalah pengutipan ulang teknik yang sudah dalam praktek, dan yang biasanya berhasil sampai batas tertentu. Yang lain lebih atau kurang telah pergi, dan sebagian besar di mana pendekatan baru. (Adakah yang melihat bahasa generasi ke-5 belakangan ini?)
Programmer yang saya lihat yang paling efektif dapat memilih dan merakit komponen yang telah terbukti menjadi solusi yang berfungsi. Ini jarang melibatkan sesuatu yang canggih, yang umumnya akan meningkatkan risiko proyek. Kemampuan untuk membangun di atas pekerjaan yang telah dilakukan, memungkinkan kita untuk meningkatkan ruang lingkup dari apa yang mungkin.
Bahasa pemrograman cenderung masuk dalam keluarga yang relatif sedikit. Keakraban dengan satu bahasa dalam keluarga membuat bekerja dengan bahasa yang serupa menjadi lebih mudah. Memahami perpustakaan yang tersedia dalam bahasa dan memanfaatkannya dapat sangat meningkatkan produktivitas dan keandalan. Secara umum, saya akan memilih bahasa yang lebih lama dengan perpustakaan yang sesuai daripada bahasa yang lebih baru tanpa perpustakaan yang sesuai.
Saat menerapkan teknologi baru penting untuk menghindari Because We Can
sindrom. Menambahkan teknologi baru karena citarasa tahun ini, cenderung menyebabkan lebih banyak masalah daripada memecahkannya. Mengetahui kapan teknologi akan memecahkan masalah nyata, dan kapan itu hanya akan menambah kompleksitas adalah keterampilan yang berguna.
Pemrogram yang sangat baik akan memecahkan masalah baru, dan menggunakan solusi yang ada untuk sisanya. Hanya sedikit perusahaan yang membutuhkan teknologi canggih, semua membutuhkan solusi yang solid.
Saya biasanya menyesal meluncur ke bawah pisau cukur. Saya tidak ingat pernah menyesal menggunakan teknologi yang sudah terbukti. Namun, banyak dari apa yang digambarkan sebagai new
pengemasan ulang dari sesuatu yang ada. Biasanya, pengemasan ulang ini membuat hal-hal lebih mudah untuk dipahami dan diterapkan dengan tepat.