Go-Jek and Tuyul: A Tale of Digital Age

This post is the sequel of the previous post about Go-Jek, where I have explained what it is. As for “tuyul”, you may haven’t got it, right? Actually it’s the name of a kind of ghost (in South East Asian archipelago) of mischievous thief in a form of small child or baby, and it’s bald-headed.

You may begin puzzled with this post title, after reading that definition of “tuyul” (or “toyol” in Malay). Yeah, an app of ride-sharing service is completely nothing to do with mythical creatures. But, that ghost, now has transformed into digital creatures. Its job remains unchanged: stealing money. Of course not the real money we usually use to buy some goods.

So, the “tuyul” here is a term they call for the fraud they do by faking their current location. Technically, Go-Jek drivers would obtain passengers who are in the nearby location.  Since the mechanism to obtain the passenger is to as quickly as possible grasp the orders be as nearest as possible to the passenger, there is a fierce competition among the drivers. So, to obtain more passengers, they have to stand by in a crowded place where is potential enough that the passengers likely will order a ride. While, there are of course other drivers waiting for passengers as well. Some of them, then, come up with that fraudulent behavior: make use of that bald-headed mischievous “thief”.

Actually, I keep on thinking of the moment when a Go-Jek driver got mad of me last night. That’s why I write this post. I ordered a ride with Go-Jek app in the late night. I suspected the driver was deceiving his real location with the “tuyul”. I just didn’t want to wait longer for the pick-up, because I saw weirdness, then. I threatened him by telling –via chat in the app– that I would cancel the order. I didn’t know that the cancellation was a big deal for him.

That naive-ness drove me crazy all this day, and I quite worry if the driver may take revenge of me. I keep on thinking why on earth I got so sick of fraudulent. But of course I don’t know whether that driver using “tuyul” or not. It’s just my own prejudice. O God, forgive me!

I just didn’t understand either, why that driver got very mad of me due to that threat. I understand that it’s been late, and yeah, life is hard. Actually though, I still want to take ride and continue my order, if he arrive no longer than I was worry of. But, let bygones be bygones. And let it be a lesson for me. I’m really sorry, bro, if you read this.


Let’s talk about the fraud again, and why I got so sick of it. I think, such fraud is unfair, isn’t it? Not only for passengers, but also for other drivers. Think of it! The passenger who orders a ride, would wait for pick-up much longer, if the real location of driver is fake. And for other drivers, honest one, who don’t use fraudulent and still want to stand-by in the real location, even it’s in the sun and sweating, they are cheated by their own fellows. It’s so painful, you know.

I remembered the lecture of Sharia Micro-Economics in the last week. The lecturer, Pak Hafidz told us about barakah (blessings) as an aspect to achieve maslahah (welfare, benefit) in Islamic economics.1 The formulation of maslahah is:

M = Π + B

where M is Maslahah, Π (Pi) is total revenue (in terms of production), B is Barakah (you may read another formulation interpretation in the footnote2)

It’s reasonable that everyone wants to maximize the income / revenue of his/her work or production. And it’s legal, as long as it’s conducted in a correct way. Islam also encourage us to take maximum advantage in the production or selling. But, Islam has some guidelines and rules to achieve that: maslahah.

Everyone can gain the maximum revenue, in any way. But if it doesn’t include barakah, then it would not achieve maslahah. Instead, it may cause harmful impact. Just like the “tuyul” we are talking about.

It can’t be denied that if we apply barakah, it would increase total cost or effort. For instance, the innocent Go-Jek drivers would need more efforts and sacrifice, i.e to stand by waiting for passenger, perhaps in a uncomfortable place as well. But they would not do harm to other drivers as well as passengers. They don’t grabbed other drivers’ rights, and the passengers don’t need to wait any longer for pick-up. And “tuyul” is in contrast.

However, it’s the reality, that there are many people do fraud for the sake of their personal gain. They don’t take into account from where their money come from. May God gives them guidance. And may you and I always have baraka in every our activities.

  1.  http://1000daya.blogspot.co.id/2010/11/role-of-maslahah-in-defining-goals-of.html 
  2.  http://makalahegi.blogspot.co.id/2012/09/mencari-maslahah-dengan-ekonomi-syariah.html 

Go-Jek and Fake GPS (and the Driver Behaviour)

Go-Jek, if you haven’t heard before, is a unicorn start-up in Indonesia. It is the first startup of Indonesian origin to be classified as a transport system company.1 You may have known about Uber or Lyft in other countries, or perhaps Grab. Go-Jek, with Go-Ride and Go-Car, is a such service.

I have just got an awkward experience with it, just before I wrote this post. Actually I didn’t want to publicize this, since I was quite tired of my travel, and as it may lead to another effect, I don’t know. Disclaimer, I’m not a regular Go-Jek user, since in my app order history, I have only ordered 12 times (successful one) in this year. I wrote this in the perspective of not-so-often user of Go-Jek service. So, I don’t know much about how it works, how they pay the drivers, etc. Go-Jek, for me, is an interesting thing to observe. Because it is a tech-base service –something that I concern about– and it has economic impact in society –my field of study in college.

The experience I got, was actually a miscommunication. The driver was angry as I told him –in the chat– that I’d like to cancel the order. Actually I was not so serious about that, but not joking either. I wrote that in the chat, because I hate waiting. I suspected him (I didn’t recall his name) using a sort of fake GPS app, or they called it “tuyul”. What I’m sure is that while I’m waiting for the driver to my location, the app shows the current location of the driver. So that I can approximate how long he will likely arrive. But, what I saw in the app, was that the bike icon was just near the location I was waiting. “It’s weird,” I thought. I just got remembered about the news I read in an online media,2 that Go-Jek is still tyring to eradicate those “tuyuls” in their platform. From their perspective, “tuyul” is so disadvantageous for both drivers and passengers. I was googling around and found some articles about how harmful is “tuyul” for Go-Jek.3456 And there’s also a testimony from Go-Jek driver as well.7

Actually, I expected a kind reaction of the driver. But, I forgot that I’m currenty lost JOG and A 😀 I mean JOG from Jogjakarta and the A letter of vehicles license plate. You know, in Jogjakarta they have AB on their first character of vehicles license plate, and in Jakarta it is only B. Three weeks ago, I lived in Jogja, by the way. So I sort of haven’t totally moved on. 😀 I assume “JOG” as hospitality, that Jakartans lost somewhere.

I didn’t guess at all, that the driver would so angry of “order cancelation”. Fortunately, the next driver was willingly explain it to me, all those stuffs I just got. And I also got a perspective about “tuyul” from drivers view. So, basically, I didn’t know that the “cancelation” would impact the drivers income, in this case bonus fee from Go-Jek. I’m really sorry about that. And the surprising thing –at least for me– is that “tuyul” is sort of a common practice in the platform.8

I understand now, that’s why Go-Jek is developing a system to eradicate those “tuyul”.2 And I’m now aware that this is not Jogjakarta. 🙂

  1.  https://en.wikipedia.org/wiki/GO-JEK 
  2.  http://jabar.tribunnews.com/2018/03/22/go-jek-kembangkan-sistem-untuk-deteksi-para-tuyul 
  3.  http://antaranews.id/2018/02/06/aplikasi-tuyul-modal-driver-go-jek/ 
  4.  https://megapolitan.kompas.com/read/2018/02/02/19480181/curhat-pengemudi-ojek-online-soal-kecurangan-pakai-tuyul 
  5.  https://www.liputan6.com/tekno/read/3236067/go-jek-akan-depak-driver-yang-antar-tuyul 
  6.  https://inet.detik.com/law-and-policy/d-3829552/go-jek-driver-bawa-tuyul-bisa-dipecat 
  7.  https://kumparan.com/abdul-latif1510127292540/aplikasi-tuyul-dan-mereka-yang-dirugikan 
  8. that’s all for now. I have to get rest tonight, prepare for tomorrow: Monday! 

Setting up Magento Local Development in openSUSE


Finally, I managed to install Magento in my local environment of openSUSE. It’s quite tricky to get it up and running. It’s mainly due to filesystem permissions issue, as well as Apache virtual host configuration. I don’t have many experience with Apache, so it took more time to configure the virtual host. Because I prefer LEMP stack, and since a couple of months ago, I use Docker for local development environment instead.

Actually, I have successfully installed it in Fedora as well. But, I delete the installation due to the low disk capacity. The overall steps I did to eventually get Magento served in my localhost are:

  1. Downloading Magento from its official website, and I had to log in first, I downloaded the latest version (2.3)
  2. Installing the prerequisites as described in Magento dev docs, I got a little trouble to fulfill the minimum requirements, i.e. PHP version and extensions. openSUSE Tumbleweed has PHP v 7.2 in the main repo, but Magento didn’t support this version, so I used other repo to install v 7.1. But the issue hasn’t stopped, as that repo didn’t have php-mcrypt package. So I had to download the RPM from somewhere (likely rpmfind.net) which had the nearly compatible version.
  3. Configuring Apache in localhost, where I struggled to get the right configuration
  4. Extracting the Magento tarball and setting filesystem permissions. Actually this step was the hardest phase, although I had followed the instruction from official Magento website.
  5. Running the installation step. Since I didn’t get the right configuration of filesystem permissions, so that the front end installer didn’t show up, I used the Magento command line installer module instead. It’s quite tricky as well, actually. But it worked.
  6. Setting up PHP session directory permission manually. As I put the Magento source files in my home partition, and Apache run as wwwrun user, it cannot access the PHP session directory to write a new session. Actually Magento can make use of other session handler system like memcached and redis, but I didn’t find the corresponding packages in the custom zypper repo I mentioned before.

This is the final result of the installation of Magento in my openSUSE.

Magento dashboard


my command line history

Installing openSUSE Krypton: an always-updated KDE distro

opensuse grub boot options

I think this is the most reasonable decision for me to install openSUSE (again in another device) in triple-boot with Fedora and Windows. Since I cannot abandon Fedora just like that, for it has created so many awesome memories. LOL, I’m joking. Actually I still have an on-going work in Fedora that I have no intention to move it to openSUSE. Besides, the LVM partition contents of Fedora where my data resides couldn’t be displayed by YaST when I installed openSUSE with Krypton Live ISO. So, I couldn’t just replace the Fedora root partition with openSUSE and then mount the separated home partition.


The most time-consuming process is partitioning. I had to decide which partition should I “sacrifice” for openSUSE. I didn’t want resize existing partition and created one from it. So, the other option was to replace Fedora, but it’s kind of hard for me. Fortunately, there was a not-so-important NTFS partition and a “Windows recovery” partition that were fairly enough to use. So I came up with deleting both partition for the installation.

I was using Krypton live ISO which only 1 GB in size, unlike the official Tumbleweed ISO that has 4++ GB size. I thought that in such size, it would install only the essential software. But actually, since YaST asked for internet connection, it downloaded updates up to 4 GB! And during the download process, WiFi disconnected, which stopped the process.

Screenshot_20180218_032642After reconnecting a few times, eventually the download process continued. But, there were still some problems. There were some packages that failed to download. I was sure that during the installation, there were updates in the repo as well. As Krypton is always-updated KDE build, which means every single Git push, there will be updates available. So I skipped a few packages, and the installation could be finished. But, after I restarted the laptop and booted up to openSUSE, I got IceWM desktop instead. Yeah, it’s because the essential plasma-desktop and plasma-session were failed to download, or has been updated then.

Fortunately, YaST software installer recorded what missed out from the installation process. It suggested me to download the missing packages as soon as I open it for the first time. So after finishing the installation, I relogin, and finally KDE was here. Frankly, the desktop feels smoother than my Fedora. I wonder what causes it. Whether it’s relatively new installation or my Fedora KDE has been bloated with background programs. Let’s see if openSUSE will still like this until some time onward. 🙂

Mendeley Desktop: Linux Version

In the first day of this semester, a lecturer showed us a useful app: Mendeley. The name reminded me to something. I just remembered about library collection numbering system. But no, it’s Dewey system actually (I googled it just now). Or perhaps it’s more similar to a name of something about chemical. Umm… Mendeleev’s periodic table! Forget it! There’s nothing to do with chemical actually. It’s just an unrequited love of me. 😀

Mendeley is a reference manager and an academic social network. My lecturer showed us how he uses it to monitor the progress of his related researches over the world. It’s about economics. He also uses it as a citation manager for his papers. He showed us how easy to generate the citation from certain paper for bibliography, with just copy it from its menu and then we just need to paste it to word processing app, like MS Word.

Mendeley can be downloaded from its official page in this link. It supports all major operating systems, including Linux. For Linux itself, there are two options: for Ubuntu family and for “generic Linux”, that means a pre-compiled binary for all Linux distro variants. As I use Fedora, I chose the latter. I just had to extract the tarball, and then executed the file ./bin/mendeleydesktop either from terminal or double click the file. We need to register a free account on the Mendeley website to use this app, anyway.

mendeley linux desktop

Hey, it’s Qt-based!

I was interested to give it a try, as I saw another option to generate the citation format other than Formatted citation. They’re LaTeX custom command and BibTex entry formats. Actually I haven’t needed it yet, after all.

mendeley on fedora

Mendeley search results and copy citation format

I tried the Bibtex entry format option, as you can see from above screenshot. Then I created the .bib file manually from copied text. And then I appended the citation to the LaTeX file. Just like below screenshot.

mendeley citation bibtex

Bibtex citation format of Mendeley (note that it’s just an example text)

It’s so convenient to organized the citation using Mendeley. I start imagining to be a researcher and write some useful papers by utilizing it. 😀


Get notified when Woocommerce payment received

I’ll show you how to get notification when there’s a new completed payment in your Woocommerce website. You’ll be using Slack for this, since it’s free and you can get the notification right away on your phone if you install the app.

First thing first, you need to install some WordPress plugins and create a Slack channel. The plugins are Slack (unofficial) and Slack Woocommerce (kind of extension of the first one). Once you activate those plugins, you have a setting page for adding new Slack integration. But before that, you need to create a custom integration in your Slack channel.

Once you create your workspace and login to it, add an app from <your-workspace>.slack.com/apps. Search for “Incoming Webhook”, and click Add Configuration button. You may need creating a new channel instead of #general for this Custom integration.

slack incoming webhook

Follow along the step to create a webhook, and you’ll get a hook URL. Copy that URL to paste it to the Slack Woocommerce configuration on your website. See below: (the URL format may differs from what it suggested)

woocommerce notification with slack

You can test that configuration by clicking test button below. And if you get a new message in your Slack channel, then the setup is done. To get the push notification on your phone, install Slack app and login to it.

Don’t forget to tick the option “When a payment in Woocommerce marked as complete” in the Events to Notify section. Note that the event it handles is ​woocommerce_order_status_completed that means you may need a kind of automatic payment confirmation. For instance if you have only bank transfer payment option.

Facebook changes its news feed algorithm, or anything else?

You may have heard about the change of Facebook’s news feed algorithm. And then you may ask, “why should I care about it?” Well, yes, that’s a good question, though. From the user perspective, I lately tried logging in to the platform, and actually there was nothing change, compared with last couple of weeks ago. There were still less updates from “real” people, instead of from groups and pages. And of course the promoted posts still exist. Or is it just the algorithm that hasn’t yet implemented to all their servers around the globe?pexels-photo-267482.jpeg

I don’t know, but let’s come back to your question, why it matters to you if they change their sort of algorithm to show you which updates you worth reading. From what I read on Medium here, there are 3 main reason behind the change of algorithm:

  1. Priority of personal over the public.
  2. Priority of commenting on likes and views.
  3. Priority of quality over quantity.

So basically Facebook want to prioritize the user posts rather than other else, like ads; and they want to retain the users. As I read somewhere in the web that recently Facebook users spent less time on the platform in the last quarter of last year.

The real uproar is actually would occured in the marketing world (read the first link above). With the decrease of ads display in the feed, it certainly would make marketing in this platform quite challenging. Just let’s see the changes.