Google


Tag Archive for 'How To'

ทำความรู้ัจักกับ Revision Control System และ SVN

ทำความรู้จักกับ Revision Control System กันก่อน !

โดย Revision Control System ( หรือเรียกว่า Version control, Source control หรือ (source) code management (SCM) ก็ได้) คือ ซอฟต์แวร์ประยุกต์ที่มีความสามารถในการติดตาม และบันทึกประวัติการเปลี่ยนแปลงที่เกิด ขึ้นเกี่ยวกับการพัฒนาระบบใดระบบหนึ่ง ซึ่งมักจะเกี่ยวกับด้านซอฟต์แวร์ โดยจะบันทึกไว้ตลอดระยะเวลาของการพัฒนาซอฟต์แวร์ พร้อมทั้งระบุเวลาและรวบรวมรูปแบบที่เปลี่ยนแปลงไปทั้งหมดที่เกิดขึ้นตลอดเวลาของการพัฒนาด้วย

โดยหลักการของ Revision Control System ส่วนใหญ่มักใช้ Optimistic Technique ก็คือการให้ผู้ใช้หลาย ๆ คนสามารถเข้าถึง (Check out) (ซึ่งในที่นี้เราจะพูดถึง source code) อันเดียวกัน แต่ละผู้ใช้สามารถแก้ไขไฟล์ต่าง ๆ ที่ดาวน์โหลดมา และสามารถอัพโหลดไฟล์ (Check in/Commit) กลับเข้าสู่ Revision Control System โดยมันจะรับผิดชอบเรื่องการตรวจความขัดแย้งกันของข้อมูล (Conflict) ว่ามีใครแก้ไขไฟล์เดียวกันหรือไม่ ถ้ามีมันก็สามารถแสดงความแตกต่าง (Diff) ระหว่างไฟล์ และ/หรือทำการรวมไฟล์ (Merge) เข้าด้วยกันได้ แต่บางครั้งบาง Revision Control System ก็ใช้หลักการ Pessimistic Technique กล่าวคือเมื่อมีคนใดในทีมพัฒนาได้ทำการเข้าถึงและกำลังนำข้อมูลนั้นไปแก้ไข หรือเปลี่ยนแปลงคนอื่น ๆ ในทีมจะไม่มีสามารถเข้าถึงและทำการเปลี่ยนแปลงข้อมูลชุดนั้นได้จนกว่าคนที่นำไปแก้ไข หรือเปลี่ยนแปลงจะทำการอัพโหลดไฟล์กลับเข้าระบบดังเดิม แต่ระหว่างนั้นสามารถเข้าไปอ่านไฟล์นั้น ๆ ได้อย่างเดียว (แต่บางครั้ง Revision Control System บางยี่ห้อก็ไม่ยินยอมให้อ่านไฟล์ด้วย ขึ้นอยู่กับว่ายี่ห้อไหนจะนิยามการทำงานแบบ Pessimistic Technique เป็นแบบใด)

โดยการเก็บข้อมูลนั้นเราต้องมีการสร้างคลังข้อมูล (Repository) ซึ่งบางครั้งคลังข้อมูลนี้จะรองรับไฟล์แบบ ASCII และ Binary Files หรือไม่ขึ้นอยู่กับซอฟต์แวร์ Revision Control System จะรองรับหรือไม่ด้วย

ตัวอย่างเช่น เราพัฒนาซอฟต์แวร์ 1 ตัว โดยในทีมีคนร่วมพัฒนา 10 คน โดยทุกคนมีสิทธิ์ในการเข้ามาใช้ Revision System Control ได้หมด และในการพัฒนาซอฟต์แวร์ครั้งนี้มีไฟล์การพัฒนาอยู่หลายร้อนไฟล์ เมื่อมี 1 ในทีมพัฒนาชื่อ A ได้นำไฟล์ kernel.c ออกไป (Check out) ทำการแก้ไขเพื่อแก้ไขข้อผิดพลาด (Bug) เมื่อทำการแก้ไขเสร็จแล้วจึงนำกลับเข้าระบบ (Check in/Commit) ซึ่งทำกันเป็นปกติ โดยก่อนทำการนำกลับเข้าระบบมักจะมีการเขียนคำอธิบายไว้เสมอว่ามีการแปลงอะไรไปบ้าง (Log) แต่พอมีการแก้ไข interface.c โดยมีในทีมมีการทำการแก้ไขพร้อม ๆ กัน 2 คน ซึ่งได้แก่คนชื่อ B และชื่อ C โดยทำการนำไฟล์ interface.c มาแก้ไข  เมื่อ C นำไฟล์กลับเข้าระบบ จะทำได้ตามปกติ แต่พอ B จะนำกลับเข้าระบบจะมีการฟ้องว่าไฟล์ที่จะนำเข้าระบบเกิดความขัดแย้งของข้อมูล (Confilt) โดยทั่วไปแล้วจะทำการแสดงความแตกต่างก่อน (Diff) เพื่อดูว่าส่วนที่ตนเองแก้ไขไปนั้นมีส่วนใดที่ตรงกันหรือไม่ ถ้าไม่ตรงกันเลย และไม่มีผลกระทบกับระบบโดยรวม (เช่นแก้ไข function คนละตัวกัน) จะทำการ merge เข้าด้วยกันแล้วทำการนำเข้าระบบตามปกติ แต่ถ้ามีการแก้ไขแล้วเกิดความซ้ำซ้อนกัน มักจะทำการเปลี่ยนแปลงโค้ดโปรแกรมของตัวเองใหม่อีกครั้ง แล้วทำการนำเข้าระบบอีกครั้งนึง แต่บางครั้ง ส่วนใหญ่ถ้าไฟล์ที่เราแก้ไขนั้นเป็นไฟล์ระบบที่มีความหวั่นไหวต่อการเปลี่ยนแปลงก็มันจะ ปิดการนำไฟล์ออกมามากกว่า 1 คน (Lock) ก่อนเสมอ

โดยในบทความนี้เราจะพูดถึง SubVersioN (SVN) ซึ่งเป็น Open Source Application ที่ทำหน้าที่ Revision control ซึ่งได้รับความนิยมสูงมากตัวหนึ่ง โดยถูกสร้างขึ้นมาเพื่อทดแทนการทำงาน Concurrent Versions System (CVS) ที่เก่า, มีความสามารถจำกัด และใช้งานยาก (ผมจะไม่พูดถึง CVS มากนัก เพราะไม่ได้ใช้งานจริง)

ความสามารถคราว ๆ ที่มีมาใน SubVersioN (SVN) มีดังต่อไปนี้

  1. เป็น Revision Control System แบบ Optimistic Technique
  2. การ Check in/Commit จะเป็นแบบ Atomicity แบบเดียวกับ Database Management System (DBMS) ทั่ว ๆ ไป 
    * Atomicity เป็นหนึ่งในกฎ ACID (Atomicity, Consistency, Isolation and Durableness) ของ DBMS ที่รองรับการทำ Concurrency ซึ่งมีคำจำกัดความว่า "กลุ่มคำสั่งงานใดๆ ต้องได้รับการประมวลผลทุกคำสั่งงานทั้งหมดถ้าไม่มีข้อผิดพลาด  หรือไม่ได้รับการประมวลผลเลยถ้ามีข้อผิดพลาดเกิดขึ้น" กล่าวคือผู้ใช้งานไม่ต้องกังวลผลของการดำเนินงานที่ไม่สำเร็จ เนื่องจากส่วนจัดการการดำเนินงานจะทำการยกเลิกหรือทำซ้ำให้ผลลัพธ์ถูกต้อง ตัวอย่างเช่น รายการเบิกเงินจากตู้เบิกเงินอัตโนมัติที่ยังทำไม่สำเร็จเนื่องจากระบบเกิดขัดข้อง ส่วนจัดการการดำเนินงานจะยกเลิกรายงานเบิกเงินครั้งนั้น โดยปรับค่ายอดเงินคงเหลือกลับไปค่าเดิม เสมือนหนึ่งไม่มีการทำรายการเบิกเงินครั้งนั้นเลย เป็นต้น
  3. หมายเลขการเปลี่ยนแปลง (Revision number) เป็นแบบส่วนรวม กล่าวคือใช้หมายเลขการเปลี่ยนแปลงร่วมกันทั้งระบบ เพื่อง่ายต่อการจัดการและกันการสับสนของการเปลี่ยนแปลง
  4. สามารถเปลี่ยนชื่อ, คัดลอก, ตัด และลบไฟล์ โดยมีผลกับหมายเลขการเปลี่ยนแปลงหลักทั้งหมด
  5. รองรับไฟล์แบบ Binary files 
  6. รองรับ Apache HTTP server บนโปรโตคอล WebDAV/DeltaV โดยสามารถนำมาใช้ผ่านโปรโตคอลแบบ TCP/IP ได้ทำให้ลดปัญหาโดน Firewall ในเครือข่ายไม่ยินยอมให้ผ่านได้อีกด้วย โดยใช้ Apache HTTP server โดยผ่าน port 80 ซึ่งมักจะได้รับการยินยอมให้กระทำผ่าน Firewall ได้อยู่แล้ว
  7. รองรับการทำ Branching (Branches) และ Tagging (Tags)
  8. สามารถ Locking ในกรณีที่ต้องการเปลี่ยนแปลงข้อมูลระดับเข้มงวด (เช่นไฟล์ที่มีผลกับระบบมาก ๆ มักทำการ lock ไว้ก่อน เพื่อป้องกันการ merge ไฟล์แล้วมีข้อผิดพลาดใหม่ ๆ หรือข้อมูลนั้นไม่เหมาะให้มีการแก้ไขหลาย ๆ คนในเวลาเดียวกัน)
  9. รองรับ MIME เต็มรูปแบบ
  10. เป็น Open Source licensed ในชื่อ "CollabNet/Tigris.org Apache-style license"

ครั้งต่อไปเราจะมาทำการติดตั้ง SVN Server บน Windows ภายใน 10 นาทีกันนะครับ ;)

อ้างอิง

Beginner’s Essential Guide: How to be a PROs in 90 Days (คู่มือการเป็นเทพใน 90 วัน)

จาก : http://www.pantip.com/cafe/camera/topic/O4373460/O4373460.html

- ไปฝังตัวใน webboard ที่มีคนนิยมมากๆ (ถ้าในโต๊ะกล้องนี่เลือกห้องที่สมาชิกเยอะๆ หน่อย อย่าง นิคอน แคนนอน โอลิมปัส พานา โซนี่)

- เริ่มต้น ตอบกระทู้ไปเรื่อยๆ

- ระยะแรก ให้ไปตอบในคำถามของคนอื่นก่อน เพราะเขายังไม่รู้จักเรา

- เน้นการตอบฟันธง ของคำถามที่ว่า "ซื้อกล้องอะไรดี"

- ตอบให้มากที่สุด เท่าที่จะมากได้

- ตอบ ถูก หรือ ผิด อย่าไปสน คนถาม และคนตอบส่วนใหญ่ ก็ไม่เคยใช้หรอก คุณบอกยังไงเขาก็เชื่อ

- ใครไม่เชื่อก็ช่างหัวมัน คุณเดินหน้าสร้างภาพไปเรื่อยๆ อย่าไปสนอะไร

- ไม่ต้องไปกังวลว่า คุณจะเคยใช้ เคยรู้จัก ไอ้กล้องตัวนั้นมาก่อนหรือไม่ มั่วตอบไปเลย ไม่ต้องสนใจ ไม่มีใครรู้หรอกว่าคุณมั่วตอบ

- สำนวนก็ไปจำมาจากพวกรุ่นเดอะที่อยู่วงการมานาน ลอกข้อมูลบางส่วนจากเขามา สำนวนนั้นอย่าลอก 100% ต้องหาเอกลักษณ์ของตนเองไว้ก่อน
แผนการทำมาหากิน ยังอีกยาวไกล อย่าคิดสั้นเป็น โคลนนิ่งของใคร

- จงพยายาม แสดงอิทธฤทธิ์ ปาฎิหารย์ เมื่อโอกาสอำนวย อะไรก็ได้ ที่คุณเห็นว่า จะแสดงถึงความสามารถอันพิเศษเหนือคนธรรมดาของคุณ แสดงไปเลย
ใครมาค้าน ให้ด่ากลับว่า "ตาไม่ถึง", "ไม่รู้จริง", "เกรียน", "ป่วน" แสดงไปสักพัก จะมีสาวกมาขึ้น ก้มกราบกรานประหลกๆ

- ระยะแรก การยอมรับยังไม่ดีนัก แต่ให้รอประมาณ 3 เดือน ชื่อของคุณจะติดอันดับยอดนิยม และพุ่งขึ้นไปเรื่อยๆอย่างรวดเร็ว

- ปฎิกิริยาลูกโซ่ ก็จะเกิดขึ้นโดยอัตโนมัติ คุณยิ่งตอบฟันธงมาก คนก็ยิ่งถามโดยเจาะจงชื่อคุณ
หน้าใหม่ๆเข้ามา เห็นคนอื่นถามคุณมากๆ ก็จะเชื่อไปโดยอัตโนมัติว่าคุณเป็น "เทพ" จุติมาจากสวรรค์ แน่นอน

- หากโดนค้าน โดนแย้ง ให้หาทางด่ากลับทันที ป่วนได้ป่วน ด่าได้ด่า ปลอมตัวเป็นหน้าม้ามาด่า ด่าให้ไอ้คนที่มาคัดค้านคุณ ล่าถอยไปเอง เพราะความเหนื่อยหน่าย

- จำไว้ สถานะของคุณคือเทพ คุณคือความถูกต้อง คุณคือสิ่งที่แตะต้องไม่ได้ คุณว่าอะไรทุกคนต้องเชื่อ ต้องฟัง ต้องทำตาม
ใครไม่เห็นด้วยกับคุณ คนนั้นคือคนเลว คนนั้นคือเล่นไม่เป็น สะเออะมาเถียงเทพอย่างคุณ

- ใน 90 วัน ถ้าคุณทำได้เช่นนี้อย่างเคร่งครัด คุณจะสามารถแจ้งเกิดในวงการได้ทันที

- รอให้เกิดการบ่มตัวที่เหมาะสม สัก 6-12 เดือน คุณค่อยๆวางแผนในการเก็บเกี่ยวผลประโยชน์ได้

- ผลประโยชน์คือ การเจรจา ขอค่าหัวคิว ขอเปอร์เซ็นต์ ทุกอย่างที่ได้เงิน ทำไปเลย

- หากเป็นไปได้ หาทางไปเป็นนักเขียนในนิตยสาร

- หาทางสร้างชื่อเสียงต่อไป ทีนี้คุณมี "ช่องทางการจัดจำหน่าย" ที่มีประสิทธิภาพกว่าเดิมแล้ว อย่าลืม เก็บเกี่ยวผลประโยชน์ให้มากขึ้นไปอีก

- เปิดตัวต่อคนในวงการให้มากที่สุด คบทุกคนที่ขวางหน้า อย่าขัดแย้งกับใครเด็ดขาด ยกเว้นในกรณีที่มีคนมาโจมตีสถานะความเป็นเทพของคุณ

- หากคุณทำสำเร็จไปอีกระดับหนึ่ง หาทางออกมาตั้งนิตยสารเป็นของตัวเอง เพื่อเก็บเกี่ยวผลประโยชน์ให้เต็มเม็ดเต็มหน่วยมากขึ้น
อย่าไปสนใจการขัดแย้งกับทีมงานเดิม มันด่ามา เราด่ากลับ ด่าเสร็จแล้ว ก็ตีสองหน้าว่า "ผมไม่คิดอะไร ผมไม่ถือ ผมไม่ได้ขัดแย้ง ผมให้อภัย ไม่ได้ด่าเขาสักหน่อย"
อ้อนได้อ้อน "ผมโดนโจมตี ผมโดนใส่ร้าย"

- ขอแสดงความยินดีด้วยครับ คุณจบหลักสูตรการเป็นเทพโดยสมบูรณ์แล้ว

นำมาจากบทความของสมาชิกผู้ใหญ่ใน ThaiAVClub.com (รู้สึกว่าจะเป็นคุณ nattapong มั้ง ขออภัยถ้าจำผิด) ดัดแปลงบางส่วน เพื่อให้เข้ากับโต๊ะกล้อง

ใครอยากเป็นเทพมั่งเนี่ย
ถ้าใครอยากเป็นละก็ "เกรียน" ตัวจริงเลยแหละ
ขอมอบประกาศนียบัตรให้ อิ อิ


คลิ้กที่รูปเพื่อดูภาพใหญ่

ปรับแต่งให้ Mozilla Firefox 1.5 ใช้ภาษาไทยอย่างสมบูรณ์

Mozilla Firefox 1.5 เปิดตัวในวันที่ 30 พฤศจิกายน 2005 (ตามเวลาประเทศไทย) อยากทราบว่าใน Version ใหม่นี้มีอะไรบ้าง เข้าไปอ่านได้ที่ ความสามารถใหม่ใน Mozilla Firefox 1.5

สำหรับการปรับแต่งภาษาไทยสำหรับ Mozilla Firefox 1.0.x เข้าที่หน้า ทำให้ Mozilla Firefox ใช้ภาษาไทยอย่างสมบูรณ์ ครับ

"สามารถก็ดาวน์โหลด Mozilla Firefox ได้จาก Firefox - Rediscover the web ขนาดประมาณ 5MB เท่านั้นเองครับ"

  1. ไปที่ Tools ที่ menu bar ด้านบน และไปที่ Options
    1.jpg
  2. เมื่อ Dialog Box ชื่อว่า Option ให้ไปที่ Tab ชื่อว่า Content

  3. ที่ Group Box ชื่อว่า Fonts & Colors  ให้ตั้ง Default Font เป็น Tahoma และปรับ Size (ขนาด) เป็น 16 และเลือกที่ Advanced
  4. จะปรากฤ Dialog Box ที่ชื่อว่า Fonts ที่ Fonts for ให้ปรับเป็น Thai
    • Properional ปรับเป็น Serif
    • Serif ให้ปรับเป็น Tahoma
    • Sans-Serif ให้ปรับเป็น Tahoma
    • Monospace ให้ปรับเป็น Tahoma

    ที่ Group Box ชื่อ Character Encoding ให้ปรับ Default Character Encoding เป็น Thai (TIS-620) แล้วกดปุ่ม OK เมื่อเสร็จสิ้น

  5. ไปที่ Tab ชื่อว่า Advanced
    ที่ Group Box ชื่อว่า Language ให้เลือกที่ Edit Languages
  6. จะปรากฎ Dialog Box ชื่อว่า Languages ที่ Drop-DownList ให้เลือก Thai [th] แล้วกดปุ่ม Add แล้วปรับ Move Up ให้ Thai [th] ให้ย้ายขึ้นไปบนสุด แล้วกด OK เมื่อเสร็จสิ้น
  7. กด OK อีกครั้งเพื่อออกจาก Dialog Box ชื่อว่า Options
  8. ที่ Menu bar ให้เลือกที่ menu ชื่อว่า View แล้วเลือกที่ Charater Encoding ตามด้วย Customize List

  9. จะปรากฎ Dialog Box ชื่อว่า Customize Character Encoding ที่ List Box ชื่อว่า Available Character Encoding ให้เลือก Thai (ISO-8859-11), Thai (TIS-620) และ Thai (Windows-874) และกดปุ่ม Add

    จะปรากฎ Character Encoding ที่เราเลือกที่ ด้าน List Box ชื่อว่า Active Character Encoding แล้วทำการย้ายให้เรียงตามภาพ โดยใช้ปุ่ม Move Up หรือ Move Down แล้วกดปุ่ม OK เมื่อเสร็จสิ้น

  10. ตอนนี้เราก็สามารถใช้ Firefox 1.5 เพื่อแสดงผลภาษาไทยได้อย่างสมบูรณ์แบบแล้ว ;-)

จะซื้อคอมฯ ทั้งทีตอบคำถามนี้ก่อนซื้อครับ

หลักส่วนใหญ่ที่ถามก็มี 3 ข้อ คือ

1. ซื้อไปใช้งาน หรือทำอะไร บ้าง ?
    นี่เป็นสิ่งที่ผมถามคนที่มาถาม spec คอมฯ ผมทุกคน ก่อนเสมอครับ แล้วส่วนใหญ่จะตอบกันไม่ได้ เพราะว่าไม่ได้ศึกษามาก่อน หรือประมาณว่าอยากซื้อมาใช้เลย เหมือนกับไปซื้อข้าวแกง เห็นๆ ว่าอร่อยก็ซื้อมาเลย ไม่สนใจว่ามันจะสะอาด หรืออร่อยหรือเปล่า ดูแค่มันสีสัน กลินที่ ok ก็ซื้อเหมือนกับ เรื่องนี้ที่โฆษณามาก่อน ดูดี ลงหนังสือดัง แล้วก็ตัดสินใจเลย ไม่ได้ศึกษาว่ามีข้อดีข้อเสียในด้านใดบ้าง แล้วคำตอบส่วนใหญ่ก็คือ "ก็เอาที่มันใช้งานได้ดีๆ แล้วอยู่นานๆ ไม่ตกรุ่น" ซึ่งผมก็ปวดหัวและ ตอบกลับไปว่า ไอ้ไม่ตกรุ่นไม่มีครับ บอกไปเลยว่า ยกจากร้านก็ตกรุ่นและ ราคาตกไปเกือบครึ่งแล้ว ซึ่งก็เป็นไม่ว่าจะ Desktop, Laptop หรือ Server ผมอยากจะบอกแบบนี้ว่า งานแต่ละอย่างนั้น spec ในแต่ละแบบนั้นไม่ได้ตอบสนองงาน หรือสิ่งที่ทำได้ทุกๆ อย่างเสมอไปครับ ผมว่าควรดูงานที่คุณเอาไปใช้งานก่อนเสมอครับ แต่พวกดูหนัง/ฟังเพลงนี่ ในปัจจุบันมันทำได้อยู่แล้วครับไม่ต้องมาถามครับ spec ICT เครื่องละหมื่นก็ดูหนัง/ฟังเพลง ได้ครับ

2. ซื้อเผื่ออนาคตมากไหม ?
    นี่เป็นสิ่งที่ผมจะถามและ บอกเพื่อนๆ พี่ๆ หรือคนที่มาถามผมตลอด ซื้อเผื่อแล้วไม่ได้ใช้เสียดายเงินครับ บางคนแย้งว่าก็อาจจะได้ใช้ นี่ผมแนะนำไปส่วนใหญ่ไอ้เผื่อๆ ได้ใช้กัน 10 % ของคนที่มาถามทั้งนั้น ส่วนใหญ่ ไม่ได้ใช้กันหรอก เสียดายเงินครับ แล้วเรื่องจะ upgrade ไม่ต้องคิดครับ เดี่ยวนี้เปลี่ยนรุ่น CPU ทีเปลี่ยน m/b ทีครับ เลิกหวังจะ upgrade ได้สูงๆ ได้เลย หรือบางครั้ง upgrade กับซื้อใหม่ยกชุดราคาๆ พอๆ กันครับ ในปัจจุบันอายุการใช้งานของอุปกรณ์ไอทีนั้นส่วนใหญ่อยู่ที่ 3 ปีเสียส่วนมากครับ ใช้เต็มที่ก็ 5 - 6 ปีครับ (ถ้าทนใช้ได้นะ)

3. spec ที่ใส่ลงไปในการซื้อ
    ผมอยากให้ระบุชัดๆ ก่อนว่าไปใช้ทำงานอะไรในข้อที่ 1 ครับ แล้วจะเผื่ออะไรบางในบางส่วน ดังข้อที่ 2 ครับ เช่นพวก RAM หรือ Hard Drive ก็พอครับ ส่วนพวก VGA Card หรือ CPU อะไรพวกนี้ก็ตามกำลังที่จะซื้อดีกว่าครับ บางคนซื้อมาพิมพ์งาน ดูหนัง ฟังเพลง ซึ่งไม่ต้องใช้ความสามารถมากก็เอาแค่ Intel Celeron หรือ AMD Sempron ก็พอครับ ผมว่าเร็วพอแล้ว บางครั้งขนาดเล่นเกมส์ก็ยังพอเลย แต่ส่วนใหญ่ยัด Intel Pentium 4 หรือ  AMD Athlon XP ให้แพงเข้าไปเหอะ แต่ไม่ได้ใช้ความสามารถของมันมากเท่าไหร่นัก เสียดายเงินครับ แถมเสียดุลการค้าเข้าไปอีก นี่ยกตัวอย่างแค่ CPU ครับ ส่วนอื่นก็คงตัดสินใจหาข้อมูลดูนะครับ (ส่วนถ้ามีเงินซื้อก็ตามใจครับไม่ว่ากัน)

    ทิ้งท้ายไว้ครับ เรื่องที่ซื้อกันมาแต่ง หรือทำให้เครื่องแรงด้วยการ OverClock ผมไม่ได้ต่อต้าน หรือสนับสนุน นะครับ แต่นี่เป็นสิ่งที่อยากให้พินิจพิเคราะห์ว่า คนบางคน หรือบางกลุ่มนั้นมาแต่งครับ หวังแรง หวังแข่งประชันกัน เหมือนคนซื้อรถครับ แล้วเอามาแต่งความแรงแข่งกัน เดี่ยวนี้พวกอุปกรณ์ไอที ก็เป็นแบบนั้นแทบไม่ต่างกันแล้วครับ ซื้อหวังแข่งความไฮเทค แล้วมาทดสอบความแรง ความเร็วจากโปรแกรม Benchmark กันครับ ผมเสียดายประสิทธิภาพที่ซื้อมาแต่เอาทำคุณประโยชน์เพียงน้อยนิดครับ แต่บางคนแต่งให้สวยงามแล้ว ยังเอามาทำงาน ทำมาหากินด้วยนี่ น่ายกย่องครับ แต่ถ้าซื้อมาประชัดขันต่อกันเพียงเพื่อความซะใจอย่างเดียวนี่ผมก็ไม่สนับสนุนครับ อยากให้ซื้อ spec ที่คุณคิดว่าเหมาะสม และทำงานได้กับคุณในราคาที่เหมาะสมดีกว่าครับ เงินทองยิ่งหายากๆ อยู่ครับผม

ซื้อให้เหมาะสมกับตัวเอง และงานที่ทำครับ มองที่ประสิทธิภาพในการทำงานมากกว่า ภาพลักษณ์ของตัวเองครับ ค่าของเครื่องมือจะมากหรือน้อย ขึ้นอยู่กับคนใช้ครับว่าจะใช้มันสร้างผลงานได้ดีเพียงใดครับ เหมือนกับจอมยุทธมีกระบี่ดี แต่เพลงกระบี่ และฝีมือปลายแถว ก็ไม่ต่างจากคนมีอุปกรณ์ไอที ดีๆ รุ่นใหม่ๆ แต่ใช้ไม่เป็นครับ

แต่ผมก็คงวิภาควิจารณ์มากไม่ได้ครับ เพราะบางคนซื้อเพราะความสุขทางใจ จริงแมะ ;-)

ด้านล่างนี่ผมเจอในเว็บบอร์ดดังแห่งหนึ่งครับ กล่าวไว้ได้น่าสนใจดีมากครับว่า

"เทคโนโลยีก็เหมือนศาสนาถ้าใครไม่เชื่อก็จะถูกหาว่านอกรีต intel กับ AMD ก็เหมือน 2 นิกายใหญ่ที่ ผู้นับถือแต่ละสำนักก็ออกมาเชียร์ว่าอาจารย์/สำนักตนดีกว่า (ค่ายอื่นก็เหมือนนับถือผีมั้ง^^) การซื้อ Computer ทุกวันนี้จึงใกล้เคียงกับการซื้อวัตถุมงคลเข้าไปทุกที CPU ต้องทนร้อน ตกน้ำไม่ไหลตกไฟไม่ไหม้ อีกหน่อยคงต้องไปหาเหล็กไหลมาทำ RAM ต้องดูรุ่นดูค่าย เช่นเดียวกันต้องทนร้อน ดูใครเป็นคนนำบูชาบริษัทอะไรทำ เนื้ออะไร รหัสอะไร เดี๋ยวนี้ต้องบูชาพร้อมกันเป็นคู่ เดี๋ยวจะไม่ขลังหากบูชาไม่พร้อมกันจะทำให้พลานุภาพลดลงได้ การ์ดจอต้องเร็ว ดูว่าเปิดท่อได้เท่าไหร่ เหมือนกับจะนำไปแสดงอิทธิฤทธิ์ ปาฏิหารย์ ยิงฟันไม่เข้า การที่จะนำวัตถุมงคลทั้งหลายนั้นมารวมกันเป็นชุดต้องระวังว่าจะขัดกันหรือไม่เพราะเดี๋ยวจะเป็นขึด จะนำมารวมกันเฉยๆนั้นไม่ได้ต้อง อาศัยหลวงพี่ enermax ในการเสริมความขลัง อีกหน่อยคอมพิวเตอร์ต้องเอาไปเลี่ยมทอง เพราะราคาพอๆกับเคส การที่จะนำไปบูชาควรวางไว้ในที่ที่เป็นมงคล หันหน้าไปทางทิศที่เหมาะสมเข้ากับราศีเกิดของผู้บูชา เพื่อให้รับลมได้ดี เดี๋ยวจะไม่เข้าหลัก Air flow อาจเกิดอาการร้อนในได้ คงไม่แปลกอะไรถ้าจะมีคนบูชาคอมเครื่องละเป็นแสน และ ไม่แปลกที่จะมี Spec เทพเบญจภาคี เช่น A_D 64 x000+ ,Cosair,Raptor,ASUS,6800 Ultra

ดังนั้นศาสนิกชนแต่ละท่านจึงควรพึงที่จะรับฟังอย่างมีวิจารณญาณ"

ปัจจัยที่มีผลต่อราคา Notebook ** ไม่ใช่แค่ spec **

จะเอามาลงทั้งหลายทีแล้ว วันนี้ว่าง ๆ เลยเอามาลงซะเลย …….. จากกระทู้ ใน Pantip.com กล่าวไว้ได้น่าสนใจทีเีดยวหล่ะครับ
ปัจจัยที่มีผลต่อราคา Notebook ** ไม่ใช่แค่ spec **

ขอเสนอข้อมูลให้คนที่กำลังมองๆหา Notebook เพื่อใช้งานได้ดูประกอบการตัดสินใจครับ

จริงๆแล้วเห็นมีหลายกระทู้มากๆๆที่โพสถามว่าจะซื้อรุ่นนี้ดีมั้ย รุ่นไหนดีกว่า อะไรแบบนี้เยอะมาก ถ้าอยากได้คำตอบที่ตรงจริงๆคงต้องบอกความต้องการใช้งานประกอบด้วยละครับ ว่าจะเอาไปใช้ทำอะไร ต้องการความสะดวกในการขนย้ายมั้ย, ต้องใช้งานข้องนอกโดยไม่มีปลั๊กเสียบบ่อยๆ, ใช้เล่นเกมส์เป็นหลัก, ใช้เก็บรูปเก็บเพลง, หรือต้องดูดีอวดชาวบ้านได้(สารภาพมานะ!) เพราะจริงๆแล้วเกณฑ์การตัดสินใจนี่คือ เปรียบเทียบ “สิ่งที่ Notebook ทำได้” มันเหมาะสมกับ “วัตถุประสงค์การใช้งาน” ต่างหากล่ะครับ

แต่อย่างแรกที่ต้องจำไว้เลยก็คือ ** ไม่มี Notebook ที่ดีที่สุด หรือว่าเลิศสมบูรณ์ทำได้ทุกอย่างครับ ** ยืนยันอีกที - No Best or Perfect Notebook ในโลก!! โดยเฉพาะถ้าจำกัดงบประมาณมายิ่งเป็นไปไม่ได้เลย แบบที่จะเอา Notebook จอปิ๊งๆ เล่นเกมส์ลื่นๆ แบตอึดๆ บริการดีๆ ทนทาน ประกันนาน แถมต้องเบาๆพกพาง่าย แต่ให้งบมา 40,000 !! จะหาจากไหนล่ะครับ…

ปัจจัยหลักๆที่จะมีผลต่อราคา จริงๆแล้วไม่ใช่ Spec นะครับ โดยเฉพาะความเร็ว CPU จะยิ่งมีผลน้อยมากๆ, Technology ของ Platform หรือ VGA อาจมีผลนิดหน่อย แต่ไม่เยอะขนาดปัจจัยที่จะพูดถึงต่อไปนี้

1. น้ำหนัก: ถ้าอยากได้ Notebook เบาๆพกพาง่ายคงต้องลงทุนหน่อยละครับ ยิ่งเล็กยิ่งเบาก็ยิ่งแพง แถมส่วนใหญ่พวกตัวเล็กนี่จะทำด้วยวัสดุชั้นดีทนทานเพื่อให้เหมาะสมกับ การใช้งานที่เน้นเอาไปไหนต่อไหนด้วยเลยยิ่งแพงใหญ่ ตัวอย่างชัดๆก็พวก Fujitsu, Sony หรือ X series ของ IBM ที่ต้องมี 70,000-80,000 เป็นอย่างน้อยละครับ
2. วัสดุ/ความทนทาน: ดูได้เลยครับ พวก Notebook ไต้หวัน spec สูงๆที่ทุบราคาลงมาได้ก็เพราะประหยัดโดยการใช้วัสดุเกรดธรรมดาๆทั้งนั้น ซึ่งอาจจะมีผลเรื่องความทนทานอย่างละ อีกอันที่เห็นชัดๆก็ความหรูหรานี่แหละ =)
3. การออกแบบ Ergonomic: เคยรู้สึกกันมั้ยครับ ว่า Notebook แพงๆมันมักจะ”เข้ามือ”มากกว่าพวกพื้นๆ โดยจะรู้สึกว่าพิมพ์ถนัดมือกว่า ปุ่มก็อยู่ตำแหน่งที่ถนัดไม่ขัดมือ อันนี้ก็มาจากเรื่องการออกแบบที่คำนึงถึง Ergonomic ให้สะดวกสบายในการใช้งานนี่แหละครับ และแน่นอนว่าเป็นต้นทุนที่ต้องบวกเข้าไปด้วย
4. ประกัน/บริการ: ต้นทุนของการประกันและบริการนี่ไม่ใช่ถูกๆนะครับ ซึ่งทำให้เห็นความแตกต่างของแต่ละยี่ห้อได้เลยเชียวแหละ ประกัน 1 ปีกับ 3 ปีนี่ผิดกันเกือบหมื่นนา
5. ยี่ห้อ: คงจะเถียงไม่ได้นะครับว่าชื่อเสียงของแต่ละยี่ห้อที่สร้างสมมานี่ก็เอามาบวกในราคาทั้งนั้น ส่วนที่คนใช้จะได้รับตรงนี้ก็คงจะเป็นการบ่งบอกฐานะของเจ้าของ และ credit เวลาไป present (มั้ง!)
6. Software: อย่าลืมเชียวนะครับว่า Software แต่ละตัวที่อยู่ใน Notebook ก็มีราคาทั้งนั้น ไม่ว่าจะเป็น OS (Windows XP Pro กับ XP Home หรือกับ DOS ราคาห่างกันอย่างละหลายพัน), หรือจะเป็น Software อำนวยความสะดวกต่างๆในเครื่อง เช่น Connection Manager, Multimedia Manager หรือ Rescue & Backup พวกนี้เป็นเงินที่เค้ามาเก็บกับเราทั้งนั้น คนไทยมักจะชอบลืมของพวกนี้เพราะแผ่นผีพันธุ์ทิพย์นี่ละ =/

ถ้าเราไม่มีปัญหาเรื่องงบประมาณ ก็สามารถเลือก Notebook ยี่ห้อหรูๆดูดีมีทุกอย่างพร้อม พกพาสะดวก ไม่ต้องกังวลกับการจัดการในเครื่อง จะได้ใช้งานได้อย่างเต็มที่, แต่ทีนี้ ถ้าเรามีงบจำกัด ก็ยังมีทางเลือกที่จะใช้เครื่อง spec สูงๆเล่นเกมส์ลื่นๆได้ โดย trade off กับการที่อาจจะต้องยอมแบกเครื่องหนักหน่อย, รูปทรงหน้าตาบื้อๆดูไม่หรูแบบของเพื่อน, ต้องเพิ่มความระมัดระวังเวลาขนย้ายอีกนิดถ้าไม่อยากให้ NB จากไปก่อนวัย, ยอมวัดดวงว่า NB จะไม่มีปัญหาหลังจากใช้หมดปีแรก, ลง Software และจัดการเครื่องเองได้ อันนี้ก็คงไม่มีปัญหาอะไร อยู่ที่ “วัตถุประสงค์การใช้งาน” ของแต่ละคนที่จะเลือกแล้วละครับ

ขอให้มีความสุข ได้ใช้เครื่องถูกใจ Fit to Propose นะครับ ;)

การเซ็ตให้ Borland C++ Compiler 5.5 ทำงานร่วมกับ EditPlus เพื่อทำการ Compile ไฟล์ที่เขียนขึ้นด้วยภาษา C++

สิ่งที่ต้องมี

  • Borland C++ Compiler 5.5
  • EditPlus

1. ดาวน์โหลด Borland C++ Compiler 5.5 มาจากเว็บ Borland ที่ http://www.codegear.com/downloads/free/cppbuilder

2. ดาวน์โหลด EditPlus ได้จากที่นี่ http://www.editplus.com

3. เมื่อโหลดได้แล้วทำการติดตั้งดังภาพด้านล่างนี้ครับ


ภาพที่ 3-1


ภาพที่ 3-2


ภาพที่ 3-3


ภาพที่ 3-4


ภาพที่ 3-5

4. เปิด EditPlus ขึ้นมาแล้วไปที่ Tools ที่เมนูบาร์ แล้วไปที่ เมนู Configure User Tools


ภาพที่ 4-1

5. เข้ามาที่หน้าต่าง Preferences ตอนนี้เราจะอยู่ที่ Tools และหัวข้อย่อย User tools

  • ให้เราเลือกที่ Groups and tools items ไหนก็ได้ ในตัวอย่างเลือกอยู่ที่ Groups 4
  • กดปุ่ม Add Tool แล้วไปที่ Program


ภาพที่ 5-1

6. เราจะได้ New Program มา 1 อัน

  • เราสามารถเปลี่ยนชื่อได้โดยไปที่ Menu text ในที่นี้ให้เปลี่ยนเป็น “Borland C++ Compile
  • ในส่วนของ Command ให้ไป Browse ให้ชี้ไปที่ ไฟล์ bcc32.exe ซึ่งในที่นี้ถ้าติดตั้งตามแบบข้างต้น (ข้อที่ 3 ) จะได้ที่นี่ C:\Borland\BCC55\Bin\bcc32.exe
  • ในส่วนของ Argument ให้ใส่ตามข้างล่างนี้เลย ถ้าติดตั้งตามแบบข้างต้น (ข้อที่ 3 )
    -IC:\Borland\BCC55\Include -LC:\Borland\BCC55\Lib -n$(FileDir) $(FilePath)
  • จากข้อที่แล้วจะสังเกตที่ได้ขีดเส้นได้ว่าคือที่ ที่เราได้เซ็ตไว้ข้างต้นแล้วในตอนที่ติดตั้ง Borland C++ Compiler 5.5 ซึ่งในข้อที่ 3 เราได้กำหนดไว้ที่ C:\Borland\BCC55 นั้นเอง
  • ในส่วนของ Initial directory ให้กำหนดเป็น C:\Borland\BCC55\Bin
  • ให้ทำการทำเครื่องหมายถูกที่ Capture output ด้วย


ภาพที่ 6-1

7. ทำการกดปุ่ม Add Tool แล้วไปที่ Program เพื่อ New Program อีกหนึ่งอัน


ภาพที่ 7-1

8. ในขั้นตอนนี้เราจะทำ Menu Run กันในโปรแกรม EditPlus แต่มีข้อเสียอยู่อย่างเดียวคือ

เราจะไม่สามารถใช้กับโปรแกรมที่มีการรับ Argument ได้ ซึ่งทางผู้จัดทำเอกสารยังไม่ได้หาข้อมูลเพิ่มเติมแต่อย่างใด แต่สามาถ Compile ได้แต่จะมีวิธีการทำในภายหลังว่าจะทำยังไงให้สามารถ Run แล้ว สามารถให้โปรแกรมสามารถรับค่าได้

  • ที่ Menu text ให้เปลี่ยนจาก New Program เป็น Run
  • ที่ Command ให้ใส่ $(FileNameNoExt)
  • ที่ Initial directory ให้ใส่ $(FileDir)
  • ให้ทำการทำเครื่องหมายถูกที่ Capture output ด้วย


ภาพที่ 8-1

9. ต่อมาเรามาทำการเปลี่ยนชื่อ Groups 4 ให้เป็น C++ Compile ก่อนเพื่อจะได้ไม่สับสน

  • ไปที่ Group Name
  • แล้วทำการเปลี่ยนชื่อเป็น C++ Compile
  • กด OK เพื่อยืนยันการเปลี่ยนแปลง


ภาพที่ 9-1

10. แล้วกด OK ออกมาจาก หน้าต่าง Preferences

11. เขียนโปรแกรม ง่ายๆ ทดสอบกันว่ามันทำงานหรือเปล่า

  • แต่ก่อนทำการ Compile และ Run ต้องทำการ Save ก่อนเพื่อจะได้ Run ได้
  • การ Save ที่ถูกต้องและจะทำให้ Compile ผ่านได้และไม่ผิดพลาด นั้นควรตั้งชื่อไฟล์ และการเก็บไฟล์ไว้ที่ Folder ที่ไม่มีช่องว่างในการตั้งชื่อ และชื่อต้องที่ไม่มีช่องว่างในการตั้งชื่อด้วย (แต่สามารถใช้ _ ในการเว้นระยะแทนได้) เช่น
    • D:\Ford\MyProgramming
    • D:\cpp
    • D:\cpp\test.cpp
    • D:\cpp\test_input.cpp
  • ไม่ควร Save ไว้ที่ Folder หรือตั้งชื่อไฟล์ที่มีช่องว่างระหว่างชื่อ, ชื่อเป็นภาษาอื่นนอกจากภาษาอังกฤษ, ชื่อมีเครื่องหมายพิเศษหรือ มีสัญลักษณ์พิเศษ เช่น
    • D:\Ford\My Programming
    • D:\Ford\My OOP
    • D:\Ford\My Cpp
    • D:\Ford\My C(pp)
    • D:\cpp\tes#t.cpp
    • D:\cpp\test input.cpp
  • เราก็เขียนโปรแกรมง่ายๆ ดังภาพด้านล่างนี้ ……… และ Save ไว้ที่ D:\test.cpp


ภาพที่ 11-1

12. เมื่อเรา Save แล้ว ก็ไปที่ Tools ที่เมนูบาร์ ไปที่ User Tool Groups แล้วเลือกที่ C++ Compile ที่เราได้เซ็ตกันเมื่อกี้นี้


ภาพที่ 12-1

13. เราก็จะได้เมนูใหม่เข้ามาคือ Borland C++ Compile และ Run ที่เราเซ็ตไว้เมื่อกี้นี้

  • ให้เรากดที่เมนู Borland C++ Compile เพื่อทำการ Compile


ภาพที่ 13-1

14. เราจะได้ผลลัพธ์ตามภาพ


ภาพที่ 14-1

15. แล้วถ้าเราจะ Run ให้ใช้ เมนู Run ดังภาพ


ภาพที่ 15-1

16. เราจะได้ผลลัพธ์ตามภาพ


ภาพที่ 16-1

17. เรามาเขียนโปรแกรมรับค่าและ วิธีการแก้ปัญหาของ EditPlus ที่ทำการ Run แบบรับค่าไม่ได้ (ภาพที่ 17-2)

  • จากโปรแกรมนี้นั้น จะมีการรับค่ามาหนึ่งค่า เราจะรวบรัดขั้นตอนในบางตอนไปเลย ซึ่งเมื่อเขียนโปรแกรมนี้เสร็จแล้วให้ทำการ Compile ตามวิธีเดิมข้างต้นไปได้กล่าวไปแล้ว แต่ไม่ต้องทำการ Run แต่อย่างใด มิเช่นนั้นแล้วโปรแกรม EditPlus จะมี Process ค้างและทำให้เครื่องมีปัญหาได้
  • แต่ถ้าไปเผลอ Run แก้โดยให้ทำการ ปิดโปรแกรม EditPlus แต่จะมี Dial Box ขึ้นมาถามว่าเราจะ Stop Process หรือไม่ ดังภาพภาพที่ 17-1 ให้ตอบ Yes ไป

ภาพที่ 17-1


ภาพที่ 17-2

18. ทางแก้ในด้านนี้คือใช้ Command Prompt นั้นเอง

  • ให้ไปที่ Start > Run
  • พิมพ์ cmd


ภาพที่ 18-1

19. ไปที่ ที่อยู่ไฟล์ที่เราได้ Compile ไว้

  • ซึ่งในการ Compile นั้นโปรแกรม Borland C++ Compiler 5.5 จะทำการ Build ไฟล์ที่เรา Compile เป็น Execute File ( .exe ) ให้เราแล้ว
  • เราเพียงแต่เข้าไปหาไฟล์ที่เรา Compile ไว้แล้วพิมพ์ชื่อไฟล์นั้นๆ ลงไปให้ตรงเท่านั้น
  • ในขั้นตอนนี้ควรมีความสามารถในการใช้คำสั่ง DOS


ภาพที่ 19-1

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

ทำให้ Mozilla Firefox ใช้ภาษาไทยอย่างสมบูรณ์

*ในการอธิบายนี้ใช้ Firefox Version 0.9.2 - 1.0.7

* สำหรับ Mozilla Firefox 1.5 นั้นอยู่ที่ ปรับแต่งให้ Mozilla Firefox 1.5 ใช้ภาษาไทยอย่างสมบูรณ์

Continue reading ‘ทำให้ Mozilla Firefox ใช้ภาษาไทยอย่างสมบูรณ์’