Showing posts with label Belajar. Show all posts
Showing posts with label Belajar. Show all posts

Thursday, April 4, 2013

Generate Random Colors using JavaScript

Hi, In this post we will see how to generate random colors using JavaScript. We will generate a random color and change the color of the div contents, at regular intervals.


<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Generate Random Colors using JavaScript</title>
    <script type="text/javascript">
        // after every second timer
        setInterval(randomRgb, 1000);

        function randomRgb() {
            // create the rgb string
            var col =  "rgb("
            + randomColor(255) + ","
            + randomColor(255) + ","
            + randomColor(255) + ")";

            //change the text color with the new random color
            document.getElementById("divone").style.color = col;
        }


        function randomColor(num) {          
            return Math.floor(Math.random() * num);
        }     
    </script>
</head>
<body>
<div id="divone" style="font:bold 24px verdana">DevCurry.com</div>
</body>
</html>


As you can see, they are using Math.random() to generate a random rgb value between 0 and 255. The onesecond timer is set using setInterval() which makes a function call to randomRgb() and changes the color of text kept inside ‘divone’. 

Note: This code should work on most of the modern browsers. For old browsers, you need to look at hexadecimal value instead of RGB. 


Output:






Thursday, February 28, 2013

How To Convert Protected PDF File

Huah sudah bulan Februari ternyata, dan blog ini udah hampir usang dimakan zaman gara-gara jarang gw sentuh :') Dari mulai akhir tahun kemarin sampai dengan hari ini gw ngerasa kaya orang paling sibuk di dunia dan akhirat euy kalah pak Jokowi kayanya, pulang kerja sampe rumah malem trus pagi-pagi buta udah berangkat lagi, tapi ya gak apalah demi kau dan sibuah hati HAHAHAHAHA

Bekerja dibidang jasa itu emang gitu ternyata, harus gerak cepet tapi tidak "grusak-grusuk" alias mesti sesuai juga sama request dari si user. Sedikit share waktu akhir tahun sampe awal Februari lalu itu kan banyak banget kegiatan-kegiatan momentum alias libur nasional, nah perusahaan tempat saya bekerja ini pasti minta sesuatu yang agak ngeribetin developer, sebenernya ga susah-susah bgt sih cuma nambah antrian kerjaan makin puanjang aja.. Misalkan pas Natal, mereka minta dibikinin A trus selang berapa hari minta dibikinin B untuk moment akhir tahun, lalu si B belom kelar udah minta lagi ganti sama yang C..
Yah, begitulah kira-kira~~ 

Tapi penuh dengan kesibukan itu bagus sob, kalo kata cici gw itu kesempatan buat lo nunjukin sinar terang lo di market place.. Soalnya kalo lo ga ada kerjaan, gimana lo mau jadi inspirasi buat boss lo? Gimana lo bisa memberkati perusahaan lo?? Dsb..
Ya pertanyaan itu sih jawab sendirilah yahhhh :D

Fyi, selain sibuk kerjaan sekarang juga ane  lg sibuk skripsi hahahaha
A: Skripsi apaan lo? Perasaan baru lulus kemaren
B: mau tau bgt?
A: S1? apa S2? apa Doktoral? hahaha
B: mau tau bgt apa mau tauu ajahhh?
A: Au ah gelap.. #Plakkk
Ya gitulah, skripsi pokoknyaaaa..

Nah sebenernya ini postingan buat bantu temen-temen yang mungkin agak kesulitan buat convert Pdf file ke format lain misalkan Ms.Word dsb..
Ini kenapa gw tiba-tiba mau posting ginian? Ini latar belakangnya hahahaha
1. Karena lg blm dapet waktu luang utk ngepost yg berat-berat
2. Karena gw tau banyak bgt yang pernah nemuin kesulitan ini, maka dari itu demi memenuhi perintah Tuhan "Bertolong-tolonganlah menanggung bebanmu. Demikianlah kamu memenuhi hukum Kristus"  Gal 6:2  saya mencoba membantu :D

Pas lagi ngerjain skripsi itu gw kesulitan buat ngambil bahan yang bentuknya Pdf karena di lock pake password, Kalo yang ga di lock pake password sih gampang cara convert nya tingga Save As .Doc (Ms.Word) aja kelar nah tapi kalo file pdf nya di lock itu susah dan akhirnya gw nyari cara buat convert itu file yg dikunci.. 

Sebenernya ada lumayan banyak caranya, tapi ini yang paling baguslah menurut gw karena kebanyakan converter itu bisa meng-convert tapi cuma sebagian dari file yang mau kita convert.. Misal, ada 30 halaman yang di kunci cuma bisa diconvert 5 halaman doang kan ga seru tohh hehehee.. 
Langsung saja, ini dia caranya:
1. Masuk ke SINI kemudian
2. Ambil file yang mau kita convert (klik Browse Button) max: 50MB
3. kalo udah keambil, tinggal klik  Convert Button yang merah..
4. Lalu tunggu sampai selesai, 
5. Terakhir, download hasil yang udah di convert tadi..
As simple as that :)

udah ah, kerja lagiii hahahaha
Semoga membantu..

Wednesday, December 12, 2012

Arti di Balik Logo-Logo OS dan Browser


Semua perusahaan, apapun itu, pasti punya logo masing-masing. Tidak terkecuali operating system, browser atau search engine yang logo-nya udah akrab di mata kita kayak Windows, Google, Mozilla Firefox dan lain-lain. Begitu terkenalnya logo-logo ini sampai orang bisa mengetahui nama perusahaan hanya dari melihat logo.
Ternyata, di balik logo-logo ini tersimpan kisah yang cukup menarik lho! 

1. Microsoft Windows
Pada awalnya, jika melihat logo Windows, yang terpikir tentu gambar bendera yang melambai. Padahal, logo windows adalah gambar jendela (dalam bahasa Inggris, jendela=window). Menurut pihak Microsoft, jendela adalah sebuah kiasan yang sangat baik untuk menggambarkan teknologi komputasi karena pada dasarnya, Microsoft dan Windows ingin ‘memberikan’ teknologi ke tangan para penggunanya dan mengajak user melakukan berbagai hal dengan teknologi tersebut sesuai perspektif masing-masing user.
2. Google
Memang, tidak ada yang luar biasa dari logo search engine favorit banyak orang ini. Tapi, Google diambil dari mengutak-atik kata ‘Googol’ yang artinya angka 1 yang diikuti seratus angka 0. Logo Google sendiri terdiri dari empat warna yang merupakan warna utama, namun warna tersebut tidak digunakan sesuai urutan yang seharusnya sebagai tanda bahwa Google memiliki prinsip ‘tidak mengikuti aturan yang ada’.

3. Linux
Logo Linux adalah sebuah penguin yang diberi nama ‘Tux’. Tux diciptakan oleh oleh Larry Ewing dan kabarnya, Tux merupakan kepanjangan dari ‘Torvalds UniX’. Linus Torvalds, pembuat Linus Kernel, mengatakan bahwa ia memiliki kecintaan terhadap binatang penguin dan ia ingin agar logo Linux berupa penguin yang lucu dan menggemaskan! haha Jadilah penguin gemuk yang lucu ini kemudian dinobatkan sebagai logo Linux. Agak mirip sama si Frits ya :))

4. Mozilla Firefox
Sebenarnya ‘Firefox’ merupakan sebutan untuk binatang Red Panda, sayangnya binatang ini dirasa tidak cocok untuk menjadi image untuk Mozilla Firefox. Pada akhirnya, binatang rubah yang kemudian dipakai sebagai logo. Logo Mozilla Firefox ini dibuat dengan tujuan membuat kesan yang bagus dan mudah diingat tanpa terlihat terlalu ‘ramai’

5. Chrome
Seperti hal-nya logo Windows, logo Chrome memiliki 4 warna dasar yang kemudian disusun menjadi bentuk bulatan dan disebut ‘Chrome Ball’. Logo yang tadinya berbentuk 3D kini berubah menjadi lingkaran biasa. Kabarnya icon baru Chrome ini merupakan gambaran dari semangat Chrome untuk membuat web yang lebih cepat, ringan dan mudah diakses untuk semua orang.

Oke Frits, apa logo perusahaanmu?
HAHAHAHAHA

bersambung...

Friday, October 5, 2012

Basic O/R Mapping

Mapping Declaration:
Object Relational mappings bisa kita definisikan dalam 3 pendekatan.
1. using Java 5 annotations (via the Java Persistence 2 annotations)
2. using JPA 2 XML deployment descriptors (described in chapter XXX)
3. using the Hibernate legacy XML files approach known as hbm.xml



Annotations dibedakan dalam 2 kategori, the logical mapping annotations (describing  objectmodel, the association between two entities etc.) and the physical mapping annotations (describing the physical schema, tables, columns, indexes, etc). Dibawah kita akan menggabungkan antar kedua category tadi.
JPA annotations nya ada di javax.persistence.* package. Trus Hibernate specific extensionsnya ada di org.hibernate.annotations.*. 

Nih contohnya mapping sederhananya:


package eg;
@Entity
@Table(name="cats") @Inheritance(strategy=SINGLE_TABLE)
@DiscriminatorValue("C") @DiscriminatorColumn(name="subclass", discriminatorType=CHAR)
public class Cat {
@Id @GeneratedValue
public Integer getId() { return id; }
public void setId(Integer id) { this.id = id; }
private Integer id;
public BigDecimal getWeight() { return weight; }
public void setWeight(BigDecimal weight) { this.weight = weight; }
private BigDecimal weight;
@Temporal(DATE) @NotNull @Column(updatable=false)
public Date getBirthdate() { return birthdate; }
public void setBirthdate(Date birthdate) { this.birthdate = birthdate; }
private Date birthdate;
@org.hibernate.annotations.Type(type="eg.types.ColorUserType")
@NotNull @Column(updatable=false)
public ColorType getColor() { return color; }
public void setColor(ColorType color) { this.color = color; }
private ColorType color; 
@NotNull @Column(updatable=false)
public String getSex() { return sex; }
public void setSex(String sex) { this.sex = sex; }
private String sex;
@NotNull @Column(updatable=false)
public Integer getLitterId() { return litterId; }
public void setLitterId(Integer litterId) { this.litterId = litterId; }
private Integer litterId;
@ManyToOne @JoinColumn(name="mother_id", updatable=false)
public Cat getMother() { return mother; }
public void setMother(Cat mother) { this.mother = mother; }
private Cat mother;
@OneToMany(mappedBy="mother") @OrderBy("litterId")
public Set<Cat> getKittens() { return kittens; }
public void setKittens(Set<Cat> kittens) { this.kittens = kittens; }
private Set<Cat> kittens = new HashSet<Cat>();
}
@Entity @DiscriminatorValue("D")
public class DomesticCat extends Cat {
public String getName() { return name; }
public void setName(String name) { this.name = name }
private String name;
}
@Entity
public class Dog { ... }
Pendekatan hbm.xml menggunakan skema XML yang dirancang untuk dapat dibaca dan diedit.
Bahasa pemetaan Java-centris, yang berarti bahwa that mappings are constructed around persistentclass declarations and not table declarations
Harap dicatat bahwa meskipun banyak pengguna Hibernate yang memilih untuk menulis XML dengan manual, ada beberapa tools untuk menghasilkan dokumen pemetaan. Misalnya XDoclet, Middlegen dan AndroMDA .

Contoh:


<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="eg">
<class name="Cat"
table="cats"
discriminator-value="C">
<id name="id">
<generator class="native"/>
</id>
<discriminator column="subclass"
type="character"/>
<property name="weight"/>
<property name="birthdate"
type="date"
not-null="true"
update="false"/>
<property name="color"
type="eg.types.ColorUserType"
not-null="true"
update="false"/>
<property name="sex"
not-null="true"
update="false"/>
<property name="litterId"
column="litterId"
update="false"/>
<many-to-one name="mother"
column="mother_id"
update="false"/>
<set name="kittens"
inverse="true"
order-by="litter_id">
<key column="mother_id"/>
<one-to-many class="Cat"/>
</set>
<subclass name="DomesticCat"
discriminator-value="D">
<property name="name"
type="string"/>
</subclass>
</class>
<class name="Dog">
<!-- mapping for Dog could go here -->
</class>
</hibernate-mapping>
Sekarang gw mau bahas tentang kosep mapping itu sendiri (both annotations and XML). We
will only describe, however, the document elements and attributes that are used by Hibernate at runtime. The mapping document also contains some extra optional attributes and elements that affect the database schemas exported by the schema export tool (for example, the not-null attribute).

Entity
Entity adalah object java biasa yang biasa disebut dengan POJO, which will be persisted by Hibernate
Deklarasi entity sangat mudah sob, cuma pake @entity anotations.


@Entity
public class Flight implements Serializable {
Long id;
@Id
public Long getId() { return id; }
public void setId(Long id) { this.id = id; }
}
That's pretty much it, the rest is optional. There are however any options to tweak your entity mapping, let's explore them.
@Table lets you define the table the entity will be persisted into. If undefined, the table name is the unqualified class name of the entity. You can also optionally define the catalog, the schema as well as unique constraints on the table.


@Entity
@Table(name="TBL_FLIGHT",
schema="AIR_COMMAND",
uniqueConstraints=
@UniqueConstraint(
name="flight_number",
columnNames={"comp_prefix", "flight_number"} ) )
public class Flight implements Serializable {
@Column(name="comp_prefix")
public String getCompagnyPrefix() { return companyPrefix; }
@Column(name="flight_number")
public String getNumber() { return number; }
}

The constraint name sifatnya optional (digenerate if left undefined). The column names composing the constraint correspond to the column names as defined before the Hibernate NamingStrategy is applied.
@Entity.name lets you define the shortcut name of the entity you can used in JP-QL and HQL queries. It defaults to the unqualified class name of the class.

Pokoknya gitulah kira-kira basic mapping pake Hibernate yang sekarang gw lg belajarin, itu baru dua point doang (cara deklarasi mapping dan entitas) hohoho masih banyak bgt ternyata. Kalo mau lengkapnya silakan klik disini.

Wednesday, August 8, 2012

Hibernate, hoaaammmhhh


Sebelum kita belajar hibernate, gw mao kasih cerita dulu kenapa ada hibernate dan kenapa hibernate bagus buat para javaholic (asik dah javaholic hahahaha) :D
kalo udah baca cerita ini, pasti tau kenapa hibernate itu perlu dipelajari dan bakal tau tentang konsep hibernate.
Begini ceritanya :D
Dahulu ada seorang laki-laki yang namanya Gavin King (sampai sekarang masih ada tuh orang :D ), dan dulu segut banget ama yang namanya java dan sql, entah pake dbms apa tuh dia, gw juga gak tau :D
Setiap dia bikin project java yang pake database, dia selalu pake jdbc buat koneksinya, karena emang dulu cuma itu yang dipake :D (gak kaya sekarang, banyak alternatif) sampai lama-lama dia agak jenuh dengan keribetan jdbc, misal mo insert data ada harus buat dulu, connection, trus buat statement, ato preparestatement, trus masukkan perintah SQLnya kayak gini:
1INSERT INTO ANU VALUES (ANU, ANU, ANU)
wah pokoknya ribet banget :D
Sampai akhirnya dengan kejeniusan yang gak sebanding ama einstein dia mulai mikir buat bikin library yang bisa dipake buat menyederhanakan proses DML (data manipulation language) (manipulasi data) untuk database. Dalam otaknya dia pengen bikin library yang simple dan elegan, sampai sampai dia pengen bikin proses insert, update, delete, select jadi lebih mudah. Misal kalo mo insert dia pengennya cuma manggil 1 baris perintan, kaya :
1insert(data);
hmm, kayaknya itu suatu hil yang mustahal :D
gak lah, buktinya sekarang hibernate udah ada, hahahahah :D
Selain itu kadang dia suka bikin class untuk representasi tabel di database dan untuk mendapatkan object dari class itu dia harus bikin Connection dulu, trus PrepareStatement, trus set parameter id, trus buat ResultSet setelah itu cek apa resultsetnya ada nilainya, kalo ada nilainya baru isi ke object yang pengen di dapet, wuiiiiihhhh, ribet :(
si gavin tuh pengennya untuk mendapatkan object cukup dengan melakukan perintah :
1Data data = get(id);
haha, dan sampai akhirnya dia dapet ilham untuk bikin hibernate, yang dia ilhami dari kata Hibernate yang ada di windows pas mo shutdown :D
nah jadi seperti itulah kisah BOHONG-nya hahahahaah
Tapi niat gw bukan buat boongin kalian, cuma mao manas-manasin kalian, kalo hibernate tuh perlu di pelajari (kata ebi sihhh ini) :D
tapi kalo gak mo belajar hiberante juga, kita bisa belajar java persistence api, iBatis, Cayenne dan framework orm (object relational mapping) lainnya yang sama gunanya kayak hibernate. Silahkan berkunjung ke website resminya hibernate. src

Monday, July 9, 2012

CSS Positioning

Belajar CSS (lagi), setelah sekian lama ga megang-megang ni bocah..

Positioning, mirip dengan float yang membedakan hanyalah penempatan elemen, jika dengan float kita hanya dapat membuat elemen html saling berdampingan, dengan positioning kita dapat membuat elemen html untuk saling tindih. Ada empat metode penentuan posisi yang berbeda. yaitu:


Static positioning:

Elemen HTML statis diposisikan secara default. statis tidak terpengaruh oleh bagian atas, bawah, kiri, dan kanan


Fixed:
menempatkan elemen html relatif dengan browser, tidak akan ikut bergeser ketika kita lakukan scroling pada browser. Elemen dengan position fixed akan mengubah default html. Elemen ini dapat menindih elemen yang lain. Sebagai catatan, untuk browser IE7 dan IE8 tidak mendukung elemen ini jika tidak dideklarasikan !DOCTYPE.
Code:

Monday, July 2, 2012

ASP.NET Cookies Overview

Cookie adalah serangkaian teks yang disimpan pada komputer oleh situs web yang kita kunjungi. Pada umumnya cookie menyimpan pengaturan atau preferensi kita untuk suatu situs web tertentu, misalnya bahasa yang dipilih, atau lokasi (negara) kita. Ketika kita kembali ke situs web tersebut, browser akan mengirimkan cookie yang bersesuaian kepada situs web yang bersangkutan. Dengan cara ini, situs dapat menampilkan informasi yang sesuai dengan pengaturan atau preferensi kita sebelumnya.

Cookie dapat menyimpan berbagai jenis informasi, termasuk di antaranya informasi pribadi seperti nama, alamat rumah, alamat email, atau nomor telepon. Akan tetapi informasi ini hanya akan disimpan jika kita pernah memberikan informasi ini kepada situs tersebut. Situs web tidak dapat mengakses informasi yang tidak pernah kita berikan kepada situs web tersebut, dan situs web juga tidak dapat mengakses berkas lainnya pada komputer kita.

Secara bawaan (default), aktivitas menyimpan dan mengirim cookie tidak pernah terlihat oleh pengguna. Akan tetapi, kita dapat mengubah pengaturan pada browser sehingga kita dapat mengizinkan atau menolak permintaan penyimpanan cookie, menghapus cookie yang tersimpan saat browser ditutup, dan lain sebagainya.

Friday, June 29, 2012

Javascript Copy To Clipboard (All Browser)

Script ini cukup jelas. Mengirimkan sebuah string ke fungsi copyToClipboard dan akan ditempatkan pada clipboard sehingga kita dapat menyisipkannya ke program lain. Bahasa yang lebih manusiawinya adalah, sekali klik content yang kita mau langsung di copy ke clipboard kita. Begini caranya:


function copyToClipboard(s)
{
 if( window.clipboardData && clipboardData.setData )
 {
  clipboardData.setData("Text", s);
 }
 else
 {
  // You have to sign the code to enable this or allow the action in about:config by changing
  user_pref("signed.applets.codebase_principal_support", true);
  netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');


  var clip Components.classes['@mozilla.org/widget/clipboard;[[[[1]]]]'].createInstance(Components.interfaces.nsIClipboard);
  if (!clip) return;

Paging Halaman Web Dengan ASP

Oke mau berbagi dikit ah tentang apa yang gw dapet dari kerjaan. hehehe
Ditambah hasil belajar dari prof Google :D
Biasanya kan gw kalo buat halaman web itu isinya semua ada disatu halaman, ga pernah gw bagi-bagi ke beberapa halaman. Bahasa inggrisnya sih katanya paging, nah kalo pake PHP biasanya pake fungsi LIMIT di mySqlnya. Tapi yang ini dicobain pake ASP :)
Pakai Looping:                                                                                                                                                                                                                                                           
do                                                                                                                                                   
 [syarat]
  [kondisi]
loop                          
Ilustrasinya adalah:

Jumlah data posting yang ada = 17
jumlah_post = 17


Jumlah data yang ditampilkan per halaman = 5
publish_post = 5


Jumlah halaman diperoleh dari : jumlah_post/publish_post                                                                
jumlah_hal = int(jumlah_post/publish_post)
jumlah_hal = int(17/5)
jumlah_hal = 3


dari kondisi di atas bisa dilihat 17/5 = 3 sisa 2. Karena ada sisa maka halaman akan
menjadi 4.                                                                                                                                                                              
< jika jumlah_post mod publish_post > 0 maka
jumlah_hal = jumlah_hal + 1
17 mod 5 = 2, 2 > 0
jumlah_hal = 3 + 1 = 4


 
Design by Frits Hendrico Tarihoran | Bloggerized by fritshendrico - Premium Blogger Themes | Revivalist, History Maker