Goto post entries

JavaScript is disabled or you're using old browser, please turn on your JavaScript or upgrade your browser to see fancy looking.

  Older Entries 

Design Pattern Dalam PHP (Bagian I)

Design Pattern? Mungkin bagi yang pernah mendengarnya tentu familiar dengan bukunya Gang of Four “Design Patterns: Elements of Reusable Object-Oriented Software”. Lalu apa itu design pattern? Konsep sederhana dibalik design pattern adalah solusi untuk masalah umum yang didokumentasikan oleh seorang yang berpengalaman dalam pengembangan aplikasi. Umumnya masalah yang ada sering ditemui dalam beberapa proses pengembangan sehingga dinamai pola (pattern). Sedangkan desain yang digunakan untuk mengatasi pola masalah tersebut umumnya digunakan agar kode menjadi less-coupled (tidak terlalu mempengaruhi kode lainnya jika ada perubahan ke depannya), mudah dimantain, portabel, mudah dibaca, dapat diterapkan dalam tim yang dinamis dan untuk skala proyek yang kompleks. Design Pattern dapat digunakan dalam bahasa pemrograman apa saja, khususnya bahasa pemrograman yang OOP, tak terkecuali PHP. Ada banyak design pattern, saya akan bahas empat design pattern (Singleton, Registry, Adapter dan Observer) terlebih dahulu dan akan saya lanjutkan pattern lainnya di tulisan lainnya.
Read the rest of this entry »

Quick Tips to Help You get Accepted on Google Summer of Code

I’ve great news that, AFAIK, there are two students from Indonesia that have been accepted on Google Summer of Code 2010. They are (drum roll please) Akeda and Dwi. I’ve been posted a message on gsoc student mailing list to alert other Indonesian students, but no one replying. So, I guess there’s only me and dwi get accepted this year. Since, I’ve accepeted I’ll give my own tips on how to get accepted as a student of Google Summer of Code. The key is write a good proposal and communicate with your mentoring project oftenly. A good proposal is not your first try proposal. When you writing your proposal for the first time oftenly it’s just a draft proposal. You need to ask your mentoring project some feedbacks and iterate the process by rewrite and ask again until the mentoring project says okay. This year is a little bit different, some mentoring organisations posts some bugs tagged for applicants and each applicant should work, on bug(s) by submitting patch for that bug. I did this. Doing this means your chance to get attentions from mentoring organisation is higher. So, you need to touch the codebase of the project which you have interest on it. Because of this you shouldn’t have to submit a proposal as much as you think to get accepted. The increased quantity of your proposals may even decreased overall proposal qualities, since you have to split your focus.

Okay, you’ve got the picture? Alright, how about the content of good proposal? Some mentoring organisations were kind enough to give us templates of proposal to work on. The templates are general as it should have a brief description about the project you have interested in, implementation plans, timeline and short biography about yourself. You should focus (IMHO) on writing your implementation plans and timeline. A google summer of code project is around 3 or 4 months duration, so it can be said as a medium project for a single developer. The key is how good you describe the problem and its solution. When you touched the codebase of a project for submitting patch, you get the benefits on how you’ll describe the software on your proposal. Use the name of the classes, methods, libraries that related to your project and how you’ll using it to solve the problem. Mentoring organisations will pick up student that already familiar with their codebase. Don’t write too much, use screenshots if available. If your project is a complex one, divide your project into three or four subprojects then define the timeline of each subprojects. Well, that’s my own quick tips. I hope Indonesian students will aware about this event on the next year :) .

Hari Baru yang Perlu Diingat

Hari itu adalah 16 Mei, dan perlu saya ingat agar “Nyonya” juga tidak mengkencangkan otot mata. Sebenarnya saya juga bingung mau menulis apa, ini hanya tulisan asal agar blog ini terlihat terkini. Btw, komentar di blog ini tetap saja ada yang masuk dan paling banyak ke tulisan saya mengenai penipuan undian telkomsel. Hal ini membuktikan modus penipuan seperti ini masih menjamur.

Pergeseran Waktu dalam Perjuangan

Beberapa bulan ini saya merasakan pergeseran waktu kembali. Yup, hari terasa begitu cepat berlalu tahun ini, siang kini terasa semakin cepat dan malam menjelang pagi terasa begitu lama. Beberapa bulan ini saya kembali menjadi kalong, tidur dikala para pekerja terjebak macet menuju kantor mereka dan bangun dikala pekerja hendak makan siang. Well, sejak kuliah (dan bahkan sejak SMA) saya sudah terinfeksi dengan pola hidup seperti ini. Belajar dan bekerja disaat semua orang terlelap bagi saya mempunyai nuansa tersendiri. Kadang jika kita ingin meraih sesuatu ada hal yang harus kita korbankan, entah itu kebersamaan atau waktu tidur. Dan sayangnya saya selalu ingin meraih sesuatu sehingga ada saja yang harus dikorbankan. Apa yang ingin saya raih saat ini? Hmm.. hanya satu, yaitu ilmu (saya bohong, plus uang tentunya). Berbicara tentang keinginan yang diraih, saya jadi teringat percakapan dengan teman saya malam kemarin, seseorang yang ingin bekerja dibidang yang disukai (tapi dengan salary yang setimpal). Read the rest of this entry »

ls direktori dalam format tree

Apabila kita bekerja dengan konsol dan ingin mengetahui struktur direktori tertentu biasanya kita melakukannya dengan perintah ls nama_direktori, lalu kita ls lagi direktori di dalamnya. Jika kita bekerja di desktop, kita dapat mengetahui struktur direktori tertentu dengan membuka penjelajah berkas (file browser). Sebenarnya di konsol, ada perintah tree untuk melihat senarai direktori dalam format tree.

tree - list contents of directories in a tree-like format.

Saya menggunakan ubuntu, cukup mudah menginstalnya jika perintah tree belum tersedia.

sudo apt-get install tree

Lalu kita lihat seperti apa keluarannya:

akeda@akeda-desktop:~$ tree ~/www/keuangan/app/models
/home/akeda/www/keuangan/app/models
|-- activity.php
|-- activity_child.php
|-- behaviors
|   |-- empty
|   |-- formatable.php
|   `-- money.php
|-- budget.php
|-- budget_detail.php
|-- budget_detail_description.php
|-- city.php
|-- datasources
|   `-- empty
|-- funding_source.php
|-- group.php
|-- groups_module_action.php
|-- journal_bank.php
|-- journal_cash.php
|-- journal_tax.php
|-- menu.php
|-- menu_type.php
|-- module.php
|-- module_action.php
|-- province.php
|-- site_setting.php
|-- tax_type.php
|-- transaction.php
|-- transaction_revision.php
|-- unit.php
|-- unit_code.php
|-- user.php
|-- user_log.php
`-- volume.php

2 directories, 30 files

Sebernarnya keluaran hasil tree di atas berwarna tergantung tipe berkas dan ekstensinya (yang terdefinsi dalam dircolors). Untuk penggunaan lebih lanjut silahkan coba-coba dan baca man tree.

  Older Entries