Some cars, like mine, have a video player that can only play specific DivX videos (a.k.a. old format). It doesn’t play YouTube videos.
Of course it is illegal to easily download YouTube videos using yt-dlp, you need to pay premium and watch in their proprietary app or website. Even when you download it, what you get is the cryptic webm format that is not easily playable.
It is possible though, to convert the video you have downloaded to such DivX format using this command (original source here and here):
It was almost Indonesia’s 2024 Independence celebration day when the DNArtworks team went for company outing to Kuala Lumpur, Malaysia. The Bandung team took the earliest Whoosh trip to Halim, followed by taxi ride to Soekarno-Hatta International Airport. At the airport, we had a light breakfast, then joined the rest of the team.
We had plenty of free time before boarding the plane around 10.40. We took Malaysia Airline, a full-service airline. I usually flew budget, so upon entering the plane I asked the flight attendant whether we would get a full meal or just snack. One attendant couldn’t hold his laugh to my question. He joked that it’s dependant of my flight. Even after was seated I received no explicit answer whether it’s a full meal or just snack. When the meal was served, it was finally clear that it’s a full meal, complete with fruits and bread & butter. When we arrived at Kuala Lumpur, that same flight attendant jokingly asked me again whether I enjoyed the meal. Well, I did. It’s quite a nice meal.
Two minivans picked us up at the airport and drove us to the hotel. The journey took about an hour. We checked in, drop our bags, and walked again towards Jalan Alor. It was raining on and off when we walked.
At Jalan Alor, we split up into different groups. Except maybe me. I dined alone, picking a Vietnam Bánh mì after feeling nostalgic to the trip to Vietnam. It was raining hard shortly after, so I spent a few minutes staying there until the rain eased. I tried stinky tofu and giant squid satay, but it was not very extraordinary. We walked back to the hotel afterwards, with sightseeing of Lot 10 shopping mall and Don Don Donki.
In the morning the next day, we had breakfast at the hotel, Lloyd’s Inn. It was a delicious and relatively healthy breakfast, with oatmeals and fresh fruits in the menu. Some seats were facing outside, giving a nice morning view, despite in the middle of city.
At 8am we gathered around at the ground lobby, and took the minivans that brought us to Awana SkyCentral. From the SkyCentral, we took a gondola towards Genting Highlands. The weather was perfect for our journey. The haze gave us a cooling and calming effect while riding the gondola.
When we were approaching Genting Highlands station around 10am, it was still hazy, so the visual experience was amazing, as you can see in the video of us approaching the terminal. However some of our friends who were afraid of heights didn’t really enjoy the trip.
About half an hour journey, we arrived at the SkyAvenue shopping mall. We originally planned to walked around the SkyAvenue shopping mall, but since SkyWorlds theme park was just opened, we decided to enter the theme park first.
Pictured before this is the situation inside “Independence Day: Defiance” ride. For me this was the best ride I have ever had. It was a 4D simulator ride, where you sit in a seat that moves according to the movie. Moreover, in this ride, the three rows of seats were stacked vertically during the show and the screen was large enough to make you feel that you were exactly inside the fictional world.
Upon walking around the park, I saw a huge building having a partial burnt effect I found out later that it was actually burnt during an incident. An online article from astro Awani confirmed it.
One nice feature of the park was the existence of mobile app and the integrations. From the app, we can see estimated waiting time of each ride, helping us picking the next ride to have. Our team also bought a photo taking package, where we could request official photographers took pictures of app, and delivered nicely to the app.
Some of us exited the park with the hope of having a good lunch at the shopping mall, but the meals there were generally expensive, so they came back inside the park and had lunch there. I joined them and ordered a vegetarian fried rice. We then walked around the mall a little bit more then took the gondola down, to Genting Highland Premium Outlets. I had meals at food court, long chat with my brother, and oleh-oleh hunting. The food court only accepted cashless payment, and my OCBC debit card came to the rescue.
It was a longer minivan trip back to the city as we had traffic jams here and there. I was quite exhausted that night, so a local Indian hawker nearby the hotel became my choice for dinner. I had a nice roti (also known as prata in singapore) and thosai (a.k.a. dosa in India) for dinner.
The next day was the day for a walk in the city and free time. We started our journey by walking to Tun Razak Exchange (TRX) MRT station. The station was recently went viral because Apple has just opened a flagship store inside the TRX building. Samsung responded by buying the naming right for the MRT station, naming the station as Samsung Galaxy station.
We bought a single trip ticket. The single trip ticket was different compared to other MRTs I have ever tried. It was in form of a plastic coin instead of card. It turned out that in the exit gate, the coin was expected to be returned by plunging it to the machine, just like in the old arcade games.
We alighted at Ampang Park station, then took a walk to the Petronas Twin Towers. Along the way I saw a grafitti of hatred to three specific countries. Not sure why, but as a computer nerd I could say that the writer had a mixed up between Korea and Japan. If you don’t get the joke, see this Wikipedia article.
We took pictures in front of Twin Towers and walked around the KLCC shopping mall. Inside, there was the Cold Storage, a supermarket chain. Since it was a tourist area, the supermarket also sells plenty of souvenirs. Next to the KLCC building, there was the KLCC public park, a perfect place for jogging or simple stroll along the park.
For lunch, we stopped by Nasi Kandar Pelita, a relatively famous chain of local food. They had this huge fish head curry in the menu. The food was good, but somewhat too oily.
Just after I finished lunch, I received a direct message from a long time friend from high school, N. He noticed my instagram stories and told me that he was in Kuala Lumpur as well. We then made appointment to meet, and it was a perfect occassion for the free time of the company outing.
N picked me up around 4pm, and drove me to a place called SS2, west of Kuala Lumpur. We had a nice dinner of Pan Mee, followed by some durians.
In case you didn’t know, durian is a fruit mostly famous in Southeast Asia. It’s a very sweet fruit, but have a distinct smell that makes half population of the world hate it. Here in SS2, was the first time that I saw durian tasting served as the commodity for tourist attraction. Many different types of durians were sold, either for takeaway or dine in. I originally thought that the Musang King variant is the, well, king. But N told me that Black Thorne is another contender. However, just like coffee, different variants of durian give different unique tastes and each people have their own preferences.
N then drove me back to the hotel. Though the food was great, it was the insipiring conversation with him that I enjoyed the most. N is a cancer survior, and before this I only knew the story from his facebook posts.
What I didn’t know, was that he finished a thriathlon before, and diagnosed with the cancer just two months after. It started with a regular check of his pain on the knee to just make sure everything was allright, but ended up that something was not right. This “something is not right” surprise also happened to me when I did a check on swelling of my right knee, that ended up with surgery (see this post). Long story short, when the doctor confirmed his illness, he rushed back home from Kuala Lumpur to Indonesia, just a few days before countries closed their borders to COVID-19 pandemic. After many chemotherapies and tranplant, he survived.
On the last hours before going home, I still had ringgit coins in my pocket. Therefore I took the time in the morning to have another roti and kopi at a hawker nearby.
We then packed things up and took the minivan trip to the airport. I have plenty of free time at the Malaysia airport but maybe not when I am back in Indonesia. Therefore, the story ends here. Thanks for reading this far.
With my status as an employee as well as running a family business, I don’t that much of holiday. Especially after COVID-19 pandemic, December is the time for my mostly Christian employees to take leave, hence I have to back them up. However, I had a few days before 2024 to go with the kids to Jakarta to visit my parents. I am blessed with the kids who have strong interests with public transport, hence not really costly in terms of carbon footprint (costly in monetary value, though).
We started our journey with the Feeder train that brought us from Bandung station to Padalarang Station.
In Padalarang station, we waited about an hour before the high speed trains arrived. The train only stopped for less than 5 minutes to board passengers.
The kids really loved it, though it was not like an ordinary train trip. It was a smooth ride unlike regular trains, and you can’t really feel the speed except by looking at the informational running text.
We then arrived at Halim high speed train station. It was interconnected to the LRT station, with about 500m covered walking distance. The LRT station felt hotter, or maybe just my feeling because they put several large fans there. There was no driver on board the train, all controlled from the command center.
After arriving at Dukuh Atas, we had a small snack then continue our journey with Commuter Line train and Airport Line train. The Airport Line train final destination was at the Soekarno-Hatta airport, but we could alight one station before, where my dad picked us up.
Dad picked us up and we visited mum’s clinic, where Desmond got one of his teeth extracted. He was scared so we offered him a lunch at Bornga, a rather lavish restaurant. After deliberate consideration, he agreed.
In the evening, Daniel went by and the kids were playing games together.
The next day, we started our journey by taking a cab to Bintaro Xchange shopping mall. This mall has an underground connection to the Commuter Line. We took another Commuter Line, followed by TransJakarta bus and MRT to get a lunch and sightseeing.
We stopped at Blok M MRT station, and took a lunch at Lucky Chin, an American-Chinese restaurant I knew from a tweet. Their meal package included fortune cookie, whose message was more suitable for adults (“If you’re feeling adventorous, go for it!”).
We took a Blue Bird cab for our way back home. The next day, we went back to Bandung by taking a regular (Argo Parahyangan) 3-hour train to Bandung.
You may have known from my previous post Visiting The Dead that I have a relatively big extended family. This time one of them got married in Kelapa Gading area, Jakarta. I was happy because it’s also served as an excuse to leave the kids with their Popo (grandmother) and have me and my wife Y travel to Jakarta without the menaces.
I still had zoom meeting with some friends in the morning, but shortly after drove to Jakarta. It was a smooth journey to Jakarta, but horrible in the Kelapa Gading area. Traffic jams delayed our trip, but we finally made to our first stop: Kedai Kopi Oke. It’s a kopitiam (coffee shop) owned by my uncle. This shop served coffee from various parts of Indonesia, but the most interesting part was that the coffee was served using a huge mokapot. Mokapot is a tool originated from Italy, normally used to make espresso. A single espresso is roughly 30ml, roughly 1/6 cup. This huge mokapot serves 2 cups, hence 12 espressos! That’s way more caffeine than deleting a production database!
We had a nice long chat, then had to say goodbye to my uncle. He gave me two angpaos (red envelope containing money) for our kids at home. It is customary for us parents of Chinese descendants, to give angpaos to the kids as symbol of good luck.
We went to the hotel and took a break. I surveyed the swimming pool, but it was drizzling outside. We preferred to stay in the room, and watched Men in Black at the cable tv provided.
At night, we went out for dinner. We walked to a nearby food court called Sagoro. It had a nice view of a river, but there were not many interesting food stalls opened. We also walked carefully, as the floor were slippery due to the rain that fell before.
We walked toward the other side and found a nice Japanese restaurant called Hanaguni. It looked upscale but the security convinced us to just look inside first without obligation to have a meal there. We went inside, took a seat, and provided with the menu. We were surprised that a bento costed around Rp200.000,-, whereas in Hokben (famous Japanese food chain in Indonesia) a bento costs roughly Rp50.000,-.
It turned out that they had another menu, simple rice packages and pastas that have on-going promotion: buy 2 get 3 for roughly Rp100.000,-. Still more than our usual budget, but at least we got 3 portions for the same price. We came back to hotel with full stomach and called it a day.
Early morning the next day, while Y was still sleeping, I headed out for morning run. With two kids at home, it’s difficult to reserve time for morning exercise, so this was a good chance. I targeted 5 km run, but was tired enough near LRT station that I was tempted to take the LRT instead for my way back. So I took the trip, followed by motorcycle taxi (ojek online) for the last mile.
We then prepared ourself for the main event: the wedding. It was held in Angke Restaurant, within the Mall of Indonesia complex. It was on Sunday morning so it was very crowded on the entrance. I was busy meeting people I forgot to take some pictures, as well as being in the picture.
After an hour or two there, I drove back to Bandung, as I had to work the next day.
When the high-speed train started operating, many Indonesians were excited to try. That includes me and my parents. Therefore, I asked my parents in Jakarta to come and visit us in Bandung.
On Saturday morning, my family drove me to Tegalluar station, located at the eastern side of Bandung. We took the toll road, passed the newly built residential area “Summarecon”, and nearby the relatively famous Al-Jabbar mosque and Gelora Bandung Lautan Api stadium. I took the train to Halim station, where I would meet my parents and helped them checked in into the train. My son D was envy of me but we managed to calm him down. The Tegalluar station was relatively remote and not fully built. There were no cafés or shops opened yet. Parking space was limited, but there were many blue bird taxis waiting there, ready to drive you to the city.
Check in was smooth, and the train was on time. Despite the euphoria, taking the train itself in my opinion is nothing special. It’s just like taking MRT/LRT trip, only further. The 350km/h maximum speed can only be confirmed by looking at the running text display. If you look outside the window, there is actually not much difference compared to running 100km/h. What’s interesting yet disturbing, is that every announcement made, it ends with their slogan “Whoosh Whoosh Whoosh,… Yes!”.
At exactly 10.30 AM, I arrived in Stasiun Halim. I was hungry so I ordered two pieces of lunpias (definition) and an americano. Shortly after, my parents were also arrived at the station, and we checked in and traveled to Bandung.
We stopped at the Padalarang Station, then took a feeder train that went to the city. Transfer from high-speed train to the feeder was not so smooth, with 500 passengers (rough estimation) had to pass through 3 gates within only a few minutes.
In Bandung station, my wife Y was just in time to pick us up. We then had lunch at the Lotek Mahmud restaurant, a hidden culinary gem in Bandung. After lunch, my mom (kids’ Oma) did some shopping at a cosmetic store nearby “Toko Mahmud”, also a hidden gem. We then went to the hotel, checked in, and took some rest.
Around 4 PM, Opa was eager to walk out to find some coffee. We then walked around the hotel and had a light meal and coffee at Circle K. My daughter P was feeling unwell, probably because she was playing in the bathtub too long, and got masuk angin (cold). I went out with Oma and my dad (Opa) to have chicken rice dinner together outside at Olly Hai, inside Haji Mesri alley. The main road was very crowded, so walking was not very fun. However, it’s faster to walk than to drive because it’s a one way road, and, well, very crowded. I ta pao-ed(take away) 3 portions of food for people at the hotel.
That night P couldn’t sleep well, so did I and Y. In the early morning, D was already woken up, so I brought him to Opa and Oma‘s room. Opa wanted to walk around, so I left D at Oma‘s room, watching YouTube videos. We walked through some alleys, heading to the GOR Pajajaran (Pajajaran sport center). Despite the fact that it’s a sport center, in the morning it’s a culinary heaven. I and Opa had porridge for breakfast, and I bought steamed kuo tie (dumplings) for the others.
P was still feeling unwell, but we had to have breakfast anyway. My car was all cleaned by the hotel staff, so we drove to a nearby Rijsttafel restaurant for breakfast. After breakfast, I drove everyone back to the hotel. I and Oma continued walking to a nearby Kartika Sari snack shop. It was inside an alley but very packed with tourists.
Finally, I drove Oma and Opa back to the station, for them to take another Whoosh trip back to Jakarta.
Aside from teaching, I also partner with my brother in running a business. The DNArtworks provides many solutions from graphic design, videography, social media, as well as websites and applications. As for the latter, I help him on software development side, bringing Informatika Unpar graduates and lead them in making high quality websites and apps. In celebrating the 10th birthday, DNArtworks team went for a 4 days trip to Ho Chi Minh City, Vietnam.
The team from Bandung departed at 5AM, taking about 3 hour bus ride to Soekarno-Hatta International Airport terminal 2. We arrived much earlier than expected, so we spent a few hours waiting at a dim sum restaurant.
About an hour later, Jakarta team arrived as well, and we performed flight check-in. One guy from Jakarta, DP, left his passport at home. Luckily his wife helped delivering his passport on time. What a lovely wife.
We cleared Indonesia immigration early, to have an easy lunch before taking the flight. Some of us bought power plug adapters, which turned out not very useful because the plugs in Vietnam are similar to ones in Indonesia. It is understandable, though, because the information on the internet is not very clear. I downloaded a few movies to my laptop for in-flight entertainment. One of which was Grave of The Fireflies (火垂るの墓). It’s a movie from Studio Ghibli, but you can easily find the full recording in YouTube since it’s a very old movie. H told me he didn’t dare to watch it because it would make him cry. I am proud to say that did not cry, but it was indeed a very saddening movie.
The flight from Jakarta city took about 3 hours. When we landed in Ho Chi Minh city at 16.40, it was raining hard. We spent maybe up to two hours in the airports before being transported to the hotel. Some of us bought local sim cards, while others bought Vietnam Dong (the currency) bills. After check in, we walked to Propaganda Bistro. I ordered Bánh mì, a local delicacy made of baguette, vegetables, and meat. Did you notice the diacritic in “a” and “i”? You will see further in this story, that the Vietnam language really loves to use diacritics.
We then walked back to our hotel, but stopped at a nearby minimarket. I brought mineral water and a can of beer. Surprisingly, alcoholic drinks are very cheap here. A can of Heineken costs only VND 20.000 (IDR 16.500 / USD 1).
The next morning, we had an early breakfast at 6.30. I liked the hotel’s breakfast since they provide a lot of fresh vegetables options. We then took a chartered bus to Cu Chi Tunnel historical site (Khu di tích lịch sử Địa đạo Củ Chi), about an hour from the city. Our tour guide explained that most of tourists visiting Ho Chi Minh city would also visit this site. En route to the site, I noticed several interesting facts about Vietnam, compared to Indonesia:
People drive on the right side, unlike in Indonesia (left side)
There are a lot of motorcycles on the road. Interestingly, there’s no significant air pollution visually. Not sure why until now.
The helmets are not of SNI (Standar Nasional Indonesia) standard. Ears are uncovered.
People love to sit down on a short chair, just outside their stores.
We arrived at Cu Chi Tunnel site around 8.30. The tour guide were very happy about it, because we arrived relatively earlier than outher tourists, so he could explain and give demonstrations to us easily without being disrupted with other tourist groups. I was very impressed with the experience here:
It was very well organized. For example, our guide explained about how Vietnam soldier used to hide in a small hole, while a local staff was demonstrating it. That same staff was also ready to demonstrate the same thing for other guide of another group when needed.
The Vietnamese, or at least our guide, were very proud of their history. They were very proud of how they could fight successfully against the United States soldiers using simple but smart techniques. For example, they built underground tunnels and live there to avoid detection. When they cook, the smoke was discharged from several holes instead of only one, also to avoid detection.
I learned Vietnam history in a single trip. Ho Chi Minh city was formerly called as Saigon. After the fall of Saigon in 1975, it was then named after Mr. Ho Chi Minh, the first president of Vietnam. That’s why the city is called “Ho Chi Minh City” instead of just “Ho Chi Minh”. Saigon, on the other hand, was known for a brand of local beer “Bia Saigon”, when I visited this place.
A few hours later, we took another bus ride to a garment factory. It was not very interesting there, and and some rooms we were not allowed to take pictures, so I could not tell much about the activities there.
Another bus trip, and we arrived at a small harbor next to Mekong River. We took a motorboat to a small island for lunch. Afterwards, we were transported to another small island to see people living in a village (or, kampong, as the Singaporeans call it). Fresh tropical fruits were served and accompanied with local music for entertainment. We also took a golf cart for a tour around the island, as well as taking the traditional sampan (small boat) along the river.
We then headed back to the mainland, where we took another bus trip back to the city. The traffic was bad, so it took a few hours. At around 7 PM, we arrived at a restaurant called Ngon. Upon entering the building, a picture of James Bond movie where the protagonist enters a crowded restaurant in the Middle East setting. Though they serve Vietnam food, the interior is Arabian style, with red paint dominating the walls.
The next morning, we went to the Saigon Post Office. It still serves its purpose as a postal service, but also host of many souvenir shops. I bought some souvenirs there to bring back home.
We then walked to Tân Định Church, another iconic landmark of Ho Chi Minh City. Unfortunately it was closed when we arrived, so we could only took a picture from the outside. En route, we also stopped by a café that sells egg coffee. It is a coffee that -instead of milk to make foam- uses egg.
Then, it was free time for everyone until dawn. Some of us went back to the post office to buy another souvenirs, some went to a local market to get another souvenirs, while myself had a Bánh mì for lunch then went back to hotel. I chose to take a rest since I still had an open wound on my leg and I’ve got all my souvenirs.
In the evening, we had dinner in cruise ship. We could aboard the ship around 6.30 PM, and buffet dinners were served shortly. Dinner experience itself was not so good. There were not a lot of space for us to sit and the food was so-so.
At around 7.30, the cruise sailed, spending about an hour along the Sai Gon River. The view was very nice and relaxing.
We went back to hotel and take a rest, before heading back to Indonesia the next day. And that wrapped our journey to Ho Chi Minh City.
I am a proud alumnus of SMA Kanisius, a boys-only high school. Every year the alumni association held a reunion. I rarely participated in such event, but this year somehow I had a chance to do that. The idea was to bring my son D with me, also as a chance to introduce him to such school.
For a train that departed at 6.10 AM, I took a taxi from home at 4.30. My wife and son complained that it was too early, but I’d rather have a peace of mind. The train arrived at Gambir around 9 AM. We took a TransJakarta bus to Monas, continued to Bundaran HI, and took an MRT trip to Blok M Plaza.
There, I met my parents. We spent a few minutes in Taman Literasi Martha C. Tiahahu, a literacy-themed public park. There were a small library as well as children playing area. A (relatively expensive) cafés were also available there.
After playing, we walked to Claypot Popo. I knew this place from previous trip to Jakarta (see Off-The-Grid Wedding), and my dad indeed like it. D didn’t really like the menu, but he (as before) was very interested to see the kitchen.
After lunch, we took another MRT ride to Bundaran HI station, followed by taxi ride to the high school. I met many of my old friends, as well as new friends (as we were in the same batch but never in the same class). D met new friends and played simple soccer game.
I met many friends, too. Most of them were my classmates when I studied in this school. It’s fun to meet them again. Some of them became doctors, some founded successful startups, some enjoying normal life with family.
Around 16.30, D already complained that he wanted to rest. I said goodbye to some of my friends and headed to Sofyan Hotel, where I would stay a night before heading back to Bandung the next day.
We took a rest at the hotel, and headed out again for dinner. D wanted to take a Commuter Line trip, so we took a trip to Jayakarta station, looking out for Pontianak food at Jalan Pangeran Jayakarta. The food was relatively expensive for a road side food stall, but the value for money was quite okay.
After dinner, we took a bajaj ride back to the station, and another Commuter Line ride back to the hotel.
The next day, D woke me up early in the morning. I offered him to swim in the hotel, but the swimming pool was too small and nobody beside him was swimming there (it’s 5.45 in the morning!), so he got bored instantly. We took another Commuter Line trip to Jakarta Kota, for a nice breakfast in Glodok area.
Around 9 AM, my friend Paul arrived. He is also an SMA Kanisius alumnus, but couldn’t make it to the reunion the day before. We took a walk from hotel to a nearby café “Dua Nyonya”. I joked that one Nyonya (madam) is already exhausting. 6 pieces of fritters cost IDR 57.000 but the place was really nice for a chat in the morning. D helped to take a photo of us together.
We checked out, then Paul drove us to the train station. En route, he also showed me several nice places around the Cikini area. A nice tour in the morning.
In 2020, COVID-19 hit the world. It was deadly mostly to people with comorbidity or senior citizens, including my grandfather of 100 years old. Due to safety reasons, he was quickly cremated and his remain was kept in a columbarium. Fast forward to 2023, COVID-19 was largely under control and there was plan to take the remain and bury it properly, in the same grave as his wife in Bekasi. The burial process involves proper praying ceremony with close family members, just like a regular wake.
When I heard the news from my cousin Reza, I was really excited to come and join, since it was also a chance to meet my relatives that I have not met for some time. I initially planned to travel alone using intercity train service. However, the train to Bekasi only run at certain times, and none of the times allowed me to arrive at the graveyard on time for burial. I then decided to drive myself. Driving round trip in one day would be too exhausting for me (I’m older now and I have two children fighting each other every time when they are not sleeping). Therefore I planned a one night stay at a hotel nearby. Since the kids did not have to go to school and my in-law agreed to take care of them, I asked my wife to come along. And finally, since I had an overnight stay planned, I also planned to visit my mother’s tomb a well.
Long story short, I headed out from home at 6 in the morning with my wife, to take a breakfast at a nearby yumcha restaurant. They had this promotion of free drink for each meal purchased. The kopi was really nice, plus it was served in this fancy classic cup.
At 7 AM, we drove to Pondok Ranggon to visit my mother’s tomb. We met Pak D, the person in charge of taking care of the tomb. We also paid him the yearly maintenance fee. Since three of my mother’s siblings were buried at the same graveyard, we also visited and prayed for them.
From Pondok Ranggon, we drove again to Pereng, the graveyard for my grandfather in Bekasi. We were slighly late, but still in time for the procession. Most of the relatives were there, but some others could not come due to incompatibilities. In Chinese culture, there is a belief that if people with certain Chinese zodiac signs are not compatible with the deceased, bad luck may come.
Around 11.30, the procession started. A monk lead us in chanting to deliver my grandfather spirit. Fresh food were served on the altar, while fake paper money and clothes made of paper were burned with the hope that the deceased can use them in his afterlife.
Right after procession ended, rain poured hard. We waited until the rain eased, then said goodbye to each other. Most of them went back home, while I and my wife drove to Cikarang to spend the night there. I chose Cikarang because it’s not too far from Bekasi, halfway back to Bandung, and close to Meikarta.
In case you didn’t know, Meikarta was an ambitious real estate project in Cikarang area. It was mentioned in the news recently because they could not deliver the promised units to its customers. Honestly, I found their TV ad fishy since the beginning, reminding me of Terminator’s Skynet.
There was not much to see there (in Meikarta). Our hotel however, is located more of at the Lippo Cikarang area. It is more of an industrial complex (that are marked with thick yellow cells, if you play Sim City), where many factories were built around that area. When we arrived, we saw what looked like a Korean chatting with the security guard. A tourist, we thought.
We then checked in, took a shower (we were drenched in rain) and take a good nap, before heading out in the evening for dinner. The food in the hotel were relatively expensive, so we walked out a bit and had dinner at a simple Indonesian restaurant.
The next morning, we had early breakfast at 6 AM. It turned out that 90% of the guests eating breakfast were Koreans! Most of them bought their safety helmets, a sign that they work in civil engineering and their employers provided this hotel for their residency during their work in Cikarang. Even the hotel served a Korean menu. At 7 AM, we drove back to Bandung, as I had to work again.
People invent technologies to help other people. However, it sometimes happen that it puts people into a rat race. Computer programmers create automations, others invented CAPTCHA to prevent automation. Photoshop can manipulate photos, while there are technologies invented to detect manipulated images. OpenAI created ChatGPT, while some people created a program to detect ChatGPT-made articles to prevent cheating.
The IT guys in my office created a website to track attendance of their employees. We need to login using our SSO (Single Sign On) account and click something like “I am here” button for our attendance to be recorded. This is a replacement for the previous system, fingerprint scanner.
I honestly hate this new system. Previously we only had to put our finger to a scanner to be recorded. Now we have to wait our own computer to boot up, join wi-fi, open web browser, type user name and password, click some buttons, et cetera. When something goes wrong in one of the steps, we may have to wait a few minutes then try again.
In this new system there are two actions to perform: check in and check out. Check in is to tell the system that you’re ready to work. Check in itself is divided into WFO (Work from Office) and WFH (Home). The system is clever enough to prevent people from home claiming WFO: you need to join the office’s wifi to do that (VPN excluded). Check out is when you report what you have done today, and can be performed anywhere.
If you do the procedure correctly, you will be rewarded ±Rp17.800 for transportation cost (depends on seniority). However, it turned out that it’s challenging to perform it correctly according to the algorithm actually implemented in the code. In the beginning of January, I diligently performed the check in and check out procedure almost every working day, only to find out that only 7 out of ±20 working days of my WFOs were rewarded. There were rumours that I should gave ample time between check in and check out to be actually rewarded, but nobody could confirmed the exact algorithm.
So I planned for revenge: having someone (something, actually) do the WFO check in for me while at home.
The Devices
I didn’t have a desktop computer in the office anymore, so I used my own Raspberry Pi (a small ARM-based computer), paired with a timed power plug.
Timer for the power is set to on every weekday, 7 to 8 AM. The good thing about Raspberry Pi is that it boots up automatically when it receives power. After configured properly, Raspberry can join to trusted WiFi and opens GUI when it boots up.
Actually, it took only a few minutes to perform everything. Then Raspberry would wait an hour before powered off. To prevent filesystem damage, I also set a cronjob to perform graceful shutdown at 7.45.
45 7 * * 1-5 /sbin/shutdown -h now
There were some challenges, though:
The office WiFi is heavily firewalled. Therefore I could not connect remotely using SSH nor VNC. When I am not in office, I just have to trust that the machine works.
The browser needs GUI, and the GUI seems to be needing a monitor connected (because it has to decide what is the proper screen resolution), so I can’t be sure it can run headless. When the monitor is turned on and showing activity, it may attract attention from my roommates.
The script engine is very simple, that it can only run without branches and crash if what it sees in the browser is not as expected. Meanwhile, captive portal does not ask for username/password anymore if a successful login has happened that day. Hence, the script can only run successfully once a day.
The Actions
I set it up on site on Monday, and left it to work on Tuesday. I intentionally didn’t go to office on Tuesday. Well, it worked!
I just needed to perform check out that day, since it’s more difficult to automate both check in and check out.
On Wednesday, I still didn’t come to office. It was fortunately working well again.
Evaluation
On Thursday, I went to office to check if everything was okay. It did already attracted attention of my roommate because of animations on my monitor. I plan to keep this device automation running to perform 13 successful WFO check in while I don’t come to office as payback for January; or until I get caught. I also reduce the lifetime of Raspberry to half an hour only, 7.00 to 7.30 (shutdown at 7.15).
This post was written with enough details to give idea for someone to replicate their own, but of course many other details were omitted. If you wish to build your own, you need to understand some technical and programming stuffs.
Also, I should have spend my time working like a proper lecturers instead of tinkering like this.
Epilogue
After successfully running for two days, somebody found out that I was cheating, I guess. It was not working for a few days, and when I troubleshooted on one fine Tuesday, I found out that there was a webdriver detector because my script threw some error messages:
selenium.common.exceptions.UnexpectedAlertPresentException: Alert Text: Caught in the second case: bot is banned!!!
Upon checking on the website source code, I found the following detector:
<script>
$(document).ready(function () {
try {
if (window.document.documentElement.getAttribute("webdriver"))
alert("Caught in the first case: bot is banned!!!");
} catch (Exception) {
}
try {
if (navigator.webdriver)
alert("Caught in the second case: bot is banned!!!");
} catch (Exception) {
}
});
</script>
This is the finale of the long weekends series. As a summary, my last few weekends were quite eventful, and this last trip(s) should end the saga.
Prolog
It all started back on Sunday morning, 9th of January 2022. It was just a regular Sunday, with me checking my personal e-mails. A surprise e-mail came from DK, a long time friend. He was about to get married in Singapore, and I was invited! I and DK were two of the four Indonesians selected to participate in the 2003 International Olympiad in Informatics, representing Indonesia. Unfortunately, due to visa problem, we didn’t make it to the international event. I was in third senior high that year, so I moved on and entered university. DK on the other side, was in junior high so he had a few more chances in the following years. He did grab three silver medals on his three years of subsequent participations. He also continued study in SU, and with fellow friends founded T, one of the largest online travel agents in Indonesia. He then left T and built another startup company in Singapore. Pictured on the left (in desktop; above in mobile) are me, DK, and another friend RS when we met some time in 2007.
I lived in Bandung, and since pandemic began direct flights between Bandung and Singapore stopped serving. I was wishing that it would resume on August, the wedding day. However, up to one month before my flight there was no sign that the flights will resume. Therefore, with help of my wife Y, I bought the ticket. We bought the 6 days 5 nights flight+hotel package through T, one of the largest online travel agents in Indonesia. There seemed to be a bug in such platform, that made me pay less than half of the actual price.
I did try to resolve this out, but company policy seemed to block my way. I tried to understand the breakdown of each component, but it was the company’s secret recipe (see below). I also tried to contact the support, but as with other large companies, in most cases they would connect you to a bot. A bot did check my receipt and she confirmed that all invoices have been fully paid and I was ready to go. I know that I could have reported a bug, but it was too much of a hassle and it’s more fun to write in a blog (and get better deal).
Bogor, FLS2N Province Selection
Just a few days before my flight, I had to go to Bogor to support the FLS2N Province Selection event, in which you may have read in my previous post, Long Weekends part 3. I drove to Jakarta along with H, since I would be bringing two large suitcases to Singapore. On third day, I left the event early and had G replaced me in such event. I stayed one night at my parents’ house in Bintaro, and went to airport in the next morning.
Singapore, Day 1: Arriving
I was really excited the second I stepped into the airport. This was my first time flying after many years. Also, this time I was alone, allowing some time to meet more friends and acquaintances in Singapore. My wife Y kindly gave me the visa to go to Singapore and leave her with the kids.
Some rules on flying have changed compared to the years before, most likely due to pandemic. Passengers were no longer required to “turn off all electronic devices during take-off and landing”. We were just asked to not use them during take-off and landing, and set them to airplane mode during the whole flight (though wi-fi can be separately turned on to access in-flight entertainment). There was also a reminder to take off your face mask before wearing oxygen mask in case of pressure drop.
While waiting on the plane, I read some chapters of a book formerly owned by a legendary professor in my university, Professor Benny Suprapto. He passed away a few years before, and the family donated many of his books to the university, which I picked one.
I had planned to meet my two friends AY and AQ that evening. However, after landed and received internet signal, came a message from AQ, telling me that his daughter just got COVID and for sure AQ would not be able to meet us. Shortly after, AY called me asking to reschedule the meeting to lunch time (about an hour after I landed). He just had a daughter so meeting me during the day would be much easier than the family time at night. I took a taxi to the hotel, drop my luggages, and took another taxi to Kent Ridge MRT, which was located next to National University Hospital.
It was nice to meet AY again. Aside that he treated me for lunch, I was also amazed for his discipline following his vegetarian diet. We both had Kimchi fried rice for lunch. My fried rice was complete with chicken, but his portion was strictly without meat.
My mind also went to the past, when the company used to treat us for lunch. To cater both the vegetarian diet for Indians and halal food for Muslims, our boss used to take us to a Chinese vegetarian restaurant and our Indian friends (not AY, though) jokingly complained that the Chinese vegetarian meals taste were bland. It’s true, though. The Chinese tried to make fake meat using flour, making the taste very bland.
After meeting AY, I went back to hotel and picked up my dirty clothes. I had some dirty clothes from my stay in Bogor, and this first day I tried to survey for a laundry that I could use to wash my clothes in the next few days.
After careful selection, my choice fell for Oasis Laundry in Achorpoint. Anchorpoint was a small shopping mall located near my former rented room when I stayed in Singapore 10 years before. It costed $5 and 30 minutes to wash the clothes and another $6 and 60 minutes to dry them.
While waiting the laundry, I had my dinner as well as visiting the area of my former neighbourhood. It was located at Tanglin Halt, one of the oldest area in Singapore. When I visited this time, the area was already “en-bloc”ed. It means that the government collectively take over the houses and demolish the area, to built a newer residence area. In Singapore, one does not simply own a flat. Government rented them for normally 99 years. Usually, before rent is due, government will en-bloc the flats and offer the resident a new one with heavily reduced price.
Singapore, Day 2
The next day, I woke up very early. I had a daily alarm at 5AM, but in Singapore that means 4AM Jakarta time! The hotel I stayed in Pasir Panjang did not provide breakfast. By the way, the hotel itself was an old and very simple hotel. It was located far from the town and it seemed that there was not many guests lately, so they closed the restaurant. However, the hotel was a perfect fit for me: inexpensive, provided stable hot water, air-conditioned, etc. The only downside is that the (CRT) TV only had one channel: Vasantham, a Tamil-speaking channel. I don’t speak Tamil.
The bright side of it, was that the hotel was very close to a coffee shop that opens early in the morning, namely the Habibi. I went there before the sun rose, and had a very nice, long-awaited, kopi (Singapore coffee with milk – find out what’s so special about Singapore coffee in my previous post). On my way back to hotel, I also took a picture of my hotel facade, because the block number 404, has special meaning for web developers. 404 is the status code for “page not found” when one tries to access a certain web page.
After the sun rose, I took a bus and stopped near the entrance of Kent Ridge Park. I wanted to recreate the photos I took 10 years before when I lived here. The result was quite fascinating and I posted it to my Instagram account. At the end of the trip, I had my brunch at Prince George Park Residence canteen, inside the NUS (National University of Singapore) area. It was the traditional Singaporean breakfast: a kaya+butter toast, half-boiled eggs, and coffee with milk. I replaced the condensed milk with evaporated milk to reduce sugar intake.
I also stopped by the NUS co-op, a store that sells many university or science themed gifts. I found some interesting items to buy, but decided to gave them a little thought for a few days before buying.
Near the co-op, there was an exhibition “We are NUS”, where you can take a picture with paintings of several NUS people, and have the picture sent to your e-mail.
I traveled again, to Vista mall near Buona Vista MRT, to meet my other friend, AS. Before meeting him, I had a team zoom meeting at 11AM Jakarta time, which converted to 12 noon Singapore time. It was difficult to get a decent internet, even inside Pizza Hut restaurant (where I had to pay more for a food that I could also get back in Indonesia).
An hour later, AS came and we had a talk at a nearby Indian restaurant. We didn’t take picture together but I did take a picture of my food. Yummy. AS was a friend from high school. I remember the time when we connected cheap remote-controlled car to a parallel port in an old 486 computer. By adjusting the value of certain memory locations in the computer, we could control the voltage of the port and in turn told the car to move forward, backward, left, and right, by the keyboard presses. Newer computers could not do this, likely because of lower voltages and protocols required to control the voltage. We won 2nd place at a competition.
I went back to the hotel and take a rest, before going out again in the evening, to meet my friends at Vivo City.
While waiting my friends to come, I walked around Vivo City to look for some gifts to bring home. One of my target was the Lego Vespa, a miniature of Vespa 125. It was promoted in Vespa Indonesia website, but unfortunately not officially sold in Indonesia. I found one at Bricks World, with a price tag of S$165. Also, I had to give some thoughts before actually buying it.
A few minutes later, my friends E, H, and HO came. Two of them had kids, so I felt honored that they walked the extra mile to leave their kids at home to meet me. We had dinner at a Korean restaurant and talked about many things. These friends were one of my special friends in Singapore. When I first visited Singapore, I was alone from Indonesia to meet my employer. A day before my first working day, I visited office to do some paperworks, without knowing any other Indonesians. On my way back from office, I unexpectedly met these group of ITB alumni, wanting to go that office too. One in the group was A, which I known earlier from a competition. So I was introduced with the rest (including E, H, and HO), and they became my first good friends in my four years life in Singapore.
After an hour talking inside the Korean restaurant, we felt that we sat too long there, so we paid the bill (well, my friends actually forbid me to pay, and they paid for our dinner). I assumed that they had to go home, to take care of the kids. I was wrong though; they already asked their spouses to take care of the kids! It turned out that by having me visited them to Singapore, it’s also a chance for them to meet each other, since it’s difficult to meet even when everyone lives in the same city. We moved to Coffee Bean and Tea Leaf cafe. After a few minutes chatting, I started to feel sleepy. Lucky that I could buy an espresso shot to help me awake. After a long nice chat, we waved goodbye and went back to our own life.
Singapore, Day 3
The next morning, I took another breakfast at Habibi. This time, Masala Thosai. Also known as Masala Dosa in India, this meal had a special meaning for me. When I had my internship in Bangalore, India, this was my favorite meal, mostly due to its price. It was very cheap that when converted to Rupiah it was Rp4.000 (S$0.4). Price was important because when I lived in Bangalore, I only brought limited amount of money, and my stipend was paid only after I went back home. The price now, of course, will be much more expensive than that.
Masala Thosai
I then traveled to NUS again, which was not very far from the hotel. I had weekly bible study with some friends through zoom. NUS on Saturday morning was not crowded at all and I could easily sit on one bench, get the free wifi, and did the zoom meeting without disturbing anyone around. After zoom, I went back to the hotel, and visited a post office nearby. I brought some children books for my friends in Singapore, and one was reserved for AQ. Since he could not meet us, I decided to send it by postal service.
I went to Bugis Street afterwards. The night before, I asked my wife what would she or the kids want for gifts from Singapore. My son asked me to buy a simple toy that he found a few years before in Bugis Street. It was an elastic water-filled ball that could be thrown to walls and stick for a while. Fortunately the shop selling such toy was still there, and I bought some for my kids and potentially their friends. S$20 for 7 balls. I also had some culinary delights at hawker center nearby, a popiah and grass jelly drink.
PopiahGrass jelly drink
I went back to the hotel, and prepared myself for DK’s wedding ceremony that evening. Dress code was cocktail. At first I thought “cocktail” refers to those colorful canned fruits usually used as ingredient for a sweet (mostly non-alcoholic in Indonesia) beverage. Lucky I did a google search and found that it actually referred to a full suit with jacket, much less colorful.
In Singapore I prefer to use public transport, even with full suit. This was actually the second time I wear a suit inside a public bus. The first time was for a wedding for another friend. The couple reminded us to be on time, so as not to disrupt the ceremony. Therefore, I departed early, and arrived early too. I was probably the first guest to arrive. DK’s sister greeted me. His face looked familiar, and I realized that I knew her husband as well. However, her husband could not come because their child was still a few months old; too young for a long trip. I also met DK’s parents, who were also special persons for me. During our olympiad preparation, our parents used to accompany us to the training venue, and they knew my parents, including my late mother.
Me with DK’s parents
As you may have seen from the picture, the wedding was held in a very beautiful place in the town, where you can see some Singapore icons: the Flyer, Art Museum, and Marina Bay Sands.
I also met several friends, old and new. AW was a founder of large game company in Indonesia. AH was in the management of a fintech company, and we met online several times to discuss potential cooperation. AK was another olympiad team member, who managed to get silver in IOI 2005. A was an international independent journalist, whom I just knew at the party. MS was a leader of a young political party for Jakarta region. K was a mutual friend but I never met him before. He also brought his cute little baby girl to the party.
Then the wedding ceremony started. It was led by a priest lady with slight Filipino accent. Not trying to be racist here, but having lived 4 years in Singapore, I started to have tendency to guess based on one’s accent where he/she comes from. The lady used chocolate truffle as ice breaker for her sermon. She mentioned that we can see truffle -the food- as an acronym T-R-U-F-F-L-E. T is for Trust, a very important ingredient for a good marriage. R is for Respect, I think. The rest of the letters were not my responsibility to remember. It’s D’s responsibility to remember them, and I may ask him again about this in 5 years.
After mingling on the rooftop, we were invited to go downstairs for dinner. Everyone had a dedicated seat for them, with a name card on top of the table. It was a fine dining set up, Italian style. Plenty of wine were served, and it actually helped me to sleep well that night.
Every guest had a dedicated seat for themSuch a small portion. You call this fine? Ang-mohs are weird
I sat on a small table of five, in a very strategic location. It was very close to the main stage where we could see the couple. I met old friends from the olympiad. Aside from AK and his wife, I also met RS and his newly-wed wife. They were expecting a baby so they tried to avoid wine and half-cooked steak (which gave some challenge to one of the servers because they offered only rare and medium one).
As the only one without a spouse in that table, I tried to make a joke about me getting a visa from my wife before going to Singapore. It took them a few seconds to understand the joke, especially because as fellow ASEAN citizens, Indonesians don’t actually need a government issued visa to enter Singapore.
Me and some old friends
After about an hour of wine and talk, I went back to the hotel and get a good rest. RS also sent me some old pictures of me, him and DK when we were much younger (which you can also see it as the first picture in this post). He did not remember when and where did we met in the picture, but I vaguely remember it’s in one of the olympiad event in a hotel in Bandung. A Google Maps search confirmed it, as in the picture we could see the roof of Hotel Savoy Homann’s Garden Restaurant.
Singapore, Day 4
The next morning, I took a stroll at nearby West Coast Park. Parks in Singapore are unique, unlike parks in other countries. They are well maintained and have lush greeneries, but you cannot escape from the concretes. In the city area you will see tall buildings on the horizon. In parks of the coastal area, there are buildings on one side, boats tankers on another.
View of boats from West Coast ParkAnother view from West Coast Park
I spent the rest of that morning doing the laundry. At 1PM, I met my former landlord CL and her husband J, who kindly treated me for lunch in the Legendary Hong Kong Dim Sum. To have a meal there, one must wait in the queue for almost an hour. This was because it was a newly opened branch, after its first branch in Jurong Point.
The dim sum was very nice, but it was even nicer to meet my former landlord. During my 4-year stay in Singapore, I lived in her flat (well actually, her mother’s) and never moved out. I stayed in a two-bedroom flat, which I occupied 1 bedroom, while her mother on the other bedroom. She (her mother) was already a senior citizen when I stayed there, and when I visited Singapore this time she was already too old that she needed constant care in a nursing home. The flat itself has been emptied because it was going to be demolished for en-bloc. It was the same flat I mentioned in day 1.
Me and my former landlord
I went back to hotel and took a rest, before heading out again to visit DK’s apartment. He invited us to his apartment for a casual dinner. When I arrived, DK was busy discussing work with his colleague. He started this new venture of making a website called Sembly, a collaboration platform. I met and talk with several new friends. NO was an investor to several startups in Jakarta. MS was the political leader that I met a day earlier. As an engineer, I didn’t know much about how political party works, and he gladly explained to us how it actually works.
Dr. W was the head of NLP (Natural Language Processing) lab in AI Singapore, but it was his knowledge of my hotel that surprised me. The hotel I stayed was actually a pretty infamous hotel, located far from the city center and far from MRT stations. However, it was close to NUS (where AI Singapore office was located) and close to two famous Indian coffee shop as well: Habibi and The Cheese Prata Shop. Dr. W explained to me that both are popular among NUS students as places for studying late at night.
I headed home probably at 9PM. I took another bus to go to my hotel and enjoyed the night. I always like taking a bus in Singapore. It is air-conditioned, comfortable, and you can easily see the surroundings en route.
Singapore, Day 5
The next morning, I went out to Orchard area, the “Singapore” as most Indonesian tourists know. I went there to look for Lego Vespa, which I was also looking in day 2.
But first, breakfast.
Traditional breakfast set from Toast Box
Back to the Lego Vespa, I got a nice deal in Takashimaya with $159 price, 10% discount for tourists and additional 7% GST refund at the airport. However, the packages were so big, I had to rearrange the content my suitcases. Also, to try saving spaces, I did another laundry at Anchorpoint.
In the afternoon, I went out to NUS again. I had some works to do, and the hotel internet was not stable during the day. I worked at the School of Computing, and walked around to Engineering canteen and Yusof Ishak House afterwards. For dinner, I took an Indian set meal in Yusof Ishak House canteen.
Indian set meal
I then went back to the hotel to rest, after basically a whole day for myself.
Singapore, Day 6
This was my last day in Singapore, also happened to be Singapore’s national day. In the morning, I met ES and had breakfast together at The Cheese Prata Shop. We planned to meet BR as well, but he could not come because of COVID. The three of us went to the same high school, and both ES and BR were the two friends who welcomed me to Singapore when I started living here for work. I could still remember BR’s quote when I met him in 2008, “There’s not much news here in Singapore, we even imported crime news from Malaysia”.
Me with ESMe with ES and BR in 2005
Browsing through my photo collection, I also found our pictures from 2005, 17 years back! We had a dinner at Geylang that time. Geylang was known for both delicious food and as a red light district (prostitution). The next day, my friend’s aunt (a Singaporean) invited us for lunch. She casually asked me where did I go last night. I naively said Geylang, and you can only imagine the change of look in her face. “Geylang!? You should be careful there. Plenty of gangsters, etc..”.
After breakfast, I went back to the hotel to pack my stuff. It was so full of oleh-oleh (gifts), especially because I prepared several personalized gifts for some people (including those huge Lego Vespas). The suit would also take a lot of space when put inside the suitcase, so (thanks to Y’s brilliant idea) I wore them for my flight back to Jakarta. In addition, I also put some of my clothes in my backpack, because the suitcase were too full. My laptops and chargers were put in a hand-carry bag.
My flight was somewhere at 6PM, but I was all ready in the morning. I asked the hotel receptionist to help book me a taxi, but she suggested that it was not difficult and cheaper too to flag one on the street, in front of the hotel.
I tried to check in my backpack, ready to pay for some extra cost for additional weight. The check-in lady, however, insisted that I should not pay extra and bring the backpack with me to the cabin instead.
Having a lot of free time, I walked around the airport, including taking a selfie in front of the infamous HSBC Rain Vortex. Aside from that, it was just another crowded shopping mall.
I then had my last Singaporean meal in Singapore, mee rebus for lunch and barley for the drink. Mee rebus is a noodle with thick coconut milk soup.
Mee rebus
Just after lunch, I entered transit area and spent most of my time waiting for the flight there. I had one last kopi in Singapore (I promise, this is the actual last) in the food court. This food court had this cute robot that helped transporting used tray and eating utensils.
Transporter robot
About 6.30 PM local time, the plane took off for Jakarta. It was delayed for a few minutes due to national day activities, but it gave me the right moment to take this picture of beautiful sunset from the airplaine.
Sunset view from the airplane during take off
Epilog
On my way back from Jakarta to Bandung, RS sent me this screenshot of his conversation with his friend. I’m glad that I’m not the only one who knew the visa joke.