Membuat Form Input pada Microsoft Access

[basis.data|akuntansi|lab.software|pert.6]

Setelah sistem basis data terbentuk, tugas berikutnya adalah membuat interface pengguna dengan basis data. Salah satu mata kuliah pendukung interface tersebut adalah interaksi manusia dan komputer. Bentuk real-nya adalah Graphic User Interface (GUI). Untuk contoh kita ambil Form Data Mahasiswa dari tabel mahasiswa di bawah ini.

Merancang Interface

Microsoft Access menyediakan sarana pembuatan GUI dalam bentuk form. Cara yang termudah dalam pembuatan form adalah lewat wizard yang dapat diakses lewat menu Create From Wizard. Terlebih dahulu sorot dengan mouse tabel mahasiswa di sisi MS Access.

 

Langkah pertama adalah pemilihan tabel yang dalam contoh kasus ini adalah tabel mahasiswa. Pilih saja seluruh field yang diminta oleh wizard. Lanjutkan dengan menekan Next.

Tabel ini hanya sekedar contoh, untuk disain yang terbaik sesuaikan dengan kebutuhan sistem yang akan dirancang. Tahapan-tahapan dalam pembuatan basis data dapat diketahui dari berbagai macam referensi tentang database design.

Selanjutnya adalah pemilihan bentuk form (columnar, tabular, datasheet, dan justified). Untuk kali ini akan dicoba bentuk yang Columnar karena bentuk ini bentuk yang sering dipakai dengan tombol kontrol di bawahnya (simpan, tambah, maju, mundur, dan sejenisnya).

Akhiri dengan menekan tombol Finish yang kemudian memunculkan form yang dihasilkan. Untuk mendisain ulang dengan menambah kontrol, tekan di sisi kiri atas View Design View. Tambahkan di bagian Footnot GUI untuk menambahkan tombol kontrol New untuk menambah satu record.

Ada enam kontrol yang disediakan MS Access: Record Navigation, Record Operation, Form Operation, Report Operation, Application, dan Misceleneous. Lanjutkan dengan meneken Next karena jika menekan FINISH maka Access akan memberi simbul tambah dalam bentuk gambar. Dengan menekan Next maka kita bisa mengisi indikator di tombol tersebut sesuai dengan keinginan, misalnya “Tambah Data”. Tambahkan dengan tombol pasangan dari Tambah Data yaitu Save. Juga pilih kontrol Record Operation. Jalankan untuk menguji penambahan data yang baru saja dibuat. Selamat Mencoba.

 

 

Deteksi Warna Komposit dengan Matlab

[peng.citra|t.kom|lab.hardware|pert.7]

Warna dasar RGB adalah Red, Green, dan Blue yang masing-masing menyatakan nilai maksimal komposisinya yaitu 255. Misalnya warna merah, maka matriks-nya sebesar [255 0 0], begitu juga untuk warna hijau dan biru, masing-masing [0 255 0] dan [0 0 255]. Bagaimana cara mendeteksi warna-warna komposit yang bukan merupakan warna dasar seperti kuning, jingga, dan lain-lain? Postingan kali ini sedikit menjelaskan cara mendeteksinya dengan menggunakan jarak Euclidean.

Standar Warna RGB

Standar warna RGB banyak diterapkan pada image processing. Standar ini menggunakan warna merah, hijau dan biru sebagai patokan warna-warna lainnya. Warna lainnya dapat dibuat dengan menggabungkan proporsi warna merah, hijau, dan biru tersebut. Berikut standar warna selain merah, hijau, dan biru.

Tabel di atas juga menyertakan paduan standar Cyan, Magenta, Yelow, dan Black (CMYK) dan HSV. Sebagai kelanjutan Pert 6 yang lalu, di sini kita menerapkan deteksi warna dengan jarak Euclidean.

Praktek dengan GUI

Tambahkan kode tambahan di tombol deteksi warna (Euclidean) karena bukan hanya R, G, dan B, melainkan beberapa warna lain misalnya kuning, oranye, dan hitam.

Tambahkan tiga jarak baru yaitu dY, dO, dan dK untuk jarak terhadap kuning, oranye dan hitam. Untuk memudahkan penentuan jarak terdekat gunakan fungsi min disertai dengan indeksnya. Indeks dapat diketahui dengan membuat sebuah vektor berisi warna-warna dari merah hingga hitam. Sehingga ketika nilai minimum diketahui, diketahui pula indeksnya. Warna dapat diketahui berdasarkan indeks-nya dari vektor warna.


  • dR=norm(warna-[255 0 0])
  • dH=norm(warna-[0 255 0])
  • dB=norm(warna-[0 0 255])
  • dY=norm(warna-[255 255 0])
  • dO=norm(warna-[255 127 0])
  • dK=norm(warna-[0 0 0])
  • hasil=[dR dH dB dY dO dK]
  • % mencari jarak terkecil
  • strwarna={‘merah’
    ‘hijau’
    ‘biru’
    ‘kuning’
    ‘jingga’
    ‘hitam’}

  • [minimum,indeks]=min(hasil)
  • outwarna=strwarna(indeks)
  • set(handles.edit4,‘String’,outwarna)

Coba uji dengan memasukan data sesuai warnanya, misalnya kuning, oranye dan hitam. Coba uji pula dengan warna yang tidak terlalu hitam (abu-abu), atau tidak terlalu kuning. Sistem akan mencoba mendekati dengan warna-warna standar yang ada (R,G,B, plus kuning, orange dan hitam). Semoga bermanfaat.

Mail Merge Untuk Surat Berantai

[komp.1|manajemen|lab.sainstech|pert.6]

Surat berantai adalah surat yang ditujukan untuk beberapa orang dengan isi yang sama. Biasanya surat undangan atau pemberitahuan. Surat tersebut hanya diketik sekali, tetapi Microsoft Word akan memberikan kepada/tujuan yang berbeda tiap kali surat tersebut dicetak. Misalnya akan dibuat surat undangan ke seluruh ketua jurusan sebanyak enam orang, maka dengan layanan mail merge dengan satu surat dihasilkan enam surat dengan tujuan yang berbeda. Postingan ini membahas bagaimana membuatnya.

Membuat Surat

Pertama-tama siapkan terlebih dahulu surat yang akan dikirim berantai (lihat pert 5 untuk jenis-jenis surat). Di bawah ini kosongkan tujuan, jabatan, serta alamatnya.

Membuat Daftar Penerima

Daftar penerima dapat dibuat dengan aplikasi Microsoft Excel. Buat daftar enam penerima tersebut berisi kolom panggilan, nama, jabatan, dan alamat. Di sini panggilan untuk membedakan bapak/ibu atau Dr/Prof.

Selanjutnya file Excel yang berisi nama penerima tersebut disimpan di folder yang sama dengan file word surat. Jika sudah, masuk ke menu Mailings Start Mail Merge Step-by-Step MM Wizard.

Perhatikan sisi kanan bawah. Tampak indikator langkah ke berapa. Lanjutkan hingga langkah ke enam, dimulai dari pemilihan file excel berisi penerima.

Di langkah ketiga Anda akan diminta memilih list. Arahkan ke file Excel yang baru saja kita buat.

Silahkan pilih siapa saja yang akan dikirim file-nya. Atau centang semua jika memang semua orang akan dikirim surat.

Tahap berikutnya mengisi field yang dituju dengan data penerima. Perhatikan penempatan mouse/kursor di tempat yang sesuai dilanjutkan menekan data isian.

Tahap kelima adalah memastikan tujuan surat sudah sesuai dengan yang diinginkan. Selamat mencoba.

Gaya Surat Menyurat

[komp.1|manajemen|lab.sainstech|pert.5]

Ada beragam style surat-menyurat dari yang jadul hingga yang modern. Namun demikian ada komponen yang sama antara lain: Kop Surat, no-lamp-hal, tanggal surat, tujuan/kepada, isi, dan penandatangan, serta tembusan dan inisial pembuat surat. Postingan sederhana ini membahas gaya-gaya surat yang biasa diterapkan di beberapa kantor/institusi.

Lurus Penuh (Full Block Style)

Bentuk ini paling mudah karena semua komponen diawali dari sisi kiri.

Lurus (Block Style)

Gaya surat ini mirip lurus penuh tetapi tanggal dan penandatangan berada di kanan seperti gambar di bawah ini.

Bentuk Paragraf Menggantung (Hanging Paragraf Style)

Bentuk ini mirip bentuk lurus, hanya saja paragraf isi menggantung (hanging) mirip dengan daftar pustaka sebuah jurnal.

Bentuk Lekuk (Indented Style)

Bentuk ini mirip gaya menggantung, hanya saja isi tiap paragraf maju beberapa spasi, mirip paragraf sebuah tulisan di buku. NOTE: Perhatikan format penulisan kepada/tujuan yang tiap baris menjorok beberapa spasi dari sebelumnya.

Bentuk Gaya Resmi Indonesia (Official Style)

Bentuk ini biasa diterapkan di departemen-departemen. Ada jenis yang lama, ada juga yang baru. Bentuk yang lama (kiri) di salam penutup dan NIP menjorok, sementara yang baru (kanan) rata sama dengan salam penutup dan nama penandatangan. Kepada/tujuan surat juga sedikit berbeda penempatannya. Salah satu yang membedakan dengan gaya surat-menyurat yang lain adalah margin kiri rata dengan awal isian no, lamp, dan hal, termasuk juga kepada/tujuan. Kecuali tembusan rata dengan no, lamp, dan hal. Sekian semoga bermanfaat.

Referensi:

  • surat.porosilmu.com

Instant Quiz dengan KAHOOT – Part 2

Jika sudah Sign Up dengan Kahoot berikutnya kita coba membuat quiz-nya. Sebenarnya Kahoot sekedar media/alat bantu membuat quiz instan. Tetap saja konten (learning management system) ditangan tutor. Ada contoh-contoh quiz bawaan Kahoot. Silahkan mencoba. Jika ingin membuat yang baru tekan Create yang berada di pojok kanan atas.

Ada empat pilihan soal: Quiz, Jumble, Discussion atau Survey. Di sini kita ambil contoh Quiz.

 

Ada soal/Question yang harus diisi dilanjutkan dengan mengisi pilihan jawaban. Untuk jawaban yang benar tekan simbol centang di samping answer. Tekan + untuk menambah soal baru hingga beberapa soal. Jika sudah tekan Save di pojok kanan atas.

Soal dapat di-share agar bisa digunakan oleh tutor-tutor yang lain. Cara memainkannya adalah dengan menekan tombol Plat It.

 

Ada dua pilihan yaitu player vs player atau team lawan team. Pilih saja misalnya player vs player. NOTE: Kahoot yang dishare tersebut berfungsi sebagai ADMIN yang mengatur jalannya quiz. Dengan kata lain untuk tutor/teacher, bukan untuk siswa yang akan mengikuti ujian/quiz.

Bertanding

Ketika dijalankan dengan menekan tombol Play It. Kahoot akan memberikan PIN secara random yang harus diisi oleh peserta quiz ketika menjalankan Kahoot (www.kahoot.it). Setelah memasukan PIN, maka player diminta mengisi identitas bebas. Peserta akan tampak di ADMIN.

Misalnya peserta bernama Yes dan No. Tunggu semua peserta daftar quiz. Jika sudah mulai tekan Start di sebelah kanan.

Di bagian ADMIN, soal akan tampak. Biasanya ditayangkan di LCD di depan kelas. Atau bisa juga dengan cara lain, misal ditulis di grup WA, Chat, dll. Soal berikutnya akan lanjut setelah ADMIN menekan tombol Next di sebelah kanan atas soal quiz.

ADMIN dapat memonitor jumlah peserta yang menjawab dengan benar dan salah. Jika peserta sudah siap dengan pertanyaan berikutnya, kembali ADMIN menekan tombol Next di pojok kanan atas. Jika sudah selesai, selain rangking terlihat, hasilnya bisa disimpan/download.

Untuk menyimpan di komputer kita, tekan Direct Download. File yang diunduh berformat Excel, berisi informasi jawaban peserta quiz.

Hal-hal yang perlu diperhatikan dalam quiz dengan Kahoot antara lain dapat dirinci sebagai berikut:

  • Soal tidak tampak di peserta, hanya ADMIN. Biasanya di komputer yang ditayangkan di LCD kelas.
  • Soal dapat ditayangkan lewat cara lain, misalnya pesan di Whatsapp, Facebook, dan lain-lain. Oleh karena siswa butuh waktu untuk membaca dan membuka aplikasi pesan maka waktu disetel yang wajar, misalnya 2 atau 3 menit per soal mengingat default Kahoot adalah 20 detik. Bisa-bisa siswa belum baca soal waktu sudah habis.
  • Jika waktu habis, siswa yang belum menjawab dianggap salah menjawab soal yang bersangkutan.

Salah satu keunggulan quiz lewat aplikasi adalah rekap jawaban secara instan diperoleh dalam format Excel. Bahkan dapat diketahui dengan pasti jawaban siswa, seberapa cepat menjawab serta benar atau salahnya. Selamat Mencoba.

 

Instant Quiz dengan KAHOOT – Part 1

Ketika presentasi Revolusi Industri 4.0 di Munas APTIKOM 2018 Palembang, Prof. Eko Indrajit meluncurkan quiz dengan menggunakan aplikasi Kahoot. Dengan memasukan Game PIN seperti gambar di bawah maka akan ditampilkan empat pilihan jawaban, masing-masing dengan warna atau bentuk. Soal ditayangkan di layar LCD, biasanya di kelas. Siswa ketika menjawab tinggal menakan jawaban di handphone masing-masing setelah memasuki quiz via PIN tersebut. Bagaimana cara membuatnya? Postingan ini sekadar berbagi bagaimana membuat kuis instan ini.

Mendaftar/Signup Kahoot

Klik di sini untuk daftar (di bagian bawah kahoot). Untuk gratis, tekan saja Sign up for Free.

Ada empat pilihan, untuk guru, siswa, sosialita atau pekerjaan. Di sini saya ambil contoh sebagai teacher sesuai dengan profesi saya, dosen.

Berikutnya diminta cara sign up (ada tiga pilihan). Gunakan saja login with Google agar lebih cepat. Pilihan lainnya adalah Sign up with Microsoft, jika ingin.

Hanya butuh tiga isian dan satu checklist konfirmasi sebelum lanjut (joint Kahoot). Checklist terakhir ditekan jika ingin menerima informasi baru dari Kahoot.

Setelah itu schroll hingga ke bawah, pilih saja Basic Version for Teachers.

Selesai sudah daftar Kahoot. Pilih saja Personalize dengan beberapa isian baru agar sesuai dengan tema quiz. Atau jika tidak ingin, bisa pilih No Thanks.

Lanjut: Membuat Quiz

Tak Selamanya Efektif dengan Online

Saat ini sedang digalakan dilaksanakannya Massive Open Online Course (MOOCs) khususnya dari universitas-universitas favorit di tanah air seperti ITB, UGM, UI dan kawan-kawan. Sasaran utamanya adalah ilmu yang tersebar secara merata, gratis, dapat diakses siapapun dan kapanpun. Istilahnya sekali merengkuh dayung, satu dua pulau terlampaui.

Dari sisi skalabilitas, MOOCs unggul dalam menyebarkan IPTEKS. Terutama bidang-bidang yang memang cocok untuk dilaksanakan dalam format MOOCs, didukung dengan teknologi e-learning yang saat ini kian fleksibel dan user friendly. Bagaimana dengan kualitas? Nah masalah ini agak sulit untuk mengetahui/mengujinya. Diperlukan riset khusus agar mengetahui faktor-faktor apa saja yang dapat menyerupai bahkan melebihi kualitas dari perkuliahan offline alias tatap muka.

Sosialisasi

Sebenarnya baik itu pendidikan, kursus, dan hal-hal lain di luar pendidikan bisa juga menggunakan online. Misalnya seminar/pertemuan ilmiah yang semula pertemuan tatap muka, saat ini bisa juga dilaksanakan dalam bentuk webinar, alias seminar via web. Yah, walaupun sempat tertidur karena tidak ada cofee break.

Di situlah letak perbedaannya, sosialisasi. Memang kita mengenal “medsos: media sosial” tetapi, tentu saja tidak sama dengan sosialisasi. Medsos hanya merupakan jembatan informasi untuk sosialisasi, mirip dengan percakapan via chat, email, dan komunikasi elektronik lainnya. Di sinilah mengapa piknik, tur wisata, dan hal-hal lain masih laku dan tidak tergantikan dengan online, walaupun saat ini virtual reality (VR) kian canggih yang memberi sensasi semirip mungkin dengan yang real.

Saat ikut klinik kurikulum di munas APTIKOM, tutor memberi gambaran mengapa walaupun disiarkan online, tetap saja mahasiswa yang hadir di kuliah online di negara maju membludak. Ketika ditanya ke mahasiswa mengapa hadir padahal bisa saja mengikuti videonya di rumah. Mereka menjawab sederhana: “sosialisasi”, maksudnya bisa mengukur dengan rekan-rekannya. Jika rekan-rekannya dengan santai dan terlihat tanpa usaha ketika mengikuti kuliah sementara kita masih “mangap” (maksudnya berfikir keras memahami maksud si pembicara), berarti harus ekstra keras lagi belajarnya .. hehe, mirip yang pernah saya alami.

The Secret

Banyak hal-hal lain yang tidak bisa dituangkan dalam bentuk online. Khususnya hal-hal rahasia yang memang bersifat pribadi, atau tidak sesuai dengan alur/prosedur baku. Saya pernah ketika di Indonesia menanyakan via email apakah bisa regitrasi KRS semester pendek (tempat kuliah di LN) tetapi kuliah dari Indonesia karena SKS yang diambil hanya riset. Jawabannya tidak, tetapi ketika kongkow di warung kopi kampus bersama rekan yang sama pembimbingnya mengatakan jangan lewat email. Dan memang ketika meminta langsung/bicara dia setuju di semester pendek tahun berikutnya tanpa datang ke kampus. Email dan bentuk lain online bisa jadi barang bukti, terkadang beberapa advisor berhati-hati dalam menjawab via email, chat, dll. Memang seharusnya mahasiswa yang mengambil semester pendek berada di kampus. Lagi-lagi kongkow/nongkrong di warung kopi dan ngobrol langsung bisa lebih berkualitas dibanding chatting.

Satu hal yang sulit dilakukan online adalah bimbingan. Ketika revisi atau mendiskusikan suatu hal, sangat sulit dilakukan secara online. Bisa saja dilaksanakan via Skype, tetapi ketika ada hal-hal yang harus ditunjukkan, berkas-berkas, hitungan-hitungan dan sejenisnya sangat sulit. Beda dengan ketemu langsung, tinggal buka berkas, tunjukkan. Terkadang dicoret-coret sambil dibahas bersama di berkas tersebut. Itulah mengapa revisi jurnal oleh review bisa beronde-ronde, karena jawaban yang kita berikan dalam bentuk tulisan. Mungkin jika reviewer ketemu langsung bisa beres cepat, tapi tentu saja karena blind review tidak bisa dilakukan langsung.

Mungkin banyak contoh-contoh lain yang menggambarkan pentingnya ketemu langsung. Juga hal-hal lain terkait privasi yang memang tidak membolehkan adanya catatan dalam suatu pertemuan. Bayangkan pertemuan rahasia yang tidak dilakukan secara langsung (via online), sifatnya jadi tidak rahasia lagi karena online, walaupun ada jaminan keamanan dari sistem network, perlu ada jaminan tidak terekam.

Dosen saya yang terbuka dan apapun diberi jika diminta, ketika seorang mahasiswa kedapatan merekam perkuliahannya beliau marah (baru kali itu melihat dia marah). Ternyata marah karena rekannya yang di USA memberitahu kalau kuliahnya ada di Youtube. Ya, aspek kecepatan, variasi, dan jumlah memang ditawarkan oleh sistem online, tetapi jika ada hal-hal yang tidak butuh cepat, tidak butuh jumlah, dan tidak butuh variasi tetapi memerlukan hal-hal lain seperti negosiasi, motivasi, dan sejenisnya, tentu saja efektivitasnya harus disertai dengan offline, yang saat ini dikenal dengan istilah blendded learning, atau turunannya Flipped Learning. Selamat ber-kopi darat.

Deteksi Warna dengan Jarak Euclidean

[peng.citra|t.kom|lab.hardware|pert.6]

Sistem cerdas membutuhkan teknik agar peralatan dapat membedakan satu warna dengan warna lainnya. Teknik termurah dan termudah adalah dengan jarak Euclidean. Perhitungannya menggunakan rumus jarak dua titik koordinat (dua, tiga, dan dimensi-n) yang mirip garis miring Phytagoras. Sebagai kelanjutan dari pertemuan 5 yang lalu, tambahkan tombol pushbutton disertai edit text untuk melihat komposisi RGB sebuah citra.

Agar ukuran dan format sama dengan tombol-tombol yang lain, kita boleh meng-copy paste tombol dan isian lainnya. Jika sudah simpan dan tambahkan tiga buah warna yang akan diuji. Buat saja dengan menggunakan paint pada Windows. Simpan dalam format JPG agar lebih mudah karena kebanyakan citra dibuat dalam format ini.

Mencari Nilai Terbesar RGB

Salah satu teknik termudah menebah warna sebuah citra adalah dengan mencari nilai terbesar. Cara ini tentu banyak kelemahannya, khususnya untuk warna komposit (gabungan) seperti kuning, ungu, orange, dan lain-lain. Namun, teknik ini tetap digunakan ketika menggunakan jarak Euclidean, tetapi menggunakan fungsi mencari nilai terkecil (kebalikannya). Kode berikut diletakan di Callback deteksi warna.

  • fR=handles.y(:,:,1);
  • fG=handles.y(:,:,2);
  • fB=handles.y(:,:,3);
  • fr=mean(mean(fR));
  • fg=mean(mean(fG));
  • fb=mean(mean(fB));
  • % mencari terbesar
  • warna=[fr fg fb]
  • strwarna={‘merah’ ‘hijau’ ‘biru’}
  • [maks,indeks]=max(warna)
  • outwarna=strwarna(indeks)
  • set(handles.edit4,’String’,outwarna)
  • set(handles.edit5,’String’,fr)
  • set(handles.edit6,’String’,fg)
  • set(handles.edit7,’String’,fb)

fR, fG dan fB adalah berturut-turut matriks citra merah, hijau dan biru. Sementara fr, fg, dan fb nilai rata-rata ekstrak warna dari citra. Perhatikan bagian % mencari nilai terbesar b di atas. Di sini digunakan fungsi max. Fungsi set di akhir fungsi mengirim jawaban yang merupakan warna yang ditebak oleh sistem ke edit text4 dalam contoh ini.

Menggunakan Jarak Euclidean

Jarak Euclidean lebih “ampuh” karena mampu mendeteksi warna komposit dengan menghitung jaraknya dari warna-warna yang jadi patokan/kelas. Sebagai latihan, patokannya misal dianggap sama yaitu merah, hijau dan biru. Pada prakteknya bisa saja merah, kuning dan hijau seperti lampu lalu-lintas.

Tambahkan satu tombol pushbutton “Deteksi Warna (Euclidean)” untuk membedakan dengan tombol sebelumnya yang hanya menggunakan nilai maksimal RGB.

Sebagai ilustrasi, nilai X tentu saja dengan nilai terbesar akan ditebak masuk kategori R. Tetapi di sini kita menghitung terlebih dahulu jaraknya terhadap R, G, dan B lalu dibandingkan mana jarak terkecilnya. Rumus Euclidean adalah mirip sisi miring Phytagoras:

Silahkan menggunakan rumus di atas, atau bisa menggunakan fasilitas fungsi norm pada Matlab yang artinya “normal Euclidean”. Berbeda dengan fungsi max untuk mencari nilai maksimum, untuk mencari nilai minimum dapat menggunakan fungsi min. Ok, masukan kode ini pada tombol “Deteksi Warna (Euclidean)”.

  • warna=[fr fg fb]
  • dR=norm(warna-[255 0 0])
  • dH=norm(warna-[0 255 0])
  • dB=norm(warna-[0 0 255])
  • hasil=[dR dH dB]
  • % mencari jarak terkecil
  • strwarna={‘merah’ ‘hijau’ ‘biru’}
  • [minimum,indeks]=min(hasil)
  • outwarna=strwarna(indeks)
  • set(handles.edit4,’String’,outwarna)
  • set(handles.edit5,’String’,fr)
  • set(handles.edit6,’String’,fg)
  • set(handles.edit7,’String’,fb)

Uji dengan me-run GUI yang baru saja diisi kode-nya. Pastikan sistem bisa menebak warna. Selamat Ber-praktikum.

Sumber Inspirasimu Ada di Sekitar

Teman/Guru

Pergaulan kita memang sangat mempengaruhi perkembangan jiwa kita. Apa corak yang mewarnai diri kita sangat ditentukan oleh teman. Bahkan di Islam dikatakan bahwa “seseorang mengikuti agama temannya ..”. Jadi peran teman, apalagi sahabat sangat menentukan bentuk pribadi kita. Mungkin agama lain memiliki prinsip yang sama. Postingan ringan ini sedikit berbagi pengalaman hal-hal yang mempengaruhi atau menginspirasi hidup saya yang mungkin ada kemiripan dengan pembaca sekalian.

Banyak teman yang menginspirasi saya. Dampaknya sangat luar biasa, mengalahkan sumber-sumber inspirasi lain karena sifatnya yang “live”, berbeda dengan sumber-sumber lain yang sedikit ada campuran rekayasa. Setidaknya kita kurang percaya. Bandingkan Anda melihat maling secara langsung dengan lewat berita di koran, di radio, di televisi atau internet. Atau melihat hantu .. upss.

Banyak guru atau dosen yang menginspirasi. Entah karena kepintaran, skill, atau sekedar sifat baiknya, tutur kata, dan hal-hal menarik lainnya. Bagaimana yang sudah selesai sekolah? Silahkan cari sumber-sumber lain, entah di asosiasi, pertemuan-pertemuan ilmiah dan sejenisnya. Pasti ada satu, dua yang bisa memacu kita untuk maju.

Film

Ya, yang satu ini mau tidak mau pasti dialami oleh sebagian besar anak kecil, terutama seumuran saya, maksimal. Maksudnya maksimal adalah saya sudah mengalami nonton film walaupun di TVRI waktu itu. Generasi seusia orang tua saya tentu saja belum ada, entah mungkin tontongan wayang kulit/golek atau ketoprak bisa saja mirip pengaruhnya. Waktu kecil ketika teman sebaya saya mengagumi sebuah tokoh jagoan, saya malah tertarik dengan orang tua berkacamata tebal, dan biasanya berjenggot lebat. Siapakah dia? Dia lah yang saya kagumi, seorang profesor. Seseorang yang mensuport si jagoan, bahkan mampu menciptakan robot yang bisa berubah-ubah. Generasi milenial tentu saja sulit dibayangkan dampaknya mengingat informasi sudah berkembang dengan cepat dan murah. Lewat youtube, seorang anak bisa menikmati beragam tontonan yang diinginkan tanpa menunggu jadwal dan duduk manis menikmati acara.

Bacaan

Bacaan paling berkesan bagi seorang anak adalah bacaan ketika kecil. Generasi 80-an pasti mengenal “ini ibu budi”. Untuk masalah keagamaan pasti mengenal juga “juz ama” yang sulit dipelajari waktu itu ketika teknik iqra belum ada. Sayangnya bacaan pelajaran di sekolah jarang yang menginspirasi. Untungnya beberapa guru bisa menginspirasi, tentu saja yang ringan tangan. Maksudnya gemar membantu dan membimbing, bukan meng … silahkan isi sendiri.

Untuk yang terakhir ini, agak unik. Dibilang sangat berpengaruh juga tidak, karena kalah dengan sumber yang lain. Tetapi dibilang tidak berpengaruh juga tidak. Lihat saja berita hoax yang saat ini marak kebanyakan dari tulisan yang dibaca. Mungkin karena kurangnya orang kita membaca lebih lanjut jadi mencari bacaan yang instan yang biasanya diperoleh di medsos. Bacaan juga memiliki keunggulan dibanding sumber yang dibahas di awal, yaitu jumlah informasi yang didapat tiap waktu lebih banyak. Teman mungkin bercengkerama beberapa jam, film juga, tetapi buku bisa berjam-jam dan tidak perlu urut/serial seperti film. Makanya, malaikat Jibril kabarnya gemas ketika menyuruh nabi membaca dan ternyata memang waktu itu nabi tidak bisa membaca. Kita yang bisa membaca karena memang disekolahkan sejak kecil tetapi malas membaca sepertinya Jibril a.s lebih gemas lagi, apalagi sampai percaya berita hoax.

Deteksi Tepi dengan Matlab

[peng.citra|t.kom|lab.hardware|pert.5]

Di antara deteksi lainnya, seperti titik dan garis, deteksi tepi sangat bermanfaat untuk mengetahui suatu objek secara pasti dan terpisah dari objek lainnya, misalnya background. Pertemuan kali ini sedikit membahas metode-metode deteksi tepi yang terkenal antara lain: sobel, prewitt, dan robert. Untuk itu lanjutkan proyek sederhana pertemuan yang lalu dengan menambahkan satu panel berisi tiga pushbutton: sobel, prewitt, dan robert.

Konversi ke Gray

Deteksi tepi bermain dengan intensitas brightness. Ketika langsung mengakses gambar berwarna RGB ada pesan kesalahan. Perlu merubah terlebih dahulu citra yang diambil dari pushbutton “Ambil Citra” menjadi gray. Copas saja kode pada tombol “Konversi ke Gray” dan masukan ke “Sobel”.

  • z=rgb2gray(handles.y);
  • [g,t]=edge(z,’sobel’)
  • axes(handles.axes2)
  • imshow(g)

Silahkan lihat tatacara penggunaan fungsi edge dengan mengetik “help edge” pada command window. Untuk metode Prewitt dan Robert, caranya sama hanya saja menggunakan parameter berturut-turut ‘prewitt’ dan ‘robert’.

Perhatikan ada noise yang tertangkap. Biasanya sebelum deteksi tepi beberapa manipulasi terhadap citra original-nya diperlukan, misalnya filter dengan fungsi imfilter. Selamat mencoba, semoga bermanfaat.

Jika Ingin Dibutuhkan, Jadilah Server yang Baik

Yang pernah belajar jaringan pasti mengenal istilah client-server dan peer-to-peer. Istilah yang menggambarkan jenis hubungan antara satu titik/perangkat dengan perangkat lainnya yang biasanya sebuah komputer. Server yang merupakan komponen utama jaringan client-server memberikan layanan-layanan yang sangat dibutuhkan oleh client. Di dalam literatur komputasi, server cukup unik, di satu sisi sebagai pemimpin dan raja, di sisi lain memberikan layanan-layanan kepada bawahannya, dalam hal ini client. Memimpin tetapi juga melayani, alias sebagai pelayan.

Saya termasuk generasi X (generasi yang berusia 38-53 tahun ketika tulisan ini dibuat) yang sempat mengalami masa krisis ekonomi di tahun 98. Jangankan memperoleh pekerjaan, yang sudah bekerja saja banyak yang menganggur. Sempat beberapa kali melamar pekerjaan, tetapi perusahaan-perusahaan yang dituju “tidak membutuhkan”. Artinya tidak bisa membutuhkan “layanan” dari saya, atau setidaknya sudah ada orang lain yang terpilih. Ada sedikit paradox waktu itu, ketika negara krisis, sejatinya membutuhkan pelayan=pelayan yang bisa mengurangi atau mengatasi krisis, tetapi banyak tenaga-tenaga muda yang tidak bisa/berkesempatan melayani. Waktu berjalan, akhirnya beberapa lembaga membutuhkan layanan saya, dari kampus hingga perusahaan-perusahaan.

Jaman berubah, era dimana informasi tidak/belum berkembang cukup baik di tahun 90-an menjadi era dimana informasi datang secepat kilat. Bila suatu hal butuh beberapa hari untuk tersebar, saat ini hanya dalam hitungan detik bisa menyebar. Tentu saja jika “hal” tersebut dibutuhkan orang banyak. Lembaga yang bisa melayani kebutuhan akan menjadi kuat, sebaliknya yang abai terhadap pelayanan akan tergusur. Era itu saat ini dikenal dengan istilah “disrupsi”. Komplain, keterlambatan, dan kekecewaan-kekecewaan lain yang dirasakan konsumen akan berakibat fatal. Jangankan bisnis yang penuh saingan, bisnis yang tanpa saingan pun akan hancur karena muncul jenis bisnis baru yang memenuhi aspirasi para konsumen.

Beberapa perusahaan bisnis yang saat ini eksis, merupakan perusahaan-perusahaan yang pernah trauma dengan krisis ekonomi. Beberapa bisa eksis bahkan bergerak maju karena permintaan dan suplier yang memang berlebihan dan murah waktu itu (tenaga kerja). Misalnya kampus-kampus, bahkan sangat membutuhkan tenaga pengajar. Saya sendiri mengalami masa di mana siangnya bekerja, malamnya mengajar di kampus. Prinsipnya tetap sama, ketika ada permintaan layanan, ada pula yang menyediakan/menawarkan.

Pertarungan Tak Terhingga (Infinity War)

Ada dua jenis pertarungan, terhingga dan tak terhingga. Contoh pertarungan terhingga adalah pertandingan sepakbola. Ketika waktu habis dan satu tim unggul selisih gol, maka pertarungan berakhir. Di sini dalam kompetisi persaingan sudah jelas, yaitu antar klub. Tetapi dalam bisnis, pertarungannya adalah tak terhingga. Tidak ada yang menang dan kalah, melainkan tetap bermain atau berganti permainan. Bangkrut pun bukan kalah, karena pemainnya bisa bermain lagi, tetepi tidak di pertandingan yang sama. Ketika instagram diambil alih oleh Facebook, instagram tidak bisa dikatakan kalah, melainkan pemilik lamanya berganti permainan. Perhatikan saat ini banyak institusi pendidikan yang merger atau berganti pemilik. Di sini tidak bisa dikatakan kalah, melainkan pemilik lama berganti permainan, alias tidak tertarik lagi memainkan laga di pertandingan yang sama (mengelola kampus)

Dalam pidato-nya di Bali, presiden Jokowi mengingatkan dunia agar janganlah seperti “game of throne” dimana pertandingan bersifat saling menaklukan seperti pertandingan terhingga. Satu untung berarti yang lain rugi. Padahal jika memakai prinsip jaringan komputer client-server jika ada yang membutuhkan maka perlu ada yang melayani. Client itu sendiri sejatinya adalah server bagi pengguna/user yang memakai piranti tersebut. Bagi rekan-rekan yang bekerja, selalu ingat prinsip melayani tersebut. Anda melayani dan sekaligus juga membutuhkan layanan orang lain. Anggaplah pertandingan tak terhingga di perusahaan tempat Anda bekerja. Jangan anggap jabatan yang diturunkan atau bahkan dipecat sebagai kekalahan, melainkan berhenti dan melanjutkan permainan di medan pertandingan menarik lainnya, selama nafas masih ada. Bisa jadi itu merupakan arahan tuhan agar kita berganti permainan, atau setidaknya mengarahkan ke tangga lainnya untuk maju, alias tidak “ngono-ngono thok” (gitu-gitu aja). Bagaimana agar bisa optimal dalam melayani? Tidak ada cara lain dengan terus “mengasah pedang” dan “melatih jurus-jurus” layaknya seorang samurai. Sehingga lebih optimal melayani dan client puas, yuk jadi server yang handal.

 

Membuat Kunci Komposit

[basis.data|akuntansi|lab.software|pert.4]

Kunci komposit adalah kunci yang merupakan gabungan dari beberapa field. Misalnya mahasiswa yang mengambil beberapa kelas mata kuliah dan kelas mata kuliah yang memiliki beberapa mahasiswa. Hal itu akibat dari hubungan/relasi Many-to-Many yang mengharuskan dibentuk satu tabel baru (Lihat Post sebelumnya). Untuk membuat kunci komposit pada Ms Access, gunakan SHIFT ketika menyorot field-field yang akan dijadikan primary key. Setelah itu tekan simbol key.

Instal Lex and Yacc untuk Praktikum Teknik Kompilasi

[tek.kompilasi|tek.informatika|s.103|pert.6]

Compilers and language atau yang di Indonesia dikenal dengan mata kuliah teknik kompilasi merupakan materi dasar ilmu komputer, teknik informatika atau sistem komputer. Isinya adalah seluk beluk bagaimana compiler bekerja dari saat scanning, parsing, hingga menghasilkan output dalam bahasa mesin (komputer).

Peran Kompiler

Dahulu, teori-teori kompilasi yang berasal dari teori automata dan grammar dapat diibaratkan “fardhu kifayah”. Hanya segelintir yang tertarik, karena fokusnya adalah menciptakan compiler yang handal dan interaktif, dimana tiap kesalahan dapat diketahui letak kesalahannya. Level mahasiswa doktoral yang biasanya mengutak-atik bidang ini.

Namun saat ini dengan makin memasyarakatnya bidang pemrograman, para pemerhati kompiler berusaha membuat compiler yang bahkan mensuport para anak-anak yang tertarik dengan bahasa pemrograman. Munculnya bahasa-bahasa baru seperti Groovy, Rust, Elixir, Go, Swift, Arduino, Kotlin, dan bahasa pemrograman untuk Android. Android sendiri sangat mensuport Kotlin yang merupakan bahasa pemrograman yang dirancang dalam rangka mengisi kelemahan-kelemahan Java.

Lex and Yacc

Lex yang merupakan Lexical Analyzer Generator bermaksud men-scan kode yang ditulis. Sementara pasangannya Yacc (yet another compilers compiler) berfungsi melakukan parsing berdasarkan grammar. Dengan lex and yacc ini kita dapat membuat kompiler sendiri yang akan memerintahkan komputer menjalankan instruksi sesuai keinginan kita. Misalnya jika dalam bahasa pemrograman rata-rata menggunakan kata “if-else”, maka kita bisa saja menggantinya menjadi “jika-maka” setelah mengaturnya dengan Lex and Yacc ini. Silahkan unduh sourcecode nya lewat Google, lalu instal.

Instalasi

Lex and Yacc dapat berjalan di banyak platform. Untuk mudahnya di sini akan kita coba pada Windows 10. Setelah memperoleh kode sumbernya, klik ganda hingga muncul informasi bahwa akan diinstal Lex and Yacc.

Tekan saja Next> untuk lanjut ke menu persetujuan. Tekan saja Agree.

Berikutnya, Lex and Yacc akan meminta folder tempat program diinstal. Arahkan sesuai dengan keinginan, atau biarkan secara default dengan menekan Next>.

Berikutnya instalasi menanyakan lokasi menu folder Lex and Yacc nantinya. Biarkan secara default saja.

Akhirnya setelah menekan tombol Install maka proses instalasi akan berjalan hingga selesai. Hanya butuh satu hingga beberapa menit.

Pastikan instalasi lengkap dan tombol Finish muncul. Centang jika ingin langsung menjalankan aplikasi ini.

Akan muncul konsol dos (CMD) ketika aplikasi ini berjalan. Tunggu sesaat.

Jika sudah muncul tampilan seperti gambar di bawah berarti Lex and Yacc sudah siap untuk digunakan. Silahkan cari tatacara penggunaannya, bahkan ada juga yang menyediakan sampel programnya. Selamat mencoba.

Menghitung Jumlah Kalimat dengan Regular Expression

[perolehan.inf|t.kom|lab.soft|per.4]

Jumlah kalimat dihitung berdasarkan jumlah stop indicator, dalam hal ini berupa simbol titik. Tentu saja ada beberapa kondisi khusus, misalnya ketika merepresentasikan sebuah bilangan, maka titik tidak dianggap sebagai stop condition. Termasuk juga untuk penunjukan bab atau referensi dalam tanda kurung.

Lanjutkan proyek sederhana perhitungan jumlah kata yang telah dibahas pada pertemuan yang lalu. Tambahkan sebuah tombol pushbutton dan edit text, masing-masing untuk perintah eksekusi dan mengeluarkan/mepresentasikan hasil eksekusi.

Fungsi Find

Silahkan ketik “help find” pada command window untuk mempelajari aturan penulisannya. Dengan melakukan kode di bawah ini pada fungsi Jumlah Kalimat = dapat diketahui lokasi dan jumlah titik yang dimiliki suatu string.

  • titik=find(handles.str==’.’)         %mencari lokasi karakter “.” berada
  • [baris,jlhtitik]=size(titik)            %mencari jumlah titik yang ditemukan
  • set(handles.edit3,’String’,jlhtitik)    %mengeluarkan jawab berapa banyak titik/sekaligus jlh kalimat

Perhatikan gambar di atas. Karena ada dua titik maka terhitung jumlah kalimatnya dua. Bagaimana jika ada titik yang ternyata bukan akhir sebuah kalimat, misalnya sub-bab atau angka decimal, dan lain-lain?

Fungsi Regular Expression (REGEXP)

Fungsi ini bermaksud mencari berdasarkan karakter (huruf per huruf). Fungsi ini digunakan ketika mencari kasus kusus jika ada angka dengan titik di dalamnya yang tidak dihitung sebagai stopping suatu kalimat.

  • titik=find(handles.str==’.’)            %menemukan karakter titik
  • [baris,jlhtitik]=size(titik)                %menghitung banyaknya titik
  • pat = {‘(\d)+[.]’};                    %keyword
  • angkatitik=regexp(handles.str,pat,’match’)    %mencari angka dengan titik
  • angka=angkatitik{1}                %mengeluarkan isi cell
  • [baris,jlhangka]=size(angka)            %menghitung berapa banyak angka-titik
  • jlhtitik=jlhtitik-jlhangka                %mengurangkan jlh titik
  • set(handles.edit3,’String’,jlhtitik)        %mengirim hasil pemrosesan teks

Instruksi pat={‘\d+[.]’) bermaksud mempersiapkan keyword fungsi regexp. Simbol \d+ maksudnya mencari angka desimal (simbol “d”) yang bersisian dengan titik (simbol “[.]”). Perhatikan titik harus dilingkupi dengan kurung kotak “[ ]” yang mengharuskan regexp menyamakan dengan karakter di dalam kurung tersebut, dalam hal ini titik.

Suatu string “Perhatikan gambar 3.2 di bawah ini.” jika menggunakan kode tambahan di atas akan menghasilkan jumlah kalimat yang tepat walaupun ada dua titik di sana karena titik yang berdekatan setelah angka dianggap bukan akhir kalimat. Tentu saja ada masalah jika string “Perhatikan gambar 3.”. Maka harus dibuat kode tambahan agar titik tersebut dianggap akhir kalimat, silahkan coba buat kode-nya sendiri untuk mengatasi hal tersebut.

Membuat Satu Halaman Landscape Pada Sebuah Naskah

[komputer1|psikologi|lab.soft|pert4]

Terkadang satu halaman karena berisi tabel yang melebar agar terlihat jelas dibutuhkan format landscape. Karena hanya satu lembar/page yang landscape maka diperlukan format section agar section lainnya tidak terpengaruh oleh format landscape-nya.

Menggunakan Fungsi Section Breaks

Format ini memisahkan satu section dengan section lainnya. Letakan kursor pada bab yang akan dibedakan section-nya. Lanjutkan dengan menu Page Layout Breaks Section Breaks dan lanjutkan memilih Next Page jika belum pindah halaman dan Continuous jika sudah pindah halaman.

Jika sudah selesai pastikan Section terpisah, misal section 1 dan section 2. Kemudian pada page/lembar berikutnya lakukan cara yang sama, sehingga section 2 yang akan landscape terpisah dengan section 1 dan section 2 yang portrait.

 

 

Kemudian lakukan hal yang sama untuk section 3. Jadi urutannya section-1, Section 2 dan section 3. Jika section 2 dirubah jadi landscape section 1 dan 3 tidak ikut landscape. Hanya saja perhatikan lagi format page number – nya. Selamat mencoba..