Apakah Java COBOL berikutnya?

Dalam mania kita untuk yang baru, mudah untuk melupakan berapa lama yang "lama" tetap bersama kita. Ambil COBOL, misalnya. Bahasa pemrograman yang terhormat berusia 60 tahun bulan ini dan, seperti yang ditulis Steven J. Vaughan-Nichols, bisa "hidup lebih lama dari kita semua".

Memang, COBOL menawarkan contoh yang bagus tentang kecepatan sebenarnya dari kemajuan dalam industri kita, sementara mungkin juga menawarkan beberapa petunjuk tentang seperti apa COBOL besok. Java dan SQL, siapa saja? Atau mungkin Python?

COBOL si pekerja keras

Kebanyakan orang yang membaca posting ini tidak lahir pada tahun 1959, tahun dimana Mary Hawes datang dengan ide untuk COBOL (Common Business-Oriented Language), yang kemudian diformalkan dan dipromosikan oleh Grace Hopper (dan lainnya). Tujuan Hawes, seperti yang diingatkan Vaughan-Nichols, adalah untuk menciptakan "kosakata seperti bahasa Inggris yang dapat digunakan di berbagai komputer untuk melakukan tugas bisnis dasar," bahasa vendor-netral sejati.

Sementara masa kejayaan COBOL mereda pada 1980-an, ia terus memberdayakan 70 persen sistem pemrosesan transaksi global, menurut Micro Focus (perusahaan yang memelihara COBOL), dalam sebuah wawancara dengan Vaughan-Nichols. Menarik uang dari ATM? Anda tadinya menggunakan COBOL. Membayar hipotek? COBOL. Disebut call center? Ya, itu COBOL juga. Bahkan memesan liburan Anda hampir pasti bergantung pada COBOL.

COBOL diduga telah kedaluwarsa selama beberapa dekade, namun 220 miliar baris COBOL tetap ada dalam kerangka utama kehidupan kita. Menurut Lero, pusat penelitian rekayasa perangkat lunak, transaksi COBOL mengerdilkan penelusuran Google hingga 200x pada tahun 2014. Akankah Google mengejar ketinggalan?

COBOL lebih dari sekedar orang bodoh yang tinggal di flat pensiunan mainframe. Selain mudah dibaca, bahasa ini tetap mutakhir dengan tetangganya. Saat ini COBOL terintegrasi dengan kontainer Docker dan Java, saat berjalan di cloud atau di Linux atau Windows, atau di mana saja dan di mana saja. Ini adalah bahasa yang sangat portabel yang memungkinkan pengembang untuk fokus pada menulis aplikasi mereka sementara COBOL menangani seluk-beluk sistem operasi yang mendasarinya.

Saat ini, risiko terbesar COBOL adalah semakin sulit menemukan pemrogram yang memenuhi syarat. Bahasa ini mungkin memiliki puluhan tahun lebih untuk hidup bersama kita, mengingat biaya dan risiko mengganti sistem berbasis COBOL dengan alternatif, tetapi itu tidak berarti pengembang tumbuh dewasa bermimpi untuk menulis program COBOL pertama mereka. Ini masalah, tapi tidak ada yang ingin saya selesaikan di sini, di posting ini. (Maaf!)

Sebaliknya, meninjau 60 tahun sejarah COBOL membuat saya berpikir tentang bahasa hari ini yang bisa menjadi "COBOL" masa depan. Yaitu, bahasa / teknologi apa yang masih akan digunakan di bawah kap teknologi masa depan?

COBOL besok hari

Sulit untuk memprediksi masa depan, tentu saja, tetapi ada kasus kuat yang harus dibuat untuk SQL, Python, dan Java. Dave Kellogg selama bertahun-tahun menyebut SQL sebagai COBOL baru. Itu mungkin benar dalam hal umur panjang dan persepsi bahwa itu sudah ketinggalan zaman, tetapi paralelnya akhirnya memudar. Hanya ada satu COBOL. Untuk semua alasan standarisasi, SQL berbicara dalam dialek yang berbeda tergantung pada penyedia database. Meskipun itu tidak membuat SQL bertahan (dan pasti akan tetap relevan selama beberapa dekade mendatang), itu tidak terasa seperti semangat yang sama dengan COBOL.

Tentu tidak seperti Java.

Java, seperti COBOL, relatif mudah dibaca dan ditulis. Juga seperti COBOL, Java tetap mempertahankan modernitasnya. Setiap kali Java terlihat memudar, ada sesuatu yang membuatnya bersemangat. Menurut Brian Leroux, Android jelas bertanggung jawab atas relevansi berkelanjutan [Java]. ” Beberapa saat kemudian, data besar menghidupkan kembali Java lebih jauh. Seperti yang disoroti Nitin Borwankar, “Java menerima [angin] kedua karena Hadoop dan seluruh ekosistem data science termasuk bahasa Hive, HBase, Spark, Cassandra, Kafka, dan JVM seperti Groovy dan Clojure. Semua itu tidak akan hilang dalam waktu dekat. "

Memang, seperti halnya COBOL, salah satu alasan utama kami mungkin melihat Java terukir di batu nisan kami adalah karena, seperti yang ditulis oleh Jonathan Eunice, Java "diterapkan secara mendalam dan luas di aplikasi penting, sehingga layak untuk mendapatkan kritik sistematis." Semakin banyak perusahaan yang menanamkan Java ke dalam aplikasi mereka yang paling penting, semakin kecil kemungkinan Java dirobek dan diganti untuk alternatif modern. Biaya dan risiko berkurang jika tidak dilakukan.

Dengan cara yang sama, Python mungkin membuktikan daya tahannya. Di benak Lauren Cooney, Python akan bertahan karena ini adalah "bahasa GSD [selesaikan pekerjaan] vs. bahasa yang keren". Itu "tidak mewah". Ini "berhasil." Yang penting, seperti Java, Python semakin menjadi dasar bagi ilmu data modern, antara lain, yang mungkin terbukti menjadi beban kerja transaksional masa depan yang menopang sistem keuangan (yang, seperti yang disebutkan, adalah alasan utama COBOL tetap dingin hari ini).

Ada yang lain? Nah, ada tanggapan yang tidak terlalu bercanda bahwa mungkin COBOL adalah COBOL masa depan. Seperti yang dikatakan Andrew Oliver, “Bertahun-tahun yang lalu saya mengatakan bahwa Java adalah COBOL masa depan. Semua orang menatapku dengan aneh. Saya pikir ini adalah masa depan. "