• Tentang Kerja Remote

    Tentang Kerja Remote

    Sebentar lagi tahun 2015 berakhir, dan memasuki januari tahun 2016 berarti saya akan memasukin tahun ke-3 saya sebagai remote worker atau pekerja remote. Awalnya saya belum mengenal kerja remote dan saya masih bekerja onsite di Bandung, iseng aja nanya ke atasan saya “saya boleh kerja dari tempat saya saja di Samarinda?” karena waktu itu saya…

    selanjutnya

    Sebentar lagi tahun 2015 berakhir, dan memasuki januari tahun 2016 berarti saya akan memasukin tahun ke-3 saya sebagai remote worker atau pekerja remote. Awalnya saya belum mengenal kerja remote dan saya masih bekerja onsite di Bandung, iseng aja nanya ke atasan saya “saya boleh kerja dari tempat saya saja di Samarinda?” karena waktu itu saya berpikir, as programmer saya bisa kok mengerjakan dan mengirim source code dan kerja online gak mesti di kantor. Atasan ternyata memberikan ijin namun dengan syarat, mesti 1 tahun dulu onsite dan sudah berkeluarga, dan kebetulan saat itu memang ada rencana untuk berkeluarga di 1 tahun berikutnya, dan akhirnya saya pun memulai sistem kerja yang ternyata sudah lama nge-trend dengan istilah remote working atau kerja remote.

    Baca juga:

    Pertengahan tahun 2015 ini saya menemukan grup facebook dengan nama kami kerja remote, dan ternyata beberapa teman saya sudah join disitu, keberadaan grup ini lumayan membantu beberapa teman saya mengenal jenis pekerjaan yang saya lakuin, karena kalau kamu bekerja as remote worker kamu pasti sering mengalami moment sedikit bingung ketika menceritakan pekerjaanmu ke teman-teman sekitar mu :D.

    Di grup itu juga, terlihat beberapa member memang awalnya masih belum tepat mengartikan tentang kerja remote, beberapa menganggap pengguna software remote (teamviewer, vcn, ssh, dll) atau ada juga yang menganggap ini jenis pekerjaan khusus programmer. Tentu saja bukan cuma beberapa member tersebut yang bingung, tetangga saya mengira saya kerja sebagai tukang bikin remote ketika menjelaskan pekerjaan saya ke tetangga :(, atau seperti beberapa teman saya yang dikira pesugihan karena gak pernah keliatan ngantor. hiks.

    Beberapa opini tentang kerja remote yang paling sering ada dan gak tepat

    Kerja Remote == Freelancer

    Ini yang paling sering, kerja remote disamakan dengan freelancer. iya sih kebanyakan freelancer kerja secara remote, tapi gak semua juga. Freelancer adalah masalah kontrak, dimana kita sebagai freelancer dikontrak untuk bekerja pada satuan waktu tertentu atau berdasarkan projek yang dikerjakan. Misal kamu kerja dengan status freelancers dan kamu gak mesti datang kekantor, itu baru disebut freelancer yang kerja remote, tapi ada juga freelancer yang mesti datang ke kantor, tiap hari. Dikantor saya dulu kami sempet nge-hire freelancer karena kekurangan tenaga, dan walaupun freelancer, orang tersebut mesti datang kekantor, meeting dan kerja di kantor setiap hari. Kalau sudah begini, dia bener freelancer, tapi kerja nya onsite, bukan kerja remote.

    Kerja Remote == Part Timer

    Terlepas dari ngelempar lowongan kerja di facebook itu kadang jadi absurd, jawaban dari orang ke 2 alias pemberi kerja agak gak nyambung, dan saya menduga mungkin pemberi kerjaan mengira kerja remote ini semacam freelancer, atau malah part timer. Padahal ini hal simple, part timer adalah kerja paruh waktu, biasanya para pelajar yang mau sambil kerja, atau saya juga pernah sebagai part timer walaupun masih dalam status karyawan di tempat lain. Sama seperti freelance, kalau kerja sebagai part timer dan mesti datang kekantor, namanya ya kerja onsite juga, bukan remote. Bisa jadi juga kerja nya part time atau malah full time, tapi gak mesti kekantor, berarti ya termasuk kerja remote.

    Kerja Remote mesti jadi Programmer

    Beberapa orang menganggap perlu jadi programmer buat ngerasain kerja remote. Sebenarnya gak juga, kamu bisa kerja remote dengan profesi apapun, rasanya pernah baca dokter melakukan operasi jarak jauh menggunakan teleconference, itu juga termasuk remote. Jadi bukan masalah kemampuan atau profesi, tapi lebih masalah persepsi bahwa kerja gak mesti ngumpul di 1 tempat. Profesi lain seperti desainer (desainer apapun), penulis (blog atau buku), pengajar ( pernah liat perkuliahan online? ), scientist dan photographer (contoh fotographer ama peneliti national geographic yang lagi di tengah hutan).

    Kerja Remote mesti di kantor luar negeri

    Memang sih jarang banget kantor / perusahaan yang akomodir kerja remote di Indonesia. Tapi bukan berarti gak ada, selama ini saya kerja remote pada 2 kantor di Indonesia, kantor pertama ada di Bandung dan kantor yang sekarang di Jakarta dan rumah saya di Samarinda. Ini lebih kearah pinter-pinter nego ke atasan mu kalau mau minta ijin kerja remote, dan karena masih jarang jadi ya agak maklum kalau gak di approve oleh si bos. pro tips nya mungkin kamu mesti tunjukin dulu bahwa kamu bisa kerja yang bener ketika onsite lalu seltelah beberapa waktu mulai deh obrolan tentang kerja remote.

    Digital Nomad

    Nah kalau ini level lebih tinggi dari para pekerja remote. Masih jarang banget sih istilah ini dipakai oleh temen-temen. Digital nomad ini sebenarnya adalah kebiasaan dimana si pekerja sukanya sambil traveling, ya karena sebagai pekerja remote, kita gak dibatasin mau kerja dimana saja, jadilah beberapa orang lebih memilih untuk sambil traveling keliling dunia, “karena dunia terlalu luas untuk tinggal di satu tempat” begitu sih biasanya slogan nya. Belum pernah sih denger orang indonesia yang ngelakuin digital nomad gini, tapi kalau para bule udah hal biasa. Seperti om vitally friedman, doi yang punya website smashing magazine, hidup nya pindah-pindah dari satu tempat ke tempat lain, bahkan dia gak punya rumah, kamu bisa baca disini. Tapi walaupun begitu, ada juga digital nomad yang kerjanya gak remote, saya pernah baca beberapa orang seperti pengajar, dokter, dan instruktur yang hidup nomaden sambil traveling, ketika sampai disuatu tempat mereka akan mencari kerja sebagai tenaga kerja lokal di tempat tersebut, sampai beberapa bulan mereka resign dan melanjutkan perjalanan.

    Tentang Kerja Remote

    Jadi kerja remote itu sebenarnya simple, kalau kamu bekerja entah jadi karyawan resmi, atau sekedar freelance, magang atau yang lainnya dan kamu gak mesti datang kekantor maka sudah termasuk kerja remote. Prinsipnya sebenarnya adalah supaya kamu bisa kerja di tempat dengan kondisi dan keadaan yang kamu sukai, harapannya dengan begitu kerja lebih produktif, karena gak perlu suntuk dengan ruangan kantor yang mungkin membosankan.

    Tentu saja ada banyak pertimbangan terutama dari sisi business owner untuk memberi akses kerja remote kepada karyawannya. Seperti saya tadi, mungkin kamu mesti kerja dulu onsite, lalu tunjukkan bahwa kamu memang bisa kerja dengan baik dan cukup bisa diandalkan, lalu mulai deh ajuin kerja remote paling gak dengan masa trial beberapa bulan, kalau lancar, baru minta permanen kerja remote.

    BTW, emang apa sih benefit dari kerja remote?

    Nah, ada beberapa kelebihan atau benefit yang hanya didapat ketika bekerja secara remote, saya tulis lengkap disini: Benefit Kerja Remote

  • Membaca dan mengorganisir artikel menggunakan Pocket

    Sejak pertengahan 2015 lalu, saya mulai fokus dalam mengembangkan dan menjalankan prinsip Get Things Done (GTD) mungkin karena efek sudah berkeluarga membuat saya mesti bekerja secara efisien dan optimal. Nah topik GTD sangat erat kaitannya dengan produktifitas, manajemen waktu,  lifehack, dan segala macam hal yang akan berujung pada work-life balanced. Ada banyak hal yang dapat…

    selanjutnya

    Sejak pertengahan 2015 lalu, saya mulai fokus dalam mengembangkan dan menjalankan prinsip Get Things Done (GTD) mungkin karena efek sudah berkeluarga membuat saya mesti bekerja secara efisien dan optimal. Nah topik GTD sangat erat kaitannya dengan produktifitas, manajemen waktu,  lifehack, dan segala macam hal yang akan berujung pada work-life balanced.

    Ada banyak hal yang dapat menggangu produktifitas kita saat berkerja, salah satunya adalah gak bisa menahan diri untuk meng-klik dan membaca artikel menarik dari sosial media ataupun sumber informasi lainnya. Yang sering kejadian, ketika lagi browsing mencari resource tiba-tiba dapet artikel menarik, klik, dibaca dan lupa waktu.

    Saya sendiri biasanya pagi hari sebelum berkerja menyempatkan membuka RSS reader saya, membaca berita dan informasi yang lagi nge-hype. Biasanya saya akan menemukan beberapa artikel yang sangat menarik namun kalau dibaca saat itu juga maka akan cukup menghabiskan waktu. Saat seperti ini, saya akan menyimpan ke pocket untuk dibaca nanti setelah ada waktu senggang.

    Tentang pocket

    Pocket adalah aplikasi yang sederhana, aplikasi ini bakal menyimpan artikel yang kamu rasa perlu buat dibaca di lain waktu, se-simple itu. Walaupun begitu, ada beberapa fitur yang menarik, seperti:

    Best view layout, fitur ini membuat semua artikel yang kamu simpan di pocket akan di format dalam bentuk yang sangat membuat nyaman membaca. Kalau biasanya membaca artikel di website bakal keganggu dengan elemen-elemen website seperti widget, banner promo, ads dan lainnya, di pocket semua akan hilang hanya tersisa judul, tanggal, penulis, dan tentu saja konten berita. Jadi lebih fokus membaca.

    Tagging, setiap artikel yang disimpan di pocket bisa diberi tagging, sehingga lebih mudah dalam mengorganisir, mengelompokkan dan pencarian artikel.

    Offline reading, ini yang paling penting, artikel yang disimpan di pocket bisa dibaca saat offline, tentunya sebelumnya mesti online dulu, biarkan pocket nge-sync dan nge-save artikel di device mu kemudian selanjutnya kamu bisa baca artikel yang kamu simpan dimana saja kapan saja.

    Multi platform, pocket tersedia untuk berbagai macam platform desktop, mobile, dan juga versi web nya. Jadi saya bisa gonta ganti device dan tetep ter-sync data maupun aktifitas saya.

    Baru-baru ini, pocket merilis fitur baru, recommendations, dimana para pengguna pocket akan punya halaman profil sendiri yang bisa diisi dengan artikel yang di rekomendasikan. Kamu bisa juga follow user lain sehingga bisa melihat apa yang orang tersebut rekomendasikan buat dibaca. Asiknya, belum ada endpoint buat rekomendasi ini dari API mereka, sehingga artikel yang direkomendasikan bener-bener dari si pengguna, bukan bot (seperti kebanyakan user facebook dan twitter, uhuk)

    Tips menggunakan pocket

    1. Install plugin pocket di browser yang kamu gunakan, jadi kamu bisa tinggal klik button pocket di browser untuk menyimpan artikel.
    2. Kalau kamu pengguna OSX, install aplikasi desktop nya, supaya pocket bisa masuk ke fitur share di OSX,
    3. Install di smartphone mu, pocket akan muncul ketika kamu klik share, sehingga bisa dengan mudah menyimpan ke pocket dari aplikasi apa saja yang mendukung fitur share.
    4. Ada banyak apps yang mengintegerasikan pocket didalamnya, cari tahu di setiap setingan apps, kalau benar support pocket, bakal muncul tombol atau shortcut khusus untuk lebih mudah menyimpan konten ke pocket.
    5. Gunakan order dari terlama ke terbaru pada list artikel pocket. Ini membantu agar tidak ada artikel lama yang tersimpan di reading list kamu. Dengan begini, kamu mau gak mau bakal ngebaca semua artikel yang sudah kamu simpan, bukan cuma yang terbaru saja.
    6. Mark as read segera kalau dirasa gak perlu dibaca tapi perlu disimpan, misal artikel yang bersifat tutorial, dalam kasus saya tutorial progamming, gak pas rasanya kalau dibaca di rumah makan atau tempat tidak kondusif lainnya, jadi saya bakal kasi tagging yang jelas, lalu mark as read, ntar kalau perlu baru dicari lagi, jadi gak menuhin reading list saya.
    7. Follow orang-orang keren, biasanya para author dari media-media besar lebih banyak memberikan rekomendasi artikel yang berbobot.

    Link

  • Mengenal Gulp

    Mengenal Gulp

    Agak telat sih sebenarnya, Gulp uda nge-hype sejak tahun lalu, ditambah lagi saya sebelumnya lebih fokus pada backend development, gak terlalu perhatian dengan tools seperti ini, namun belakangan karena juga banyak bermain dengan CSS dan Javascript, membuat saya mengenal gulp, dan ternyata tools ini sangat menarik dan bisa digunakan cukup luas bukan sekedar untuk para frontend…

    selanjutnya

    Agak telat sih sebenarnya, Gulp uda nge-hype sejak tahun lalu, ditambah lagi saya sebelumnya lebih fokus pada backend development, gak terlalu perhatian dengan tools seperti ini, namun belakangan karena juga banyak bermain dengan CSS dan Javascript, membuat saya mengenal gulp, dan ternyata tools ini sangat menarik dan bisa digunakan cukup luas bukan sekedar untuk para frontend engineer.

    Kamu bisa buka website resmi gulp, untuk detail lengkap tentang apa itu gulp, tapi secara singkat dan dalam bahasa saya, gulp adalah tool yang akan membantu kamu secara otomatis melakukan banyak hal, atau sebutan kerennya, automator, task runner. contoh paling gampang, biasanya saya bakal nge-set gulp supaya ketika saya menyimpan sebuah file less, gulp akan melakukan kompilasi menjadi file CSS, lalu akan membuat versi minify nya, semua dilakukan secara otomatis.

    Instalasi

    Untuk melakukan instalasi gulp, mesti menggunakan npm, kamu gak punya npm? ini 2015 bro! 😉 kalau kamu (memang bener) gak punya npm, kamu bisa install nodejs dulu, download disini https://nodejs.org.

    Setelah terinstall, kamu bisa install gulp dengan menjalankan perintah berikut di command line mu,

    sudo npm install --global gulp

    Setelah selesai, gulp akan terinstall secara global di laptopmu.

    Memulai Project

    Untuk memulai project, kamu bisa dengan mudah buat folder dimana saja, lalu gunakan command line mu untuk masuk ke folder tersebut.

    Lalu di dalam folder tersebut, jalankan perintah

    $ npm install gulp

    eh, kok nginstall gulp lagi? iya, gulp yang diinstall secara global tadi supaya kamu bisa melakukan perintah ‘gulp‘ dari command line mu dimana saja, sedangkan ‘gulp‘ yang diinstall kali ini adalah gulp yang akan digunakan di dalam file javascript.

    Mestinya sekarang didalam foldermu bakal muncul folder baru bernama node_modules yang akan berisi paket-paket dependency javascript yang bisa dipakai.

    Sekarang, buat file bernama gulpfile.js, file ini nantinya akan berisi workflow atau alur kerja yang akan kita set. Selanjutnya kita akan membuat task pertama untuk keperluan kompilasi file Less menjadi CSS.

    Kompilasi file Less

    Wait, kenapa harus Less? personal choice sih, tapi prinsipnya akan sama saja dengan SASS.

    Pertama, install dulu plugin gulp-less

    $ npm install gulp-less

    Setelah selesai, buka file gulpfile.js tadi, lalu masukkan code berikut.

    var gulp = require( "gulp" );
    var less = require( "gulp-less" );
    
    gulp.task("styles", function(){
         gulp.src( "src/less/*.less" )
                   .pipe( less() )
                   .pipe( gulp.dest( "dist" ) )
    });

    Kode diatas adalah contoh task sederhana untuk kebutuhan kompilasi file less. Berikut penjelasan masing-masing kode.

    var gulp = require( "gulp" );
    var less = require( "gulp-less" );

    kode ini bertujuan untuk me-load pake dependency dari folder node_modules tadi, lalu di assign ke variable masing-masing.

    gulp.task("styles", function(){
         ....
    )}

    kode ini untuk menyatakan sebuah task yang akan dieksekusi oleh gulp, “styles” adalah nama task nya.

    gulp.src( "src/less/*.less" )

    Kode ini untuk mencari file berekstensi .less di dalam folder src/less/. jadi file less apapun dalam folder ini akan di kompile.

    .pipe( less() )

    .pipe()   disini akan melanjutkan hasil dari kode sebelumnya, kalau kode sebelumnya adalah mencari file less, setelah ketemu akan menjalankan .pipe() ini, pipe ini sendiri disini menjalankan method less() yang berasal dari plugin gulp-less dan kita assign ke variable less. (var less diatas tadi, dipanggil dengan less(), got it?).

    .pipe( gulp.dest( "dist" ) )

    Oke lanjut, kita ‘pipe‘ lagi ke alur berikutnya, kali ini kita menggunakan gulp.dest() yang merupakan perintah untuk mengeluarkan output dari hasil less() tadi ke dalam folder “dist“.  Sampai sini task “styles” telah berakhir.

    So, lets recap, gulp task “styles” akan mencari file .less didalam folder /src/less/ lalu kemudian menjalankan plugin less() dan kemudian output nya dikeluarkan di folder “dist“.

    Oke, sekarang kita akan coba menjalankan task ini. Seperti yang kita sudah buat di gulpfile.js tadi, berarti paling tidak kita butuh 2 folder. folder pertama adalah src/less/ dan folder kedua adalah dist.

    Wait, kenapa src/less dan dist ?

    Lagi, ini adalah personal choice dari saya. saya biasanya membuat 2 folder utama untuk setiap project, src akan berisi file source untuk development. biasanya didalamnya akan ada folder less, js, scss, jade ataupun file source lain yang dipakai untuk keperluan developer.

    Lalu folder kedua adalah dist, dimana folder ini adalah untuk dibagikan (distribution) kepada enduser atau orang lain yang tinggal pakai, gak perlu kompilasi dan lain-lain. Biasa disebut file production.

    Tentu saja, kamu bisa pakai struktur folder sesuai selera, tinggal sesuaiin aja path yang ada didalam task tadi.

    Oke, balik ke less tadi, sekarang kamu bisa testing buat file less buat dikompilasi dengan menggunakan gulp. Saya gak akan menjelaskan untuk dan apa itu less kali ini, so kamu bisa lihat http://lesscss.org atau yaudah deh, kamu bisa download contoh file less sederhana di sini.

    Simpan file less tadi di folder src/less, setelah itu kembali ke command line, sekarang kamu bisa menjalankan perintah

    $ gulp styles

    Akan muncul sedikit keterangan bahwa task sudah berhasil dijalankan, dan jika kamu check di folder dist mu, akan muncul file css baru sesuai nama file less tadi.

    Oke, cukup, kalau kamu gagal, tidak menemukan file css hasil kompilasi di folder dist mu, maka kamu harus berhenti disini, dan check ulang keatas untuk melihat apa yang terlewat.

    Minify file CSS

    Kalau task styles mu sukses dan menghasil file CSS di folder dist, maka selanjutnya kita akan mencoba menambah ‘pipe‘ baru untuk lebih mengoptimalkan CSS yang akan di generate. Kita akan menambahkan minify.

    Minify adalah mmm masa kamu gak tau sih, itu versi mini dari file source code, biasanya dengan membuang karakter yang gak perlu (seperti spasi dan line break atau ‘enter’) atau juga komentar. Hasilnya, akan membuat file lebih kecil dan ringan untuk di load di website mu.

    Pertama install plugin (lagi) gulp-cssmin.

    $ npm install gulp-cssmin

    Setelah itu, kita load di gulpfile.js sama seperti sebelumnya.

    var cssmin = require( "gulp-cssmin" );

    Oke, lalu kita tambahkan ‘pipe‘ baru kedalam task styles tadi, sehingga task styles tadi akan menjadi seperti ini.

    gulp.task("styles", function(){
    
         gulp.src( "src/less/*.less" )
                   .pipe( less() )
                   .pipe( cssmin() )
                   .pipe( gulp.dest( "dist" ) )
    });

    Jadi setelah dikompilasi menggunakan less() akan di lanjutkan dengan cssmin() sebelum  menuju pipe terakhir. Jika sudah, kamu bisa coba lagi dengan menjalan  gulp styles  lagi di command line mu, dan kali ini isi file CSS didalam folder dist mu akan terlihat lebih ‘semrawut’ 😀 dan file size nya harusnya menjadi lebih kecil dari sebelumnya 😉

    Concat Javascript

    Saya gak ketemu bahasa indonesia yang lebih tepat dari concat / concatenation, prinsipnya adalah menyambungkan beberapa hal menjadi satu kesatuan secara berurutan, dalam hal ini kode javascript.

    Ok, kembali ke command line untuk install plugin gulp-concat

    $ npm install gulp-concat

    Setelah terinstall, seperti sebelumnya, kita load dengan menggunakan require.

    var concat = require( "gulp-concat" )

    Lalu kita akan buat task untuk concat ini dengan nama “scripts“.

    gulp.task( "scripts", function () {
        gulp.src( [
                      "src/js/satu.js",
                      "src/js/dua.js"
                  ] )
            .pipe( concat( "scripts.js" ) )
            .pipe( gulp.dest( "dist" ) );
    } )

    Sedikit berbeda dari sebelumnya, plugin concat bisa menggunakan lebih dari 1 source ( kalau cuma 1 source, gak perlu di concat lah 😀 ). File yang akan di concat, dimasukkan kedalam gulp.src sesuai urutan kebutuhannya.

    Lalu, kita akan melakukan concat dengan perintah concat(xx) dimana xx adalah nama file output yang diinginkan, saya memberi nama “scripts.js“.

    Dan seperti sebelumnya, task diakhiri dengan “pipegulp.dest ke folder “dist”.

    Berikutnya, untuk nyobain, buat dulu file satu.js dan dua.js di folder src/js, isi dengan sample code javascript mu, jika sudah cobain jalankan di command line mu.

    $ gulp scripts

    Setelah itu sekarang mestinya di folder dist mu, bakal ada file scripts.js yang merupakan gabungan dari satu.js dan dua.js.

    Tinggal masukin jquery dan pluginnya ( eh masih pake jQuery? 😀 ) di folder src/js mu lalu di concat jadi 1 file compact + kamu bisa minify dengan https://www.npmjs.com/package/gulp-uglify supaya tetep mini.

    Gulp Watch

    Kalau kamu perhatikan, maka kita akan menjalankan gulp styles dan gulp scripts untuk setiap kompilasi ataupun concat yang mana ini bakal ribet, nah sebagai automator tool mestinya ini berjalan secara otomatis, oleh karena itu, ada yang namanya gulp watch. Gulp watch adalah fitur untuk membuat gulp selalu melihat perubahan file secara real time ketika ada perubahan file (menyimpan, menghapus atau mengganti file).

    Oke sekarang kita akan buat task bernama “default” dengan kode sebagai berikut

    gulp.task( "default", [
        "styles",
        "scripts"
    ], function () {
        gulp.watch(
            "src/less/*.less", [ "styles" ]
        );
     
        gulp.watch(
            "src/js/*.js", [ "scripts" ]
        );
    } )
    

    Kode diawali dengan

    gulp.task( "default", [     
    "styles",     
    "scripts" 
    ], function () {
     .. 
    })

    Kode tersebut untuk menset task default, agar ketika gulp default di jalankan, lakukan juga task styles dan scripts.

    Lalu berikutnya di dalam function, ada gulp watch.

        gulp.watch(
            "src/less/*.less", [ "styles" ]
        );
     
        gulp.watch(
            "src/js/*.js", [ "scripts" ]
        );

    Sampai disini mestinya kamu sudah familiar dengan ini, intinya gulp akan melihat 2 tipe file, less di folder src/less dan js di folder src/js lalu menjalankan task styles dan scripts.

    Cukup sampai disitu, sekarang kamu bisa mencoba menjalankan gulp di command line

    $ gulp

    gitu doang?

    Yep, tidak seperti sebelumnya, dimana kamu mesti memasukkan nama task setelah perintah gulp (contoh: gulp styles, atau gulp scripts) kamu cukup masukkan gulp dan gulp akan secara otomatis mencari task yang bernama “default“.

    Lalu gulp akan berjalan tapi tidak seperti sebelumnya, gulp gak akan berhenti, gulp bakal tetep running sambil nunggu ada perubahan di file less dan js. Setelah itu kamu bakal bisa editing file less dan js seperti biasa dan gulp akan mengurus untuk kompilasi dan concat mu.

    Oke itu tadi contoh sederhana penggunaan gulp, kalau kamu main-main ke npmjs.org dan search gulp maka akan ketemu banyak plugin yang bisa kamu pakai dan kreasikan sesuai kebutuhan. Contoh keren plugin gulp lainnya seperti :

    • gulp-git, buat berinteraksi dengan git.
    • gulp-image, buat optimasi images, jadi file-file gambar akan di minify supaya lebih kecil ukuran file nya.
    • gulp-ftp, buat otomatis upload file ke server ketika menyimpan file,
    • gulp-livereload, supaya setiap menyimpan file, browser mu langsung refresh
    • tentu saja, gulp-sass, buat kompilasi file sass

    Dan masih banyak plugin gulp lainnya yang bisa di kreasikan untuk membuat development menjadi lebih terotomatisasi.

    File gulpfile.js diatas bisa dilihat versi komplit nya disini.

  • Pengalaman saya bekerja pada digital creative agency lokal

    Sebenarnya saya agak bingung apa sebutan yang lebih tepat untuk “mereka” ini. Beberapa menyebut digital agency, atau juga creative agency, atau digital marketing agency, atau lainnya, tapi setidaknya semua punya kesamaan, kalau di googling “digital agency” pada muncul semua 🙂 Ceritanya selama periode 2012 – 2015 lalu, saya bekerja sebagai web developer pada salah satu…

    selanjutnya

    Sebenarnya saya agak bingung apa sebutan yang lebih tepat untuk “mereka” ini. Beberapa menyebut digital agency, atau juga creative agency, atau digital marketing agency, atau lainnya, tapi setidaknya semua punya kesamaan, kalau di googling “digital agency” pada muncul semua 🙂

    Ceritanya selama periode 2012 – 2015 lalu, saya bekerja sebagai web developer pada salah satu software house yang mana kami menjadi vendor untuk beberapa digital agency. Kebanyakan projek yang dikerjakan adalah membangun aplikasi website yang tujuannya untuk mempromosikan brand, produk, ataupun kegiatan dari brand-brand terkemuka di Indonesia.

    Baca juga:


    It’s Fun!

    Sebagai programmer, bekerja dengan creative agency itu “sedikit menyenangkan”, kalau kamu biasa bekerja untuk membuat aplikasi yang sifatnya seperti database, sistem informasi, atau sekedar web profile sederhana, maka projek dari digital agency ini biasanya lebih segar dan menyenangkan, selalu ada new challenge di setiap projek, kebanyakan berupa mini-gamification memanfaatkan social media, misal : saya pernah dapet projek bikin ‘lomba-lari-berwarna’ virtual dimana kamu akan berlomba lari dengan orang lain, nah gimana caranya kamu bisa lari? dengan ngetwit dengan hashtags yang sudah di set, jadi semakin banyak kamu ngetwit,  karakter kamu larinya bakal makin kenceng! seru!

    Termasuk juga design yang dikerjakan, karena sifatnya advertisement, kebanyakan website-website yang di handle punya design yang unik dan keren gak monoton, jadi seger deh ngerjainnya.

    Banyak pelajaran 

    Pernah suatu ketika dapat projek yang luar biasa nge-hits, dalam 1 hari bisa sampai 100.000 entry data masuk! dalam 2 minggu projek berjalan, ada 2 juta lebih data yang masuk dan MySql pun sampe agak ngos-ngos-san, fiuh. Pernah juga dapet projek ‘jual-cepat’ salah satu provider smartphone di indonesia, yang mana target nya dalam seminggu ada sekitar 2000 calon pembeli, tapi ternyata setelah masuk TV nasional dan di promoin oleh Raffi Ahmad, Boom, hari pertama langsung ada sekitar 3000an orang yang daftar! data membludak, gak sedikit yang komplain website nya down.

    Dari sini saya dan tim belajar untuk manajemen lompatan visitor yang tiba-tiba membludak, menangani data yang super besar, ada banyak hal teknis dan non teknis yang bisa di ambil pelajaran dari setiap project. Hal kecil bisa menjadi masalah yang akan jadi bumerang dan menyerang brand yang kami handle (dan itu bahaya bro, bisa gak dibayar, atau malah di blacklist :D).

    Yang gak enak

    Oke, cukup yang seger dan enak-enak nya. Bekerja dengan digital agency itu cukup lumayan menyita waktu hidup. Saya yang hanya sebagai vendor pun ikut merasakan, dimana deadline yang kadang begitu mepet, atau tengah malam masih on project, dan hal-hal lain yang bikin cukup illfeel.

    Pernah suatu ketika dapet project yang mesti selesai dalam waktu 3 hari! belum cukup? 3 hari itu adalah jumat, sabtu, minggu, dan senin pagi sudah mesti launch. fuuuu. Anak agensi pasti menganggap saya cupu, saya sudah sering dapet email revisi lewat dari jam 11 malam bukan cuma di hari kerja, jadi masa baru gitu sudah ngeluh, iya lah, problem nya adalah kerja ala agency super, bayaran ala software house kecil-kecilan. *oke ini di luar konteks 😀

    Kadang juga kerjaan yang di dapet bertubi-tubi, di satu sisi bersyukur karena dapet projekan baru, di sisi lain mikir, lha yang kemarin aja belum kelar. Sering 1 orang menghandle 3-4 project barengan, dan masih mending kalau pada mau antri yang tertib, kebanyakan kasus pada gak mau antri, semua mau barengan. Seringkali, sambil nunggu uploading 1 project, switch ngerjain projek lain. Sekali lagi, para anak agensi pasti bakal bilang cupu, karena saya sering denger kebanyakan mereka ngerjain 5-6 project barengan dalam 1 waktu. *atau itu hanya mitos senior saya!

    Kesimpulan

    Dari hampir 3 tahun saya bekerja dengan digital agency, menangani brand-brand besar di Indonesia, rasanya itu menyenangkan, banyak hal baru yang terus di dapet, level kreatifitas ikut naik walaupun kebagian kerja cuma koding. Tapi ya gitu, overwork jadi sudah biasa, kamu mesti bener-bener serius dalam menjaga kesehatan.

  • Chrome Dev Summit 2015

    Kalau kamu subscribe berita-berita web teknologi, kamu pasti tau hari ini adalah hari dimana google chrome mengadakan event Chrome Dev Summit.

    selanjutnya

    Kalau kamu subscribe berita-berita web teknologi, kamu pasti tau hari ini adalah hari dimana google chrome mengadakan event Chrome Dev Summit.

    (lebih…)

  • Referensi belajar javascript di Github

    Referensi belajar javascript di Github

    Beberapa tahun belakangan teknologi javascript makin beragam dan semakin luas penggunaannya bukan cuma dalam pengembangan website atau sekedar pemanis tampilan. Ada NodeJS dengan NPM nya bener-bener membantu web developer untuk mencari library, framework atau sekedar tools untuk pengembangan web, rasanya mau kebutuhan apapun ada versi JS nya yang siap digunakan. Bahkan disini kamu bisa lihat ada…

    selanjutnya

    Beberapa tahun belakangan teknologi javascript makin beragam dan semakin luas penggunaannya bukan cuma dalam pengembangan website atau sekedar pemanis tampilan.

    Ada NodeJS dengan NPM nya bener-bener membantu web developer untuk mencari library, framework atau sekedar tools untuk pengembangan web, rasanya mau kebutuhan apapun ada versi JS nya yang siap digunakan. Bahkan disini kamu bisa lihat ada package JS buat install linux.

    https://twitter.com/sadserver/status/642111917163724800

    Saya sendiri setelah menggunakan PHP sepanjang masa kerja, sudah sampai di titik dimana rasanya sudah “cukup”, Laravel dan WordPress sudah cukup untuk berbagai macam kebutuhan dan semuanya sudah serba gampang.

    Saat ini saya lagi dalam masa “belajar-js-lebih-detail” setelah beberapa kesempatan menggunakan beberapa framework library seperti AngularJS baik untuk standalone app, atau pun dengan menggunakan tools lain seperti IonicJS  untuk keperluan pembuatan aplikasi mobile sederhana, saat ini juga lagi in progress pengenalan dengan meteorJs, framework JS yang menarik menurut saya, karena sifatnya fullstack JS, full Javascript dari sisi server dan client.

    Untuk itu, saya ngumpulin beberapa link penting yang dibutuhkan untuk mengenal lebih dalam trend JS saat ini. Link-link berikut adalah link menuju beberapa repository yang ada Github yang penting banget buat di watch. Kelebihan dari repository yang ada di list ini adalah sering di update, baik penambahan konten atau pun diperbaiki oleh banyak orang. Jadi harusnya sih lebih update dan terjamin.

    Awesome Javascript

    Pertama rasanya penting untuk bookmark atau set “watching” github repo satu ini, ada banyak tools lengkap disini mulai dari Package manager, UI development, testing dan lain-lain.

    Airbnb Javascript Style Guide

    Repository dari airbnb ini bagus banget buat kamu yang mau koding Javascript secara lebih profesional. Mereka ngebuat atau lebih tepatnya mengkoleksi tips dan “rule” gimana sih nulis Javascript Code yang baik dan rapi. Kontributor repository nya juga banyak jadi ini bukan sekedar styleguide Airbnb saja.

    AngularJS Style Guide

    Sama, ini juga style guide, alias panduan menulis yang baik dan rapi, khusus untuk AngularJs. Gak ada alasan pasti sih kenapa mesti ngikutin repository dari orang ini, tapi list nya sangat lengkap dan ada banyak kontributor nya jadi ya mestinya gak sembarangan

    Essentials Javascript Links

    Ini hampir sama sih dengan awesome javascript di atas, bedanya ini di kelola oleh Eric Elliott, penulis buku-buku javascript dan salah satu orang keren di dunia Javascript. Di repository ini juga ada banyak referensi buku-buku javascript.

    Gitbook Javascript

    Ini semacam ebook untuk belajar javascript dari Gitbook yang bisa di baca online dan gratis. Pembahasannya dasar-dasar pemrograman javascript, macam variabel, loop, condition, function, object, pokoknya lebih kearah level programmer pemula.

    You Don’t Know JS

    Kalau ini kumpulan serial ebook dari getify. Saat ini sih ada 5 ebook yang bisa di baca secara gratis via online. Level bacaannya juga sudah level mediocore jadi kalau belum terbiasa dengan istilah-istilah di javascript bakal sedikit bingung.

    Bonus : jstherightway

    Ini bukan di github sih, tapi bagus juga ini koleksi link dan tutorial nya buat yang pengen lebih banyak referensi bacaan seputar javascript. Di koleksi ini juga terdapat koleksi podcast, ada juga orang-orang yang “harus” kamu follow di dunia javascript.

    Bonus : Javascript.com

    Bonus lagi, rasanya gak lengkap aja kalau bahas referensi belajar Javascript tanpa membawa web ini,  disini kamu bakal belajar Javascript secara interaktif langsung di browser, dan juga ada newsletter yang berisi berita, tips, tutorial seputar Javascript yang sangat update sekali. Sayang banget kalau ketinggalan info disini.

    Pastinya ada lebih banyak lagi link referensi belajar javascript dari google, seperti codecademy ataupun website elearning lainnya, jadi rasanya gak akan kehabisan bahan untuk di pelajari. Tinggal nunggu produk nya saja 🙂