เริ่มต้นเขียนเว็บไซต์ เริ่มจากจุดไหนดี

ผมเป็นคนหนึ่งที่พอๆรู้เรื่องการเขียนเว็บแต่ไม่ค่อยรู้เรื่องภาษาต่างๆสักเท่าไหร่ ส่วนใหญ่ใช้โปรแกรมช่วยในการเขียนถ้าไม่ถูกใจก็ค่อยมาแก้ code เอาทีหลัง ไม่ค่อยเริ่มจากการเขียนจากภาษาโดยตรง ผมมีความรู้ด้านภาษา HTML บ้าง แต่ส่วนใหญ่ชอบหา code จากอินเตอร์เน็ตแล้ว นำมาประยุกต์ใช้ ส่วนภาษา php ก็ได้แค่ ติดต่อกับ mysql บ้างเล็กหน่อย ประมาณว่า เพิ่ม ลบ แก้ไข for if else

การเขียนเว็บของผมส่วนใหญ่ชอบใช้ Flash ร่วมกับ Phoshop ทำเป็น Home page เพราะมีความรู้อยู่บ้าง แต่ ภาษา AS2.0 กับ AS3.0 รู้เล็กน้อยมาก

ส่วนเว็บสำเร็จรูปต่างๆก็ใช้+ติดตั้งเป็น แต่ถ้าให้ไปแก้โค้ดโปรแกรม ก็ทำไม่เป็นเหมือนกัน

คำถามคือ จะเริ่มศึกษาตั้งแต่ตรงไหนดีครับ เพราะผมสนใจอยู่มากเหมือนกัน เช่น php, ajax, css, xml, java ,mysql, drupal และภาษาอื่นๆอีกมากมากมายที่สนใจ

หรือมีภาษาที่แนะนำผมอีกบอกมาได้เลยครับ

เออ เกือบลืม อีกภาษาหนึ่งที่สนใจอยู่คือ mxml ครับ ที่ใช้ Flex เขียน (จริงๆแล้ว ตั้งแต่เรียน ปวส มาเคยได้เรียนหลากหลายภาษามาก คือ Pascal C++ VB6 Java(OOB) html php ทั้งหมดที่เรียนมาได้ส่งคืนอาจาร์ยหมดแล้ว เพราะจบ ปวส มา ภาษาทั้งหมดที่เรียน มาต่อยตีกันในหัวหมดจะเขียนภาษาอะไรก็ สลับภาษาไปมา งงไปหมด)

Hiring! บริษัทที่น่าสนใจ

Carmen Software company cover
Carmen Software
Hotel Financial Solutions
Next Innovation (Thailand) Co., Ltd. company cover
Next Innovation (Thailand) Co., Ltd.
We are web design with consulting & engineering services driven the future stronger and flexibility.
KKP Dime company cover
KKP Dime
KKP Dime บริษัทในเครือเกียรตินาคินภัทร
Kiatnakin Phatra Financial Group company cover
Kiatnakin Phatra Financial Group
Financial Service
Fastwork Technologies company cover
Fastwork Technologies
Fastwork.co เว็บไซต์ที่รวบรวม ฟรีแลนซ์ มืออาชีพจากหลากหลายสายงานไว้ในที่เดียวกัน
Thoughtworks Thailand company cover
Thoughtworks Thailand
Thoughtworks เป็นบริษัทที่ปรึกษาด้านเทคโนโยลีระดับโลกที่คว้า Great Place to Work 3 ปีซ้อน
Iron Software company cover
Iron Software
Iron Software is an American company providing a suite of .NET libraries by engineer for engineers.
CLEVERSE company cover
CLEVERSE
Cleverse is a Venture Builder. Our team builds several tech companies.
Nipa Cloud company cover
Nipa Cloud
#1 OpenStack cloud provider in Thailand with our own data center and software platform.
Bangmod Enterprise company cover
Bangmod Enterprise
The leader in Cloud Server and Hosting in Thailand.
CIMB THAI Bank company cover
CIMB THAI Bank
MOVING FORWARD WITH YOU - CIMB is the leading ASEAN Bank
Bangkok Bank company cover
Bangkok Bank
Bangkok Bank is one of Southeast Asia's largest regional banks, a market leader in business banking
MuvMi (Urban Mobility Tech Co.,Ltd.) company cover
MuvMi (Urban Mobility Tech Co.,Ltd.)
Shape the future of urban mobility towards affordable, clean, and safe solutions
T.N. Digital Solution Co., Ltd. company cover
T.N. Digital Solution Co., Ltd.
TNDS has been involving in every first move of banking’s major digital transformation.
KBTG - KASIKORN Business-Technology Group company cover
KBTG - KASIKORN Business-Technology Group
KBTG - "The Technology Company for Digital Business Innovation"
Siam Commercial Bank Public Company Limited company cover
Siam Commercial Bank Public Company Limited
"Let's start a brighter career future together"
Icon Framework co.,Ltd. company cover
Icon Framework co.,Ltd.
Global Standard Platform for Real Estate แพลตฟอร์มสำหรับธุรกิจอสังหาริมทรัพย์ครบวงจร มาตรฐานระดับโลก
REFINITIV company cover
REFINITIV
The Financial and Risk business of Thomson Reuters is now Refinitiv
H LAB company cover
H LAB
Re-engineering healthcare systems through intelligent platforms and system design.
The Gang Technology Co., Ltd. company cover
The Gang Technology Co., Ltd.
We're a Digital Agency that helps our customers transform their business into digital with ease.
LTMH company cover
LTMH
LTMH มุ่งเน้นการพัฒนาผลิตภัณฑ์ที่สามารถช่วยพันธมิตรของเราให้บรรลุเป้าหมาย
Seven Peaks company cover
Seven Peaks
We Drive Digital Transformation
Wisesight (Thailand) Co., Ltd. company cover
Wisesight (Thailand) Co., Ltd.
The Best Choice For Handling Social Media · High Expertise in Social Data · Most Advanced and Secure
MOLOG Tech company cover
MOLOG Tech
We are Modern Logistic Platform, Specialize in WMS, OMS and TMS.
Data Wow Co.,Ltd company cover
Data Wow Co.,Ltd
We enable our clients to realize increased productivity by solving their most complex issues by Data
LINE Company Thailand company cover
LINE Company Thailand
LINE, the world's hottest mobile messaging platform, offers free text and voice messaging + Call
LINE MAN Wongnai company cover
LINE MAN Wongnai
Join our journey to becoming No.1 food platform in Thailand

KnightBaron Thu, 30/07/2009 - 00:54

ควรจะบรรลุ HTML, JavaScript, CSS อย่างถ่องแท้ครับ เพราะเป็นพื้นฐานของทุกเว็บ ส่วนที่เหลืออยากจะใช้อะไรขึ้นอยู่กับความถนัดกับรสนิยม

Yume Nikki

platalay Thu, 30/07/2009 - 01:13

HTML+CSS ให้ถ่องแท้และทะลุปุโปร่ง

โดยเฉพาะ CSS ถ้าอยากลองว่าตัวเองเจ๋งแค่ไหน ลอง http://www.csszengarden.com/ ไปโหลด html แล้วเขียน css เอง แล้วส่งไป

tk2008 Thu, 30/07/2009 - 02:26

notepad + html + css + javascript + IE

เหตุผลที่เป็น ie เพราะว่า เขียนโค้ดให้ทำงานได้กับ ie แล้วค่อยปรับให้ทำงานได้กับเบราวเซอร์ตัวอื่น ง่ายกว่าการให้ทำงานได้ในตัวอื่นแล้วค่อยมาปรับให้ทำงานได้กับ ie อันนี้เป็นเหตุผลส่วนตัวที่ผมใช้มาตลอด

aimakung Thu, 30/07/2009 - 08:32

ออกจะสนใจกว้างไปหน่อยครับ ระบุชัดเจนคงไม่ได้

ถ้าดูจากทักษะแล้วควรเพิ่มเติมส่วนที่ขาดๆ หน่อย ศึกษา php ขึ้นมาก่อน
หรือจะเลือก Optimize Flash ให้มีขนาดเล็กลงและมีประสิทธิภาพขึ้น

(เพราะหลายคนว่าทำเป็นแล้ว แต่ดันจัด Library ไม่เป็น สร้างงานสะเปะสะปะ กินหน่วยความจำได้อีก)

ดูจากการรับสมัครงาน หลังๆ เทรนด์การใช้ HTML จะเป็น Tableless มากขึ้น
เพราะเมื่อออกแบบ Layout ดีๆ โปรแกรมเมอร์จะไม่เหนื่อยมาก

เพื่อนผมตอนจบใหม่ๆ โดนด่าเรื่องนี้กันมากที่สุดครับ เนื่องจาก table ซ้อนเพียบ
(เพื่อผลทางการออกแบบ)
เวลาใส่พวก php จะยุ่งยากและมีโอกาสพลาดมากกว่า

ผมสรุปว่าคุณอยากทำส่วน Code ผมเสนอทางเลือกเป็นสองทาง

  1. ส่วน html : ให้ลองวาง layout แบบใช้แท็ก div ดู (ได้ก็ผ่านนะครับ)
    ศึกษา JavaScript (DOM + xmlHttpRequest = AJAX) และตบท้ายด้วย CSS Hack
  2. ไปทาง Flash/Flex : ให้ศึกษาลึกจนสามารถเขียนขึ้นใช้เองได้
    ข้อมูลด้าน Flash ผมมีน้อย แต่รอบตัวผมส่วนมากถ้ารัก Flash ก็จะตรงดิ่งเลย เพราะเทคนิคมันเยอะ

และทั้งสองทางไม่ควรลืมภาษา SQL ครับ เรื่อง Syntax ฟังก์ชั่นต่างๆ,
Nested Query และ Join เพราะหลายงานจำเป็นต้องใช้ DB

ตอนสัมภาษณ์งานผมว่าตัวที่หนักสุดจะเป็น SQL
เพราะตอนที่ไม่เข้าใจ กับตอนที่เข้าใจ ผลลัพธ์ออกมาราวฟ้ากับเหวเลย
ใช้ SQL เป็นแล้ว บางงานไม่ต้องเขียน php หรือ Flash มาจัดการเลย รับมาใช้ลูกเดียว :)

ป.ล. SELECT * .... ตัวดีเลย เห็นโค้ดหลายตัวดึงเกินความต้องการประจำ

Nozomi Thu, 30/07/2009 - 09:08

สำหรับผมนะ ... อาจจะไม่เหมือนคนอื่น

ก่อนอื่นเลย ก่อนจะเริ่มพัฒนาส่วนต่างๆของเว็บ ให้เอาเนื้อหามาดูก่อน พัฒนาส่วนติดต่อผู้ใช้ ให้ดีก่อนว่า UI ที่เราคิดขึ้น มันมี usability ที่ดีพอหรือยัง คนที่เอาไปใช้รู้สึกว่าพอใจไหม หาข้อมูลที่ต้องการได้เจอไหมในเวลาอันรวดเร็ว

วิธีการวัด usability ง่ายๆก็เช่น ทำเว็บ prototype เสร็จแบบไม่ต้องตกแต่งมาก แล้วให้คนลองหาข้อมูลอะไรที่ต้องการดู จับเวลาดูซิว่าใช้เวลานานเท่าไหร่ถึงจะเจอ เสร็จแล้วให้ User ประเมินว่า เต็ม 10 ให้ความง่ายในการหาข้อมูลเท่าไหร่ (อาจะจะได้ 5-6 สำหรับ prototype ตัวแรกๆ ถ้า User ไม่ลำเอียงเข้าข้างกันเอง)

ผ่านเรื่อง usability ก็มาพัฒนาเรื่องหน้าตาหลักในการออกแบบก็ตามใจชอบ มีหลายแบบ แต่ที่ควรเลี่ยงให้มากๆ ก็คือ Animation หวือหวานี่แหละ จะเป็น Gif Anime จะเป็น Flash ก็ตามเหอะ ... ดีไม่ดี ถ้าคนใช้ติดพวก Flashblock ไปด้วยเค้าก็จะไม่เห็นอีก ... ถ้าเราเอามันมาเป็นส่วนสำคัญอย่างพวก Navigator นั่นแหละ เค้าก็คงทิ้งไปดูเว็บอื่น (หรือไม่ก็คงเซ็งเป็ด แล้วไปสั่ง Disable Flashblock)

Html CSS JavaScript นี่ใช้ให้มากไว้ ยังไงก็เร็วกว่า Flash

เรื่อง Browser Compatible ถ้าจะจมอยุ่กับ IE6 ก็ไม่ว่าอะไรครับ แต่จะเอาไปใช้กับ Browser อื่นๆ ได้ยากมาก และแม้ว่าจะมีคนใช้มากที่สุด แต่ก็โดนตัดหางปล่อยวัดจากคนพัฒนาเว็บไซต์ดังๆ มากมายดูได้จากข่าวเก่าๆได้ครับ

ในขณะที่ถ้าเขียนมาตรฐานกลาง จะรันได้ในทุกๆ Browser ได้อย่างแทบไม่มีปัญหา ไม่ว่า่จะใช้ FF รุ่น1-2-3 ,Netscape, Opera, Safari รวมถึง IE7-8 จะมีปัญหาในรายละเอียดปลึกย่อยนิดๆเอง เช่น Form เป็นสี ไม่เป็นสี อะไรพวกนี้

NuttTaro Thu, 30/07/2009 - 09:41

ที่พวกท่านแนะนำให้เริ่มต้นส่วนใหญ่จะเป็น html, css, javascript
ขอบคุณมากครับ ผมจะค่อยๆศึกษา

But
เขียนเว็บตามมาตรฐาน w3c ต้องเขียนยังไงครับ
ให้ใช้ได้ทุก Browser ดีละครับ ผมเจอปัญหานี้มามากเลย

reply : aimakung
นั่นแหละครับ คือผมสนใจมากเกินไปจนไม่รู้จะเริ่มตรงไหนดี

ปกติผมจะเช็ค Browser หมด แต่จะไม่ซีเรียสขนาดเป๊ะๆ ทุก pixel นะครับ เอาแค่หน้าตาเหมือนกัน
วิธีที่ผมใช้ตอนนี้คือ ให้ทำเว็บที่ Firefox แสดงผลถูกต้องก่อน
แล้วค่อยไปดูโปรแกรมอื่นครับ โดยเฉพาะ IE มักจะเพี้ยนที่สุด

ตอนนี้มี Engine อยู่ 4 ตัว

  1. Trident (IE)
  2. Gecko (Firefox)
  3. Presto (Opera)
  4. WebKit (Chrome และ Safari เพราะบางจุดแสดงไม่ตรงกัน)

เลิกคิดว่าจะใช้ table ที่อ้างว่ามันแสดงผลคงที่กับ Browser ทุกตัว
...บางตัวมันก็เละครับ ยิ่งถ้าปิดแท็กไม่ตรงยิ่งเป็นเรื่องเลย

ปกติ Engine แต่ละตัวจะ Render ตามข้อกำหนดของ W3C
แต่แน่นอนว่ามันต้องมีเพี้ยนบ้าง เลยต้องเช็คมันทั้งหมด

ขั้นตอนที่ผมใช้เขียน HTML Layout (ขอเรียกแท็ก div ว่ากล่องนะครับ)

  1. (Design) วาด จะเป็นแบบตีกรอบแต่ละส่วนลวกๆ หรือจะใช้ Photoshop ก็ได้
    *** ถ้าวาดรายละเอียดเยอะจะตัดออกมาใช้งานได้เลย แต่เสียเวลามากขึ้น ใช้ตามความเหมาะสม
  2. (HTML) กำหนดชื่อกรอบแต่ละกรอบ (Div id) เช่น กล่องนี้เป็น header อีกกล่องเป็น sidebar ฯลฯ
  3. (CSS) วางตำแหน่งของกล่องหลักคร่าวๆ เบียดซ้ายขวา (float:) กำหนดขนาด อาจแต่งเติมสีสัน ใส่ BG ให้เรียบร้อย (ส่วนไหนของ BG เป็นสี เซ็ตเป็น background-color จะดีกว่าแปะ BG ทั้งหน้า)
  4. (HTML) ใส่กล่องสำหรับ content เข้าไปในกล่องหลัก เช่น กล่อง header มี logo, topmenu, banner, ฯลฯ
  5. (CSS Fix) พอกำหนดตำแหน่งของกล่องต่างๆ หมดแล้ว ก็ให้ลองใส่ Content เข้าไป และปรับแต่ง CSS อีกที

ตามมาตรฐาน W3C พวก CSS, Javascript ต้องแยกไฟล์ออกไปจากหน้าเว็บเพื่อให้แก้ไขได้ง่าย
แต่ช่วงที่จัด Layout ผมชอบวางในหน้าเดียวกันก่อน แล้วค่อยตัดแยกไฟล์อีกที

พอวางเป็นกล่องแล้ว เวลาเราแก้ property ของกล่องใน CSS ก็อ้างชื่อ id ที่เราใส่ไว้ตอนออกแบบ
property บางอันใช้บ่อย เราก็แยกออกมาแล้วกำหนดเป็นชื่อคลาสแทน หรือไม่ก็กำหนดครอบทั้งกล่อง

ส่วนของ WAI หรือการออกแบบให้รองรับกลุ่มคนพิการหรือ Browser ที่ไม่มีลูกเล่น CSS
ก็คือพยายามออกแบบให้เวลาตัด CSS หรือรูปออกหมดแล้ว ยังอ่านออกว่าเนื้อหาของหน้านั้นมีอะไรบ้าง
บางเว็บจะทำกล่อง link ด้านบนสุดให้สะดวกในการโดดไปส่วนต่างๆ ของหน้าด้วย
ในเวลาปกติก็ใช้ CSS ซ่อนกล่องไว้ (display:none)

อันนี้ตัวอย่างที่ผมยกให้เพื่อนๆ / น้องๆ ที่รู้จักกันศึกษาโครงสร้างโค้ดแบบ tableless
ตัวโค้ดสะอาดหน่อยเพราะยังไม่ได้อัด content แค่ลง sample เข้าไปอย่างเดียว

Sample Layout

CSS IE Hack ที่ใช้งานนี้คือ Underscore Hack
Property ตัวไหนที่จะไป Fix การแสดงผลของ IE จะเอา _ นำหน้าชื่อเลย
เทคนิคต่างๆ มีให้ใช้เยอะครับ เลือกเอามาซักอันก็พอ

(ส่วนตัวผมว่าเยอะมาก ตั้งใจจะทำเป็นเว็บอธิบายกันเลย)

จากที่เช็คคร่าวๆ ตัวอย่างอันนี้ใช้ได้ทุก Browser ครับ
ส่วนเรื่องค่าสีของรูป Opera จะแสดงสีเพี้ยนจากตัวอื่นมากที่สุด แต่เพี้ยนไม่เยอะครับ ไม่ต้องซีเรียส

ป.ล. reply ยาวไปหน่อย ไม่รู้ว่าจะเข้าใจรึเปล่า ^^'

bongikairu Thu, 30/07/2009 - 19:34

In reply to by aimakung

อ่า ไอ้เรื่องสีเพี้ยนนี่ เกี่ยวกับเรื่อง Color Profile หรือเปล่า เพราะเวลาผมทำเว็บ ไอ้พวก Element ต่างๆที่สีต้องตรงกับ Code ผมจะเอา Color Profile ออกครับ

Gear's Edge the Blog : http://www.gearsedge.in.th/

aimakung Fri, 31/07/2009 - 08:15

In reply to by bongikairu

Color Profile ของ Opera ไม่เหมือนชาวบ้านครับ
เอา Color Profile ออกจากรูปก็ยังเพี้ยนอยู่นิดหน่อย
eg. สีรูปจุดที่เป็น #e4e4e4 บน Opera อาจกลายเป็น #e3e5e6 เป็นต้น

ป.ล. มันเพี้ยนนิดเดียวครับ ต้องตาไวจริงๆ ถึงจะเห็น
(ผมใช้ Print Screen แล้วดูดสีมาเช็คครับ)

Gamo Thu, 30/07/2009 - 22:03

ตั้งโจทย์ให้กับตัวเองก่อน
ร่างโครงสร้าง
ใช้ Photoshop ลองทำตัวอย่างจนเป็นที่น่าพอใจ
กำหนดเทมเพลตที่จะต้องใช้ทั้งหมด

อื่น ๆ เป็นแค่ลูกเล่นพวกเชื่อมต่อกับฐานข้อมูลหรือภาษาสคริปท์ที่จะใช้

AronSun Sat, 01/08/2009 - 04:17

สำหรับผมมองว่าขึ้นอยู่กับความจำเป็นในการนำไปทำงานนะครับ งานที่ต้องทำมันจำเป็นต้องรู้อะไรบ้าง ก็เรียนรู้อันนั้น อันไหนยังไม่จำเป็นก็ยังไม่ต้องไปเรียนรู้ก็ได้ และรู้ลึกเพียงไม่กี่เรื่อง ดีกว่ารู้ผิวเผินหลายๆ เรื่อง อย่างพวก server-side script ก็เลือกเอามันซักตัว จะ PHP, JSP, ASP.NET ไม่ต้องไปเสียเวลาเรียนรู้ทั้งหมดหรอกครับ เลือกตัวไหนก็เอาให้เก่งๆ ไปเลย (ควรเลือกเทคโนโลยีที่มีอนาคตด้วย) เพราะความยากในการสร้างโปรแกรมและเว็บไม่ได้อยู่ที่ตัวภาษา แต่อยู่ที่ algorithm และการ design มากกว่าครับ