Sunday, December 1, 2013

Beberapa situs untuk highlighter syntax buat blogger.com


Buat yang suka bikin tutorial pastinya butuh banget pembeda antara text untuk menjelaskan dan syntax program yang kita butuhkan. Mudahnya mungkin menggunakan "quote", tapi kalo di entry post blogger (dan kayaknya semua blog) susah banget memasukkan beberapa karakter yang digunakan oleh bahasa pemrograman, harus kita encode menjadi karatker HTML, kalo nggak ya nggak bakal kebaca.

Gue juga udah mulai punya waktu senggang buat nulis tutorial, nulis apa aja yang gue tau soal dunia IT, meski masih terhitung newbie dan belum punya banyak ilmu. Tapi seenggaknya gue mencoba dan menjadi pengingat buat gue sendiri akan teknik-teknik yang mulai gue kembangkan dan gue dapet dari orang lain. Balik ke topik yang tadi, gue mulai nyari-nyari yang namanya software untuk highlighter syntax.

Kemaren yang pertama gue temui adalah dari (om) Gorbatchev di http://alexgorbatchev.com/ , highlighter tersebut dibangun dari beberapa bahasa pemrograman (javascript lebih banyak sih), jadi kita tinggal download atau minjem di hostingan beliau script-script tersebut, tinggal copy paste di template dan voila! Script kita yang didahului dengan tag pre akan di highlight di postingan.


Tapi sialnya ya itu deh, gue bingung dengan penempatan beberapa parameter di template blogger gue. Jadinya ya berantakan gitu tiap kali mau masukin entry baru. Dibagian compose nggak mau "word wrap" mode on, jadi gue nulis baris ya lolos aja gitu kesebelah kanan. Hahaha. Gue yang ngerasa kurang nyaman akhirnya nyari-nyari lagi syntax highlighter yang lain dan ketemu lah di http://hilite.me . Berbeda dengan yang sebelumnya, hilite.me nggak pake ngedit template blogger dan hanya mengubah karakter-karakter spesial dalam bahasa pemrograman menjadi karakter html.

Cara menggunakannya cukup mudah (meski itungannya cukup merepotkan disisi kita mesti bolak-balik antara blogger.com - hilite.me, sih), kita tinggal memasukkan script seperti gambar berikut dan menekan tombol highlite! dan script kita secara otomatis akan di diubah kedalam format seperti pada kolom hasil proses HTMLnya seperti contoh gambar berikut :

hilite.me


Satu lagi ada github.com. Prinsipnya sama dengan hilite.me, tapi punya kelebihan tersendiri seperti kita bisa menyimpan script-script tersebut untuk digunakan nanti plus mengajak teman yang sudah tergabung di github.com untuk mengerjakan script tersebut sebagai proyek kroyokan. Hehe. Ini kelebihan yang bagus untuk programmer yang punya team untuk mengerjakan sebuah proyek tanpa harus copy paste script yang sedang dikerjakan plus tiap perubahan dari user akan disimpan perbedaannya kedalam sebuah log sehingga nggak perlu takut kalo misalnya nanti script tersebut rusak karena masih ada versi dan revisi sebelumnya.

Meski kelebihannya enak banget, tapi ngenesnya ini gist di Github.com nggak mewarnai syntax (harusnya bukan dibilang syntax highligter sih yak. haha), tapi hanya menyediakan form buat script nemplok di post. Sangat disayangkan memang, tapi gue rasa ini cukuplah, ketimbang pake tag quote HTML. Hehe.

Kalo nggak mau sign-up menjadi member github juga nggak perlu khawatir sih. Untuk membagi script secara publik (atau Gist Mode), Github menyediakan mode anonymous untuk highlight syntax yang kita inginkan dengan catatan, tidak bisa diedit oleh team (ya karena nggak jadi member itu loh!), dan gue rasanya cuma bisa untuk script yang ukurannya kecil karena kalo yang ukurannnya gede mesti bayar. Haha.

Untuk memasukkan scriptnya ke postingan di blogger justru lebih gampang di github daripada hilite.me karena script tersebut cukup kita "embed" dengan link yang disediakan github, jadi nggak perlu copy paste semua script hasil encode ke HTML seperti gambar dibawah ini  :



Oh iya, embed dari github berupa file js seperti contoh dibawah ini :



Dengan kelebihan dan kekurangan masing-masing syntax highlighter, untuk kedepannya gue pake yang dari github.com aja (meski nggak berwarna. Hiks!)

Friday, November 29, 2013

Coba highlighterSyntax by gorbatchev

<?php
$example = range(0, 9);
foreach ($example as $value)
{
 echo $value;
}

Asyyiiikkk... Akhirnya pasang highlighter buat syntax! Jadi yang bertamu disini lebih enak ngeliat script yang gue tulis.
Caranya gampang kok, coba deh liat-liat di http://alexgorbatchev.com/SyntaxHighlighter/ atau cari tutorial-tutorialnya di google, banyak kok (meski pake bahasa inggris semua. hehe).
Tapi nggak enaknya ya halaman insert entry gue jadi nggak otomatis mengikut besaran form inputan dari blogger. Emmm, istilahnya kayak gimana ya. Pernah buka notepad dengan mode Word Wrap nya dihilangkan? Ya semacam itulah form entry post gue sekarang. Haha. Menyebalkan. I'll find out latter, ini juga nggak terlalu ngeganggu kok. Apalagi biasa ngedit via notepad *uhuk* :p

Friday, November 1, 2013

Yuhuuuuuu! Lama nggak coding disini :)

Terakhir posting 12 juli 2012. Udah lebih setaon cuy! Wakakakakak. Kagok dah ini mau posting lagi. Tapi nggak apaaaaaa. Kepergian gue selama setaon ini nggak sia-sia karena gue (sendiri) udah ngerasa lebih mantap dibidang per-website-an dan per-photoshop-an *halagh* :p

Beberapa diantaranya udah terbukti dengan event aseli (aseli bikin puyeng, aseli bikin sebel tapi aseli juga hasil rejekinya. Hehe). Mungkin next time gue berbagi pengalaman itu, sekarang lagi sibuk. Nggak cuma sibuk skripsi (eh, si dudul masih skripsi aje. Haha. Tapi doain akhir tahun ini selesai yak! Aaammiiinn), gue juga sedang (sekarang ini) sibuk nyiapin modul untuk kursus "Perancangan Website dan Android" karena tersangkut rejeki dari dosen yang menawari jadi asisten untuk proyek kursus besar-besaran ini dari pihak PDAM Mataram.

Sayangnya cuma berstatus asisten sih, padahal soal pre-test sama modul kite yang bikin cuy :( Kepikiran kenapa nggak sekalian di jadiin tutornya aja gitu, wong modul juga kita yang bikin. Sayangnya nggak bisa karena pihak sana mintanya diajarin sama dosen, masih belom percayaan kali yah diajarin sama mahasiswa (apalagi mahasiswinya dudul kayak gue. hahaha). Tapi ya sutralalalala, gue seharusnya alhamdulillah juga tetep dapet rejeki juga dari itu ketimbang jadi asisten doank :p

Next time gue pengen modul ini juga di bagi-bagi disini dalam bentuk troubleshooting. Biar yang lagi mumet websitenya error-error bisa ada temennya (ikutan mumet. hahaha).

Salam,

Nina Suhari ;)

Monday, July 2, 2012

PHP pun move on!

Emange orang patah hati aja harus move on dari masa lalunya yang kelam dan suram. Begitu juga bahasa pemrograman yang paling banyak di pake seantero situs di dunia ini. Yup, apalagi kalo bukan PHP. Mungkin ada yang sudah tau soal ini, tapi suwer kewer kewer nin baru tau soal ini.

Berawal dari nyoba nyari solusi untuk memfilter isi masukan dari form, ngecek pengennya ada yang cuma isiannya angka doank, huruf doank, kombinasi keduanya atau simbol yang lain. Nah, begitu baca buku (sori to say, bukunya ternyata jadul. Haha), buat ngecek beginian ternyata bisa pake fungsi ereg (regular expression kalo gak salah maksudnya) atau eregi (sama dengan fungsi eregi tapi gak case sensitive). Ternyata ya error terus, gini bunyi errornya :



Setelah nanya sama mbah google, ternyata fungsi ereg sudah digantikan (atawa istilah kerennya : deprecated). Baca disini, mulai dari PHP versi 5.3, sudah move on dengan maksud meningkatkan performa terutama biar kompatibel dengan Perl. Nah, sebagai penggantinya, fungsi ereg digantikan dengan fungsi preg_match dengan format string yang sama ("pattern", string).

Nah, disini nin menggunakannya sebagai filter pada hasil inputan text. Maunya username hanya terdiri dari kombinasi angka dan huruf saja, jadi pattern yang nin gunakan adalah [[:alnum]], kalo mau angka saja bisa pake [[:digit]], huruf saja pake [[:alpha]], dan masih banyak lagi yang lain tergantung keinginan. Kalo syarat dalam pattern terpenuhi dalam string inputan text tersebut, maka hasil yang dikembalikan oleh preg_match berupa TRUE, sedangkan kalo ternyata ada simbol lain selain yang ada di pattern, maka preg_match akan mengembalikan nilai FALSE.

Contoh scriptnya kayak gini nih :

$string1 = "nina@suhari";
$string2 = "ninasuhari2";
$cek1 = preg_match("[[:alnum]]", $string1);
$cek1 = preg_match("[[:alnum]]", $string2);

$cek1 akan bernilai false karena dalam $string1 terdapat simbol yang bukan huruf atau angka, sedangkan $cek2 akan bernilai true karena dalam $string2 hanya terdapat kombinasi huruf dan angka.

Dari script diatas, kita bisa membuat script yang mengecek apakah stringnya sudah benar atau gak menggunakan fungsi if-else. Mau tau caranya? Komen aja disini biar nin kasi tau. Hehe.

Ini dia contoh dari program yang nin buat menggunakan pattern [[:alnum]] :
*form*
 


*hasil*
 


Bisa diliat kalo hasilnya salah, karena dari form ternyata masukan username ada tanda petik yang bukan merupakan angka ataupun huruf.

Semoga paham ya. Jadi, kalo nemu buku (dan ngikutin fungsi) yang masih membahas soal ereg atau eregi, brarti bukunya dibuat sebelum PHP 5.3 mulai berkembang. Hehe.

Salam,

- Nina Suhari -

Monday, June 18, 2012

Tips cara aman hapus database MySQL (for dummies)

Lohaaaaaa.. Lama gak update blogspotku tercinta ini. Oh iya, FYI, nin sudah punya website pribadi sekarang. Cek di http://ninasuhari.web.id yah! Isinya masih kosong melompong sih (tampak luar), karena memang cuma dipake dibelakang layar buat uji coba sistem informasi yang sedang nin buat untuk skripsi nin.

Nah, berhubungan dengan masalah sistem informasi ini, ngegodok scriptnya masih uji coba di localhost (alias di laptop sendiri - offline tentunya) dan sesekali di lempar ke server untuk diliat uji kinerja. Kesulitan nin temui ketika harus merombak database yang ada diserver karena udah beda jauh dengan database di localhost.

Kesulitan terbesarnya waktu menghapus beberapa tabel yang masih punya link / references dengan tabel lainnya sebagai tabel induk. Kenapa nin buat references? Ya karena kalo update dan delete data akan lebih mudah dan tetap terjaga integritas datanya (ceile, integritas apaan yah, pokoknya datanya tetep update gitu). Database MySQL yang menggunakan integrasi references hanya bisa didapat ketika menggunakan engine InnoDB. Dengan ini, ketika data di tabel induk dihapus, akan ada action tertentu sesuai dengan kebutuhan kita seperti apakah data di tabel references akan ikut terhapus, di kosongkan ataupun aksinya akan dilarang / restrict (siapa tau kan gak sengaja kehapus data yang vital).

Waktu nin terapkan bahwa ketika data induk dihapus maka data yang ada di tabel references akan ikut terhapus. Nah, siyal nya kemaren, tanpa pikir panjang saat akan menghapus tabel yang ada di dalam database server nin lakukan dengan serentak (baik itu tabel dan beberapa view), alhasil ada beberapa tabel yang tidak bisa terhapus karena terbentur aturan tadi, tabel itu adalah beberapa tabel yang punya hubungan induk dan reference nya.

Beberapa kali nin utak-atik untuk menghapus tabel yang membandel ini, mulai dari mengosongkan isinya, trus menghapus relasi reference nya. Setelah segala cara dipakai, akhirnya baru paham kalo MySQL benar-benar menjaga integritas datanya jika menggunakan aturan di engine InnoDB. Keren banget.

Jadi, biar besok-besok gak capek mesti ngutak-ngatik database yang tabel-tabelnya gagal terhapus saat di drop massal, hapus dulu tabel-tabel reference yang mengambil eksitensi data yang ada di tabel induk. Habis itu baru deh dibasmi semua tabel induknya. Gak bakal ada masalah lagi deh. Oh iya, kalo di databasenya ternyata ada view, sebelum menghapus tabel reference, hapus dulu tabel view yang sangat bergantung pada tabel-tabel yang ditampilkan oleh view.

Sekian tips dari mahasiswidudul kali ini. Salam dummies :D

Friday, April 20, 2012

[KoneksiHP] Wifi gratis VS GPRS berbayar (How to turn off GPRS on Nokia C3)

Ceritanya, mahasiswidudul lagi norak sama yang namanya aplikasi Whatsapp. Sebenarnya noraknya udah lama, cuma karena dulu belom punya koneksi gratis (dirumah pasang wireless speedy cuy!), megap-megap buat terusin pake applikasi whatsapp yang minta koneksi terus-terusan dan makan pulsa (pelit pulsa.haha)

Meski sekarang udah sign up paket internet buat hape (dan bisa ber-whatsapp-ria sepuasnya), tapi sayang banget kalo koneksi gratis dirumah gak dimanfaatkan. Kan lumayan tuh, kalo diluar tetap terkoneksi, dirumah gratissss. Nah, masalahnya, meskipun sudah dapet koneksi WiFi, GPRS di hapeku susah banget dimatiin (in case, hapeku Nokia C3), awalnya bingung karena preference Whatsapp kayaknya udah dikutuk dari sononya lebih memilih koneksi GPRS ketimbang WiFi (lebih parah, gak bisa di tukar secara otomatis ke WiFi).

Setelah wara-wiri nanya mbah google, nemulah cara kayak berikut untuk mematikan koneksi GPRS di hape Nokia C3 (yang pada dasarnya matiin total koneksi gprs dan dipaksa beralih ke koneksi WiFi yang didapat) :

1. Pilih Menu --> Settings --> Configuration --> Personal Settings, untuk membuat settingan sesuai keinginan kita. Nah, di tahap ini, bikin fake connection setting (ato bahasa gaulnya : setting koneksi palsu *halah*).

2. Setelah masuk ke Personal Setting, pilih Add New untuk untuk membuat settingan baru. Ada 5 macam settingan tersendiri untuk kategori berikut : Access Point, Web, Synchronisation, Streaming dan Multimedia Message. Nah, yang paling berpengaruh menggunakan akses GPRS adalah Access Point dan Web (kalo mau tambah yakin gak terkoneksi GPRS, setting saja semua).

3. Tiap kategori disetting dengan gak inputin apa-apa, cuma mengubah "Use preferred access pt" menjadi NO. Jadilah fake connection setting yang gak mengkoneksi GPRS sama sekali.

4. Setelah semua disetting, pindah lagi ke Configuration Settings dan pilih Default config. settings kemudian pilih Personal Config (settingan yang sudah kita buat tadi), restart hape, cari koneksi Wifi (kalo Wifi nya masih bisa jalan, karena kita tidak "memblokir" koneksi jenis ini), lalu VOALA!! Jadilah satu-satunya koneksi yang ada adalah WiFi. Hehe.

Oh iya, karena Multimedia Message (MMS) hanya terkoneksi saat ada kiriman pesan yang datang, lebih baik gak usah dibikinkan setting untuk blokir, siapa tau yayangnya kirim-kirim MMS (eheeemmm) :p

Dan untuk hape yang lain, pada dasarnya teorinya sama (meski pilihan menu nya berbeda) yaitu membuat settingan koneksi "kosong". Semoga bermanfaat dan selamat mencoba! ^^

Saturday, April 14, 2012

Plagiarisme Sistem Informasi

Baru kepikiran soal ini waktu ikut seminar hasil salah satu teman angkatan di kampus. Sistem informasi (berbasis apa saja, baik itu berupa software stand alone maupun berbasis web), sepertinya rentan dicap plagiat (hasil contekan). Karena meskipun isi sistem berbeda, tapi jika dari judul hampir mirip kemungkinan akan dicap menirukan sistem yang sudah ada. Padahal sih, meskipun sistem hampir sama, baik judul dan ide, isi sistem gak mungkin sama (ya kecuali sistemnya di copy paste! Hehe).

Kenapa bilang gak bakal sama? Misalnya saja seperti ini, nin bikin sistem informasi untuk sebuah rental buku, dan si A juga bikin, idenya sama, judulnya pun pasti bakal nyerempet-nyerempet sama toh? Nah, yang bedain tentu aja analisa rancangan sistem (ini kalo yang bikin sistem informasi pake analisa rancangan, ada juga loh yang bikin sistem informasi *abal-abal* gak pake rancangan *nunjukdirisendiri), plus coding yang tentunya sangaaaaaaatt-sangaaaaaaaaattt berbeda.

Kalo hanya judul dan ide yang sama, menurut nin masih bukan termasuk plagiat, karena isi dalemnya sistem gak sama. Nah, ini yang jadi perdebatan di seminar hasil teman nin tadi, karena untuk judul skripsinya ternyata terlebih dulu sudah dikerjakan oleh sekelompok dosen, dan sudah masuk ke salah satu badan untuk ngurusin penelitian di kampus.

Wuuiiihhhh... Jadi deg-deg seeerrr tadi ketika salah satu dosen penguji meminta teman nin tadi untuk menunda seminar proposalnya untuk mendapat pengakuan dari badan penelitian tersebut (BP2F) di kampus bahwa penelitian skripsinya bukanlah plagiat dari penelitian para dosen tersebut. Meskipun akhirnya seminar hasil dilanjutkan dengan catatan penyelidikan skripsi tersebut, masih tetep deg-deg ser ketika ngebayangin seandainya (iihhh.. naudzubillah deh!) temen ku ini harus membatalkan skripsinya karena dianggap plagiat. Hadeuuuhh...

Gak kebayang gimana deg-deg ser nya temen nin tadi, nin yang nontonin aja shock ngedengernya. Hehe. Gak kebayang itu nin, karena nin sendiri skripsinya saat ini juga ngebikin sistem informasi. Celakanya lagi, kalo disuruh ngebuktiin keaslian dari sistem informasi nin, mau dapet klarifikasi dari mana?? Lah wong temen nin tadi aja karena skripsinya tentang sistem informasi untuk akademis dan berhubungan dengan kampus, ada tempat untuk meminta klarifikasi, sedangkan sistem informasi yang nin buat bukan berhubungan dengan akademik dan gak punya naungan untuk memverifikasi hasil sistem informasi yang nin buat ini bukan hasil dari plagiat dari mana pun. Tuduhan nin plagiat bisa saja, karena sistem informasi yang nin buat ini sepertinya sudah umum dan bukan hal yang baru dibuat.

Tapi meskipun banyak, nin cuma yakin, sistem informasi yang nin buat ini unik sehingga gak mungkin bakal dicap plagiat karena nin sendiri membangunnya dari nol dan tidak merujuk pada ide ataupun alur sistem manapun :D

Oh iya, kalo ada yang tau dimana kita bisa mendaftarkan hak cipta kita berupa sistem informasi, kasi tau yak.. mohon bagi infonya.. Hehe ^^


Ps: ternyata di mataram mall kalo weekend rame bener yak *nulis di mcd mataram mall* :D