Python 101: Dictionary

Dictionary adalah tipe data yang nggak berurutan. Isinya koleksi data dalam bentuk pasangan key & value, sama dengan Object di JavaScript. Bedanya kalo bikin key di Python harus pake string.

Jadi kode begini, yg valid di JS, di Python ga bisa dipake:

person = { name: 'boss' }

# error
NameError: name 'name' is not defined

Cara aksesnya juga sama dengan Object di JS, pake sintaks [key]. Tapi di Python nggak bisa pake dot-notation.

person = { 'name': 'boss', 'age': 40 }

print(person['name'])
# output
boss


print(person.age)
# error
AttributeError: 'dict' object has no attribute 'age'

Pake get() untuk Mengakses Value

Kalo pake bracket-notation, kita bakal dapet error kalo key-nya ga ada.

person = { 'name': 'boss', 'age': 40 }
print(person['gender'])

#error
KeyError: 'gender'

Untuk menghindari error begini, kita pake get().

Continue reading →

Rust 101: Hello Rust

Rust adalah bahasa pemrograman yang diciptakan oleh Graydon Hoare di Mozilla Research. Bahasa ini secara sintaks mirip C++ tapi dirancang dengan manajemen memori yang lebih baik tanpa mengorbankan kecepatan. Rust bersifat generik & bisa dipake untuk membuat software mulai dari OS sampe browser, dari embedded-systems sampe Cryptocurrency. Beberapa proyek-proyek high-profile yang pake Rust antara lain NPM, Firefox, dan Dropbox.

Dalam artikel kali ini, saya bahas sedikit tentang Rust. Mulai dari instalasinya.

Instalasi

Kita bisa instal Rust pake installer resmi dari websitenya. Kalo pake Mac, bisa juga pake Homebrew. Yang pake Windows, bisa coba instal pake Chocolatey.

$ brew install rustup
$ rustup-init

... bla bla bla

1) Proceed with installation (default)
2) Customize installation
3) Cancel installation
> 1

Untuk mastiin instalasi udah bener, kita coba bikin Hello world.

Continue reading →

Python 101: List & Tuple

List & tuple adalah tipe data yang mirip Array di JavaScript. List seperti Array biasa. Kita bisa nambah elemen & ngapus elemen. Tuple adalah list yang konstan, kalo udah dibuat nggak bisa diubah-ubah lagi. List & tuple bisa dikombinasi. List bisa berisi tuple & sebaliknya.

Untuk bikin list kita pake notasi [ ]. Untuk tuple kita pake ( ).

mylist = [ 1, 2, 3 ]
mytuple = ( 4, 5, 6 )

Elemen-elemen dalam list & tuple bisa diakses lewat nomer indeksnya, sama kayak Array. Tapi indeksnya ga harus positif, bisa juga negatif. Kalo negatif berarti itu indeks dihitung dari belakang, -1 berarti elemen paling belakang.

mylist[-1] #3
mytuple[-2] #5

Operasi Dasar

Karena list adalah sebuah deretan nilai, dia punya beberapa fungsi yang sama dengan String.

Continue reading →

Seting Minimal Webpack & React

Bikin project React paling gampang memang pake create-react-app. Tapi itu lebih cocok untuk belajar ( dokumentasinya juga bilang begitu ). Untuk project beneran, kita bisa pake tool lain yang lebih fleksibel & bisa dikustom atau bikin sendiri dari nol pake bundler semacem Webpack, Parcel atau Rollup.

Untuk bikin project minimalis pake Webpack cukup gampang. Pertama ya bikin direktori, terus inisialisasi NPM.

$ mkdir myproject
$ npm init -y

Instal paket NPM

Instal paket-paket Babel.

$ npm i -D @babel/core @babel/plugin-transform-runtime @babel/preset-env @babel/preset-react @babel/plugin-proposal-class-properties
$ npm i @babel/runtime

Terus instal webpack.

$ npm i -D webpack webpack-cli webpack-dev-server babel-loader

Lanjut instal paket untuk compile CSS & SCSS ( bisa diganti LESS atau CSS-preprocessor yg lain kalo mau).

Continue reading →

Python 101: Input Output

Jadi hari ini saya mulai belajar Python. Rencana ke depannya, semua skrip yg saya tulis selama belajar saya dokumentasiin di sini. Selain untuk catatan pribadi, siapa tau berguna buat orang lain yg mau belajar juga. Saya skip skrip Hello World karena itu contoh yg ga berguna. Mending langsung aja belajar tentang input & output. Gimana cara nerima input dari user & nampilin output.

Untuk ambil input dari user, kita pake fungsi input(<prompt>). <prompt> adalah teks yg mau kita tampilin di terminal. Untuk nampilin output atau teks apapun di terminal yang bukan prompt, kita pake fungsi print(<string>.format()). <string> berisi template-string ( programmer JS pasti ngerti lah apa itu ), yang isinya disubstitusi lewat fungsi format().

Jadi kalo kita punya template-string begini:

'{0} itu {1}'.format('Pemrograman', 'asik')

Output di terminal jadi Pemrograman itu asik.

Skrip pertama, tampilin tabel perkalian.

Continue reading →