Saya melihat pertanyaan ini pada Quora dan mulai menulis jawabannya. Tetapi jawabannya terlalu besar, jadi saya mengubahnya menjadi artikel ini.
Berikut adalah beberapa perubahan acak yang saya perhatikan dalam pemrograman selama 20 tahun terakhir:
- Banyak konsep yang hanya teoretis 20 tahun yang lalu banyak digunakan dalam praktik saat ini. Sebagai contoh, paradigma fungsional seperti ketetapan objek, rekursi ekor, koleksi malas, pencocokan pola, fungsi kelas satu, dan memandang rendah mereka yang tidak menggunakan semua ini.
- "Aplikasi desktop" banyak orang secara neironik memanggil browser yang dikemas dengan halaman default dan tanpa bilah alamat.
- Pemrograman berorientasi objek (OOP) telah kehilangan dasar, meskipun masih jauh lebih populer daripada salah satu alternatif. Bahasa-bahasa muda seperti Go, Rust, dan Swift semakin menggunakan ciri - ciri . Komposisi secara universal lebih disukai daripada warisan.
- Karena prevalensi prosesor multi-core, dukungan untuk pemrograman paralel dalam bahasa saat ini lebih mudah ditemukan daripada dukungan untuk panggilan primitif ke sistem operasi 20 tahun yang lalu. Dengan demikian, primitif asinkron (seperti async / menunggu), coroutine paralel seperti "goroutine" di Go atau saluran di D, dan semantik kompabilitas ("semantik kompabilitas") seperti mekanisme "yang dapat diamati" dalam pemrograman reaktif yang digunakan dengan kuat.
- Pixel bukan lagi unit yang cocok.
- Pengumpulan sampah telah menjadi cara yang biasa untuk pemrograman yang aman, tetapi ia datang dengan berbagai alternatif yang lebih muda seperti semantik untuk menunjukkan masa pakai objek di Rust dan lelucon menyolok pada ulasan kode.
- 3 miliar perangkat menggunakan Java . Benar, jumlah ini tidak berubah selama sepuluh tahun.
- Sistem manajemen ketergantungan telah menjadi bagian penting dari bahasa apa pun. Tidak ada yang mau mengunduh atau memasang apa pun secara manual. 20 tahun yang lalu, setelah mengunduh arsip zip, membukanya di folder proyek, kami memperbarui file konfigurasi dan berdoa agar tidak ada yang rusak.
- Untuk menjadi tim pengembangan sekarang berarti perlunya melakukan ritual misterius: bersama-sama 15 menit di pagi hari untuk menggambar simbol okultisme pada stiker .
- Seperangkat alat ketika bekerja dengan bahasa jauh lebih luas. Sebelumnya, hanya ada kompiler dan, dengan keberuntungan, debugger. Hari ini mereka biasanya datang dengan linter, alat pemformatan kode, mesin templat, opsi pemutakhiran sendiri dan daftar alasan untuk digunakan dalam holivar terhadap bahasa yang bersaing.
- Bahkan bahasa pemrograman telah mengambil bagian dalam debat βtabs atau spasiβ.
- Adobe Flash, yang merupakan satu-satunya cara bekerja untuk mengimplementasikan antarmuka web normal, untungnya, sekarang mati. Benar, satu standar digantikan oleh tiga kerangka kerja yang berbeda dengan model yang sama sekali berbeda.
- IDE dan bahasa pemrograman dihapus dari satu sama lain. 20 tahun yang lalu ada bahasa dan IDE yang dirancang khusus untuk itu, seperti Eclipse untuk Java, Visual Basic, Delphi, dll. Sekarang kami memiliki editor universal seperti VS Code, yang mampu mendukung berbagai bahasa dan fitur.
- Merupakan kebiasaan untuk mengeksekusi kode di balik tiga lapisan virtualisasi. Setidaknya ini. Kode yang dijalankan pada logam kosong? Tidak, itu akan terlalu produktif.
- Pengembangan lintas-platform adalah standar karena banyak arsitektur, perangkat seluler, server cloud, sistem IoT tertanam. 20 tahun yang lalu, pengembangan dilakukan hampir secara eksklusif untuk PC.
- Kode mulai dijalankan secara lokal jauh lebih jarang.
- Dokumentasi sekarang hanya online dan disebut Google. Hampir tidak ada dokumentasi offline. Dan ketika dia berada, tidak ada yang tahu di mana dia berada.
- Banyak orang tidak menganggap tutorialnya bermanfaat, kecuali video. Bahkan jika perlu waktu lebih lama untuk membacanya daripada membaca teks.
- Mereka mengatakan bahwa sebelum StackOverflow ditemukan, orang harus bertanya.
- Orang-orang berkembang di Mac OS.
- Koneksi internet adalah aturannya, sedangkan offline adalah pengecualian. Dulu justru sebaliknya.
- Perlindungan peretasan adalah apa yang sekarang harus Anda pikirkan saat membuat program.
- Perangkat seluler dapat menampilkan halaman reguler, sehingga kebutuhan untuk halaman WAP untuk versi mobile dari situs pada subdomain telah hilang. Sebagai gantinya, kami membuat halaman reguler untuk situs versi seluler di subdomain.
- Kami senang memposting kode kami di Open Source. Tentu saja, kecuali kode yang membuat kita malu.
- Industri ini memiliki lebih banyak wanita berbakat, orang-orang berpenampilan non-Eropa, dan perwakilan dari komunitas LGBT - terima kasih kepada semua orang yang berjuang melawan diskriminasi. Saya tidak berpikir bahwa kesetaraan penuh telah dicapai, tetapi situasinya jauh lebih baik daripada 20 tahun yang lalu. (jangan lupa bahwa ini adalah terjemahan - kira-kira terjemahan.)
- Kebocoran data pengguna - peristiwa biasa. Dalam kasus seperti itu, sebuah posting ditulis di blog perusahaan dengan rekomendasi untuk segera mengganti kata sandi. Pengampunan biasanya tidak diminta.
- Bekerja sebagai programmer dari jarak jauh sekarang lebih mudah dari sebelumnya. Untuk ini, berkat teknologi konferensi video, akses Internet di mana-mana, dan mesin kopi rumahan.
- Kami tidak lagi menggunakan IRC untuk komunikasi. Kami memilih alternatif yang jauh lebih besar yang disebut Slack, kalau saja kami tidak harus mengarahkan alamat server secara manual.
- Kami menjalankan program pada kartu video.
- Produk Anda tidak bernilai sepeser pun, jika Anda tidak bergantung pada blockchain dan AI. Ya, meskipun versi terpusat dan yang digerakkan oleh algoritma lebih sederhana, lebih efisien, dan lebih cepat.
- Satu gigabyte tidak cukup.
- Karena serangan melalui saluran pihak ketiga, kami bahkan tidak bisa mempercayai prosesor fisik.
- Bagian penting dari pemrograman sekarang terjadi selama pertandingan sepak bola meja.
- Karena kami memiliki CPU yang lebih cepat, kami mulai melakukan perhitungan yang rumit dengan Python, bukan Fortran. Jadi perhitungannya kira-kira sama dengan 20 tahun yang lalu.
- Membuat bahasa pemrograman baru atau bahkan membuat perangkat baru adalah hobi normal.
- Pengujian unit, seperti hal lain yang berguna yang dikuasai hype, mulai digunakan bahkan di tempat yang tidak dibutuhkan, dan akhirnya berubah menjadi agama.
- Kolega mengerutkan kening ketika mereka mengetahui bahwa Anda menyimpan kata sandi pengguna dalam teks yang jelas. Tetapi mereka tidak mengatakan apa-apa: mereka melakukannya sendiri.