Trying to build websites again

The last few weeks I’ve been digging myself a hole in web development land, again. It is a nightmare. Which I enjoy staying in, for some reason. Moments include: late night shifts because I can’t sleep until I implement just one more feature, hours of banging my head against the wall trying to traverse a framework’s maze-like documentation, gleefully alt-tabbing between my text editor and the CSS reference because I have terrible memories, et cetera.

I’m too tired to write a proper, uhh, thing, about what I’ve been doing. Right now I’m working on a static site for my personal homepage portfolio thing, taking a break from some server-side programming for a collaborative writing web app I’m working on.

I’m a vanilla guy; I like to work with no-frills HTML and CSS files with plaintext editor when designing a website. At first I thought of just building the entire website with it, but then, ugh, what if I have to change something in the header or the sidebar? I’d have to edit every single page in the site. What a nightmare. So I thought of using one of these static site generators.

I thought of using Pelican, at first, since I’m familiar with Python (I was building my other project with Flask, a web framework built on Python). Half an hour into its documentation and I went nope nope nope, too complicated. Then I tried Hugo, which I’m already sort of familiar with after trying it out about a year ago. Three tires and hours later I’ve gone to the conclusion that, screw this, screw all this mess. These static site generators tend to assume a lot on how you want to build your sites, and they just end up being more work than they’re worth.

Ha. Ain’t that a common thing for programmers. We tried building or using a tool to help us with doing repetitive tasks, only to find ourselves hours later at the centre of a spaghettified mess, realising that it’ll be way quicker if we just do things manually.

Software engineering: Where everything is a nightmare, but we keep on throwing ourselves into it anyway.

I end up implementing Jinja2 into a Python file that I make myself to generate the site. It’s such a relief not to have to wade through triple-layered documentations just to do what I want to do.

This is a preliminary to a more in-depth article I might do later

It’s almost the end of the year, which for folks who play games mean one thing, among others: Game of the Year! award, list, nominations, et cetera.

I was planning to make one (with slots filled by The Final Station and Hyper Light Drifter and some), but then, after this semester’s classes are over and I actually have some free time to delve into games, I finally tried out Ori and the Blind Forest after a friend’s recommendation.

And this game just completely, utterly, throw all that nominations out of the water.

It’s a metroidvania game with a heartful story, gorgeous presentation, and solid, solid, so solid it’s shining, gameplay. It gets the basic right: controls, feedback, level design. I’m kind of too tired to really make a write-up about it, but what I find most impressive about it is how it’s able to gradually give you new mechanics and arrange its level structure to have you learn by playing with it. Each new area is challenging not just because of the addition of tougher enemies and other number-based increment, but also because it challenges you to play with the new mechanics and your newly-learned capabilities with those new mechanics.

It’s sorta like Portal; how the entire game is really just a tutorial, but a very fun one. Ori and the Blind Forest is sort of like that; its levels are designed for you to learn its many mechanics without ever holding your hand. It’s so damned clever; I thought it really should be a thing in metroidvanias or other games where you learn new abilities as you progress, but I honestly can’t think of any other games that does it so well and so cleanly-cut.

The game’s released last year, so I’m definitely late to the party. It also means I’m too late to start yelling at people at how it’s an undisputed GotY.

Ah well. It’ll be on my list, at least.

Every Man’s Watchman

Review of Go Set a Watchman, along with some nostalgic impression on To Kill a Mockingbird, both novels by the late Harper Lee.gosetawatchman

I was around thirteen when I first read To Kill a Mockingbird. As someone who lives all the way across the Pacific and growing up with English as a second language, it was a wild ride of lingo and figures of speech. I remember having to read the first few paragraphs over and over again until I managed to get what it was rambling about, but afterwards it was easier. I got swept in; American South is so far off from my own life that it might as well be a fantasy land, but it became familiar. Continue reading “Every Man’s Watchman”

I think this was supposed to go somewhere, but I forgot

Programmers everywhere will tell you that computers are the source of all woes, and that their craft is a complete utter shitshow. Everything is built up on something else that someone made just couple of years ago and depends on something else that someone else made and it seems like none of these things are going to last any more than a couple of years.

This isn’t unique to programming (I mean, I’m sure anybody who has spent long enough with their work, from accounting to zumba fitness, will tell you that their work is complete rubbish, independent to whether or not they actually enjoy it). This is also basically how science works, too.

Every piece of mathematics’s black magic is just built on something else some other guy has established. Every successfully proven theory on how physics even work rely on the theories that were proven long ago. When you’re studying a science, you’re not so much filling yourself with knowledge of the universe’s intricacies, as just trying to understand whatever the folks before you were talking about.


Is there a word for the anxiety for the passing of time?

I wonder if part of my anxiety for the passing of time is because of my habits with video games. In games it’s easier to see the numbers and carefully plan your actions. If there’s only three slots left to play your cards, you don’t try to squeeze in two cards that require two slots each, you pick one and choose another card that only need one slot, or–occasionally this is an even better choice–play three cards with each only needing one slot.When there’s a card that says “Use up every slots left”, you don’t use it when you have five free slots. You fill up four slots first.

In real life, it’s easier to make mistakes, and to do over and over again. Every time there’s a free time, I tend to overthink of what to do, how much worth will they be for the time that they’ll eat up. Whenever I’m left with nothing to do but wait, like while commuting, or when it’s five minutes to class and it’s far to short a time to go out and get something to eat, I’m left feeling a disconcerted, uneasy, anxious. Like a complete loser, like someone who has only one slot left, but has already used up all the one-slot cards

The Night is Silent

Some short nostalgic ramble about A Dark Room, a browser game. Now also on Android and iPhone.

I came across the the browser game A Dark Room several years ago, about the same time that I discovered other silly idle games, like Candy Box. They look like the simplest possible games, at first glance. Click click click, and then instead of waiting around watching the numbers go up, you alt-tab away to whatever it was you’re supposed to do. By the time you alt-tab back, there’ll be more numbers in the- oh, hey! That button wasn’t there before.

What should we call it, these expansions to the idle genre? Incremental minimalist RPG? They look like nothing at the beginning, but it gradually opens up more options as the game progress. Even after an hour in and you start getting the hang of the game, it can still throw out some more surprise options.

A Dark Room is probably the best of this sort of game, not just because it deals out its surprises well, but also in the narrative that it builds up. The descriptions are simple; they’re easy to follow as you alt-tab your way around the browser. But they still manage to set a mood, they set up the base for the world to grow out of it. The room is mild. The fire is burning. Builder puts up a hut, out in the forest. says world will gets around. Pieced together, the short clear sentences start to show a coherent world that’s a lot unlike our own. A stranger arrives in the night. A pack of snarling beasts pour out of the trees. The villagers retreat to mourn the dead.

In a way, it’s sort of like how the best horror stories show its ghosts: they slip in some details in the mundane that feels off. Little surprises that prickle at your skin without forcing you to jump off your seat.

A Dark Room isn’t the first game that has pushed me to make a fanfic out of it, but it’s probably the first one where most of the pieces can take perfect form in my head even though they’re blank spaces in the game. The experience is always a bit different from person to person, in quite more ways than the imagination a good book can provoke.




Partially Stars

A love story. I don’t usually like love stories, but this one came right out of me. I don’t usually finish my own writing, but this time I did. So. So I guess there’s nothing to it but putting it up.

Partially Stars

He was the most charming person she had ever met. His dark eyes shone with the alacrity of stars. When he smiled, it was a supernova shattering her world and bringing heaven down on Earth. When asked who she wanted to ask to the prom, who she wanted to spend the last night of her senior year, the last time she’d ever affiliate herself with her public high school in the middle of nowhere, it was no question. It was a tease. It was never a question.

That was, until her friends told her he was a devil.

“Do you remember that time when Hell broke and the devils and imps and monsters started to come to this side?” her best friend said, not looking up from her textbook. “Some of them stayed after the war was over.”

“So if he’s a devil what difference does that make?”

“Devils eat human souls. See,” she showed her the book, a research on supernatural creatures, printed five years ago, only ten years after the war ended and enough time to brag that the research was done right. Among others, the page told her that devils were tricksters, the most powerful and despicable races in the underworld. “You shouldn’t get caught up with them,”  her friend concluded.

She gave it some thoughts, and then she went to her grandfather, who had fought in the war, and asked him what he thought of devils. Continue reading “Partially Stars”

I will never stop raving about The Final Station

Some “notes” I made while writing my review for The Final Station. If you can read Indonesian, check it out at Tech in Asia ID. Only parts of this made it to the full review, and it sure ain’t as raving mad as these.

tl;dr: The Final Station is a damn fine game that should be played by everybody, particularly those interested in storytelling.

Although the actions stay the same for the length of the game–open doors, shoot, run, survive–it never feels tacky or repetitive. There’s always something for you to find, always something out there to surprise you. A little note there, a message from a wife to her husband, an innocent “I’m going to go out for  tea” while you know, you always know, that they most certainly never came back from their break. And then the more sinister signs, a broken light pole, a light that’s left on, blood marks in the door, and of course, the corpses. On the street (probably was out for a walk), in their bedroom (didn’t see it coming), locked in a closet (starve themselves to death?). And the monsters, in all the places that you can find them.

Even with its simple pixel style, its minimalist exposition, the game is a hallmark of environmental storytelling. Only a few of those spread-out narrative matters to the main plot, but they don’t have to. Here is a world, this is what it was like before it died. Sometimes you’ll open a door and shoot your way through a horde of zombies just because you want to know what’s out there, if there were anybody alive.

It’s a desperate struggle not to just save yourself, but also to save other people, to care about everyone no matter who they are.

It’s a kind game. It has a heart. You’d think in a zombie shooter you’d get used with all the carnage, you’d think after saving yet another person and hearing them babble yet again about how wrong the world is turning out to be and how much of a disadvantage it’s putting them in you’d get numb to the ideas, but here it never stops the suspense. The game doesn’t remind you that the world is cruel, but it doesn’t have to. It writes down its thought of how cruel it is and scatter it around the world for you yourself to find.

It’s a damn fine game. It keeps your heart pumping. It doesn’t pull you in, but it compels you to pull yourself in. It’s challenging without trying too hard, it’s threatening without going overboard. With its pixel aesthetic and indie sentiment, you’d come and expect something lite and simple and you’d be wrong. It’s a gem that’s polished to near-perfection. A pitch-perfect combination of everything that made it what it is.

What You Find Between the Pages

Not a review, more some thoughts about Fahrenheit 451, a novel by Ray Bradbury.

I finished Fahrenheit 451 today. I cried twice reading it, and I can’t quite say why. I guess it’s more to do with me right now than it is about this sixty-year old story, but it’s still kind of interesting, kind of funny, what sort of things can trigger me down like that. I don’t usually show any emotion at all while reading.

So. Fahrenheit 451, the world-famous novel by Ray Bradbury. It’s the first time I’ve read Bradbury; I didn’t know what to expect when I started reading it. I guess I’ve heard, of course, that it’s about a world where books are banned and burned. When I first heard about it I sort of imagined something more fast-paced, more explosive. People running to save what they can from the fire, people hiding from the flame. Burning is a strong word.

I guess in a way, this is what it’s about too. Fire take and give, and when it takes you run. But I guess I didn’t notice that fire can burn slowly, that it takes its time with its destruction, save in its belief that nothing will stop it while it eats up everything. Fahrenheit 451 reads sort of like flame eating through paper. It’s slow, and steady, and magnificent. Its depiction of destruction enchants, distract, until you realise that the paper has all burned out, that there’s nothing left but ashes.

The book, the story; it’s a ridiculous form of irony, a sort of a self-demonstration. It’s a book about burning books, and the ideas and people that were burned alongside them.

There’s this part in it where its characters were reading and reciting words from books and they get drowned in them, can’t understand a word, can’t retain a meaning out of the petty obfuscation of words, and an antagonist made it a point as to why books are useless. Too many words, to little things said, just burn them, they confuse you and ruin you. And yet that’s exactly what Fahrenheit 451 feels like. It’s so many words.

So many words, but also so many things said, between the lines and strung up between scenes and unrelated paragraphs. The mind works in so many things impossible to say with words, but words is what we have to describe what’s in the mind. So we string those words together and hope against everything that your audience can decipher even the things that are unsaid.

Fahrenheit 415 is a book about books, about fire, about wars, about comfort, about the mass media, about what you can see and what you have to make an effort to see, about people, about people. It’s a cautionary tale about the future, they say. Sure, that’s true too. My edition came with an introduction by Neil Gaiman, who said that when someone say what a book is about, then that’s probably true, but that’s not all that the book is about. It’s what you find between the pages.

So, so honestly so far I guess I’ve just been saying nonsense, trying to to explain what I’ve found between its pages. It’s a book I pick up on a couple quite afternoon, and every time I put it down for the day I can’t help feeling a bit more melancholic, a bit sadder, a bit more contemplative. And if you ask me why, I guess at this point I can’t quite articulate what in it that makes me feel this way.

Books, you know. Words. Stories. They’re real powerful. One of the most mysterious force in the universe.

Hidden gem of a game

Currently playing a game called The Final Station and am writing a (n Indonesian -language) review for it. There’s a couple of things I want to say about it first.

One. This game blew my mind. I expected some simple zombie shooter/train management sim, and instead I get a full-blown narrative experience with a feel that you can just tell is unique to the people who made it. And the people who made it happens to be Russians. You don’t get a lot of games from up there.

Two. It’s definitely a narrative experience. I hesitate to label it simply a zombie shooter/train management, as it’s so much more than just its mechanics. In fact, I’d say while in most cases stories work in service to the gameplay, here its gameplay is the one that serves the story.

So yeah, I’m most impressed. If you can read Indonesian, a full review is incoming. If you’re an English-speaker, well, I might be compelled to say a couple more things about it later.