nyaroan.com

  30 AGUSTUS
2017  11.12

menunggu dosen wali, sendiri.. {:(}

Status KOMENTAR

  28 AGUSTUS
2017  21.44

Jadikanlah sabar dan shalat sebagai penolongmu. [Al Baqarah/2 : 45]

Status KOMENTAR

  25 AGUSTUS
2017  21.12

Hosting Gratisan PHP di HEROKU

Jika kamu ingin mencoba-coba menggunakan hosting menggunakan git dan otomatis mendukung HTTPS sekaligus gratis, maka kamu bisa menggunakan hosting gratis dengan HEROKU.

Tahap Persiapan

Pastikan Anda sudah terdaftar di heroku.com dengan mengakses halaman daftar. Isi inputan dan daftar dan CREATE FREE ACCOUNT. Setelah itu, Install heroku toolbelt yang mana berisi heroku CLI, dan git. Sesuaikan dengan sistem operasi serta arsitektur komputer / laptopmu. Setelah heroku toolbelt ter-install, buka command prompt dan ketikkan perintah berikut:

heroku login

Kemudian masukkan email dan password yang Anda gunakan saat mendaftar di heroku.

Langkah berikut ini adalah Install composer untuk manajemen dependencies di PHP. Instalasi composer sebenarnya opsional karena sebenarnya yang kita butuhkan adalah adanya file composer.json. Heroku akan mengenali aplikasi PHP dengan mendeteksi keberadaan file composer.json ini.

PHP Hello World

Buat folder baru untuk aplikasi yang akan dikerjakan lalu ketikkan perintah di git bash:

$ git init

Langkah berikut ini jika kamu sudah menginstall composer: buat file composer.json dengan menggunakan perintah:

$ composer init

Kemudian ikuti perintah yang muncul saat perintah diatas dihasilkan. Untuk dependency dan dev dependency dapat diabaikan (jawab no). Pastikan bagian yang memasukkan folder vendor ke .gitignore Anda jawab yes.

Setelah file composer.json terbuat, maka buat file index.php dengan mengetikkan perintah

$ touch index.php

Edit file index.php dengan teks editor kesayanganmu dan masukkan kode berikut: (hanya untuk contoh)

<?php

echo 'Hello World';

?>

** Pastikan terdapat tiga file yaitu composer.json, .gitignore, dan index.php di dalam folder kerja.

Heroku Create

Ketikkan perintah untuk membuat aplikasi di heroku:

$ heroku create

Heroku akan meng-generate nama acak sebagai lokasi / url aplikasi Anda sekaligus memasukkan git remote ke dalam git.

Git Add, Commit, Push

Lakukan update git terhadap beberapa file yang kita buat dengan perintah berikut:

$ git add .
$ git commit -m "tambah file index, composer"

Jika sudah, lakukan push untuk mengupload file local ke aplikasi di heroku dengan perintah:

$ git push heroku master

Tunggu beberapa saat, heroku sedang men-deploy aplikasi.

Membuka dan Mengakses Aplikasi

Untuk melihat hasilnya aplikasi yang kita buat, Anda dapat mengetikkan manual di address bar browser Anda alamat URL yang dihasilkan oleh heroku (contoh: https://dry-taiga-84751) atau dengan mengetikkan perintah berikut di console:

$ heroku open

Tutorial KOMENTAR

  25 AGUSTUS
2017  14.34

19.jpg

Infografis KOMENTAR

  22 AGUSTUS
2017  17.02

Cukuplah Allah sebagai tempat diri bagi kami, sebaik-baiknya pelindung dan sebaik-baiknya penolong kami

Status KOMENTAR

  21 AGUSTUS
2017  11.43

Web Semantic (Antara Ada dan Tiada)

Saya akan membahas tentang Semantic Web, sesuatu yang ada di dalam teknologi web namun seolah tidak pernah terdengar atau dikenal.

Semantic Web diajukan oleh Tim Berners Lee, penemu WWW, bapak web dunia. Beliau merasa bahwa informasi di web tidak seharusnya hanya dipahami oleh manusia saja tapi juga harus bisa dipahami oleh mesin / komputer. Lalu bagaimana cara mesin memahami informasi yang ada di web? Salah satunya adalah dengan meng-"Thing" pada seluruh konsep yang ada di dunia. "Thing" ini dianggap sebagai Class yang mewakili sebuah konsep atau pengetahuan, memiliki atribute, sifat, serta memiliki hubungan dengan konsep lain di dunia. Prinsip dasarnya hampir sama dengan dengan konsep OOP (dan istilah yang digunakan juga ada yang sama, misalnya istilah Class, Instance, Object Property, dsb).

Contohnya konkretnya adalah misalkan kita membuat sebuah konsep "Thing" / Class Manusia. Kita bisa dengan mudah mengetahui konsep manusia yaitu dia bernafas, makan, bisa berpikir, bisa mengakses internet, dsb. Tapi komputer tidak akan tahu konsep ini jika kita tidak membantu komputer untuk memahaminya dan semantic web adalah salah satu cara kita mengajari komputer tentang sebuah konsep. Informasi yang tersedia di web sangatlah banyak dan luas, beragam kata dan bahasa bisa mewakili konsep yang sama, dan ini mungkin salah satu alasan Berners Lee mengajukan konsep semantic web agar informasi yang banyak tadi dapat dipahami dan dioleh oleh komputer untuk kemaslahatan umat manusia {:D}

Dari konsep "Manusia" tadi kemudian kita lanjutkan dengan membuat class / konsep Laki-laki dan Perempuan yang merupakan subclass dari Class Manusia. Setelah itu kita buat class Suami yang merupakan subclass dari Laki-laki sekaligus otomatis menjadi subclass dari Manusia. Anggap kita buat Instance dari class Suami dengan nama Bob (Instance adalah objek real dari konsep). Bob sebagai instance dari Suami memiliki istri (Manusia, Perempuan) dengan nama Hana. Jika digambarkan ke dalam graf maka strukturnya adalah seperti gambar berikut:

graf konsep

Banyak konsep yang ada di dunia ini, setiap orang bebas membuat definisi konsep mereka sendiri-sendiri, namun beberapa lembaga penelitian dan pendidikan berusaha membuat aturan dan konsep umum yang bisa dijadikan rujukan dan diperluas ke konsep lain. Rujukan konsep yang saya tahu adalah FOAF (Friend of Friend), Dublincore dan Music Ontology dimana mereka mencoba mendeskripsikan konsep umum dan dapat digunakan oleh orang lain dengan merelasikan konsep ke konsep yang sudah ada. Selain itu W3C juga menetapkan standard bagaimana konsep dipresentasikan yaitu menggunakan RDF, OWL, SPARQL, RIF dan lain sebagainya (*btw, I really hate XML)

Kedengarannya keren dan sangat menjanjikan, semantic web dapat memberikan banyak manfaat bagi umat manusia, contohnya adalah komputer tahu bahwa harimau sameAs tiger, harimau subClass dari Mammals, ikan superClass dari hiu, lagu ini diciptakan oleh itu, lukisan ini digambar oleh itu, foto ini diupload oleh itu, dsb sehingga komputer bisa memberikan informasi yang benar-benar relevan walaupun menggunakan bahasa yang berbeda-beda. Pencarian Google menggunakan prinsip yang hampir sama, ketika kita mencari sebuah kata maka Google menghubungkan dengan konsep yang dekat sehingga dia bisa memberikan anjuran hasil pencarian lain namun masih berkaitan secara konsep.

Namun..., selama bertahun-tahun saya menggeluti web programming baru kemarin saya tahu tentang semantic web (itupun gara-gara ikut mata kuliah RSBP). Kesan saya tentang semantic web adalah ribet, tidak efisien, menghabiskan pikiran dan waktu {:D}. Pertama karena kita harus menggunakan tool seperti Protege untuk membuat RDF/OWL (meskipun coding langsung juga bisa karena RDF/OWL menggunakan XML!). Kemudian meng-query data yang tersimpan menggunakan SPARQL yang katanya fleksibel tapi bagi saya menyulitkan (*mungkin karena sudah "illfeel" dengan adanya XML). JSON LD sebenarnya cukup menjanjikan tapi tidak cukup berkembang dengan baik.

Teknologi ini sepertinya tidak banyak berguna dan bermanfaat secara umum, sehingga sedikit sekali orang yang membahas dan mendiskusikannya. Teknologi ini STUCK!, di StackOverflow stuck, di Github stuck, koding-koding yang ada stuck, koding-koding sudah lama, tanpa dokumentasi, tidak dipelihara (rata-rata 5-10 tahun tanpa update). Jangankan koding, website-website dengan teknologi ini (FoF dan Dublincore) juga nampak usang dan banyak sarang laba-laba disana sini karena lama tidak disentuh {:P}. Bahkan ada resource yang hilang karena tidak dijaga dan akibatnya saya tidak bisa mengimport konsep dari MusicOntology secara keseluruhan (satu konsep hilang, semua konsep musnah...). Saya merasa tersesat hehehe.. tidak ada teman, tidak ada tempat diskusi.

Sepertinya teknologi ini hanya untuk akademisi, dijadikan paper atau penelitian tapi kemanfaatannya entah kemana. Dan mungkin ini bisa disebut "Dari akademisi, oleh akademisi dan untuk akademisi". Jika kamu baru tahu semantic web, tenang saja, kamu tidak perlu galau lalu ikut-ikutan masuk ke topik ini, cukup peneliti di kampus-kampus saja yang menghabiskan waktu dan tenaga mereka di teknologi ini. Bagi saya, Teknologi semantic web, antara ada dan tiada...


**Jika ada ada pendapat silakan kirim di bagian komentar

Opini KOMENTAR

  19 AGUSTUS
2017  13.33

Mengatasi Isu CORS Ajax Request di Google Chrome

Saat ujicoba membuat app menggunakan Ajax untuk mengakses data dari web/resource lain, seringkali kita bertemu dengan isu CORS (Cross-Origin Resource Sharing) dimana request Ajax diblok oleh browser karena mengakses origin yang berbeda.

Untuk alasan keamanan, semua request Ajax haruslah mengakses file yang memiliki origin yang sama, sehingga request Ajax dengan local filesystem atau dengan awalan "localhost" akan diblok oleh Chrome. Contoh kasusnya adalah saat kamu membuat file index.html, double klik dan muncul browser dengan alamat dengan pola seperti ini: `file:///C://my/path/index.htmlatau saat develop ionic dengan originlocalhost`, kemungkinan kamu mendapatkan error seperti ini:

chrome error

-- atau --

XMLHttpRequest cannot load https://example.com. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8100' is therefore not allowed access.

Untuk mengatasi permasalahan seperti ini ada beberapa solusi yang bisa dilakukan, antara lain sebagai berikut:

1. Perbaiki Resource Endpoint

Sebenarnya ini tidak berhubungan dengan Chrome tapi harus diketahui juga terutama oleh pengembang web. Jika kamu memiliki hak akses untuk mengubah resource endpoint atau memang kamu sendiri yang membuatnya maka kamu bisa meng-enable CORS disisi server. Untuk Apache salah satunya dengan menggunakan `.htaccess` seperti berikut:

<IfModule mod_headers.c>
   Header set Access-Control-Allow-Origin "*"
</IfModule>

2. Start / Mulai Chrome dengan Mode Disable-Security

-- Untuk Windows

Tutup semua window Chrome dan cari lokasi google chrome berada (biasanya di C:\Program Files\Google\Chrome\Application). Tekan Shift lalu klik kanan mouse, pilih Open command window here. Lalu ketikkan perintah berikut:


atau buat _shortcut_ dengan target seperti berikut agar tidak terlalu sering buka-buka folder Program Files

```"C:\Program Files\Google\Chrome\Application\chrome.exe" --args --disable-web-security```

### 3. Install plugin di Chrome

Ada beberapa plugin yang __mungkin bisa digunakan__ dan berjalan dengan baik (meskipun saya tidak menjamin dapat berfungsi baik disemua kondisi), salah satunya adalah:

[Allow-Control-Allow-Origin: *](https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi?hl=en)

___** Saya pribadi tidak pernah menganjurkan penggunaan plugin tertentu dan saya tidak bertanggung jawab atas penggunaan plugin yang menyebabkan kerusakan/kerugian.___

Cara menggunakannya seperti menggunakan tombol _switch_ On/Off  dan berfungsi baik ketika saya sedang develop ionic dengan ```ionic serve -l```. Pastikan kamu hanya menyalakan plugin ini saat proses pengembangan saja, jika untuk _browsing_ biasa lebih baik dimatikan (di OFF kan).

Semoga posting ini bermanfaat {:)}

Artikel KOMENTAR

CARI ARTIKEL

×