Thursday, December 27, 2007

How do you install Adempiere with PostgreSQL on Debian/Ubuntu?

Having to repeat these steps over and over again (to help friends, I myself don't know anything -yet- about Adempiere or ERP in general), I better put this down here.

I know that there are great clues from adempiere's wiki (http://adempiere.com/wiki/index.php), but these steps are what is convinient for me, most are the same as in wiki.

First thing's first, download Adempiere package from sourceforge. I got this one:
Adempiere_331b

Install sun-java5-* packages (hint: aptitude install sun-java5-*, I choose to install all packages)

Configure pljava support for postgresql:
- Download the precompiled binaries package:
for postgresql-8.1: from pgfoundry.org
for postgresql-8.2: http://www.posterita.org/share/pljava.zip

- Configure so that postgres user is trusted (edit pg_hba.conf and do postgresql server restart after) While you're at it, remember to also configure adempiere user access in pg_hba.conf (I just set it to trust for local access)

- Copy pljava.so and pljava.jar from the pljava package to /usr/lib/postgresql/VERSION/lib

- Link libjvm.so (without it, pljava install will fail, I choose linking than adding entries to ld.so.conf) :
ln -s /usr/lib/jvm/java-1.5.0-sun/jre/lib/i386/server/libjvm.so /usr/lib/libjvm.so

- Add the following lines to end of postgresql.conf :
custom_variable_classes = 'pljava'
pljava.classpath='/usr/lib/postgresql/8.1/lib/pljava.jar'
pljava.statement_cache_size = 10
pljava.release_lingering_savepoints = true
pljava.vmoptions = ' '
pljava.debug = false
- Then to environment (/etc/postgresql/VERSION/main/environment)
JAVA_HOME = '/usr/lib/jvm/java-1.5.0-sun'
- Copy install.sql to /tmp, for run by postgres user (hint: su to root then su - postgres), so that we could just run it by:
psql template1 -f /tmp/install.sql

while we're at it, remember to also create adempiere user:
createuser adempiere

- Restart postgresql server

Now after postgresql preparation ready let's go to adempiere. I usually just prepare an Adempiere directory on user's home. And make this setup:

/home/USER/Adempiere/Server
/home/USER/Adempiere/Client

Also do this:
export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun
export ADEMPIERE_HOME=/home/arief/Adempiere

and remember to put those lines on the end of ~/.bashrc too.

Then I extract the Adempiere package to the Server directory. Then copy and extract the AdempiereClient.zip (you may get it from Server/lib/AdempiereClient.zip) on Client directory.

on Server, I do:
chmod 755 *.sh utils/*.sh

Then execute: Server/RUN_setup.sh

On the configuration setup screen, I usually setup webserver port to: 8080 and 4433, so that I could run Adempiere as regular user. For database, don't forget to set it to postgresql. If on testing the configuration you failed to connect to the web or database, try changing the host to '127.0.0.1' or localhost or your computer name and re-test.

If test all passed, you can save the config (click the Save button) then just wait for the setup to finish.

After setup we can now import the database structure (also with some demo data) by running:
Server/utils/RUN_ImportAdempiere.sh

If all's fine with the postgres-pljava setup, we should move along just fine here. And when it's all done. We could start the Adempiere Server with:
Server/utils/RUN_Server2.sh

And then we could start client by:
Client/RUN_Adempiere.sh

at first run it will ask for configuration. Just fill it the values you put on the server setup.

After that, Client should started up and showing nice graphs and dashboards. This is where I get amazed and confused and pressed the Quit button :-)

Oh, for easier launch, I usually add these two files:

/home/USER/Adempiere/server_start.sh
/home/USER/Adempiere/client_start.sh

With contents like these:
#!/bin/sh
# server_start.sh
#
export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun

cd /home/USER/Adempiere/Server/utils/
ADEMPIERE_HOME=/home/USER/ADempiere/Server /home/USER/Adempiere/Server/utils/RUN_Server2.sh


#!/bin/sh
# client_start.sh
#
export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun

cd /home/USER/Adempiere/Server/utils/
ADEMPIERE_HOME=/home/USER/ADempiere/Client /home/USER/Adempiere/Client/RUN_Adempiere.sh

Then I could create nice launchers for them and put it on panel or desktop. Remember to set to run server_start.sh inside a terminal.

Hope I didn't missed anything.

Friday, December 07, 2007

Telecomm network service management

This is going to be a heavy one :-)

As telecomm network technology grows, the amount of complexities in systems and subsystems involved grows also. This may not be such a big deal if we are still focusing our attention at the network level. Only, we don't have that privilege anymore.

Telecomm subscribers has also growth and changed, the people learned to demand more, in quality and quantity of services they have. The word "subscriber" itself is a bit ambiguous nowadays, because it could point not only to people but also to other businesses, or even to other networks or equipments.

So, operators started to think about the problems from the Service point of view. By taking the view up one level it helps them to think more clearly about the problem at hand. But this also brought in another layer of complexities. In Network point of view, a problem may be located and fixed in just a node in a subsystem. In Service pov, things get alot more complex, service problems may be caused by several points in the network, in different subsystems.

The growth of network complexities and the ever demanding customers need to be taken cared of in a smarter way. When not so long ago we can limit telecomm services as just Voice services and may easily identify and fix a problem in the service, currently we talk about different kind of services with different requirements and different parts of network.

When in PSTN we only talked about Switchings and leased circuits, then in GSM we had increased complexity of MSCs, VLRs, HLRs, BSCs, BTSs, VAS, etc, and now in 3G we have more interesting things (Node-B, RNCs, new interfaces, etc) to play with and the trends will keep went up in the next years in the next generation networks.

Funnily, errr or is it sadly..??, I notice that network designers/engineers seems to be unnotified or ignorant about this issue, they keep designing and engineers "new-and-better" networks with extended complexities in each new release and still (atleast seems to me) putting this service quality issue behind.

In service quality management world, OSS (should) played much more important role than before, and people has seems to acknowledge about this, equipment vendors have started to think about this, third-party consultants started to said alot of things, some have also started to present "solutions" to help overcome this problem.

Note that it's almost always a "solutions" not a ready system/product. That's because this is still an area with most complexities, usually people tend to stay away from this kind of issue when they can. Some operators has started projects to handle the situation, some manage to get good results (or so I've been told), some are still striving to get it done.

Personally, I think that a "network and service quality management" solution is close to impossible to be implemented correctly. There simply not enough budgets and resources for this in many operators. But I still think that there are many un-explored ways to solve the problem.

... to be continued ...

Human Computation

Just learn about this great idea from Dr. Luis von Ahn presentation here. The presentation is based on his PhD theses. I want to try to describe here, briefly, what he is doing. His idea has turn on lots of bulbs in my brain.

He start by telling the story of CAPTCHA (Completely Automated Public Turing test to tell Computer and Humans Apart). We all should by now probably know about CAPTCHA, and how does it help preventing spammers to get millions of free email account.

CAPTCHA is a computer-generated product that currently only human can solve but not other computer program. See the paradox? This is the basic idea of Human Computation. There are still areas where humans do better job than computers. And we do it well, way better than computers currently capable of.

What some of us may not know is that spammers have found a way to solve CAPTCHA. There are 2 basic ways (I myself knows about the first way, but only learn the second way from Luis' presentation).

First, spammers pay people to actually solve CAPTCHAs. But this has turn out costly for them. Second clever thing they done, is by using p*rn-sites. Spammers create p*rn sites that when visitors want to see more, they would have to enters words of a CAPTCHA (which behind the screen will then be submitted to Yahoo's email registration form). Being passionated p&rn lover, more often than not, those visitors will as fast as the can typed in the CAPTCHA :-)

The second example taught us a very interesting idea (in my words): We can use human computational power to solve computer-unsolved problems in a way that's actually "fun" for them, plus we don't need to spent a lot of money to pay them :-) And to know just how many wasted cycles of human computation is, Luis gave a figure: In 2003 estimated that there are > 30 billion man-hours wasted on playing the game Solitaire.

So what kind of problems that we may solve? Turn out there are a lot of them. Luis gave example of giving better descriptions to images on the web, so that a search for images could give better results.

To solve that problem Luis created (not another p*rn site, no!) 2 kinds of game he called symmetric and asymmetric game. One of the game he has created basically just ask people to put on words that describe images. The results are then used by google images search to help them provide correct images to people when they are searching for, say, 'cat'.

But that would take long time, right? you may ask. Well, you gotta see Luis' presentation to learn much about interesting statistics, shortly I can only say it does worked!

You can see, and try, the games at www.espgame.org and www.peekaboom.org. I just checked espgame site, and there it shows that they have been giving > 33 million image labels since October 2003. Wow.

Luis himself seems doesn't just stop there. He continued to do research on how to solve more interesting problems.

I noted one interesting question in the video: Would it be possible that for every boring job we do, we could create fun ways to do it? Of which Luis answered, I don't know, it would be great if we could figure out how to do this for every problem. But yes, this is an open problem.

An interesting open-problem,
So let's use up those wasted computation cycles :-)

Tuesday, November 13, 2007

Google Android

Just watched this: http://www.youtube.com/watch?v=1FJHYqE0RDg.

What... can... I ... say... ?

Thursday, October 25, 2007

a Good Software?

Joel (the on-software guy) has been doing marketing tours of his company's FogBugz version 6, a project management with all kinds of "thingamajiggies" software.

I noted two things:
First, his marketing strategy is very good. By giving free product demo and presentation all over the world.

Second, FogBugz 6 is a _very-very_ good software. That's what I would think how all software with user-interfaces should behave. Four thumbs up for Joel and team.

Info: You could watch a video recording of Joel presentation in Austin here: http://joelonsoftware.com/items/2007/10/24austindemo.html

If you have slow internet connections or some crazy proxy that won't let you enjoy the video (it's 265 MB big), I've found out that you could wget the flash video here: http://media.fogcreek.com/Joel-Austin07.flv

Admittedly, I've learned a lot.

Update: I should have said I've learned at least 3 things, the other one is the Evidence Based Scheduling system FogBugz have. Always have wondered about tracking and estimating time on my projects (by projects I really mean those are all the things/stuffs that require me to actually DO them).

Thursday, October 11, 2007

Back to Fitrah :-)

Please... forgive us.

Happy Ied Mubarak 1428 H.

may Allah always be in our path.
Here and after.

Arief - Rizka - Aga - Nadia - Ghifa
... and all the rest of the team...

64 (virtual) Processors on your desktop?

Taken from a great article by Ulrich Drepper on http://lwn.net:

"... Red Hat, as of 2007, expects that for future products, the “standard building blocks” for most data centers will be a computer with up to four sockets, each filled with a quad core CPU that, in the case of Intel CPUs, will be hyper-threaded. {Hyper-threading enables a single processor core to be used for two or more concurrent executions with just a little extra hardware.} This means the standard system in the data center will have up to 64 virtual processors. ..."

Monday, September 24, 2007

Suspend-Resume in OLPC Laptop

Jim Gettys of X windows fame, share a story how he and OLPC team (CMIIW) got the laptop doing suspend and resume on hundred-thousand cycles.

Read about it here.

Friday, September 21, 2007

To C or To C++

This one from Linus, surely is my kind of comment :-)

"C++ is a horrible language. It's made more horrible by the fact that a lot of substandard programmers use it, to the point where it's much much easier to generate total and utter crap with it. Quite frankly, even if the choice of C were to do *nothing* but keep the C++ programmers out, that in itself would be a huge reason to use C."

Indonesia Earthquake Informations

Just got this done 2 weeks ago, but only roughly. Then I've improve it by showing historical data also.

It's accessible on my website (http://arief-mulya.com/gempa.php).

All data are taken directly from BMG EWS server. I use wireshark to help me find out what are the protocols used to get the data. I don't think my implementation to have the data is yet the best way. And it doesn't currently handle warning cancelations informations (such as tsunami warning cancelations, etc).

Don't have the time to improve it again for now, but I've plan to put a "latest-only" link and rss feed also there. If anyone knows a free web-to-sms services, please let me know, I'd love to put the ability of giving sms warning there also.

Monday, August 06, 2007

Linux Power Consumption

Intel has created powertop [www.linuxpowertop.org], a power consumption watch utilitiy that work very similar to `top` program but this is to watch processes that takes much of your laptop battery life.

In Debian unstable I could just apt-get install powertop to use it. It also has the ability to give many (useful?) suggestions how to save my power. After implement some of them, I get to save a few watts and extends my battery life.

What's also interesting to me, I've learn that accessing gmail from firefox seems to contribute a lot to my laptop power consumption. Heavy javascripts? Don't know, but this may results of me not standing by gmail all the time from now on.

Thursday, August 02, 2007

GNOME Online Desktop Project

An interesting project.
I think it suits me quite well.

Considering that I spent most of my computing time nowadays through a Web Browser (for all my application needs) and a Terminal (for programming and quick and dirty work).

Next Step Plan

Your list of things TODO, is actually a list of things you _cannot_ / _will-not_ do.

Not until you actually plan what needs to be done for each of the mumble-mumble you identify as "TODO".

Saturday, July 14, 2007

Apatar, F/OSS Visual Data Integration

About 5 years ago I turned my lazy brain on its wheels around to help me create decent parsers to processes GSM switches configuration and traffic data. Anyone has ever deal with those data must have known the fun we could have in interacting with them.

I was a fool back then (now is not any better, I've become more foolish then ever), not knowing how things worked and fueled by young-man's passsion, I decided to create them by myself, hand-written using C, the "best programming language" ever created by mankind. :-)

I didn't just jump to pure C, though, I remember that I had first thought to create them using bison and flex (UNIX techies: they are free-software implementation of yacc and lex). For this, I studied those wonderful things about language grammars, stomata, recursive descent, right-recursive, left-recursive, the Backus-Naur Form, and many other things that I've now -ofcourse- forgotten about :-)

Apparently my learning was not enough or I was just simply to stupid to grasp the whole concepts or both. I manage to create some parsers, but they turn out to be so complex for me that I couldn't easily debug and adjust them everytime there are errors or updates.

So I turn to C. Just C this time. I even bought Peter van der Linden Deep C Secrets book. A really great and recommended book for learning C. I have some good laughs from there, too. (This reminds me, where is that book now? Hello?)

From the book, I got valuable lessons about finite-state machines. I use this knowledge to create my parsers using C, and succeeded in doing so. I could even understands the code at the time, although since it has never failed me yet, I've also forgotten about it :-)

I do remember that those experiences was while thrilling and enjoyable at the same time also hair-pulling and nightmarish. Something that I'm not sure I wanted to do again if the fish is not worth it.

Nowadays, I learn that people use these things called ETL (Extract, Transform, Load) tools for the kind of work. And so many software vendors has it now. ETL tools that can, at least in theory, read any data in any format and transform it to any format you wanted.

Remembering my past experiences, I'm amazed and thrilled to know that there is also such a tool in F/OSS world called Apatar (http://www.apatar.com). Apatar even has a visual-drag-and-drop-touch-and-go-you-name-it ability to create ETLs that they called DataMap. Many DataMap are already available in their http://www.apatarforge.org forge-site.

If only I have known about these tools back then. May have saved me some sleepless night.

Or not.

Wednesday, July 04, 2007

World's 3 Richest Men

I just got this from slashdot: http://seattlepi.nwsource.com/business/322239_richest04.html?source=mypi.

So, now the 3 richest man of the world are the ones who have fun in these fields:

1. Telecommunication Network
2. Software Engineering
3. Investment Business

So happens, those are the fields of my current interests.
Hmm. Should not be a bad path afterall.

Just need to make it works for me :-)

Sunday, June 24, 2007

Fast notes

It's been a long time, life's great but I've got many things to work on and so little time.

Classic, huh ?
Oh well, now is also only for passing by.

I need to note these important files/directory for me to handle an "unstable" Debian:

- /var/lib/apt/lists
- /var/lib/dpkg/status
- /var/lib/dpkg/available

Kept forgetting about them.

Wednesday, May 02, 2007

Menggambar garis miring di monitor


Perkara mudah kah?
Seperti banyak hal lainnya dalam dunia komputer, ini adalah perkara yang sepertinya mudah namun kenyataannya sulit sekali.

Untungnya sudah ada yang memikirkannya dan hasil formulanya disebut dengan Bresenham's algorithm. Hint: Go to Wikipedia for details.

Kalau liat gambar disamping itu, bisa liat kan ketika pada posisi tengah ternyata kita perlu mewarnai 3 pixel, instead of 2, untuk mencapai kemiringan yang diinginkan.

Dan ini baru bicara grafik raster. Kalau vector, wah gak kebayang dech.

Hiks.

Monday, April 30, 2007

RI-1 Gunakan 3G Video Conference



Dalam acara peresmian proyek percontohan pembangunan Rumah Susun Sederhana, Presiden Soesilo Bambang Yudhoyono yang berada di Pulo Gebang menggunakan fasilitas 3G video conference Telkomsel untuk tanya jawab dengan penanggung jawab proyek di empat titik lokasi berbeda, yakni di Cakung, Klender, Cipayung, dan Cawang.


Btw, blog ini dan blog lainnya dariku yang terkait dengan Telekomunikasi di Indonesia akan juga tersedia (mungkin lebih banyak) di http://arief.telkom.us yang keberadaannya dibantu oleh Mas Koen yang ruarrr biasa.

Wednesday, April 25, 2007

UNIX is Simple

... that's what Linus said in his "Just for Fun" book.

Come to think of it, I agree with him.

UNIX. Simple. Small. Beautiful.

But don't let it fools you,
Simplicity is a show-off for elegant ways in solving problems.

And you could only be elegant thru experience and wisdom.
To realise and accept that nobody's perfect, and that you _will_ made mistake.

Hmm, it reminds me of a saying:
"Nobody's perfect. I'm nobody. I'm perfect."

:-)

Dalam 1 bingkai


Gak nyangka bisa ketemu beliau.

Despite all the controversies around him, dengan santainya beliau bersama keluarga berjalan-jalan disalah satu pusat perbelanjaan terbesar di KL. Tanpa bodyguard pula. Well, paling gak, gak ada yang keliatan.

Kayaknya gak banyak orang besar atau mantan orang besar bisa berbuat seperti beliau.

Monday, April 09, 2007

Etch!

... finally released.

Congratulations to all Debian Developers and everybuddy that helps releasing another version of my most favourite OS.

Suddenly this day doesn't seem so bad afterall.

:-)

Friday, March 23, 2007

Our Boundaries

This one taken from thoughtful blog of Eric Sink [http://www.ericsink.com/]

---

Just inside the gates of heaven, St. Peter sits at a desk checking people in.

Peter: "Welcome to heaven. What religion?"

The man at the front of the line says, "Lutheran."

Glancing at his clipboard, Peter says, "Room 33. Be very quiet as you pass room 6."

The process repeats itself with the next person in line:

Peter: "Welcome to heaven. What religion?"

Person #2: "Catholic."

Peter: "Room 17. Be very quiet as you pass room 6."

The next person moves to the front of the line with a look of curiosity on her face.

Peter: "Welcome to heaven. What religion?"

Person #3: "Methodist."

Peter: "Room 54. Be very quiet as you pass room 6."

Person #3: "Why do you keep telling us to be quiet as we pass room 6?"

Peter: "Because the Baptists are in room 6, and they think they're the only ones here.

----

More on his thought about this here: [http://www.ericsink.com/articles/Boundaries.html].

So, have you been out of your boundaries?
If you never done so, how could you absolutely positively sure that you are now in the right place?

Tuesday, March 20, 2007

A bit late, but better than never!


I finally understands what π (pi) really is!
(Hmm, do I?)

Poor me.


(the nice image is taken from wikipedia.org)

What is it so bad about lying?

Click on the title link to see the whole blogpost.

A quote:
"What is so bad about lying? We currently live in a culture that cumulatively lies our asses off on a nearly daily basis. We lie to get out of trouble. (I’m sorry, officer, I didn’t realize how fast I was going.) We lie to avoid doing something we won’t enjoy. (I’d love to go to your party; it’s just that I already made plans.) We lie to get attention (Oh man, I am feeling so sick today) and we lie to get people to like us. (I love your new haircut!)"

A very intriguing question to me, too.
If the world is now full of liars, why do we keep telling our children (and therefore lying to them), that they should not lied?

I think I have an answer, but I'm curious,
what do you think on this matter? please kindly write your thoughts in the comment.

Wednesday, March 14, 2007

Ubuntu Bug of the Day

I've just found out that Ubuntu (Feisty Fawn Herd 5) is completely uninstallable in a laptop with 250MB of memory. Its "Scanning disk..." dialog may be a nice coffee time companion, but it sure is a pain in the b?tt for users trying to install the beast.

This is a __very__ disappointing experience for me. Even Debian and Slackware could be installed easily nowadays.

The main source of problem seems to point to Ubuntu's decision of making the Installer and the Live CD into one CD and did not provide any installation mode at boot time. This forces user to install from inside Live CD's desktop and thus limiting installable system.

I know Ubuntu's great once you installed it, my desktop is doing fairly fine with it since 5.04 released.

So, to Ubuntu developers, and to Mark Shuttleworth,
I really hope that you'll consider the rest of us in this part of Earth who still need to use "low-powered" computers.

Tuesday, March 13, 2007

Orang-orang hebat ada di Indonesia

Kemarin hingga tadi pagi, aku baca soal bapak Ali Alatas.

Salah satu orang Indonesia yang bukan hanya Bagus dalam rupa dan tutur, namun juga sikap dan ilmu. Beliau termasuk orang yang tetap dihormati di Indonesia selama pergantian masa terjadi di negeri ini. Beliau juga salah satu orang Indonesia yang dihormati dan disegani oleh dunia internasional.

Prestasinya? mungkin sudah tak terukur lagi.
Jasa beliau sungguh berlimpah, mulai dari membantu memulihkan citra Indonesia, hingga membantu proses perdamaian dan rekonsiliasi negara-negara lain.

---

Tadi malam aku juga liat Chris John di acara tv yang format acara-nya ku gak ngerti. Chris John-nya sich aku tahu, walau baru kali itu aku lihat bagaimana ia pribadi.

Chris John sungguh punya banyak hal yang membuat manusia menjadi manusia. Rendah hati, ramah, luwes, meski juga tampak kekuatan dan keberanian terpancar dari dirinya.

---

Mereka berdua adalah sedikit dari manusia-manusia langit yang ada di bumi Indonesia.

Cahaya yang bisa menembus mendung paling gelap sekalipun.

Thursday, March 08, 2007

HALOhybrid

This one is yummy.

Another great innovation from the Company (warning: flash required).

Though, I’ve been thinking and asking for something like this since the first launch of simPATI.

Nice to know it finally realized.

Tuesday, March 06, 2007

About tech support

Miguel de Icaza of GNOME fame, blog about the best tech support he had so far on his wonderful blog: http://tirania.org/blog/archive/2007/Mar-01.html

Reading his experience, I'd agree that's how tech support, or customer supports center in general, should perform.

Friday, March 02, 2007

a Database Design Software

Making software is a hard job. Making a good software is harder.

Making a good software that works right instead of blowing apart is even harder. Making a good software that works right and maintainable is __unbelievably__ hard.

Joel even once said that "Good software takes 10 years. Get used to it".

Now, at the heart of this huge task, there is at least one poor person who has to turns all specs, requirements and design documents to code that works. You might imagine what kind of pressure this poor person feels.

So, for this person, a good helper utilities, editors, compilers, IDEs, or maybe a nice comfortable chair and desk (that could also work as a bed) will be highly appreciated. With a better editors (such as vim!), "syntax errors" would be spotted earlier and would prevent nasty bugs that may later became very impossible to track.

One of the tools that is really helpful in the process of creating a database-backed software is a database design software. And for the last weeks, I have manage to found a _very_ good database design software that suits my needs perfectly. It is called DbWrench from Nizana system (http://www.dbwrench.com).

DbWrench can do lots of nice things for me, it manage to "reverse engineer" my databases perfectly. You change something from inside the database server itself? No problem, DbWrench can synchronize the changes. What if you do changes inside DbWrench? Well it will help you to "forward engineer" the changes to the database server.

DbWrench has support for PostgreSQL, MySQL, MSSQL and MS-Access databases. And it also has this very-very nice diagram relationships editor. If that's not enough, the diagram is also exportable to PNG or JPG. A perfect tool for helping not only in database designing and application development processes, but also in documentation processes.

Only downside of it, is that it is not (yet?) a free/open source software, it's build using Java (which might costs you extra memory, but hey, your memory is more important, right?) and the license costs quite a bit. But if you work on a software development company that needs a good database designing software or in badly need for such a tool, then DbWrench is highly recommended.

Tuesday, February 27, 2007

Turun Untuk Naik

Para suhu di kuil Dairin menyadari, kemampuan dan potensi Chinmi terlalu besar untuk di-kungkung dan hanya belajar kung-fu di dalam kuil Dairin saja.

Mereka pun menghadapi dilema. Apakah mereka akan mengajarkan Chinmi semua ilmu yang mereka miliki dan berharap Chinmi akan mampu memahami semuanya dan mempelajarinya hingga ke level yang lebih tinggi atau mereka perlu melepas Chinmi agar ia belajar dan mendalami kung-fu langsung di dunia luar walaupun belum banyak yang mereka ajarkan.

Tetua yang bijak memahami bahwa mengekang Chinmi dengan segala macam aturan kuil akan berakibat negatif, Si bocah lincah dan cerdas itu pun dilepas. Para pendekar dunia persilatan biasa mengenal hal ini dengan istilah turun gunung.

Ternyata keputusan para suhu tidak salah, walau selalu membawa embel-embel Kuil Dairin dalam petualangannya, Chinmi berhasil mempelajari ilmu-ilmu baru. Pemahaman-pemahaman mendalam akan hakikat kung-fu pun ia dapatkan tidak hanya dari petarungan-petarungannya melawan musuh-musuh yang hebat, namun juga dari pengalaman-pengalamannya langsung hasil interaksinya dengan masyarakat.

Ketika kembali untuk mengajar di Kuil Dairin, bocah konyol itu telah berubah menjadi seorang yang memiliki kung-fu tinggi dan juga bijak, cerdas serta memiliki kepahaman mendalam akan makna alam semesta.

Chinmi berhasil meraih sesuatu yang sulit didapatkan para pendekar kang-ow dengan jurus pamungkas tanpa tandingan sekalipun.

Sang tetua bijak pun tersenyum penuh arti dan kembali kedalam perenungannya yang tiada habis untuk menikmati dan mensyukuri hidup dan kesemestaan.

Wednesday, February 21, 2007

Tentang Routing

Teknologi maju.

Orang pun bisa berkomunikasi tanpa perlu bertemu. Hal-hal sederhana tapi (mungkin) bermakna seperti mengucapkan selamat pagi, menjadi begitu mudah dilakukan. Dari antar kelurahan hingga antar negara. (Mengapa hal-hal ini tidak dilakukan lebih sering dari sebelumnya tidak akan dibahas disini, paling tidak, tidak sekarang).

Lalu untuk mempermudah, daripada bikin kabel-kabel tersambung dari satu rumah ke rumah lain, atau dari satu orang ke orang lain, Sentral-sentral telekom pun dibangun. Dengan begini, tiap orang tidak musti punya kabel ke tiap orang lainnya, cukup ke 1 sentral saja (ada banyak cerita tambahan soal ini).

Masalahnya sekarang, seiring bertambahnya orang, kota dan negara, jumlah sentral telekom yang dibangun pun meningkat. Kalau mau diitung, mungkin jumlah sentral sekarang di seluruh dunia, sudah sama dengan jumlah orang seluruh dunia dulu waktu jaman pak Bell baru menemukan telpon.

Lalu kita punya masalah yang sama seperti dulu. Bagaimana menghubungkan antar sentral satu dengan yang lain? Demi menghindari keperluan koneksi kesemua dari semua (meshed) maka dikembangkanlah konsep hirarki sentral dan routing antar sentral.

Dengan konsep hirarki, sentral bisa berfungsi ganda, selain sebagai penghubung ke pelanggan (interesting to note that nowadays "pelanggan" gak selalu orang) juga sebagai penghubung ke sentral lainnya. Ada yang punya fungsi salah satu saja, ada yang dua-duanya.

Kemudian untuk menghubungkan panggilan antar sentral yang bisa berbeda hirarki, atau bahkan jaringan, itu konsep routing pun dikembangkan.

Supaya mudah, orang mulai dengan konsep Static Routing. Tabel-tabel tujuan-tujuan beserta kemungkinan-kemungkinan arah sambungan disusun. Ada prioritas 1, 2, 3, dst. Tergantung keadaan jaringan, perubahan-perubahan konfigurasi, bahkan kadang-kadang, mood si administrator, isi tabel ini bisa berubah.

Masalahnya sekarang, keadaan jaringan sangat rentan. Mbah Erlang dari dulu sudah sadar bahwa adalah sangat tidak ekonomis bila kita mencoba menyediakan jaringan komunikasi untuk semua orang. Lebih dari itu, Mbah Erlang juga menemukan bahwa, selama kondisi beban jaringan dipersiapkan pada angka tertentu, maka dengan ijin Allah (yg ini beneran perlu ijin Allah lho), kita akan punya kapasitas jaringan yang cukup untuk semua orang.

Namun Mbah Erlang hidup di jaman waktu orang masih sedikit. Ketika orang sudah banyak seperti sekarang ini, dengan beragam kemauannya, seringkali Allah tidak mengijinkan kecukupan kapasitas jaringan itu tadi. Dan Static Routing pun tidak selalu bisa memecahkan masalah ini.

Kemudian orang mulai berpikir, hmm... kalo gitu Routing ini harus bisa dinamis, dia harus bisa mengatasi perubahan mood para pengguna maupun administrator, dia harus bisa merasakan. Harus bisa bereaksi, bahkan pada saat-saat tertentu, harus bisa mengantisipasi.

Eh... kayaknya posting ini udah kepanjangan... lanjut nanti dech.

Monday, February 19, 2007

Symfony 1.0 Released

Hmmm... another yumm-yumm on the block.

Seriously, I think this is one of the best php framework existed nowadays. Hopefully it will improved over time.

Congrats to the developers.

Monday, February 05, 2007

Jakarta Kebanjiran

... di Bogor, tanah longsor.

Ada angka-angka, ada statistik, namun itu semua lagi gak menarik, paling gak, tidak dari sisi biasanya.

Yang menarik justru, ketika menyadari betapa besar dan padatnya Jakarta. Bahkan dalam segala macam peristiwa ini, masih banyak orang yang punya, dan atau harus menjalani, segala macam aktivitas. Sedemikian sehingga mereka rela melakukan beragam macam akrobat, memeras otak dan berkeringat, kadang juga basah-basahan, demi sesuatu itu.

Lebih menarik lagi, gak kalah banyak orang yang tidak mau melepaskan kesempatan bersenang-senang di hari-hari ini. Pagelaran-pagelaran musik dangdut masih penuh dan membludak. Ini dulu aku pandang tragis. Sekarang, mungkin cuma keliatan sebagai ironi. Atau komedi. Komedi hitam yang lucu, tapi pahit. Kayak kopi n3sc4f3 tanpa gula dicampur susu kental manis. Manis nggak, pahit iya, susu juga.

Sementara itu, di belahan benua lain, ilmuwan berkumpul dan meminta aksi secepatnya dari dunia untuk mulai mengurangi hingga menghilangkan penyebab-penyebab global warming, yang mereka indikasikan sebagian besar sebagai akibat ulah manusia. Penggunaan bahan bakar fosil disinyalir sebagai penyumbang utama.

Global warming bila dibiarkan, akan menyebabkan beragam bencana, mulai dari banjir yang semakin mem-bandang, seribu juta topan badai, mencairnya es-es kutub, dan bencana-bencana lain yang bisa seseram mungkin disampaikan oleh para ilmuwan.

Menarik untuk berpikir, bahwa meskipun mereka telah punah ribuan-jutaan tahun yang lalu, Dinosaurus masih merupakan ancaman bagi manusia. Hi..hi..hi... eskapis!

Oh well.

Wednesday, January 17, 2007

Ever After, a Cinderella Story, or is it?

Alkisah ada seorang anak perempuan pemberani, bernama Danielle de Barbarac. Setting di Perancis sekitar tahun 1500-an.

Cerita dimulai dengan kisah ketika ia kehilangan ayahnya sewaktu masih belia dan terpaksa harus hidup bersama ibu dan saudara tirinya. Ibu kandungnya telah lebih dahulu wafat.

Danielle tumbuh menjadi wanita yang tegar, berwatak keras agak sedikit tomboy. Namun demikian ia punya prinsip luhur yang selalu dipegang kokoh. Tidak mau ditindas begitu saja, dan selalu berusaha membela kaum miskin dan lemah.

Cerita di-fast-forward sedikit,
Danielle berusaha membebaskan seorang miskin yang ditangkap karena mencuri dan akan dijual ke amerika oleh pihak kerajaan sebagai hukumannya. (Menarik untuk diingat bahwa waktu itu amerika adalah tempat buangan yang dibenci sekaligus ditakuti orang).

Ketika ia sedang berdebat dengan prajurit pengawal, pangeran yang sedang keliling negri datang, dan perdebatan diantara keduanya pun terjadi. Sang pangeran bertanya, mengapa menurut Danielle si tawanan itu harus dibebaskan.

Dan ini yang menarik buatku, Danielle menjawab, aku re-phrase sedikit dengan kata-kata ku sendiri berdasarkan ingatan yang sudah mulai penuh ini ya:

"Ketika sebuah negeri tidak memberikan sarana dan prasarana untuk rakyatnya, memberikannya kesejahteraan dan pendidikan yang layak, "

"ketika kemudian rakyat itu tumbuh dengan pengetahuan dan kesejahteraan yang minim, dan mereka melakukan kejahatan karenanya, "

"maka siapakah yang harusnya ditangkap? Rakyat itu atau sang Penguasa negeri? Siapakah sebenarnya si penjahat itu?"

Pangeran tercekat, tak bisa menjawab.
Dan akhirnya tawanan itu pun dibebaskan.

Cerita selanjutnya sebagaimana kisah Cinderella, setelah melewati berbagai aral melintang, they live happily ever after.

---

Dialog itu menyentakkan. Menggugat.

Siapakah sesungguhnya (yang telah menjadi) penjahat itu?

Namun kenyataan masa kini sebetulnya lebih menyentak lagi. Ketika kesempatan sebetulnya terbuka lebar, tapi jalan yang ada seringkali penuh rintangan, hingga membuat langkah menuju pintu itu pun tersendat atau bahkan terhalang.

Orang sosialis-komunis mungkin akan teriak "Pemerintah menyengsarakan rakyat! Pengangguran meningkat, harga-harga kebutuhan pokok membengkak!".

Namun para kapitalis (yang seringkali didukung pemerintah karena mungkin punya lebih banyak sumber daya) juga bisa balas mencemooh: "Kalian saja yang tidak pandai memanfaatkan kesempatan, lebih sering merusak daripada membangun. Pemalas-pemalas yang harusnya bersyukur kami masih mau membiayai sistem yang menyokong kehidupan kalian!".

Can't we all take one step back?
Measure ourselves, what went wrong?

Or we will just let the sad fact that Evil,
no matter how we fight it,
will always prevails...

I hope the answer is an optimistic no, we will never rest to continue refine and improves our lives.

And that evil, shall not prevail!

Thursday, January 11, 2007

Matiin Sentral

Latar Masa: Dulu waktu jaman masih indah di Banda Aceh.

Terjadi banjir bandang, mirip dengan banjir di Kuala Simpang baru-baru ini. Daerah rumahku termasuk salah satu yang kurang beruntung dan terkena luapan air sungai waktu itu. Walau termasuk daerah yang terakhir kena luapan itu, cukup repot juga mengamankan barang-barang kami waktu itu.

Karena menganggap rumah kami tak akan terkena banjir itu, kami tidak tergesa bertindak dalam menyelamatkan barang-barang kami, baru setelah air mulai naik kami bergerak. Dan ini rupanya keputusan telat, ketika air sudah sampai setinggi dada kami masih harus bekerja menyelamatkan barang-2 yang bisa diselamatkan. Bantuan teman-teman sangat berharga waktu itu.

Sementara itu, pekerjaan berat di kantor tetap menanti. Sehubungan dengan banjir itu, semua sarana listrik dan komunikasi terputus atau terpaksa diputuskan untuk mencegah hal-hal yang lebih tidak enak lagi.

Pada saatnya tiba juga giliranku untuk mematikan sentral-ku. Waktu itu baru malamnya aku bisa mengerjakan itu. Itupun setelah diskusi akhir dengan bos-bos di Medan yang tidak selesai karena komunikasi keburu terputus. Dengan ditemani oleh Mirza dan Ibu Siti Syarinah dan siapa lagi ya? Kami berangkat ke gedung sentral.

Disana tanpa listrik yang artinya tanpa lampu, aku harus belajar untuk mematikan sentral itu, dan musti secepatnya juga, karena jika kapasitas batere habis, maka sentral itu bisa mati diluar keinginannya. Bisa susah nanti kalau mau menghidupkan dia lagi.

Mumpung kapasitas batere masih cukup, aku gunakan untuk menyalakan komputer dan printerku, membuka file-file dokumentasi dan mencari panduan untuk mematikan sentral. Perlu diingat waktu itu karena komunikasi sudah terputus, aku tak bisa lagi berkoordinasi dengan siapapun untuk melakukan ini.

Dokumentasi ketemu, kucetak semuanya. Lalu kubawa ke tempat perangkat-perangkat lucu itu berada. Dengan berbekal senter, aku baca, dan baca, dan baca lagi berulang-ulang memastikan tak ada yang terlewat. Akhirnya, bismillah, dan mulai kumatikan sentral itu.

Sekarang sich 'udah gak inget lagi gimana cara-cara-nya dan kalau disuruh ngulang, tentunya mendingan dengan bimbingan daripada manual pilot seperti itu. Namun mengingat betapa sentral itu biasanya justru adalah sistem yang tidak boleh dimatikan sembarangan, dan harus selalu dijaga, pengalaman mematikannya sungguh sangat, mmm... berkesan?

Waktu menghidupkannya lagi sayangnya aku gak ikut, karena waktu itu sudah banyak orang-orang datang, kemudian rumahku juga airnya sudah surut, jadinya aku sibuk membersihkan rumah itu yang pekerjaannya gak kalah gilanya. Pernah gak kena banjir sampai 2 meter? Lumpurnya itu lho.

Lagian dulu waktu baru dateng ke Banda Aceh, aku pernah juga melihat sentral itu dihidupkan setelah baru saja selesai instalasi. Ini cerita lain lagi di lain waktu.

Tuesday, January 09, 2007

Berapa Rupiah?

Salah satu masalah utama dalam perencanaan jaringan telekomunikasi yang sudah sangat kompleks dan luar biasa besarnya adalah menentukan parameter-paremeter acuan yang bisa se-optimal mungkin menghasilkan revenue alias duit.

Dan ini, tidak pernah mudah, atau bahkan pasti.

Saking banyaknya parameter yang saling terkait dan menentukan membuat segala macam prediksi dengan menggunakan beragam model mulai dari yang se-sederhana rumus-rumus Erlang sampai rumus-rumus stochastics dengan simbol ular berdiri hingga pangkat tiga (integral -red) sekalipun tingkat keakuratan-nya seringkali tidak jauh berbeda.

Dan sering juga meleset :-)

Tren yang lagi lucu belakangan ini adalah pertanyaan "berapa nilai rupiah-nya?". Cakupan-nya bisa macam-macam, bisa mulai dari "kalau begini berapa rupiah yang kita dapat?" hingga "berapa rupiah yang kita buang?" atau sering juga begini, "berapa nilai rupiah implementasi barang ini?"

Satu bentuk pertanyaan ini yang cukup sulit untuk dijawab adalah "Berapa potensi nilai rupiah (baca: revenue) dari implementasi 1 trunk E1?"

Bila ingin _mencoba_ menjawab pertanyaan ini, kita harus kenal dulu beberapa terminologi di dunia jaringan telekomunikasi, misalnya "trunk", "E1", kemudian kenalan juga dengan Mbah Erlang, lalu "Routing" kemudian juga musti mempelajari hal-hal seperti CDR (call data record), lalu perhitungan target pengguna jaringan, dan hal-hal zhin-ding lainnya.

Rumit dech.
Lanjutnya kapan-kapan ya...