Minggu, 22 September 2013

Keep Calm and FIGHT


CURHAT
     Orang bilang kalo SMA tuh yang paling nakal kelas 2 nya, kayak nya kuliah juga gitu deh, mulai tingkat 2 ini aq ngerasa semakin gak jelas. Beberapa orang menghujat, ngomongin di belakang, mendukung, sampai biasa aja sama tingkahku. But no problem! I'm fine with my life, mungkin bisa dibilang saat ini lagi sibuk cari jati diri part 2. Aku saat ini lagi bener" males kuliah, kangen rumah, pingin terus di zona nyaman, dan gak tertarik sama tantangan hidup. Bahkan sampai saat ini mungkin aq masih berpikir salah jurusan dan sebagainya. Untuk saat ini aq melampiaskannya dengan bertemu setiap hari dengan seseorang yang kita sepakati sebagai pacar. Aku mulai terlena dengan jalan-jalan dan mulai lupa dengan tugas utamaku datang kesini. 

Ada 1 keputusan yang aq ambil dengan mantap tapi sekarang aku jadi tidak komitmen lagi menjalankannya. Aku bukan menyessal tapi hanya saja aku merasa saat ini lagi tidak begitu tertarik dengan keputusan itu lagi karena beberapa pihak. Aku mengambil keputusan itu karena kagum pada beberapa pihak dan ingin berubah, tapi sekarang aq mulai tidak berkomitmen pula karena sikap dari pihak-pihak itu sendiri. In this place, u can meet many people with different characteristic and unstable emotional. The important thing is I didn't allow my life disturbed by others!
Aku Mendengar:
Tapi apakah kau sadar banyak orang yang kau sayangi berharap lebih padamu. Saat kau mendapatkan sebuah peluang yang tidak semua orang dapat menikmatinya sepertimu betapa bangganya orang yang menyayangimu. Mungkin hidupmu adalah hidupmu, hanya kamu yang tahu jalan hidupmu, tapi bagaimana orang yang telah berharap lebih padamu.? Dan di suatu saat apa yang mereka harapkan ternyata tidak dapat mereka rasakan. Apa yang mereka korbankan selama ini menjadi sia-sia. Dan saat mereka telah pergi mungkin hanya sesal yang akan kamu dapat.  Hanay orang yang pernah mengalami kehilangan yang akan mengerti, tapi apakah kamu menunggu sampai saat kamu merasakan kehilangan orang yang kau sayangi.
Just look around, dear. Semua keputusan ada ditanganmu. Keep  Fight J

Dari Sahabat:
sampah yang bisa di daur ulang menjadi cambuk semangat untuk menanjak ke tingkat yang lebih tinggi yaitu KESUKSESAN

kadang orang lain ngomong tanpa tahu apa yang kita rasain dalam hati, mereka cuma melihat dari segala sisi yang negatif.. Jangan ngejudge seseorang tanpa terlebih dahulu anda mendalami dan mencoba merasakan seandainya yang terjadi itu apda diriku, lalu gimana nanti??? #ThinkBig #please hahaha

dan kita juga tidak boleh menyalahkan mereka yang menjatuhkan kita , karena kita membutuhkan orang orang seperti mereka agar kita tahu siapa diri kita sebenarnya
*we need them so that we know who we really are

Orang yang kuat hatinya, Bukan mereka yang tidak pernah menangis atau menerima caci maki orang

Melainkan orang yang tetap tegar ketika banyak Orang yang menjatuhkannya.

Kamis, 12 September 2013

Inaugurasi 2013 HIMMA MI Polman ASTRA

"Friendship" ,dalam HIMMA Manajemen Informatika Politeknik Manufaktur ASTRA 





ENJOY


Kamis, 29 Agustus 2013

Cara Cepat Mengenali Troubleshooting komputer

Komputer sudah merupakan alat bantu yang tergolong penting saat ini, kita ambil salah satu contoh pada kegiatan perkantoran, tentunya dengan adanya komputer maka pekerjaan dapat diselesaikan dengan lebih cepat. Sebagai pengguna atau pemakai komputer tentunya kita juga pernah mengalami masalah dengan komputer. Hal tersebut dapat diakibatkan adanya ketidaksesuaian dari komponen dasar komputer itu sendiri yang biasanya berkaitan dengan Software (perangkat lunak atau aplikasinya), Hardware (perangkat keras) atau Brainware (si pemakai komputer).Pengertian Troubleshooting Komputer
Dalam dunia komputer, segala sesuatu masalah yang berhubungan dengan komputer disebut Troubleshooting dan timbulnya masalah dalam komputer tentu ada sebabnya. Pada kesempatan ini kita akan sedikit belajar untuk mendeteksi masalah pada komputer Anda terutama yang berhubungan dengan Hardware.

Untuk permasalahan dengan Software sebaiknya Anda lakukan pendeteksian sederhana dahulu seperti pemeriksaan file-file yang berhubungan dengan Software atau spesifikasi permintaan (requirement) dari Software. Apabila permasalahannya cukup rumit, sebaiknya Anda install ulang saja Software tersebut, karena akan terlalu rumit untuk memperbaiki sebuah Software, sedangkan untuk permasalahan dengan Brainware, penulis hanya dapat memberikan saran “istirahat dulu deh, he…”.
Teknik dalam Troubleshooting
Terdapat dua macam teknik dalam mendeteksi permasalahan dalam komputer, yaitu teknik Forward dan teknik Backward. Untuk lebih mengenal kedua teknik tersebut, ada baiknya kita bahas terlebih dahulu definisi dari masing-masing teknik tersebut.
1. Teknik Forward
Sesuai dengan namanya, maka dalam teknik ini segala macam permasalahan dideteksi semenjak awal komputer dirakit dan biasanya teknik ini hanya digunakan oleh orang-orang dealer komputer yang sering melakukan perakitan komputer. Pada teknik ini hanya dilakukan pendeteksian masalah secara sederhana dan dilakukan sebelum komputer dinyalakan (dialiri listrik). Untuk mempermudah silakan simak contoh berikut :
§ Setelah komputer selesai dirakit, maka dilakukan pemeriksaan pada semua Hardware yang telah terpasang, misalnya memeriksa hubungan dari kabel Power Supply ke soket power pada Motherboard.
§ Untuk casing ATX, kita periksa apakah kabel Power Switch sudah terpasang dengan benar.
§ dsb.
2. Teknik Backward
Hampir sama dengan teknik sebelumnya, teknik Backward adalah teknik untuk mendeteksi kesalahan pada komputer setelah komputer dinyalakan (dialiri listrik). Teknik lebih banyak digunakan karena pada umumnya permasalahan dalam komputer baru akan timbul setelah “jam terbang” komputernya sudah banyak dan ini sudah merupakan hal yang wajar. Dapat kita ambil beberapa contoh sebagai berikut :
§ Floppy Disk yang tidak dapat membaca disket dengan baik.
§ Komputer tidak mau menyala saat tombol power pada casing ditekan.
§ dsb.
Analisa Pengukuran
Pada tahapan ini, pendeteksian masalah dengan cara mengukur tegangan listrik pada komponen nomor 1 sampai 3. Gunakan alat bantu seperti multitester untuk mengukur tegangan yang diterima atau diberikan komponen tersebut.
Contoh : Mengukur tegangan listrik yang diterima oleh Power Supply, lalu mengukur tegangan yang diberikan oleh Power Supply ke komponen lainnya.
Analisa Suara
Pada tahapan ini pendeteksian masalah menggunakan kode suara (beep) yang dimiliki oleh BIOS dan dapat kita dengar lewat PC Speaker. Pastikan kabel PC Speaker sudah terpasang dengan baik. Kemungkinan letak permasalahan ada di komponen nomor 4 dan 5. Untuk mempermudah pengenalan kode suara tersebut, silakan simak keterangan berikut :

  1. § Bunyi beep pendek satu kali, artinya sistem telah melakukan proses Boot dengan baik.
  2. § Bunyi beep pendek 2 kali, artinya ada masalah pada konfigurasi atau seting pada CMOS.
  3. § Bunyi beep panjang 1 kali dan pendek 1 kali, artinya ada masalah pada Motherboard atau DRAM.
  4. § Bunyi beep panjang 1 kali dan pendek 2 kali, artinya ada masalah pada monitor atau VGA Card.
  5. § Bunyi beep panjang 1 kali dan pendek 3 kali, artinya ada masalah pada Keyboard.
  6. § Bunyi beep panjang 1 kali dan pendek 9 kali, artinya ada masalah pada ROM BIOS.
  7. § Bunyi beep panjang terus-menerus, artinya ada masalah di DRAM.
  8. § Bunyi beep pendek terus-menerus, artinya ada masalah penerimaan tegangan (power).
  9. § Pada beberapa merk Motherboard akan mengeluarkan bunyi beep beberapa kali apabila temperatur processornya terlalu tinggi (panas).
Catatan : kode bunyi beep diatas berlaku pada AWARD BIOS, untuk jenis BIOS yang lain kemungkinan memiliki kode bunyi beep yang berbeda.
Analisa Tampilan
Pada tahapan ini pendeteksian masalah cenderung lebih mudah karena letak permasalahan dapat diketahui berdasarkan pesan error yang ditampilkan di monitor. Kemungkinan letak permasalahan ada di komponen.
Contoh : Pada saat komputer dinyalakan tampil pesan Keyboard Error, maka dapat dipastikan letak permasalahan hanya pada Keyboard.
Cara Cepat Mengenali Troubleshooting
§ Apabila terjadi masalah dan sistem masih memberikan tampilan pesan pada monitor atau disertai dengan bunyi beep 1 atau 2 kali, maka kemungkinan letak permasalahan ada di yaitu pada Keyboard, Card I/O, Disk Drive dan Disket.
§ Apabila terjadi masalah dan sistem memberikan kode bunyi beep lebih dari 2 kali, maka kemungkinan letak permasalahan ada di komponen yaitu RAM, VGA Card dan Monitor.
§ Sedangkan untuk masalah yang tidak disertai pesan pada monitor atau kode bunyi beep, kemungkinan besar letak permasalahan ada di komponen nomor 1 dan 2, yaitu Power Suplly dan Motherboard.
Dengan kedua macam teknik dalam pendeteksian maslah dalam komputer tersebut, tentunya akan lebih memperkaya pengetahuan kita di bidang komputer, jadi jika suatu saat terdapat masalah pada komputer Anda kita dapat melakukan pemeriksaan terlebih dahulu sebelum membawa ke tempat servis, kalaupun harus membawa ke tempat servis kita sudah mengerti letak permasalahannya, jadi kita tidak dibohongi oleh tukang servis.
Dengan pemahaman troubleshooting komputer yang lebih dalam tentunya akan lebih mempermudah kita untuk mengetahui letak permasalahan dalam komputer dan tentunya akan lebih menyenangkan apabila kita dapat memperbaiki sendiri permasalahan tersebut. Semoga pembahasan sederhana tentang troubleshooting ini dapat bermanfaat, aduh capek banget bro, selamat mencoba dan terima kasih.

14 teknik Troubleshooting Pada PC Anda

Teknik Troubleshooting atau teknik menganalisa kerusakan yang terjadi pada sebuah PC, merupakan teknik dasar yang harus dikuasai oleh serang teknisi computer…..
Apabila anda lagi belajar menjadi seorang teknisi PC semoga tutorial ini dapat membantu anda menjadi seorang teknisi yang handal…..
1. Apabila computer anda sering terjadi hang beberapa penyebabya antara lain :
a. Memori tidak cocok, misalnya Motherbord ada hanya mensuppor memori PC 2800 dengan kapasitas maksimal 512 MB lalu anda memasang memori PC 3200 dengan kapasitas 1 GB. Untuk kasus seperti ini hal yang dapat dilakukan yaitu mengganti memori.
b. PC atau Hardisk anda terkena VIRUS sehingga mengganggu kinerja PC anda, hal yang anda dapat lakukan antara lain menscan PC anda dengan Antivirus kepercayaan anda dengan update terbarunya.
c. Terjadi kesalahan over clock pada Motherboard, hal yang dapat anda lakukan yaitu mereset setingan motherboard anda.
d. Adanya bad sector pada hardisk anda, apabila bad sector ini hanya bersifat softwere dapat diatasi dengan mempartisi ulang hardisk anda namun apabila bad sector sudah bersifat hardwere biasanya mempartisi ulang tidak akan bertahan lama, salah satunya cara yaitu dengan mengganti hardisk.
2. Pembacaan data menjadi lambat penyebabnya antara lain :
a. Memori tidak cukup, hal ini terjadi karena banyaknya program yang anda install pada PC anda, hal yang dapat anda lakukan atara lain menghapus program-program yang menggunakan resource memori yang banyak dan program-program yang jarang anda pakai. Kalau anda memang lagi mempunyai keuangan yang lebih baik lagi anda mengupgrade atau menambah kapasitas memori anda.
b. Hardisk penuh atau adanya Virus, untuk masalah virus sudah dibahas pada pembahasan di atas, sedangkan untuk hardisk yang penuh cara satu-satunya yaitu menghapus data-data anda yang tidak terlalu penting atau Kalau anda memang lagi mempunyai keuangan yang lebih baik lagi anda mengupgrade atau menambah kapasitas hardisk anda.
3. CMOS failure atau terjadi kesalahan penyebanya antara lain:
a. Beterai BIOS Rusak atau habis, yang dapat anda lakukan yaitu mengganti Baterai BIOS dengan yang baru.
b. Setingan BIOS berubah, yang dapat anda lakukan yatu mereset kembali setinagn BIOS anda.
4. PC anda tidak dapat booting, penyebabnya antara lain :
a. Cache memori processor anda rusak, hal yang dapat anda lakukan yaitu mendisable cache eksternal processor anda, namun hal ini dapat mengakibatkan PC anda akan berjalan sangat lambat.
b. Memori Tidak cocok, hal yang dapat anda lakukan sama dengan gejala pertama bagian a.
c. Terjadi kerusakan pada Sistem Boot operasi anda atau Boot sactor, hal yang dapat anda lakukan antara lain menginstal ulang oprating system anda atau memasukan oprating system yang baru.
d. Ada bad sactor pada track awal hardisk anda, hal yang dapat anda lakukan yaitu mempartisi ulang hardisk anda (lihat gejala pertama bagian d).
5. Terdengar suara bib panjang berkali-kali pada saat anda menyalakan PC anda, hal ini berarti bahwa terdapat kesalahan atau kerusakan pada memori anda, penyebabnya antara lain :
a. Memori rusak, hal ini dapat diperiksa dengan mencoba memori anda pada PC lain, apabila hal yang sama terjadi pada PC itu kemungkinan besar memori anda rusak, hal yang dapat anda lakukan yaitu mengganti memori anda dengan memori yang bagus.
b. Memori tidak cocok, hal yang dapat anda lakukan yaitu menganti memori (lihat gejala pertama bagian a).
c. Memori tidak masuk slot dengan benar, hal yang dapat anda lakukan yaitu meriksa slot memori lalu memasangnya dengan benar.
6. Computer anda hidup lalu mati pada beberapa menit kemudian, penyebabnya antara lain :
a. Power suplay anda telah kalah atau tidak dapat lagi menanggung kapasitas tenaga yang dibutuhkan PC anda, hal yang dapat anda lakukan yaitu mangganti power suplay anda dengan power suplay yang bagus, dengan kapasitas yang besar
b. Processor terlalu panas, hal dapat terjadi karena fan processor yang anda gunakan tidak berfungsi dengan baik, hal yang dapat anda lakukan yaitu:
i. periksa kabel power fan processor apa terpasang atau tidak, apabila tidak pasang kabel power processor pada slotnya.
ii. Fan atau kipas processor anda tidak berputar dengan baik, hal yang dapat anda lakukan yaitu ganti fan processor anda dengan yang bagus.
iii. Fan processor anda tidak terpasang dengan rapat, hal yang dapat anda lakukan periksa fan processor apabila goyang rapatkan kembali fan processor anda periksa kaki-kaki pengait processor apakah telah terpasang dengan benar.
7. Suara bib bagus tetapi tdak ada tampilan, penyebanya antara lain :
a. VGA card atau VGA onboard anda rusak, hal yang dapat anda lakukan yaitu mengganti VGA card anda dengan yang bagus.
b. Slot VGA tidak terpasang dengan sempurna, hal yang dapat anda lakukan yaitu memeriksa VGA card lalu mamasangnya dengan sempurna.
c. Apabila pada tampilan pada monitor anda baru hilang saat prosses booting selesai masahnya yaitu monitor anda tidak dapat mengangkat resolusi PC anda yang terlalu tinggi, hal yang dapat anda lakukan menggunakan monitor yang dapat mengangkat resolusi tinggi lalu mengebalikannya ke resolusi yang dapat diangkat oleh monitor anda.
8. I/O (input-output) disk error, penyebabnya yaitu system di hardisk rusak, hal yang dapat anda lakukan yaitu memperbaiki system I/O hardisk anda (hal ini hanya dapat dilakukan oleh teknisi ahli)
9. Floppy disk failure atau tida dapat dideteksi, penyebabnya antara lain :
a. I/O floppy disk rusak, hal yang dapat anda lakukan yaitu memperbaiki system I/O floppy disk.
b. Floppy rusak total, hal yang dapat anda lakukan yaitu mengganti Floppy dengan yang bagus.
c. Kabel floppy putus, hal yang dapat anda lakukan yaitu mengganti kabel floppy dengan yang bagus.
d. Tegangan power suplay tidak cukup, hal ini diakibatkan power suplai anda telah AUS, hal yang dapat anda lakukan yaitu mengganti power suplay anda dengan yang baru.
10. Motherboard mereset sendiri atau bahkan tidak bisa booting, penyebanyan antara lain :
a. Power suplay tidak normal, hal yang dapat anda lakukan yaitu mengganti power suplay anda dengan yang bagus, bila perlu dengan daya yang lebih jika anda mencurigai power suplay anda kekurangan daya.
b. Motherboard kotor, hal ini dapat mempengaruhi kinerja PC anda karena debu pada PC anda dapat menghambat pentransferan data pada PC anda, hal yang dapat anda lakukan yaitu membersihkan motherboard anda sebaiknya anda melakukan ini sebanya satu kali dalam sebulan.
11. Kapasitas hardisk anda tidak normal, hal ini dapat diakibatkan oleh setingan jumper I/O anda tidak benar , hal yang dapat anda lakukan yaitu memeriksa settingan jumper I/O anda pastikan sesuai dengan posisi hardisk anda.
12. Beberapa slot onboard tidak dapat berfungsi, penyebabnya natara lain :
a. Slot onboard anda rusak, hal yang dapat anda lakukan yaitu menggati phireperall onboard anda dengan phireperall card.
b. Setingan onboard tidak benar, coba periksa setingan onboard di BIOS PC anda, bila ada kesalahan maka perbaiki, atau bila perlu reset kembali setingan BIOS anda,
13. Tampilan dilayar ada huruf yang berkedip-kedip atau muncul garis, penyebabnya yaitu :
a. VGA card atau onboard anda rusak, hal yang dapat anda lakukan yaitu mengganti VGA card anda dengan yang bagus.
b. Monitor anda rusak, hal yang dapat anda lakukan yaitu mengganti monitor anda dengan monitor yang bagus.
14. Motherboard anda blank atau tidak ada reaksi sama sekali, penyebabnya antara lain :
a. BIOS pada motherboard anda rusak, hal yang dapat anda lakukan yaitu mengupgrade BIOS anda dengan tipe yang sama sebaiknya dengan versi yang terbaru.
b. Processor rusak atau terbakar, hal yang dapat anda lakukan yaitu ganti prosessor dengan processor yang bagus.
c. IC Regulator anda jebol, hal yang dapat anda lakukan yaitu ganti IC Regulator anda dengan yang bagus (sebaiknya dilakukan oleh teknisi ahli karena arsitektur pada motherboard sangatlah rumit bila ditangani oleh orang awam maka motherboard anda dapat rusak total).
d. IC Chipset anda rusak, hal yang dapat anda lakukan yaitu ganti IC Chipset anda dengan yang bagus (sebaiknya dilakukan oleh teknisi ahli karena arsitektur pada motherboard sangatlah rumit bila ditangani oleh orang awam maka motherboard anda dapat rusak total).
e. IC Reset anda rusak, hal yang dapat anda lakukan yaitu ganti IC Reset anda dengan yang bagus (sebaiknya dilakukan oleh teknisi ahli karena arsitektur pada motherboard sangatlah rumit bila ditangani oleh orang awam maka motherboard anda dapat rusak total).
f. IC Clock Processor anda rusak, hal yang dapat anda lakukan yaitu ganti IC clock Processor anda dengan yang bagus (sebaiknya dilakukan oleh teknisi ahli).
g. Terdapat kesalahan pada setingan jumper over clock, hal yang dapat anda lakukan yaitu mensetting ulang clock motherboard anda.
h. Memori rusak, hal ini dapat diperiksa dengan mencoba memori anda pada PC lain, apabila hal yang sama terjadi pada PC itu kemungkinan besar memori anda rusak, hal yang dapat anda lakukan yaitu mengganti memori anda dengan memori yang bagus.
i. Power suplay padam atau rusak total, hal yang dapat anda lakukan yaitu ganti power suplay anda dengan Power suplay yang bagus.
j. Soket power suplay anda longgar atau tidak terpasang, hal yang dapat anda lakukan yaitu periksa soket power suplay dengan benar lalu memasangnya dengan pas.
Demikianlah tutorial kali ini buat teman-teman yang ingin nambahin silahkan aja………..


Jumat, 23 November 2012

Input/Output with files

Input/Output with files

C++ provides the following classes to perform output and input of characters to/from files:

  • ofstream: Stream class to write on files
  • ifstream: Stream class to read from files
  • fstream: Stream class to both read and write from/to files.

These classes are derived directly or indirectly from the classes istream, and ostream. We have already used objects whose types were these classes: cin is an object of class istream and cout is an object of class ostream. Therefore, we have already been using classes that are related to our file streams. And in fact, we can use our file streams the same way we are already used to use cin and cout, with the only difference that we have to associate these streams with physical files. Let's see an example:

1
2
3
4
5
6
7
8
9
10
11
12
// basic file operations
#include <iostream>
#include <fstream>
using namespace std;

int main () {
  ofstream myfile;
  myfile.open ("example.txt");
  myfile << "Writing this to a file.\n";
  myfile.close();
  return 0;
}
[file example.txt]
Writing this to a file.


This code creates a file called example.txt and inserts a sentence into it in the same way we are used to do with cout, but using the file stream myfile instead.

But let's go step by step:

Open a file


The first operation generally performed on an object of one of these classes is to associate it to a real file. This procedure is known as to open a file. An open file is represented within a program by a stream object (an instantiation of one of these classes, in the previous example this was myfile) and any input or output operation performed on this stream object will be applied to the physical file associated to it.

In order to open a file with a stream object we use its member function open():

open (filename, mode);

Where filename is a null-terminated character sequence of type const char * (the same type that string literals have) representing the name of the file to be opened, and mode is an optional parameter with a combination of the following flags:

ios::inOpen for input operations.
ios::outOpen for output operations.
ios::binaryOpen in binary mode.
ios::ateSet the initial position at the end of the file.
If this flag is not set to any value, the initial position is the beginning of the file.
ios::appAll output operations are performed at the end of the file, appending the content to the current content of the file. This flag can only be used in streams open for output-only operations.
ios::truncIf the file opened for output operations already existed before, its previous content is deleted and replaced by the new one.

All these flags can be combined using the bitwise operator OR (|). For example, if we want to open the file example.bin in binary mode to add data we could do it by the following call to member function open():

1
2
ofstream myfile;
myfile.open ("example.bin", ios::out | ios::app | ios::binary); 


Each one of the open() member functions of the classes ofstream, ifstream and fstream has a default mode that is used if the file is opened without a second argument:

classdefault mode parameter
ofstreamios::out
ifstreamios::in
fstreamios::in | ios::out

For ifstream and ofstream classes, ios::in and ios::out are automatically and respectively assumed, even if a mode that does not include them is passed as second argument to the open() member function.

The default value is only applied if the function is called without specifying any value for the mode parameter. If the function is called with any value in that parameter the default mode is overridden, not combined.

File streams opened in binary mode perform input and output operations independently of any format considerations. Non-binary files are known as text files, and some translations may occur due to formatting of some special characters (like newline and carriage return characters).

Since the first task that is performed on a file stream object is generally to open a file, these three classes include a constructor that automatically calls the open() member function and has the exact same parameters as this member. Therefore, we could also have declared the previous myfile object and conducted the same opening operation in our previous example by writing:

 
ofstream myfile ("example.bin", ios::out | ios::app | ios::binary);


Combining object construction and stream opening in a single statement. Both forms to open a file are valid and equivalent.

To check if a file stream was successful opening a file, you can do it by calling to member is_open() with no arguments. This member function returns a bool value of true in the case that indeed the stream object is associated with an open file, or false otherwise:

 
if (myfile.is_open()) { /* ok, proceed with output */ }


Closing a file

When we are finished with our input and output operations on a file we shall close it so that its resources become available again. In order to do that we have to call the stream's member function close(). This member function takes no parameters, and what it does is to flush the associated buffers and close the file:

 
myfile.close();


Once this member function is called, the stream object can be used to open another file, and the file is available again to be opened by other processes.

In case that an object is destructed while still associated with an open file, the destructor automatically calls the member function close().

Text files

Text file streams are those where we do not include the ios::binary flag in their opening mode. These files are designed to store text and thus all values that we input or output from/to them can suffer some formatting transformations, which do not necessarily correspond to their literal binary value.

Data output operations on text files are performed in the same way we operated with cout:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// writing on a text file
#include <iostream>
#include <fstream>
using namespace std;

int main () {
  ofstream myfile ("example.txt");
  if (myfile.is_open())
  {
    myfile << "This is a line.\n";
    myfile << "This is another line.\n";
    myfile.close();
  }
  else cout << "Unable to open file";
  return 0;
}
[file example.txt]
This is a line.
This is another line.


Data input from a file can also be performed in the same way that we did with cin:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// reading a text file
#include <iostream>
#include <fstream>
#include <string>
using namespace std;

int main () {
  string line;
  ifstream myfile ("example.txt");
  if (myfile.is_open())
  {
    while ( myfile.good() )
    {
      getline (myfile,line);
      cout << line << endl;
    }
    myfile.close();
  }

  else cout << "Unable to open file"; 

  return 0;
}
This is a line.
This is another line.  


This last example reads a text file and prints out its content on the screen. Notice how we have used a new member function, called good() that returns true in the case that the stream is ready for input/output operations. We have created a while loop that finishes when indeed myfile.good() is no longer true, which will happen either if the end of the file has been reached or if some other error occurred.

Checking state flags

In addition to good(), which checks whether the stream is ready for input/output operations, other member functions exist to check for specific states of a stream (all of them return a bool value):

bad()
Returns true if a reading or writing operation fails. For example in the case that we try to write to a file that is not open for writing or if the device where we try to write has no space left.
fail()
Returns true in the same cases as bad(), but also in the case that a format error happens, like when an alphabetical character is extracted when we are trying to read an integer number.
eof()
Returns true if a file open for reading has reached the end.
good()
It is the most generic state flag: it returns false in the same cases in which calling any of the previous functions would return true.

In order to reset the state flags checked by any of these member functions we have just seen we can use the member function clear(), which takes no parameters.

get and put stream pointers

All i/o streams objects have, at least, one internal stream pointer:

ifstream, like istream, has a pointer known as the get pointer that points to the element to be read in the next input operation.

ofstream, like ostream, has a pointer known as the put pointer that points to the location where the next element has to be written.

Finally, fstream, inherits both, the get and the put pointers, from iostream (which is itself derived from both istream and ostream).

These internal stream pointers that point to the reading or writing locations within a stream can be manipulated using the following member functions:

tellg() and tellp()

These two member functions have no parameters and return a value of the member type pos_type, which is an integer data type representing the current position of the get stream pointer (in the case of tellg) or the put stream pointer (in the case of tellp).

seekg() and seekp()

These functions allow us to change the position of the get and put stream pointers. Both functions are overloaded with two different prototypes. The first prototype is:

seekg ( position );
seekp ( position );

Using this prototype the stream pointer is changed to the absolute position position (counting from the beginning of the file). The type for this parameter is the same as the one returned by functions tellg and tellp: the member type pos_type, which is an integer value.

The other prototype for these functions is:

seekg ( offset, direction );
seekp ( offset, direction );

Using this prototype, the position of the get or put pointer is set to an offset value relative to some specific point determined by the parameter direction. offset is of the member type off_type, which is also an integer type. And direction is of type seekdir, which is an enumerated type (enum) that determines the point from where offset is counted from, and that can take any of the following values:

ios::begoffset counted from the beginning of the stream
ios::curoffset counted from the current position of the stream pointer
ios::endoffset counted from the end of the stream

The following example uses the member functions we have just seen to obtain the size of a file:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// obtaining file size
#include <iostream>
#include <fstream>
using namespace std;

int main () {
  long begin,end;
  ifstream myfile ("example.txt");
  begin = myfile.tellg();
  myfile.seekg (0, ios::end);
  end = myfile.tellg();
  myfile.close();
  cout << "size is: " << (end-begin) << " bytes.\n";
  return 0;
}
size is: 40 bytes.


Binary files

In binary files, to input and output data with the extraction and insertion operators (<< and >>) and functions like getline is not efficient, since we do not need to format any data, and data may not use the separation codes used by text files to separate elements (like space, newline, etc...).

File streams include two member functions specifically designed to input and output binary data sequentially: write and read. The first one (write) is a member function of ostream inherited by ofstream. And read is a member function of istream that is inherited by ifstream. Objects of class fstream have both members. Their prototypes are:

write ( memory_block, size );
read ( memory_block, size );

Where memory_block is of type "pointer to char" (char*), and represents the address of an array of bytes where the read data elements are stored or from where the data elements to be written are taken. The size parameter is an integer value that specifies the number of characters to be read or written from/to the memory block.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// reading a complete binary file
#include <iostream>
#include <fstream>
using namespace std;

ifstream::pos_type size;
char * memblock;

int main () {
  ifstream file ("example.bin", ios::in|ios::binary|ios::ate);
  if (file.is_open())
  {
    size = file.tellg();
    memblock = new char [size];
    file.seekg (0, ios::beg);
    file.read (memblock, size);
    file.close();

    cout << "the complete file content is in memory";

    delete[] memblock;
  }
  else cout << "Unable to open file";
  return 0;
}
the complete file content is in memory


In this example the entire file is read and stored in a memory block. Let's examine how this is done:

First, the file is open with the ios::ate flag, which means that the get pointer will be positioned at the end of the file. This way, when we call to member tellg(), we will directly obtain the size of the file. Notice the type we have used to declare variable size:

 
ifstream::pos_type size;


ifstream::pos_type is a specific type used for buffer and file positioning and is the type returned by file.tellg(). This type is defined as an integer type, therefore we can conduct on it the same operations we conduct on any other integer value, and can safely be converted to another integer type large enough to contain the size of the file. For a file with a size under 2GB we could use int:

1
2
int size;
size = (int) file.tellg();


Once we have obtained the size of the file, we request the allocation of a memory block large enough to hold the entire file:

 
memblock = new char[size];


Right after that, we proceed to set the get pointer at the beginning of the file (remember that we opened the file with this pointer at the end), then read the entire file, and finally close it:

1
2
3
file.seekg (0, ios::beg);
file.read (memblock, size);
file.close();


At this point we could operate with the data obtained from the file. Our program simply announces that the content of the file is in memory and then terminates.

Buffers and Synchronization


When we operate with file streams, these are associated to an internal buffer of type streambuf. This buffer is a memory block that acts as an intermediary between the stream and the physical file. For example, with an ofstream, each time the member function put (which writes a single character) is called, the character is not written directly to the physical file with which the stream is associated. Instead of that, the character is inserted in that stream's intermediate buffer.

When the buffer is flushed, all the data contained in it is written to the physical medium (if it is an output stream) or simply freed (if it is an input stream). This process is called synchronization and takes place under any of the following circumstances:

  • When the file is closed: before closing a file all buffers that have not yet been flushed are synchronized and all pending data is written or read to the physical medium.
  • When the buffer is full: Buffers have a certain size. When the buffer is full it is automatically synchronized.
  • Explicitly, with manipulators: When certain manipulators are used on streams, an explicit synchronization takes place. These manipulators are: flush and endl.
  • Explicitly, with member function sync(): Calling stream's member function sync(), which takes no parameters, causes an immediate synchronization. This function returns an int value equal to -1 if the stream has no associated buffer or in case of failure. Otherwise (if the stream buffer was successfully synchronized) it returns 0.

Program String Array

// /3 /3 /3 Array /3 /3 /3
#include <iostream>
#include <string>
using namespace std;
void InputData(string (&angka) [3] [2])
{
    string nama;
    for (int a=0;a<3;a++)
    {
        cout << "Masukkan Nama Mahasiswa: "; cin >> angka [a] [0];
        getline (cin, nama);
        cout << "Masukkan Nilai Mahasiswa: "; cin >>angka [a] [1];
        getline (cin,nama);
    }
}
void main ()
{
    string angka [3] [2];
    InputData (angka);
    cout << endl;
    cout << "DATA MAHASISWA";
    cout << endl;
    cout << "\t ******************************** " <<endl;
    cout << "\t|\tNAMA\t|\tNILAI\t|"<<endl;
    cout << "\t ******************************** " <<endl;
    for (int a=0;a<3;a++)
    {
        cout << "\t|\t" << angka [a] [0] << "\t|"<< "\t" << angka [a] [1] << "\t|" << endl;
    }
    cout << "\t ******************************** "<<endl;
    system ("pause");
}

Program Mencari Bilangan Prima

// BILANGAN PRIMA

#include <iostream>
using namespace std;

void main()
{
int n, hitung=0, i=1, a=2;

    cout<<"Enter the n value\t= ";
    cin>>n;
if (a==2)
    {
        cout<<a<<"\n";
        a++;
        i++;
    }
while (i<=n)
    {
   for (int x=2; x<a; x++)
      {

      if (a%x==0)
          {hitung++;}
      }
     
   if (hitung==0)
      {
        cout<<a<<"\n";
        i++;
        a++;
   }
   else if (hitung>0)
      {a++;
      hitung=0;}

   }

return;
}

Senin, 19 November 2012

Motivasi buat yang galau :D

Cinta itu seperti kupu-kupu. Tambah dikejar, tambah lari. Tapi kalau dibiarkan terbang, dia akan datang disaat kamu tidak mengharapkannya. Cinta dapat membuatmu bahagia tapi sering juga bikin sedih, tapi cinta baru berharga kalau diberikan kepada seseorang yang menghargainya. Jadi jangan terburu-buru dan pilih yang terbaik.

Cinta bukan bagaimana menjadi pasangan yang "sempurna" bagi seseorang. Tapi bagaimana menemukan seseorang yang dapat membantumu menjadi dirimu sendiri.

Jangan pernah bilang "I love you" kalau kamu tidak perduli. Jangan pernah membicarakan perasaan yang tidak pernah ada. Jangan pernah menyentuh hidup seseorang kalau hal itu akan menghancurkan hatinya. Jangan pernah menatap matanya kalau semua yang kamu lakukan hanya berbohong.

Hal paling kejam yang seseorang lakukan kepada orang lain adalah membiarkannya jatuh cinta, sementara kamu tidak berniat untuk menangkapnya...

Cinta bukan "Ini salah kamu", tapi "Ma'afkan aku". Bukan "Kamu dimana sih?", tapi "Aku disini". Bukan "Gimana sih kamu?", tapi "Aku ngerti kok". Bukan "Coba kamu gak kayak gini", tapi "Aku cinta kamu seperti kamu apa adanya".

Kompatibilitas yang paling benar bukan diukur berdasarkan berapa lama kalian sudah bersama maupun berapa sering kalian bersama, tapi apakah selama kalian bersama, kalian selalu saling mengisi satu sama lain dan saling membuat hidup yang berkualitas.

Kesedihan dan kerinduan hanya terasa selama yang kamu inginkan dan menyayat sedalam yang kamu ijinkan. Yang berat bukan bagaimana caranya menanggulangi kesedihan dan kerinduan itu, tapi bagaimana belajar darinya.

Caranya jatuh cinta: jatuh tapi jangan terhuyung-huyung, konsisten tapi jangan memaksa, berbagi dan jangan bersikap tidak adil, mengerti dan cobalah untuk tidak banyak menuntut, sedih tapi jangan pernah simpan kesedihan itu.

Memang sakit melihat orang yang kamu cintai sedang berbahagia dengan orang lain tapi lebih sakit lagi kalau orang yang kamu cintai itu tidak berbahagia bersama kamu.

Cinta akan menyakitkan ketika kamu berpisah dengan seseorang lebih menyakitkan apabila kamu dilupakan oleh kekasihMu, tapi cinta akan lebih menyakitkan lagi apabila seseorang yang kamu sayangi tidak tahu apa yang sesungguhnya kamu rasakan.

Yang paling menyedihkan dalam hidup adalah menemukan seseorang dan jatuh cinta, hanya untuk menemukan bahwa dia bukan untuk kamu dan kamu sudah menghabiskan banyak waktu untuk orang yang tidak pernah menghargainya. Kalau dia tidak "worth it" sekarang, dia tidak akan pernah "worth it" setahun lagi ataupun 10 tahun lagi. Biarkan dia pergi...

Selasa, 13 November 2012

--- Perjalanan seekor Burung Pipit ---

 
Ketika musim kemarau baru saja mulai, seekor Burung Pipit mulai merasakan tubuhnya kepanasan, lalu mengumpat pada lingkungan yang dituduhnya tidak bersahabat. Dia lalu memutuskan untuk meninggalkan tempat yang sejak dahulu menjadi habitatnya, terbang jauh ke utara yang konon kabarnya, udara disana selalu dingin dan sejuk.

Benar, pelan-pelan dia merasakan kesejukan udara, makin ke utara makin sejuk, dia semakin bersemangat memacu terbangnya lebih ke utara lagi. Terbawa oleh nafsu, dia tak merasakan sayapnya yang mulai tertempel salju, makin lama makin tebal, dan akhirnya dia jatuh ke tanah karena tubuhnya terbungkus salju. Sampai ke tanah, salju yang menempel di sayapnya justru bertambah tebal. Si Burung pipit tak mampu berbuat apa apa, menyangka bahwa riwayatnya telah tamat.

Dia merintih menyesali nasibnya. Mendengar suara rintihan, seekor Kerbau yang kebetulan lewat datang menghampirinya. Namun si burung kecewa mengapa yang datang hanya seekor Kerbau, dia menghardik si Kerbau agar menjauh dan mengatakan bahwa makhluk yang to lol tak mungkin mampu berbuat sesuatu untuk menolongnya.

Si Kerbau tidak banyak bicara, dia hanya berdiri, kemudian kencing tepat diatas burung tersebut. Si Burung Pipit semakin marah dan memaki-maki si Kerbau. Lagi-lagi si Kerbau tidak bicara, dia maju satu langkah lagi, dan
mengeluarkan kotoran ke atas tubuh si burung. Seketika itu si Burung tidak dapat bicara karena tertimbun kotoran kerbau. Si Burung mengira lagi bahwa dia akan mati karena tak bisa bernapas.

Namun perlahan lahan, dia merasakan kehangatan, salju yang membeku pada bulunya pelan-pelan meleleh oleh hangatnya kotoran kerbau, dia dapat bernapas lega dan melihat kembali langit yang cerah. Si Burung Pipit berteriak kegirangan, bernyanyi keras sepuas puas-puasnya.

Mendengar ada suara burung bernyanyi, seekor anak kucing menghampiri sumber suara, mengulurkan tangannya, mengais tubuh si burung dan kemudian menimang nimang, menjilati, mengelus dan membersihkan sisa-sisa salju yang masih menempel pada bulu si burung. Begitu bulunya bersih, si Burung bernyanyi dan menari kegirangan, dia mengira telah mendapatkan teman yang ramah dan baik hati.

Namun apa yang terjadi kemudian, seketika itu juga dunia terasa gelap gulita bagi si Burung, dan tamatlah riwayat si Burung Pipit ditelan oleh si Kucing.

***

Dari kisah ini, banyak pesan moral yang dapat dipakai sebagai pelajaran, diantaranya :

1. Halaman tetangga yang nampak lebih hijau, belum tentu cocok buat kita.
2. Baik dan buruknya penampilan, jangan dipakai sebagai satu-satunya ukuran.
3. Apa yang pada mulanya terasa pahit dan tidak enak, kadang-kadang bisa berbalik membawa hikmah yang menyenangkan, dan demikian pula sebaliknya.
4. Ketika kita baru saja mendapatkan kenikmatan, jangan lupa dan jangan terburu nafsu, agar tidak kebablasan.
5. Waspadalah terhadap orang yang memberikan janji yang berlebihan.

(repost from:myquran.com)
Semoga Bermanfaat
Salam Santun Ukhuwah Karena_NYA

Minggu, 28 Oktober 2012

5 Trend Teknologi 2013

camaba-ndull  ~  Tren teknologi terus berubah dari setiap waktu ke waktu. Sejak memasuki era digital, perkembangan teknologi khususnya internet melaju sedemikian cepat. Setiap tahun ada inovasi baru atau pengembangan teknologi sebelumnya yang sangat tidak disangka-sangka dan cukup prospektif untuk lahan bisnis.

Untuk tahun 2013, lembaga riset Gartner memilih tren teknologi komputer yang akan booming. Banyak investor yang siap-siap banting setir untuk mengembangkan teknologi tersebut. Aplikasinya cukup luas, dari perakitan peranti keras yang memakan banyak modal hingga pengembangan software yang cukup dilakukan beberapa unit komputer.

Apa saja tren teknologi 2013 menurut Gartner? Ini lima di antaranya adalah sebagai berikut.

1. Perangkat mobile

Gartner memperkirakan penggunaan gadget mobile seperti telepon selular dan komputer tablet untuk akses internet bakal melampaui komputer konvensional. Sekitar 80 persen akses internet dilakukan melalui ponsel, terutama yang berbasis Windows dan Android. Tak heran penjualan ponsel-ponsel tersebut bakal mengungguli iPhone buatan Apple serta Blackberry.

2. Software mobile & HTML 5

Pamor HTML 5 didongkrak software-software dengan basis JavaScript. Aplikasi komputer konvensional pun bakal tergeser dengan program untuk gadget mobile yang lebih ringkas. 

3. Komputasi awan

Sejak diperkenalkan dua tahun lalu, komputasi awan atau cloud computing semakin merajalela. Sebab, bagi orang-orang dengan mobilitas tinggi, perangkat komputer dengan hard disk kapasitas besar sudah tak penting dan tak nyaman untuk dibawa.  

4. Koneksi internet 

Sambungan internet nirkabel menjadi kebutuhan utama setiap orang pada 2013. Karena segala pekerjaan sudah bersandar pada internet, keberadaan penyedia wi-fi atau hotspot sangat vital. Anda bisa terjun ke bisnis ini jika ingin meraup pasar yang masif.

5. App store

Gartner memperkirakan, pada 2013-2014 ada 70 miliar software mobile yang diunduh setiap tahun dari toko-toko aplikasi online atau app store. Pada periode yang sama, software tersebut tidak lagi digunakan secara individual melainkan oleh korporasi. Ini menjadi pasar yang sangat menggiurkan.

10 Perubahan Trend Teknologi 2012


Tahun 2011 menandai sejumlah "pergeseran". Event sekelas Consumer Electronics Show di Las Vegas Januari lalu telah  mengirim sinyal perubahan, yang kemudian diteruskan pameran sejenis di Eropa (Bonn) maupun Asia Tenggara (Singapura), akan menjadi tolok ukur trend teknologi untuk tahun 2012.
Sejumlah lembaga riset pasar juga menenggarai  bagaimana produk baru hadir sebagai kompetitor potensial, bahkan lanjut menggantikan pemimpin pasar sebelumnya.
Supaya ringkas dan sederhana, berikut kami pilihkan beberapa arus perubahan trend dalam sebuah ilustrasi terkenal kisah David sebagai sang penantang dan Goliath sebagai yang diunggulkan.
Mari kita liat rival-rivalnya : 

iPad vs Kindle Fire


Genap dua tahun iPad hadir di tengah konsumen dan masih menjadi Tablet paling populer. Statistik penjualan Apple menunjukkan angka 40 juta unit sejak pembukuan April 2010, sementara para pesaingnya harus bongkar pasang strategi pemasaran dengan tambahan berbagai fasilitas dan aplikasi.
Hingga Oktober tahun ini, Amazon dengan berani meluncurkan Kindle Fire, sebuah Tablet berkapasitas 8GB, dan difokuskan untuk menjelajahi literatur (e-books) di dunia maya. Harganya? Yeap, cuma $199!
Kindle Fire akan dikirim ke berbagai negara mulai 15 November 2011 dan diprediksi sanggup mengalahkan iPad dari segi angka penjualan dan popularitas, karena kalau berdasarkan spec nya jelas sangat jauh berbeda.

Tablet vs Laptop

Ada yang menyebut sekarang adalah masa "post-PC", artinya kita tidak lagi berinteraksi terpaku di depan sebuah monitor dan CPU terpisah, melainkan menjinjing laptop. Tapi, ibarat seumur jagung, booming laptop agaknya mulai beralih dengan munculnya Tablet PC. Akankah laptop begitu saja terpinggirkan oleh kehadiran device yang lebih praktis dan multifungsi? Hasil riset International Data Group memproyeksikan penjualan laptop tahun 2012 masih akan stabil, bahkan mengalami kenaikan tipis sekitar 11%.

Blackberry vs Android, iOS, WindowsPhone

Di awal 2010, RIM BlackBerry  menjadi smartphone paling populer di kawasan Amerika Utara (NA). Tapi belakangan ini, RIM seakan tak kuasa menghadapi besarnya "bayang-bayang" berbagai operating system lain di platform mobile : iOS (Apple), Android  dan yang teranyar Windows 7. RIM lantas berbenah dan langsung bermanuver dengan meng-uprgade operating system menjadi BBXOS.
Pada acara tahunan Blackberry di bulan Oktober lalu, para engineer RIM membocorkan kemungkinan penggunaan Android pada smartphone mereka. RIM yang berjaya sebagai perintis smartphone kini dalam posisi terjepit oleh 3 OS lainnya. Belum lagi jika di tahun 2014 nanti, Linux siap terjun meramaikan pasar smartphone.


Flash vs Html
Adobe Flash sebagai platform pemutar video di internet tampaknya tak lama lagi bakal tergantikan HTML 5. Dan siapakah yang dengan "jumawa" memulai revolusi ini? Yeap! Apple mensterilkan fitur flash dari setiap produk device iOS. Langkah serupa juga diikuti Microsoft, yang meniadakan Flash plug-ins pada browser seri terbaru mereka IE 10, yang disediakan untuk Windows 8.

Flickr vs Instagram
Berapa banyak di antara kalian yang sudah mengunggah (upload) foto melalui Flickr? Situs ini cukup ramah bagi para user dan jaringannya pun didukung sistem yang komprehensif hingga tak heran jumlah usernya sudah mencapai 51 juta akun ID. Di sisi lain, para pengguna iPhone baru saja "berbulan madu" dengan kamera ciamik pada iPhone4 yang dilengkapi fitur share melalui app Instagram.
Sebagai perbandingan, Instagram meraih 9 juta user dalam waktu sepuluh bulan (dan lebih dari 150 juta foto terupload), sementara Flickr selama 2 tahun baru membagikan 100 juta file foto. Bukan hanya itu, pengelola Flickr tambah harap-harap cemas karena situs indk mereka, Yahoo, juga hendak bersinergi untuk meluncurkan app berbasis Android untuk menyaingi Instagram.

Facebook vs Google+
Friendster sebagai pionir jejaring sosial bermetamorfosis menjadi portal game, sedangkan "sang penerus" Facebook justru menjadi platform bagi game-game browser. Di sinilah persimpangan itu. Tak ada hujan, tak ada badai, tiba-tiba Google berinisiatif menciptakan platform jejaring sosial bernama Google+. Lawan yang cukup tangguh bagi Facebook, mengingat kapasitas user yang sudah menggunakan berbagai aplikasi Google bisa sangat diperhitungkan.
Mampukah Google+ menggoyahkan kemapanan Facebook (?) yang menyentuh angka 800 juta user di seluruh dunia (dengan jumlah terbesar di negara-negara maju seperti AS, Inggris dan Eropa)?
Google jelas pantang mundur. Dan 40 juta akun user kini bisa saling berbagi dengan fitur-fitur khas dan semakin "personal" untuk menularkan "plus" satu sama lain. Hei, mengapa keduanya tidak bergabung saja menjadi Facebook (+) plus ??

HDD vs SSD
 Solid-state drives (SSDs) semakin jadi pilihan kebutuhan penyimpanan data (storage) di mobile device, juga laptop. Ukurannya yang mini dengan kapasitas luar biasa, membuat seri Intel Ultrabook dan Apple MacBook Air terlihat ramping. Sistem booting SSD berjalan cepat karena tidak mempengaruhi komponen moving parts, yang diyakini membuatnya lebih tangguh dibanding HDD.

Keyboard vs Voice Control
 Hampir 150 tahun yang lalu, dunia modern mengenal mesin ketik. Di era komputerisasi, perannya praktis tergantikan oleh keyboard sebagai input device ke PC. Dan, katakanlah ada puluhan vendor menjadi pemain di segmen peripheral ini. Lantas bagaimana ketika Google dan Apple memperkenalkan sistem input berbasis perintah suara (voice-based)?
Kini para pengguna Android berkenalan dengan Voice Actions sementara pemilik iPhone 4S dengar-dengar semakin "mesra" dengan Siri.
Bukan hanya di platform device, Google juga coba bereksperimen untuk mengintegrasikan Voice Action pada aplikasi browser mereka: Google Chrome. Harus diakui, teknologi ini belum sepenuhnya sempurna (dan mungkin juga kita sebagai pengguna belum terbiasa. Walau bagaimanapun, teknologi perintah suara sudah semakin membumi.

Mobile web vs Traditional web
Lagi-lagi hasil riset IDC (Internet Data Centre) jadi acuan dengan memproyeksikan bahwa di tahun 2015 mendatang mayoritas warga AS akan mengakses internet via mobile device ketimbang PC.
Yup! Lupakan monitor, mouse,keybord dan CPU. Di masa depan, performa smartphone (dan tentunya juga Tablet) akan semakin ideal mengakselerasikan content website dari internet.
Pemakaian internet bukan lagi sekadar gaya hidup, melainkan kebutuhan yang menyatu dalam ritme aktivitas.Ketersediaan mobile device secara massal (dan harga yang relatif kian terjangkau) akan mengubah pola dan gaya hidup kita.

Spotify vs iTunes
Musik bagian dari hidup. Apple iTunes telah merevolusi industri musik di tahun 2003 dengan menyediakan lagu-lagu yang bisa didownload dengan harga relatif murah.
Oke, di internet kita memang bisa mencari dan mendownload lagu-lagu yang diinginkan (via mediashare etc). Di tengah hilir-mudiknya hits single terbaru, Spotify (dan sejumlah portal layanan music subscription) mulai "merongrong" kedudukan iTunes dengan memberi akses ke "gudang" atau perpustakaan lagu, yang tidak perlu dibeli atau dimiliki, karena pengguna cuma butuh koneksi untuk streaming. Jadi, konsepnya mungkin lebih memudahkan kedua pihak; antara pengguna yang ingin mendengarkan lagu tersebut dan penyedia layanan memberikan akses, sekaligus meraih user tentunya.
Spotify mengklaim saat ini telah diakses lebih dari 10 juta ID user aktif, dimana 2 juta ID di antaranya memilih opsi berlangganan. Dari layanan subscribe (berlangganan) inilah Spotify berharap terus mengalirkan pundi-pundi dollar.