It has been discussed before... but here are my thoughts...
Let's start with what Foursquare is, according to their About page:
Foursquare is a mobile application that makes cities easier to use and more interesting to explore. It is a friend-finder, a social city guide and a game that challenges users to experience new things, and rewards them for doing so. Foursquare lets users "check in" to a place when they're there, tell friends where they are and track the history of where they've been and who they've been there with.
Now lets throw Indonesia into the mix... what part that description says that using-the-mobile-Foursquare-site-to-check-into-places-that-you-are-not-physically-at-to-earn-every-single-badge is part of the game? I'm pretty sure none of it. Sure there's nothing there that says NOT to do that either (which is a whole other problem). But why play a game at all if you're playing 100% different from it's very basic intentions?
This would be like trying to play Monopoly and someone decides that instead of rolling the dice and moving around to buy properties, they just move their token (without rolling) to the property they want and just take the property. Each turn they go around the board at random moving their token and taking properties at will.
Would you play Monopoly with this person? HELL no. If you're like me, you'd punch them in the face and tell them to GTFO! OK, maybe just ask them nicely to not play anymore if they're not going to do it right... but whatever. Minor details. Point is... there is a generally accepted way to play Monopoly. You roll the dice, move your token, and choose to buy the property or not based on how much $$ you have. If you don't land on a property you want, you don't get to buy it.
If we jump back to Foursquare, you can (hopefully) see some relation. Rolling dice & moving token = visiting locations (in person) and checking in. Buying property if you have enough $$ = being rewarded with a badge if you have the required check-ins. Not landing on a property (or not having enough $$) and not buying it = not physically being at a location to check in. Etc... etc...
What does it all mean?
In my not-quite-so-humble opinion, if you're not playing the game the way it was intended to be played and can't play properly with everyone else, GTFO. Just stop playing. Be it Monopoly, Call of Duty, Go Fish, or even Foursquare. Cheaters make it less fun for everyone.
But wait! "Is this actually cheating?"
Eh... no way to actually say yes or no. Foursquare has never really been specific about some of the rules around this stuff. That's why this "Indonesia thing" is often kind of a touchy subject. There is no clear-cut explanation saying that people playing in this way are cheating and should not be allowed to play. Should there be? I don't know... it's not my service to run and make decisions for.
On one hand, Indonesia is apparently enjoying themselves and are at least using the service in some way. On the other hand... they're pissing a lot of people off by not playing "correctly." So where does the line get drawn?
Do I hate Indonesians that cheat at Foursquare? Not at all... if they're having fun, more power to them. Do I think they should stop playing that way and enjoy the game it was meant to be played? Yes.