Author: shikima

ได้ Raspberry Pi มาฟรีทำยังไงกับมันดี

ผมได้ Raspberry Pi 2 model B (ขอเรียกว่า RPi ละกัน) มาฟรีๆ ตัวหนึ่ง ผมเคยได้ยินมาว่า เจ้า RPi ตัวนี้สามารถทำงานได้เยอะแยะมากมาย เช่นเป็นคอมพิวเตอร์ราคาถูก เอามาทำ media server หรือต่อกับ hardware ตัวอื่นๆ เป็น micro controller เลยก็มี

RPi นั้นมีส่วนประกอบที่แทบจะเป็นคอมพิวเตอร์ที่สมบูรณ์เลย ตัว RPi 2 ที่ผมได้มา เป็น System On Chip (SoC) ของ Broadcom BCM2836 ข้างในมี CPU ARM A7, GPU VideoCore IV, Ram 1GiB (แชร์กับ GPU), USB 1 port (แต่บน RPi 2 มี USB Hub ขยายเป็น 4 port ให้), HDMI เอาไว้ต่อจอ ขาดแค่ storage เท่านั้น ซึ่ง RPi 2 ก็มีช่อง micro sd เอาไว้ให้อยู่แล้ว การที่คอมพิวเตอร์จะทำงานได้ ก็ต้องมี OS เป็นตัวจัดการ การที่ไม่มี storage ในตัว ผมว่าเป็นข้อดีซะอีก เราสามารถเปลี่ยน OS หรือเตรียม OS ที่มีหลาย configuration ไว้ทำหรับงานต่างๆ ใน sd แต่ละอัน ถ้าต้องการใช้งานอันไหน ก็แค่ถอด sd ตัวเก่าออก แล้วเอาตัวใหม่ใส่เข้าไป แถมราคา sd ก็ถูกมากๆ


OS หลักของ RPi คือ Raspbian (น่าจะมาจากคำว่า Raspberry + Debian) โหลดได้จาก https://www.raspberrypi.org/downloads/ นอกจากนั้นยังมี OS เจ้าอื่นๆ ให้เลือกลงอีก แต่ผมยังไม่มีความรู้เกี่ยวกับ RPi เลย ก็เริ่มจาก Raspbian ก่อนละกัน

ไฟล์ที่โหลดมาได้จะมีนามสกุล img ก่อนจะนำไปใช้งาน ต้องทำการเขียนข้อมูลลงใน sd เสียก่อน โปรแกรมที่ใช้สำหรับ windows คือ Win32Disk Imager ถ้าเป็น mac ก็ใช้ ApplePi-Baker แทน

เสียบ sd เข้ากับคอมพิวเตอร์ sd ต้องมีขนาด 4GB ขึ้นไป แล้วเปิดโปรแกรม Win32 Disk Imager เลือกไฟล์ Raspbian

เลือก drive ของ sd ปกติถ้าเสียบ sd อันเดียว โปรแกรมจะเลือกให้อยู่แล้ว

กด Write แล้วรอสัก 5 นาที แนะนำให้ใช้ sd class 10 เพื่อความเร็วในการอ่านเขียน ราคา sd 8GB class 10 กับ class 4 ราคาต่างกันแค่หลักสิบ ถ้ามีอยู่แล้ว ใช้อันไหนก็ได้ แต่ถ้าซื้อใหม่ class 10 เท่านั้น

หลังจากเขียนไฟล์ลง sd เสร็จแล้ว ต่อจอ mouse กับ keyboard แล้วเสียบ sd เข้าไปที่ช่องด้านหลังบอร์ด RPi จากนั้นเสียสายไฟเข้าทาง micro usb


เรียบร้อย…

พอบูทเสร็จจะเข้าไปหน้า Raspberry Pi Software Configuration Tool ให้เลือก ข้อ 1.Expand Filesystem



sd อันนี้จะใช้ได้เต็มขนาด หลังจากการบูทครั้งต่อไป

ถ้าต้องการภาษาไทย ให้เลือกเมนู 4.Internationalisation Options

เลือก Change Locale

เลือก th_TH.UTF-8 UTF8

เลือก Finish

หลังจากบูทระบบใหม่ จะเข้ามาหน้า login ของ RPi ที่เหมือนๆ กับ linux ตัวอื่นๆ

login คือ pi
password คือ raspberry

ถ้าต้องการใช้งาน X Windows ทำได้โดยพิมพ์คำสั่ง startx

CPU ของ RPi มันช้ามากๆ ถ้าเทียบกับ PC ก็อย่าตั้งความหวังว่ามันจะลื่นเหมือน linux บน PC มันแค่พอใช้งานได้เท่านั้นแหละ

Raspbian มันก็คือ linux ที่ดัดแปลงมาให้ทำงานบน RPi ในการใช้งานจริง เราคงไม่ต่อ จอ mouse กับ keyboard ให้รกแน่นอน แค่ต่อสายแลนกับสายไฟสองเส้น แล้วใช้โปรแกรม putty ก็เข้าไปใช้งานได้เหมือนกัน

เปิดโปรแกรม putty แล้วใส่ ip ของ RPi ขั้นตอนการกำหนด ip ถ้าไม่ทำการ fixed ip ที่ RPi สามารถไปทำที่ router ได้ โดยกำหนด ip ผูกติดกับ mac address เลย

login คือ pi
password คือ raspberry

เท่านี้ก็ใช้งานได้แล้ว

 

เขียน htaccess ให้ข้ามใช้ SSL บางหน้า

เดี๋ยวนี้เว็บไซต์ส่วนใหญ่ที่ผมเขียน จะขอ SSL ติดไปด้วยเสมอ เวลาเข้าเว็บที่มี SSL แล้ว เราต้องเขียน htaccess เพื่อบังคับให้ใช้งานผ่าน https ตามนี้

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://www.cmdevhub.com/$1 [NC,R=301,L]

จากข้างบน บรรทัดสุดท้ายจะเป็นการเขียนบังคับให้ทุก request ที่เข้ามา ถูก redirect ไปที่ https ทั้งหมด

แต่บางครั้ง ถ้าเราต้องการเขียนโปรแกรมให้เรียกข้อมูลผ่าน curl จะมีปัญหาทันที เราจะไม่สามารถเรียกผ่าน https ได้ วิธีแก้ปัญหาก็คือ เขียนเงื่อนไขให้ยกเว้นบาง url หรือบางไฟล์ ให้ผ่านทาง http ปกติ แค่นี้ก็จะสามารถใช้ curl ได้แล้ว

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteCond http://www.cmdevhub.com/loaddata.php [NC]
ใช้งาน URL ด้านบนผ่าน http เท่านั้น

RewriteCond %{SCRIPT_FILENAME} \/load\.php [NC]
ไฟล์ load.php ใช้งานได้โดยไม่ต้องผ่าน https อยู่ใน directory ใดก็ได้
RewriteRule ^(.*)$ https://www.cmdevhub.com/$1 [NC,R=301,L]

เท่านี้เราก็แก้ปัญหาเรียก curl ผ่านเว็บที่ใช้ https ได้แล้ว หวังว่าจะมีประโยชน์บ้างนะครับ

เซ็ต virtual host ใน xampp

หลังจากลง xampp แล้ว ถ้าเราต้องการเพิ่ม virtual host โดยให้ทำงานแบบแยกพอร์ท เราสามารถแก้ไขไฟล์ htconf ได้ โดยเพิ่ม

บอกว่าจะใช้พอร์ทไหนโดยเขียน จากตัวอย่างบอกว่าจะใช้พอร์ท 8001

Listen 8001

จากนั้นตั้งชื่อ host และบอกว่าไฟล์เก็บไว้ที่ไหน

<VirtualHost localhost:8001>
DocumentRoot “e:\www\test”
</VirtualHost>

เสร็จแล้วให้ทำการ save และทำการ restart apache โดยการกด stop และ start ใน xampp control panel

หลังจากเริ่ม apache ใหม่แล้ว ให้ทดลองเปิด browser แล้วพิมพ์ localhost:8001

ถ้าหากไม่มีปัญหาก็จะสามารถใช้งานไฟล์ที่อยู่ใน directory ได้ ถ้าหากเกิด error 403 แสดงว่าไม่ได้ตั้งให้ apache ใช้งาน directory อื่นได้ ให้เราไปเซ็ตค่าที่

<Directory />
AllowOverride none
Require all denied
</Directory>

เปลี่ยนเป็น

<Directory />
AllowOverride all
Require all granted
</Directory>

เท่านี้ก็จะสามารถเรียก directory ใดๆ จากในเครื่องได้แล้ว

Payment Gateway ของธนาคารในประเทศไทย

ผมเคยได้รับโปรเจคให้เขียนโปรแกรมขายของแล้วในส่วนของการจ่ายเงิน ให้ใช้ Payment Gateway ที่เป็นของธนาคารโดยตรงเลย เนื่องจากว่าค่าธรรมเนียมถูกกว่าของเว็บที่เป็นตัวกลางเช่น Paypal, Paysbuy หรือ 2C2P ก็เลยมีโอกาสได้ลองติดต่อกับธนาคารและมีข้อมูลมาแชร์กันนิดหน่อยครับ

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

Continue reading

ค่า IPN ที่ได้จาก paypal

เก็บค่าไว้ดูเฉยๆ ครับ ถึงแม้ว่า Paypal จะมี REST API ออกมาแล้ว แต่ถ้าทำบนเว็บ ผมก็ยังชอบ Classic API มากกว่า อย่างน้อยมัน Redirect ไปที่ Paypal เลย ทำให้ดูเหมือนว่าเราจ่ายเงินกับ Paypal จริงๆ ทีนี้ตอนส่งค่ากลับ เราควรจะส่งค่าไปที่ IPN เพื่อทดสอบว่าที่เราจ่ายเงินไปเมื่อกี้ผ่านหรือไม่ลักษณะก็ประมาณในรูปนี้

รายละเอียดเพิ่มเติม อ่านได้จากตรงนี้เลย

https://developer.paypal.com/docs/classic/ipn/gs_IPN/

ค่าที่ส่งมาก็ตามนี้เลย

Array ( [0] => mc_gross=10.74 [1] => protection_eligibility=Ineligible [2] => payer_id=7AKYXA62JHJ28 [3] => tax=0.00 [4] => payment_date=01%3A26%3A48+Jun+29%2C+2014+PDT [5] => payment_status=Completed [6] => charset=windows-1252 [7] => first_name=POP [8] => mc_fee=0.61 [9] => notify_version=3.8 [10] => custom=1%2C+popcm82%40gmail.com [11] => payer_status=verified [12] => business=shikimasan-facilitator%40gmail.com [13] => quantity=1 [14] => payer_email=popcm82%40gmail.com [15] => verify_sign=An5ns1Kso7MWUdW4ErQKJJJ4qi4-AZ7COGevOZwhzP.I7xXBZluVjWBi [16] => txn_id=90604886TJ142822G [17] => payment_type=instant [18] => last_name=EYE [19] => receiver_email=shikimasan-facilitator%40gmail.com [20] => payment_fee=0.61 [21] => receiver_id=E6DSF6LCZKA6Y [22] => txn_type=web_accept [23] => item_name=SBOBET222+registeration [24] => mc_currency=USD [25] => item_number= [26] => residence_country=US [27] => test_ipn=1 [28] => handling_amount=0.00 [29] => transaction_subject=1%2C+popcm82%40gmail.com [30] => payment_gross=10.74 [31] => shipping=0.00 [32] => merchant_return_link=click+here [33] => auth=AAPg-EApVQ6-.mrEUuFjCtr5Ab7MQlltZSL.791sCcItxm-uIk5xClVtjyHWodt9XDb.0c29pZH9bjdstlxW8xQ ) The response from IPN was: INVALID

Windows 7 ISO จากเว็บ Microsoft

Windows 7 ถือว่าเป็น OS ที่ดีมากตัวหนึ่งของ Microsoft คอมรุ่นใหม่ๆ ไม่ว่าจะเป็น Desktop หรือ Notebook เดี๋ยวนี้โดนบังคับให้ลง Windows 7 ขึ้นไปแล้วทั้งนั้น (จริงๆ บังคับที่ Vista แต่ตัวนั้นมันเป็น 7 beta เลยไม่นับละกัน)

Microsoft ใจดี แจก Windows 7 ให้โหลดกันไปใช้งานได้ 30 วัน ถ้าอยากใช้งานต่อก็หา CD Key มาใส่กันเองนะ ไฟล์ ISO นี้สามารถใช้ Windows 7 USB/DVD Download tools เขียนลงแผ่น DVD หรือใส่ Flash drive ได้เลย

 

โหลดแล้ว อย่าลืมซื้อ CD Key แทนใส่ด้วยนะ

Regular expression ที่ผมใช้บ่อยๆ

แอบอู้มานาน เอาของที่ใช้กันอยู่ทุกวัน มาแจกให้

โค๊ดพวกนี้ผมจะใช้ใน javascript นะ ถ้าเอาไปใช้กับภาษาอื่นๆ ก็เปลี่ยนแปลงนิดหน่อย ก็ได้ละ

var emailpattern = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
var usernamepattern = /^([a-zA-Z0-9_]{6,16})+$/;
var moneypattern = /^([1-9][0-9]{0,10}|[1-9][0-9]{0,10}.[0-9]{2})$/;
var daypattern = /^[2][0-9]{3}\-[0-9]{1,2}\-[0-9]{1,2}$/;
var timepattern = /^([0-9]{1,2}:[0-9]{1,2})|([0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2})$/;
var passwordpattern = /^(?=.*\d).{6,12}$/;

เสร็จอย่างไว

ตัวเลขปวดหัวๆ กับ Javascript

สวัสดีเพื่อนๆ ช่วงนี้ทำงานหลายอย่าง ไม่มีเวลาเข้ามาเขียนอะไรเลย รอบนี้เอาสั้นๆ ละกันเนอะ

ตอนนี้ผมก็เขียนเว็บที่มีตัวเลขมาเกี่ยวข้องนิดหน่อย จริงๆ แล้วก็ไม่ค่อยถูกกับตัวเลขเท่าไหร่หรอก แต่ในเมื่อเขาขอมาผมก็จัดไป (แต่ก็ยังไม่ 100% ซะที)

เพื่อนที่เคยเขียนเว็บมาคงมีปัญหาตัวเลขกับ Javascript กันมาพอสมควร ผมขอยกตัวอย่างง่ายๆ ที่เจอกันบ่อยๆ นะครับ

1. ช่องใน textbox เป็นค่าว่าง แล้วพอนำไปคำนวนตัวเลข จะกลายเป็น NaN (Not a Number) ซะ ทำให้ค่าที่ออกมาผิดไปหมดเลย วิธีการแก้ปัญหาก็แสนจะง่ายคือ เอาค่าไป OR กับ 0 (ศูนย์) ซะ แค่นี้ก็แก้ปัญหาได้แล้ว ตัวอย่างโค๊ดก็แบบนี้

var number = parseFloat(jQuery("#number").val());
// แบบนี้ ถ้าหากเป็นค่าว่าง จะมีปัญหา NaN ก็แก้แบบนี้ซะ

var number1 = parseFloat(jQuery("#number1").val()) || 0;
// แบบนี้ ถ้าเป็นค่าว่างก็จะกลายเป็น 0 แทน เท่านี้ก็แก้ปัญหาได้แล้ว

2. ทศนิยมใน Javascript มันเพี้ยน หรือต้องการทศนิยมแค่ 2 ตำแหน่ง ไม่ยากเลย ใช้คำสั่ง toFixed() ซะ แค่นี้ก็จะแสดงทศนิยมตามที่ต้องการได้แล้ว ตัวอย่างเช่น


var number = 123.456789;
alert(number); // แสดงผล 123.456789
alert(number.toFixed(2)); // แสดงผลแค่ 123.45

3. ป้อนข้อมูลเข้ามามีเครื่องหมาย , ด้วย แต่ตอนที่เอาไปคำนวนต้องตัด , ออกไปก่อน บางที user ไม่อยากแก้ (ขี้เกียจ) หรืออาจจะไม่ทันได้แก้ หลงลืมได้ ไม่ว่ากัน เราก็เขียนกันไว้ก่อนซะ ง่ายๆ เลย ใช้ regular expression ซะ แค่นี้เราก็ตัดเครื่องหมาย , ออกได้แล้ว ผมเขียนเป็น function ใหม่ละกัน ไม่ต้องไปสร้างเป็น prototype ให้มันยุ่งยากเนอะ

function makeNumber(obj) {
   jQuery("#"+obj.id).val(obj.value.replace(/[,]/g,""));
}

<input type=”text” name=”number” id=”number” value=”0″ onChange=”makeNumber(this);”>
อ่าเอาแค่นี้ก่อนละกัน ยิ่งเขียนยิ่งรั่วแหละ เดี๋ยวเคลียงานเสร็จแล้วจะมาแก้ไขให้ดูดีกว่านี้ละกันครับ แล้วเจอกันใหม่ 🙂

เอา index.php ออกจาก URL ใน codeigniter

ช่วงนี้เริ่มเปลี่ยนมาใช้ codeigniter ได้พักใหญ่ๆ แล้ว แต่ก็ต้องคอยค้นหาวิธีเอา index.php ออกจาก URL ตลอด ซึ่งก็ไม่พ้น google นี่แหละ ตอนนี้ก็เลยเอามาลงไว้เผื่อคราวหน้าจะได้ไม่ต้องไปหาที่ไหนอีกละ

ขั้นตอนแรก สร้างไฟล์ .htaccess ใส่โค๊ดตามนี้

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteBase /

 RewriteCond %{REQUEST_URI} ^system.*
 RewriteRule ^(.*)$ /index.php?/$1 [L]

 RewriteCond %{REQUEST_URI} ^application.*
 RewriteRule ^(.*)$ /index.php?/$1 [L]

 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>

<IfModule !mod_rewrite.c>
ErrorDocument 404 /index.php
</IfModule>

จากนั้นแก้ไฟล์ application/config/config.php

หาบรรทัดที่เขียนว่า


$config['index_page'] = 'index.php';

ให้เอา index.php ออกไป

แค่นี้ก็เสร็จแล้ว ขอให้สนุกกับการเขียนนะครับ

ซื้อ DU Meter แท้ๆ ราคาแค่ 270 บาทเอง

โปรแกรมสามัญประจำเครื่องของผมอีกโปรแกรมหนึ่งก็คือ DU Meter เอาไว้วัดความเร็วหรือปริมาณข้อมูลที่เราใช้ในระบบเครือข่ายหรืออินเทอร์เน็ต โปรแกรมเล็กๆ แต่มีประโยชน์แบบนี้ ผมก็อยากจะจ่ายเงินให้เขาบ้างแหละแต่ติดที่ว่าราคามันตั้ง 29.95USD หรือราวๆ 1,000 บาท เมื่อก่อนตอนเป็น Version5 ผมยังสามารถหา แครก มาได้แต่พออัพเป็น Version6 ผมตั้งใจจะซื้อใช้งานจริงๆ จังๆ สนับสนุนคนพัฒนาบ้างน่าจะดีกว่า

DU Meter เราสามารถโหลดมาใช้งานได้ฟรี 30 วัน แต่ระหว่างนั้นมันก็จะขึ้นเตือนแบบนี้บ่อยๆ

จะว่าไปมันก็น่ารำคาญพอสมควร จะปิดก็ไม่ได้ ต้องรอให้นับถอยหลังให้ครบก่อน ราวๆ 10 วินาที ถึงจะปิดได้ หลังจากที่ใช้วิธีแครกโปรแกรมมานาน ก็กะว่าจะสนับสนุนเจ้าของโปรแกรมบ้างละ ไปเช็คในเว็บ ก็มีราคาพิเศษโดยลดราคาให้ 8USD ก็จะเหลือราวๆ 800 กว่าบาท แต่อย่างที่ผมบอก ผมว่ามันแพงไปนิด ถ้าสัก 500 ผมกดซื้อโดยไม่ลังเลละ

หลังจากตัดสินใจอยู่หลายวัน ก็ได้ข้อยุติว่า เอาโปรแกรมออกดีกว่า เพราะหลังๆ มันขึ้นเตือนบ่อยเหลือเกิน ยิ่งใกล้จะหมดเวลา 30 วัน ยิ่งขึ้นถี่มากๆ พอกด Uninstall โปรแกรม DU Meter ปุ๊บ ก็มีกล่องขึ้นมาตามรูป

ข้อความที่ผมสนใจขึ้นมาคือ Name your price แปลเป็นไทยง่ายๆ เลยคือ ให้คุณเสนอราคามา (ถ้าเรารับได้เราจะสนองให้) ลองดูสักหน่อย ไม่น่าจะเสียหายเนอะ

ในเมื่อเขาให้เราเสนอราคาไป ผมก็จัดไปที่ 4.99USD หรือราวๆ 150 บาท เผื่อฟลุ๊กได้ ก็มีเฮแน่นอน แต่ใจจริงถ้าสัก 10USD ผมก็โอเคแล้วนะ

แต่กลับมีข้อความแปลได้คร่าวๆ ว่า โปรแกรมเมอร์ ไม่ได้อิ่มทิพนะ เห็นใจเราหน่อยเหอะ ต้องกินข้าว กินน้ำเหมือนคุณนั้นแหละ เรารับราคาที่คุณเสนอมาไม่ได้หรอก แต่เราเสนอให้คุณใหม่ที่ 8.99USD (ประมาณ 270 บาท) สำหรับเครื่องเดียว หรือ 17.97USD (ประมาณ 540 บาท) สำหรับ 5 เครื่องใช้ในบ้านหลังเดียวกัน (แสดงว่าแชร์กับเพื่อนไม่ได้) ผมลองถามน้องแชร์คนละครึ่ง แต่มันไม่เอา ก็ไม่เป็นไร ซื้อใช้คนเดียวก็ได้ คอมประจำก็มีเครื่องเดียวอยู่แล้ว PC กับ Notebook อีกสองตัวไม่ต้องลงก็ได้ PC เอาไว้เล่นเกมอย่างเดียว ส่วน Notebook ตอนนี้กองในตู้ไม่ได้เปิดใช้มาจะหกเดือนแล้วมั้ง

ก็จัดไปราคา 8.99USD

ตอนเลือกการจัดส่ง (Delivery Method) ถ้าอยากได้แผ่น CD สวยๆ เราสามารถเลือกให้ส่งแผ่นมาให้เราด้วยก็ได้ แต่ต้องเสียค่าส่งอีก 8USD ซึ่งมันก็ไม่จำเป็นเท่าไหร่ พอกดไปแล้วเราก็ลงรายละเอียดของเรากับการจ่ายเงิน ผมเลือกจ่ายทาง Paypal เพราะง่าย แล้วก็ไม่ต้องกรอกหมายเลขบัตรเครดิตด้วย

เสร็จ จากนั้นก็รอทางนู้นส่งเมลมาหาเรา

แต่เนื่องจากเมลที่ผมใช้สมัครกับเมลของ Paypal เป็นคนละอันกัน ทาง PayPro เลยให้เรายืนยันทางโทรศัพท์เพิ่มเติม ซึ่งทางนู้นจะโทรมาหาเราเอง ก็ต้องคุยกับเขานิดหน่อย เป็นภาษาอังกฤษนะ

จริงๆ แล้วคุยกันไม่ยากหรอก ถ้าหากเขาพูดเร็วเราฟังไม่รู้เรื่อง ก็บอกให้เขาพูดช้าลงหน่อย ประมาณ Please speak slowly แล้วเขาก็จะถามเราว่า เราได้ทำการซื้อ DU Meter ใช่ไหม (เขาออกเสียงว่า ดู มิเทอร์ งะ) จากนั้นจะให้เราสะกดอีเมลของ Paypal ให้เขา ก็สะกดไปทีละตัว ช้าๆ ไม่ต้องรีบ ถ้าถูกต้องเขาก็จะส่งรหัสมาให้ทางอีเมลเลย

ผมลองถามเขาไปว่า ทำไมต้องโทรมาด้วย เขาบอกว่า เพราะเมลที่สั่งกับเมลของ Paypal ไม่ตรงกัน ต้องโทรมาเช็ค ส่วนถ้าเป็นบัตรเครดิต เขาจะโทรมาถามหมายเลขบัตรที่ซื้อ เพราะฉะนั้นยังไงเขาก็จะโทรมาถามอยู่ดี ยกเว้นว่า เมลที่ซื้อกับ Paypal ตรงกัน เขาอาจจะไม่โทรมาถาม

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

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

ผมว่า model นี้ก็ดีเหมือนกันนะถ้าคนใช้งานจะลบโปรแกรมออก ก็ลองถามก่อนว่าราคาที่เราตั้งไว้มันสูงเกินไปหรือเปล่า หรือเขารับได้ที่ราคาเท่าไหร่ บางทีอาจเจอจุดที่ทั้งสองฝ่ายลงตัวกัน อย่างผมกะไว้ว่าสัก 9.99USD ผมก็ซื้อแล้ว แต่ลองใส่ 4.99USD ไปเผื่อฟลุ๊ก แต่ทางนู้นกลับเสนอมาที่ 8.99 ซึ่งก็ต่ำกว่าที่คาดไว้ ก็เลยจัดไปซะเลย

“ใช้โปรแกรมแท้แล้ว ลอยได้หรือเปล่า?” ผมเคยโดนเพื่อนถามคำถามนี้เหมือนกัน ผมบอกเลยว่ามันไม่ลอยหรอก แถมยังทำงานได้เหมือนโปรแกรมที่แครกทุกอย่าง แต่ที่ไม่ต้องทำอีกเลยคือ หาแครก เวลาตัวเดิมใช้งานไม่ได้ แถมโปรแกรมของเรายังได้อัพเดทตลอดเวลาอีกด้วย ผมเคยมีประสบการณ์กับเพื่อนที่ทำงานด้วยกัน (คนที่พูดประโยคข้างบนนั่นแหละ) งานจะต้องส่งในอีกไม่กี่ชั่วโมงข้างหน้า แต่ต้องไล่เก็บ BUG กันนิดหน่อย ผมก็ทำส่วนของผมไปเรื่อยๆ แต่เพื่อนมันมาบอกว่า Adobe มันเปิดไม่ขึ้น ขอเวลาหาแครกก่อน แล้วมันก็ง่วนกับการหาแครก ลองแล้ว ลองอีก ก็ยังไม่ได้ จนสุดท้ายเจอไวรัสทำ Windows พังเลย ได้มาลง Windows ใหม่กันหมด งานก็ไม่ได้ทำ แถมผมยังต้องทำส่วนของมันอีก

ส่วนอีกเรื่องคือ ภาษาอังกฤษ อีกสองปีเราก็จะเป็น AEC กันแล้ว ประเทศรอบข้างเราเขาฟังภาษาไทยกันรู้เรื่องนะ ทั้งพม่า ลาว กัมพูชา ส่วนไทยละ จะสือสารกับเขายังไง แล้วที่สำคัญคนประเทศเหล่านั้นนอกจากภาษาไทยแล้วเขายังสามารถสือสารภาษาอังกฤษหรือฝรั่งเศษ (ลาว) ได้อีกด้วย ลองคิดดูละกันว่าภาษาไทยในโลกนี้มีประเทศไหนใช้กันบ้าง ส่วนภาษาอังกฤษล่ะ มีกี่ประเทศที่ใช้กัน

เวลาสื่อสารกับฝรั่ง ไม่ต้องไปสนใจหรอกว่าเราจะพูดผิดหรือพูดถูก จะตรงตามไวยกรไหม เพราะฝรั่งส่วนใหญ่เวลาพูดเขายังไม่สนใจไวยกรเลย เอาแค่ verb ให้ถูกกาล (tense) ก็พอ หรือถ้าเราไม่รู้ว่า Past Simple หรือ Past Participle ของคำนั้นๆ คืออะไร ก็ให้ใส่เวลาลงไป แค่นี้เขาก็เข้าใจแล้ว

ฝรั่งที่เคยคุยกับผมเขาบอกว่า “ขอให้พูดออกไปเหอะ ผิดถูกช่างมัน ยังไงเขาก็เข้าใจ ดีกว่ายืนยิ้มๆ อย่างเดียว” เขาบอกว่า “สยามเมืองยิ้ม เพราะคนไทยสื่อสารกับฝรั่งไม่ได้มากกว่า เลยยิ้มอย่างเดียว”

นอนดีกว่า