Jumat, 29 Mei 2020

Simple HMVC Restful API — Node Js, Express Js, MySQL

Langsung saja ya 😄
Saya ingin berbagi tentang tutorial membuat modular HMVC (Hierarchical Model View Controller). Tutorial ini sebenarnya berdasarkan pada project brizkoder yang kemudian saya modifikasi sendiri. Struktur project yang saya modifikasi menggunakan konsep HMVC yaitu membagi setiap modul project yang di dalamnya terdapat Model, View dan Controller. Seperti berikut ini:


Struktur project HMVC
Struktur HMVC

Mungkin saya hanya menjelaskan garis besarnya saja karena saya rasa sudah banyak yang membahas tentang NodeJs & ExpressJS.
server.js untuk mengatur Express Webserver
Pada folder config terdapat 2 file yaitu config.db.js dan config.router.js.
config.db.js untuk configurasi DB silahkan sesuaikan sendiri
config.router.js untuk menangani semua CRUD dari setiap modul
Di folder core terdapat 2 file yaitu core.connection.js dan core.model.js.
core.connection.js untuk menghubungkan project dengan DB
core.model.js untuk beroperasi dengan DB. Disini saya memodifikasi beberapa baris kode yang nantinya bisa digunakan pada beberapa modul.
Folder customers kita anggap sebagai modul yang didalamnya terdapat folder beberapa folder MVC.
customer.model.js untuk merepresentasikan data customers di DB
customer.controller.js untuk melakukan logika dan mengontrol modul
customer.router.js untuk mengontrol proses CRUD modul customers
Silahkan coba dengan aplikasi postman dengan mengetik
kemudian akses URL
hasilnya kurang lebih seperti ini


Hasil dari paginasi getAll Customer
Sekian, semoga bermanfaat 😄 

Rabu, 06 November 2019

INOVASI DAN PERUBAHAN PEMBUATAN KEBIJAKAN, "E-PARTICIPATION"


Ringkasan konsep
Proses pengambilan kebijakan bertujuan untuk memecahkan masalah yang dialami masyarakat dengan menguraikan, menetapkan, menerapkan hukum dan aturan yang dapat mencapai tujuan tertentu. Pemerintah juga disarankan untuk berkolaborasi dengan konsultan, akademisi atau lembaga penelitian sebagai bahan pertimbangan dan masukan dalam pengembangan kebijakan. Konsep atau gambaran yang sering dipakai pada proses pembuatan kebijakan oleh pemerintah adalah identifikasi masalah, penetapan agenda, adopsi, formulasi, implementasi, dan evaluasi kebijakan. Dibagian terakhir pada proses ini adalah upaya dalam menyelidiki dampak atau konsekuensi dari kebijakan yang telah diterapkan.

Perubahan situasi pemerintahan tradisional yang menuju pada pemerintahan modern memaksa pembuat kebijakan harus lebih mau terbuka dan memberikan rakyat suatu ruang yang digunakan untuk berkontribusi dalam melaksakan proses pemerintahan. Hal ini berbeda dengan cara pemerintahan tradisional yang cenderung berporos pada jajaran pemerintah di tingkat tinggi sebagai pembuat kebijakan negara yang harus ditaati oleh semua rakyat (top-down). Pemerintahan model ini terkesan kaku dan seakan-akan hanya “mereka” yang memahami semua persoalan pada suatu wilayah pemerintahan. Padahal pada kenyataannya, rakyat yang dipimpin sangatlah memiliki kemajemukan mulai dari asal daerah, tempat tinggal, latar belakang pendidikan, pekerjaan hingga menyangkut kepercayaan kepada pemerintah. Berbeda dengan gaya pemerintahan modern yang mulai memberikan warna baru yaitu dengan mengajak segala lapisan masyarakat berkontribusi dalam pembuatan kebijakan (Janssen & Helbig, 2018). Sehingga menghasilkan usulan gaya pemerintahan baru khususnya dalam pengambilan keputusan (bottom-up).

Ketersediaan teknologi informasi dan komputer mengarahkan pemerintah lebih memanfaatkannya untuk membantu dalam pemerintahan atau yang sering disebut dengan istilah e-Government. Bentuk manfaat yang kerap digunakan dari bagian e-Government adalah e-Participation, yaitu upaya bagaimana pengambil kebijakan pemerintah menggunakan TIK untuk mendapatkan dan mengetahui aspirasi serta pendapat masyarakat yang nantinya ditujukan sebagai bahan dalam membuat keputusan pemerintahan. Dengan adanya e-Participation mengubah peran masyarakat dari sekedar sebagai penonton menjadi aktif berpartisipasi (Sutrisno & Akbar, 2018). e-Participation menjembatani aspirasi masyarakat dengan pemerintah sehingga pemerintah pun harus memfasilitasi partisipasi agar bisa dirumuskan menjadi kebijakan pemerintah (Vita Elysia & Ake Wihadanto, 2017). Ada banyak tantangan yang dihadapai pembuat kebijakan terkait penerapan e-Participation karena harus mempertimbangkan dampak dan manfaat jika diterapkan. Selain itu banyaknya aktor yang terlibat dalam masyarakat menambah kompleksitas implementasi, proses, dan proses menemukan solusi kebijakan. Beberapa tahapan yang dijadikan modal pemerintah dalam membuat kebijakan dengan menggunakan partisipasi masyarakat (Janssen & Helbig, 2018)
1.     Pendefinisian Masalah
Pada tahapan ini pemerintah mengumpulan data sebagai rujukan dalam merekam masalah yang terjadi di masyarakat. Media sosial, pembuatan situs web yang khusus menerima laporan warga, petisi atau basis data suatu instansi dapat dijadikan bahan rujukan. Masalah yang bisa dianalisis dari pengumpulan data adalah dari masalah pendidikan, kesehatan, ekonomi, bahkan sampai masalah kejahatan. Peran baru dari data yang dikumpulkan oleh berbagai komponen negara khususnya masyarakat jika diolah dengan pendekatan berbasis sains seperti: data mining, machine learning, dari data yang semula tidak terstruktur dan begitu kompleks mampu memberi inti informasi yang terdapat di dalamnya.
2.     Pengembangan Kebijakan
Pengembangan kebijakan menjadi bagian yang sulit karena kompleksitas dari sumber daya yang ada dan membutuhkan fokus pada solusi. Proses memahami data dan masalah yang terjadi menghasilkan kebijakan dan aturan yang nyata. Pada proses ini dilakukan simulasi pada sebagian masyarakat. Dari kekurangan atau ketidakcocokan yang terjadi selama simulasi, maka bisa menjadi bahan revisi selama proses pengembangan kebijakan.
3.     Penerapan Kebijakan
Kebijakan telah dikembangkan mulai untuk diterapkan. Tahapan ini adalah bentuk kreasi bersama antara pemerintah, masyarakat dan pihak ketiga (orang bisnis, perguruan tinggi, peneliti, konsultan, dsb) dalam menjalani kebijakan yang telah dikembangkan. Walaupun lingkup penerapan masih kecil (kota/kabupaten) dan belum sampai pada lingkungan yang luas (negara), namun bisa menjadi instrumen yang digunakan untuk saling bertukar pendapat, informasi dan keluhan terhadap suatu kebijakan yang dikembangkan. Pada akhirnya dijadikan bahan evaluasi untuk kebijakan yang lebih baik.
4.     Pelaksanaan Kebijakan
Kebijakan telah final dan siap untuk dilaksanakan pada ekosistem yang lebih luas. Masyarakat mendapatkan peran untuk tetap berkontribusi menyampaikan aspirasinya lewat ruang pertisipasi publik berbasis TIK. Pemerintah atau pembuat kebijakan melaksanakan tugasnya untuk memantau kebijakan yang dilaksanakan serta mengidentifikasi dan mendefinisikan setiap kejadian yang bisa memungkinkan menjadi embrio masalah di masa depan.

Referensi :
Janssen, M., & Helbig, N. (2018). Innovating and changing the policy-cycle: Policy-makers be prepared!. Government Information Quarterly, 35(4), S99-S105.

Optimization Of Import Excel Into Mysql Based On Client-Server (OIES)



1.     Tentang

Ada kendala saat mengimpor data dari file excel ke dalam database dengan ribuan baris sekaligus. Beban server menjadi lebih berat dan membutuhkan waktu yang lama. OIES adalah aplikasi web berbasis klien-server yang mampu mengoptimalkan impor data dari file Excel ke MySql dengan jumlah kolom yang dinamis dan ribuan baris data sekaligus. OIES dibangun dengan beberapa komponen:

a.     Klien: Javascript
b.     Server: PHP
c.     Database: MySql




2.     Demo

a.   Halaman depan OIES digunakan untuk menampilkan data dari database mysql


b.  Tombol “add” digunakan untuk menampilkan form untuk menampung file excel yang akan diimport. File excel yang bisa diimport adalah berekstensi .xlsxOIES mampu membaca dan menyimpan data dari file excel dengan jumlah kolom dan baris yang dinamis menjadi data di database mysql (.sql)


c.     Contoh file excel dengan jumlah baris 11.000 dan kolom 6

Waktu yang digunakan oleh OIES untuk melakukan import file excel (hasil import 11.000 data) yang disimpan di database mysql

Data yang sudah tersimpan (hasil import 11.000 data)

d.     Contoh file excel dengan jumlah baris 20.000 dan kolom 7

Waktu yang digunakan oleh OIES untuk melakukan import file excel (hasil import 20.000 data) yang disimpan di database mysql

Data yang sudah tersimpan (hasil import 20.000 data)

e.     Tombol “reload” digunakan untuk merefresh data yang ada di database.
f.     Tombol “empty” digunakan untuk mengkosongkan data yang ada di database.

g.     Data excel (11.000 & 20.000) berhasil diimport ke dalam mysql dengan waktu kurang dari 5 detik.

3.     Kontak

Linkedin : puguhjayadi