Archive for the ‘Works’ Category

The corruption of the last syllable containing the vowel ‘a’ on Indonesian

2007 December 23

In spoken Indonesian, the vocal ‘a’ on the last syllable of many words change into ‘e’. When this colloquial corruption exists, using the correct version sounds very very stiff and formal. Here are some examples:

teman -> temen (friend)
Temenmu tadi juga kuliah di UGM? – Does your friend (which we met earlier) also study in UGM?

But not preman -> premen (even though it has the same last syllable as the previous example)

dalam -> dalem (inside)
Bukunya ada di dalem tas yang kecil itu. – The book is inside that small bag.

malam -> malem (night)
Gimana kalo ngerjainnya nanti malem aja? – How about doing it later tonight?

But not salam -> salem

tanam -> tanem (to plant), also its derived word tanaman -> taneman (plant)
Tadi aku ngeliat taneman aneh lo di kuburan! – I found a weird plant on the cemetery, you know!

enam -> enem (six)
Aku udah nyoba enem kali tapi masih belum bisa menang juga. – I’ve tried six times but still couldn’t win.

But not senam -> senem

senang -> seneng (to like)
Aku nggak gitu seneng lagu ini. – I don’t really like this song.

But not renang -> reneng

simpan – simpen (to keep something in a place)
Simpen di tempat yang aman lo! – Make sure you keep it in a safe place!

But not depan -> depen

malas -> males (lazy)
Kalau kamu males-malesan, mana bisa lulus? – If you act lazy, how can you pass?

But not kelas -> keles

Most of the words that I could think of ends with -n, -m, or -ng (which in Japanese is all represented by ん). Can you find other examples?

It is OK to use the corrupted vocabulary presented here when talking to someone higher (e.g., teacher). However, it is not used in formal writing or speech.

Translation attempt: Haikara-san ga Tooru

2007 December 11

This post has been moved to singularity.agronesia.net: “Translation attempt: Haikara-san ga Tooru”. Please visit the new server.

Panduan Yahoo! Jisho: Kamus Jepang Inggris dengan Banyak Contoh Kalimat

2007 December 8

Tulisan ini telah dipindah ke singularity.agronesia.net: “Panduan Yahoo! Jisho: Kamus Jepang Inggris dengan Banyak Contoh Kalimat”. Silahkan kunjungi server barunya.

This post has been moved to singularity.agronesia.net: “Panduan Yahoo! Jisho: Kamus Jepang Inggris dengan Banyak Contoh Kalimat”. Please visit the new server.

Tutorial penggunaan SQLite dari .NET menggunakan bahasa C#

2007 June 11

This post has been moved to singularity.agronesia.net: “Tutorial penggunaan SQLite dari .NET menggunakan bahasa C#”. Please visit the new server.

Tulisan ini telah dipindah ke singularity.agronesia.net: “Tutorial penggunaan SQLite dari .NET menggunakan bahasa C#”. Silahkan kunjungi server barunya.

SQLite, mesin SQL yang kecil dan cepat

2007 May 29

Tulisan ini telah dipindah ke singularity.agronesia.net: “SQLite, mesin SQL yang kecil dan cepat”. Silahkan kunjungi server barunya.

This post has been moved to singularity.agronesia.net: “SQLite, mesin SQL yang kecil dan cepat”. Please visit the new server.

I knew it! Files are living things! They have genes!!!

2007 May 26

The problematic file is freetest.htm. I have identified that it has an NS_ERROR_XPC_NOT_ENOUGH_ARGS gene. With that gene, you cannot do any AJAX from the file on certain environments…

No, I’m not on a crack… Listen to my detailed account, all you Javascript developers… That defective gene might be on YOUR file.

After learning how to use AJAX on a dummy page, I coded the real thing on freetest.htm, the real page. Like most Javascript programming, sure enough it only works on one browser. The lucky one is Opera 9 this time. The suckers are Firefox 2 and IE 6.

Browser programmers are ultra-smart guys, I assume the mistake is on my part. OK, so I copied the AJAX code to a dummy, clean, HTML page to find the bug. However it works!

Ah, so it must be some arcane interaction between the previously-existing Javascript code and the newly-added AJAX code. But my AJAX code is pretty complicated. Therefore I tried adding the simplest possible AJAX action in my real page, trying to see whether a simple AJAX works at all. The simple AJAX creates an XMLHttpRequest, sends a request, and retrieves the response. This time it works in Opera 9 and IE 5. Firefox (using Firebug debugger) gives this error:

uncaught exception: [Exception... "Not enough arguments"
nsresult: "0x80570001 (NS_ERROR_XPC_NOT_ENOUGH_ARGS)"
location: "JS frame :: http://localhost/aspx/freetest.htm ::
doAjax :: line 26" data: no]

It’s time to hunt which other js file conflicts with this one. I deleted the reference to other js files one by one, until there is no Javascript code other then the AJAX itself! But still AJAX doesn’t work!

Lol now that’s funny. OK, so I tried modifying my real file further (I’ve backed it up), deleting more useless things like CSS and title, until it matched another dummy file (freetest-simpleajax.htm) with the same AJAX code down to every character. Browsers are weird, so there is still the slight possibility that the TITLE tag messes things up. However it still doesn’t work while AJAX works on the other dummy file!

Obligatory md5 result:

1ab3bdf1ab23aabd6cfa4b1210bc7ee2 *freetest.htm
1ab3bdf1ab23aabd6cfa4b1210bc7ee2 *freetest-simpleajax.htm

(since the content of the files are identical, the genes must be stored somewhere else such as in the NTFS Master File Table)

Lol… I tried using the save as command to save freetest.htm into freetestxxx.htm. That’s probably the equivalent of reproduction. Amusingly, freetestxxx.htm works fine. Did the defective gene not get passed?

Ah, I forgot a very basic thing! Phenotype (visible traits, like the body height of an ape and an HTML page throwing exception) comes from the intricate interaction between genotype and the environment! Basic Biology… Let’s try opening freetest.htm on another tab of the still-running firefox.exe instance…

Result…

It works!

So, it must be the environment. The other tab must be too humid or something for freetest.htm to do AJAX. It’s not a problem of cache (the tab loading an old, nonworking version of the file). I tried modifying freetest.htm by adding visible text and reloading it on both tabs. The text appears on both, signifying that both tabs opened the most recent version of the file. However AJAX still doesn’t work on that cursed tab…

Whatever… I still haven’t achieved what I wanted, making the real AJAX code work on the real page… Back to work…

Edit: The culprit is the function named parent. Renamed it to domParent. What’s weird is that after the exception occurs, the tab will be unable to do AJAX on that page even after the problem has been corrected (hence the story above).

Edit 2: It doesn’t work in IE! The ringleader is different this time… In IE 6, there is no XMLHttpRequest required for AJAX, but we can achieve the same thing by creating an ActiveXObject as shown:

var foo = new ActiveXObject('Msxml2.XMLHTTP');

However, it turns out that the variable foo won’t behave completely like a real Javascript object! It fails when we try to dynamically add a property, such as:

foo.bar = 'This thing normally works';

My code adds an id for every XMLHttpRequest object created, so it fails miserably in IE 6… Geesh, I now have to code a different way of tracking those requests…

Using the prefix -an to make an informal verb from a noun

2007 May 12

This post has been moved to singularity.agronesia.net: “Using the prefix -an to make an informal verb from a noun”. Please visit the new server.

Kenapa aku (dulu) tidak mau jadi dokter

2007 May 5

Tulisan ini telah dipindah ke singularity.agronesia.net: “Kenapa aku (dulu) tidak mau jadi dokter”. Silahkan kunjungi server barunya.

This post has been moved to singularity.agronesia.net: “Kenapa aku (dulu) tidak mau jadi dokter”. Please visit the new server.

Recording karaoke using Audacity

2007 April 10

This post has been moved to singularity.agronesia.net: “Recording karaoke using Audacity”. Please visit the new server.

Japanese kanji handwriting recognition in Windows XP’s IME

2007 March 31

This post has been moved to singularity.agronesia.net: “Japanese kanji handwriting recognition in Windows XP’s IME”. Please visit the new server.