Mengenal Headless CMS

Mengenal Headless CMS

 

Siapa yang tak tahu tentang CMS? Mungkin semua akan sepakat bahwa mulai dari web developer hardcore yang harus menulis kode di mana pun dan kapan pun sampai ke penulis blog romantis yang harus minum kopi di saat senja dan turun hujan saat menuangkan idenya dalam tulisan membutuhkan content management system dalam mengelola suatu website. Terima kasih kepada WordPress sebagai platform CMS open source yang mempopulerkan blogging kepada siapa saja.

CMS dan Content Management System adalah sebuah sistem yang dibuat untuk mendukung penerbitan (dalam hal ini penerbitan di web) mulai dari penulisan, editing, modifikasi, dan publikasi konten. Tujuan CMS dibuat sebenarnya adalah untuk memudahkan penulis dalam mempublikasikan artikelnya. CMS juga mendukung iklim kolaboratif sehingga satu media bisa memiliki beberapa koresponden sekaligus yang bisa mengunggah artikelnya di mana saja dan kapan saja karena umumnya CMS dibuat dengan memanfaatkan teknologi Web.

 

CMS Tradisional

Sebelum kita membahas tentang headless CMS, mari kita mengingat kembali tentang karakteristik dan metode dari CMS tradisional seperti WordPress atau Joomla. Pada CMS tradisional, seorang user (dalam hal ini kreator konten) menulis konten di dalam sebuah editor baik WYSIWYG (What You See Is What You Get) di mana tampilan yang dituliskan hampir menyerupai tampilan ketika konten terpublikasi di halaman web, walaupun ada beberapa CMS yang hanya memiliki HTML editor di mana penulis harus memiliki pengetahuan tentang kode HTML. Konten yang ditulis ini kemudian disimpan dalam database dan kemudian disajikan oleh template tampilan yang dimiliki oleh CMS tersebut menjadi sebuah halaman web. Untuk lebih jelasnya dapat dilihat dari gambar berikut.

 

Mengenal Headless CMS 1

 

Jika kita menggunakan CMS, dalam mengubah tampilan akhir web yang bisa kita lakukan hanyalah mengganti template yang sudah disediakan oleh platform CMS tersebut. Lalu bagaimana jika ingin melakukan kustomisasi pada tampilan tampilan akhir halaman web? Ada dua cara yaitu menginstall plugin web builder pada CMS kita dan yang kedua adalah membuat mengedit file template yang ada di dalam CMS. Kedua solusi ini sama-sama mendatangkan problem baru. Website builder plugin dapat membuat performa web kita menurun karena banyak sekali proses yang berjalan sebelum halaman web berhasil ditampilkan. Sedangkan, jika kita memilih untuk mengedit sendiri file template yang berada di dalam CMS dapat dibayangkan berapa banyak waktu yang harus diperlukan untuk mempelajari ribuan baris kode yang dimiliki CMS tersebut dan tentu saja kita juga harus berada dalam batasan logic dari CMS tersebut.

Kekurangan dari CMS tradisional adalah banyak front-end developer yang tidak bisa mengembangkan bakat terpendamnya karena biasanya klien sebagai user dari CMS ingin sesuatu yang mudah digunakan dan sang back-end juga agaknya keberatan jika harus membuat CMS sendiri dengan deadline yang alakadarnya.

 

Headless CMS

Berbeda dari CMS tradisional memiliki komponen yang bisa langsung menyajikan tampilan front-end ke audience, headless CMS sama sekali tidak bisa men-generate halaman web secara otomatis. Inilah mengapa model CMS ini kemudian disebut ‘headless’ atau tanpa kepala yang berarti tak memiliki wajah. Kami sempat penasaran kenapa tidak disebut faceless saja agar tidak menimbulkan aura horor dan masih belum menemukan jawabannya.

Headless CMS tidak memliki sistem front-end secara default seperti CMS tradisional sehingga CMS ini sering disebut dengan front-end agnostic. Headless CMS menyajikan konten secara mentah melalui API. Hal ini menjadikan headless CMS dapat digunakan di berbagai macam framework. Untuk perbedaan lebih jelasnya bisa dilihat di gambar berikut.

 

Mengenal Headless CMS 2

 

Banyak dari developer headless CMS ini menyebut produknya sebagai CaaS (Content as a Service) hasil dari modifikasi SaaS (Software as a Service). Jika sebelumnya developer CMS versi komersial tradisional menjual secara bundling (domain, platform CMS, dan hosting). Untuk developer headless CMS komersial biasanya menerapkan tarif sesuai dengan besarnya konten. Tapi jangan khawatir dulu, banyak juga headless CMS open source gratis yang bisa kita deploy sendiri di cloud VPS milik kita.

Hadirnya headless CMS ini tidak langsung serta-merta menyelesaikan masalah yang dibahas dalam CMS tradisional sebelumnya. Sama seperti sistem-sistem yang lain, headless CMS ini memiliki pro dan kontra.

Pro

Inilah beberapa kelebihan headless CMS bila dibandingkan dengan CMS tradisional:

  • Front-end agnostic
    Ini merupakan alasan kenapa headless CMS diciptakan. Konten yang berada dalam headless CMS dapat disesuaikan dengan platform framework front-end seperti React, Vue, atau Angular.
  • API
    Headless CMS menggunakan API sebagai penghubung antara back-end dan front-end yang pada dasarnya merupakan dua sistem yang terpisah dan juga memungkinkan berada dalam 2 server yang berbeda. Hal ini berarti menurunkan resiko kehilangan seluruh konten jika ada yang berhasil menembus keamanan web server kita.
  • Future proof
    Karena headless CMS pada dasarnya hanya menyajikan data mentah, jika ada inovasi teknologi baru maka konten-konten yang ada di dalam CMS ini dapat dengan cepat disesuaikan. Sebagai contoh, jika ada platform voice assistant baru di device tanpa layar seperti smartwatch atau smart speaker maka kita akan dengan mudah memasukkan konten kita di platform tersebut.

Kontra

Selain kelebihan-kelebihan di atas, headless CMS juga memiliki beberapa kekurangan sebagai berikut :

  • Tidak Untuk Semua Orang
    Sebagian besar orang yang menggunakan CMS tradisional seperti WordPress tidak memiliki pengetahuan tentang pemrograman. Sementara headless CMS ini menuntut seseorang untuk memiliki pengetahuan tentang pemrograman web. Hal ini membuat para blogger dan pemasar digital enggan menggunakan headless CMS.
  • Memiliki 2 Stack Yang Terpisah
    Selain jadi kelebihan yang sudah terlebih dahulu dibahas, memiliki 2 stack terpisah antara front-end dan back-end juga bisa menjadi kekurangan bagi headless CMS. Bayangkan berapa besar effort maupun waktu yang kita butuhkan untuk membuat dua stack yang terpisah demi membuat blog pribadi.
  • Tidak Ada Preview
    Para kreator konten selaku pengguna sebuah CMS sering mem-preview konten yang mereka buat agar sesuai dengan yang mereka inginkan. Masalahnya, di dalam headless CMS tidak ada preview terlebih dahulu kecuali kita memisahkan antara fase staging dan production yang mana akan lebih menghabiskan waktu dan effort.

 

***

 

Bagaimana? Sudah mempertimbangkan apakah headless CMS merupakan solusi yang tepat untuk kalian? Jika kalian adalah seorang yang sudah terbiasa membuat website dan sudah cinta mati dengan yang namanya headless CMS, kalian bisa tunggu artikel kami selanjutnya yang akan membandingkan satu per satu platform headless CMS seperti Directus, Strapi, ataupun Butter.

Teknologi Web Yang Akan Menjadi Tren di Tahun 2019

Teknologi Web Yang Akan Menjadi Tren di Tahun 2019

 

Beberapa waktu yang lalu, kami sempat mempos di media sosial tentang tingkat popularitas bahasa pemrograman di tahun 2018 lalu. Dalam pos tersebut, kita dapat melihat bahwa Javascript (yang seharusnya secara resmi disebut ECMAScript) sebagai bahasa pemrograman web mengalami peningkatan, sementara bahasa pemrograman Java yang digunakan dalam pengembangan aplikasi Android justru menurun. Padahal, saat ini hampir semua orang memiliki smartphone di mana Android menguasai sistem operasi perangkat mobile jika dilihat jumlah penggunanya.

Jika kita menilik kembali 5 tahun belakangan ini, perkembangan teknologi web semakin cepat bila dibandingkan dengan tahun-tahun sebelumnya. Framework-framewok pengembangan aplikasi web pun tumbuh cepat apalagi sejak hadirnya node.js di mana Javascript dapat digunakan sebagai bahasa pemrograman back-end. Belum lagi Google perusahaan teknologi yang memang dulunya lahir sebagai aplikasi web menambahkan banyak fitur dalam Chrome agar para pengembang web dapat mendobrak batasan-batasan dalam aplikasi web.

Beberapa tahun yang lalu kita juga mengenal istilah responsive design yang sering dibawa-bawa oleh pengembang web dalam menawarkan jasanya. Responsive design waktu itu memang suatu yang sebaiknya dimiliki oleh website. Sekarang? Website bisa dikatakan ketinggalan jaman, jadul, atau bahkan bisa disangka artefak jika desainnya tidak responsif. Di tahun 2019 tren teknologi web sudah beralih ke teknologi yang lebih canggih dari sekedar desain yang responsif. Berikut ini adalah tren teknologi web yang bisa Anda bangga-banggakan dalam portfolio Anda sebagai pengembang web.

 

Progressive Web Application

Progressive Web Application mungkin adalah teknologi yang paling berpengaruh dalam pengembangan aplikasi web. Secara singkat, Progressive Web Application (PWA) adalah aplikasi web yang memiliki experience layaknya aplikasi native baik mobile atau desktop. Experience ini dapat berupa push notification, dapat dibuka secara offline, serta akses terhadap hardware yang ada di device seperti GPS, kamera, dan sensor-sensor yang lain.

Teknologi ini diinisiasi oleh Google. Seperti yang kita ketahui bahwa selain Android, Google juga memiliki operating system yang dipakai di laptop dengan harga terjangkau yaitu Chrome OS. Pada dasarnya Chrome OS ini adalah sebuah browser yang dijadikan operating system dengan kernel Linux di dalamnya. Jadi agar environment Chrome OS ini tidak miskin aplikasi Google berusaha mendorong para web developer untuk menjadikan PWA sebagai standar aplikasi web. Selain itu, kabarnya Google juga sedang mengembangkan Fuchsia OS (sebuah operating system mirip Chrome OS tapi untuk perangkat mobile) yang disiapkan untuk menggantikan Android.

 

Teknologi Web Yang Akan Menjadi Tren di Tahun 2019 3

 

Contoh beberapa aplikasi terkenal yang sudah menggunakan teknologi PWA antara lain:

  • Alibaba
  • Twitter
  • The Washington Post

Anda bisa mengikuti Pelatihan Progressive Web App (PWA) dari Inixindo Jogja jika Anda ingin bisa mengembangkan web dengan teknologi ini.

Accelerated Mobile Pages

Siapa yang tak kenal Google News? Aplikasi milik Google yang tersedia di Android dan iOS ini memiliki fungsi membagikan berita ke pengguna sesuai dengan minat dari penggunanya. Konten yang dibagikan oleh Google News tersebut merupakan konten yang telah mendukung format Accelerated Mobile Pages (AMP). Accelerated Mobile Pages (AMP) adalah sebuah framework pengembangan web minimalis. Hanya HTML dan CSS saja dalam halaman web AMP tidak ada Javascript.

Misi dari AMP ini adalah me-load halaman web dalam waktu kurang dari dua detik. Oleh karena itu, penggunaan AMP cocok untuk halaman berita dan blog di mana konten artikel atau foto menjadi elemen utama. Selain itu, keuntungan sebuah halaman web yang mendukung format AMP adalah SERP. Ya! AMP ini sangat berpengaruh terhadap ranking halaman web di Google Search. Bukan rahasia lagi jika algoritma web crawler yang dimiliki Google sekarang lebih mengutamakan performa web sebuah eksternal link.

Anda bisa melihat dokumentasi dari AMP Project di sini.

 

Voice Search Optimization

Voice search memang fitur yang masih jarang dimanfaatkan oleh orang Indonesia. Home speaker pintar dari Amazon, Apple, atau Google bukan barang yang dicari. Memang fitur Google Assistant atau SIRI terpasang secara default di perangkat Android atau iPhone tapi karena terkendala oleh masalah bahasa masih jarang juga orang Indonesia yang memakai fitur ini. Walaupun begitu, seiring dengan berjalannya waktu, AI dari masing-masing voice assistant tentunya akan semakin pintar karena terus akan mempelajari bahasa selain Bahasa Inggris.

Voice search optimization merupakan metode optimasi halaman web agar pengguna dapat melakukan interaksi dengan halaman web tersebut melalui suara. Sebenarnya Voice Search Optimization memiliki tujuan yang mulia yaitu agar sebuah web dapat menjangkau siapa saja termasuk tuna netra. Dalam voice search API terdapat dua komponen yaitu speech recognition dan speech synthesis. Untuk melihat dokumentasinya Anda bisa klik di sini.

 

API First Development

Konektivitas antar aplikasi tentunya sudah menjadi suatu hal yang semestinya di jaman di mana hampir semua orang menggunakan aplikasi dalam aktivitas sehari-hari. Integrasi antar dua aplikasi atau lebih ini biasanya sering dimanfaatkan oleh website e-commerce dengan melakukan integrasi pembayaran, pengiriman, lokasi, ataupun kurs mata uang. Semuanya memanfaatkan teknologi yang disebut application programming interfaces (API).

API memang bukan teknologi baru yang baru di sini adalah development yang berbasis API. Apa bedanya? Biasanya pengembangan aplikasi atau web tidak terfokus pada API. Pengembangan API sering kali dianggap sebagai proyek sampingan yang tidak memiliki proses desain, pengembangan, dan testing yang baik.

Pada development tradisional proses yang biasanya terjadi adalah sebagai berikut:

  1. Tim R&D menciptakan desain aplikasi
  2. Tim back-end developers mengerjakan prototype sementara tim yang lain seperti QA dan front end menunggu.
  3. Setelah prototype jadi tim QA dan front-end mendapatkan akses dan langsung bekerja
  4. Jika terdapat bugs, penambahan fitur, atau pun improvement, siklus di atas akan berulang.

Teknologi Web Yang Akan Menjadi Tren di Tahun 2019 4

Sedangkan pada API first development, suatu tim tidak harus menunggu tim yang lain menyelesaikan sebuah pekerjaannya. API first development menggunakan API mocking (baca di sini untuk mengetahui apa itu API mocking) sehingga QA, back-end, dan front-end bisa bekerja secara simultan.

Teknologi Web Yang Akan Menjadi Tren di Tahun 2019 5

***

Itulah tadi teknologi web yang akan menjadi tren di 2019. Bagi kalian yang ingin membuat project web app tidak ada salahnya untuk belajar lebih dalam mengenai teknologi yang sudah disebutkan tadi.

Daftar Istilah A-Z Yang Sering Dipakai Dalam Machine Learning

Daftar Istilah A-Z Yang Sering Dipakai Dalam Machine Learning

Beberapa waktu yang lalu kami telah banyak menulis artikel tentang machine learning (konsep dasar, tutorial, sampai hubungan antara teori chaos dan machine learning). Karena banyak dari pembaca yang protes karena artikel tersebut penuh dengan istilah teknis dan agar para pembaca tidak perlu membuat machine learning yang dapat mengartikan istilah asing dalam artikel dan tutorial machine learning, maka kami akan membuatkan semacam glosarium untuk istilah-istilah yang sering dipakai dalam machine learning.

Kami akan memakai istilah asli yang ditulis dalam Bahasa Inggris untuk menghindari kesalahan pemilihan kata terjemahan. Istilah-istilah tersebut akan diurutkan secara alfabetik sehingga mempermudah Anda untuk melakukan pencarian.

*****

A/B Testing

Metode statistik dasar yang digunakan untuk membandingkan 2 cara atau lebih. A/B testing digunakan untuk mengukur cara/teknik mana yang memiliki performa lebih tinggi. Selain itu A/B testing juga digunakan untuk mengetahui seberapa signifikan perbedaan antar teknik/cara tersebut.

Artificial Intelligence

Sebenarnya istilah ini sudah dibahas pada artikel sebelumnya tapi demi kepentingan kelengkapan glosarium, kami tetap akan membahasnya.  Artificial intelligence jika diterjemahkan secara harfiah adalah kecerdasan buatan. Istilah ini sebenarnya sudah lama dipakai bahkan awal perkembangan teknologi komputer. Konsep artificial Intelligence yang sering disingkat sebagai AI ini adalah bagaimana membuat mesin dalam hal ini komputer dapat berpikir layaknya manusia mulai dari analisis sampai pengambilan keputusan. Nah, machine learning termasuk salah satu metode dalam artificial intelligence di mana komputer dapat belajar dengan sendirinya untuk menjadi ‘cerdas’.

Classification Model

Salah satu tipe machine learning yang dapat membedakan dua data atau lebih menurut kelas. Contohnya dalam model natural pengklasifikasian bahasa yang dapat membedakan apakah suatu kalimat ditulis dalam Bahasa Inggris, Perancis atau Bahasa Indonesia. Contoh lain untuk model machine learning adalah regression model.

Clustering

Metode dalam mengidentifikasi data dengan cara membuat grup data secara vektoral berdasarkan kemiripan data. Metode ini digunakan dalam unsupervised learning. Ada beberapa metode clustering seperti K-mean dan K-median.

Data Augmentation

Data augmentation merupakan metode untuk meningkatkan jumlah examples dengan cara mentransformasi example yang sudah ada. Sebagai contoh, jika Anda ingin membuat machine learning yang bisa mengidentifikasi bunga akan tetapi Anda hanya punya satu gambar bunga sebagai example. Karena machine learning merasa butuh lebih dari satu example, maka dia menciptakan gambar baru dengan cara memutar, men-distort, ataupun membalik gambar tadi sehingga tercipta beberapa example baru.

Data Set

Kumpulan dari beberapa example.

Deep Model

Deep model ini biasa disebut dengan istilah deep learning. Deep model menggunakan metode berlapis (neural networks) yang disebut layer di mana setiap lapisan layer terdiri dari neuron. Di tengah lapisan itu terdapat lapisan yang disebut dengan hidden layers. Model ini terinspirasi dari bagaimana cara otak manusia bekerja.

Example

Satu barisan dalam satu data set yang memiliki feature dan label.

Feature

Sebuah input variabel dalam membuat prediksi.

Hierarchical Cluster

Metode clustering yang dilakukan dengan membuat cabang-cabang bertingkat. Metode ini terinspirasi dari bagaimana manusia mengidentifikasi jenis hewan atau tanaman melalui spesies, jenis, ordo, dsb.

K-Means

Sebuah metode clustering yang paling populer dalam unsupervised learning. K-means membuat cluster berdasarkan jarak antara titik tengah yang disebut centroids dengan example.

K-Median

K-Median hampir mirip dengan metode K-Means. Bedanya adalah formula dalam menentukan cluster.

Label

Label merupakan hasil dari pengelompokan example melalui clustering. Sebagai contoh, machine learning yang berfungsi menyaring email spam, melabeli setiap example dengan ‘spam’ atau ‘not spam’.

Model

Model sebenarnya merupakan sebuah fungsi yang berfungsi mengatur bagaimana machine learning mengambil input dan mengeluarkan output yang berupa prediksi.

Neural Network

Neural network merupakan kumpulan layer yang setiap layer-nya terdiri dari sebuah neuron. Neuron berfungsi layaknya transistor dalam komponen elektronik. Bedanya, jika transistor memiliki 3 kaki, neuron memiliki jumlah kaki yang tergantung dari posisi layer dan jumlah neuron di dalam layer.

Regression

Regression (mengacu pada regression model) adalah sebuah model menghasilkan nilai output berupa bilangan pecahan (floating point). Berbeda dengan classification model yang memiliki bilangan bulat pada outputnya.

Supervised Learning

Merupakan model pembelajaran pada machine learning di mana kita menentukan label pada beberapa example dengan harapan machine learning dapat menentukan label terhadap input baru yang masuk.

Unsupervised Learning

Kebalikan dari supervised learning, dalam model pembelajaran unsupervised learning ini kita tidak menentukan label dalam dataset. Metode ini menggunakan clustering di mana machine learning melakukan pengelompokan sendiri di dalam data set.

A C D E F H K L M N R S U

***

Jika Anda tertarik untuk bisa membuat machine learning yang dapat membantu perusahaan/organisasi Anda dalam mengambil keputusan, Anda bisa mengikuti Kelas Pelatihan Machine Learning dari Inixindo Jogja. Klik di sini untuk info lebih lanjut dan permintaan penawaran.

Machine Learning Yang Mencoba Mengubah Teori Chaos

Machine Learning Yang Mencoba Mengubah Teori Chaos

 

Pernahkah kita melihat langit di malam hari apapun alasannya, baik itu gara-gara kurang kerjaan, sedang melakukan penelitian di bidang astronomi, atau pun sedang berbasa-basi pada kencan pertama karena grogi. Jika kita perhatikan susunan bintang di angkasa tampak seperti titik-titik terang acak yang tersebar di angkasa. Tapi terkadang ada satu pertanyaan konyol tiba-tiba saja muncul dalam pikiran ‘kenapa letak Alpha Centauri di sini dan Proxima Centauri di situ?’

 

Kita Hidup di Dunia yang Tak Beraturan

Pertanyaan macam itu sebenarnya tak hanya muncul, saat kita melihat bintang saja. Pada masa di mana manusia masih belum bisa memprediksi cuaca, turunnya hujan pun dianggap sesuatu yang acak. Memang dari dulu kita sudah bisa menentukan kapan pergantian musim akan terjadi tapi jam berapa dan berapa lama akan turun hujan kita sama sekali tidak memiliki gambaran. Berbeda dengan sekarang, di mana kita bisa mengetahui jam berapa dan seberapa deras hujan yang akan turun.

Tak hanya masalah cuaca, di dunia indah yang kita tinggali ini banyak pola-pola acak yang membuat manusia kehabisan akal untuk bisa memprediksinya termasuk perilaku manusia itu sendiri. Itulah mengapa dunia pemasaran yang sangat dipengaruhi oleh perilaku manusia dianggap sebagai kawin silang antara ilmu ekonomi dan seni.

 

Teori Chaos

Walaupun disebut sebagai sesuatu yang tak beraturan, sebenarnya pola-pola acak memiliki teorinya sendiri yang terkenal dengan sebutan chaos theory. Teori ini pertama kali dikemukakan oleh Edward Lorenz seorang matematikawan dan meteorologis dari Amerika Serikat. Saat dia hendak memasukkan angka variabel dalam program komputernya, Lorenz terburu-buru mengambil kopi sehingga angka yang dia masukan tak lengkap selisih 3 angka di belakang koma dari yang seharusnya 0,506127 menjadi 0,506 . Selisih angka yang tak seberapa ini ternyata merubah seluruh pola perkiraan cuaca.

Kejadian ini kemudian dimetaforakan oleh Lorenz bahwa satu kepakan kupu-kupu di Amazon dapat menyebabkan badai di New York yang kemudian disebut dengan ‘butterfly effect’.  Butterfly Effect merupakan lahirnya teori chaos. Pada tahun 2007 Lorenz mengatakan bahwa teori chaos membuktikan bahwa cuaca tak bisa diprediksi jauh-jauh hari sebelumnya. Teknologi paling canggih yang digunakan sekarang hanya bisa memprediksi cuaca paling lama 2 minggu ke depan.

Jika kita berpikir secara mendalam lagi, chaos atau ketidakteraturan dialami oleh hal yang paling mendasar di alam semesta kita yaitu pergerakan atom yang masih menjadi misteri. Bahkan umat manusia tercatat telah membangun terowongan sepanjang 27 KM (Large Hadron Collider)  hanya untuk meneliti pergerakan partikel penyusun atom ini.

 

Bagaimana Machine Learning Memprediksi ‘Ketidakteraturan’.

Machine learning merupakan teknologi baru yang mencoba untuk menyelesaikan permasalahan teori chaos ini. Machine learning menggunakan teknik statistik dalam sebuah sistem komputer yang menganalisis data di mana data tersebut masih terus berkembang. Untuk memahami machine learning secara fundamental, Anda dapat mengunjungi artikel Mengenal Machine Learning dari kami sebelumnya.

Machine learning sebenarnya dituntut untuk menciptakan model dari sebuah sistem chaos yang masih sama sekali belum diketahui rumus persamaannya seperti menentukan gerakan api dari kayu yang terbakar. Memang tugas yang diberikan oleh machine learning terdengar tidak mungkin untuk diselesaikan. Akan tetapi dengan data yang cukup, machine learning dapat menentukan cluster data yang digunakan untuk mengklasifikasikan data. Metode ini adalah metode yang digunakan dalam mekanika kuantum di mana pergerakan elektron memiliki suatu pola yang sebenarnya tidak terlalu acak jika kita memiliki mengamati pergerakannya sebanyak satu juta kali misalnya.

Metode data clustering ini termasuk dalam kategori unsupervised learning di mana kita sama sekali tidak memprogram “mesin yang sedang belajar” ini untuk memberi label terhadap input data. Si mesin hanya membuat grup data berdasarkan kemiripan antara satu data dengan data yang lain. Jika Anda pernah beriklan di FB Ads atau Google Ads, Anda tentunya familiar dengan istilah ‘look alike’ atau ‘similar user’. Istilah tersebut digunakan dalam menentukan target audience dari iklan yang akan kita tayangkan di media sosial atau pun di search engine. Look a Like (digunakan oleh Facebook) atau Similar User (digunakan oleh Google) merupakan kelompok audience memiliki kesamaan atribut data dengan pengguna apps atau pengunjung website yang kita miliki. Tentunya metode ini hanya bisa digunakan jika kita telah melakukan pengumpulan data (data mining) bisa dengan Google Analytics maupun Facebook Pixel. Lalu apa saja kesamaan data yang dimiliki target audience tersebut dengan pengguna apps atau pengunjung website kita? Kita tak akan pernah tahu dan mungkin si pembuat machine learning milik Google atau Facebook juga tak seberapa tahu.

 

Dengan Adanya Machine Learning Apakah Masih Ada Yang Disebut Dengan Ketidakteraturan?

Sebenarnya masih banyak persoalan yang masih belum terpecahkan walaupun kita menggunakan machine learning. Akan tetapi jika kita memberi kesempatan kepada machine learning untuk terus belajar siapa tahu machine learning akan mengalahkan manusia di segala bidang. Bahkan belakangan perusahaan search engine terbesar di dunia sedang mengembangkan machine learning dalam Artificial Intelligence yang bisa membuat Artificial Intelligence sendiri.

Perkembangan machine learning yang semakin cepat ini kemudian memunculkan pertanyaan di atas, apakah masih ada yang disebut dengan ketidakteraturan? Apakah semua hal di semesta ini cuma sebuah algoritma hukum sebab-akibat?

 

****

 

Jika Anda tertarik untuk mempelajari machine learning lebih dalam lagi, Anda dapat mengikuti Kelas Machine Learning yang diselenggarakan oleh Inixindo Jogja.

Infografis Tentang Informasi & Data Mengenai Infografis

Infografis Tentang Informasi & Data Mengenai Infografis

 

Meme di atas mungkin adalah gambar ilustrasi yang memiliki tingkat relevansi paling tinggi terhadap judul dari puluhan artikel yang ada di Inixindo Jogja. Agak berbeda dari artikel-artikel sebelumnya, artikel tentang infografis kali ini akan disampaikan dalam bentuk infografis. Kami berpendapat bahwa jika disampaikan dalam bentuk tulisan akan menjadi hal yang kontra produktif. Itulah alasan kami menyampaikan informasi tentang infografis dengan infografis. Agar keren Anda juga boleh menyebutnya sebagai infographiception.

 

“Infografis menjadi populer sejak beberapa dekade lalu, bahkan sebelum adanya internet booming”

Infografis Tentang Informasi & Data Mengenai Infografis 6
Infografis Tentang Informasi & Data Mengenai Infografis 7
Infografis Tentang Informasi & Data Mengenai Infografis 8

“Secara alami, sinyal visual lebih cepat dan mudah ditangkap oleh manusia”

Infografis Tentang Informasi & Data Mengenai Infografis 9
Infografis Tentang Informasi & Data Mengenai Infografis 10
Infografis Tentang Informasi & Data Mengenai Infografis 11

“Terlebih lagi sekarang manusia terpapar dengan jumlah informasi yang lebih banyak dibanding sebelumnya”

Infografis Tentang Informasi & Data Mengenai Infografis 12

“Infografis lebih menarik perhatian audiens bila dibandingkan dengan informasi berupa teks biasa”

Infografis Tentang Informasi & Data Mengenai Infografis 13

“Tulisan yang disertai gambar lebih mudah dipahami”

Infografis Tentang Informasi & Data Mengenai Infografis 14

“Informasi visual dapat membantu untuk mempersuasi”

Infografis Tentang Informasi & Data Mengenai Infografis 15

“Jika Anda ingin mempelajari lebih dalam tentang Infografis,

Anda dapat mengikuti kelas ‘Boost Your Data Visualization with Infographic’

di Inixindo Jogja”

Untuk informasi dan pendaftaran kunjungi tautan berikut!

Infografis Tentang Informasi & Data Mengenai Infografis 16
Kiat-Kiat Menjadi Programmer Freelance

Kiat-Kiat Menjadi Programmer Freelance

Beberapa bulan lalu kita telah sempat membahas tentang tips belajar coding secara otodidak. Siapa tahu setelah beberapa bulan membaca artikel itu kalian sudah menjadi seorang programmer yang siap tempur di dunia nyata. Inilah saatnya kalian memutuskan apakah ingin bekerja di perusahaan atau menjadi programmer freelance. Tentu keduanya ada plus minusnya. Bagi programmer ‘kantoran’ yang sudah ngebet ingin jadi programmer freelance gara-gara iri melihat teman seperjuangan yang berstatus pekerja lepas bisa kerja sambil jalan-jalan, tahan dulu hasrat kalian yang sudah memucuk itu karena kita akan membahas kelebihan dan kekurangan dari masing-masing model kerja antara freelance dan employee terlebih dahulu.

 

Programmer Kantoran

Programmer kantoran biasanya dibagi lagi menurut perusahaan yang merekrutnya, jika berada di perusahaan yang sudah bertransformasi ke arah digital apalagi tech start up, kalian akan lebih diarahkan untuk menjadi seorang spesialis. Akan tetapi, jika kalian bekerja di perusahaan kecil apalagi yang belum melek digital siap-siap saja disuruh untuk menjadi programmer setengah dewa, single fighter, atau apapun istilahnya karena semua yang berhubungan dengan software diserahkan oleh programmer. Bahkan tak jarang programmer yang memiliki sambilan sebagai IT support.

Secara umum programmer kantoran tidak jauh berbeda dengan pekerja kantoran yang lainnya, jam kerja yang rutin, fasilitas-fasilitas yang sudah disediakan seperti tempat kerja, perlengkapan dan alat-alat kerja, bahkan mungkin asuransi yang ditanggung oleh perusahaan. Tak perlu mengeluarkan modal kecuali badan dan otak.

 

Programmer Freelance

Programmer freelance memiliki keuntungan di jam kerja yang suka-suka, tempat kerja yang suka-suka, dan workflow yang tentunya juga suka-suka. Maka tak heran jika banyak freelancer yang bisa berpelesir ke luar negeri dan masih bisa meneruskan project yang sedang ditanganinya. Selain itu, freelancer juga bisa memilih project seperti apa yang akan dia terima. Hal ini jarang bisa dilakukan oleh programmer kantoran karena mau tak mau dia harus mengikuti alur kerja yang sudah ditetapkan oleh perusahaan.

Akan tetapi, menjadi seorang programmer freelance memiliki sebuah resiko yang besar yaitu tidak mendapatkan klien sama sekali. Bahkan ada beberapa programmer kantoran yang memutuskan untuk jadi freelance tapi akhirnya memutuskan untuk kembali bekerja sebagai programmer kantoran. Sama seperti seorang pengusaha, jika kalian ingin menjadi programmer freelance kalian tidak hanya harus memikirkan tentang kode yang kalian tulis, tapi kalian juga diwajibkan untuk memikirkan bagaimana memasarkan dan mengelola diri kalian sendiri.

Jika sudah memikirkan masak-masak dan yakin bahwa menjadi programmer freelance adalah jalan hidup kalian, kita akan bahas bagaimana kiat-kiat agar menjadi programmer freelance yang sukses.

 

Menjadi Seorang Spesialis

Seperti yang sudah dibahas sebelumnya bahwa jika bekerja di perusahan besar yang melek digital atau tech startup kita diharapkan untuk menjadi seorang spesialis. Seorang spesialis ini adalah seorang yang benar-benar menguasai suatu bahasa pemrograman atau framework tertentu. Kebanyakan dari para perekrut freelancer membutuhkan programmer freelance untuk membantunya menyelesaikan project. Oleh karena itu, para perekrut tersebut sengaja mencari freelancer dengan keahlian yang tidak dimiliki oleh tim yang sudah ada.

Permasalahan yang timbul adalah seperti di bidang fashion, teknologi pun mempunyai tren yang bisa berubah sewaktu-waktu. PHP contohnya, dua tahun lalu bahasa pemrograman PHP dan framework-framework-nya masih merajai pemrograman back-end. Pada tahun ini Javascript pelan-pelan mulai mengambil alih pemrograman backend dengan Node.Js. Itulah mengapa jika kita ingin menjadi programmer freelance kita harus memiliki spesialisasi yang bisa menyesuaikan perkembangan teknologi. Intinya adalah jangan pernah lelah untuk belajar.

 

Perbanyak Portfolio

Sangat jarang atau bahkan mungkin tidak ada perekrut yang melakukan proses seleksi dengan melakukan tes terhadap programmer freelance yang hendak dia rekrut. Selain karena menghabiskan waktu, para freelancer juga biasanya enggan untuk melakukan tes mungkin karena posisi geografis yang berjauhan. Para perekrut tersebut melakukan seleksi dengan cara melihat portfolio para freelancer terlebih dahulu.

Di awal karir, kalian bisa membangun portfolio dengan mengerjakan project pribadi atau bergabung dengan project “kerja bakti” yang biasanya juga diinisiasi oleh sesama programmer freelance. Ingat, portfolio bagi programmer freelance adalah senjata utama. Kekuatannya lebih ampuh daripada ijazah S2 Teknik Informatika sekalipun.

 

Tentukan Tarif Kerja

Project pribadi dan project “kerja bakti” telah selesai. Kini saatnya menilai dan menghargai (makna sebenarnya yaitu menetapkan harga, Red) diri kita sendiri. Kita bisa membandingkan dengan harga pasaran yang ada di situs-situs crowdsourcing seperti Upwork atau Freelancer. Kunjungi profil dari freelancer yang lain. Buka portfolionya. Cari tahu keahliannya lalu bandingkan semuanya dengan apa yang kita punya. Di sinilah objektivitas dan kepercayaan diri kalian akan diuji melalui pertanyaan ‘apakah pantas saya memiliki rate sama dengan orang itu atau bahkan lebih tinggi’ dan jangan lupa sesuaikan juga dengan standar di tempat domisili kalian.

Dalam dunia freelance para programmer memiliki rate per jam kerja tapi juga ada yang menerapkan tarif per project. Sebaiknya kalian menentukan tarif di keduanya supaya bisa memberikan klien opsi lebih.

 

Jual Keahlianmu

Kata ‘menjual diri’ mungkin dianggap negatif bagi sebagian orang. Tapi jika kalian memutuskan untuk menjadi seorang programmer freelance, kalian mau tak mau melakukan proses pemasaran keahlian kalian sendiri. Programmer freelance haruslah paham mengenai konsep personal branding. Bayangkanlah nama kalian menjadi sebuah brand mirip seperti praktisi advokat hukum atau praktisi periklanan di mana nama merekalah yang menjadi merk dagang.

Selain mem-branding diri, kalian juga harus memperbanyak network dengan bergabung di berbagai macam komunitas. Seperti yang disebut di atas, banyak klien datang dari kalangan programmer sendiri karena mereka memang kekurangan tenaga. Bukan tidak mungkin antara sesama programmer freelance kemudian membentuk kongsi software house sendiri.

 

***

Bagaimana? Setelah tahu bahwa menjadi programmer freelance tidak semudah copy paste fungsi di Stack Overflow masihkah niat kalian menggebu-gebu? Tapi jangan khawatir, tantangan yang lebih besar akan membuat diri kita terus berkembang.

WhatsApp chat Chat via Whatsapp