Read, With the Name of Your Lord Who Created

Archive for May, 2008

Membentuk Perilaku Alternatif

Posted by triaslama on May 30, 2008

Bumi ini cukup untuk menghidupi semua manusia, tapi mungkin tidak cukup untuk memenuhi kerakusan satu orang saja (Mahatma Gandhi).

Selama ini kita mungkin sangat menikmati berbagai kemajuan yang ada. Ingin pergi kemana kita bisa menggunakan sepeda motor, bis, mobil, ataupun kereta. Jika tujuan kita sangat jauh mungkin kita akan naik pesawat.

Mengapa seseorang menggunakan mobil? Pertama, karena dia memerlukannya dan mungkin memang tidak ada alternatif lain. Kedua, dia terbiasa menggunakannya dan telah merasa nyaman karenanya (meskipun sebenarnya tidak terpaksa dan alternatif lainpun tersedia). Ketiga, mungkin ada yang menggunakan mobil karena itu menunjukkan status sosialnya (semakin bagus mobilnya semakin terlihat keren). Keempat dan seterusnya, tentunya masih ada alasan lain selain ketiga alasan tersebut.

Terkadang saya berfikir seperti ini “Mengapa kita tidak mencoba mengurangi beban yang sudah ditanggung oleh bumi ini?” Eksplorasi (eksploitasi) yang terus menerus dilakukan (dan sepertinya sulit untuk dihentikan), industri yang terus tumbuh, jumlah penduduk yang terus bertambah, perilaku yang kurang bertanggung jawab terhadap lingkungan dan juga terhadap manusia, dan lain sebagainya.

Read the rest of this entry »

Posted in Energy, Thoughts and Opinions | Tagged: , , , , | 2 Comments »

C# 3.0: Inferred Type Variables, Extension Methods, and Lambda Expressions

Posted by triaslama on May 27, 2008

C# 3.0 brings many of new features. Some of features developed from the existing one (such as lambda expressions that provides more concise syntax than anonymous methods). Other features can be considered as totally new (such as LINQ). In this post together we will learn about Inferred type variables, extension methods, and lambda expressions.

By reading this article I assume that you are familiar with C#, knowing the previous features of this language is a plus.

Inferred Type Variable
Inferred type variable presented through ‘var’ keyword. If you are a Javascript programmer you must be already familiar with ‘var’ keyword. But, ‘var’ in C# 3.0 has different meaning with ‘var’ keyword in Javascript. In C# 3.0 when we use ‘var’, we tell the compiler that the type of variable should be inferred from the assignment. In Javascript var means that a variable can hold any kind of type.
Consider the following Javascript file:

    var myVariable = 5;
    window.alert(myVariable);
    myVariable = “I change the type of myVariable, now myVariable is a string!”;
    window.alert(myVariable);

 

At the beginning I assign myVariable with 5 (an integer), but later, I assign myVariable with a string (so myVariable can hold any kind of value). But its not the case with ‘var’ in C# 3.0.

using System;

class InferredTypeVar
{
   static void Main()
   {
      var myVariable = 12.5;
      Console.WriteLine("myVariable: "+myVariable);
   }
}

 

Because I assign 12.5 to myVariable then type of myVariable will be double. If we try to fake the compiler and add the following code (hoping that it will the same as in Javascript):

Read the rest of this entry »

Posted in C# | Tagged: , , , | 5 Comments »

Mencari Energi Alternatif

Posted by triaslama on May 25, 2008

Mulai 24 Mei 2008, harga BBM (Bahan Bakar Minyak, tapi ada juga yang menyebutnya dengan Beban Berat Masyarakat) resmi naik untuk yang kesekian kalinya. Yang saya tahu premium menjadi 6000 rupiah, sedangkan solar 5500 rupiah. Dalam beberapa dekade terakhir ini peranan besar bahan bakar fosil yang tak terbarukan ini (BBM) memang tak terbantahkan!

Sekarang ini BBM telah membawa pengaruh kepada hampir semua manusia yang ada di bumi. Untuk memperebutkannya terkadang sampai digelar peperangan yang memakan banyak nyawa manusia yang tak berdosa!

Ketika harga minyak dunia melambung secara fantastis, dampak kenaikannya segara dirasakan oleh segenap masyarakat dunia. Pilihan sulitpun diambil, kebijakan tidak populer dikeluarkan, sejuta analisa coba dikemukan dan akhirnya semuanya bermuara pada satu hal: Harga BBM perlu dinaikkan! Ini salah siapakah? sehingga masyarakat miskin akan sangat potensial untuk bertambah susah. Orang kemungkinan besar akan merasakan perubahan pada penghasilan yang ia terima serta apa yang ia belanjakan setiap harinya.

Saya bukanlah ahli ekonomi, saat ini saya juga masih kurang ahli untuk menganalisa sebab ataupun akibat dari kenaikan harga untuk produk fantastis yang terdiri dari tiga kata yang banyak menjadi perhatian saat ini (maksudku: BBM). Jadi saya akan membicarakan sisi yang lain dari permasalahan besar yang dihadapi oleh hampir semua bangsa di dunia ini.

Read the rest of this entry »

Posted in Energy | Tagged: , , , | 4 Comments »

Mono Winforms Became Feature Complete

Posted by triaslama on May 24, 2008

This news is a bit too late, but I think it better than nothing at all! Jonathan Pobst has annouced in his blog that Mono Winforms now is API complete. This is what Jonathan said about that:
“we hit a very important milestone in our support for Winforms. We are API complete, which means that our public API is exactly the same as .Net’s (all 12,776 methods)”

Beside that Atsushi Enomoto has annouced that the next release of Mono will include XIM support on Windows Forms. Look at what he said about this:
“So if you are living in multi byte land, try the next release or daily build version of mono and feel happy”
Hmm, I think it really a good news for one of my friend.

Congratulations for Mono team, especially for Mono Winforms team!

Posted in Mono, News | Tagged: , , , | Leave a Comment »

Pagi Beladiri

Posted by triaslama on May 21, 2008

Entah kenapa aku pagi ini merasa bersemangat. Pagi ini akhirnya aku sempatin olah raga dulu sebelum mandi, suatu aktivitas yang beberapa bulan ini tidak lagi kujalani! Memang wajar sih kalau latihan beladiriku kacau balau semenjak aku pindah ke Jakarta, soalnya aku sekarang agak malas 🙂

Pas habis latihan, pas belum mandi, pas buka internet, pas dapat artikel kung fu, akhirnya… pas banget deh. Jadi inget elegannya gaya Jet Li ketika melakukan aksi beladiri dalam film Kung Fu, atau stabilnya Donnie Yen ketika berakting berkelahi, atau juga kocaknya Jackie Chan ketika berantem.

Ngomong soal Jet Li, kalau memang teman – teman gemar dengan beladiri, terus senang nonton film Kung Fu, ditambah lagi senang juga sama film-nya Jet Li ini dia nih yang perlu kita lihat: Fearless, The Last Hero In China, serta sequel dari Once Upon a Time in China. Kalau yang sedang menunggu untuk kulihat mungkin The Warlord dan Forbidden Kingdom. Entah kenapa aku ini lebih suka kalau lihat film kung fu klasik. Dulu sewaktu latihanpun lebih nyaman berlatih jurus klasik, tapi semoga saja aku bukan orang klasik (Maksudku: gagap teknologi 🙂 ).

Ngomongin Donnie Yen, yang masih lumayan kuingat dari Donnie Yen adalah acting-nya dalam film Dragon Tiger Gate, soalnya film itu adalah filmnya yang terakhir kali kutonton.

Bicara tentang Jackie Chen, yang kuingat ya kocaknya dia ketika berantem! Kalau biasanya suasana perkelahian membuat kita tegang, adrenalin naik dan sebagainya. Maka lihat Jackie Chan berakting berkelahi kadang malah membuatku tertawa 😀 Tapi secara jujur memang keren sih Jackie Chan ini!

Kalau selain ketiga aktor diatas ada juga yang tak kalah kerennya yaitu: Steven Seagel dan Tony Jaa. Yang pertama adalah master Aikido, sedang yang kedua (setahuku) adalah jago Thai Boxing.

OK, begitu saja sekilas tentang dunia Martial Art, semoga selanjutnya bisa disambung dengan cerita yang lebih menarik.

Posted in Martial Arts, Miscellaneous | Tagged: , , | 8 Comments »

Ungkapan Rasa Hati

Posted by triaslama on May 20, 2008

Suasana hati yang terpendam itu seperti ‘api dalam sekam’. Jangan ragu untuk mengungkapkan apa yang kita rasakan kalau itu memang diperlukan! Marahlah kalau marah itu sangat perlu, tapi jangan terlalu sering. Menangislah kalau itu perlu, setelahnya lanjutkanlah hidup. Bertanyalah kalau sedang bingung setelah mengerti ajarilah orang lain. Cobalah selalu untuk tidak bangga dengan diri sendiri karena kita hanya menjalani hidup seperti apa yang akan kita perankan.

Saat Sedang Bahagia
Ujian dapat nilai A, dapat beasiswa, mendapat pekerjaan baru. Pokoknya untuk sesuatu yang menyenangkan dan sulit dijelaskan dengan kata – kata. Untuk itu tersenyumlah.

Sedang Sedih
Gagal SPMB untuk ketiga kalinya, tidak lulus ujian, harus mengulang pendadaran. Pokoknya untuk sesuatu yang berupa kegagalan. Untuk itu syukurilah apa yang saat ini kita punya.

Lagi Bingung

Nyari alamat nggak ketemu – ketemu, mau tanya nggak ada orang. Kesasar / tersesat, malam – malam, sendirian dan nggak ada yang bisa ditanya, lengkap sudah. Sekali lagi bersyukurlah terhadap apa yang kita punya…

Merasa Sedang Bernasib Sial
Terlambat masuk ujian + lupa bawa kartu ujian. Pas ada pemeriksaan lalu lintas pas nggak bawa surat – surat kendaraan. Ikut rapat dan ternyata berjalan lebih berat dari yang dipikirkan.

Pake marah – marah segala, memangnya kenapa?
Ketemu sama preman yang ngajak berantem. Yang jelas banyak hal yang bisa membuat kita marah kan? Marahlah seperlunya kalau bisa tidak usah pake marah segala deh. Bersabar terhadap apa yang menimpa kita itu yang terbaik (kalau bisa sih).

Saat sedang jatuh cinta?
Kalau ini, sulit untuk diungkapkan! 😉

Kalau Suasana Hatiku Yang Sebenarnya?
Ini kan rahasia, cukup Penciptaku dan aku sendiri yang tahu 🙂

Posted in Six Sense, Thoughts and Opinions | Tagged: , , , | 5 Comments »

Pagination in ASP.NET

Posted by triaslama on May 18, 2008

ASP.NET has DataGrid control, and datagrid control has build in support for pagination. What I do in this post is just something like datagrid pagination, but I add two buttons each of them to navigate to previous and next page respectively.

I use ListOfPage class to produce list of page number, you can see more on this class in my previous post here. For simplicity I use array of string as data source, in more common scenario maybe we use data from database, represent it in DataTable then use the DataTable as a data source.

I do the manual pagination in ASP.NET with code behind style. There is I put the code that produce list of page in a separate file (I named it ManualPagination.aspx.cs). The presentation page laid in ManualPagination.aspx which refers to our code behind file.

Let’s start with presentation page! It’s quite simple, this is the source code (ManualPagination.aspx):

    <%@ Page Language=”C#” CodeFile=”ManualPagination.aspx.cs” Inherits=”ManualPagination.CodeBehindClass” %><html>
    <head>
    <title>Manual Pagination in ASP.NET</title>
    <style type=”text/css”>
    .clr
    {
    background-color:lightblue;
    }
    </style>
    </head>
    <body>
    <form runat=”server”>
    <asp:Label id=”lblPresentation” runat=”server” />
    <p />
    <asp:Button id=”btnPrev” text=”Prev” onclick=”btnPrev_Click” runat=”server” />

    <asp:Label id=”lblPages” runat=”server” />

    <asp:Button id=”btnNext” text=”Next” onclick=”btnNext_Click” runat=”server” />
    </form>
    </body>
    </html>

 

One of the important portion of our presentation page relies on the following code:

Read the rest of this entry »

Posted in ASP.NET, C#, Javascript | Tagged: , , , , , , | Leave a Comment »

Belajar Dengan Mendengarkan

Posted by triaslama on May 16, 2008

Postingan ini saya tulis setelah saya secara tidak sengaja mengikuti MSDN Day. Kenapa tidak sengaja? Ya karena saya sebenarnya tidak pernah merencanakan untuk ikut dan malahan tidak tahu kalau pada tanggal 15 Mei kemaren ada acara itu.

Hal ini bermula dari saran salah satu teman, Anthony, supaya saya kirim e-mail ke Pak Risman Adnan salah satu lead developer Microsoft Indonesia. Intinya kami meminta waktu untuk membicarakan beberapa masalah teknis yang kami hadapi dan kemungkinan – kemungkinan solusi yang mungkin bisa dipakai. Email pun dikirim dan ini cuplikan jawabannya “Tri, kebetulan besok ada acara MSDN Day, silahkan datang untuk diskusi sebelum sesi saya dimulai”.

Sempat juga terlintas dalam hatiku “Kalau besok ada acara itu apa kami sempat untuk diskusi ya?” Tapi ya sudahlah coba saja dulu. Siapa tahu banyak hal yang bisa dipelajari lagi pula sedang ada migrasi server sehingga development harus dihentikan dulu, maka kami memang bisa datang.

Entah karena saya lagi mood, atau karena acaranya lumayan menarik, atau karena pesertanya yang tidak terlalu banyak sehingga saya merasa nyaman, atau karena sebab yang lain, ternyata sampai dengan break makan siang lumayan banyak hal menarik yang berhasil masuk ke kepalaku 🙂
Misalnya, aku ini termasuk sangat awam mengenai Zend Framework, karena salah satu materinya tentang itu dan ada orang dari Zend yang datang memberikan presentasi akhirnya sekilas aku mendapat gambaran lebih mendalam tentang Zend Framework.

Read the rest of this entry »

Posted in Miscellaneous, News, Programming | Tagged: , , , | 2 Comments »

Page Number Generator

Posted by triaslama on May 13, 2008

One of the way to prevent show all of data in one page is pagination. Pagination is the process organizing information in pages. For instance, the information appear in a web pages is paginated such that appear 10 lines for every page.
Pagination can be a cool way to manage the looks and feels of information. Because too many tabular data often tedious, hard, or we maybe easily miss something if all of information dropped in a page.

So, what is needed to do pagination? I think one of the most apparent is a list of page! I have write a program (a simple program) in C# that generates page number. The input parameters is current page, number of rows in a page, and the amount of rows.

Output of this progam is array of integer, every number reflected page number being showed. And this is the listing of program:

Read the rest of this entry »

Posted in C#, Programming | Tagged: , , , | 4 Comments »

NODD

Posted by triaslama on May 8, 2008

Pada hari Rabu malam kami (tim Kontinum di Depkeu) dipanggil untuk ke kantor bersama teman – teman lainnya untuk mengikuti sosialisasi dan presentasi dari CEO kami, Pak Ari Royce Hidayat, mengenai konsep NODD (No One Day Delay) wah….!!!

Dalam suasana presentasi yang santai dan didahului dengan makan malam tersebut dijelaskanlah konsep mengenai pentingnya ketepatan waktu (timeliness) dalam setiap project yang kami jalani. Singkatnya dalam setiap project ‘seharusnya’ tidak ada delay meskipun hanya satu hari saja! Sebenarnya saya merasa agak nggak enak sama bos, karena project yang kujalani memang mengalami delay 😦

Sepertinya untuk selanjutnya kami perlu untuk lebih serius! Tapi ada beberapa hal yang menarik juga, salah satunya kalau kami (khususnya para developer) mengalami kesulitan teknis maka kami sangat dianjurkan untuk langsung minta tolong. Artinya ada eskalasi penanganan dari masalah teknis yang kami alami. Eskalasi mulai dari team leader, project manager, sampai kalau perlu ke steering comittee.

Tapi, terkadang kenyataan tidak selalu berjalan seperti itu. Contohnya apa yang kami alami. Kami terkadang mengalami kesulitan koordinasi untuk menyampaikan pengaduan untuk masalah teknis. Mulai dari framework yang kadang – kadang bertingkah aneh, sampai bugs (dari yang kecil sampe yang serius) yang tiba – tiba muncul. Akhirnya terkadang kami menggunakan metode LuKi (Loe Kira – Kira aja Sendiri) 🙂 Meskipun terkesan bercanda tetapi metode LuKi atau Trial and Error terkadang memang bisa mengatasi masalah. Beberapa kendala teknis misalnya berhasil kami atasi dengan cara: coba, error, dan coba lagi.

Hari pertama setelah menjalani presentasi tentang NODD, aku mencoba untuk melakukan hal – hal yang diharapkan bisa selesai pada saat rapat hari senin besok (12 Mei). Tapi godaan memang banyak ya, saat sore tiba akhirnya akupun berkata pada dua orang teman disana kurang lebihnya “Kita pulang jam berapa? pulang sekarang aja yuk.” Sesampainya di rumah aku pun berfikir “PeDe banget aku ngajakin pulang cepet, padahal target untuk senin masih beberapa belum selesai!” Sepertinya hari Jum’at ini kami perlu habis – habisan!

Maaf bos! Dengan requirement yang terus berkembang mulai dari perbaikan dari yang sudah ada, penambahan hal – hal baru dan kendala teknis yang lain, sepertinya kami masih akan mengalami delay 😦

Posted in General, Miscellaneous, Six Sense | Tagged: , , , | 4 Comments »