IDE (Integrated Development Environment) merupakan suatu perangkat lunak yang sudah dibundel dengan perkakas yang dibutuhkan oleh seorang programmer. Umumnya terdapat linter untuk pemeriksa syntax koding, server bahasa pemrograman, autokomplit, dokumentasi, debugging dan perkakas pendukung lainnya.
Banyak jenis IDE yang bisa digunakan baik untuk awam maupun profesional, salah satunya terdapat yang dirancang untuk ilmuan, insinyur data dan data analis.
Spyder IDE
Spyder merupakan perangkat lunak IDE open source cross-platform yang tersedia untuk Windows, Linux dan MacOS. Spyder dibuat secara native menggunakan bahasa Python dan Qt5. Juga memiliki fitur yang melimpah untuk kebutuhan ilmuan data, seperti eksplorasi data, analisis dan visualisasi. Sesuai dengan akronimnya SPYDER (Scientific PYthon Development EnviRonment) yang disarankan sebagai editor komputasi ilmiah.
Dalam sudut pandang sebagai pengguna free software, Spyder cocok digunakan untuk data science. Karena native dengan python dan bahasa pemrograman python tersebut juga sangat kompatibel dengan kebutuhan dibidang data science. Terlebih lagi Spyder merupakan proyek terbuka sehingga siapapun bisa berkontribusi terhadap proyek Spyder.
Kedua, builtin plugin. Sekali memasang Spyder tidak perlu lagi memasang plugin-plugin yang dibutuhkan untuk keperluan data science. Kecuali ada pustaka python yang diunduh secara terpisah.
Pemasangan
Spyder IDE tidak seperti aplikasi kebanyakan yang tersedia biner secara langsung. Melainkan dipasang sebagai paket python dengan python-pip
.
Terminal
pip install spyder
Jika menggunakan instalasi dengan Anaconda dapat dipasang dengan navigator atau dengan conda
. Tetapi kekurangan dari Anaconda sendiri ialah ukuran berkas binarinya yang cukup besar dan performanya yang lumayan berat di hardware spesifikasi rendah (keluaran lama).
Terminal
conda install spyder
Untuk pengguna Mac dan Windows disarankan mengunduh binari dari SourgeForge yang ukurannya lebih ringan dan tidak bloat dengan paket Anaconda.
Jika menggunakan distribusi linux biasanya sudah tersedia di repositori, tetapi tidak semua distribusi tersedia paket spyder.
Ubuntu/Debian
Terminal
sudo apt install spyder
Fedora
Terminal
sudo dnf install spyder
Archlinux
Terminal
sudo pacman -Sy spyder
Sedangkan di NixOS penulis menambahkan Spyder dengan beberapa pustaka python pendukung data analisis dan visualisasi agar saling terintegrasi.
/etc/nixos/configuration.nix
(
python3.withPackages ps:
with ps; [
spyder
jupyterlab
matplotlib
numpy
plotly
scikit-learn
scipy
seaborn
sympy
virtualenv]
)
Fitur Spyder
Gratis
Sebagai proyek sumber terbuka yang berada dibawah lisensi MIT, Spyder IDE dapat didapatkan dan digunakan secara cuma-cuma alias tidak diharuskan untuk membayar/berlangganan. Tetapi jika Anda tidak terbiasa untuk tidak membayar, sangat bisa untuk mendonasikannya melalui OpenCollective.
Built-in plugin
Di bagian editor sudah terdapat kode analisis, linter dan snippet bahasa pemrograman python. Sehingga memudahkan pengguna untuk membuat program. Meskipun plugin dasar, namun cukup membantu.
Interaktif konsol dengan ipython
Spyder menggunakan ipython
sebagai interpreter Python bawaan yang lebih modern. Terdapat autokomplit ketika mengetik syntax yang terdapat bahasa python. Jika mengaktifkan inline plotting, ipython dapat menampilkan plot visual secara langsung di dalam konsol.
Tersedia eksplorasi variabel
Menginspeksi variabel, fungsi dan objek dengan mudah. Bahkan dapat menyunting tipe data yang termasuk tipe numeric/string/boolean, tuple/list, dataframe, dan lebih banyak lagi.
Visualisasi plot
Render hasil plot dengan pustaka matplotlib/seaborn berjalan dengan normal di dalam panel plot
.
Terintegrasi dokumentasi python
Dokumentasi tersedia di dalam panel Spyder. Hal ini memudahkan untuk pengguna untuk membaca lebih detail tentang fungsi/objek yang digunakan.
Debugging
Fitur debugging harus ada untuk program IDE. Tujuannya untuk menganalisa kode program jika tidak sesuai yang dikehendaki, misalnya terdapat kode error dan fungsi/variabel yang tidak terpakai. Mencari celah kode per-baris dengan ipdb
dari ipython
console. Di Spyder juga tersedia list breakpoint sehingga tahu setiap baris akan mengeksekusi dan menghasilkan keluaran seperti apa. Panduan selengkapnya ada di halaman dokumentasi debugging.
Kesimpulan
Secara pribadi Spyder IDE memiliki tampilan antarmuka yang sederhana, cocok digunakan untuk pemula yang baru mempelajari bahasa python dan data analisis. Spyder juga memiliki konsep straight on point, fokus ke bahasa python saja. Ya bisa jadi suatu kelebihan atau suatu kekurangan yang kurang mendukung bahasa lain seperti web framework JavaScript & HTML. Mungkin developer sengaja membuat untuk tidak mendukung bahasa selain python.
Kekurangannya mungkin Spyder masih belum ada fitur untuk kolaborasi secara realtime, meskipun sudah ada integrasi dengan git. Tentu fitur ini akan membantu perkerjaan dengan tim.
Tidak pakai VScode? sebenarnya penulis masih pakai VSCodium (turunan vscode tanpa telemetri microsoft), tetapi jarang digunakan. Terlebih lagi perlu mengkonfigurasi untuk kebutuhan pemrograman python. Kalau Pycharm memang cukup lengkap dari segi fitur, tetapi performanya saja yang kurang ideal dalam mesin laptop yang penulis gunakan. Akhirnya menggunakan memilih Spyder IDE yang fiturnya cukup lengkap, tidak terlalu berat, native dan tentunya open source.
Sejauh ini Spyder sudah menjadi IDE untuk koding sehari-hari karena memang fokusnya di python (dan R dengan RStudio). Belum ada kendala yang signifikan kecuali di performanya yang kurang gesit (hardware issue).
Reuse
Citation
@online{qurrotul_ainur2023,
author = {Qurrotul Ainur, Hervy},
title = {Kelebihan {Spyder} {IDE} {Untuk} {Pemrograman} {Python}},
date = {2023-04-13},
url = {https://hervyqa.dev/blog/kelebihan-spyder-ide-untuk-pemrograman-python/},
langid = {en}
}