Bahasa Pemrograman yang harus diketahui Data Scientist

Menjadi seorang data scientist tidak diharuskan memiliki latar belakang IT. Dari jaringan yang penulis ikuti di LinkedIn banyak yang switch career dari berbagai background ke data scientist. Dan itu pun wajar, mengingat secara global perusahaan berbondong-bondong menuju industri digital. Di awal januari 2023, penulis yang juga konsen dan switch career dari desainer.

Baik, langsung ke pembahasan. Berikut ini adalah bahasa pemrograman yang harus diketahui untuk data scientist. Apa saja?

Python

Python yang diciptakan oleh Guido van Rossum merupakan bahasa high-level data struktur programming yang mana sederhana, jelas dan logis, tetapi efektif untuk pemrograman berbasis orientasi (OOP).

Python yang disarankan untuk dipasang minimal versi python3.10 agar mendapat dukungan sepenuhnya. Python yang merupakan bahasa pemrograman multi-paradigma juga menawarkan beberapa dukungan pemrograman fungsional yang mirip lisp, seperti filter, map, reduce, set dan ekspresi generator.

Pustaka yang ditawarkan python juga banyak sekali. Misalnya pandas, numpy, scipy, scikit-learn, matplotlib, seaborn dan masih banyak lagi untuk kebutuhan data science. Anda dapat mencoba python sesuai tautan diatas dan latih kemampuan pemrograman setiap hari.

python
Python 3.10.9 (main, Dec  6 2022, 18:44:57) [GCC 11.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print("Hello World")
Hello World

SQL

SQL (Structured Query Language) [baca: sequel] merupakan bahasa pemrograman untuk mengakses data dalam basis data relasional (RDBMS). Hampir semua server basis data menggunakan SQL untuk manajemen data.

Data scientist tentu akan bergulat dengan database, seperti pembuatan database, mengolah, dan menerjemahkan data agar lebih dipahami. Sehingga diperlukan untuk menentukan keputusan stakeholder.

Dalam penggunaan SQL, penulis menyarankan menggunakan MariaDB (fork dari MySQL ) sebagai manajemen data karena lebih leluasa untuk dikembagkan secara terbuka dan tidak terikat oleh produk yang berlisensi proprietary (Oracle). Serta memiliki storage engine yang lebih banyak dari MySQL.

sudo mysql -u root -p
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 10.6.11-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| hervymart          |
| hervypraktek       |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
6 rows in set (0,097 sec)

MariaDB [(none)]>

R

Bahasa pemrograman R lebih dikenal sebagai bahasa pemrograman untuk statistika dan visualisasi grafis. Dibuat oleh Ross Ihaka dan Robert Gentleman di Universitas Auckland, dan sekarang dikembangkan oleh R Development Core Team.

Bahasa R dibawah lisensi GNU GPL telah menjadi standar de facto di antara statistikawan untuk pengembangan perangkat lunak statistika, serta digunakan secara luas untuk pengembangan perangkat lunak statistika dan analisis data.

Penggunaan bahasa R dapat dilakukan dengan Jupyter Notebook atau RStudio untuk memudahkan data scientist untuk mengolah data.

R
R version 4.2.1 (2022-06-23) -- "Funny-Looking Kid"
Copyright (C) 2022 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

  Natural language support but running in an English locale

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> print("HelloWorld")
[1] "HelloWorld"

Julia

Bahasa pemrograman Julia adalah salah satu bahasa yang digunakan untuk menganalisis numerik dan visualisasi data secara efisien. Sama halnya dengan Python, Julia termasuk bahasa high-level yang syntaxnya tergolong mudah untuk pemula.

Bisa dibilang Julia adalah kompetitornya Python, sebab performanya jauh lebih cepat dari python. Hal ini dikarenakan Julia dikompil dengan framework LLVM untuk kompilasi JIT, yang sebanding dengan kecepatan bahasa C. Selain itu, julia dapat diintegrasikan dengan VIM, Jupyter, dan VSCode . Julia juga terdapat julia packages untuk pustaka yang dibutuhkan oleh data scientist dan menariknya julia terdapat Flux pustaka khusus untuk Machine Learning.

julia
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.8.5 (2023-01-08)
 _/ |\__'_|_|_|\__'_|  |
|__/                   |

julia> print("Hello World")
Hello World
julia>

Scala

Scala (Scalable language) dimulai pada 2001 oleh Martin Odersky merupakan bahasa pemrograman untuk kebutuhan general, high-level, dan multi paradigma.

Scala, seperti Java juga salah satu bahasa pemrograman yang berorientasi pada objek yang aman juga mendukung pemrograman fungsional. Scala berjalan pada platform Java (Java virtual machine) dan kompatibel dengan yang ada program Java.

File:HelloWorld.scala
object HelloWorld extends App {
  println("Hello, World!")
}

Kompilasi:

scalac HelloWorld.scala

Menjalankan binary:

scala HelloWorld
Hello, World!

Kesimpulan

Apapun bahasa yang digunakan, sesuaikan dengan kebutuhan dan kriteria data yang ada agar lebih efektif. Jika masih pemula, sudah penulis urutkan pemrograman sesuai sub-judul dari yang mudah dan umum sehingga mudah untuk dipelajari. Fokus dan kuasai satu-persatu.

Apa bahasa yang terbaik?

Semua bahasa pemrograman adalah terbaik asalkan sesuai tempatnya, karena setiap bahasa memiliki kelebihan dan kekurangan masing-masing. Bahkan secara pribadi menganjurkan untuk tidak fokus kebahasanya, melainkan memahami konsep dasar algoritma pemrograman terlebih dahulu yang lebih penting.

Barakallahu fiikum. Jika Anda mempunyai pertanyaan, saran, dan kritikan silahkan komentar di akun telegram atau instagram @hervyqa . Sekian, semoga tulisan ini bermanfaat untuk pembaca semuanya. Aamiin.

Artikel lainnya

Aplikasi Rust yang Digunakan untuk Kebutuhan Alur Kerja di Terminal

Dalam tulisan ini menjelaskan secara singkat beberapa aplikasi CLI (command line interface) yang dibangun dengan bahasa pemrograman rust untuk memnudahkan alur-kerja dengan terminal.

Memilih Kanal Stabil atau Tak Stabil di NixOS?

NixOS memiliki beberapa kanal resmi dengan dua kategori yaitu kanal stabil (stable) atau tak stabil (unstable), dan kanal besar (large) atau kecil (small).

Cara Memasang R dan RStudio Di NixOS

Bahasa pemrograman R lebih dikenal sebagai bahasa pemrograman untuk statistika dan visualisasi grafis. Dibuat oleh Ross Ihaka dan Robert Gentleman di Universitas Auckland, dan sekarang dikembangkan oleh R Development Core Team.