Python, melahap dunia: sebagai proyek sampingan dari satu pengembang telah menjadi bahasa pemrograman yang populer

Kecewa dengan kekurangan bahasa pemrograman yang ada, Guido Van Rossum menciptakan bahasa Python. Sekarang bahasa ini digunakan oleh jutaan orang, dan Nick Heath berbicara dengan van Rossum tentang masa lalu dan masa depan bahasa tersebut.



Guido Van Rossum di Kantor Pusat Dropbox pada tahun 2014

Pada akhir 1994, sekelompok programmer terpilih dari seluruh Amerika Serikat berkumpul untuk membahas senjata rahasia baru mereka.

Barry Worso adalah salah satu dari dua lusin pengembang yang berkumpul untuk lokakarya pertama tentang bahasa pemrograman Python baru, dan mengingat betapa jelas kegembiraan sukacita pengguna pertama.

"Saya terutama ingat satu orang yang mengatakan: 'Jangan memberi tahu siapa pun bahwa saya ada di sini karena fakta bahwa kami menggunakan python adalah keunggulan kompetitif." Itu adalah senjata rahasia mereka. "

Bahkan pada pertemuan awal ini di Bureau of State Standards A.S. di Maryland, seperti yang dikatakan Warso, jelas bahwa python menawarkan sesuatu yang baru dalam hal penulisan kode yang mudah dan hasil yang sederhana.

“Ketika mereka pertama kali menunjukkan saya python, saya tahu itu adalah sesuatu yang istimewa. Itu adalah kombinasi dari keterbacaan dan kegembiraan menulis kode dengan python, ”kenangnya.

Saat ini, antusiasme untuk python telah menyebar jauh melampaui batas-batas segelintir pengembang ini, dan beberapa dari mereka memperkirakan bahwa itu akan segera menjadi bahasa yang paling populer di dunia, karena itu mendapatkan pengguna baru lebih cepat daripada bahasa lain. Jutaan orang menggunakan python setiap hari, dan pertumbuhan eksponensial penggunanya tidak menunjukkan tanda-tanda perlambatan.

Python digunakan untuk tugas-tugas besar dan kecil oleh pengembang profesional dan pemula, dan sangat populer di kalangan pengembang web, pakar ilmu data, dan administrator sistem. Dengan bantuan python tahun ini, gambar-gambar pertama dari lubang hitam, yang terletak 500 juta triliun km dari kami, diperoleh, dan juga banyak skrip yang dituliskan di komputer desktop di seluruh dunia.

Python memainkan peran utama dalam beberapa organisasi paling terkenal di dunia: ini membantu Netflix mengirim video streaming ke lebih dari 100 juta rumah di seluruh dunia, mendasari fenomena berbagi foto Instagram dan membantu NASA menjelajahi ruang angkasa.

Tahun-tahun awal python


Dalam beberapa aspek, semakin populernya python sama tidak nyata dan mengejutkannya dengan popularitas kelompok komedi Inggris yang namanya dinamai, dan dalam ceruknya bahasa tersebut menjadi sama terkenal dan berpengaruh.

Bahasa pemrograman ini muncul sebagai proyek pihak ketiga dari seorang programmer dari Belanda, Guido Van Rossum . Pada akhir 1980-an, van Rossum bekerja pada sistem terdistribusi di Centrum Wiskunde & Informatica (CWI), Pusat Penelitian Negara Belanda untuk Matematika dan Ilmu Komputer. Frustrasi oleh kekurangan bahasa pemrograman yang ada, ia memutuskan untuk membuat yang baru - yang akan mudah digunakan, tetapi pada saat yang sama dengan potensi besar.

Untuk orang luar, tugas menciptakan bahasa pemrograman Anda sendiri mirip dengan pernyataan seperti "Saya akan membangun pesawat sendiri", tetapi van Rossum, yang saat itu berusia 30 tahun, memiliki cacat tertentu. Selama tiga tahun di CWI, dia bekerja dengan tim yang menciptakan ABC, bahasa pemrograman yang ditafsirkan, jadi dia sudah punya ide tentang bagaimana membuat penerjemah yang mengeksekusi instruksi programmer, dan jenis blok bangunan sintaksis apa yang diperlukan untuk bahasa baru.

Penting juga untuk memahami betapa sulitnya melakukan sesuatu dengan kemampuan terbatas bahasa pemrograman yang tersedia untuk van Rossum pada waktu itu. Sistem komputer Amoeba yang didistribusikan yang bekerja dengannya mengharuskannya untuk menggunakan C atau baris perintah Unix - kedua opsi memiliki keterbatasan serius. C menuntut agar pengembang tidak hanya berjuang dengan kesulitan mengelola memori secara manual dan menavigasi ladang ranjau dari kemungkinan kesalahan - itu tidak memiliki pustaka kode untuk tugas sehari-hari pengembang yang dapat digunakan kembali, itulah sebabnya pengembang harus menemukan kembali dengan setiap proyek baru sebuah sepeda. Tetapi baris perintah Unix memiliki masalah sendiri - ada berbagai alat untuk tugas-tugas umum, tetapi bekerja sangat lambat sehingga tidak dapat mengatasi logika yang kompleks.

Pembatasan yang diberikan pada pengembang oleh bahasa-bahasa ini sedemikian rupa sehingga membuat bahasa mereka sendiri yang ditafsirkan - yang akan mengambil fitur terbaik dari ABC - benar-benar bagi Van Rossum pilihan terbaik.

“Saya, secara umum, berpikir:“ Baiklah, mengapa saya tidak membuat bahasa saya sendiri ”, mencuri ide dari ABC, tetapi mengurangi ukuran proyek dari apa yang telah kami lakukan selama tiga tahun, menjadi apa yang saya sendiri bisa lakukan dalam tiga bulan, dan itulah bagaimana python dilahirkan, "katanya. Van Rossum benar-benar mulai mengerjakan ini pada akhir tahun 1989, dan ia meminjam nama dari rombongan komedi favoritnya, Flying Circus Monty Python - sebuah asosiasi dengan ular dan logo dengan python terikat muncul kemudian - dan mengerjakan proyek tersebut kapan pun memungkinkan.

“Saat itu saya tidak memiliki kehidupan sosial yang kaya. Jadi, alih-alih menatap TV, saya menulis kodenya, atau kadang-kadang saya melakukan ini dan itu, ”akunya.

Dan meskipun secara nominal ia menciptakan python untuk memudahkan karyanya, van Rossum memahami bahwa motif sebenarnya mungkin merupakan tantangan untuk menciptakan bahasanya sendiri.

“Saya tidak tahu seberapa serius saya percaya bahwa ini akan membuat saya lebih produktif. Saya pikir saya hanya menikmati ide memulai proyek saya, menulis kode yang saya inginkan, dan mengembangkannya seperti yang saya inginkan. Saya suka memprogram, ”katanya.

Dan jika bagi orang awam gagasan membuat YP sendiri mungkin tampak tidak biasa, van Rossum memiliki perusahaan yang baik. Pada akhir 1980-an, karena kekecewaan pada kemampuan alat yang ada, banyak bahasa baru dan populer muncul. Pepatah Larry Wall yang terkenal mengatakan bahwa dia didorong untuk menciptakan bahasa Perl dengan kompleksitas memecahkan masalah, serta banyaknya "kemalasan, ketidaksabaran, dan kesombongan". Menemukan bahasa terbaik untuk membuat alat desain sirkuit terpadu interaktif mendorong John Osterhout untuk membuat Tcl.

Hanya dalam tiga bulan, Van Rossum menciptakan prototipe kerja dari python yang ditafsirkan, di mana, menurutnya, tidak ada kemampuan modern, tetapi di mana sudah mungkin untuk menemukan versi bahasa modern.

"Dalam python hari ini ada banyak abstraksi penting yang tidak ada saat itu, tetapi bahasanya sangat mirip," katanya.

“Pada saat itu, saya memiliki semua komponen dasar juru bahasa dan bahasa. Program python sederhana yang ditulis untuk penerjemah versi pertama kemungkinan akan berfungsi hari ini, ”katanya, seraya menambahkan bahwa fungsi didefinisikan dengan cara yang sama, lekukan bekerja dengan cara yang sama, kamus dan tupel dibuat secara identik, dan ada garis interaktif yang akrab input, di mana Anda dapat menulis kode dan segera mendapatkan hasilnya.

Namun, ketika dua rekannya menggunakan bahasa ini dan segera mulai menggunakannya, van Rossum tidak memiliki harapan besar tentang penyebarannya yang luas - dia sudah tahu betapa sulitnya mempromosikan YP di era sebelum Internet.

Hari ini, dibutuhkan beberapa klik untuk berbagi perangkat lunak dengan seluruh dunia. Pada 1980-an, tugas ini jauh lebih sulit, dan van Rossum mengingat kesulitan mencoba mendistribusikan pendahulunya python, ABC.

"Saya ingat pada tahun 1985 saya pertama kali mengunjungi Amerika Serikat pada liburan dengan selotip di ransel saya," kata Van Rossum.


Guido van Rossum pada tahun 2001, ketika Yayasan Perangkat Lunak Python didirikan

Dipersenjatai dengan alamat dan nomor telepon orang-orang yang menyatakan minatnya pada ABC melalui dasar-dasar e-mail yang ada pada saat itu - dan dengan mana tidak mungkin untuk mengirim sesuatu yang besar, seperti kode sumber - ia melakukan perjalanan dari satu alamat ke alamat lain, membagikan kaset. Namun, terlepas dari semua upaya, ABC tidak lepas landas.

“Tidak mengherankan bahwa kami tidak dapat secara aktif mendistribusikan ABC, terlepas dari semua kualitasnya yang luar biasa,” katanya. Tetapi revolusi internet mendapatkan momentum, dan mendistribusikan python sudah jauh lebih mudah - sebuah koper dengan film tidak lagi diperlukan.

Van Rossum merilis python ke dunia melalui alt.sources newsgroup pada tahun 1991, hampir di bawah ketentuan lisensi sumber terbuka - meskipun konsep seperti itu hanya akan muncul setelah enam tahun. Meskipun interpreter python harus diunduh dari jaringan Usenet dalam bentuk bagian ke-21, yang kemudian harus dirakit menjadi satu file dan membuka ritsleting, mekanisme pengiriman ini masih jauh lebih efisien daripada pengiriman salinan fisik, yang dilakukan beberapa tahun sebelumnya.

"Saya berharap untuk beberapa keberhasilan, tetapi saya sudah memiliki pengalaman merilis proyek lain, yang akhirnya berubah menjadi kegagalan," katanya.

Dengan pengalaman seperti itu, Van Rossum tidak langsung menarik kesimpulan dari basis pengguna python yang sedang tumbuh. Lambat laun, ia menyadari bahwa rangkaian popularitas tidak berhenti, dan pada titik tertentu, setelah kontak teratur dengan komunitas python, ia menyadari bahwa ia telah menciptakan sesuatu yang bisa sukses.

“Menurut saya, pemahaman datang kepada saya dengan sangat lambat. Setelah rilis pertama kode sumber terbuka, saya membangun ritme merilis versi berikut dan berinteraksi dengan komunitas python yang muncul. Dan semua ini terasa seperti sesuatu yang serius. "

Mengapa python menang


Setelah bahasa mulai mendapatkan momentum di awal dan pertengahan 1990-an, van Rossum merasa bahwa python adalah bahasa yang waktunya telah tiba.

Van Rossum percaya bahwa pengembang tertarik dengan hal yang sama yang membuatnya menciptakan bahasa ini. Mereka ingin menemukan bahasa scripting tingkat tinggi yang memberikan keseimbangan antara kemudahan penggunaan dan banyak kemampuan, dan tidak memiliki keterbatasan yang dialami oleh baris perintah Unix ketika bekerja dengan logika yang kompleks. Mereka ingin mengakhiri persyaratan mendesak C mengacaukan manajemen memori dan terus-menerus menulis ulang kode untuk tugas-tugas dasar yang sama di awal setiap proyek.

Worso mengatakan bahwa python telah mencapai keseimbangan dalam kegunaan tanpa mengorbankan fitur - bahasa yang ada pada awal 1990-an tidak dapat menawarkan hal seperti itu. “Saya memprogram banyak Perl, Tcl dan C, dan itu tidak terlalu menarik. Kemudian seekor python muncul di tempat itu, dan saya berpikir: "Wow, sekarang menarik untuk diprogram lagi," katanya.


Barry Warso pada pertemuan kerja pengguna python pertama pada tahun 1994

Python mengusulkan, dan menawarkan, sintaks yang jelas dan tidak ambigu di mana kode dikelompokkan ke dalam blok melalui lekukan, yang membuatnya lebih mudah bagi pengembang untuk memahami kode tersebut.

Fintan Ryan, direktur penelitian tim strategi platform aplikasi di Gartner, mengatakan kejelasan kode telah memainkan peran besar dalam mendapatkan simpati pengembang, baik sekarang dan di tahun 1990-an, meskipun memberikan kepentingan sedemikian rupa untuk lekukan telah membagi komunitas. “Itu menyarankan sintaks yang sangat jelas. Dalam bahasa lain, dimungkinkan juga untuk menulis kode seperti ini, tetapi python memaksanya secara otomatis. Beberapa programmer menyukainya, sementara yang lain membencinya, ”katanya.

Fakta bahwa python menempatkan kode yang jelas dan mudah dibaca bukan kecelakaan - van Rossum mengatakan bahwa bahasa pemrograman diperlukan tidak hanya untuk memberi tahu komputer apa yang harus dilakukan, tetapi juga untuk mentransfer ide dari satu pengembang ke pengembang lainnya.

Selain keterbacaan, kata Ryan, python segera menawarkan fungsionalitas bawaan yang membedakannya dari bahasa lain. “Ada fungsi seperti kelas dan penanganan pengecualian. Python juga mendukung fitur seperti lambda, peta, dan filter, yang sangat berguna dalam banyak kasus, ”katanya.

Python mungkin tidak akan muncul jika YP populer pada 1980-an memiliki kualitas yang lebih baik. Salah satu motivasi Van Rossum untuk menciptakan python adalah ketidakcocokan bahasa scripting Perl dan sistem komputasi terdistribusi Amoeba, yang ia kerjakan di CWI. "Python beruntung Perl tidak bisa dipindahkan ke Amuba," katanya. "Jika Perl berhasil masuk ke Amoeba, aku tidak akan pernah berpikir untuk membuat bahasaku sendiri."

Meskipun python menciptakan basis penganut sejati setelah rilis, pada 1990-an ia adalah orang luar di antara YaP. Van Rossum mengatakan bahwa Tcl / Tk dan Perl bersaing untuk tempat pertama, dan keduanya memiliki tujuan yang sama dengan python - kemudahan penggunaan dan fitur yang kaya.

"Pada tahun 90-an, Perl jelas menempati posisi pertama dalam tiga pertama - itu seperti gorila 400 kg - kemudian pergi Tcl / Tk, dan python mengambil tempat ketiga yang sederhana," katanya.

Hari ini, python tumbuh lebih cepat daripada semua PL lain, menurut pengembang aktif - ini mengikuti dari survei tahunan pengembang Stack Overflow, salah satu ulasan PLs yang paling komprehensif - dan Perl telah menyusut ke keadaan sedemikian rupa sehingga tidak lagi disebutkan dalam laporan terakhir.

Pertumbuhan eksplosif ini ditunjukkan pada grafik di bawah ini, di mana dicatat bagaimana jumlah pandangan pertanyaan yang terkait dengan python di situs web Stack Overflow tumbuh lebih cepat daripada jumlah pandangan pertanyaan dari bahasa lain.



Jadi bagaimana python mengalahkan saingannya yang lama, dan bagaimana menjelaskan nasib yang berbeda dari dua YP? Van Rossum percaya bahwa secara khusus ini disebabkan oleh betapa mudahnya mempertahankan basis kode ketika melampaui kerangka tertentu. "Orang-orang berpikir Perl sempurna untuk menulis skrip 10-baris," katanya. "Tetapi ketika Anda memiliki 500 baris kode utama dan beberapa ribu baris di perpustakaan, diperlukan disiplin besar agar kode tersebut dapat didukung di masa mendatang." Dengan python, bahkan jika Anda tidak memiliki disiplin seperti itu, kodenya akan cukup mudah untuk dibaca dan dipelihara. "

Properti python ini, kombinasi dari bahasa sederhana untuk pemula, yang pada saat yang sama cukup andal untuk menulis aplikasi besar di atasnya, van Rossum mengaitkan kesuksesan awal pada 1990-an.

"Ada beberapa pengembang di Internet - sebagian besar kisah ini berkaitan dengan tahap awal pengembangan Internet - yang perlu menulis lebih banyak dan lebih banyak aplikasi besar, dan yang suka bahwa Anda dapat menghabiskan lebih banyak upaya dalam python daripada menggunakan C, C ++ atau Java. "

Dengan semakin populernya python pada 1990-an, van Rossum, masih bekerja di CWI, menemukan bahwa gagasannya semakin menghubungkannya dengan orang-orang dari seluruh dunia. “Saya melakukan sesuatu, dan itu menghubungkan saya dengan orang-orang dari seluruh dunia - orang-orang dari Australia, dari Amerika Serikat, dari negara-negara Eropa lainnya. Saya sangat menyukainya, ”katanya.

Python dan web


Pada pertengahan 1990-an, mereka mulai menggunakan python dengan cara baru, dari skrip untuk merekam dan memutar audio, hingga serangan pertama bahasa pada pengembangan web, yang pada akhirnya akan menjadi benteng utama python.

"Salah satu area utama penggunaan bahasa adalah pengembangan web, yang juga sangat menarik bagi saya secara pribadi," kata Van Rossum, dan menambahkan bahwa mereka mulai menggunakan python untuk membuat skrip backend pada server web bersama dengan Perl dan skrip baris perintah. "Anda dapat membuat halaman web yang dinamis, dan ini telah menjadi salah satu penggunaan python favorit saya."

Gartner ryan mengatakan popularitas python dengan tahun 1990-an telah menjadikannya pilihan favorit untuk dengan cepat membuat skrip yang kuat. "Fakta bahwa itu adalah bahasa scripting dengan fungsionalitas luas mengurangi hambatan masuk bagi banyak pengguna," katanya.

Selain itu, kata Ryan, YP cukup fleksibel dan mudah dipelajari sehingga disukai oleh pengguna yang sangat berbeda dengan latar belakang teknis yang berbeda. “Sysadmin dan orang lain mulai menggunakan bahasa ini untuk mengotomatisasi sistem dan pemrograman, pengembang karena hal-hal seperti pemrograman fungsional dan kelas dengan warisan; Perl, misalnya, memiliki fitur yang jauh lebih sedikit, katanya. "Setelah orang-orang berkenalan dengan bahasa tersebut, dan kurva belajarnya cukup lembut, mereka dengan cepat mulai mencapai tingkat produktivitas yang tinggi."

Pada tahun 1994, python telah menarik perhatian Michael McLay, salah satu eksekutif di US Bureau of Standards (NBS), yang kini telah berubah menjadi Institut Negara Standar dan Teknologi (NIST). Mengantisipasi cinta para peneliti dan ilmuwan untuk python, MacLay tertarik pada apakah para ilmuwan NBS dapat menggunakan python, yang, menurut van Rossum, "mengumpulkan sejumlah besar data, tetapi tidak memiliki programmer yang baik."

Untuk membantu menjual ide menggunakan python kepada anggota biro lain, Maclay mengundang Van Rossum, yang masih bekerja di CWI di Belanda, untuk bekerja untuk NIST sebagai peneliti tamu selama beberapa bulan. Ini adalah katalisator bagi evolusi python di masa depan dan secara serius mengubah kehidupan van Rossum.

Pada saat itulah pertemuan kerja pertama pengguna python diadakan, yang berlangsung di kantor NBS, di mana van Rossum, Barry Warso dan penggemar python pertama bertemu untuk membahas bagaimana mereka menggunakan python dan harapan apa yang mereka miliki untuk pengembangan di masa depan.


Van Rossum pada pertemuan kerja pertama pengguna python, bersama dengan Uorso dan Roger Masset, saat bekerja dengan Uorso di CNRI.

Di kantor NBS, van Rossum bertemu dengan Bob Kahn, yang dikenal karena perannya dalam mengembangkan salah satu teknologi Internet utama, protokol TCP / IP.

(CNRI), , .

, , , , CWI.

«CWI , , , - », — .

“Saya tidak terlalu senang dengan prospek disertasi doktoral pada usia 35. Sebelum itu, juga berkat python, saya memiliki beberapa kemungkinan lain ketika, setelah beberapa panggilan telepon dan beberapa waktu untuk refleksi, saya memutuskan untuk menyapu mereka. Tetapi di sini saya menyukai orang-orang, saya menyukai proposal mereka, proyek - dan saya mengambil keuntungan dari proposal tersebut. "

Di CNRI-lah van Rossum mengumpulkan banyak struktur yang diperlukan untuk mengelola python YP menggunakan tim dengan penggemar bahasa yang sama. Setelah menetap di CNRI pada April 1995, van Rossum memimpin tim kecil pengembang yang bekerja pada perangkat lunak Knowbot Program, agen mobile yang dirancang untuk berjalan pada sistem komputer terdistribusi seperti Internet.

, , , , – -.

« 4-10 , CNRI, », — .

CNRI, python.org, CVS- , Python Special Interest Groups – , .

1991 , . , Python Software Foundation (PSF), 2001. , 1994 , , – PyCon PSF, .

XXI , – 1994 , , , « ».

, – " " (BDFL), .

« , , , », — .

Gartner , , , Perl Node.js, , . « , », — .

Ini adalah sifat terbuka dari pengembangan python, menggunakan diskusi publik dari komunitas dan pengembang kunci, bahwa Van Rossum mempertimbangkan faktor penentu dalam keberhasilan python.

Evolusi ular sanca


, 2008 Python 3.0, . , BDFL, , , Python Enhancement Proposal PEP572 .

, , – , .

Van Rossum mengatakan bahwa dia terbiasa berdebat tentang inovasi, tetapi dalam kasus ini, ketidaktaatan beberapa fitnah dan sifat penghinaan pribadi memaksanya untuk mengundurkan diri.

“Saya kecewa dengan fakta bahwa orang-orang yang tidak setuju dengan proposal karena alasan teknis meninggalkan jejaring sosial dan mulai mengomel bahwa proses pengambilan keputusan rusak, atau bahwa saya membuat kesalahan serius. Rasanya seperti mereka menyerang saya dari belakang, ”katanya.

“Di masa lalu, selalu jelas bahwa jika suatu bahasa perlu diubah atau untuk meningkatkan beberapa fitur, maka sekelompok pengembang kunci akan datang bersama-sama dan membahas kelebihan dan kekurangan dari inovasi. Dan kemudian konsensus eksplisit dikembangkan, atau semuanya tidak begitu jelas, dan kemudian saya mempertimbangkan proposal ini dan membuat keputusan. Dan dengan PEP572, meskipun proposal itu kontroversial, saya memutuskan bahwa saya ingin menyetujuinya, dan orang-orang tidak setuju untuk setuju bahwa kami tidak setuju. Itu bukan kerusuhan, tetapi bagi saya sepertinya saya tidak memiliki kepercayaan dari cukup banyak pengembang kunci untuk terus bekerja. "

Dia percaya bahwa perubahan dalam proses penyelesaian sengketa telah terjadi, khususnya, karena berapa banyak orang yang menggunakan python saat ini.

“Mungkin ini semua tentang seberapa besar komunitas python menjadi. Lebih sulit untuk mencapai semacam kesepakatan, karena akan selalu ada pendukung dari sudut pandang yang berlawanan, tidak peduli apa yang Anda putuskan. "

Awal tahun ini, pengembang python utama - mendukung dan memperbarui juru bahasa CPython - memilih dewan pimpinan yang harus merencanakan masa depan bahasa tersebut. Ini termasuk Van Rossum, Warso, dan rekan mereka Brett Cannon, Carol Willing dan Nick Coglan. Worso mengatakan perubahan ini diperlukan untuk mengelola bahasa dengan basis pengguna yang berkembang pesat.

"Saya pikir Guido benar-benar tampaknya memegang seluruh dunia di atas bahunya sendiri," katanya. - Ini bergulir 25 tahun yang lalu ketika komunitas python jauh lebih kecil dan bahasanya lebih kecil, tapi hari ini terlalu banyak untuk satu orang, Anda tahu? Saya pikir itu baik untuk kesehatan dan kesempatan untuk berpartisipasi dalam aksi masyarakat, itu baik untuk mendistribusikan beban ini ke lima, "kata Warso.

Pemilihan baru untuk dewan pemerintahan akan berlangsung setelah setiap rilis versi baru python, yang, menurut Warso, akan membuka jalan bagi generasi pemimpin berikutnya. "Jika python itu hidup setelah 25 tahun, maka itu bukan Guido dan aku yang akan mengelolanya, mengerti?" Katanya.

. , , , . « , – , — . – , ».


,


Meskipun python terus menarik sejumlah besar pengguna baru, beberapa anggota komunitas melihat kesulitan di depan, dan percaya bahwa bahasa tersebut perlu berevolusi agar tetap relevan.

Pada pertemuan pengguna python tahun ini, salah satu pendiri BeeWare, Russell Kit-Maggie memperingatkan semua orang bahwa python akan menghadapi "risiko eksistensial" jika tidak meningkatkan dukungan untuk platform web mobile dan baru. "Ponsel dan tablet telah menembus pasar sedemikian rupa sehingga desktop dan laptop tidak pernah memimpikannya, dan masyarakat tidak tahu bagaimana menggunakan python pada perangkat ini," katanya, menunjukkan bahwa putranya menggunakan iPad di sekolah. "Apa yang akan terjadi pada python ketika laptop berubah menjadi perangkat khusus?"

Kit-Maggi, yang proyek BeeWare bertujuan untuk menjalankan program sekali dalam python di mana saja, meluncurkan daftar masalah yang dimiliki python sekarang di bidang platform pendukung selain PC x86 standar.

Dia menunjukkan kelemahan berikut: kebutuhan untuk meningkatkan dukungan kode yang dikompilasi untuk platform baru yang tidak kompatibel dengan x86; Python test suite mogok di platform seluler dan web; ukuran instalasi aplikasi python membengkak dan tidak dapat direduksi menjadi sebagian kecil dari dependensi; kebutuhan untuk menghabiskan upaya menyelesaikan perpustakaan asyncio untuk bekerja dengan GUI untuk Android, Windows dan web; jumlah modul di pustaka standar yang tidak kompatibel dengan penerjemah python selain CPython.

Worso mengatakan Kit-Maggie mengatakan hal yang benar, dan mempertimbangkan isu-isu penting terkait dengan memperbarui python untuk platform baru - ponsel, tablet, teknologi web baru seperti WebAssembly.

"Sejauh ini, python tidak dapat menawarkan sesuatu yang baik," kata Warso tentang mimpi bisa mengunduh aplikasi untuk iPhone atau Android, dan "bahkan tidak tahu bahwa itu ditulis dalam python."

Dengan semakin banyaknya core prosesor dalam chip modern (hingga 48 core pada prosesor server terbaru dari Intel), Uorso juga menantikan kapan python lebih mampu mendistribusikan tugas di beberapa core.

Dia sangat tertarik dengan potensi karya Eric Snow pada sub-penerjemah dan bagaimana mereka dapat memperluas kemampuan python dalam operasi proses secara simultan. “Saya benar-benar ingin melihat lebih banyak pekerjaan untuk mengambil keuntungan penuh dari sistem multicore,” katanya.

Snow sedang mengerjakan proyek jangka panjang yang membuatnya mudah bagi python untuk secara efisien membagi tugas antara beberapa inti prosesor. Pada saat yang sama, ia fokus menggunakan versi revisi dari fitur python yang menarik seperti subinterpreters dan mengubah cara masing-masing subinterpreter berinteraksi dengan global interpreter blocker (GIL).

"Untuk Python 3.8, itu tidak akan punya waktu untuk bersiap-siap, mungkin itu dalam versi 3.9," kata Worso. "Saya pikir kita akan melihat ini dalam dua atau dua setengah tahun ke depan." Saya optimis. Saya sangat senang Eric terus mengerjakan ini karena saya menganggapnya penting. "

Dia mengatakan bahwa bahkan dari proyek yang gagal mendukung multithreaded python, misalnya, The Gilectomy, Anda dapat mempelajari pelajaran menarik terkait bagaimana python dapat menjadi lebih baik dengan mendistribusikan pekerjaan di antara kernel.

Komunitas Python juga mengambil langkah-langkah untuk memutakhirkan perpustakaan bahasa standar dengan kode yang disematkan, dan baru-baru ini menerbitkan proposal untuk menghapus modul-modul usang dari dalamnya; ini merupakan respons terhadap kritik terkini tentang keadaan pustaka standar python. Biasanya dianggap sebagai salah satu kekuatan bahasa, dapat digunakan untuk menyelesaikan berbagai tugas biasa, oleh karena itu sering dikatakan bahwa python memiliki "baterai dalam set". Namun, pada pertemuan pengembang python tahun ini, pertanyaannya adalah apakah lebih baik membiarkan orang memilih perpustakaan dari repositori PyPI, alih-alih memberikan semua fungsi ini bersama dengan bahasa sebagai perpustakaan standar.

Ada juga pertanyaan tentang apakah kelompok orang yang mengelola pengembangan bahasa - pengembang utama dan dewan pemerintahan - dapat lebih mencerminkan basis pengguna python yang beragam pada tahun 2019. “Saya ingin melihat tampilan terbaik untuk berbagai metrik, tidak hanya dalam hal keseimbangan gender, tetapi juga berdasarkan ras, dan segala sesuatu lainnya,” kata Vijaya.

“Saya berbicara di PyCon dengan gadis-gadis dari band PyLadies , dari India dan Afrika. Mereka berkata: "Ketika orang mendengar tentang python atau PyLadies, mereka membayangkan orang-orang dari Amerika Utara atau Kanada, tetapi pada kenyataannya di bagian lain dunia ada juga basis pengguna yang luas. Mengapa mereka begitu jarang terlihat? ' Dan itu masuk akal bagi saya. Karena itu, saya ingin melihat ini, dan saya pikir kita semua harus ambil bagian dalam ini. ”

Akibatnya, terlepas dari ide lucu dengan "diktator yang dermawan" yang bertanggung jawab atas semua masalah, dalam beberapa tahun terakhir semua gagasan yang telah mengubah python telah datang dari komunitas, kata Worso, terima kasih kepada orang-orang yang menggunakan python secara maksimal dan membuka pintu bagi pengguna baru. “Pada kenyataannya, semuanya terjadi dari bawah ke atas, dari sisi masyarakat, dan bukan sebaliknya,” katanya.

Sebagai contoh bagaimana proyek komunitas sederhana dapat secara serius mempengaruhi python, Type Hints adalah fitur Python 3.5 yang terinspirasi oleh proyek mypy yang diluncurkan oleh mahasiswa pascasarjana pada tahun 2012. "Petunjuk" ini memungkinkan pemeriksaan jenis opsional, yang memungkinkan pengembang menangkap kesalahan dari jenis khusus yang mungkin lolos dari kesalahan tersebut.


Tahun ini, python membantu menyatukan gambar pertama dari lubang hitam dari potongan

Tingkat keamanan tambahan ini bukan hanya peluang yang menarik jika Anda memiliki proyek di mana banyak orang bekerja pada basis kode yang besar. Tingkat pemahaman tambahan tentang kode apa yang harus dan tidak seharusnya dilakukan bisa menjadi sangat penting.

"Fakta bahwa ini memungkinkan python untuk mengukur kebutuhan perusahaan yang lebih besar - seperti Instagram, yang pada dasarnya berjalan di Python 3 - benar-benar tak ternilai bagi saya," kata Worso, mengutip asyncio sebagai contoh lain dari gagasan tersebut. sebuah komunitas yang secara serius dapat memengaruhi kemampuan bahasa.

Dengan dewan pengurus dan basis pengguna terbesar sepanjang masa, Van Rossum optimis bahwa "evolusi bahasa melalui komunitas" akan terus mencapai "keberhasilan luar biasa."

"Kami memiliki komunitas pengembang kunci yang sangat padat yang memiliki sistem pemerintahan baru, dan saya pikir kami lebih siap untuk permintaan yang datang dengan python dan evolusinya," katanya, memuji pemahaman yang mendalam tentang aspek spesifik dari bahasa yang ada. di komunitas.

Jika seseorang memiliki keraguan tentang kemampuan komunitas untuk menemukan cara-cara baru yang tidak terduga untuk menggunakan bahasa, yang harus Anda lakukan adalah mengeksplorasi peran python dalam mendapatkan gambar pertama dari lubang hitam, kata Worso.

“Itu hanya membuatku terkejut. Ada beberapa orang di komunitas python yang saya anggap sebagai ilmuwan gila kita. Mereka selalu berusaha untuk mendorong batas bahasa. "

Source: https://habr.com/ru/post/id466807/


All Articles