Sunday, December 20, 2009

mahasiswa dan mahasiswi

menurut KBBI Daring mahasiswa adalah:

ma·ha·sis·wa n orang yg belajar di perguruan tinggi;

sedangkan mahasiswi adalah:

ma·ha·sis·wi n mahasiswa wanita

ini berarti bahwa kedudukan antara mahasiswa dan mahasiswi tidak setara sebab mahasiswi adalah subset (himpunan bagian) dari mahasiswa. yaitu mahasiswa yang memiliki jenis kelamin wanita.

lalu bagaimana caranya untuk menyatakan seorang mahasiswa yang memiliki jenis kelamin laki-laki? hal ini bisa dilakukan dengan menyebut secara eksplisit mahasiswa laki-laki atau bisa juga dengan menggunakan operator himpunan yaitu:

mahasiswa laki-laki = mahasiswa - mahasiswi

makanya kita sering mendengan adanya majelis wali amanat unsur mahasiswa (tidak disebut unsur mahasiswi). dan juga ucapan-ucapan "HIDUP MAHASISWA" bukannya "HIDUP MAHASISWI".

Friday, December 18, 2009

angka dalam bahasa indonesia

dari buku jarimatika

1+9=10
2+8=10
3+7=10
4+6=10
5+5=10

kalau diucapkan dalam bahasa indonesia

Satu + Sembilan = Sepuluh
Dua + Delapan = Sepuluh
Tiga + Tujuh = Sepuluh
Empat + Enam = Sepuluh
Lima + Lima = Sepuluh

ternyata angka dari 1 sampai 9 yang berhuruf depan sama kalau dijumlahkan akan
menjadi 10

Wednesday, December 16, 2009

Wednesday, December 09, 2009

cheat ClickFan on Facebook

saya menggunakan class java.awt.Robot untuk membuat click sebanyak2nya di game http://apps.facebook.com/click-fan/?ref=mf

penggunaany java.awt.Robot ini sebenarnya untuk testing suatu software GUI. tapi kali ini saya akan menggunakannya untuk tujuan iseng yaitu mengklik pada suatu game di facebook.

game ini bertujuan untuk melakukan klik sebanyak2nya dalam waktu tertentu

easy:60 detik
normal:30 detik
advance:15 detik

dengan menggunakan program ini saya dapat melakukan klik sebanyak 2543 untuk level easy, 1616 untuk level normal dan 757 untuk level advanced.


berikut ini saya sertakan source code dari program yang saya buat ini

import java.awt.*;
import java.awt.event.*;

public class Clicker
{
public static void main(String args[]) throws Exception
{
Robot robot = new Robot();

robot.delay(5000);

Point lokasi = MouseInfo.getPointerInfo().getLocation();

for (;;)
{

//robot.delay(5000);

robot.mousePress(InputEvent.BUTTON1_MASK);
robot.delay(5);
robot.mouseRelease(InputEvent.BUTTON1_MASK);

robot.delay(5);

Point lokasi2 = MouseInfo.getPointerInfo().getLocation();

if (lokasi2.x!=lokasi.x || lokasi2.y!=lokasi.y)
{
break;
}
}
}
}

Friday, December 04, 2009

penggunaan struktur data Bitset di java

di java ada struktur data namanya bitset
yang biasanya digunakan untuk menyimpan himpunan, tapi himpunan yang bisa disimpan sama
si bitset terbatas untuk menyimpan angka saja.

bitset bisa dianalogikan seperti kita memiliki sebuah string binary yang panjang (panjangnya bisa panjang sekali). dan kita bisa mengubah2 nilai dari masing2 elemen bit pada string tersebut.
bisa 0 dan bisa juga 1.

berikut contoh penggunaan bitset

buat file HelloBitset.java yang berisi

import java.util.*;

public class HelloBitset
{
public static void main(String args[])
{
BitSet b = new BitSet();
b.set(12);

System.out.println(b.get(12));
System.out.println(b.get(1));

System.out.println(b);
}
}

lalu compile dan jalankan

class BitSet pada java memiliki fungsi toString() sehingga kita bisa langsung mencetaknya menggunakan System.out.println dan akan mencetak semua bit yang bernilai true dari BitSet tersebut

Monday, November 30, 2009

Wednesday, November 25, 2009

C*tilin* Indonesia

saya kecewa dengan C*tilin* Indonesia, yang telah menyepam saya
mungkin ada ratusan email dari mereka yang telah menggerogoti inbox saya

perusahaan bodoh macam apa yang kerjanya cuma nyepam orang.

dan juga fot*grafi.c*.i*

parah banget itu website tolol ngirim spam ke

Monday, November 16, 2009

the power

C:\>

you are the user

$

you have the power

#

you have super power

Wednesday, November 11, 2009

ada apa di monas?

x: ada apakah kiranya di monas hingga kau mengajakku pergi ke sana?
y: apakah kau benar belum tahu? ada air mancur yang pandai berjoget.
x: hah? bisa joget?
y: apa kau tak percaya?
x: jogetnya seperti manusia?
y: ya seperti manusia

toloong saya kena spam

ini isinya

---
Hey you...!! Gue baru ikutan polling seru nih dari IM*, ikutan deh...ngisi polling bisa dapet hadiah keren berupa hape Groov** dari IM* dan jangan lupa juga buat disebarin lagi ya! Biar kesempatan menang kamu jadi semakin tinggi. Makanya buruan ikutan polling dan sebarin deh!

Klik link di bawah ini untuk ikutan Polling Ha**y G* L*c**:
http://m*****
--

gw ga tau kenapa sampe musti ada praktek spamming semacam ini terjadi di indonesia, udah bosen sama perusahaan yang udah ga bisa ningkatin mutu layanannya tapi malah menggunakan media spam sebagai alat untuk mempromosikan dirinya.

Monday, November 09, 2009

kenapa ga ada terjemahan resmi dari GPL?

dikutip dari http://www.gnu.org/licenses/gpl-faq.html#GPLTranslations


Are there translations of the GPL into other languages?

It would be useful to have translations of the GPL into languages other than English. People have even written translations and sent them to us. But we have not dared to approve them as officially valid. That carries a risk so great we do not dare accept it.

A legal document is in some ways like a program. Translating it is like translating a program from one language and operating system to another. Only a lawyer skilled in both languages can do it—and even then, there is a risk of introducing a bug.

If we were to approve, officially, a translation of the GPL, we would be giving everyone permission to do whatever the translation says they can do. If it is a completely accurate translation, that is fine. But if there is an error in the translation, the results could be a disaster which we could not fix.

If a program has a bug, we can release a new version, and eventually the old version will more or less disappear. But once we have given everyone permission to act according to a particular translation, we have no way of taking back that permission if we find, later on, that it had a bug.

Helpful people sometimes offer to do the work of translation for us. If the problem were a matter of finding someone to do the work, this would solve it. But the actual problem is the risk of error, and offering to do the work does not avoid the risk. We could not possibly authorize a translation written by a non-lawyer.

Therefore, for the time being, we are not approving translations of the GPL as globally valid and binding. Instead, we are doing two things:

*

Referring people to unofficial translations. This means that we permit people to write translations of the GPL, but we don't approve them as legally valid and binding.

An unapproved translation has no legal force, and it should say so explicitly. It should be marked as follows:

This translation of the GPL is informal, and not officially approved by the Free Software Foundation as valid. To be completely sure of what is permitted, refer to the original GPL (in English).

But the unapproved translation can serve as a hint for how to understand the English GPL. For many users, that is sufficient.

However, businesses using GNU software in commercial activity, and people doing public ftp distribution, should need to check the real English GPL to make sure of what it permits.
*

Publishing translations valid for a single country only.

We are considering the idea of publishing translations which are officially valid only for one country. This way, if there is a mistake, it will be limited to that country, and the damage will not be too great.

It will still take considerable expertise and effort from a sympathetic and capable lawyer to make a translation, so we cannot promise any such translations soon.



~bagaimana dengan dokumen yang lebih penting dan menyangkut kehidupan manusia?

Friday, November 06, 2009

cicak vs double tape

sekarang banyak orang yang meributkan perihal cicak vs buaya. tapi di kantor gw terjadi hal yang lain dari pada yang lain yaitu cicak vs double tape

dan yang menang adalah.....





Thursday, November 05, 2009

bata merah

gunting kuku khusus untuk cantengan

gunting kuku ini asik banget bisa menjangkau kuku sampai dalam
jadi kuku yang cantengan dapat segera di enyahkan




selain itu saya juga punya alat2 lainnya.


Tuesday, November 03, 2009

level pelit

pelit -> pedit/medit -> merki -> pantat kuning

kalau udah level pantat kuning mungkin dosa nya kita minta tetep ga dikasih

url encode di j2me

kalo di j2me kan belum ada fungsinya.
nih saya dapat dari http://forums.sun.com/thread.jspa?threadID=341790

public static String URLencode(String s)
{
if (s!=null) {
StringBuffer tmp = new StringBuffer();
int i=0;
try {
while (true) {
int b = (int)s.charAt(i++);
if ((b>=0x30 && b<=0x39) || (b>=0x41 && b<=0x5A) || (b>=0x61 && b<=0x7A)) {
tmp.append((char)b);
}
else {
tmp.append("%");
if (b <= 0xf) tmp.append("0");
tmp.append(Integer.toHexString(b));
}
}
}
catch (Exception e) {}
return tmp.toString();
}
return null;
}

Saturday, October 17, 2009

jsp out.print

jika membuat web dengan jsp dan menggunakan out.print atau sebangsanya jangan lupa melakukan out.flush();

kalau tidak nanti akan muncul masalah karena cuma masuk buffer

Thursday, October 15, 2009

orang2 pada dateng

tadi siang ada romi satria dateng ke ppsi.

so?

ya gpp cuma mau nulis aja di blog.

Friday, October 09, 2009

menjalankan external command di java

import java.io.*;

public class ExternalCommand
{
public static void main(String args[]) throws Exception
{
String line;
OutputStream stdin = null;
InputStream stderr = null;
InputStream stdout = null;

// launch EXE and grab stdin/stdout and stderr
Process process = Runtime.getRuntime ().exec ("bc");
stdin = process.getOutputStream ();
stderr = process.getErrorStream ();
stdout = process.getInputStream ();

// "write" the parms into stdin
line = "13*3" + "\n";
stdin.write(line.getBytes() );
stdin.flush();

stdin.close();

// clean up if any output in stdout
BufferedReader brCleanUp =
new BufferedReader (new InputStreamReader (stdout));
while ((line = brCleanUp.readLine ()) != null) {
System.out.println ("[Stdout] " + line);
}
brCleanUp.close();

// clean up if any output in stderr
brCleanUp =
new BufferedReader (new InputStreamReader (stderr));
while ((line = brCleanUp.readLine ()) != null) {
System.out.println ("[Stderr] " + line);
}
brCleanUp.close();

}
}

ref: http://www.rgagnon.com/javadetails/java-0014.html

Wednesday, October 07, 2009

mencoba pakai jni

berikut akan saya posting cara untuk membuat helloworld program untuk java native interface

pertama-tama buat file HelloWorld.java
--start--
public class HelloWorld {
private native void print();
public static void main(String[] args) {
new HelloWorld().print();
}
static {
System.loadLibrary("HelloWorld");
}
}
--end--

lalu compile dengan

$ javac HelloWorld.java

maka akan menghasilkan HelloWorld.class


buat file header dengan perintah

$ javah HelloWorld

maka akan menghasilkan file HelloWorld.h yang isinya seperti berikut:
(harap file ini jangan diapa2in)

--start--
/* DO NOT EDIT THIS FILE - it is machine generated */
#include
/* Header for class HelloWorld */

#ifndef _Included_HelloWorld
#define _Included_HelloWorld
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: HelloWorld
* Method: print
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_HelloWorld_print
(JNIEnv *, jobject);

#ifdef __cplusplus
}
#endif
#endif
--end--

nah, di file inilah terdapat 'kontrak' yang harus dipenuhi oleh program bahasa c/cpp untuk nantinya mengimplementasikan fungsi yang diperlukan yaitu fungsi print


buat file HelloWorld.c

--start--
#include
#include
#include "HelloWorld.h"

JNIEXPORT void JNICALL
Java_HelloWorld_print(JNIEnv *env, jobject obj)
{
int i;
for(i=0;i<10;i++)
{
printf("Hello World!\n");
}
return;
}
--end--


compile HelloWorld.c dengan

$ gcc --shared -o libHelloWorld.so -I /usr/lib/jvm/java-6-sun/include/ -I /usr/lib/jvm/java-6-sun/include/linux/ HelloWorld.c /usr/lib/jvm/java-6-sun/jre/lib/i386/server/libjvm.so


(harap sesuaikan dengan sistem anda, saya sendiri menggunakan ubuntu 9.04, sun-java6)

setelah di compile maka akan menghasilkan file libHelloWorld.so

yang nantinya akan di load oleh program java anda, lalu program java akan memanggil fungsi print

coba kita jalankan

$ java -Djava.library.path=. HelloWorld


seharusnya akan memanggil fungsi yang diimplementasikan di HelloWorld.c
dan menghasilkan tulisan Hello World! di layar.


gutlak

Friday, September 25, 2009

rss ke sms

seringkali kita ingin saya ingin dikirimkan berita2 terkini tapi lewat sms.
sebetulnya sudah ada vendor yg menyediakan layanan seperti ini tapi biasanya dengan
biaya tertentu.

melalui blog ini saya akan mendeskripsikan hasil karya saya yang terbaru yaitu mengirimkan berita dari suaru rss feed tertentu ke sms secara gratis (yap bener2 gratis).

begini caranya:

alat dan bahan2:
- hostingan yg mendukung php5
- account google
- google calendar API http://code.google.com/apis/calendar/
- crontab
- php rss parser

setting notifikasi lewat sms di account google calendar anda.

buat php rss parser yang akan mengambil data dari rss feed kesukaan anda
lalu lakukan text processing sesuai kebutuhan misalnya anda ingin agar url gambar dihilangkan dan sebagainya, oh iya terutama jadikan teks menjadi pendek karena keterbatasan karakter yg bisa dikirim (dalam hal ini 59 karakter). setelah dibaca
lalu gunakan google calendar api untuk mengirimkan isi dari rss sebagai jadwal di account google calendar anda, dan set untuk menggunakan notifikasi sms.

buat crontab yang akan menjalankan skrip rss parser anda (lakukan sesuai kebutuhan).

yep, dan jadilah saya sering dikirimkan sms oleh google yang mengabarkan berita2 terkini.

Monday, September 21, 2009

php sentence to camel case


function sentenceToCamelCase($sentence)
{
$sentence = str_replace('a', '', $sentence);
$w = explode(" ", $sentence);
$ret='';
foreach($w as $i)
{
//echo $i;
$ret.=uppercaseWord($i);
}

return $ret;
}

function uppercaseWord($word)
{
return strtoupper(substr($word, 0,1)).substr($word, 1);
}

Thursday, September 17, 2009

fungsi rekursif di php

ternyata bisa juga ya hehe,
mantap dah

function faktorial($n)
{
if($n==1)
return 1;
else
return $n * faktorial($n-1);
}

insertion sort di php

$a = array(10,9,8,7,6,5,4,3,2,1,5,4,3,2,1);


insertionSort($a);

print_r($a);


function insertionSort(& $array)
{
$N = sizeof($array);

for($j=1;$j<$N;$j++)
{
$key = $array[$j];
$i = $j - 1;
while($i>=0 && $array[$i]>$key)
{
$array[$i+1] = $array[$i];
$i=$i-1;
}

$array[$i+1] = $key;
}
}

Friday, August 21, 2009

alarm saat sahur

alarm sangat diperlukan pada bulan ramadhan terutama untuk orang yang susah bangun. biasanya saya mengeset alarm untuk bunyi pada pukul 3 pagi.

Wednesday, July 22, 2009

lirik lagu spak bola by nunung cs

spak bola
by nunung cs
------------

ooooooooooooooooooooooooooooooooooo

spak bola olahraga dunia
semua hobi memainkannya
dari bocah sampai orang tua

antar kampung ataupun antar kota
antar sekolah sampai antar negara
spak bola di mana-mana

kiper defender striker
pelatih cari yang bener
ayo bekerja sama
biar jadi juara

kalah menang itu biasa
yang penting kita udah usaha
semangat jangan sampai kendor

kiper defender striker
pelatih cari yang bener
ayo bekerja sama
biar jadi juara

kiper defender striker
pelatih cari yang bener
ayo bekerja sama
biar jadi juara

bukan impian kita ikut piala dunia
kita rebut itu piala dunia

[instrument]

kiper defender striker
pelatih yang bener
butuh tenaga super
biar jadi juara

kiper defender striker
pelatih cari yang bener
butuh tenaga super
biar jadi juara

ooooooooooooooooooooooooooooooooooo

Friday, July 17, 2009

kegagalan cinta

Cukup sekali aku merasa
kegagalan cinta
Tak 'kan terulang kedua kali
di dalam hidupku

Hmmm.... ya nasib, ya nasib...
mengapa begini
baru pertama bercinta
sudah menderita

Cukup sekali aku merasa
kegagalan cinta

Kau yang mulai, kau yang mengakhiri
kau yang berjanji, kau yang mengingkari
Kau yang mulai, kau yang mengakhiri
kau yang berjanji, kau yang mengingkari

Kalau tahu begini akhirnya
tak mau dulu bermain cinta...

Thursday, July 09, 2009

lirik lagu Status palsu ( penyanyi: Vidi Aldiano )

separuh hati denganmu
ku jalani cintaku
berusaha tuk jadi kekasih
aku menipu dirimu
ku bilang cinta padamu
tapi dariku itu yang terbaik
kau bukan pilihan
karena ku tak sedikit pun hasratku padamu

reff :
terpaksa aku mencintai dirimu
hanya untuk status palsu
setengah hati ku jalani cinta
karena aku tak suka denganmu

kuberikan cintaku
meski tak stulus hatiku
kuharapkan engkau tak pernah tau
rasa cintaku padamu hanya dibibir saja
tak sedikitpun hati bicara

semoga selama ini
kau tak tau bahwa sesungguhnya
aku tak mencinta

back to reff

jika aku bisa menjadi lelaki pujaan
yang selalu engkau impikan


Saturday, June 13, 2009

cara mudah membuat pemilu hanya 1 putaran

karena calonnya cuma ada 3 pasang
maka bisa dibuat lembar kedua dari kertas suara sebanya 3C2 (3 kombinasi 2)

yaitu sama dengan 3!/(2!.(3-2)!) = 3

sehingga bentuk kertas suara bisa menjadi seperti berikut




setelah mencontreng bagian atas,
lalu pemilih akan memilih bagian bawah yang merupakan pilihannya jika calon tertentu masuk ke putaran kedua

jadi total pemilih perlu mencoblos sebanyak 4 kali

dan ini bisa menjadikan pemilu presiden hanya 1 putaran

Friday, June 12, 2009

juminten

juminten kuliah di washington
kalau malam main ke las vegas

juminten ayu mempesona
sampai ngelewatin christina aquilera

juminten hurry up and come back
jangan lama2 ya di amerika

kutunggu kau sekian lama
sampai kutanya sama kepala desa

<reff>
    cepat-cepat lah pulang ke indonesia
    ku sudah tak tahan ingin jumpa
    cepat-cepat lah pulang ke indonesia
    indonesia raya merdeka
</reff>

<*>
    sekali merdeka tetap merdeka
    sekali merdeka tetap merdeka
</*>

juminten kuliah di washington
kalau malam main ke las vegas

juminten ayu mempesona
sampai ngelewatin christina aquilera


juminten hurry up and come back
jangan lama-lama ya di amerika

kutunggu kau sekian lama
sampai kutanya sama kepala desa

<reff/>
<reff/>
<reff/>
<*/>

gong ning nong ning nong gong



Wednesday, May 27, 2009

lagu untuk sebuah nama

mengapa jiwaku mesti bergetar
sedang musikpun manis kudengar
mungkin karena kulihat lagi
lentik bulu matamu
bibirmu dan rambutmu yang kau biarkan
jatuh berderai di keningmu
makin mengajakku terpana
kau goreskan gita cinta

mengapa aku mesti duduk disini
sedang kau tepat didepanku
mestinya kau berdiri berjalan kedepanmu
kusapa dan kunikmati wajahmu
atau kuisyaratkan cinta
tapi semua tak kulakukan
kata orang cinta mesti berkorban

mengapa dadaku mesti bergoncang
bila kusebutkan namamu
sedang kau diciptakan bukanlah untukku
itu pasti tapi aku tak mau perduli
sebab cinta bukan mesti bersatu
biar kucumbui bayanganmu
dan kusandarkan harapanku
jatuh berderai dikeningmu

Friday, May 01, 2009

program lama yang ketemu lagi

3d tapi ngga 3d


http://abdul.arfan.googlepages.com/jalan.tar.gz

Saturday, April 11, 2009

mysql kok gini ya?

ada tabel namanya `iseng` dengan isi seperti ini







id title body
1 a b
2 b c
3 c d
4 d e



lalu saya select dengan query seperti ini

select * from iseng where title=0


lho kok malah mysql nya me return hasil seperti ini






id title body
1 a b
2 b c
3 c d
4 d e


tipe data dari title adalah varchar

tapi kalau saya coba di dbms seperti oracle hasilnya malah error

Thursday, April 09, 2009

mata air cinta

aku bagaikan kupu-kupu di atas mata air
ingin rasanya ku minum tapi aku takut tenggelam

engkaulah mata air, mata air cinta
izinkanlah ku minum walau setetes saja
berikan kesejukan pada diriku ini
yang lama ditinggalkan pergi

aku bagaikan kupu-kupu di atas mata air
terpesona

bayang-bayangmu menari di ujung mata
mengusik hati yang lama terasa mati

kehadiranmu bagai mata air cinta
tak pernah kering dari rasa rasa rindu
andaipun ku tenggelam rela aku rela

aku bagaikan kupu-kupu di atas mata air
ingin rasanya ku minum tapi aku takut tenggelam

merana

kucoba hatiku untuk melupakan
kasih yang pertama
kucoba hatiku untuk melupakan
kasih yang pertama

kucurahkan kalbu
kepada sekuntum bunga
belum lagi kupetik
dia tlah gugur ke bumi

luka hatiku ini
makin bertambah parah
pedihnya takkan hilang
untuk selama lamanya

tinggallah hidupku
oh kini merana
oh kini merana

kucurahkan kalbu
kepada sekuntum bunga
belum lagi kupetik
dia tlah gugur ke bumi

luka hatiku ini
makin bertambah parah
pedihnya takkan hilang
untuk selama lamanya

tinggallah hidupku
oh kini merana
oh kini merana

tiada kuasa
untuk melenyapkan
duka dan nestapa

tinggallah hidupku
oh kini merana
oh kini merana

Tuesday, March 31, 2009

sorting array berdasarkan key di php

cara untuk mengurutkan array berdasarkan key di php yaitu dengan
menggunakan fungsi ksort

contoh nya

$ar = array( 'ku'=> 'a', 's'=>'ss' );
ksort($a);

Friday, March 27, 2009

settingan default

ServerName ${DOM}
ServerAlias www.${DOM}
DocumentRoot ${HOME}/public_html
ErrorLog /var/log/virtualmin/${DOM}_error_log
CustomLog /var/log/virtualmin/${DOM}_access_log combined
ScriptAlias /cgi-bin/ ${HOME}/cgi-bin/
DirectoryIndex index.html index.htm index.php index.php4 index.php5
<Directory ${HOME}/public_html>
Options -Indexes IncludesNOEXEC FollowSymLinks
allow from all
AllowOverride All
</Directory>
<Directory ${HOME}/cgi-bin>
allow from all
</Directory>

Tuesday, March 17, 2009

membuat form html dalam 1 baris

misalnya ingin membuat beberapa form tapi hanya satu baris, jika dibuat seperti ini:

<form>
<input type="submit" />
</form>

<form>
<input type="submit" />
</form>

<form>
<input type="submit" />
</form>

<form>
<input type="submit" />
</form>

maka hasilnya adalah beberapa baris form

untuk mengakalinya bisa digunakan style css seperti ini

<style><br /> form { display: inline; }<br /></style>


referensi: chatting dengan iang

Wednesday, March 11, 2009

Missing Formal Parameter

error yang agak2 bikin kesel. cara membetulkannya adalah hilangkan var dari
parameter fungsi.

contoh:

//salah
function myFunc(var argument) {
}

// benar
function myFunc(argument) {
}


referensi: http://www.manticmoo.com/articles/jeff/programming/javascript/missing-formal-parameter.php

Friday, March 06, 2009

binary tree



jumlah node yg ada di atas kurva kuning cuma beda satu dengan yang dibawah kurva kuning

Thursday, March 05, 2009

symfony

ada yang bisa framework php symfony?
ajarin dong

Tuesday, March 03, 2009

cara mengesol sepatu

fasilkom jadi tempat sampahnya fisip?

fasilkom jadi tempat sampahnya fisip?

sorting dengan usort di php

function cmp($a, $b)
{
if ($a->a == $b->a) {
return 0;
}
return ($a->a < $b->a) ? -1 : 1;
}

$ob1->a = 10;
$ob2->a = 2;

$ar = array($ob1, $ob2);

usort($ar, "cmp");

var_dump($ar);


//-- end of php code

Thursday, February 19, 2009

dbfile

ini dulu gw pakai untuk ujian akhir kuliah perancangan dan pemrograman web
di sana diperlukan pengaksesan file tapi karena gw udah terbiasa dengan
pengaksesan database jadi gw bikin aja supaya mirip


<?
/////////////////////////////////////////////////////
// Abdul Arfan 2007 Dec
// db file
// akses file jadi mirip database
////////////////////////////////////////////////////

//insert(array("arfan", "1204556658", "Abdul Arfano"));
delete(array(0=>"arfan"));
display_all();

///////////////////////////
// untuk menginsert data //
///////////////////////////
function insert( $array )
{
$handle = fopen ( "./db.txt", "a" );

$first =true;
write_array($handle, $array);
}




///////////////////////////
// untuk searching data //
///////////////////////////
function select( $array_constrain )
{
$result = null;
$counter=0;

$handle = fopen ( "./db.txt", "r" );

while($line = fgets($handle))
{
$array = split(",", $line);
$masuk = true;

if($array_constrain)
{
foreach ($array_constrain as $key => $value)
{
if($array[$key]!=$value)
{
$masuk = false;
}
}
}

if($masuk)
{
$result[$counter]=$array;
$counter++;
}
}
return $result;
}

function delete( $array_constrain )
{
$result = null;
$counter=0;

$handle = fopen ( "./db.txt", "r" );
$handle2 = fopen ( "./db-temporary.txt", "w" );

while($line = fgets($handle))
{
$array = split(",", $line);
$cocok = true;

if($array_constrain)
{
foreach ($array_constrain as $key => $value)
{
if($array[$key]!=$value)
{
$cocok = false;
}
}
}

if(!$cocok)
{
write_array($handle2, $array);
}
}

fclose ($handle );
fclose ($handle2 );

//hapus db.txt
$myFile = "db.txt";
unlink($myFile);

rename ( "db-temporary.txt", "db.txt" );
return $result;
}

function update( $array_constrain , $array_update)
{
$result = null;
$counter=0;

$handle = fopen ( "./db.txt", "r" );
$handle2 = fopen ( "./db-temporary.txt", "w" );

while($line = fgets($handle))
{
$array = split(",", $line);
$cocok = true;

if($array_constrain)
{
foreach ($array_constrain as $key => $value)
{
if($array[$key]!=$value)
{
$cocok = false;
}
}
}

if($cocok)
{
foreach ($array_update as $key => $value)
{
$array[$key] = $array_update[$key];
}
}
write_array($handle2, $array);
}

fclose ($handle );
fclose ($handle2 );

//hapus db.txt
$myFile = "db.txt";
unlink($myFile);

rename ( "db-temporary.txt", "db.txt" );
return $result;
}

/**
fungsi-fungsi tambahan
*/
function write_array($handle, $array)
{
$first =true;
foreach($array as $el)
{
if($first)
{
$total = trim($el);
$first=false;
}
else
{
$total = $total.", ".trim($el) ;
}
}
fwrite($handle, $total."\n");
}

/**
* return dari ini adalah satu baris saja
* jadi bukan bentuk tabel
*/

function select_one( $array_constrain )
{
$handle = fopen ( "./db.txt", "r" );
while($line = fgets($handle))
{
$array = split(",", $line);
foreach ($array_constrain as $key => $value)
{
if($array[$key]==$value)
return $array;
}
}

return null;

fclose ($handle );
}

function display_all()
{
$result = select(null);

echo "<table border=\"1\">";
foreach($result as $row)
{
echo "<tr>";
foreach($row as $element)
{
echo "<td>$element</td>";
}
echo "</tr>";
}
echo "</table>";
}

?>

Wednesday, February 18, 2009

htaccess mod rewrite yg bisa jalan

buat code igniter nyoba2 akhirnya bisa
dari pada ilang terus repot nyari lagi
mending gw taro disini


<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

#Removes access to the system folder by users.
#Additionally this will allow you to create a System.php controller,
#previously this would not have been possible.
#'system' can be replaced if you have renamed your system folder.
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ ci_plain/index.php?/$1 [L]

#Checks to see if the user is attempting to access a valid file,
#such as an image or css document, if this isn't true it sends the
#request to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
#This last condition enables access to the images and css folders,
and the robots.txt file
#Submitted by Michael Radlmaier (mradlmaier)
RewriteCond $1 !^(index\.php|images|robots\.txt|css)
RewriteRule ^(.*)$ ci_plain/index.php?/$1 [L]
</IfModule>

<IfModule !mod_rewrite.c>
# If we don't have mod_rewrite installed, all 404's
# can be sent to index.php, and everything works as normal.
# Submitted by: ElliotHaughin

ErrorDocument 404 /index.php
</IfModule>

--
Abdul Arfan
http://arfan86.blogspot.com


tambahan..
tarun file ini di direktori ci_plain

Monday, February 02, 2009

mengganti nama file di linux

ubah semua nama file html menjadi php

rename 's/\.html/\.php/' *.html



mantapnya ini adalah regex sehingga tranformasi file yg bisa dilakukan
lebih rumit dari sekedar mengganti extensi file

Wednesday, January 28, 2009

read excel file in php

this is a slight modification of

http://sourceforge.net/projects/phpexcelreader/

because the I can't run the example.


download here
http://abdul.arfan.googlepages.com/phpexcel.zip

Tuesday, January 27, 2009

borok sikut

seseorang dikatakan borok sikut jika dia memberikan sesuatu kepada orang lain lalu dia memintanya lagi.

lampu dan baterai

jawab dengan cepat:

ada 2 buah lampu dan baterai yang sama.

jika lampu pertama hidup nyala hidup nyala
dan lampu ke dua menyala terus

baterai manakah yang akan habis duluan?

Monday, January 26, 2009

membaca clipboard di java

cara membaca clipboard di java
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.DataFlavor;
import java.awt.Toolkit;


public class TestClipboard
{
public static void main(String args[]) throws Exception
{
Toolkit t = Toolkit.getDefaultToolkit() ;
Clipboard cb =t.getSystemClipboard();
String s = (String) cb.getData(DataFlavor.stringFlavor);

System.out.println(s);
}
}

belajar java dari nol

dulu waktu pertama belajar java gini nih diajarin helloworld

--start--
public class Hello
{
public static void main(String args[])
{
System.out.println("Hello, World!");
}
}
--end--

nah sebagai pemula tentu aja gw bingung, apa itu class apa maksudnya
public static void main terus kenapa ada String args[] .

tapi kata yang ngajarin: "ya udah terima aja dulu"

ok deh gw terima dulu.

jadi? jawabannya apa?

apa itu class?

ada yang bilang class itu ya kelas, seperti orang masuk ke dalam kelas terus
dia belajar di sana nanti keluar dari kelas dia akan menjadi memiliki kemampuan
yang diajarkan di kelas tersebut. misalnya orang yang tadinya tidak bisa menjahit
setelah masuk ke kelas menjahit dia akan bisa menjahit dan memiliki predikat2 lain
yang dimiliki oleh penjahit seperti spesialisasi dalam menjahit (misalnya pakaian
wanita, anak2, dan lain-lain).

terus apa itu public static void main(String args[]) ?


hmm
apa ya?
ya udah terima aja dulu.

Tuesday, January 20, 2009

online picture tagging

ini ada contoh hasilnya

http://arfan.sebelah.web.id/pictag/view.html?pic=http://cheesebyhand.com/wp-content/uploads/2006/06/Steve_Goats.jpg&box=gembala;52;51;79;107|kambing;187;237;120;203|kambing;505;283;90;113|kambing;716;205;54;82|kambing;690;341;66;83|kambing;807;174;54;54|


untuk membuatnya bisa buka ini
http://arfan.sebelah.web.id/pictag

Wednesday, January 14, 2009

belajar bahasa baru

bagaimana cara belajar bahasa pemrograman baru?
saya tidak tahu.

tapi kalau saya sih biasanya melakukan ini.

cari tahu bagaimana cara mengeluarkan output
cari tahu bagaimana melakukan looping
cari tahu bagaimana melakukan if else
cari tahu bagaimana cara meminta input

yap ini saja sudah cukup buat saya
karena program itu intinya hanyalah logic+control

mengenai yang lain2nya bisa dipelajari lain waktu kalau suka.

~ini khusus kalau mau koding gaya prosedural

Friday, January 02, 2009

siapa dong yang bikin?

pernah saya baca slide isinya kurang lebih seperti ini.
  • Komputer bekerja seperti switching dan hanya mengenali 0 dan 1
  • Manusia tidak (paham) berbicara dengan bahasa 0 dan 1
  • Perlu bahasa pemrograman yang dapat menjadi perantara percakapan antara komputer dan manusia
  • Bahasa pemrograman diubah ke dalam bahasa yang dipahami oleh komputer dengan menggunakan interpreter atau kompiler


yang saya tidak setuju dari isi slide ini adalah jika manusia tidak paham berbicara dengan bahasa 0 dan 1 lalu siapa yang akan membuat bahasa pemrograman yang bisa menjadi perantara percakapan antara manusia dengan komputer? apakah yang bikin itu bukan manusia? alien? atau interpreter dan kompiler itu dibuat dengan mantra2 khusus?


sebenernya manusia bukannya tidak paham bahasa 0 dan 1, kebanyakan manusia malas untuk mempelajarinya. ada beberapa orang yang mengerti bahasa ini dan merekalah yang bisa membuat compiler dan intrepreter jadi nyata.