snippetjournal

– notes, snippet codes, and my journal

Archive for January 2014

Upload, Download using Spring MVC and Xlsx Manipulation using apache poi

with one comment

Written by snippetjournal

January 28, 2014 at 9:53 am

Posted in Uncategorized

Tagged with , , , , ,

Trivial Date Problem 2 (JavaScript – Jquery)

leave a comment »

Written by snippetjournal

January 17, 2014 at 1:08 pm

A Remainder : Lose Sleep, Lose your Mind and Health

leave a comment »

A Remainder : Lose Sleep, Lose your Mind and Health

A remainder 😀

Written by snippetjournal

January 14, 2014 at 2:17 pm

Posted in Uncategorized

Field Report Java MeetUp at Blibli.com part 2

with one comment

Development Stack Artivisi 2014

Di java meetup kali ini pemateri nya adalah mas endy muhardin dari artivisi yang mempresentasikan development stack 2014 dari artivisi. cukup menarik materi yang di bawakan. Development stack artivisi menggunakan twitter bootstrap di bagian UI, anggular JS menangani logik di bagian UI, spring framework di bagian backend, dan hibernate atau spring data JPA untuk ORM nya.

Angular JS
Mas endi sendiri lebih banyak membahas dan mendemokan cara kerja angular JS dalam menangani logik di bagian UI, anggular JS menggantikan penggunaan JSTL yang biasa nya di pakai oleh para java developer. Dengan angular JS beberapa logik dan fitur binding data nya memungkinkan pengolahan data pada sisi UI bisa dengan mudah di lakukan, karena di buat dengan javascript maka semua di tangani di sisi client side, secara langsung di tangani oleh browser di masing masing pc/laptop pengguna. Berbeda dengan JSTL yang mengolah data pada server side.

Hibernate
Kenapa mas endi masih mempertahankan penggunaan hibernate, karena menurut beliau hibernate sudah cukup stabil dan tidak ada masalah berarti jadi tidak ada salah nya dipertahankan. Penggunaan spring data JPA juga sempat di bahas, beliau menggunakan spring data JPA karena dalam penggunaan nya dapat menghemat code (less code). Maksudnya adalah pada spring data JPA terdapat fitur untuk operasi database sederhana save, update, delete, findBySomething, sudah tertanam pada spring data JPA sehingga boilerplate code dapat di hindari.

Spring
Tidak banyak yang di bahas tentang spring 😦 , salah satu yang di bahas adalah kenapa beliau lebih memilih spring dari pada EJB, keuntungan yang di bahas dalam spring adalah mudah nya migrasi spring dari versi lama ke versi baru, dan juga dengan penggunaan spring menjadi seperti “one stop solution” di banding EJB atau stack JEE 6/7 sendiri. karena dengan spring beberapa component/fitur seperti messaging, scheduler dll sudah di “bungkus” oleh spring

Selain itu mas endi juga sempat membahas pertimbangan apa saja dalam memilih framework, antara lain kemudahan penggunaan (intuitive), learning path, popularitas (trend) dan jumlah pemakai. mas endi menitik beratkan kemudahan penggunaan dalam memilih framework sehingga developer cepat beradaptasi dalam mengimplementasikan nya ke project yang akan di kerjakan.

Sebenar nya mas endi juga sempat membahas workflow development tetapi akan lebih ringkas jika melihat presentasi slide dari mas endi. karena lebih mudah di pahami dengan susunan gambar.

berikut bahan materi yang di bawakan oleh mas endy muhardin :

Contoh aplikasi yang dibahas ada di sini :
https://github.com/endymuhardin/simple-webapp
https://github.com/endymuhardin/belajar-restful

screen cast :  http://t.co/fSzqYCzDaL

Akhir kata maaf jika FR nya kurang detail/lengkap, karena saya menulis hanya berdasarkan ingatan saja, mungkin ada poin poin yang menarik yang tidak tertulis 😀

cheers, happy coding with java 🙂

Written by snippetjournal

January 14, 2014 at 4:55 am

Field Report Java MeetUp at Blibli.com part 1

leave a comment »

Sesi ngobrol santai 🙂

Ini pertama kalinya saya mengikuti java meetup selama saya tenggelam dalam dunia IT, khusus nya dunia programming atau software engineering istilah keren nya 😀 .

Menurut teman saya kurang lebih sudah 4 tahun java meetup vakum, cukup lama ya :D, mungkin karena kesibukan para jagoan jagoan java sehingga java meetup vakum cukup lama.

Di gawangi oleh blibli.com akhir nya java meetup terlaksana kembali kemarin tanggal 10 januari di kantor blibli.com beberapa java antusias kembali di pertemukan di dunia nyata. Info yang saya dapat dari pak ferry sutanto (CTO blibli.com) terhitung 400 undangan yang mendaftar, tetapi di lapangan mungkin lebih karena akhirnya untuk yang tidak mendaftar pun dipersilahkan ikut.

Cukup menyenangkan karena antusias java ternyata cukup banyak, dari mahasiswa hingga pekerja IT profesional yang memang sudah berpengalaman di real project. Yang menarik disini adalah sesi sesi ngobrol bebas sebelum acara di mulai, saya dan teman saya sempat ngobrol santai dengan beberapa antusias java, antara lain mas ifnu bima salah satu java warior di indonesia, kami sempat bertanya tanya tentang java podcast yang sudah cukup lama vakum.

Obrolan lain yang cukup menarik adalah ketika ngobrol santai dengan pak ferry sutanto, CTO nya blibli.com. beliau sudah berpengalaman cukup lama di dunia programming. Kalau tidak salah 10 tahun beliau bekerja di US (cisco). sekarang beliau bersama blibli.com ikut meramaikan dunia eCommerce di indonesia.

Obrolan yang cukup menarik disini beliau tidak menyangka dunia programming di indonesia ternyata cukup “ramai”, beliau juga terlihat antusias sekali pada java meetup kali itu. Cukup menarik ngobrol dengan beliau karena ternyata blibli.com masih banyak akan mengembangkan product, tapi seperti nya apa saja product yang akan di kembangkan masih rahasia :D.

Ada gosip juga lho bahwa sebenar nya ada maksud tersembunyi di java meetup kali itu, bahwa blibli.com sedang mencari para java developer untuk bergabung dengan mereka untuk memperluas perkembangan product mereka. (sah sah saja menurut saya 😀 )

Hal yang menarik juga bahwa pak ferry selaku perwakilan blibli.com sangat support terhadap komunitas java di indonesia (JUG) mungkin kita akan sering melihat beberapa meetup atau seminar lainnya yang bakal disponsori oleh blibli.com 😀

Pak ferry juga mengakui skill para java developer di indonesia tidak kalah lho di bandingkan di US sana, tetapi mungkin ada beberapa kekurangan pada SDM kita, salah satu nya yang beliau bahas adalah kurangnya soft skill dari SDM indonesia, softskill disini antara lain adalah cara berkomunikasi, keberanian untuk bertanya dan mengeluarkan pendapat.

Selain itu yang patut garis bawahi, beliau juga sempat membahas design pattern, beliau ternyata salah satu penggemar kode “indah”, istilah keren nya beautiful codes, code yang berkualitas bukan hanya asal jalan :D. Beliau berpendapat dari sisi design pattern kita harus lebih concern dan lebih banyak belajar serta mengimplementasikan ke code code yang kita buat.

Disini timbul pertanyaan yang kemudian saya tanyakan kepada beliau sebagai java developer, saya selalu berhadapan dengan deadline yang “gila-gilaan”, tight time line. yang tentu saja ini menghalangi saya dan team membuat suatu sistem aplikasi yang berkualitas (dari sisi kode ?), jawaban pak ferry berdasarkan pengalaman nya di US sana, cukup menarik, ternyata di US bisnis software itu bukan berdasarkan market driven (di tentukan market, sales ?) tetapi product driven (mungkin ini hanya untuk vendor besar saja 🙂 ).

Apa yang saya tangkap bahwa bisnis software di US sudah lebih teratur dan bagus manajemen nya, sehingga dalam penentuan time line, marketing atau sales berkomunikasi secara baik dengan programmer programmer senior, sehingga tight timeline dan deadline yang “gila-gilaan” dapat di hindari dan kualitas sistem aplikasi dapat terjaga dengan baik. hmm berbeda ya dengan situasi yang ada di indonesia 😀

Oia saya pun sempat iseng bertanya kenapa pak ferry lebih memilih java, kenapa tidak menggunakan dotnet atau bahasa lain nya ? ketika itu pak ferry menjelaskan bahwa di US sendiri platform OS yang banyak di gunakan adalah linux atau unix. sehingga java lebih cocok di bandingkan dotnet. Teman saya pun sempat mengeluarkan pertanyaan menarik, bahwa di australia platform dotnet sendiri lebih di gemari (populer). pak ferry beropini bahwa kita bisa melihat dari kemajuan startup di US banyak yang sudah trend dan bermacam macam jenis nya, berbeda dengan di australia yang seperti nya tidak terdengar gaung nya 😀 (opini lho ini hanya opini)

lanjut ke Development stack artivis 2014 di java meetup at blibli.com

Written by snippetjournal

January 14, 2014 at 4:46 am

A Goodbye Email from a Hardcore Programmer

leave a comment »

source : http://magduos.com/2014/01/07/a-goodbye-email-from-a-hardcore-programmer/


/**
* @author Premkumar Masilamani
* @company Tata Consultancy Services
* @about My Life in TCS
* @startDate 03-Nov-2004
* @endDate 21-Nov-2013
*/

import com.hindustancollege.ComputerScienceDegree;
import com.love.programming.SoftwareEngineerDream;

public class PremsLifeInTCS extends SoftwareEngineerDream implements ComputerScienceDegree {

public static void main(String[] args) {

// Phase 1 - Jobless Wanderer
do {
attendInterview();
if (gotJobInTCS) {
passedInterview = true;
}
} while (!passedInterview);

// Phase 2 - Learning the Trade
while (working12PlusHoursADay()) {
learnTechnology();
}

// Phase 3 - Dollor Dreams
for (int i = 0; i < 10000; i++) {
askForOnsite();
if (yes) {
gotoUnitedStates();
break;
} else {
continue;
}
}

// Phase 3 - Enjoy Life in US
while (inUnitedStates) {
noWorkAllPlay();
if (tcsLostTheProject()) {
comeBackToIndia();
break;
}
}

// Phase 4 - Trying to fit in the corporate world
if (foughtWithManager() || foughtWithClient() || notOKWithApplicationDesign()
|| workedFor2Years()) {
switch (project) {
case AMEX:
break;
case TEG:
break;
case TFS:
break;
case LandG:
break;
default:
dontGotoOffice();
}
}

// Phase 5 - Kindling my romantic side
while (notGoingToOffice()) {
dateGirls();
if (foundTheRightOne()) {
marryHer("Sangavi");
}
}

// Phase 6 - Becoming a family man
goToOnsite(chooseOnsite(maxCurrencyRate("US", "GB", "SG", "AU")));
while (inUnitedKingdom) {
makeFriends();
hostParties();
workHard();
if (visaExpired) {
comeBackToIndia();
break;
}

}

// Phase 7 - Doing the inevitable
if (!challengingWork() && !changingProject() && !learningNewTechnology()
&& gotGoodOffer()) {
sayGoodByeToTCS("Thanks to everyone in TCS");
pleaseKeepInTouch();
}

}

public static void pleaseKeepInTouch() {
viaEmail("prem82@gmail.com");
viaBlog("http://blog.smileprem.com/");
viaFacebook("https://www.facebook.com/prem82");
viaTwitter("https://twitter.com/prem82");
viaLinkedIn("http://www.linkedin.com/in/prem82");
if (emergency) {
viaPhone("+91-99862-49904");
}
}
}

Written by snippetjournal

January 11, 2014 at 2:39 pm

Posted in Uncategorized

Configure Max – Min JVM memory and Set remote – attach debugger

leave a comment »

  • set maximum and minimum memory in JVM
    -Xms512m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=512m -XX:NewSize=192m -XX:MaxNewSize=384m
  • set remote / attach debugger
    -Xdebug -Xrunjdwp:transport=dt_socket,address=7951,server=y,suspend=n 
  • set remote / attach debugger And maximum and minimum memory in JVM
    -Xdebug -Xrunjdwp:transport=dt_socket,address=7951,server=y,suspend=n -Xms512m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=512m -XX:NewSize=192m -XX:MaxNewSize=384m

Written by snippetjournal

January 9, 2014 at 3:48 am

Posted in Programming

Tagged with , , ,