Next:
- buat halaman notifikasi disposisi
daily report:
- ubah skema disposisi hanya menyimpan user+mail+isChecked. Instruksi dan catatan disimpan di Mail.
- ubah controller mail untuk mengakomodasi perubahan point 1.
- lengkapi controller disposisi dengan penambahan fitur edit dan delete.
Todo:
- upload file dojo
- graphic+charting dojo [dah dieksplor]
- notification [kandidat JToaster]
7.31.2008
7.23.2008
Membuat Skeleton Kerja PHP Symfony [draft]
salah satu framework PHP yang powerful adalah symfony. Dengan dukungan editor open seperti Eclipse didapatkan environment yang lengkap untuk mengembangkan aplikasi web. Berikut adalah langkah membuat skeleton kerja PHP Symfony menggunakan Eclipse.
- plugin eclipse yang dibutuhkan adalah symfoclipse, wicked shell
- open view symfoclipse, buat PHP Project, kemudian klik kanan pada project tersebut dan pilih menu "init-project"
plugin yang dibutuhkan adalah sfGuardPlugin untuk otentikasi dan otorisasi pengguna. sfPropelTextOutputBehaviorPlugin untuk export view dalam bentuk JSON atau XML.
optional plugin yang juga sering dipakai: sfTCPDFPlugin untuk membuat format PDF.
membangun aplikasi default untuk control panel admin
Setting Environment Eclipse
- plugin eclipse yang dibutuhkan adalah symfoclipse, wicked shell
- open view symfoclipse, buat PHP Project, kemudian klik kanan pada project tersebut dan pilih menu "init-project"
Plugin Default
plugin yang dibutuhkan adalah sfGuardPlugin untuk otentikasi dan otorisasi pengguna. sfPropelTextOutputBehaviorPlugin untuk export view dalam bentuk JSON atau XML.
optional plugin yang juga sering dipakai: sfTCPDFPlugin untuk membuat format PDF.
Membangun Aplikasi Default -> Admin
membangun aplikasi default untuk control panel admin
7.22.2008
Prototype Elmira
Kebutuhan Elmira nantinya adalah full screen web browser. Jadi butuh panel dialog. dan berikut adalah kandidat dari apa yang aku gunakan.
jadwal review sabtu, 26 Juli 2008
milestone selanjutnya adalah integrasi model symfony dengan view di atas.
update, minggu 3 August 2008
prototype dapat dilihat di http://tuxceria.com/elmirafx/web/index.php
Hasil Review:
- key point adalah kemudahan dalam penggunaan
- ubah mindset sesederhana mungkin
url sumber: http://www.vertexwerks.com/tests/sidebox/
jadwal review sabtu, 26 Juli 2008
milestone selanjutnya adalah integrasi model symfony dengan view di atas.
update, minggu 3 August 2008
prototype dapat dilihat di http://tuxceria.com/elmirafx/web/index.php
Hasil Review:
- key point adalah kemudahan dalam penggunaan
- ubah mindset sesederhana mungkin
url sumber: http://www.vertexwerks.com/tests/sidebox/
7.17.2008
Belajar dengan paradigma berorientasi objek
- orientasi object vs prosedural
ketika sebuah object kita ciptakan, objek tersebut hidup dan mempunyai tanggungjawab tertentu. dari luar, object tidak perlu tahu bagaimana dia melakukan tanggung jawabnya.
sedangkan dengan prosedural. ketika fungsi/prosedur dipanggil, dia hanya mengembalikan nilai dari paramater masukan atau mengubah nilai masukan tersebut.
contoh kasusnya:
dosen dan murid. dosen pengen tau semua apa yang dikerjakan mahasiswa selama malam minggu.
dengan pendekatan prosedural, skenario kita nyewa satu orang, buat ngikutin mahasiswa, catet apa yang mereka lakuin satu satu.. satu orang ga cukup untuk simultan mahasiswa... maka kita sewa orang sebanyak jumlah mahasiswa.
dengan pendekatan object, skenario kita... kasih tugas ke mahasiswa, suruh mereka bikin catatan apa yang dilakuin malem minggu, senin dikumpulkan ke dosen.
make sense ga?
Prinsip yang mendasari butuhnya paradigma baru:
1. ga boleh koding repetitive, semboyannya DRY (Dont Repeat Yourself)
jika kamu udah banyak copy paste, apalagi satu file ke file yang lain, tandanya program dah ga beres.
drawback dari kerja kek gini.. ketika kamu ingin ngerubah satu bagian. maka perubahan itu harus dipropagasi ke semua file yang mengandung routine tersebut.
simply said: kita butuh software yang gampang dimaintain
2. loosely coupling
bikin komponen yang sebisa mungkin pny tingkat coupling yang rendah. jika menemukan bahwa koding di file ini butuh file itu, dan file itu butuh file a-b-c dan berantai hingga jadi satu aplikasi... berarti ada yang salah.
ubah program sehingga komponen-komponen mampu berdiri sendiri, dan kita bisa mengujinya tanpa harus menggunakan komponen lain. Masing-masing unit dapat diuji dengan menggunakan unit testing.
Hal ini bermanfaat jika project sangat besar, butuh banyak engineer, dan proyek harus dikerjakan secara paralel.
- orientasi aspek vs orientasi object
praktis dan studi kasusnya liat di postingan onestopinjector
ps: janji buat akmalhamdani di setiap cerita yang dia sumbang.. huehe
ketika sebuah object kita ciptakan, objek tersebut hidup dan mempunyai tanggungjawab tertentu. dari luar, object tidak perlu tahu bagaimana dia melakukan tanggung jawabnya.
sedangkan dengan prosedural. ketika fungsi/prosedur dipanggil, dia hanya mengembalikan nilai dari paramater masukan atau mengubah nilai masukan tersebut.
contoh kasusnya:
dosen dan murid. dosen pengen tau semua apa yang dikerjakan mahasiswa selama malam minggu.
dengan pendekatan prosedural, skenario kita nyewa satu orang, buat ngikutin mahasiswa, catet apa yang mereka lakuin satu satu.. satu orang ga cukup untuk simultan mahasiswa... maka kita sewa orang sebanyak jumlah mahasiswa.
dengan pendekatan object, skenario kita... kasih tugas ke mahasiswa, suruh mereka bikin catatan apa yang dilakuin malem minggu, senin dikumpulkan ke dosen.
make sense ga?
Prinsip yang mendasari butuhnya paradigma baru:
1. ga boleh koding repetitive, semboyannya DRY (Dont Repeat Yourself)
jika kamu udah banyak copy paste, apalagi satu file ke file yang lain, tandanya program dah ga beres.
drawback dari kerja kek gini.. ketika kamu ingin ngerubah satu bagian. maka perubahan itu harus dipropagasi ke semua file yang mengandung routine tersebut.
simply said: kita butuh software yang gampang dimaintain
2. loosely coupling
bikin komponen yang sebisa mungkin pny tingkat coupling yang rendah. jika menemukan bahwa koding di file ini butuh file itu, dan file itu butuh file a-b-c dan berantai hingga jadi satu aplikasi... berarti ada yang salah.
ubah program sehingga komponen-komponen mampu berdiri sendiri, dan kita bisa mengujinya tanpa harus menggunakan komponen lain. Masing-masing unit dapat diuji dengan menggunakan unit testing.
Hal ini bermanfaat jika project sangat besar, butuh banyak engineer, dan proyek harus dikerjakan secara paralel.
- orientasi aspek vs orientasi object
praktis dan studi kasusnya liat di postingan onestopinjector
ps: janji buat akmalhamdani di setiap cerita yang dia sumbang.. huehe
Label:
AOP,
belajar objek oriented,
OOP,
procedural,
software design
7.15.2008
Injeksi data ke situs lain
TODO: inject untuk site yang memakai otentikasi user
studi kasus: plazaraya.com dengan user rasix
Deskripsi Sistem:
dengan menggunakan HTTPRequest, data dapat diinjeksikan ke situs lain. Hal inilah yang dimanfaatkan spammer mengirimkan komentar, post, iklan, ke situs lain yang tidak terlindungi dari bot.
banyak sekali wordpress di indonesia yang di kustom oleh pengguna menjadi situs iklan gratis tanpa bayar dengan otorisasi captcha.
analisis skenario:
- user terotentikasi untuk dapat menggunakan service onestopinjector.
- user punya account expiry
- aplikasi mempunyai 200 situs yang akan diinject
- situs dibagi menjadi dua yakni yang memiliki otentikasi captcha dan bukan
trivia pertama: identifikasi kelasnya:
ps: portofolio symfony ke 2
sebelumnya jg pernah bikin site iklan kirim via sms, tp dah dijual dan ga sustain
--
relasi project: onestopinjector
deskripsi: aplikasi pengirim iklan massal berbasis web
sc captcha dari site victims yang akan diinject:
studi kasus: plazaraya.com dengan user rasix
Deskripsi Sistem:
dengan menggunakan HTTPRequest, data dapat diinjeksikan ke situs lain. Hal inilah yang dimanfaatkan spammer mengirimkan komentar, post, iklan, ke situs lain yang tidak terlindungi dari bot.
banyak sekali wordpress di indonesia yang di kustom oleh pengguna menjadi situs iklan gratis tanpa bayar dengan otorisasi captcha.
analisis skenario:
- user terotentikasi untuk dapat menggunakan service onestopinjector.
- user punya account expiry
- aplikasi mempunyai 200 situs yang akan diinject
- situs dibagi menjadi dua yakni yang memiliki otentikasi captcha dan bukan
trivia pertama: identifikasi kelasnya:
ps: portofolio symfony ke 2
sebelumnya jg pernah bikin site iklan kirim via sms, tp dah dijual dan ga sustain
--
relasi project: onestopinjector
deskripsi: aplikasi pengirim iklan massal berbasis web
sc captcha dari site victims yang akan diinject:
dojo.meetMe()
open source ajax toolkit untuk widget yang lengkap. dojo, merupakan salah satu alternatif pembangunan web dengan kebutuhan user experience yang tinggi.
diary:
bikin new tab terus populate splitter dengan content pane sederhana aja susahnya setengah mati! bener-bener butuh best practice penggunaan dojo nih
update: wah ternyata constructor splitternya dah depecrated, diganti ama BorderContainer. Makasih ya Tuhan..
-----------
related project: Yudhistira mail disposal
deskripsi: sistem disposisi surat untuk institusi
sc:
diary:
bikin new tab terus populate splitter dengan content pane sederhana aja susahnya setengah mati! bener-bener butuh best practice penggunaan dojo nih
update: wah ternyata constructor splitternya dah depecrated, diganti ama BorderContainer. Makasih ya Tuhan..
-----------
related project: Yudhistira mail disposal
deskripsi: sistem disposisi surat untuk institusi
sc:
Subscribe to:
Posts (Atom)