Menghemat Waktu Mempelajari Python


Beberapa hari ini saya sedang belajar pemrograman Python. Kenapa saya belajar Python? Alasannya sederhana aja: Penasaran.

Temen2 dosen di grup wa dengan ramai bicarain, saya jadi tertarik. Setelah baca artikel yang bilang bahwa kuliah algoritma pemrograman di MIT untuk mahasiswa tingkat awal pake Python, saya makin tertarik. Ditambah lagi baca artikel yang bilang bahwa pemrograman yang cocok untuk data analysis opsinya adalah R atau Python, saya sangat tertarik! 😀

Nah berhubung saya pengennya cepet, maka setelah survey sana sini, tanya sana sini, alhasil saya belajar Python nya pake tools PyCharm Edu yg bisa didownload di sini.

Serupa tapi tak sama, ada PyCharm dan ada PyCharm Edu. PyCharm sendiri adalah IDE untuk Python, lisensinya ada yang berbayar dan ada yang gratis (untuk mahasiswa dan dosen gratis, asal punya email di domain akademik). Nah klo si PyCharm Edu fiturnya memang tidak selengkap PyCharm, tetapi PyCharm Edu dilengkapi 1 project yang namanya “Introduction to Python”. Di dalam project ini ada 50 source code singkat yang dilengkapi dengan tutorial singkat. Jadi dalam 1 source code, ada tutorial singkatnya (kanan) dan ada source code yang harus dimodif sebagai bahan latihan (tengah).

Yang paling menarik adalah, dengan mengklik 1 tombol di kanan atas kita bisa mengetahui apakah modifikasi yang kita lakukan sudah benar atau belum dan kita juga bisa memilih source code sesuai topik yang ingin dipelajari sekaligus mengecek progress pembelajaran kita (kiri).Total ada 50 latihan berupa source code singkat yang bisa dipelajari/dimodifikasi untuk latihan, progress pembelajaran dianggap sudah 100% jika ke-50 source code latihan itu sudah berhasil kita modifikasi dengan benar sesuai permintaan PyCharm Edu. Coba lihat screenshotnya di bawah ini.

pycharm edu

Saya merasa belajar Python dengan menggunakan PyCharm Edu ini ada plus minusnya. Keuntungannya adalah tidak bertele-tele, ada contoh, ada studi kasusnya, bisa langsung dipraktekkan dan dilihat hasilnya, jadi untuk saya, tidak membosankan. Nah kekurangannya mungkin belajar Python menggunakan PyCharm Edu ini kurang cocok buat yang belum punya dasar pemahaman terhadap konsep algoritma atau yang belum paham dengan struktur-struktur dalam pemrograman seperti pencabangan, looping, procedure/function dan sebagainya.

Gimana? tertarik belajar Python? PyCharm Edu bisa jadi salah satu alternatif belajar Python yang menyenangkan. Selamat belajar 🙂

Iklan

Operasi File Sederhana dengan VB.NET


Ada kalanya kita perlu melakukan operasi file sederhana dalam program yang kita buat. Adapun yang saya maksud operasi file sederhana di sini adalah membuat file, memindahkan file, menyalin file, menghapus file dan memeriksa keberadaan file.

Jika kita menggunakan VB.Net, maka untuk melakukan operasi-operasi file sederhana tersebut cukup menggunakan beberapa method yang ada di class File, semuanya sangat mudah untuk digunakan dan sudah disediakan oleh VB.NET. Berikut ini adalah contoh penggunaan  method-method tersebut dan penjelasan singkatnya:

  1. Membuat file dengan method File.Create
    File.Create ("C:\Folder Saya\Tes.txt")

    Perintah di atas akan membuat sebuah file bernama “Tes.txt” di folder “Folder Saya” pada drive C.
    Jika file tersebut sudah ada maka file yang ada akan ditimpa dengan file baru, namun jika drive C atau folder “Folder Saya” tidak ada (tidak dapat diakses) maka akan tampil eror “The filename, directory name, or volume label syntax is incorrect.

  2. Memindahkan file dengan method File.Move
    File.Move ("C:\Folder Saya\Tes.txt","C:\Folder Baru\TesBaru.txt")

    Perintah di atas akan memindahkan file bernama “Tes.txt” di folder “Folder Saya” ke folder “Folder Baru” sekaligus mengubah nama file tersebut menjadi “TesBaru.txt”.
    Perhatikan bahwa file dipindahkan, artinya setelah operasi ini selesai, di folder “Folder Saya” tidak akan ada lagi file “Tes.txt”. Adapun perubahan nama file sifatnya opsional, jadi jika sekedar ingin memindahkan saja tanpa mengubah nama filenya juga bisa.
    Jika file “Tes.txt” di dalam folder “Folder Saya” tidak ditemukan maka akan tampil eror “Could not find file ‘C:\Folder Saya\tes.txt’.
    Jika salah satu folder tujuan dalam path tidak ditemukan (misalnya tidak ada folder yang bernama “Folder Baru”) maka akan tampil eror “Could not find a part of the path.
    Perhatikan pula bahwa jika di dalam folder “Folder Baru” sudah ada file bernama “Tes Baru.txt” maka file tersebut akan ditimpa dengan yang baru.

  3. Menyalin file dengan method File.Copy
    File.Copy ("C:\Folder Saya\Tes.txt","C:\Folder Baru\TesBaru.txt")

    Perintah di atas akan menyalin file bernama “Tes.txt” di folder “Folder Saya” menjadi sebuah file baru di folder “Folder Baru” sekaligus mengubah nama file tersebut menjadi “TesBaru.txt”.
    Perintah ini memiliki format yang sama dengan perintah untuk memindahkan file, pesan eror yang ditampilkan juga sama. Perbedaannya adalah setelah operasi ini selesai dilakukan maka di dalam folder “Folder Saya” masih ada file bernama “Tes.txt” karena file tersebut hanya disalin (di-copy), tidak dipindahkan.

  4. Menghapus file dengan method File.Delete
    File.Delete ("C:\Folder Saya\Tes.txt")

    Perintah ini akan menghapus file bernama “Tes.txt”, perhatikan bahwa folder “Folder Saya” tidak akan ikut terhapus, dan tenang saja, drive C anda juga tidak akan ter-format 😆
    Jika file “Tes.txt” atau folder “Folder Saya” tidak ditemukan maka akan tampil eror “Could not find a part of the path ‘C:\Folder Saya\Tes.txt‘”

  5. Memeriksa keberadaan file dengan method File.Exist
    If File.Exist ("C:\Folder Saya\Tes.txt") Then
    MsgBox ("File ditemukan")
    Else
    MsgBox ("File tidak ditemukan")
    End If

    Perintah tersebut akan memerikasa apakah ada file bernama “Tes.txt” pada folder “Folder Saya” di drive C. Jika ada maka program akan menampilkan pesan “File ditemukan” namun jika tidak ada maka program akan menampikan pesan “File tidak ditemukan”.

Demikian, selamat mencoba dan semoga bermanfaat 🙂

Membaca dan Menulis File Teks dengan VB.NET


Untuk membaca dan menulis file teks (*.txt) dengan VB.NET dapat menggunakan beberapa cara, salah satunya adalah dengan menggunakan kelas StreamReader dan  kelas StreamWriter yang terdapat pada System.IO package.

Berikut ini adalah contoh function untuk membaca seluruh isi file teks dengan menggunakan method ReadToEnd pada class StreamReader:

Public Function BacaSeluruhFile(ByVal FullPath As String)
 Dim fileReader As StreamReader
 Dim content As String = ""
 Try
   fileReader = New StreamReader(FullPath)
   content = fileReader.ReadToEnd()
   fileReader.Close()
 Catch x As Exception
   MsgBox(x.Message)
 End Try
 Return content
End Function

Sedangkan yang berikut ini adalah contoh function untuk membaca isi file teks pada baris tertentu dengan menggunakan method ReadLine pada class StreamReader:

Public Function BacaBarisKe(ByVal FullPath As String, _
ByVal baris As Integer)
 Dim fileReader As StreamReader
 Dim content As String = ""
 Dim i As Integer
 Try
   fileReader = New StreamReader(FullPath)
   For i = 1 To baris
     content = fileReader.ReadLine()
   Next
   fileReader.Close()
 Catch x As Exception
   MsgBox(x.Message)
 End Try
 Return content
End Function

Adapun untuk menulis String ke dalam sebuah file teks dapat mengunakan method Write pada class StreamWriter seperti pada procedure dalam contoh berikut ini:

Public Sub WriteContent(ByVal FullPath As String, _
ByVal content As String)
 Dim fileWriter As StreamWriter
 Try
   fileWriter = New StreamWriter(FullPath)
   fileWriter.Write(content)
   fileWriter.Close()
 Catch x As Exception
   MsgBox(x.Message)
 End Try
End Sub

Yang penting, jangan lupa mengimport System.IO package dengan menuliskan:

Imports System.IO

pada bagian global declaration. Semoga bermanfaat 🙂

sumber gambar: http://the-arbazenas.blogspot.com

Express Yourself


Untuk tugas2 kuliah, proyek akhir, tugas akhir, thesis dan keperluan mengajar, biasanya saya menggunakan Oracle sebagai DBMS dan Visual Basic (VB) atau VB.NET sebagai bahasa pemrograman. Saya sudah berkenalan dengan 2 software ini sejak kuliah D3 dulu tahun 2004. Mulai Oracle 8i, Oracle 9i, lalu Oracle 10g, VB 6 dan VB.NET 2005 semuanya sudah pernah saya instal di laptop / PC saya (klo Oracle 11g saya gak sanggup nginstalnya, laptop saya pasti jadi lemot banget).

Nah, masalahnya mereka ini termasuk golongan proprietary software, alias harus bayar! Saya juga ga mau terus-terusan mbajak, takut kena hukum karma, hehehe…

Baca lebih lanjut

QuickSort


QuickSort adalah salah satu algoritma pengurutan (sorting algorithm) yang sangat populer karena efisiensinya. Walaupun sedikit lebih kompleks, namun algoritma QuickSort sangat cocok untuk mengurutkan data dalam sebuah array yang memiliki jumlah elemen yang sangat banyak (yang akan membutuhkan waktu yang jauh lebih lama jika diurutkan dengan algoritma pengurutan sederhana semacam BubbleSort)

Algoritma QuickSort diciptakan pertama kali pada tahun 1960 oleh  C.A.R. Hoare, seorang ilmuwan Computer Science berkebangsaan Inggris yang waktu itu masih seorang mahasiswa tamu di Moscow State University, Uni Soviet. Algoritma ini adalah algoritma rekursif yang bekerja dengan prinsip divide and conquer, adapun logikanya adalah sebagai berikut:

Baca lebih lanjut

Binary Search


Binary Search Algorithm atau Algoritma Pencarian Biner adalah salah satu algoritma pencarian yang performanya cukup baik, lebih baik daripada mencari data secara traversal.

Seperti algoritma pencarian lain, binary search juga memiliki keuntungan dan kerugian. Keuntungannya adalah proses pencarian relatif lebih cepat karena tidak semua elemen dalam array diperiksa. Adapun kerugiannya adalah binary search hanya efektif jika diterapkan terhadap array yang datanya sudah terurut. Jika elemen dalam array itu mengalami penambahan, pengubahan maupun penghapusan, maka array harus diurutkan lagi. Untuk mengurutkan data dengan cepat kita bisa menggunakan QuickSort.

Logika algoritma binary search cukup sederhana: Baca lebih lanjut

Training: Oracle Database 10g PL/SQL


Sejak tanggal 22 November 2010 sampai 26 November 2010 kemarin, saya dan beberapa rekan dosen lain (total ada 8 orang: saya sendiri, DRW, TRF, PRM, ELY, INE, SYN dan ART) mengikuti pelatihan dari Oracle University yang diselenggarakan oleh Telkom PDC Bandung. Pelatihan yang kami dapatkan ada 2 yaitu:

  1. Oracle Database 10g:  PL/SQL Fundamental (22-23 November 2010)
  2. Oracle Database 10g: Developing PL/SQL Program Units (24-26 November 2010)

Sebenarnya dua pelatihan tersebut dijadwalkan untuk diselenggarakan selama 3 minggu, namun atas permintaan kampus yang mengirim kami maka waktu pelatihan yang seharusnya 3 minggu itu dimampatkan menjadi 5 hari saja, 4 sesi per hari mulai jam 8 pagi sampai jam 16 sore.

Pelatihan yang kami ikuti ini materinya sangat padat. Ternyata materi mata kuliah DBMS yang biasanya saya ajarkan kepada mahasiswa dalam waktu 1 semester itu dibahas tuntas dan jauh lebih mendetail di pelatihan Oracle Database 10g:  PL/SQL Fundamental dalam waktu 2 hari training saja, plus banyak sekali materi-materi baru.

Materi pelatihan yang saya ikuti pun sangat menarik sekali. Saya dan rekan rekan dosen yang lain benar2 belajar banyak hal baru di sini (terutama saya sendiri sebagai dosen newbie yang masih miskin pengalaman). Selain memperdalam materi yang sudah biasa saya ajarkan di kelas, saya juga memperaktekkan secara hands on untuk beberapa hal baru berikut ini: Baca lebih lanjut