A type-safe approach to Redux stores in TypeScript

Redux and TypeScript are a match made in heaven. Here's how to make the most out of static types to make your Redux store as type-safe as possible.

Build Your Next Website with React, GatsbyJS, and Netlify

My very first public speaking appearance, a talk I did during the #36 JakartaJS meetup. Here I talk about GatsbyJS, which powers the very website you’re on right now, as well as some really cool stuff that you can do with it.

This talk is brought to you by the letters “u”, and “h”.

Spiritualized - Ladies and Gentlemen We Are Floating in Space

Do you ever have this song that you randomly encounter out of the blue one day, but you’re SURE you’ve heard it somewhere before, a long time ago?

This is one of them. Especially that ending, where it fades to a beautiful cover of “I Can’t Help Falling in Love”.

I’ve learned a little bit afterwards that the song was used as a soundtrack for Vanilla Sky, but I never remembered ever watching it.

[kuso Demo] Speedrun Mode | 1:15.512

My best Demo levels speedrun of the game kuso from 10 months ago is officially my first ever entry to! Check it out here.

[ID] Kampanye CELUP: Demi Berantas Asusila, Rela Terobos Hukum Positif dan Etika »

CELUP (Cekrek, Lapor, Upload - lit: Capture, Report, Upload) was a viral campaign that has caused quite some stir in Indonesia. In encouraged netizens to take photos of unknowing couples engaging in public displays of affection and upload them to the internet.

Obviously, this sparked a public outrage since the campaign had crossed into the territory of invasion of privacy. And now, after the closure of its Instagram account, I feel the need to share the above article, which contains a good write-up about the whole kerfuffle.

Getting to know the Linux terminal

Can't get your way through the Linux terminal? This guide will get you up and running in minutes.

So I pulled in some of my photos from my website’s git repository, but for some reason they turned out glitched and the results are, well, spectacular.




Formula 1 unveils new identity by Wieden + Kennedy London »

Okay, a bit of an unpopular opinion: I don’t think the new F1 logo is bad at all.

After reading through this article and seeing the whole rationale behind it, I can actually see how much the whole thing made sense and how the logo blends well with the graphics. Someone on Mastodon also brought up a good point about what the logo actually represents.

I guess it’s just my immediate reaction to anything resembling retro-futuristic, Wipeout-like aesthetic, but still, I just don’t get all the hate behind it.

Ever wonder how Bitcoin (and other cryptocurrencies) actually work?

This was by far, the most comprehensive video that I’ve ever watched explaining how the blockchain works.

I’m giving Firefox Quantum a try and I’m hugely impressed! It’s a massive improvement over the old Firefox, so much so that it’s actually usable now.

I’m going to set Chrome aside and let it be my default browser for about a week. You should give it a try too!

Welcome to the new!

What you’re seeing here is an experiment in new ways of blogging. The whole idea came after reading through this post, which made me consider restructuring the way I do online content. From now on, expect tiny pieces of free-form posts like this, which I call “Bits.” I will still do long-form blog posts, although they will be much less often than usual.

As always, I still maintain my other online presence, particularly on Mastodon and Though as always, things will be slow, since I still suffer from the Social Media Fatigue, more or less.

See you online!

Why you moved from Angular 2 to Vue.js (and why you didn't understand what React is about)

Or, why we should never compare apples to oranges, again.

A Phoenix+React initial setup that actually works

I got tired of following guides on connecting React with Phoenix that never seem to work, so I made my own.

The internet censorship five stages of grief

A go-to guide on how to mentally cope with your favourite website/app being blocked/censored by your country's government.

The systemd law

systemd is somewhat of a controversial topic in the Linux ecosystem. This init system for Linux distributions is loved and hated by many…

The Social Media Fatigue

In the long run, social media will affect you mentally the more you invest your time into it.

An idiot's guide to the 2017 Jakarta Local Elections

Find out what the fuss is all about the 2017 Jakarta Local Elections, as told by someone who has no idea what the fuss it's all about. I don't know. I'm high on caffeine right now.

Timeless Games

The day I started transitioning into a full-time PC gamer was the day I started exploring all kinds of games that I could ever get my hands…

Maybe we're just not ready for open-world space exploration games

No Man's Sky, Elite: Dangerous, and Star Citizen were meant to represent the best that space exploration games could offer. However, the current outcome looks worryingly underwhelming.

Windows 7 is the new XP

Microsoft's tone-deafness regarding the Windows 10 upgrade nag and several other issues left a majority of users out in the cold.

Indonesia's internet censorship, two years on

Slowly but surely, we're curving away from total net neutrality.

On privacy

After the Snowden revelations, our trust in technology is at an all-time low. At the same time, the debate on privacy and encryption is getting even more heated.

On recent events

The following thoughts were brought up during a recent drama that happened between two of my close friends online. So I wrote this as a response.

npm's single point of failure

Another take on the left-pad disaster, and how it could've been avoided.

They did it. They said the C-word.

After major backlash, the Ministry of Communications reversed their decision on blocking Tumblr. But not long after I found some things about it that sound... fishy.

Tumblr and the Internet Positif hammer

Or, the Indonesian government still not understanding how technology works.

Favourite Songs of 2015

As promised, here’s a list of my favourite songs that were released throughout the year 2015. Keep in mind that this list is in no…

Looking back on 2015

This is actually the first time I’ve ever done a year-in-review of some sort so I don’t really know how to do this thing, but man , 201…

Go-Jek and the Government: an unfortunate love-hate relationship

Most Indonesians were caught in shock when yesterday night, the Ministry of Transportation has pretty much decided to ban all car and…

Tourists, language barriers, and the act of helping

Or, the day when I actually helped a bunch of foreign strangers and felt much better afterwards.

A desperate plea for Internet freedom

So I woke up one day, pulled my laptop out for my daily dose of Reddit when I was greeted with this welcoming sight: Yes. As of 25 April…

How NOT to do crowdfunding

In which I tear through quite possibly one of the worst Indiegogo projects ever made.