Pernah beberapa kali saya menerima emel dari beberapa orang kenalan yang bertanya bagaimana untuk menjadi web designer yang bagus. Secara jujurnya, saya sendiri pun tak dapat memberikan jawapan yang memuaskan hati mereka, sebab saya masih mengganggap diri saya masih dalam proses belajar. Tiada satu cara yang khusus dan mudah untuk menjadi the best. Semuanya memerlukan masa dan juga kesabaran yang cukup tinggi, dan ditambah dengan sifat ingin tahu yang sentiasa membuak-buak di dalam dada.

Tetapi, saya boleh berkongsi apakah keperluan dan kemahiran yang diperlukan untuk mencapai cita-cita itu. Di sini saya senaraikan beberapa benda penting yang anda perlukan jika anda ingin menjadi seorang web designer yang bagus.

1. Kuasai sepenuhnya HTML

Jangan sesekali pandang rendah kepada HTML kerana HTML merupakan kod-kod asas yang akan memaparkan output kepada pengguna melalui web browser. Tidak dinafikan ramai yang tidak mahir dengan HTML, tapi terus nak belajar server-side scripting seperti PHP dan ASP.NET. Itu salah! Tanpa HTML, output dari PHP atau ASP.NET hanya teks yang tiada format. HTML diperlukan untuk merangka struktur antaramuka laman web atau sistem kita.

Anda boleh bayangkan HTML seperti rangka sebuah rumah. Dengan menggunakan markup tertentu, kita hasilkan tingkap dan pintu untuk rumah tersebut. Tanpa rangka, rumah itu tidak boleh disebut rumah, ia hanyalah sebidang tanah kosong dengan longgokan kayu-kayan sahaja. Sama konsepnya dengan antaramuka sistem atau laman web, tanpa HTML ia hanyalah longgokan teks yang tidak tersusun dan tidak mempunyai makna.

Jadi, mahirkan diri anda dengan HTML sebelum anda mula belajar server-side scripting seperti PHP atau Ruby. Jika ada yang meminta saya mengajar PHP, tetapi mereka tiada asas HTML, saya akan suruh mereka kuasai HTML terlebih dahulu sebelum boleh belajar PHP.

Laman web untuk belajar:

  1. W3Schools – HTML
  2. W3Schools – HTML5

2. Kuasai sepenuhnya CSS

Jika HTML kita boleh anggap sebagai rangka rumah, CSS pula kita boleh anggap sebagai perhiasan untuk rumah tersebut, contohnya langsir, perabot, sangkar kucing, pasu bunga, dan lain lain elemen yang berfungsi mencantikkan rumah tersebut. CSS berfungsi untuk memberikan style kepada HTML yang kita gunakan.

Dengan menggunakan CSS, kita boleh tukar warna font kepada warna yang lebih menarik, tukarkan font asal kepada Comic Sans (yikes!), tambahkan imej menjadi background, susun kedudukan elemen-elemen yang terdapat di dalam antaramuka sistem kita, dan lain lain.

Cuba anda bayangkan Sime Darby menjual rangka rumah kepada anda, adakah anda berminat membelinya? Sekurang-kurangnya rumah tersebut mestilah mempunyai tingkap, pintu, bilik air, telah siap dicat, dan lain lain. Sama juga dengan sistem atau laman web yang kita ingin hasilkan. Tanpa styling yang mencantikkan sistem tersebut, pengguna sistem pastinya bosan atau tak berminat langsung untuk menggunakannya.

CSS merupakan satu keperluan yang wajib dipelajari jika anda ingin menjadi seorang web designer. Tidak kira apa jua aplikasi web yang anda ingin bangunkan, tidak kira apa jua server-side scripting yang akan anda gunakan, CSS tetap diperlukan oleh aplikasi itu.

Laman web untuk belajar:

  1. W3Schools – CSS
  2. W3Schools – CSS3

3. Belajar tentang Javascript

Walaupun Javascript bukanlah satu keperluan utama, tetapi saya sangat menggalakkan anda mempelajarinya. Ini kerana pada masa ini, penggunaan Javascript untuk memanipulasi elemen DOM pada antaramuka sistem menjadi salah satu ciri tambahan yang sangat berguna.

Cuba anda lihat pada Facebook anda, tengok apa yang terjadi ketika anda tekan link Like pada gambar atau komen kawan-kawan anda. Proses yang berlaku disebalik link tersebut ialah web browser anda akan menghantar requestkepada server Facebook yang memberitahu anda hendak Like gambar atau komen tersebut. Seterusnya, server akan merekodkannya dalam database dan kemudian menghantar maklumat itu kembali kepada web browser anda. Padaweb browser anda pula, satu kod Javascript akan dijalankan untuk menukar link Like tadi kepada Unlike, dan akan menambah nama anda di dalam senarai pengguna lain.

Semua proses ini berlaku tanpa perlu buka halaman yang lain di dalam Facebook. Inilah salah satu kegunaan utama Javascript, dan pengetahuan tentang language ini juga dapat membantu menaikkan nilai anda sebagai web designeratau web developer.

Laman web untuk belajar:

  1. W3Schools – Javascript

4. Mahirkan diri dengan Server-side Scripting

Server-side scripting yang popular pada ketika ini antaranya ialah PHP, Ruby dan ASP.NET. Di sinilah anda perlu menumpukan fokus utama anda kerana ianya merupakan bahagian utama untuk sesuatu laman web atau sistem. Pilihan saya ialah PHP dan saya tidak pernah menyesal bertukar dari .NET ke PHP. Tetapi ini tidak bermaksud .NET tidak bagus, cuma pada saya PHP lebih sesuai dengan cara saya (rasanya la..). Facebook juga menggunakan PHP untuk sistem mereka, jadi kita tidak boleh cakap yang PHP itu tidak bagus, betul kan.

Server-side scripting ini berfungsi untuk membuat sambungan ke database, menerima input dari pengguna, menghasilkan output dinamik yang diperlukan dan lain lain lagi. Tetapi setiap request yang diterima dari pengguna antaranya melalui web browser, yang mana ianya memerlukan HTML untuk membentuk formForm HTML ini akan menghantar request melalui method POST atau GET kepada server, seterusnya menterjemah request itu membentuk output yang diperlukan, contohnya menyimpan maklumat dari form itu ke dalam database. Semuanya dilakukan oleh server-side scripting seperti PHP.

Laman web untuk belajar:

  1. W3Schools – PHP
  2. W3Schools – ASP.NET
  3. Ruby Tutorial

5. Belajar menggunakan Photoshop

Saya rasa tidak perlulah saya kenalkan software ini kepada anda, ianya merupakan software yang sangat sangat sangat bagus yang berfungsi untuk membuat rekabentuk asas untuk sistem atau laman web. Anda juga boleh menggunakan software lain seperti Gimp (open source), Adobe Firework atau Pixelmator, asalkan ianya memenuhi keperluan anda.

Menyentuh tentang Photoshop, anda perlu ingat ianya satu software pelbagai fungsi yang mempunyai pelbagai tools. Ia boleh digunakan untuk membuat editing kepada gambar kahwin, dan ia juga boleh digunakan untuk membuat lakaran antaramuka sistem. Jadi anda kena tahu hala tuju pembelajaran anda. Jika anda lebih kearah fotografi, carilah guru yang boleh mengajar anda ke arah itu. Ini kerana Photoshop untuk web design sangat berlainan caranya berbading Photoshop untuk fotografi.

Kemudian, tambahkan ilmu anda dengan teknik terbaik menggunakan perisian ini, contohnya ialah menjaga aspect ratio semasa membesarkan atau mengecilkan imej. Seterusnya kuasai teknik menguruskan layer anda kepada groupyang bersesuaian. Biasakan diri dengan penggunaan Smart Object, Curve, Clone Stamp, Masking dan lain lain lagi.

Laman web untuk belajar:

  1. PSD TUTS+
  2. Tutorial 9 – Photoshop
  3. PSHero – Free Photoshop Tutorial

6. Belajar menggunakan Framework

Untuk mana-mana sistem yang saya perlu bangunkan untuk pelanggan saya, perkara pertama yang perlu saya fikirkan ialah apakah PHP framework yang sesuai. Kebiasaannya CodeIgniter mendapat tempat pertama dan CakePHP tempat kedua. Penggunaan framework sangat membantu mempercepatkan kerja pembangunan sistem dan banyak rujukan yang boleh kita dapatkan di Internet.

Ada yang tidak bersetuju dengan penggunaan framework ini atas alasan kita tak tahu apa proses yang berlaku di dalam framework. Betul, saya tak nafikan. Tetapi cuba fikirkan pada dunia realiti kita, adakah anda pernah cuba fikirkan apakah yang membuat kereta kita dapat bergerak di atas jalan, pernahkah anda kaji semua elemen dan proses yang berlaku di dalam enjin kereta tu? Tentu tidak, bukan? Sama juga dengan framework, ada sesetangah benda yang kita tidak perlu ambil tahu kerana ianya akan membuang masa kita. Tujuan utama menggunakanframework ialah mempercepatkan kerja kita, bukan membuat kajian proses yang berlaku setiap kali server menerimarequest dari pengguna sistem.

Jika ada yang cakap mereka suka hasilkan sendiri framework mereka untuk setiap sistem yang dibangunkan, saya tabik dan ucapkan tahniah atas usaha anda. Tetapi tidak suka re-invent the wheel. Takkan setiap kali tayar kereta saya botak, saya kena beli getah dan dawai untuk buat tayar sendiri. Baik gunakan yang dah siap sedia ada jual di kedai. Cepat dan selamat. Google yang besar itu pun menggunakan jQuery (Javascript framework) untuk aplikasi mereka, adakah anda jauh lebih baik dari Google?

Framework biasanya dibangunkan oleh developer dari serata dunia, setiap isu yang terdapat di dalamnya akan diperbaiki secepat mungkin, dengan bantuan dan kerjasama dari komuniti mereka. Jadi kita boleh pejam mata pada isu keselamatan pada framework itu kerana ianya telah diuruskan oleh pengguna seluruh dunia. Tetapi, dengan menggunakan framework yang kita buat sendiri, siapa yang akan tolong perhatikan dan buat testing pada kod tersebut? Adakah anda pasti kod itu selamat?

Jadi, belajarlah gunakan framework yang tersedia yang boleh digunakan secara percuma. Antaranya ialah:

  1. CodeIgniter
  2. CakePHP
  3. Fat-Free Framework
  4. Zend Framework

7. Selongkar dan kaji CMS

Seterusnya anda perlu belajar menggunakan CMS yang ada seperti Joomla!, WordPress, Drupal, Silverstripe dan lain lain lagi. Untuk projek laman web biasanya saya akan pilih CMS yang bersesuaian, sama ada Joomla! atau WordPress, bergantung kepada keperluan pelanggan.

Tujuan utama belajar CMS ialah untuk belajar fungsi-fungsi lain seperti Access Control List, User Management, Modules, Plugins, Components atau apa sahaja yang kita tidak pernah tahu sebelum ini. Dengan membaca, mengubahsuai dan mengkaji kod yang diberikan kita akan dapat belajar dengan lebih mendalam lagi teknik dan ilmu pembangunan sistem. Walaupun adakalanya kod-kod yang terdapat di dalam CMS tersebut sukar untuk kita fahami, tetapi jangan putus asa. Gunakan Google untuk mencari maklumat lanjut tentang bahagian yang kita tidak faham.

Anda sendiri pun pasti tahu, jika kita ingin belajar maka belajarlah dengan orang yang jauh lebih pandai dari diri kita sendiri. Tetapi adakalanya kos untuk belajar dengan mereka sangat mahal. Jadi kita boleh belajar dengan cara yang lebih mudah dan murah, melalui kod-kod aturcara yang terdapat di dalam CMS ini. Cuma ianya memerlukan kesabaran yang sangat tinggi kerana adakalanya kod-kod ini sukar untuk kita fahami.

Contoh CMS yang boleh anda gunakan:

  1. WordPress
  2. Drupal
  3. Joomla!

8. Elakkan menggunakan IDE

Penggunaan IDE di dalam menulis kod aturcara sangat membantu kita dan dapat mengelakkan berlakunya kesilapan. Tetapi penggunan IDE juga melambatkan proses pembelajaran kita. Elakkan menggunakan software seperti Adobe Dreamweaver, Aptana Studio, Eclipse, Netbeans dan lain lain lagi. Cuba gunakan text editor yang lebih ringkas seperti Sublime Text, PSPad, Notepad++, Geany, Gedit, Textmate, Vim dan lain lain.

Sebab utama ialah dengan menggunakan text editor seperti yang saya senaraikan di atas ini, jika berlaku sebarang masalah pada kod aturcara, kita perlu mencari kesilapan kod aturcara kita secara manual. Ini dapat membantu menbentuk kemahiran problem solving tanpa kita sedari. Selain daripada itu, ia juga dapat membiasakan kita menulis kod-kod aturcara tanpa bergantung kepada perisian tersebut. Latih diri anda mengingati kod-kod yang anda perlukan, dan hasilnya anda akan dapat menulis kod dengan lebih cepat dan di dalam masa yang sama kurang melakukan kesilapan.

9. Baca tutorial

Ramai yang masih belum tahu menggunakan Internet sepenuhnya. Ramai yang mengharap tunjuk ajar sacara terus dari seseorang tanpa perlu membaca. Cara ini pada saya tidak betul. Ini kerana tiada siapa di dalam dunia ini yang mampu mengajar anda 24 jam sehari dan sentiasa ada di sisi anda ketika anda memerlukan bantuan. Tetapi laman web yang menawarkan tutorial pula lain, ia sentiasa ada 24 jam sehari, 365 hari setahun.

Jika anda cuba temuramah mana-mana web designer atau web developer yang berjaya, mereka pastinya bersetuju bahawa belajar sendiri melalui tutorial dari laman web merupakan salah satu cara yang paling mudah dan murah untuk mencapai cita-cita anda. Saya sendiri belajar melalui Internet, dari scripting mIRC hinggalah ke PHP, semuanya saya dalami dari Internet.

Cuma anda perlu tahu, Internet merupakan gedung ilmu tanpa sempadan, dan ia juga gudang dosa tanpa sempadan. Anda perlu fokus pada objektif anda untuk belajar dan jangan cepat berputus asa. Hasilnya tidak akan datang dalam sekelip mata, tapi insya Allah ianya sangat berbaloi.

Antara laman web yang banyak menawarkan tutorial dan bahan bacaan yang bagus:

  1. Tuts+
  2. Six Revisions
  3. Smashing Magazine
  4. Design M.ag
  5. Naldz Graphics

10. Gunakan Google sebaiknya

Saya pernah menjalankan training pada beberapa agensi kerajaan sebelum ini, dan bila saya cakap kepada trainees supaya belajar gunakan Google, mereka ketawa. Mungkin ketawa kerana merasakan saya buat lawak, ataupun ketawa sebab terasa apa yang saya cakap itu sangat remeh.

Cuba anda ingat balik, berapa kali anda cuba cari penyelesaian tentang masalah sistem anda di Google dan tidak mendapat jawapan langsung. Pada saya, tidak pernah. Setiap kali saya cari pastinya dapat jawapan, cuma bukan jawapan 100% macam mana saya mahukan. Adakalanya setakat 30% sahaja, tetapi itupun sudah memadai. Kita kena faham jawapan yang kita dapat dari Google itu bukan penyelesaian masalah, tetapi lebih kepada memberikan kita idea bagaimana untuk menyelesaikan masalah itu. Bila dah dapat idea, kita kena kembangkan sendiri mengikut kesesuaian situasi yang kita hadapi. Jangan la harap orang suap terus masuk dalam mulut aje selalu.

Jadi, gunakanlah Google sebaiknya. Cuba gunakan kombinasi keyword yang berlainan untuk mencari jawapan yang anda perlukan, be creative.

11. Kongsi ilmu

Jika anda rasa anda mempunyai sesuatu untuk dikongsi dengan orang lain, mulalah dekatkan diri anda dengan blog. Menulis blog adakalanya dapat memberikan kepuasan jika betul gayanya. Kongsi ilmu anda dengan orang lain seperti yang ada pada blog saya. Anda tidak perlu jadi seperti blog-blog besar di luar sana, cukuplah sekadar menjadi tempat anda berkongsi ilmu yang anda ada. Jangan kedekut dengan ilmu yang dipinjamkan kepada kita. Lebih banyak kita kongsi, lebih banyak manfaat dan juga tawaran yang akan kita dapat. Percayalah, pintu rezeki anda sentiasa akan terbuka jika anda suka berkongsi ilmu dengan orang lain.

Kesimpulan

Bukan senang hendak senang dan bukan senang untuk jadi pandai, tetapi ia tidak mustahil. Luangkan lebih masa anda untuk belajar benda yang baru, banyakkan membaca blog-blog yang memberikan maklumat tentang bidang yang anda minat, dan kurangkan masa melepak sembang kosong kat mamak. Gunakan masa yang berharga itu untuk menjadikan diri anda lebih baik dari hari ini.