12 พฤษภาคม, 2558

ย้ายที่อยู่แล้วน้า ไปอ่านกันต่อที่ www.tamemo.com !!


ใครที่ตามอ่านบล๊อกเรามาอาจจะรู้สึกว่าช่วงนี้เราไม่ได้เขียนบทความอะไรใหม่เลย นั่นเป็นเพราะกำลังย้ายบ้าน (บล๊อก) อยู่ โดยที่อยู่ใหม่ก็คือ


ซึ่งตอนนี้ยังเป็นเวอร์ชั่น beta อยู่ กำลังเร่งเก็บรายละเอียด และย้ายบทความในบล๊อกนี้ไปที่โน่นทั้งหมด

ดังนั้นบทความนี้คงเป็นบทความสุดท้ายที่จะเขียนในบล๊อกนี้แล้วล่ะนะ บทความหลังจากนี้จะย้ายไปเขียนต่อในโน้นแทน
ขอบคุณทุกท่านที่ติดตามอ่านกันมา (เขียนมา 100 บทความกับ 100,000 pageview พอดี)

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

09 เมษายน, 2558

บันทึก1ปีกับ Mirrorless...เริ่มเล่นกล้องมา365วันแล้วนะ

วันก่อนเขียนบล๊อก บันทึก "เริ่ม" ใช้คอมพิวเตอร์มาครบ 10 ปีแล้วนะ ไป มาวันนี้ก็ครบ 1 ปีที่เริ่มเล่นกล้องมา ดังนั้นก็จัดไปอีกบล๊อกละกัน (ฮา)

เริ่มจากไม่ชอบ(โดน)ถ่ายรูป

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

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

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

DSLR กล้องใหญ่ดำเมี่ยมของมือโปร
มันคือกล้องใหญ่ที่ช่างถ่ายใช้กัน ไม่ต้องอธิบายมากเนอะ? คุณภาพและการปรับแต่งสุดๆ อยู่แล้ว แต่ไม่ผ่านเกณท์เพราะมัน ใหญ่! ไป

สมัยก่อนมีตัวเลือกแค่ 3 ตัวที่ว่าไปเท่านั้น ทำให้แม้มีความคิดจะถ่ายรูปเล่นนานแล้ว แต่ไม่อยากลงทุน คอมแพ็คก็ไม่ได้ดีกว่ามือถือมากนัก แล้วDSLRก็ใหญ่ไป พวกบริษัทกล้องคนเห็นว่ามีคนคิดแบบนี้หลายคน งั้นออกกล้องที่มันอยู่ตรงกลางระหว่างคอมแพ็คกับDSLR...นั่นคือ

Mirrorless!


เอาล่ะ กลับเข้าเรื่อง ... เมื่อมี mirrorless ออกมาเลยทำให้เราตัดสินใจละจากมือถือมาใช้กล้องได้ง่ายขึ้น และตัดสินใจซื้อในที่สุด

สำหรับคนที่ต้องการรู้ละเอียดกว่านี้ไปอ่านเรื่องกล้องได้ใน มือใหม่หัดถ่ายรูป - ตอนที่ 1 มารู้จักกล้องดิจิตอลกันเถอะ นะ

โดยเลือกของค่าย Sony นะ

Sony NEX-5T คู่มือที่ใช้มา1ปี ... แน่นอนว่ารูปนี้ใช้ htc ถ่ายให้เพราะมีกล้องอันเดียว

- เหตุผลข้อที่หนึ่งคือบอดี้และดีไซน์รูปลักษณ์ของกล้องมันสวยที่สุด และมีสีขาวให้เลือกซื้อ กล้องมิเรอร์เลสของค่ายอื่นอย่าง Cannon, Nikon ที่เป็นค่ายใหญ่ฝั่งDSLRก็ดูจะไม่ใช่ทางเลือก ส่วน Olympus, Panasonic, Fujitsu พวกนั้นดีไซน์ออกมาเป็นกล้องแบบดั้งเดิมน่าจะเอาใจคนชอบวินเทจได้ แต่ไม่ใช่เรา (ฮา)
- มีคนบอกว่า Sony เลนส์แพงนะ กลัวป่ะๆ ... หึหึ แพงจริงแต่กล้องสวย ยอมๆ
- เท่าที่อ่านรีวิวมา ดูตัวเองเข้ากับค่าย Sony มากที่สุด เพราะเหมือนโซนี่จับตลาดกลุ่มคนจริงจังแต่ไม่จริงจังกับการถ่ายภาพ เอ๊ะ ยังไงนะ (หมายความว่าปุ่มและตัวควบคุมทำออกมาแบบใช้ง่ายสุด แต่อาจจะขัดใจคนชอบกล้องแบบดั้งเดิม)
- เซ็นเซอร์รับภาพของกล้องมิเรอร์เลส Sony ใหญ่เท่ากล้อง DSLR รุ่นเล็กเลย
- เหนือสิ่งอื่นใดคือมันสวยนั่นแหละ 555

แล้วเรื่องการใช้งานล่ะ

ตั้งใจไว้ว่าถ้าซื้อกล้องมา แน่นอนเราจะไม่ซื้อคอมแพ็คอยู่แล้ว ต้องเป็นกล้องระดับ(เกือบ)โปร แล้วการจะซื้อกล้อง(เกือบ)โปรมาใช้งานโหมด Auto มันก็ยังไงอยู่ เลยต้องซื้อหนังสือถ่ายภาพมาอ่านกันเลย

*หมายเหตุ โหลด Auto ของกล้องระดับนี้ไม่ใช่ว่าไม่ดี คือมันฉลาดมาก แต่บางครั้งก็ไม่ถูกใจคนถ่าย เรามักจะใช้ Auto กับสถานการณ์ที่มันเร็วจริงๆ ปรับค่ากล้องไม่ทัน ก็ Auto นี่แหละ แกคิดให้หน่อยละกัน ฉันกดชัตเตอร์อย่างเดียว

- ทฤษฎีการถ่ายภาพ เป็นอะไรที่ make sense แต่ปัญหาคือมันเยอะสำหรับมือใหม่ ทำให้แรกๆ จำไม่ได้เลยว่าสถานการณ์แบบนี้ต้องตั้งค่ายังไง
- แรกๆ จะถ่ายช้ามาก รูปนึงคิดก่อน1นาทีกว่าจะหาเจอว่าต้องปรับอะไร
- ทริปแรกที่ไปเที่ยว "ถ่ายไม่ทัน" ก็เลยต้องกลับมาใช้โหมด Auto ไปก่อน
- มีวันนึงไปเดินเล่นรอบมหาลัยแล้วฝึกถ่ายรูปไปเรื่อยๆ เลยด้วย
- กว่าจะเริ่มใช้เป็นก็ประมาณ6เดือนต่อมา ไม่ใช่เป็นช้านะ แต่ไม่ค่อยได้ไปไหนเลย (เป็นคนเที่ยวน้อย แต่ดันอยากถ่ายรูป)

เลนส์ ถ้าจะเล่นยังไงก็เสียตังค์เพิ่ม

ขึ้นชื่อว่าเป็นกล้องดิจิตอลชนิดเปลี่ยนเลนส์ได้ ดังนั้นถ่ายไปสักพักมีเรื่องต้องควักเงินแน่นอน โดยชนิดของเลนส์กล้องแบ่งคร่าวๆ เป็น 4 ชนิดคือ เลนส์มุมกว้าง (wide), เลนส์ธรรมดา (normal), เลนส์ถ่ายไกล (tele), เลนส์ถ่ายของเล็กๆ (macro) โดยปกติแล้วเขาว่ากันว่าสายถ่ายวิว ให้ซื้อเลนส์ไวด์มุมกว้างเพราะจะได้เก็บภาพวิวได้เต็มๆ แต่

เราซื้ออันแรกก็เลนส์เทเลถ่ายไกลเลย

เพราะการถ่ายวิวแบบเรา ส่วนใหญ่จะถ่าย crop รูป ไม่ถ่ายเก็บภาพใหญ่ๆ เต็มๆ มากกว่า

ไม่ถ่ายภาพคนนะ!

- อย่างที่บอกไปข้างต้นว่าเป็นคนไม่ชอบโดนถ่ายรูป ก็เลยไม่ค่อยถ่ายรูปคนอื่นไปด้วย ... งั้นซื้อกล้องมานี่ ถ่ายอะไรบ้างล่ะ
- ค้นพบว่าตัวเองเป็นสายถ่าย Landscape (วิวทิวทัศน์) และ Object (สิ่งของ) ตั้งแต่ก่อนจะซื้อกล้องแล้วไงล่ะ


- ถ้าจะถ่ายคนจริงๆ ส่วนใหญ่จะถ่ายแบบ Candid (คนที่เป็นแบบไม่มองกล้อง ทำท่าเป็นธรรมชาติเพราะไม่รู้ตัว) ด้วยความคิดที่ว่าเราจะถ่าย "ฉาก" คนน่ะเหรอ เป็นตัวประกอบฉากไปซะ! (ฮา)

25 มีนาคม, 2558

บันทึก "เริ่ม" ใช้คอมพิวเตอร์มาครบ 10 ปีแล้วนะ

ไม่ได้เขียนบล๊อกมาเป็นเดือนแล้ว หายไปนานมาก เพราะตอนนี้กำลังย้ายบล๊อกอยู่! คือจะเลิกใช้ blogger แล้วไปเปิดเซิร์ฟเวอร์เขียนของตัวเองแทน ใครอยากเข้าไปดูก็ได้ที่ TAMEMO.com แต่ยังไม่เปิดอย่างเป็นทางการนะ ยังไม่ต้องเข้าไปก็ได้ แล้วไว้จะมาประกาศอีกทีเร็วๆ นี้

วันก่อนเจอกระทู้ในเว็บเด็กดี อยากรู้มั้ย เมื่อก่อน dek-d writer หน้าตาเป็นไง
Dek-D Writer เป็นเว็บสำหรับอ่านนิยายและลงนิยายที่แต่งเองซึ่งสมัยก่อนยังเรียกว่า Entertain อยู่
ว่าแต่ทำไมถึงเกริ่นบันทึกการใช้คอมพิวเตอร์ด้วยเรื่องนี้น่ะเหรอ เพราะย้อนกลับไปช่วงเดือนมีนาคม-เมษายนเมื่อ 10 ปีที่แล้วพอดี เจ้านี่แหละเป็นสาเหตุที่ทำให้เราเริ่มใช้คอมพิวเตอร์

จับคอมครั้งแรกด้วยเรื่องที่ไม่เกี่ยวกับคอมเลย

10 ปีที่แล้วคงไม่มีใครคิดว่าเด็กที่วันๆ เอาแต่ทำอะไรออฟไลน์ไม่เคยคิดจะแตะคอมพิวเตอร์เลยนอกจากทำงานส่งที่โรงเรียนจะกลายมาเป็นคนที่ทำงานสายคอม เป็นโปรแกรมเมอร์แบบทุกวันนี้
แล้วถามว่าตอนนั้นเป็นอะไร เป็นหนอนหนังสือจ้า ชอบอ่านหนังสือมาก ทั้งมีสาระและไม่มีสาระ
มีใครรู้บ้างว่าสมัยก่อนอ่านและแต่งนิยายและวาดการ์ตูนเล่มด้วย (ฮา) แต่แต่งลงสมุดนะ ใช้เขียนเอานี่แหละ โลเทคโนโลยีมากๆ ในขณะที่เพื่อนๆ กลับบ้านเปิดคอม เข้าอินเตอร์เน็ต เล่นRO (แร๊กนาร๊อค ออนไลน์) คุยMSN ส่วนเจ้านี่เอาแต่อยู่กับกองหนังสือแบบว่าอย่ามายุ่งกันเลยคอมพิวเตอร์

แต่จุดเปลี่ยนของเรื่องก็คือ สมัยก่อนเวลาพูดถึงนิยายเนี่ย ก็ต้องแต่งไปลงเว็บเด็กดีซึ่งตอนนั้นเป็นเวอร์ชั่นปี2548ซึ่งกำลังดังมากเพราะระบบให้นักเขียนอัพนิยายเองได้เพิ่งทำเสร็จไม่นาน สมัยก่อนใครจะลงนิยายจะต้องส่งเมลไปให้เว็บมาสเตอร์เอาลงให้ ยากเกิ๊น ตอนเราเริ่มเล่นเลยเป็นเวอร์ชั่นที่2 (ปี2547-2548 .. ดูในกระทู้ที่แปะไว้นะ เก่ามาก) แต่ปัญหาคือ 

20 กุมภาพันธ์, 2558

งานออกแบบ/สินค้าตัวนี้ห่วยจัง! เพราะคนทำมีฝีมือแค่นี้(จริงเหรอ???)

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

** สำหรับสายงานที่เกี่ยวข้องกับการออกแบบและเขียนโปรแกรมหรือITควรจะเข้าไปอ่านข่าวและคอมเมนท์เองด้วยนะ
** ล่าสุดเว็บกสิกรเปลี่ยนกลับเป็นแบบเดิมแล้วล่ะ (ภายใน1วันหลังจากlaunch 20 ก.พ.)

ส่วนใหญ่แล้ว ไม่ว่าธุรกิจอะไรก็ตามที่มีการขายสินค้าให้ลูกค้า ซึ่งในที่นี้พูดถึงทั้งเป็น "รูปธรรม (สิ่งของ hardware)" และ "นามธรรม (โปรแกรม เว็บ software)" นั้น สิ่งแรกที่ลูกค้าเห็นหรือเรียกว่าเป็น First Impression ให้เขาประทับใจหรือหรือยี้ในครั้งแรกเลยก็คือ UI - User Interface หรือ งานดีไซน์นั่นเอง


ล่าสุด กสิกรไทยได้ทำการปรับโฉมหน้าเว็บใหม่ ซึ่งก็ออกมาเป็นแบบรูปข้างบนนี่! ถ้าถามว่ามันสวยมั้ย?
คำถามนี้คงต้องย้อนถามก่อนว่า...

ถามใครล่ะ??

ถ้าคุณอยู่ในวงการพัฒนาเว็บไซต์หรือเป็นคนที่เล่นเว็บเปิดแอพประจำคำตอบ 90% น่าจะออกไปทาง "แย่มาก มันห่วยสิ้นดี!!" แต่รู้มั้ยว่าคำถามเดียวกันนี้ แต่ไปถามกับคนอีกกลุ่มหนึ่งคำตอบที่ได้อาจจะแค่ "ทำไมเหรอ ก็สวยดี(มั้ง)"

เอาล่ะ เชื่อว่าคนที่เข้ามาอ่านบล๊อกนี้น่าจะเป็นคนกลุ่มแรกมากกว่าที่เปิดเข้าเว็บไปปุ๊บก็บ่นเลยว่าใครออกแบบมาเนี่ย มันช่าง@#$%&*เหลือเกิน

ป.ล. เราก็ว่ามันไม่ได้แย่ขนาดนั้นนะ UI สวยดีแต่ UX ไม่ผ่าน -- สำหรับคนที่รู้จัก UI แต่ยังไม่รู้จัก UX ไปอ่านเพิ่มได้ที่นี่ จิ้มเลย!
ป.ป.ล. คนอีกกลุ่มที่ว่าคือกลุ่มที่ไม่ค่อยเล่นคอม/มือถือ หรือเล่นแต่เป็นคนรุ่นผู้ใหญ่ที่ไม่ค่อยสนดีไซน์เท่าไหร่นะครับ ลองถามมาแล้ว คนกลุ่มนี้ส่วนใหญ่จะบอกว่าเว็บยุคใหม่ดีไซน์เรียบๆ นี่แหละที่มันไม่สวยเพราะมันไม่มีอะไร 555

แล้วออกแบบเช่นนี้มา มันไม่ดีตรงไหนเหรอ

เท่าที่อ่านคอมเมนท์ของแต่ละเจ้าที่มาวิจารณ์ ส่วนใหญ่จะบอกว่าหน้าเว็บนี้มันคงจะดี ถ้าเป็นยุคปี90s-ช่วงปี2000 ที่หน้าจอคอมพิวเตอร์ถูกจำกัดแค่ 800 x 600 px แล้วการออกแบบเว็บโดยใช้ Flash ทั้งหน้ายังเป็นที่นิยมอยู่

แต่นี่มันปีอะไรเข้าไปแล้วครับ 2015 ... 2015แล้วท่าน เดี๋ยวนี้เทรนด์เขานิยมเว็บคลีน ของไม่รก อ่านง่ายหาของง่าย และที่สำคัญคือต้อง Responsive เปิดในจอขนาดเท่าไหร่ก็ได้ตั้งแต่หน้าจอคอมไปจนถึง Smartphone พูดง่ายๆ คือดีไซน์ใหม่นี่มันไม่ตอบโจทย์พวกนี้เลย ให้ตายเถอะ! (ยิ่งคุณเห็นมันแล้วหงุดหงิดเท่าไหร่ แสดงว่าคุณมีความเป็น Developer/Power User เท่านั้น เพราะจากที่ไปถามมา End User จริงๆ จะบอกแค่ว่า "ก็สวยดี" เมื่อคุณไปถามเขา)

โอเคมาเข้าเรื่องกันดีกว่า...
(อ้าว แล้วที่เกริ่นมายืดยาวนี่ยังไม่เข้าอีกเหรอ 555 ยัง!)

08 กุมภาพันธ์, 2558

[Review] Fury - วันปฐพีเดือด (★★☆☆)

Fury - วันปฐพีเดือด

ให้คะแนน (★★)

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

ตอนนี้มีกระแส The Imitation Game กำลังมาแรง เรื่องนั้นก็เกี่ยวกับเหตุการณ์ในสงครามโลกครั้งที่สองเหมือนกันแต่เรื่องนี้ดูแล้วเขียนค้างไว้นานแล้ว (ดองนั่นเอง)

ฟิวรี่เป็นชื่อของรถถังรุ่นเชอร์แมน (รถถังมาตราฐานของฝ่ายอเมริกา) คันที่พระเอกของเรื่องขับ อ่ะ..พูดถึงรถถังแน่นอนว่าเรื่องนี้มันต้องเกี่ยวกับสงครามแน่ๆ ช่วงเวลาของเรื่องฟิวรี่อยู่ในยุคสงครามโลกครั้งที่สอง WWII ซึ่งตอนนั้นฝ่ายสัมพันธมิตรเริ่มโต้กลับและบุกเข้าประเทศเยอรมันนีแล้ว

เรื่องนี้มีตัวเอกเด่นๆ 2 คนคือ "วอร์แดดดี๊" (แสดงโดยแบรด พิตต์) ในตำแหน่ง ผู้บัญชาการรถถัง กับ "นอร์แมน" ตำแหน่งผู้ช่วยคนขับและพลปืนกล เรื่องเปิดมาโดยที่เล่าให้เห็นว่าผลปืนกลประจำรถของพวกพระเอกโดนระเบิดเสียชีวิตไป ทำให้กองทัพส่งพลปืนกลคนใหม่มาให้ประจำการแทน แต่พลปืนกลคนใหม่ก็ดันเป็น นอร์แมน เด็กหนุ่มที่ยังไม่เคยลั่นไปปืนฆ่าคนเลยประมาณว่าเป็นเด็กหนุ่มที่ไม่น่าจะมาเป็นทหารอะไรประมาณนั้น เลยมีดราม่ากันนิดหน่อยระหว่างผลประจำรถถังเดิมกับนอร์แมนที่มองสมาชิกใหม่เป็นแค่ไก่อ่อนที่ทำอะไรไม่ได้

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

โดยส่วนตัว คาดหวังว่าจะได้เห็นฉาก action รบกันโดยใช้ยุทธการรถถัง/ยานเกราะ แต่ก็มีฉากแบบนี้ไม่เยอะ หลักๆ มี 3 ฉากเท่านั้นคือฉากใช้ขบวนรถถัง+ทหารราบเข้าตีที่มั่นศัตรู (กลยุทธ์มาตราฐานของฝ่ายอเมริกา) ฉากรถถังเชอร์แมน vs รถถังไทเกอร์ แบบ 4ต่อ1 และฉากสุดท้ายที่ไปตั้งหลักต้านทัพเยอรมัน ... นอกนั้นจะเป็นฉากดราม่าประเด็นความโหดร้ายของสงครามที่เล่าผ่านนอร์แมนที่เป็นเหมือนทหารใหม่เพิ่งมาจับปืนฆ่าคน ซึ่งขอตัดคะแนนตรงนี้เพราะอยากดูฉากบู๊โดยใช้รถถังมากกว่าเพราะเคยดูหนังสงครามโลกที่เน้นฉากบู๊มากกว่าดราม่าแบบ U-571 แล้วชอบมาก แต่เรื่องนั้นเป็นทัพเรือ/เรือดำน้ำ

ดังนั้นถ้าใครชอบหนังดราม่า เน้นอารมณ์อาจจะชอบเรื่องนี้มากกว่าเราก็ได้ แต่ถ้าชอบแบบเราก็มีให้ดูแค่3ฉากเท่านั้นแหละ แต่3ฉากนั้นสนุกนะ อลังการโดยเฉพาะคนที่รู้ว่าวิธีการต่อสู้ด้วยรถถังเป็นยังไงจะดูแล้วอินฯ ดี (เราดู Girl und Panzer มาแล้วเลยรู้กลยุทธ์ส่วนใหญ่)

03 กุมภาพันธ์, 2558

ทำไมถึงต้องเขียนโปรแกรมแบบ OOP กัน? เขียนแบบซัดโค้ดตู้มเดียวที่เคยทำตอนเริ่มเรียนเขียนโปรแกรมไม่ได้เหรอ

ตั้งแต่ปีใหม่ เหมือนตัวเองเขียนแต่บล๊อกแปลบทความ ยังไม่มีบทความออริจินอลเลย คิดไปคิดมาเขียนเรื่อง OOP ดีกว่า เพราะช่วงนี้ไปดูโค้ดน้องหลายคนแล้วเขียนกันแบบ Structure ตรงๆ ซึ่งช่วยแก้ได้ยากมาก มาเขียน OOP กันเถอะเพื่อชีวิตที่ดีขึ้น (มั้งตัวเองและผู้อื่นเลยนะ)

ก่อนอื่นต้องมาทำความเข้าใจคำว่า OOP กันก่อนนะ

OOP ย่อมาจาก Object Oriented Programming แปลเป็นไทยว่า "การเขียนโปรแกรมแบบวัตถุ" ! ห๊ะ...แปลออกมายิ่งงงเข้าไปใหญ่

งั้นขอย้อนกลับไปหน่อย ปกติแล้วทุกคนมักจะเรียนเขียนโปรแกรมครั้งแรกอาจจะเป็นภาษา C, Java (หรือภาษาอะไรก็ตามเถอะ) ตอนนั้นเรายังไม่สนใจว่าภาษาโปรแกรมที่เราเรียนกันอยู่นั่นน่ะเป็นภาษาแบบไหนเพราะแค่ทำความเข้าใจ if-else loop function อะไรพวกนั้นก็เต็มหัวไปหมดแล้ว

ขอยกตัวอย่างภาษา C ละกัน สำหรับคนที่เคยเขียนมาแล้วน่าจะคุ้นกับเจ้านี่
void main()
{
    //เราจะซัดโค้ดทั้งโปรแกรมลงในนี้แหละ
}
จริงมั้ยล่ะ ตอนเรียน C ไม่ว่าจะเขียนโปรแกรมเล็กแบบ Hello World หรือโปรแกรมใหญ่ๆ ระดับ Final Project ตอนท้ายเทอมเป็นพันบรรทัดเราก็ยัดมันลงไปใน void main นี่แหละ (ถ้าใครเก่งหน่อยก็อาจจะมีการแยกโค้ดออกมาเป็น function บ้าง แต่คิดว่ารุ่นนึงน่าจะมีไม่เยอะที่ทำ) แต่โดยรวมก็คือเขียนคำสั่งต่อเนื่องไปเรื่อยๆ อาจจะมีบางส่วนที่ชวนปวดหัวบ้าง แต่ก็ยังไปถึงปลายทางได้แหละน่า


อ่านมาถึงตรงนี้อาจจะมีคำถามเกิดขึ้นว่า แล้วมันไม่ดียังไงเหรอ? เขียนออกมาแล้วโค้ดก็ทำงานได้นะ

โอเค โค้ดทำงานได้แต่ต้องมีอะไรที่มันไม่ดีแน่ๆเขาถึงคิดวิธีการเขียนโปรแกรมแบบอื่นขึ้นมาใช้แทน

Structure VS Object

รู้ไหมว่าการเขียนโปรแกรมโดยซัดโค้ดทุกอย่างลงไปกระจุกอยู่ใน void main ตัวเดียวเนี่ยเขาเรียกว่าการเขียนโปรแกรมแบบ "Structure Programming"
อธิบายง่ายๆ คือเขียนโค้ดทีละบรรทัดเพื่อบอกให้คอมพิวเตอร์ทำอะไรไปเรื่อยๆ วิธีนี้เป็นวิธีที่เคยฮิตสมัยเพิ่งมีภาษา C แน่นอนว่าสำหรับยุคนี้มันเก่าไปแล้ว

เหตุผลล่ะ?

ทำงานเป็นทีมได้ยาก

เรื่องแรกที่เป็นจุดอ่อนของ Structure Programming คือมันทำงานเป็นทีมได้ยาก เคยทำงานเป็นคู่หรือเป็นกลุ่มไหม ตอนที่ต้องเขียนโปรแกรมมากกว่า 1 คนคุณทำยังไงล่ะ

อืม... ทางเลือกมันก็มีไม่เยอะนักหรอกนะ คือไม่นั่งสุมหัวช่วยกันเขียนบทคอมเครื่องเดียว คุณก็แยกงานกันทำแล้วพอเอามาโค้ดมารวมกันก็ระเบิดจ้า!

อ่านไม่รู้เรื่อง / เอาโค้ดมาใช้ใหม่ไม่ได้

ตอนเขียนโปรแกรมแบบ Structure เราอยากทำอะไรก็ทำใช่ไหม อยากประกาศตัวแปรเพิ่มก็ประกาศ ตรงนี้เกิดปัญหา งั้นวาง if ดักไว้ละกัน โค้ดตรงนี้เป็นส่วนแสดงผลนะ และอื่นๆ อีกมากมาย
คือมันให้เราทำอะไรก็ได้ ดังนั้นมันจึง "อ่านยาก"

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

อีกเรื่องหนึ่งคือเอาโค้ดที่เคยเขียนมาแล้วมาใช้ใหม่ไม่ได้ อยากเราเคยเขียนโปรแกรมหาค่าเฉลี่ยคะแนนนักเรียนไปเมื่อสองวันก่อน วันนี้ต้องมาเขียนโปรแกรมหาค่าเฉลี่ยเงินเดือนพนักงาน เอ๊ะ! มันคล้ายๆ กันนะ ใช้โค้ดเก่าเลยได้มั้ย ... จากนั้นก็เปิดงานเก่า copy+paste ซะแล้วก็ปรับๆ อีกนิดหน่อย ถ้าปรับได้ก็ดีไป ถ้าไม่ได้ยิ่งปรับยิ่งเละกว่าเดิมจนถึงระดับที่คิดได้ว่าเขียนใหม่มันดีกว่า

....

02 กุมภาพันธ์, 2558

[Review] การ์ตูน "ไม่ไทยเบย"

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


การ์ตูนเล่มนี้เป็น Debut ฉบับพิเศษที่สำนักพิมพ์สยามอินเตอร์ฯ (CartoonThai Studio) เขาจัดขึ้นมาเพื่อคัดเลือกนักเขียนการ์ตูนประมาณนั้นแหละนะ

โดยส่วนตัวเห็นว่าคอนเซ็ปน่าสนใจดีคือให้แข่งกันในหัวข้อ

ไม่ไทยเบย

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

เรื่องที่แนะนำ
- งามอย่างไทยแท้ โดย Firodendon (คนนี้เคยอ่านงานเขามาก่อน เป็นหนังสือประกอบภาพเรื่อง Time to be a Freelance เรื่องนี้ก็แนะนำนะ ใครอยากทำฟรีแลนซ์ลองไปหามาอ่าน) ... เนื้อเรื่องคือโรงเรียนแห่งหนึ่งจะจัดงานวัฒนธรรมแต่คอนเซ็ปปีนี้โรงเรียนกำหนดธีมไว้ให้เป็น "งามอย่างไทยแท้" ปัญหาจึงเกิดขึ้นเมื่อแต่ละชมรมไม่รู้จะแถอะไรให้มันเข้าธีมงาน

- สู้ตัยยัยเจ้าที่ โดย GAPANGMAN ... เรื่องของหนูผัก เจ้าที่(น่ารัก)ที่ครอบครับที่ดูแลอยู่ดันย้ายไปต่างประเทศซะงั้น เป็นการเอาเจ้าที่ไทยไปลุยต่างแดนกันเลยทีเดียว แถมต้องไปบู้กับพวกปีศาจฝรั่งในบ้านหลังใหม่ซะด้วย

- Why so Thai? ทำไมต้องไทยแท้ โดย ไนตี้ ... เรื่องนี้ออกจะซีเรียสนิดๆ คือเป็นการคุยกันระหว่างคน 2 คน คนหนึ่งประมาณว่าชาตินิยม ต้องเป็นไทยเท่านั้น อีกคนก็ให้เหตุผลว่าจริงๆ ควรจะกลางๆ พอนะเพราะวัฒนธรรมไทยก็รับมาจากชาติอื่นเยอะเหมือนกัน ให้ข้อคิดว่าคนไทยมักอายที่จะทำตัวเป็น "ไทย" ไม่เหมือนที่ปากพูด

ก็ลองไปหามาอ่านเล่นละกัน เป็นการ์ตูนที่มีอะไรมากกว่าที่คุณคิดนะ ;)

17 มกราคม, 2558

[Review] คอร์ส Android Developer by TheCheeseFactory (nuuneoi.com)





คะแนนของคอร์ส ดูภาพรวมให้ (★★★★☆)
แต่ถ้าความประทับใจส่วนตัวให้ (★★★★★)

เดี๋ยวบอกเหตุผลข้างล่าง

เมื่ออาทิตย์ที่ผ่านมา ได้มีโอกาสไปเข้าคอร์ส Android Developer by The Cheese Factory (nuuneoi.com) มา ... เลยจะเอามารีวิวซะหน่อย




สถานที่เรียน

ครั้งนี้จัดที่ Hubba เอกมัย ซึ่งเป็น Co-Working Space ประมาณว่าพื้นที่/ออฟฟิศให้เช่ามานั่งทำงานนั่นแหละ


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

แต่ข้อเสียที่เห็นชัดที่สุด (ไม่นับราคาค่าใช้สถานที่นะ) คือมันไกลจาก BTS มากๆๆๆๆ

กะ .. ไกล!

จากรูปนี่คือแค่ระยะทางจากปากซอยก็ไกลพอสมควรแล้วนะ เดินไป BTS เอกมัยไกลกว่าอีก และเรียกรถไม่ค่อยได้ด้วย

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

Welcome to the Class!

สภาพห้องเรียนดูจากรูปด้านบนได้เลย โต๊ะเล็กไปซะหน่อย ส่วนรูปข้างล่างนี่เป็นมุมมองของเราเวลานั่งดูกระดานกับสไลด์ละนะ นั่งกันแถวหน้าสุดเลย (ฮา)

เอ้า! เปิดสกิลเสมียนเลเวล96 ... พิมพ์เข้า! พิมพ์ๆ แกรกๆๆๆๆ

แล้วคอร์สนี้เป็นยังไงบ้าง?

ตามชื่อคอร์สละนะ แน่นอนว่าคอร์สนี้สอนเขียนแอนดรอยด์แอพอยู่แล้ว เป็นการเขียนแอพแบบ Native นะ ใครคิดจะเขียนเกมจะไม่เหมาะกับคอร์สนี้ พวกนั้นพี่เนยแนะนำให้ไปใช้ Unity ดีกว่า

ตัวแอพเขียนด้วย Android Studio (มาถึงยุคที่เราจะบอกลา Eclipse กันแล้วนะ) และรันเทสบนเครื่องจริง ใครไม่มีมือถือแอนดรอยด์สามารถยืมได้ในคลาส .. แต่โน๊ตบุ๊คต้องเอาไปเองนะ


ในคอร์สนี้เราจะได้เอกสารเป็นสไลด์หนาครึ่งรีม (หนามาก เกือบ200หน้าเห็นจะได้ O__O) สรุปโค้ดแบบ "Cheese-Sheet" 1เล่ม และประกาศนียบัตร1ใบ หึหึ

แล้วคอร์สนี้มันดียังไงล่ะ

ปกติแล้วคอร์สสอนอะไรขั้น Advance ในประเทศไทยมักจะหาไม่ค่อยได้ (ไม่ใช่แค่ด้านโปรแกรมมิ่งนะ จะคอร์สเรียนภาษาหรืออะไรพวกนี้ ไม่มีคนเปิดสอนเลย) ดังนั้นส่วนใหญ่เลยถือคติว่า "อยากได้ต้องทำเอง" และมันใช้เวลานานมากกว่าจะได้มา หมายความว่าต้องอ่านเอง Googleเอง ลองผิดลองถูกเอง ... แอนดรอยด์ก็เช่นกัน

แต่พอคอร์สนี้เปิดเท่านั้นแหละ เราก็จะไม่รอช้าที่จะสมัครมาลองเรียนดู

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

09 มกราคม, 2558

[แปล] ภาษาและเฟรมเวิร์คไหนบ้างที่ Developer ควรจะศึกษาประจำปี 2015


พอดีไปอ่าน The Languages And Frameworks That You Should Learn In 2015มาก็เลยเอามาแปลและเรียบเรียงใหม่ อาจจะไม่เหมือนต้นฉบับมากนักนะ

Language / Platforms 

สำหรับภาษาโปรแกรมปีนี้น่าจะเป็นปีของ Node.js ที่มาแรงมากจนทิ้งห่างจาก php ที่เป็นอันดับ2ไปเลย JavaScript ก็ยังคงอยู่ในลำดับต้นๆ แต่มี Swift เพิ่มเข้ามาในอันดับต่อไป

Framework

Laravel ยังคงอยู่แต่มี Ruby on Rails แซงไปพร้อมกับการที่กูเกิลเปิดตัว(นานแล้ว)และโปรโมท Angular JS ทำให้มันเป็นสิ่งที่น่าจับตามองนะ

มาดูตัวสำคัญๆ กัน

JavaScript

ตอนนี้เราสามารถพบเห็น JS ได้เกือบทุกที่จากสมัยก่อนที่มันทำงานอยู่แค่เบราเซอร์ฝั่ง client แต่หลังจากที่ Node.js เปิดตัวมามันก็แสดงให้เห็นว่า JS เอาไปเขียนในฝั่ง Serverได้ด้วยนะ
ข้อดีของ JS คือมันเป็นภาษาที่เขียนได้ง่ายทำให้เรียนรู้ได้เร็ว แต่ข้อเสียคือมันเขียนได้ง่ายเกินไป บางครั้งก็ทำให้กลายเป็นเรื่องยุ่งยากได้ และการที่มันยังไม่มีคำสั่งในการสร้าง Class แบบจริงจังก็ทำให้มันเขียน OOP ได้ไม่ค่อนถนัดเท่าไหร่นัก ... แต่อย่างว่า มันกระจายตัวไปทุกที่แล้วดังนั้นก็เป็นตัวเลือกที่ควรจะเรียนรู้ไว้

AngularJS

JS Framework (เห็นมั้ยว่าเป็น JS อีกแล้ว)  เอาไว้ทำ interactive website ซึ่งทำและสนับสนุนโดย Google ล่าสุดทำคอร์สติวเตอร์ให้ด้วย เข้าไปดูได้ทาง shaping up with angular.js
จุดเด่นของ Angular คือเน้นความสนใจไปที่ข้อมูลContentในหน้าก่อนจะไปสนใจ DOM ถ้าใครเคยเขียน jQuery หรือแม้แต่ JS แบบดั้งเดิม การเขียนแบบนั้นจะเป็นการเขียนในลักษณะของ "How!" คือวางDOMให้เสร็จแล้วค่อยบอกว่าจะให้มันทำอะไรยังไง
แต่ถ้าเป็น Angular ละก็จะใช้วิธีวางข้อมูลก่อน แล้วค่อยจัดการ DOM ข้อดีคือเราไม่ต้องไปบอกว่าจะให้ทำอะไรยังไงละเอียดเท่าพวก jQuery ดูเป็น Framework มากกว่า แต่ต้องจำคำสั่งและ config ให้ถูกด้วยนะ
แล้วถามว่ามันดีกว่า jQuery มั้ย? อันนี้ก็ต้องบอกว่าแล้วแต่ชอบ แต่ Angular น่าจะให้งานได้เร็วกว่า jQuery เพราะมันแทบจะไม่ต้องเขียนโปรแกรมส่วนที่เป็น logicเลย ตัว Frameworkจ ัดการให้หมดแล้ว เราแค่เซ็ตค่าคำสั่งให้ถูกก็พอ แต่ข้อเสียคือถ้าเป็นโปรแกรมที่ซับซ้อน jQuery น่าจะยังได้เปรียบกว่า

React

เป็น JS Library อีกตัวที่น่าสนใจสำหรับสร้าง user interface โดย Facebook + Instagram ถ้ารูปจักโครงสร้างแบบ MVC แล้วละก็ การอธิบายว่า React คือ V น่าจะเข้าใจได้ง่ายกว่า
การเขียน React จะเขียนอยู่ใน <script type="text/jsx"> ซึ่งแน่นอนว่ามันไม่ใช่ JS เพียวๆ แต่เป็น JS ที่เราสามารถใส่ view (ในรูปของ XML + HTML เข้าไปได้เลย)
ลองไปดูตัวอย่างได้ที่ React

Node.js

สร้าง network server application ด้วย JS ซึ่งตอนนี้มี framework ออกมาให้ใช้เยอะมากตั้งแต่ Express, websocket การลงโมดูลใหม่ก็ทำได้ง่ายผ่านการใช้งาน npm
Node.js ใช้ JS ดังนั้นมันเลยทำงานแบบ asyncronous ซึ่งทำให้เวลาได้รับ request มาแต่ละตัวจะไม่จำเป็นต้องรอกัน

NoSQL Database

ฐานข้อมูลแบบ Relational แบบเดิมที่เดิมข้อมูลเป็นตารางอาจจะไม่ตอบโจทย์รูปแบบข้อมูลตอนนี้ได้แล้ว Not Only SQL จึงเกิดขึ้นมารองรับแทน และเสริมด้วยการที่พวกมันทำ Scalable ได้ด้วย
ตัวที่เด่นๆ ก็มี mongoDB (document) กับ redis (key-value)

Less / Sass / Stylus

ฝั่ง script มีการพัฒนากันไปไกลแล้ว ด้านฝั่ง css เลยทำบ้าง (ทำมานานแล้วแหละนะ) เพื่อทำให้เขียน css ได้ง่ายและสั้นขึ้น อีกทั้งยังใช้พวกตัวแปรได้ด้วย แต่ส่วนใหญ่เวลาเอาไปใช้จริงจะ compile ออกมาเป็นไฟล์ css อยู่ดีนะ

Classic Full-Stack Framework

เฟรมเวิร์คระดับคลาสสิกที่ก็ยังใช้ได้อยู่ ไม่ได้ล้าสมัยแต่อย่างใด เช่นพวก Laravel (php), Ruby on Rails (Ruby), ASP.NET


แล้วก็อย่าลืมพวก php, Wordpress, jQuery ด้วยนะ พวกนี้เป็นวิธีที่ค่อนข้าง perfect ในการสร้างเว็บไซท์

โดยเฉพาะ Wordpress ที่โตอย่างรวดเร็วมากในช่วงที่ผ่านมา