ได้แก่ อาทิ เช่น เป็นต้น

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

เช่น เป็นคำนาม มีความหมายว่า อย่าง หรือ ชนิด
ได้แก่ เป็นคำสันธาน มีความหมายว่า คือ หรือ เท่ากับ
เป็นต้น เป็นได้ทั้งคำวิเศษณ์ ที่ให้ความหมายว่า เริ่มแรก เป็นอันดับแรก หรือ เป็นส่วนเบื้องต้น
อาทิ มาจากภาษาบาลีสันสกฤต มีความหมายว่า ต้น หากใช้กับคำว่าเป็น เป็นอาทิ จะได้ความหมายว่า เป็นต้น

ซึ่งการงานทั้ง 4 คำนี้มีบทความที่เขียนโดยคุณสุปัญญา ชมจินดา จากราชบัณฑิตยสถาน (ปัจจุบันเปลี่ยนชื่อเป็น สำนักงานราชบัณฑิตยสภา) ผ่านเว็บไซต์ true ปลูกปัญญา อธิบายไว้ว่า

เช่น ใช้ยกตัวอย่างซึ่งตัวอย่างดังกล่าวไม่ได้อยู่ในชุดหรือกลุ่มของเรื่องเดียวกัน และไม่ต้องเรียงลำดับ เช่น “มีสัตว์เลี้ยงอยู่ที่บ้าน เช่น สุนัข แมว หนู ฯลฯ” ไม่มีคำว่า เป็นต้น เปิดท้าย ส่วนเครื่องหมายไปยาลใหญ่นั้นสามารถละไว้ได้

ได้แก่ ใช้ระบุถึงสิ่งที่อยู่ในชุดเดียวกันครบทั้งชุด เช่น “อริยสัจ ๔ ได้แก่ ทุกข์ สมุทัย นิโรจ มรรค”

เป็นต้น ใช้วางท้ายชุดตัวอย่างคำที่อยู่ในชุดเดียวกัน โดยเรียงลำดับจากลำดับแรกเป็นต้นไป แต่ไม่จำเป็นต้องนำมาแสดงทั้งหมด (ดูความหมายด้านบนประกอบ) เช่น “อริยสัจ ๔ ได้แก่ ทุกข์ สมุทัย เป็นต้น

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

อ้างอิง
การใช้คำว่า “อาทิ, เช่น, เป็นต้น, ได้แก่” –ทรูปลูกปัญญา
ได้แก่ อาทิ เช่น เป็นต้น

หลักการของการทดสอบซอฟต์แวร์

ตามเอกสารนั้นการทดสอบซอฟต์แวร์แบ่งออกเป็น 5 ยุคหลัก ๆ

  • เริ่มต้นด้วยยุคที่การใช้งานซอฟต์แวร์เพียงเพื่อควบคุมเครื่องจักรเท่านั้น ดังนั้นการทดสอบจึงเขียนซอฟต์แวร์ออกมาแล้วดูว่าเครื่องจักรทำงานถูกต้องตามที่ต้องการหรือไม่ ถ้าไม่ก็ค่อยๆ แก้กันไปจนกว่าเครื่องจักจะทำงานถูกต้อง (:1956 – Debugging-Oriented)
  • ถัดมาคอมพิวเตอร์ก็เริ่มเข้ามามีบทบาทมากขึ้น เริ่มมีคนสร้างการบวนการทดสอบขึ้นมาบ้าง แต่การทดสอบก็ยังคงแนวคิดเดิมคือแทนที่จะดูว่าเครื่องจักรทำงานถูกต้องไหม ก็หันไปสั่งให้ซอฟต์แวร์ทำงานได้ถูกต้อง และเน้นที่การทำอย่างไรก็ได้ให้แน่ใจว่าซอฟต์แวร์ทำงานได้ถูกต้อง (1957:1978 – Demonstration-Oriented)
  • แต่แล้วทุกอย่างก็เปลี่ยนไป คาดว่าคงมีแนวคิดสักอย่างที่แหกคอกออกมาจากกรอบกความคิดในยุคที่ 2 เปลี่ยนมาใช้แนวทางการทดสอบทุกวิถีทางพยายามทำให้ซอฟต์แวร์เกิดข้อผิดพลาด (1979:1982 Destruction-Oriented)
  • เมื่อเริ่มหาทางสร้างข้อผิดพลาดให้ซอฟต์แวร์ลำบากขึ้น (เพราะซอฟต์แวร์เริ่มซับซ้อนขึ้นเรื่องๆ) การทดสอบก็เลยเริ่มกระบวนการตรวจสอบโค้ด สร้างกิจกรรมที่ต้องมีปฎิสัมพันธ์กับซอฟต์แวร์มาใช้ ตอนนี้เองที่เริ่มมีการนำเอาวิธีการพัฒนาซอฟต์แวร์แบบ V-Model เข้ามาใช้ (1983:1987 – Evaluation-Oriented)
  • พอเอกสารบันทึกการพัฒนาเริ่มเป็นรูปเป็นร่างมากขึ้น และหลายคนคงเห็นอะไรในเอกสารมายิ่งขึ้น แนวทางการพัฒนาเลยเปลี่ยนไปเป็นการป้องกันการเกิดขึ้นของข้อผิดพลาด วางแผนการทดสอบมากขึ้น รวมไปถึงกระบวนการทดสอบที่ชัดเจน (STEP – Systematic Test and Evaluation Process) ไม่ว่าจะเป็น eXtreme Programming หรือ Test-Driven Developement (1988: – Prevention-Orientation)

หลักการทดสอบซอฟต์แวร์

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

  1. เราไม่สามารถสร้างวิธีการทดสอบที่สมบูรณ์แบบได้: ช่วงที่อาจารย์สอนก็คิดแย้งเหมือนกันครับ แต่พออาจารย์อธิบายให้ฟังก็ถึงบางอ้อ ยกตัวอย่างเช่น หากต้องการทดสอบข้อมูลที่กรอกใส่ฟอร์มลงชื่อเข้าใช้งานบนเว็บไซต์ที่มีแค่ username และ password ด้วยเงื่อนไขที่ว่า
    username ต้องเป็นตัวอักษรที่มีความยาวระหว่าง 3-15 ตัวอักษร
    password ต้องเป็นตัวอักษรที่มีความยาวระหว่าง 6 ตัวอักษรขึ้นไป
    นั่นแสดงว่าเราต้องสร้างรูปแบบการทดสอบด้วยการใส่ aaa, aab, aac, …, zzzzzzzzzzzzzzz และเมื่อเป็นตัวอักษรก็ต้องใส่ ตัวเลขหรือเครื่องหมายพิเศษเข้าไปอีก นี่เป็นเพียงแค่ช่อง username เท่านั้นนะครับ ส่วนถ้าเป็น password ก็ต้องเพิ่มเข้าไปอีก นอกจากนั้นการทำแบบนี้ยังเป็นการทำงานที่สิ้นเปลืองพลังงานเอาเปล่าๆ ดังนั้นการทดสอบจึงต้องเลือกส่วนที่สำคัญออกมาจริงๆ และวิเคราะห์ให้ได้ว่าค่าที่เลือกมาทดสอบนี้สามารถครอบคุมการทำงานตามที่คาดหวังไว้ ทั้งค่าที่เป็นไปได้และค่าที่เป็นไปไม่ได้
  2. การทดสอบซอฟต์แวร์นั้นเป็นงานที่ค่อนข้างติสต์และยาก: การทดสอบนั้นไม่ใช่ว่าใครก็ทำได้อย่างน้อยก็ต้องมีความรู้พอที่จะอธิบายว่าทำไมถึงได้เลือกค่าใดค่าหนึ่งออกมาเป็นตัวแทนข้อมูลกลุ่มใดกลุ่มหนึ่งเพื่อให้สะท้อนถึงการทำงานทั้งหมด ดังนั้นจึงจำเป็นจะต้องเรียนรู้หรือฝึกอบรมเพื่อให้เข้าใจถึงวิธีการและที่มาที่ไปของเหตุผลเหล่านี้ อีกทั้งการทดสอบซอฟต์แวร์ใช่ว่าจะโยนซอฟต์แวร์ให้แล้วเริ่มทดสอบได้เลย คนที่ทำหน้าที่ทดสอบจำเป็นอย่างยิ่งที่จะต้องรู้กระบวนการการทำงานของซอฟต์แวร์ที่กำลังจะทดสอบนี้เป็นอย่างดีเสียก่อน ไม่ว่าจะเป็นซอฟต์แวร์ที่เข้าใจได้ง่ายเช่นโปรแกรมเครื่องคิดเลข หรือซับซ้อนมากๆ อย่างโปรแกรมควบคุมการลงจอดของยานอวกาศก็ตาม
  3. เหตุผลสำคัญของการทดสอบคือการป้องกันข้อบกพร่องของซอฟต์แวร์ที่จะเกิดขึ้น: สำหรับคนที่เริ่มต้นทดสอบส่วนใหญ่จะค้นหาข้อผิดพลาดที่เกิดขึ้นแล้ว แทนที่จะป้องกันการเกิดขึ้นของข้อผิดพลาด หากเราเปลี่ยนความคิดใหม่กลายเป็นการมองที่การทดสอบซอฟต์แวร์แทนการมองเป็นเพียงช่วงใดช่วงหนึ่งของกระบวนการพัฒนา ทำให้การทดสอบแทรกอยู่ตั้งแต่เริ่มต้นการเก็บความต้องการไปจนจบกระบวานการพัฒนาซอฟต์แวร์
  4. ต้องวางแผนการทดสอบเสมอ: เมื่อทุกคนเปิดใจได้แล้วว่าจำเป็นจะต้องเริ่มต้นทดสอบซอฟต์แวร์ ดังนั้นการทดสอบที่ดีเราก็จำเป็นจะต้องคิดให้ดีว่าเราจะต้องทดสอบอะไร หรือจะได้ผลลัพธ์อะไรจากกรณีการทดสอบที่ได้สร้างขึ้นบ้าง และแน่นอนตามข้อ 1 ครับ เราไม่สามารถสร้างกรณีการทดสอบได้ครบทุกกรณี แต่จำเป็นจะต้องเลือกตัวแทนกลุ่มข้อมูลที่ต้องการทดสอบได้อย่างมีประสิทธิภาพ และจำเป็นอย่างยิ่งที่ต้องสร้างกรณีทดสอบให้ครอบคลุมการทำงานของซอฟต์แวร์ให้ได้มากที่สุด
  5. การทดสอบนั้นจำเป็นต้องเป็นอิสระ: ข้อนี้สำคัญมากครับ เพราะหากผู้พัฒนาซอฟต์แวร์เป็นคนทดสอบซอฟต์แวร์เอง ก็อาจจะเห็นข้อบกพร่องของการทำงานได้ไม่ครบทั้งหมด และเกิดอคติ (bias) ต่อการทดสอบนี้ แต่ผมเองมองว่าข้อนี้จะเป็นจริงเมื่อมีการทดสอบเกิดขึ้นภายหลังจากการบวนการพัฒนา แต่ถ้าใช้การพัฒนาตามวิธีการ TDD นั่นก็จะช่วยลดปัญหาเรื่องนี้ไปได้ (อาจจะไม่ได้ลดไปเสียทั้งหมด)

ทั้ง 5 ข้อนี้สำคัญมากครับ เพราะจะช่วยจัดระเบียบความคิดของเราที่มีต่อการทดสอบซอฟต์แวร์มากขึ้นกว่าเดิม และพุ่งเป้าหมายไปยังการทดสอบซอฟต์แวร์ให้ประสบความสำเร็จตามที่ต้องการ

Software Requirements Engineering Books List

Vagrant

จาก Vagrant & Docker เมื่อคืนเลยไปลองอ่าน Vagrant เพิ่มเฉพาะที่คิดว่าเพียงพอต่อการใช้งานแล้ว โดยจะแบ่งออกเป็นส่วนๆ ได้แก่ จัดการ Box, กำหนดค่าและการใช้งาน และการส่งต่อสภาพแวดล้อมการใช้งาน

การจัดการ Box


Box ใน Vagrant คือชุดข้อมูลตามที่ Vagrant กำหนด เพื่อใช้สร้าง VM บน Provider ที่ Vagrant รองรับ (VirtualBox, VMWare, AWS หรืออื่นๆ) ซึ่ง Box มีทั้งแบบที่สร้างเตรียมไว้เบื้องต้นเรียบร้อยแล้วจากแหล่งที่น่าเชื่อถือได้ แต่หากยังไม่ตรงตามความต้องการพอก็สามารถสร้าง Box นี้ได้ด้วยตัวเองแล้วโยนขึ้นเครือข่ายสำหรับให้คนในทีมสามารถนำไปใช้งานเพื่อสร้างสภาพแวดล้อมการพัฒนาที่เหมือนกันทั้งทีมได้ เมื่อติดตั้ง vagrant เรียบร้อยแล้วก็เพิ่ม Box ได้ด้วยรูปแบบคำสั่ง vagrant box add BOX/NAME โดย BOX เป็นเหมือนชื่อนำหน้าของเจ้าของที่สร้าง Box นั้นขึ้นมา ส่วน NAME ก็เป็นชื่อของ Box ที่สร้างขึ้น เช่น $ vagrant box add ubuntu/trusty64 คำสั่งนี้ Vagrant จะดึงข้อมูลโครงสร้างของ Box มาเป็นไว้ในเครื่อง ยังไม่ติดตั้งลงไปทันที่เป็นเพียงแค่การดาวน์โหลด Image ของ VM มาไว้ในเครื่อง ซึ่งหากไม่ระบุ Provider ว่าต้องการใช้งานของใคร Vagrant ก็จะดึง Image ของ VirtualBox มาใช้ ซึ่งในกรณีที่ต้องการใช้งาน VMWare Fusion ก็ให้เพิ่มข้อมูลลงไปอีกเป็น $ vagrant box add ubuntu/trusty64 --provider=vmware_fusion
อ่านเพิ่มเติม “Vagrant”

Vagrant & Docker

ตอนแรกก็สับสนระหว่าง Docker กับ Vagrant ตั้งนาน สรุปคือมันทำคนละหน้าที่

Vagrant

ใช้ช่วยติดตั้ง OS โดยที่เราสามารถเลือก Image ที่ติดตั้งเสร็จสรรพแล้วมาทำงานได้เลย (ศัพท์แสงของ Vagrant จะเรียกว่า Box) เท่าที่เห็น OS ที่ใช้งานบ่อยๆ ก็มีอยู่ในรายการแล้วเรียบร้อย หน้าที่เราก็แค่บอกให้ Vagrant ติดตั้งอะไรเพิ่มเติมเข้าไปได้ (เขียนเป็น shell script สำหรับเริ่มทำงานตอนต้น) ทำได้แม้กระทั่งกำหนดค่า Network ต่างๆ ภายในเครื่อง ซึ่งในกรณีที่ต้องการบันทึกค่าของสภาพแวดล้อมที่กำหนดค่าไว้แล้วเพื่อนำไปใช้กับเครื่องต่อไปได้ ก็ทำได้เพียงแค่สมัครเป็นสมาชิก ของ https://atlas.hashicorp.com/ ได้ฟรี ดังนั้น Vagrant จึงเป็นเครื่องมือช่วยในลดงานในการติดตั้งเครื่องใน VM ลงไปได้เยอะมาก กำหนดค่าทั้งหมดผ่าน ในไฟล์ Vagrantfile จากนั้นก็เพิ่ม script กำหนดค่า software ทั้งต้องการติดตั้งเพิ่มลงไปเท่านั้นก็แค่รอให้ Vagrant ทำงานจบ

Say goodbye to “works on my machine” bugs.

–Vagrant

Docker

ยังไม่ค่อยรู้จักมากเท่าไหร่นัก เท่าที่สรุปได้คือมันคือ Application container ที่ทำให้การจำลองระบบย่อยทำได้ง่ายและไม่แพงเท่า Vitualization ในปัจจุบัน ซึ่งเป็นการเอาเทคโนโลยีที่มีอยู่เดิมใน Linux มายำรวมกันเพื่อสร้างความสะดวกให้กับ System Admin โดยแท้

แต่ช่วงนี้คงหาเรื่อง Vagrant กับ Zookeeper อ่านกับลองเล่นให้มากเป็นพิเศษก่อน ส่วน Docker นั้นโดยเนื้อหาเท่าที่รู้แล้วน่าสนใจอยู่เหมือนกัน แต่ลำดับคงต้องเริ่มจาก 2 รายการที่ว่านี้ก่อนที่จะกระโดดข้ามไปสนใจอย่างอื่น

วิธีการเปลี่ยนชื่อไฟล์พร้อมกันเป็นกลุ่มใน OS X

ปัญหาหนึ่งเมื่อต้องทำคู่มือประกอบการใช้งานโปรแกรม คือการจับภาพหน้าจอการทำงานแต่ละขั้นตอนเพื่อนำมาใช้ประกอบคู่มือ ซึ่งชื่อไฟล์ที่ได้จาก OS X จะอยู่ในรูปแบบ “จับภาพหน้าจอ [วันที่] เวลา [เวลา]” ครับ แน่นอนว่าถ้าไปเปลี่ยนไปอาจจะไม่พลาด แต่หากโปรแกรมมีขนาดใหญ่ ประกอบไปด้วยหลายส่วนด้วยกัน เช่น ส่วนลงทะเบียน เข้าใช้งาน หรือสร้างเนื้อหา การทำไปเปลี่ยนชื่อไฟล์ไปก็คงเป็นเรื่องที่ทรมานน่าดู ซึ่งก่อนหน้านี้ใน OS X นั้น หากต้องการเปลี่ยนชื่อไฟล์จำนวนมากพร้อมๆ กันนั้นมีเครื่องมือที่ชื่อว่า Automator คอยช่วย ถึงแม้ Automator จะเป็นตัวช่วยในการสร้างลำดับการทำงาน แต่สำหรับผู้ใช้งานทั่วไปนั้นก็ยังถือว่ายากอยู่ดี
อ่านเพิ่มเติม “วิธีการเปลี่ยนชื่อไฟล์พร้อมกันเป็นกลุ่มใน OS X”

โดน Android รับน้อง

ช่วงนี้คิดว่าจะลองหัดเขียน Android ดูบ้าง หลังจากติดตั้ง Android Studio และดาวน์โหลด package ต่างๆ นานา จนเสร็จเรียบร้อยก็ลองทำตาม Building Your First App ดู ยังไม่ทันไปถึงไหนก็เจอข้อผิดพลาดตามที่เห็นในรูปด้านล่างกันแล้ว
อ่านเพิ่มเติม “โดน Android รับน้อง”

บริการสร้างรูปภาพตัวอย่างออนไลน์

ระหว่างการพัฒนาเว็บไซต์นั้นนักพัฒนาส่วนใหญ่ก็จำเป็นต้องใส่ข้อความ และรูปภาพเข้าไปในโครงสร้างของเว็บไซต์ เพื่อให้ทีมหรือลูกค้าเห็นภาพของเว็บไซต์ได้ชัดเจนขึ้น สำหรับข้อความที่ใช้ประกอบการวางโครงสร้างนั้นเรามักจะใช้ข้อความโลเล็มอิปซั่ม (Lorem ipsum) สำหรับภาษาอังกฤษ หรือภาษาไทยนั้นผมมักจะใช้ข้อความสุ่มที่ได้จากเว็บ lorem.in.th แต่กับรูปภาพนั้นก่อนหน้านี้ผมจะใช้การสร้างรูปภาพจากโปรแกรมง่ายๆ เพื่อใช้ประกอบการออกแบบ หรือเปลี่ยนจากแท็ก <img> มาเป็น <div> แล้วตามด้วยการใส่สีลงไป แต่นั้นก็เปลี่ยนแปลงในระดับโค้ด ซึ่งไม่ใช่เรื่องดีอย่างแน่นอน แถมช่วงที่พัฒนานั้น แน่นอนว่าโครงสร้างต่างๆ ย่อมเปลี่ยนแปลงไปได้เสมอ ดังนั้นถ้าต้องสร้างภาพให้เหมาะสมกับขนาดที่ต้องการเรื่อยๆ ก็ดูเป็นเรื่องที่เปลืองพลังงานเอามาก
อ่านเพิ่มเติม “บริการสร้างรูปภาพตัวอย่างออนไลน์”

บังคับให้ git ใช้ https:// แทน git://

ในสถานที่ที่ค่อนข้างจะเข้มงวดเรื่องความปลอดภัยแล้ว การใช้ git โดยเฉพาะกับ github.com นั้นค่อนข้างลำบาก เพราะโดยปรกติแล้ว scheme หรือโปรโตคอลแปลกๆ จะโดนปิดกั้นไว้เป็นธรรมดา ปัญหาก็เลยเกิดขึ้นเพราะ git เองก็ใช้โปรโตคอลแปลกๆ ที่ว่าเหมือนกัน นั่นก็คือ git:// ซึ่งแน่นอนไฟร์วอลล์ส่วนใหญ่ไม่อนุญาตให้ผ่านไปแน่ๆ แน่นอนว่าเปลี่ยนทั้งโลกมันย่อมลำบากกว่าเปลี่ยนที่ตัวเราเอง ดังนั้นวิธีแก้ก็ไม่ยากครับ แค่พิมพ์คำสั่งต่อไปนี้ใน Terminal

git config --global url."https://".insteadOf git://

คำสั่งนี้จะบอกให้ git รู้ว่า ทุกครั้งที่มีการเชื่อมต่อไปยัง repositoy ผ่าน scheme git:// ให้เปลี่ยนมาใช้ https:// แทน เท่านี้ใช้ git ต่อไปได้อย่างเป็นปรกติสุขแล้วครับ 🙂

วิธีการใส่ลายมือชื่อบนไฟล์เอกสาร PDF บน OS X

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

สำหรับแอปพลิเคชั่น แสดงตัวอย่าง (Preview) ซึ่งเป็นโปรแกรมสำหรับดูรูปภาพไฟล์รูปภาพหรืออ่านไฟล์ PDF บน OS X นั้นสามารถทำหน้าที่เก็บลายมือชื่อสำหรับใส่เข้าไปในเอกสารตามที่ต้องการได้ เริ่มต้นที่ด้วยการกดที่ปุ่มรูปกล่องเครื่องมือด้านบนขวาติดกับช่องค้นหา เมื่อกดเลือกแล้วจะมีแถบเครื่องมือเพิ่มขึ้นมาด้านล่าง แล้วจึงกดปุ่ม เซ็นชื่อ หรือ Signature หากยังม่มีรายการลายมือชื่อที่เก็บไว้ก่อนหน้านี้ ให้เลือกที่คำว่า สร้างลายเซ็น จะเห็นตัวเลือกด้านบน 2 ตัวเลือกได้แก่ แทร็คแพด ที่จะเก็บลายมือชื่อของเราโดยตรงผ่านแทร็คแพด ส่วนตัวแล้วผมชอบวิธีการเก็บลายมือชื่อผ่านกล้องมากกว่า ทำให้ลายมือชื่อที่ได้ดูเป็นธรรมชาติมากกว่าการเก็บผ่านแทร็คแพด ซึ่งวิธีการก็ไม่ยาก แค่เขียนลายมือชื่อลงกระดาษเปล่าสัก 3-4 จุด เพื่อเลือกลายมือชื่อที่ชอบที่สุด หรือเก็บไว้หลายๆ แบบก็ได้ จากนั้นนำมาส่องที่กล้องจัดวางตามแนวเส้น หยุดนิ่งสักครู่เพื่อให้แอปฯ จัดเก็บลายมือชื่อของเราไว้

Signature
Signature

เมื่อต้องการใช้งานก็ให้เข้ามาที่เมนูเดิมก็จะเห็นตัวอย่างลายมือชื่อที่เก็บไว้ เลือกลายมือชื่อที่ต้องการลายมือชื่อนั้นก็จะปรากฎอยู่บนเอกสารจากนั้นจึงค่อยปรับขนาดลายมือตามที่ต้องการ โดยที่ลายมือชื่อที่เก็บนี้จะอยู่ใน iCloud ครับ ดังนั้นหากไปเข้าใช้งานเครื่องคอมพิวเตอร์เครื่องอื่นแล้วเชื่อมบัญชี iCloud เข้าด้วยกันลายมือชื่อทั้งหมดนี้ก็จะปรากฎอยู่ใน Preview ด้วย

ปล. ใน Preview บน Yosemite นั้นค่อนข้างฉลาดทีเดียวครับ เท่าที่สังเกตคือ หากคลิ้กเหนือเส้นประ Preview จะเพิ่มเคอร์เซอร์ไว้ที่ด้านซ้ายสุดของเส้น หากคลิ้กในช่องสี่เหลี่ยมหรือวงกลม Preview จะเครื่องหมายถูก (✓) และเครื่องหมายจุด (•) ตามลำดับ