วันเสาร์ที่ 29 ธันวาคม พ.ศ. 2555

LibreOffice สำหรับหน่วยงานราชการ

เผอิญได้มีประชุมเกี่ยวกับการช่วยแก้ปัญหาการละเมิดลิขสิทธิ์ซอฟต์แวร์ ในหน่วยงานภาครัฐและได้มีการหยิบยกเอาเรื่อง LibreOffice ขึ้นมาหารือเนื่องจากเป็นทางออกเดียวที่จะทำให้อัตราการละเมิดลิขสิทธิ์ลดลงไปได้ เพราะหน่วยงานส่วนใหญ่จะซื้อ Windows และไม่ยอมใช้ Linux Desktop ดังนั้นการลดรายจ่ายในเรื่องของ Microsoft Office จึงทำได้ง่ายกว่า ประเด็นที่หยิบยกขึ้นมาพูดคุยได้แก่เรื่อง




  • แหล่งเรียนรู้การใช้งาน LibreOffice

  • Extension เพิ่มเติมสำหรับภาครัฐ

  • LibreOffice รุ่นพิเศษ



จากการประชุมพบว่าประเด็นปัญหาเหล่านี้ได้ทำมาเกือบหมดแล้ว ได้แก่ แหล่งเรียนรู้ซอฟต์แวร์โอเพนซอร์ส





ส่วน Extension เสริมสำหรับภาครัฐ




ตรวจละเมิดลิขสิทธิ์ภาครัฐ

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



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



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



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


วันพฤหัสบดีที่ 13 ธันวาคม พ.ศ. 2555

ตัดสินงานประกวดแข่งขันงานศิลปหัตถกรรมนักเรียน ครั้งที่ 62 ที่ จ.ระยอง

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




  • โครงการคอมพิวเตอร์ระดับ ม.ปลาย

  • เขียนโปรแกรมคอมพิวเตอร์ระดับ ม.ปลาย



สำหรับการตัดสิน โครงการคอมพิวเตอร์ระดับ ม.ปลาย คงไม่ต้องพูดถึงเพราะผม "โหด" อยู่แล้ว ซึ่งกรรมการท่านอื่นๆ "ไม่โหด" เท่าไร ให้คะแนนเต็มกันเยอะพอสมควร โครงงานส่วนใหญ่ยังเป็นการพัฒนาโปรแกรมบนระบบปฏิบัติการ Windows เป็นโปรแกรมการเรียนรู้ มีเกมส์บ้าง และ Mobile App มีกลุ่มแหวกแนวทำหุ่นยนต์เต้นๆ พัฒนาฟอนต์ และตัดต่อวิดีโอ ทำให้รู้สึกงงๆ ว่าโครงการคอมพิวเตอร์ทำไมไม่แบ่งไปเป็นหมวดๆ เพราะงานออกมาหลากหลาย สุดท้ายก็ตัดสินบนเนื้องานที่ควรจะเป็น และแน่นอนว่า โครงงานส่วนใหญ่อยู่ในขั้นพอใช้



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




  • ตีโจทย์ไม่ออก

  • คิดแก้ปัญหาไม่ได้

  • เขียนโปรแกรมได้เฉพาะที่เตรียมมา

  • ลักไก่ไม่เขียนโปรแกรมเพื่อหาคำตอบ เอาผลลัพท์มาแสดงผลเฉยๆ


วันอาทิตย์ที่ 9 ธันวาคม พ.ศ. 2555

ประสบการณ์ใหม่เรียนผ่าน Facebook

บังเอิญได้เห็น Timeline ของคุณอ้นแห่ง Infotronics ผ่านทาง Facebook ว่ามีเรียน Enterprise Web Application Development ซึ่งน่าสนใจดีก็เลยขอร่วม Join Group ด้วย พบว่าเป็น Class เรียนของ น้องนักศึกษา ม.สงขลานครินทร์ วิทยาเขตปัตตานี ซึ่งกำลังเรียนกันอยู่เลยทีเดียว ผมไม่ค่อยแน่ใจว่า คุณอ้นอยู่ที่ปัตตานีหรือเปล่าแต่เห็นน้องๆ อัพเดทกันใน Timeline เรียนทันบ้าง ไม่ทันบ้าง หรือสอบถามปัญหากันผ่านทาง Group ก็เห็นว่าน่าสนุกดี ช่วงแรกๆ ก็ตั้งใจเรียนอยู่ พอมีประชุมครึ่งวันก็เลยไม่ได้เรียนต่อ T_T



ผมมักจะใช้เวลาว่างช่วงกลางดึกเรียนหนังสือกับเพื่อนๆ ต่างประเทศไม่ว่าจะเป็น Online training ของ O'Reilly หรือเรียนด้วยตัวเองผ่าน Code Academy บ้างในบางครั้ง สมัยก่อนเคยเรียน Linux Command Line ผ่าน mIRC แต่การเรียนผ่าน Facebook นี่ครั้งแรกของผมเลยครับ ผมได้ยินหลายครั้งที่อาจารย์มหาวิทยาลัย หรือครูโรงเรียนประถม มัธยม ต้องตามทันเด็กๆ และประยุกต์ใช้เทคโนโลยีให้เกิดประโยชน์ ในกรณีนี้ผมเห็นว่า "เจ๋งดี" ครับ หวังว่าจะได้เรียน Class นี้ซ้ำอีกรอบ


วันพฤหัสบดีที่ 6 ธันวาคม พ.ศ. 2555

เขียน App ขายบน Windows Store ต้องเรียนรู้อะไรบ้าง

คำถามยอดฮิต "เขียน App ขายบน Windows Store ต้องเรียนรู้อะไรบ้าง" เนื่องจากเสียค่า Windows Store Developer ไป 1,500 ด้วยความเสียดายเงินและต้องหาทุนคืน 1,500 ก็เลยหาข้อมูลเพื่อเรียนเขียน Windows App บ้าง แหล่งเรียนรู้ก็มาจาก Windows Dev Center ดังนี้





นี่คือสิ่งใหม่ที่ต้องเรียนรู้ ผมพบว่าเอกสารของ Microsoft ทำออกมาได้ดีเข้าใจง่ายครับ


เขียน App ขายบน Windows Store ต้องจ่ายอะไรบ้าง

เนื่องจากกำลังย้ายค่าย และย้าย Platform เลยเอาตัวเข้าแลกกับ Microsoft อีกครั้งเพราะอยากรู้ว่า เขียนโปรแกรมบน Windows 8 และขายบน Windows Store ต้องจ่ายอะไรบ้าง




  1. Windows 8 แบบกล่อง = 5,200 บาท

  2. Vistual Studio 2012 + MSDN = 40,719 บาท

  3. Windows Store Developer = 1,500 บาท



สรุปรายจ่าย = 47,419 บาท หลายคนถามว่าอยากลองแบบจ่ายน้อยๆ ได้มั๊ยตอบว่าได้ครับ ราคาเป็นดังนี้




  1. Windows 8 Enterprise RTM = 0 บาท

  2. Vistual Studio Express 2012 = 0 บาท

  3. Windows Store Developer = 1,500 บาท



สรุปรายจ่าย = 1,500 บาท ต้องบอกข้อมูลเพิ่มเติมอีกนิดหน่อยคือ Windows 8 RTM ใช้ได้ 90 วัน ส่วน Vistual Studio Express 2012 ใช้ได้ 30 วัน ส่วนรายจ่ายค่า Windows Store Developer จ่ายไปฟรีๆ :P


วิเคราะห์ตลาดซอฟต์แวร์บน Play Store

ผมเอาตัวเองเป็นหนูทดลองเพื่ออยากรู้อะไรบางอย่างในการทำตลาดซอฟต์แวร์บน Android Market แบบซื่อๆ ไม่ได้มี Business Model อะไรซับซ้อน ผมพยายามเขียน App เอาไปวางได้ประมาณ 12 ตัว ตอนนี้กระจายอยู่ในกลุ่ม การศึกษา, เอนเตอร์เทนเม้น โดยตั้งกลุ่มประเทศเป้าหมายแบบรวมๆ ไม่ได้เจาะไปยังกลุ่มเป้าหมายประเทศใดประเทศหนึ่ง เลยเอา App ที่มีสถิติยอดดาวน์โหลดมากกว่า 10,000 ครั้ง เอามาให้ดูซัก 2 App ผลออกมาดังนี้



การศึกษา



เอนเตอร์เทนเม้น



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




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

  • Business Model, Innovation, Idea เป็นสิ่งจำเป็นมากในการทำตลาดบน Online Store อื่นๆ ไม่ว่าจะเป็น Play Store, Windows Store, App World หรือแม้กระทั่ง App Store



ทิ้งท้ายอีกหน่อย เพราะว่ายังรู้สึกเสียใจที่คนไทยยังค่าบัญชีเป็น "คนขาย" ไม่ได้ดังนั้น Business Model จึงต้องเปลี่ยนเป็นลักษณะอื่นมากกว่าการขาย App ซึ่งถ้าคิดจากยอดดาวน์โหลด App ของผม โดยรวมมากกว่า 80,000 ครั้ง ก็น่าจะได้เงิน (แบบตรง) ประมาณ 80,000x30=2,400,000 บาท หัก 30% เหลือสุทธิที่จะได้ 1,680,000 บาท แต่ตอนนี้ผมได้เงินจาก App (Business Model แบบโง่ๆ) แค่ 4,539.36 บาท ห่างไกลจากความเป็นจริงมาก :P


วันอาทิตย์ที่ 2 ธันวาคม พ.ศ. 2555

มาเรียกใช้ Score Online บน Cloud กัน

เนื่องจากโครงการเขียนเกมส์บวกเลขที่ผ่านมาได้วางโครงสร้างของ Score Service เป็น Web Service เพื่อเก็บคะแนนของผู้เล่นแบบ Online ให้บริการบน Cloud ของ OpenShift ซึ่งวางโครงสร้างของ Service แบบลวกๆ แต่สามารถรองรับการใช้งานจากนักพัฒนาอื่นได้ ผมเห็นว่าน่าจะมีประโยชน์สำหรับผู้ที่ต้องการใช้ Score Service ลักษณะนี้ อีกอย่างผมอยากหาใครสักคนมาพัฒนาบริการนี้ต่อ อยากพัฒนาให้ได้แบบ Score Loop หรือ GREE อะไรทำนองนั้น แต่ตอนนี้ยังไม่ไปถึงไหน T_T แต่สามารถเรียกใช้งานได้ครับ ขั้นตอนมีดังนี้




  1. ลงทะเบียนนักพัฒนา

  2. เข้าสู่ระบบ

  3. ลงทะเบียนแอพลิเคชั่น



วิธีการใช้งานออกจะ Geek หน่อยเนื่องจากไม่มี Web User Interface จะต้องใช้ REST Client เท่านั้น หากท่านใช้ Google Chrome อยู่แล้วสามารถติดตั้ง Advance Rest Client และลงทะเบียนแอพลิเคชั่นได้ดังนี้




  • ลงทะเบียนนักพัฒนา




    • Service URL : https://rest-redlinemobi.rhcloud.com/score/user/signup.json

    • Content-Type : application/x-www-form-urlencoded

    • Method : POST

    • ค่าที่ต้องส่งให้ email, password

    • ค่าที่ได้กลับมา pubkey


  • เข้าสู่ระบบ




    • Service URL : https://rest-redlinemobi.rhcloud.com/score/user/signin.json

    • Content-Type : application/x-www-form-urlencoded

    • Method : POST

    • ค่าที่ต้องส่งให้ email, password

    • ค่าที่ได้กลับมา sesskey


  • ลงทะเบียนแอพลิเคชั่น




    • Service URL : https://rest-redlinemobi.rhcloud.com/score/application/register.json

    • Content-Type : application/x-www-form-urlencoded

    • Method : POST

    • ค่าที่ต้องส่งให้ name, package, sesskey, pubkey

    • ค่าที่ได้กลับมา appkey




เมื่อได้ appkey ให้จดเอาไว้นะครับ เพราะเราจะเอามาให้ตอนที่เราใช้ส่งคะแนนดังนี้




  • ส่งคะแนน


    • Service URL : https://rest-redlinemobi.rhcloud.com/score/score/push.json

    • Content-Type : application/x-www-form-urlencoded

    • Method : POST

    • ค่าที่ต้องส่งให้ name, score, appkey

    • ค่าที่ได้กลับมา data



แผ่นรวมซอฟต์แวร์โอเพนซอร์สและฟรีแวร์ สำหรับ SME

เนื่องจากโครงการ Suriyan และ Chantra ถูกยุบไปแล้ว แต่ยังคงมีคนส่งแผ่น DVD เข้ามาขอแผ่น Suriyan และ Chantra อยู่ ผมก็เลยได้ทะยอยเขียนแผ่นส่งกลับไปให้เรื่อยๆ สำหรับท่านที่ส่งแผ่น DVD เปล่ามาแลกแผ่นซอฟต์แวร์ในช่วงนี้ จะได้แผ่น Write กลับไปนะครับ T_T เนื่องจากไม่มีงบประมาณปั๊มแผ่นให้ ใครอยากได้ซอฟต์แวร์โอเพนซอร์สและฟรีแวร์ก็สามารถส่งแผ่นเปล่ามาแลกได้ ขอเป็นแผ่น DVD ที่เขียนได้นะครับไม่ใช่แผ่นเสีย สำหรับแผ่นที่จะมาแทน Suriyan และ Chantra มีดังนี้




  1. Ubuntu รุ่นล่าสุด ไม่มี Package เสริมจาก Suriyan นะครับ เป็น Ubuntu เพียวๆ จำนวน 1 แผ่น DVD

  2. Open Disc รุ่นพิเศษ รวมซอฟต์แวร์โอเพนซอร์สบน Windows และ Linux มากกว่า 50 ตัว จำนวน 2 แผ่น DVD



กติกาเหมือนเดิมคือส่งแผ่น DVD เปล่าตามจำนวนแผ่นที่ท่านต้องการแลก วงเล็บมุมซองด้วยนะครับว่าแลกแผ่นอะไร พร้อมซองเปล่าติดแสตมป์ 9 บาท จ่าหน้าซองถึงตัวท่านเอง วงเล็บมุมซองว่า "Disc2Disc ขอแผ่น ..." ส่งมาที่



ฝ่ายส่งเสริมและพัฒนาเทคโนโลยี (โอเพนซอร์ส)
สำนักงานส่งเสริมอุตสาหกรรมซอฟต์แวร์แห่งชาติ (องค์การมหาชน)
เลขที่ 120 หมู่ที่ 3 ชั้น 9 อาคารรัฐประศาสนภักดี ศูนย์ราชการเฉลิมพระเกียรติ ๘๐ พรรษา ๕ ธันวาคม ๒๕๕๐
ถนนแจ้งวัฒนะ แขวงทุ่งสองห้อง เขตหลักสี่
กรุงเทพมหานคร
1 0 2 1 0


เก็บตกออกแบบผลิตภัณฑ์ด้วยซอฟต์แวร์โอเพนซอร์ส

เนื่องจากมีเรื่องให้ต้องกลับไปทำงานออกแบบผลิตภัณฑ์อีกครั้ง แต่ไม่ได้เกี่ยวกับงานออกแบบสินค้าหรือตราสินค้าด้านไอที คราวนี้เป็นงานออกแบบสินค้าประเภทสบู่สมุนไพร เป็นสินค้า SME ครับ การออกแบบผลิตภัณฑ์รวมไปถึงตราสินค้าและออกแบบรูปลักษณ์ผลิตภัณฑ์เบื้องต้น เครื่องมือที่ใช้ก็เป็นเครื่องมือด้านเวกเตอร์อย่าง Inkscape อ้อเกือบลืมไปต้องใช้ GIMP ในการตัดใบไม้มาทำภาพเวกเตอร์ด้วยการ Trace Bitmap ด้วย หลังจากนั้นค่อยเอามาประกอบเป็นตราสินค้าแบบนี้







พอจะขึ้นโครงร่างกล่องก็โดนดุมาว่าเปลือง เพราะต้นทุนมีน้อยอยากให้งานออกมาแบบใช้ทุนน้อยที่สุด ก็ได้คำแนะนำมาว่าสินค้าจะห่อด้วยพลาสติกใสและติดตราสินค้าเอาแค่นี้พอ แต่ยังเลือกตราสินค้าไม่ได้ ก็เลยจัดการ render งาน 3D ออกมาให้ดูโดยใช้เครื่องมือ 3D อย่าง blender เข้ามาช่วย ได้ภาพสินค้าออกมาอย่างนี้















หลังจากทำ 3D Model ก็ทำให้เห็นภาพสินค้าได้ชัดเจนมากขึ้น เห็นไหมครับ ซอฟต์แวร์โอเพนซอร์สช่วยงานออกแบบผลิตภัณฑ์ สำหรับ SME ได้ง่ายๆ เลยทีเดียว และไม่ต้องซื้อซอฟต์แวร์ราคาแพงมาใช้ ช่วยลดต้นทุนให้ SME ได้อีกด้วย


วันพฤหัสบดีที่ 29 พฤศจิกายน พ.ศ. 2555

เก็บตกสัมนา National Cyber Security Conference 2012

งานสัมนา National Cyber Security Conference 2012 ปีนี้จัดขึ้นตามแนวนโยบายที่เกี่ยวข้องกับการป้องกัน ความปลอดภัยทางอินเตอร์เน็ตซึ่งเป็นเรื่องระดับประเทศและระดับภูมิภาคอาเซียนเลยทีเดียว งานเปิดตัวด้วยรัฐมนตรีกระทรวงไอซีทีมาปาฐกถาเกี่ยวกับ National Cyber Security Policy ซึ่งได้ร่างออกมาเป็นที่เรียบร้อยแล้ว และจะนำเสนอคณะกรรมการ National Cyber Security Commitee อีกครั้ง ซึ่งการออก Policy ด้าน Security นี้ทำให้ภาครัฐรวมไปถึงกองทัพต้องตระหนักเรื่อง Security มากขึ้น มาตรฐาน ISO 27000 Series นี้ถือว่าเป็นมาตรฐานระดับพื้นฐานที่หน่วยงานของรัฐจะต้องมี ครั้งนี้มีวิทยากรจาก กองทัพสหรัฐมาบรรยายด้วย ซึ่งมาบรรยายถึงภัยคุกคามที่ US เคยเจอและการขยายตัวของภัยคุกคามที่มากขึ้น ไม่ใช่เพียงแค่ก่อกวน สร้างความเสียหาย แต่ยังรวมไปถึงเรื่องของ Cyber Warfare และ Advance Persistent Thread ในกลุ่ม Hacktivism และกลุ่มที่มีภาครัฐหนุนหลังอีกด้วย ภัยคุกคามทั้งหลายนี้มาได้หลายรูปแบบ เพราะระบบเครือข่ายอินเตอร์เน็ตถูกเชื่อมโยงถึงกัน กลุ่ม Hacker ก็สามารถสร้างความเสียหายได้ไม่ว่าจะอยู่ที่ใดในโลก



อาจารย์ปริญญา หอมเอนก มาเล่าเรื่องของ Technology Trend ซึ่ง Gartner ได้พยากรณ์เอาไว้ว่าปี 2013 ที่จะมาถึงนี้ เทคโนโลยีเหล่านี้มาอย่างแน่นอน ซึ่งภัยคุกคามก็จะตามมาติดๆ กับ Technology Trend เหล่านี้เช่นกัน อาจารย์ปริญญาเล่ากรณีศึกษาของการ Hack iCloud ของ Apple โดยใช้วิธีการกู้รหัสผ่านของ Apple ID โดยการประกอบข้อมูลจาก บริการอื่นๆ ของเหยื่อ เช่น E-mail Account, ที่อยู่, เบอร์โทรศัพท์ ฯลฯ เพื่อหลอกให้ระบบ iCloud ของ Apple ส่งรหัสผ่านใหม่มาให้คนร้าย ซึ่งกรณี Hack iCloud นี้เป็นกรณีศึกษาที่ดีอย่างหนึ่ง ซึ่งถึงแม้การตั้งรหัสผ่านที่ยากขึ้นแล้ว Hacker ก็ยังสามารถหาวิธีการอื่นๆ มาขโมย Apple ID ไปได้ อาจารย์ยังแนะนำว่าคำถามที่ใช้กู้รหัสผ่านมีความจำเป็น แต่คำตอบที่ใช้ตอบสำคัญมากกว่า เพราะถ้าตอบตามความเป็นจริง Hacker ก็สามารถใช้ข้อมูลเหล่านี้ขอกู้รหัสผ่านได้เช่นกัน เพราะฉนั้นคำถามแบบหนึ่งให้ตอบอีกแบบหนึ่งน่าจะดีกว่า



ถัดมาเป็นผู้เชี่ยวชาญด้าน Security จาก SANS มาบรรยายในเรื่องที่สำคัญมากเกี่ยวกับการจัดการด้านความปลอดภัยซึ่งที่คนมักพูดถึงเรื่องของเทคโนโลยี อุปกรณ์ที่ทันสมัย แต่ท่านนี้มาบรรยายเรื่องการพัฒนาบุคลากรให้รู้เท่าทันภัยคุกคามและให้ความรู้ความเข้าใจเกี่ยวกับ Cyber Security เขาบอกว่าที่ผ่านมาเราพยายามทำให้คนในองค์กร กลายเป็นผู้เชี่ยวชาญด้าน Security ซึ่งในความเป็นจริงนั้นทำไม่ได้ เพราะความเชี่ยวชาญและความชำนาญของแต่ละคนไม่เหมือนกัน แต่เราสามารถสร้าง Sucurity Awareness ได้อย่างง่ายๆ โดยค่อยๆ ให้ความรู้ทีละน้อย ผ่านสื่อที่ทุกคนเข้าถึงได้ เช่น ป้ายประกาศ หรือข้อคิดเล็กๆ ในบอร์ดข่าวสาร ตลอดจนจัดสัมนาวิชาการก็ได้ แต่การสื่อสารจะต้องต่อเนื่อง และมีการวัดผลที่ชัดเจน



สำหรับในวันที่ 2 นี้ เนื้อหาออกจะคล้ายวันแรก และออกไปในแนวทางการนำเสนอ Solution ด้านความปลอยภัยของเหล่า Vender ซึ่งผมเองคงไม่ขออธิบายอะไรมานัก เดี๋ยวจะกลายเป็นเสนอขายของไป เอาเป็นว่าให้ไปลองค้นหาดูจากเว็บผู้ให้บริการเอาละกันครับ


วันพฤหัสบดีที่ 22 พฤศจิกายน พ.ศ. 2555

เก็บตกสัมนา Public Cloud Day

ห่างหายจากการอัพเดทเรื่อง Cloud Computing ไปนาน เนื่องจากรู้สึกอิ่มตัวกับเรื่องนี้มาก เล่นมาเกือบหมดทุกค่ายแล้ว เหลือแต่ Microsoft Azure ที่ยังไม่กรอกเลขบัตรเครดิต :P และยังหากำลังใจในการใช้ผลิตภัณฑ์ของ Microsoft ไม่ได้ พอมีงานสัมนา Public Cloud Day ก็เลยอยากไปฟังอัพเดทอะไรใหม่ๆ บ้าง อยากรู้ว่าสถานะ Public Cloud ในประเทศไทยเป็นอย่างไรบ้าง Blog นี้ขอสรุป section ที่ผมสนใจ หากมี Bloger ท่านอื่นๆ เขียนเรื่องเดียวกันนี้อยู่ผมคง Tag ไปให้อ่านเพิ่มเติมครับ



ช่วงแรกหลังเปิดงานโดย อ.ธนชาติ มี Case Study จากธนาคารไทยพาณิชย์ที่ได้ใช้ Cloud ในการบริหารจัดการลูกค้าสัมพันธ์ โดยใช้บริการของ Saleforce.com และบริการ Platform as a Service ด้าน Workflow รายหนึ่ง (ผมจำชื่อบริการไม่ได้) ทางธนาคารเล่าให้ฟังถึงการเปลี่ยนผ่านระบบ CRM ระหว่างระบบเดิมที่มีอยู่เป็นอย่างไร และระบบที่เพิ่มเข้ามาเป็นอย่างไร เข้ามามีบทบาทอย่างไรในการบริการของธนาคาร ประเด็นสำคัญของการใช้ Cloud Service ของไทยพานิชย์คือ ธนาคารต้องการรู้จักลูกค้ามากขึ้น และนำเสนอสินค้าและบริการได้ตรงใจลูกค้ามากขึ้นนั่นเอง ตลอดจนปรับเปลี่ยนรูปแบบการบริการของธนาคารให้ดียิ่งขึ้นด้วย ทั้งในด้านการอนุมัติสินเชื่อได้เร็วยิ่งขึ้น เนื่องจากข้อมูลได้ถูกประมวลผลทุกๆ คืนเพื่อส่งข้อมูลไปยัง Saleforce.com เพื่อให้สาขาของธนาคารได้ใช้ข้อมูลผ่าน Saleforce.com อีกด้วย หลายคนอาจเป็นกังวลว่าอ้าวข้อมูลลูกค้าขึ้นไปอยู่บน Cloud แล้วจะปลอดภัยมั๊ย ทางธนาคารมีเทคนิคในเรื่องการจัดการข้อมูลได้ดีมากเรียกว่าวิธี Mash Up ข้อมูลลูกค้ายังอยู่ที่ธนาคาร แต่ข้อมูลที่อยู่บน Saleforce.com ที่ถูกประมวลผลแล้วจะถูกดึงลงมาใช้คู่ข้อมูลกับลูกค้าที่อยู่กับธนาคารอีกครั้ง ซึ่งวิธีการแบบนี้เป็นวิธีการหนึ่งที่ใช้ใน Hybridge Cloud ซึ่ง Hybridge Cloud เองไม่ได้กำหนดวิธีการที่ตายตัวในการเชื่อมโยงระหว่าง Public Cloud และ Private Cloud หากมุมมองในเรื่องของ Infra ก็จะเป็นมุมมองหนึ่ง กรณี Mash Up นี้เป็นการเรียกใช้ข้อมูลระหว่าง Public Cloud (ข้อมูลที่ได้จากการประมวลผลจาก Saleforce.com) และ Private Cloud (ข้อมูลลูกค้าของธนาคาร) เคยมีคนพูดเรื่องนี้ใน HP Cloud Forum เขาเรียก Hybridge Cloud ว่า Delivery Services ซึ่งมุมมองไม่ได้อยู่ที่ Infra อย่างเดียว แต่สามารถมีได้ในทุกๆ Layer ของ Cloud ทั้ง IaaS, PaaS และ SaaS ธนาคารได้เริ่มใช้ Saleforce.com และ implement ควบคู่กับระบบ CRM เดิมทีละน้อย เพื่อดูความเป็นไปได้ในการใช้บริการ โดยเริ่มต้นที่ 10 Users และค่อยเพิ่มมากขึ้นเรื่อยๆ ในแต่ละปี ซึ่งในปีนี้ สาขาในกรุงเทพมหานครได้ใช้ Saleforce.com กันแล้ว ในปีหน้าเราจะได้บริการที่เข้าถึงความต้องการและเหมาะกับตัวเรามากขึ้นอีกจากธนาคารพาณิชย์โดยเฉพาะเรื่องการอนุมัติสินเชื่อที่ไม่จำเป็นต้องรอข้อมูลหรือการอนุมัติจากส่วนกลาง (สาธุ...)



ถัดมาเป็นเสวนาจากผู้ประกอบการที่ใช้บริการ Public Cloud อยู่แล้วได้แก่ Okbee, อรุณสวัสดิ์ดอทคอม และ อีโฟลซิส ขอสรุปคร่าวๆ ดังนี้




  • Okbee บริการ E-Book, Magazine Online ผู้ใช้ 2.5 ล้านราย ช่วงแรกใช้ Amazon AWS ในการ Scale Up/Down ของ Instance เพื่อรองรับปริมาณของผู้ใช้ในแต่ละช่วงเวลา ซึ่งให้บริการผู้ใช้จากทั่วโลก ปัจจุบันลูกค้าเริ่มมีมากขึ้นเพราะขยายธุรกิจไปยังประเทศเพื่อนบ้านไม่ว่าจะเป็นเวียดนาม อินโดนีเซีย ฯลฯ ปัจจุบันเริ่มมาใช้ Microsoft Azure แต่ยังคง Instance ครึ่งหนึ่งอยู่ที่ Amazon และอีกครึ่งหนึ่งอยู่ที่ Azure เนื่องจากระบบหลังบ้านพัฒนาบน Platform ของ Microsoft การใช้ License บน Amazon และ Azure จึงไม่แตกต่าง แต่ต่างตรงที่ Microsoft มีข้อตกลงทางธุรกิจที่ดีกว่าเท่านั้น Okbee เป็น Case Study ให้ Microsoft ในการใช้ Azure ด้วย


  • อรุณสวัสดิ์ดอทคอม มีบริการสำหรับบริษัทประกันภัย "มาเร็วเคลมเร็ว" คือคอนเซปที่บริษัทให้กับลูกค้า เพื่อให้บริษัทประกันภัยส่งมอบสิ่งที่ดีที่สุดให้ลูกค้าได้ตามคอนเซปข้างต้น สำหรับอรุณสวัสดอทคอมใช้บริการ Azure เช่นกัน และมีการพัฒนาซอฟต์แวร์เพื่อใช้ความสามารถ Hybridge Cloud ของ Azure เอาข้อมูลของลูกค้าที่อยู่กับลูกค้า (ไม่ได้เอาขึ้น Azure) มาเชื่อมโยงกับ SaaS ที่พัฒนาบน Azure เพื่อใช้งานร่วมกัน ทั้งในรูปแบบ Web Application และ Mobile Application


  • อีโฟลซิส มีบริการ ERP บน Cloud ซึ่งใช้ Azure เช่นเดียวกัน แก้ไขซอฟต์แวร์เดิมให้สามารถทำงานบน Cloud ได้อย่างมีประสิทธิภาพ (Multi Core Computing) และเรียกใช้คุณสมบัติ HA ของ Azure ทำให้ บริการของบริษัททำงานมีความต่อเนื่องมากยิ่งขึ้น




ถัดมาเป็นช่วงการนำเสนอของผู้ให้บริการ Cloud ในประเทศไทยจาก TCA ดังนี้




  • DCS (DWork)

  • Cloud Creation (IBM Cloud Burst)

  • Anise Asia (Joyent ~ StarAnise)

  • TOT (VMWare)

  • True (Aspen, VMWare)



มานำเสนอความพร้อมของการให้บริการ Public Cloud ในประเทศ พร้อมเป็นคู่ค้ากับ ISV ในประเทศ



สำหรับมุมมองของผมในฐานะ "คนกลาง" ผมมองหาผู้ให้บริการ Cloud หรือที่เรียกว่า Cloud Provider ในประเทศอยู่ 2 แบบคือ




  • ผู้ให้บริการ Cloud ทั้ง IaaS และ PaaS ได้เทียบเท่ากับ AWS มีช่องทางการบริการผ่านทาง Web Management Console และ Service APIs ต่างๆ

  • ผู้ให้บริการ Cloud ในรูปแบบ IaaS หรือ PaaS โดยเป็น Market Place ให้กับ ISV ที่พัฒนา SaaS เพื่อที่จะได้ไม่ต้องมากังวล เรื่องการบริหารจัดการในฝั่ง IaaS หรือ PaaS อีก ISV มีหน้าที่ทำ SaaS และหาลูกค้าเท่านั้น ที่เหลือให้ Cloud Provider เป็นคนจัดการ



สำหรับผม 4 ปีที่ผ่านมา ผมยังมองไม่เห็น Cloud Provider ในประเทศ (ไม่นับบริษัทที่ซื้อ Technology หรือเป็นบริษัทลุกในต่างประเทศ) ทำได้อย่างที่ผมต้องการ ผมอาจจะเรื่องมากไปก็ได้ แต่บริการที่สนองความ "ขี้เกียจ" ของลูกค้านี่เป็นสิ่งที่ดี จะเป็นอย่างไร ถ้า ISV สามารถขาย SaaS เป็นสินค้าผ่าน Market Place ของ Cloud Provider หรือ Market Place ของตัวเอง (ผ่านการให้บริการ Service APIs ของ Cloud Provider เพื่อ Provisioning หรือ Management อีกทอด) ลูกค้าจะมีช่องทางการซื้อบริการที่ง่าย สะดวก และรวดเร็ว ซึ่งเป็นปัจจัยสำคัญในการให้บริการอย่างดีเลยทีเดียว เราจะเห็น Time Delivery ของ SaaS เพียงไม่กี่นาทีจริงๆ ไม่ต้องรอ Provisioning จาก Call Center ของผู้ให้บริการ อยากได้ซอฟต์แวร์อะไรก็ "กดปุ๊ปได้ปั๊บ" เหมือนกดสวิทไฟ ผมว่านี่เป็นเรื่องที่ดีเลยทีเดียว



*** อ้อลืมบอกไปว่า Service Catalog หรือ Market Place นี้อย่าหวังให้ภาครัฐทำให้เพราะภาครัฐเองยังก้าวไปได้ช้าในเรื่องของ Cloud Computing ภาคเอกชนควรก้าวนำหน้าและหันมาสั่งสอนภาครัฐเสียบ้าง ***


วันจันทร์ที่ 19 พฤศจิกายน พ.ศ. 2555

มาใช้ OpenShift Metrics Cartridge กัน

ผมกลับมาใช้ OpenShift อีกรอบเนื่องจากมีโครงการเฉพาะกิจ พัฒนาเกมส์บวกเลขเก็บสถิติบน Cloud ซึ่งตอนแรกคิดว่าจะใช้ GREE แต่เนื่องจากติดปัญหาเรื่อง Build Package บน GREE เลยล้มเลิกไปและกลับมาใช้ OpenShift อีกรอบพัฒนา RESTFul Web Services เก็บข้อมูล High Score เอาเอง ปัญหาของคนที่ใช้ OpenShift มักจะถามบ่อยครั้งมาที่ผมและทีม OpenShift ที่ RedHat คือ จะวัดได้อย่างไรว่า App ที่พัฒนาใช้ Resource มากน้อยแค่ไหน สมควรที่จะเพิ่ม Gear เพื่อทำ horizontal Scaling หรือไม่ จากที่ได้ใช้บริการ Cloud ของหลายที่ จะมีเครื่องมือ Monitoring และ Auto Scaling ให้เสมอแต่ OpenShift ยังไม่มี เพิ่งจะมีออกมาเป็น Experimental (รุ่นทดลอง) ชื่อ OpenShift Metrics ครับ เป็น Cartridge เพิ่มเข้าไปใน Gear ได้โดยตรง วิธีการเพิ่มก็เข้าไปที่หน้า Add Catridge ดังนี้





จากนั้นเลือก OpenShift Metrics Cartridge เมื่อติดตั้งเรียบร้อยแล้ว เราจะสามารถเข้าไปดูส่วน Monitoring ได้โดยใช้ URL ดังนี้



https://appname-namespace.rhcloud.com/metrics



อยากดูของจริงก็เข้าไปดูของผมได้ครับที่ https://rest-redlinemobi.rhcloud.com/metrics/ ยังไม่มีรายงานสรุป แต่มี Graph แบบ real time ซึ่งดูแล้วงงนิดหน่อย เพราะดูไม่ค่อยทัน แต่ก็ยังดีกว่าไม่มีครับ :P









ใครที่ใช้ OpenShift อยู่ก็ไปลองกดเล่นๆ ดูได้ครับ


วันอาทิตย์ที่ 18 พฤศจิกายน พ.ศ. 2555

ตามติดชีวิตเด็กโข่งสร้างเกมส์ ตอนที่ 7 ตอนจบ

ผ่านมา 6 วัน วันนี้วันสุดท้ายแล้วครับ สำหรับ Blog สไตล์ Reality ตามติดชีวิตเด็กโข่งสร้างเกมส์ เข้าเรื่องกันเลยดีกว่า เมื่อวานถอดใจกับ GREE แล้วไปซบอก OpenShift Cloud Platfrom as a Service และ CakePHP สร้าง RESTFul Web Service ขึ้นมาเพื่อทำหน้าที่แทน GREE ทำหน้าที่เก็บ Score ของเกมส์จากผู้เล่นทั่วโลก (ดูยิ่งใหญ่มากเลย) วันนี้จะมาเชื่อมโยง Mobile App ไปยัง Web Service กันครับ



หน้าที่หลักของ Web Service ของเราตอนนี้คือการรับข้อมูลจาก Mobile App ในกรณีที่ Mobile App ประมวลผลแล้วว่าจะส่งข้อมูลไปยัง Server โดยใช้เงื่อนไข 2 อย่างคือ




  • มีคะแนน High Score

  • เชื่อมต่อ Internet ได้



เมื่อผู้เล่นรู้ผลคะแนน App จะทำการเชื่อมต่อกับ Web Service และส่งผลคะแนนไปยัง Server โดยอัตโนมัติ กรณีที่ส่งผลคะแนนไม่ได้ก็เสียใจด้วยครับ :) หน้าตาของ World Leaderboard เป็นอย่างนี้ครับ







สำหรับท่านใดอยากลองฝีมือบวกเลขก็ดาวน์โหลด App ไปเล่นได้ที่





เกมส์นี้ใช้สัญญาอนุญาติแบบ GNU/GPL V3 พัฒนาต่อยอดได้ที่ GitHub




วันเสาร์ที่ 17 พฤศจิกายน พ.ศ. 2555

ตามติดชีวิตเด็กโข่งสร้างเกมส์ ตอนที่ 6

ตั้งใจว่าจะดู GREE Social Network Game ต่อแต่ลงทะเบียนสร้าง App บน Cloud PaaS (Platform as a Service) ของ OpenShift ไว้ก็เลยได้กกลับมาตายรัง ขอถอนตัวจาก GREE มาซบอก OpenShift อีกครั้ง (ไปไหนไม่รอด) ในเมื่อตัดสินใจแล้วก็ต้องเดินหน้าต่อครับ แผนคือเราจะมาสร้าง RESTFul Web Service บน OpenShift กัน ซึ่ง Service ที่มีได้แก่




  • ลงทะเบียนสมาชิก ~ นักพัฒนาลงทะเบียน จะได้ล็อกอินและรหัสผ่านที่กำหนด

  • ล็อกอิน ~ ล็อกอินเพื่อใช้งานระบบ เช่น ลงทะเบียนแอพ เป็นต้น

  • ลงทะเบียนแอพลิเคชัน ~ ลงทะเบียนแอพ ได้กุญแจมา 1 ดอก

  • ส่งคะแนน ~ ส่งคะแนนโดยใช้กุญแจแอพ

  • ขอตารางสรุปคะแนน ~ ขอตารางสรุปคะแนนใช้กุญแจแอพ



ระบบเก็บข้อมูลคร่าวๆ แบบนี้ครับ ถ้าดูเผินๆ จะเหมือนกับ Service อื่นทั่วไป ถ้าใครเคยใช้ GREE ก็คงจะคุ้นกันอยู่ :P แฮะๆ ลอก GREE มาอ่ะ การเก็บข้อมูลและฟีเจอร์จะไม่ละเอียดเหมือนกับ GREE ครับ แต่วิธีการใช้งานเหมือนกัน (พยายามลากให้ดูดี จริงๆ กะจะลอกจาก GREE ต่างหาก) หน้าตาจะแบนๆ อย่างนี้



นี่คือ OpenShift Cloud PaaS ที่เราใช้กัน (Cloud ของจริงนะจ๊ะ ไม่ใช่ Hosting)



หน้าตาแบนๆ ของ Service ยังไม่ได้ทำอะไรเพิ่ม และยังใช้ไม่ได้ T_T



ทดสอบบนเครื่อง local ส่งค่าเพื่อลงทะเบียน App ไม่มี pubkey ลงทะเบียนไม่ได้นะจ๊ะ



ผลตารางคะแนนหน้าตาประหลาดๆ



เอาข้อมูลมาทำให้สวยหน่อย



สุดท้ายได้ Mock up ตาราง Leader Board ดังนี้



อ้อลืมบอกไปว่า RESTFull Web Service ผมใช้ CakePHP จริงๆ จะใช้อะไรก็ได้ แต่อยากย้อนความหลังกันนิดหน่อย เลยกลับมาเขียน CakePHP อีกรอบ :) วันนี้มีความคืบหน้าแค่นี่ครับ กำลังสงสัยว่าอาทิตย์นี้ เกมส์จะเสร็จมั๊ยเนี่ย มีคนถามว่าผมใช้เครื่องมืออะไรพัฒนาซอฟต์แวร์ ขอสรุปให้นิดนึงครับ




  • Eclipse JDT, ADT, PDT ~ รวมอยู่ในตัวเดียว

  • Java ~ ผมเกลียด Java มาก จากใจจริงเลยล่ะ

  • PHP ~ บางครั้งใช้ Zend Platform เกาะ Zend Server บน PHP Cloud แล้วแต่อารมณ์จะพาไป

  • CakePHP, Zend Framwork, Lanai-Core ~ ว่างๆ ก็ใช้ Framework เขียน App แต่ตัวหลังขายใปละและไม่ได้ทำต่อ

  • Git + GitHub ~ ย้ายมาหลายที่ ใช้เครื่องมือจัดการโค้ดมาหลายตัว จบที่ GitHub ไม่ใช่เพราะ GitHub ถูกใจผม แต่เพราะว่าโควต้าของที่อื่นเต็มหมดแล้ว T_T

  • MySQL ~ ส่วนใหญ่ใช้ Command Line ไม่รู้เลิกใช้ Command Line ไม่ได้ซักที

  • MySQL Workbench + Admin + Browser ~ เป็น MySQL GUI ที่ใช้งานง่าย ไม่ยังไม่เท่า dbDesigner ที่เคยใช้ (เดี๋ยวนี้เขายังทำต่อมั๊ย)

  • PHP MyAdmin ~ Web GUI ใช้เฉพาะช่วงย้ายข้อมูลไปที่ Server ที่ไม่ให้ใช้ Command Line พอจบงานก็เอาออก :)

  • Cloud (IaaS,PaaS) ~ อันนี้แล้วแต่อารมณ์และลักษณะงาน แปรผันตามจำนวนเงินในกระเป๋า บางทีใช้ AWS ไม่ก็ HP Cloud พอเงินเริ่มหมดก็ไปใช้ Cloud Sigma, EngineYard, dotCloud, Zend Developer Cloud ลงท้ายที่ OpenShift



...ติดตามตอนต่อไป


วันศุกร์ที่ 16 พฤศจิกายน พ.ศ. 2555

ตามติดชีวิตเด็กโข่งสร้างเกมส์ ตอนที่ 5

กลับมาเขียน Blog ต่อ เนื่องจากแก้ไขเกมส์อยู่หลายอย่าง ทั้งส่วนตั้งคำถาม เกณฑ์การให้คะแนนแบบใหม่ เพราะคะแนนกระโดดเยอะมากไปหน่อย หันมาใช้ Bonus เป็นเวลาที่เหลือเป็นคะแนนเสริม และแก้ Bug เล็กน้อย เช่น ได้ได้เรื่อยๆ โดยเวลาไม่จำกัด T_T เป็นต้น วันนี้ตั้งใจจะมาลอง OpenFeint ซึ่งเป็นโซเชียลเน็ตเวิร์คของคนเล่นเกมส์ เก็บคะแนนแข่งกันกับเพื่อนๆ ที่เล่นเกมส์เดียวกันได้ แต่ทว่า OpenFeint ถูกซื้อโดย GREE บริษัทยักษ์ใหญ่จากญี่ปุ่นทำให้ ต้องไปใช้ GREE โดยปริยาย ซึ่งจากที่ทดสอบ GREE ในเบื้องต้น พบว่า Package หลักในส่วน GreePlatform ผม Build ไม่ผ่าน เนื่องจากสาเหตุอะไรไม่ทราบ ก็เลยขอพักเรื่อง GREE ไปก่อน





วันนี้ก็เลยได้มาทำส่วน UI เพิ่มอีก 2 ส่วนคือ ส่วนแสดงผลคะแนน หากยังจำกันได้ของเดิมเป็น Dialog Box ธรรมดาๆ ครั้งนี้ก็เลยเปลี่ยนมาเป็น Custom Layout ซะเลย ได้หน้าตาสวยแบบนี้ครับ





ดูใน Tablet จะหน้าตาแบบนี้





อีกส่วนที่เพิ่มเข้ามาเป็นเสียงครับ ผมเลือกเสียง Effect และเพลงอยู่ 10 กว่าเพลง แล้วให้ Game Tester ซึ่งเป็นใครไม่ได้นอกจากคุณมะระมาช่วยฟังช่วยเลือก คำแนะนำที่ได้คือ ควรจะเป็นเสียงโรงเรียน อ็อดเข้าเรียนอะไรประมาณนี้ ก็เลยได้เพลงสบายๆ ก็อกๆ แก็กๆ มา 1 เพลง และเสียงอ็อดเข้าเรียนอีก 1 เสียง ตบท้ายด้วยเสียงที่ผมชอบมากคือ เสียงสมองระเบิด สำหรับผู้เล่นที่บวกเลขไม่คล่อง :P เรียกได้ว่าสะใจดีครับ วันนี้ก็เลยได้ใกล้ความเป็นเกมส์มากขึ้นแล้ว สำหรับการเก็บคะแนนผ่านทาง Social Network เกมส์อย่าง GREE นั้น ผมไม่แน่ใจว่าจะได้ใช้บริการ GREE หรือเปล่า ถ้ายังแก้ปัญหาไม่ได้ในอาทิตย์นี้คงไปใช้ตัวอื่นแทน ผมก็เลยทำ Custom Layout ส่วนกรอกชื่อเอาก่อน สำหรับ เก็บคะแนนผ่านทาง Social Network เกมส์ ผมอาจจะเขียน Score Services ขึ้นใช้เอง เอ...รู้สึกจะไม่จบง่ายละ เอาเป็นว่าติดตามตอนต่อไปครับ


วันพฤหัสบดีที่ 15 พฤศจิกายน พ.ศ. 2555

ตามติดชีวิตเด็กโข่งสร้างเกมส์ ตอนที่ 4

เนื่องจากเขียนเกมส์และทดสอบบนโทรศัพท์มือถือของตัวเองหน้าจอ 4 นิ้วเหมาะกับการเล่นเกมส์มาก แต่การแสดงผลบน Tablet ขนาดหน้าจอ 7 นิ้ว 10 นิ้ว การแสดงผลต้องต่างกัน ก็เลยได้ออกแบบ Layout สำหรับหน้าจอขนาดต่างๆ ดังนั้นต้องมีการออกแบบสำหรับหน้าจอขนาดต่างๆ ดังนี้





คุณมะระมาเป็น Game Tester และให้คำแนะนำอีกเช่นเคย เนื่องจาก Game Tester บอกว่าคนใช้ 2 มือจับ Tablet ขนาด 7 นิ้ว ปุ่มเลือกตอบต้องพอดีกับการจับเพื่อให้นิ้วโป้งกดได้ถนัดก็เลยจัด UI แบบที่ต้องการ ได้ผลลัพท์ได้เป็นนี้ครับ







คุณมะระทดสอบเกมส์บน Tablet ขนาดหน้าจอต่างกัน สังเกตวิธีการจับเครื่องก็เลยเข้าใจว่าจะต้องออกแบบยังไง









อ้อ ลืมบอกผู้สนับสนุนให้ยืม Tablet มาทดสอบ คือ Gadget Plus หากได้ Tablet 7 นิ้วคุณภาพสูงยี่ห้อ Ainol ก็ติดต่อคุณมะระได้ที่ gumaraa[at]gmail.com ครับ ตอนต่อไปจะทำอะไร เดี่ยว Blog มาให้อ่านอีกครั้งครับเพราะยังไม่จบ



ติดตามตอนต่อไป...


วันพุธที่ 14 พฤศจิกายน พ.ศ. 2555

ตามติดชีวิตเด็กโข่งสร้างเกมส์ ตอนที่ 3

หลังจากแก้ไขเกมส์ตามคำแนะนำของ Game Tester คือคุณมะระ ก็เลยคิดว่าน่าจะออกแบบหน้าตาเกมส์จริงๆ จังๆ ดูบ้าง เอาแบบรวดเร็วไม่คิดมากจะได้ออกรุ่นทดสอบได้อย่างจริงจัง มีไอเดียมาจากเพื่อนที่ทำงานบอกว่าก็ทำเป็นกระดานดำ ไหนๆ จะเล่นบน Tablet อยู่แล้วก็เป็นรูปกระดานดำดีกว่า ~ เหมือนพกกระดานชนวนอิเลคทรอนิกส์ :) เอ้า ตามคำขอก็เลยหา background ใส่ลงไปเพิ่มเติมได้หน้าจอของเกมส์เป็นแบบนี้







เพิ่มหน้าวิธีการเล่นและเทคนิคการคิดให้ด้วย





อ้อ ลืมบอกไปว่าเปลี่ยนฟอนต์จาก Roberto ที่เป็นฟอนต์หลักของ Android 4.0 มาเป็น Arabica ฝีมือออกแบบฟอนต์คนไทย เจ้าของเดียวกับฟอนต์ Super Store นั่นเองครับ


วันอังคารที่ 13 พฤศจิกายน พ.ศ. 2555

ตามติดชีวิตเด็กโข่งสร้างเกมส์ ตอนที่ 2

หลังจากได้แนวคิดของเกมส์ วิธีการเล่น กติกาการเล่น ไปเมื่อครั้งที่แล้ว ก็มาถึงส่วนที่ยากที่สุดคือ ออกแบบหน้าตา, เขียนเกมส์ และ ทดสอบในแต่ละขั้น ผมเลือกการออกแบบในรูปแบบที่ง่ายต่อการปรับแก้ คือเป็น Text แสดงข้อความ มีปุ่มกดเลือกคำตอบ ตอบถูกก็คิดคะแนนออกมาตามสูตรคำนวณคะแนนที่กำหนดไว้ในครั้งที่แล้ว ถ้าตอบผิดก็แสดงกล่องข้อความบอกคะแนนที่ได้และให้กำลังใจในการเล่นครั้งต่อไป ความยากง่ายของเกมส์ ซึ่งเบื้องต้นจะให้จำนวนตัวเลขก่อน ซึ่งจำนวนตัวเลขจะเพิ่มทีละ 1 หลัก ต่อด่านหลัก เช่น ด่าน 1 มีเลขให้บวก 2 ตัว, ด่าน 2 มีเลขให้บวก 3 ตัว ไปเรื่อยๆ แต่จำนวนตัวเลขสูงสุดจะอยู่ที่ด่าน 9 คือมีตัวเลขให้บวก 10 ตัว และคงที่ไปเรื่อยๆ ซึ่งตัวเลขเหล่านี้จะถูกสุ่มมาตามจำนวนตัวเลขที่ด่านนั้นๆ ต้องการ และตัวจับเวลาจะนับถอยหลัง 20 วินาทีหากหมดเวลาก็เล่นใหม่ ดังที่ได้เขียนไปในตอนที่แล้ว หน้าจอโปรแกรมเป็นแบบนี้ครับ









เพิ่มรายละเอียดเข้าไปอีกหน่อย





ทดลองเล่นเบื้องต้น และได้ Game Tester จำเป็นเพิ่มมาอีกคน คือ คุณมะระ ในฐานะที่นั่งติดกันก็เลยให้ช่วยเล่นหน่อย ปรับตรงไหน แก้ตรงไหนก็ว่ากันไป เอาเป็นว่าได้แก้หลายจุดจนพอใจ Game Tester ล่ะครับ อ้อสำหรับท่านที่อยากเขียน Mobile App หรือ Mobile Game ดูบ้าง ลองศึกษาการเขียน Mobile App ได้ที่ http://androidthai.in.th ได้ครับ ผมก็เรียนกับมาสเตอร์อึ่งผ่านเว็บไซต์และยูทูปนี่แหละครับ (ไม่เคยได้เรียนกับตัวจริงสักที)



... ติดตามตอนต่อไป


วันจันทร์ที่ 12 พฤศจิกายน พ.ศ. 2555

ตามติดชีวิตเด็กโข่งสร้างเกมส์ ตอนที่ 1

นึกเล่นๆ ว่าอยากเขียนเกมส์ เนื่องจากมี App บน Play Store เยอะพิสมควร แต่ยังไม่มีเกมส์เป็นของตัวเองเลยอยากลองเขียนดูบ้าง ก็เลยได้เริ่มคิดว่าจะเขียนเกมส์อะไรดี ใช้เวลาว่างประมาณ 1-2 อาทิตย์ น่าจะทำเสร็จ ก็เลยคิดว่าอยากทำเกมส์คิดเลขเร็ว (ง่ายดี) ซึ่งแนวคิดดังนี้




  1. คำตอบมีแค่ บวก, ลบ, คูณ หรือ หาร

  2. ไม่ต้องตั้งโจทเองเพราะขี้เกียจ ให้โปรแกรมตั้งให้

  3. เล่นไปเรื่อยๆ เก็บคะแนนที่ได้มากที่สุด post ขึ้นระบบสะสมคะแนน

  4. ส่งคะแนนผ่าน wall facebook / social network จัด range ได้ + โชว์พาว + ทำ CRM

  5. เพิ่มความยากในการคิดขึ้นเรื่อยๆ

  6. จัดกิจกรรมแจกของรางวัลผ่านหน้า app fan page



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





ก็เลยเป็นที่มาของการเขียนเกมส์อัจฉริยะบวกเลข หรือ Plus Clever ครับ



หลังจากได้แนวคิด วิธีการเล่น ก็เลยเพิ่มกติกาและตัวแปรต่างๆ เพิ่มเข้ามา เช่น ตัวเลข, ด่านหลัก, ด่านย่อย, ความยาก, การให้คะแนน และ การกำหนดเวลา เป็นต้น ตัวเกมส์มีด่านหลักไม่จำกัด แต่มีด่านย่อย 10 ด่าน ต้องเล่นบวกเลขให้ครบ 10 ด่านจึงจะขึ้นด่านหลักต่อไปได้ ในแต่ละด่านหลักจะสัมพันธ์กับความยากง่ายของเกมส์ ซึ่งเบื้องต้นจะให้จำนวนตัวเลขก่อน ซึ่งจำนวนตัวเลขจะเพิ่มทีละ 1 หลัก ต่อด่านหลัก เช่น ด่าน 1 มีเลขให้บวก 2 ตัว, ด่าน 2 มีเลขให้บวก 3 ตัว ไปเรื่อยๆ แต่จำนวนตัวเลขสูงสุดจะอยู่ที่ด่าน 9 คือมีตัวเลขให้บวก 10 ตัว และคงที่ไปเรื่อยๆ การให้คะแนนจะให้คะแนนแต่ละด่านและด่านย่อยไม่เท่ากัน ใช้สูตรคำนวนคือ คะแนนแต่ละด่านย่อย = (เลขด่านย่อย) ยกกำลัง (เลขด่าน) บวกกันไปเรื่อยๆ สำหรับเวลาในการเล่นคือ 20 วินาทีต่อเกม ตอบถูกได้เวลาคืน 20 วินาที กติกาง่ายๆ ตอบถูกได้คะแนนและผ่านด่าน ตอบผิดเริ่มเล่นใหม่ตั้งแต่ต้น เกมส์จะเก็บคะแนนครั้งที่ได้มากที่สุดเท่านั้น ถ้าคะแนนได้น้อยกว่าครั้งที่ผ่านมา ก็ต้องเล่นสะสมคะแนนกันใหม่ ถือว่าโหดมากๆ เมื่อได้แนวคิดแล้วก็ได้ เวลาออกแบบเกมส์ ... ติดตามตอนหน้าครับ :)



*** เห็นน้องฮง ชอบสร้างเกมส์และเขียน Blog เรื่องสร้างเกมส์อยู่พักหนึ่ง ชื่อ ตามติดชีวิตเด็กสร้างเกมส์ ก็เลยขอลองเขียน Blog อย่างนี้บ้าง ให้ชื่อเรื่องเป็น ตามติดชีวิตเด็กโข่งสร้างเกมส์ ละกันครับ :P


วันพฤหัสบดีที่ 8 พฤศจิกายน พ.ศ. 2555

REST Client สำหรับ Google Chrome

ครั้งที่แล้วเอา REST Client บน Firefox มาฝาก ครั้งนี้เอา REST Client บน Chrome มาฝากบ้าง เป็น Plugin เช่นเดิมครับ สำหรับบน Chrome ผมแนะนำให้ใช้ Advance REST Client ครับ





ดาวน์โหลดได้ที่ Chrome Web Store


REST Client สำหรับ Firefox Plugin

เนื่องจากกลับมาเขียน Web Services สไตล์ REST อีกรอบ ทำให้ได้เรียนรู้อะไรใหม่ๆ อย่างจริงจังมากขึ้น เพราะเปลี่ยนเครื่องมือในการพัฒนาอย่างสิ้นเชิง ทำให้ต้องศึกษาเครื่องมือใหม่ๆ เยอะขึ้น สำหรับครั้งนี้เอา REST Client มาฝากครับ เป็น REST Client ที่ฝังมากับ Firefox ซึ่งง่ายในการใช้งาน ทำให้ทดสอบ Web Application และ REST Server ไปในคราวเดียวได้ง่ายๆ Plugin ที่ว่านี้ชื่อ REST Client ครับ





ท่านใดสนใจก็ดาวน์โหลดได้ที่เว็บ Add-on Mozilla ครับ


วันพฤหัสบดีที่ 1 พฤศจิกายน พ.ศ. 2555

แอพรายการวิทยุน่ารู้เรื่องไอที

มีโอกาสไปอัดรายการวิทยุ "น่ารู้เรื่องไอที" ของศูนย์เทคโนโลยีการศึกษากระทรวงศึกษาธิการอยู่หลายครั้ง ถ้านับจำนวนตอนก็ได้ประมาณ 300 กว่าตอนได้ ซึ่งรายการออกอากาศทางเว็บไซต์ MOE Radio Thai และได้มีโอกาสไปออกอากาศทางวิทยุของกรมระชาสัมพันธ์ ตั้งแต่อัดรายการไม่เคยถาม Feed back จากผู้ฟังเลย มีหน้าที่อัดรายการก็อัดไป จนเมื่อครั้งที่แล้วมะระถามถึงเรื่องการออกอากาศกับเจ้าของรายการ (คุณอ้อ) ก็เลยคิดเล่นๆ ว่าจะลองสอบถาม Feed back ในรายการดูบ้าง อาจจะมีกิจกรรมให้เขียนจดหมาย, E-Mail, กด Like Facebook Fanpage ดูบ้าง จะได้รู้ว่ามีคนฟังอยู่เท่าไรบ้าง สำหรับท่านที่ไม่มีโอกาสได้ฟังรายการทางช่องทางข้างต้น ผมก็เลยทำ Mobile App รวมรายการตอนเก่าๆ เผื่อใครที่อยากฟังรายการนี้ และอยากเสนอแนะ ติชมรายการ หรืออยากเป็น Sponsor รายการอื่นๆ (กำลังจะทำรายการ TV Online) ก็ได้ครับ เอ้าโม้มาเยอะหน้าตาโปรแกรมเป็นแบบนี้ครับ








วันพุธที่ 24 ตุลาคม พ.ศ. 2555

เทรนด์เทคโนโลยี ซอฟต์แวร์โอเพนซอร์ส และ Cloud Computing

Gartner ประกาศเทรนด์เทคโนโลยีประจำปี 2013 และเป็นอย่างที่คาดไว้คือ Cloud Computing ไม่ได้เป็นเทรนด์อีกต่อไปแล้ว เนื่องจาก Cloud Computing กลายเป็นส่วนหนึ่งของเทคโนโลยีในปัจจุบัน ไม่จำเป็นต้องพูดถึงอีกต่อไป จากนี้จะเป็นการเชื่อมโยงข้อมูล ซอฟต์แวร์ต่างๆ ที่มีอยู่ในปัจจุบันเข้ากับ Cloud Computing ที่เป็นเทรนด์เทคโนลยีที่ยาวนานมากกว่า 4 ปี และเช่นเดียวกัน การรับเอาโอเพนซอร์สซอฟต์แวร์มาใช้หรือพัฒนาต่อยอดในการพัฒนาผลิตภัณฑ์และบริการก็ไม่ได้หยิบยกเอามาอ้างอิงอีกต่อไป เพราะโอเพนซอร์สกลายเป็นส่วนหนึ่งของเทคโนโลยีในปัจจุบันไปแล้วเช่นกัน Gartner เคยทำนายเกี่ยวกับเทรนด์เทคโนโลยีในแต่ละปีไว้อย่างน่าสนใจ มีนัยสำคัญ และสอดคล้องกับความเป็นไปในเทคโนโลยีในอีก 5-10 ปีข้างหน้า ดังนั้นองค์กรที่สนใจเกี่ยวกับเทคโนโลยีจะติดตามการายงานเทรนด์เทคโนโลยีในทุกๆ ปี บทความนี้เราจะมาระลึกอดีตถึงเทรนด์เกี่ยวข้องกับซอฟต์แวร์โอเพนซอร์ส เทรนด์ที่เกี่ยวข้องกับ Cloud Computing กัน



เทรนค์ที่เกี่ยวข้องกับซอฟต์แวร์โอเพนซอร์สเริ่มจาก Gartner ทำนายเกี่ยวกับการเติบโตของซอฟต์แวร์โอเพนซอร์สไว้ 3 แง่มุม (เมื่อประมาณ 5 ปีที่แล้ว)




  • องค์กรมีความรู้เกี่ยวกับซอฟต์แวร์โอเพนซอร์สมากขึ้น

  • องค์กรเริ่มรับเอาโอเพนซอร์สซอฟต์แวร์มาใช้ และพัฒนาต่อยอดมากขึ้น

  • นักพัฒนาซอฟต์แวร์โอเพนซอร์สหันมาใช้ IaaS มากขึ้น

  • โครงการซอฟต์แวร์โอเพนซอร์สที่เริ่มทำธุรกิจบน SaaS เริ่มมีการใช้สัญญาอนุญาติแบบ GNU/AGPL



และเทรนค์ที่เกี่ยวข้องกับ Cloud Computing มีหลากหลายแง่มุม (เมื่อประมาณ 4 ปีที่แล้ว)




  • Cloud Computing เริ่มเข้ามามีบทบาท

  • เกิดบริการ IaaS เพื่อรองรับการใช้งาน Virtual Infrastructure เกิดยุค Pay per Use

  • ธุรกิจซอฟต์แวร์เชิงบริการอย่าง SaaS เริ่มมีอนาคต

  • Mobile App เติบโตและสอดรับกับการเติบโตของ SaaS

  • เกิดบริการ Storage บน Cloud มากขึ้น

  • เกิดบริการ BI และเกี่ยวข้องกับ BIG Data บริการ IaaS และ SaaS

  • เกิดบริการ App Store บริการ SaaS



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




  • Linux Server (Debian, Slackware, RedHat, CentOS, Ubuntu etc)

  • Application Server (NFS, Samba, LDAP, Apache, MySQL, PostgreSQL, Perl, PHP etc)

  • Linux Desktop (RedHat, Mandrake, Fedora, Ubuntu)

  • Productivity Suite (OpenOffice.org, LibreOffice, Alfresco, Knowledge Tree)

  • Personal Publishing (Scribus) & Personal Graphic Tools (GIMP)

  • Cluster, High Avilability, HPC (Rock, Hartbeat, Hadoop)

  • Virtualizaion (QEMU, Xen, VirtualBox, KVM)

  • Virtualizaion Management Tools (Virt-manager, VirtualBox GUI, Boxes)

  • Distributed Storage นำไปสู่ Cloud Storage (Gluster, Cept)

  • Open Source Cloud Platform (Eucalyptus, OpenNebula, Cloud Stack, OpenStack, UEC etc)



สำหรับเทรนด์เทคโนโลยีข้างต้น ในปี 2013 ที่กำลังจะเข้ามาถึงนี้จะกลายเป็นเรื่องปกติ(และเก่า)ไปตามกาลเวลา หากท่านใดไม่ทันช่วงใดในรอบ 4-5 ปีที่ผ่านมา สามารถอ่านบทความและ How-to ย้อนหลังได้ในเว็บไซต์ http://thaiopensource.org กันได้


10 เทรนด์เทคโนโลยีปี 2013 โดย Gartner

Gartner ประกาศเทรนด์เทคโนโลยีร้อนแรงในปี 2013 ซึ่งมีดังนี้




  1. Mobile Device

  2. Mobile Application and HTML5

  3. Personal Cloud

  4. Enterprise App Stores

  5. The Internet of Things

  6. Hybrid IT and Cloud Computing

  7. Strategic Big Data

  8. Actionable Analytics

  9. In Memory Computing

  10. Integrated Ecosystems



อ่านรายละเอียดเพิ่มเติมได้ที่ Gartner


วันอาทิตย์ที่ 21 ตุลาคม พ.ศ. 2555

Ubuntu 12.10 Quantal Quetzal ออกแล้ว

รอกันมาหกเดือน Ubuntu รหัส Q หรือ 12.10 Quantal Quetzel ออกรุ่นจริงเรียบร้อยแล้วครับ ของใหม่ของรุ่นนี้ได้แก่




  • ปรับปรุง Unity หลายอย่าง เพิ่ม Amazon Shopping Lens, Previews

  • เปลี่ยนชื่อ Update Manager เป็น Software Updater

  • ปรับเวอร์ชันของ Xorg และรองรับฟีเจอร์ใหม่ๆ เพิ่มขึ้น ไดรเวอร์ของการ์ดจอ ATI/NVIDIA เวอร์ชันใหม่

  • รองรับ WebApps ที่ทำงานบนเดสก์ท็อป

  • เพิ่มลิงก์ไปยัง Ubuntu One Music Store

  • Kernel 3.5.5, GNOME 3.6, Python 3.2, LibreOffice 3.6.2, Firefox 16
    รายละเอียดที่เหลืออ่านจาก Ubuntu 12.10 Release Notes, ดาวน์โหลด





ที่มา - Blognone


Mozilla Firefox Marketplace App Store บน Android

Mozilla Firefox บน Android เปิดตัวบริการ App Store ของตัวเอง ผู้ใช้สามารถค้นหาและติดตั้ง Application ที่ต้องการได้ ส่วนใหญ่เป็น HTML5 Apps ตัว Store คล้ายกับของ Chrome Web Store สำหรับท่านที่ต้องการทดสอบ App Store ของ Mozilla จะต้องดาวน์โหลด Mozilla รุ่น Aurora build สำหรับ mobile หรือ tablet จากนั้นติดตั้งบนอุปกรณ์ของคุณ ในช่วงนี้ยังไม่มี App บน Marketplace มากนักและส่วนใหญ่เป็น App ฟรี





ที่มา - Arstechnica


วันพุธที่ 10 ตุลาคม พ.ศ. 2555

ประชาสัมพันธ์ประกวดสร้างสื่อการเรียนรู้สู่แท็บเล็ต

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




  1. แอพลิเคชั่นรูปแบบเสริมการเรียนรู้ (Learning Media)

  2. แอพลิเคชั่นรูปแบบเสริมการสอน (Instruction Media)

  3. แอพลิเคชั่นแบบสร้างองค์ความรู้ (Construction Media)



เป้าหมายของผู้ที่จะนำไปใช้คือ เด็กๆ ในช่วงชั้นที่ 1 (ป.1-3) และช่วงชั้นที่ 3 (ม.1-3) จะเป็นวิชาอะไรก็ได้ ซึ่งผลงานจะต้องสามารถทำงานได้บน Android 4.0.x ผลงานอาจจะอยู่ในรูปแบบของ Android App (apk) หรือใน HTML5 App ได้ อ้อที่สำคัญ App ที่ส่งเข้าประกวดและผ่านการคัดเลือกจะได้ขึ้นไปอยู่บน EduStore ที่ให้บริการโดยสำนักงานรัฐบาลอิเล็กทรอนิกส์ (องค์การมหาชน) อีกด้วยน่าสนุกดีครับ สำหรับท่านที่สนใจติดต่อได้ที่สำนักงานคณะกรรมการการศึกษาขั้นพื้นฐาน (สพฐ.) ได้ครับ


วันพฤหัสบดีที่ 4 ตุลาคม พ.ศ. 2555

Tears of Steel หนังสั้นจาก Blender

Blender ปล่อยหนังสั้นเรื่อง Tears of Steel ออกมาแล้ว หนังสั้นเรื่องนี้ใช้คุณสมบัติที่พัฒนาขึ้นเพิ่มเติมใน Blender 2.64 เพื่อใช้ในงานแอนิเมชันและภาพยนต์ที่ใช้ Green Screen และการทำ Composition อยากรู้ว่าหนังเป็นอย่างไรดูจาก Youtube ข้างล่างครับ





สำหรับท่าที่ต้องการใช้งาน Blender 3D 2.64 ดาวน์โหลดได้ที่ http://blender.org/download


Mozilla โชว์ Firefox สำหรับ Windows 8

Mozilla Firefox ออกรุ่น release preview สำหรับ Windows 8 Metro แล้วซึ่ง "Metro" จะเป็นหน้าจอแสดงโปรแกรมแบบ Touch ในรุ่นนี้ Firefox มี Start Page เป็นตารางสีสันสดใส สำหรับ Bookmark และ History สนับสนุนการใช้งานแบบ swipe และ gestures เพื่อเรียกหน้าเว็บที่เปิดใน tab ต่างๆ







สำหรับท่านที่สนใจทดสอบและทดลองสามารถดาวน์โหลดได้ที่เว็บไซต์ Mozilla ครับ


วันศุกร์ที่ 28 กันยายน พ.ศ. 2555

จัดการ VirtualBox ผ่านเว็บไซต์ด้วย phpvirtualbox

เมื่ออาทิตย์ที่แล้วพี่อดุลย์แห่ง NanoSoftTech ทักผ่าน Facebook มาถกปัญหาเกี่ยวกับ phpvirtualbox ซึ่งนานๆ ติดตั้งทีก็เล่นเอาลืมเหมือนกัน และการตั้งค่าในเวอร์ชั่นใหม่มันจุกจิกกว่าเดิมนิดหน่อย เอาล่ะเพื่อกันลืมก็ขอเขียนเป็น How-To ไว้ซักหน่อยแก้ลืมครับ มาลงมือกัน ก่อนอื่นเราต้องมี VirtualBox ก่อน ต้องใช้รุ่น Oracle เท่านั้น ใช้ Open Source Edition ไม่ได้นะครับ :)



แปลงร่างกันก่อน



sudo -s



จากนั้นใช้คำสั่ง wget เพื่อเอา VirtualBox มาติดตั้ง เลือกรุ่นที่ต้องการให้ดูจากหน้าดาวน์โหลดของ VirtualBox ของผมใช้ Ubuntu Server 12.04 LTS รุ่น Precise Pagolin ครับ



wget http://download.virtualbox.org/virtualbox/4.2.0/virtualbox-4.2_4.2.0-80737~Ubuntu~precise_amd64.deb



จากนั้นสั่งติดตั้งด้วยคำสั่ง



dpkg -i virtualbox-4.2_4.2.0-80737~Ubuntu~precise_amd64.deb



เมื่อติดตั้งได้แล้ว ให้เพิ่มผู้ใช้ vbox และกำหนดให้อยู่ในกลุ่ม vboxusers



useradd -m vbox -G vboxusers



กำหนดรหัสผ่านให้ผู้ใช้ vbox



passwd vbox



สร้างไฟล์ /etc/default/virtualbox เพื่อเก็บ config ของ VirtualBox



vi /etc/default/virtualbox



ใส่ข้อมูลลงไปดังนี้



VBOXWEB_USER=vbox



จากนั้นกำหนดให้ Web Services ของ VirtualBox ทำงานทุกครั้งที่เปิดเครื่อง และสั่ง start service โดยใช้คำสั่ง



update-rc.d vboxweb-service defaults
/etc/init.d/vboxweb-service start



ตอนนี้เราก็ได้ VirtualBox ที่เราเรียกกันว่า VirtualBox Headless กันแล้ว ทีนี้มาติดตั้ง phpvirtualbox กันครับ ติดตั้งแพคเกจที่จำเป็นต้องใช้กันก่อน



apt-get install apache2-mpm-prefork apache2-utils apache2.2-bin apache2.2-common apache2 apache2-doc apache2-suexec libapache2-mod-php5 libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libapr1 php5-common php5-mysql php5-suhosin php-pear wget



ดาวน์โหลด phpvirtualbox จากเว็บไซต์โครงการ http://code.google.com/p/phpvirtualbox



wget http://phpvirtualbox.googlecode.com/files/phpvirtualbox-4.1-10.zip



แตกไฟล์ zip แล้วคัดลอกไปยัง /var/www



unzip phpvirtualbox-4.1-10.zip
mv phpvirtualbox-4.1-10 phpvirtualbox



แก้ไขค่า config ใน /var/www/phpvirtualbox ดังนี้



cp config.php-example config.php
vi config.php



ใส่ข้อมูลในไฟล์ ดังนี้



var $username = 'vbox';
var $password = 'very-secret-password';



เมื่อตั้งค่าเสร็จให้คุณสั่ง start หรือ restart Apache



/etc/init.d/apache restart



แล้วเปิดเว็บ browser ไปยังเซิร์ฟเวอร์ของเราได้เลย ตัวอย่างเช่น http://my-virtualbox-server.com/virtualbox/ จะปรากฎหน้าจอให้เราใส่ username และ password คือ admin ที่เหลือก็เหมือนการทำงานบน GUI ปกติแล้วครับ :)


พลาดไม่ได้กับการแข่งขันพัฒนา Workflow Application ด้วย Joget Workflow Management

หากคุณมีความสนใจในการพัฒนา Workflow Application ด้วย Joget Workflow Management พลาดไม่ได้กับการแข่งขันการพัฒนา Workflow Application ชิงเงินรางวัลกว่า 100,000 บาท พร้อมรับโอกาสการได้งานทำหรือเป็นผู้ประกอบการใหม่ในงาน Global Entrepreneurship Week Thailand 2012 ซึ่งเป็นงานรวบรวมผู้ประกอบการและนักลงทุนทั่วโลก!



การแข่งขันจะเป็นการแข่งขันแบบเปิดไม่ต้องมานั่งแข่งขันกันในงาน ไม่ต้องเสียเวลาเดินทาง เพียงคุณลงทะเบียนเข้าร่วมการแข่งขันที่ http://joget.gewthailand.com เลือกโจทก์ที่ต้องการทำ ให้เวลาการพัฒนา 1 เดือน



กำหนดการ




  • วันที่ 11-21 ตุลาคม 2555 ลงทะเบียนเข้าร่วมแข่งขัน

  • วันที่ 11 13 พฤศจิกายน 2555 ส่งผลงานผ่านเว็บ

  • วันที่ 13-16 พฤศจิกายน 2555 ตัดสินผลงานและประกาศผู้ชนะเลิศ 3 อันดับ

  • วันที่ 18 พฤศจิกายน 2555 ผู้ที่ชนะเลิศ 3 อันดับ รับรางวัลในงาน Global Entrepreneurship Week Thailand 2012

    รางวัล


  • ชนะเลิศอันดับ 1 เงินรางวัล 50,000 บาท พร้อมฝึกงานที่ SIPA


  • ชนะเลิศอันดับ 2 เงินรางวัล 30,000 บาท พร้อมฝึกงานที่ SIPA

  • ชนะเลิศอันดับ 3 เงินรางวัล 20,000 บาท พร้อมฝึกงานที่ SIPA



รู้จัก Joget Workflow Management



Joget Workflow Management เป็นซอฟต์แวร์ช่วยสร้าง Workflow Application อยู่ในรูปแบบ Web Application เพียงแค่กำหนด Workflow สร้าง Form กำหนด Data List และกำหนดรูปแบบการแสดงผลเท่านี้คุณก็สามารถสร้าง Workflow Application ได้แล้วโดยไม่ต้องลงมือเขียนโปรแกรม





หากคุณยังไม่ได้ลอง Joget Workflow Management สามารถดาวน์โหลดโปรแกรมได้ที่ http://www.joget.org ติดปัญหาไม่ทราบจะสอบถามใคร ติดต่อชุมชนผู้ใช้ที่ http://community.joget.org


วันพฤหัสบดีที่ 13 กันยายน พ.ศ. 2555

อบรมการพัฒนา Workflow Application ด้วย JoGet Workflow Management ฟรี!

SIPA ร่วมกับ Open Dynamic อบรมการพัฒนา Workflow Application ด้วย JoGet Workflow Management ให้กับมหาวิทยาลัยเข้าร่วมโครงการ 4 แห่ง เพื่อเรียนรู้การพัฒนา Workflow Application และเป็นการเตรียมตัวเข้าร่วมการแข่งขัน Workflow App Building Compettition ชิงเงินรางวัลกว่า 100,000 บาท สำหรับท่านที่พลาดการอบรม หรือต้องการเรียน JoGet Workflow Management เพิ่มเติม สามารถสมัครอบรม JoGet อีกรอบได้ที่ http://bit.ly/jogetworkflow ด่วน! รับจำนวนจำกัดเท่านั้น




  • การอบรมเป็นภาษาอังกฤษ ไม่มี Sub Thai

  • เรียนที่ห้อง Lab ของ SIPA รับเพียง 30 ท่านเท่านั้น

  • เครื่องคอมพิวเตอร์ใช้ระบบปฏิบัติการ Linux เครื่องมือครบครัน (หากไม่ถนัดสามารถเอาโน๊ตบุคมาเองได้ กรุณาเอาปลักพ่วงมาด้วย)

  • ฟรี! สิทธิ์เข้าร่วมแข่งขัน Workflow App Builder Competition

  • ฟรี! ไม่เสียค่าใช้จ่าย


สร้าง Work Flow Application ง่ายๆ ด้วย JoGet

เก็บตกจากอบรมที่มหาวิทยาลัยรังสิตและมหาวิทยาลัยนอร์ทกรุงเทพซึ่งการอบรมสนุกสนานเกินไปหน่อย ออกแนวๆ ดูหนัง sound track แบบไม่มีซับไทย เล่นเอานักศึกษาหลายคนเหวอไปกับอาจารย์ฮิวโก้เลยล่ะ เนื่องจากตามกันไม่ค่อยทันผมก็เลยขอยกตัวอย่าง Work Flow Application ง่ายๆ ซักตัวเผื่อระรึกความหลังกันได้บ้าง ตัวอย่างคือ โปรแกรมใบลา แบบง่ายๆ (คุ้นมั๊ย) สถานการณ์เราเป็นแบบนี้ครับ



" พนักงานที่ต้องการลาต้องกรอกใบลาให้กับผู้จัดการอนุมัติ หากผู้จัดการอนุมัติให้ลาได้ก็ทำการแจ้งให้กับผู้ขออนุญาติทราบผ่านทาง E-mail และอัพเดทฐานข้อมูล(อะไรซักอย่าง เดี๋ยวตอนหน้ามาเล่นกัน) หากไม่อนุญาติก็แจ้งให้ทราบผ่านทาง E-mail เช่นกัน "



จากสถานการณ์ข้างต้นเราจะพบว่ามี Paticipant อยู่ 2 คนด้วยกัน คือ พนักงาน (Applicant) และ ผู้จัดการ (Approver/Manager) อีกส่วนหนึ่งคือ Paticipant ที่ไม่ใช้คนคือ System ที่จะทำหน้าที่เกี่ยวกับการส่ง E-Mail และอัพเดทฐานข้อมูล (หัด Route แบบ AND) เอาล่ะมาลงมือกันเลย



Workflow จะมีหน้าตาแบบนี้ครับ



ภาพ Workflow



มาสร้าง Application กันก่อนให้ชื่อว่า Leave Application กำหนด



App ID : leaveApp
App Name : Leave Application



กดปุ่ม Launch Workflow Designer สร้าง Workflow หน้าตาเหมือนภาพข้างบนครับ



ข้อมูล Process Properties กำหนดดังนี้



Name : Leave Process
ID : leave_process
Workflow Varible : status



ข้อมูล Human Paticipant



Name : Applicant
ID : applicant
Type : Paticipant



Name : Approver
ID : approver
Type : Paticipant



ข้อมูล System Paticipant



Name : System
ID : system
Type : System



ข้อมูล Activity



Name : Apply Leave Form
ID : applyleaveform



Name : Approve Leave Application
ID : approveleaveapplication



ข้อมูล Tool



Name : Notification Rejected
ID : notification_rejected



Name : Update Database
ID : update_database



Name : Notification Approved
ID : notification_approved



ข้อมูล Transition ตรงที่มี varible (เส้นทึบสีฟ้า) กำหนดดังนี้



Type : Condition
Expression : status=="Approved"



ข้อมูล Route แบบ AND (ที่มีเครื่องหมายบวกตรงกลาง) กำหนดดังนี้



Split Type : AND



เมื่อได้ Workflow แล้วกด Deploy Workflow ที่เราสร้างขึ้นไปยัง Server ของเราได้เลย หลังจากนี้ให้ทดสอบ Flow โดยการสั่ง Run Process แล้วตามดูจาก Running Processes Monitor, Complete Process หรือใช้ Audit Trail เพื่อดูการทำงานของ Flow ว่าทำงานถูกต้องหรือไม่ จากนั้นเราจะมาทำการกำหนดผู้ใช้ให้กับ Application ให้ดู ตรง Tab ชื่อ Map Participants to Users ก่อน ~ ถ้าดูยากไปกำหนดให้ใครซักคนเป็น Applicant และ Approver ก่อนก็ได้ครับ :P



กำหนดผู้ใช้ในส่วน Applicant เป็น



Type : Performer
Value : Activity Definition Id :runProcess



กำหนดผู้ใช้ในส่วน Approver เป็น



Type : Group
Value : Managers



เมื่อกำหนดผู้ใช้ได้แล้วเราจะมาสร้าง Form กัน ให้คลิกไปที่ Tab ที่ 2 คือ Map Activities to Form ส่วน Acitiviy แรกคือ Apply Leave Form กดปุ่ม Add/Edit Form จากนั้นจะมีหน้าต่างให้เราเลือกฟอร์ม ให้กด Create New Form เราจะสร้างฟอร์มหน้าตาอย่างนี้ครับ



Apply Leave Form



กำหนดค่าดังนี้



Form Name : Leave Application
Form ID : leaveForm
Table : leaves



กำหนดค่า Section ดังนี้



Label : Leave Application Form



ส่วน Field ต่างๆ กำหนดดังนี้



Label : Name
Type : Text Field
Validation : Mandtory



Label : Start Date
Type : Date Picker
Validation : Mandtory



Label : End Date
Type : Date Picker
Validation : Mandtory



Label : Reason
Type : Text Area



เมื่อได้ฟอร์มแล้วกด Save หากต้องการดูว่าหน้าตาออกมาเป็นยังไงกดปุ่ม Preview ข้างบนครับ :) จากนั้นกลับไปที่หน้า Map Activities to Form อีกครั้ง ในส่วน Approve Leave Application กด Add/Edit Form เราจะสร้างฟอร์มหน้าตาอย่างนี้ครับ



Approve Leave Application



กำหนดค่าดังนี้



Form Name : Approve Leave Application
Form ID : approveleaveapplication
Table : leaves



กำหนดค่า Section ดังนี้



Label : Approve Leave Application



เพิ่ม Sub Form เข้ามาและกำหนดค่าดังนี้



Label : (ลบชื่อ Label ออก)
Form ID : Leave Application
Readonly : (กด checkbox กำหนดให้อ่านได้อย่างเดียว)



ขั้นตอนนี้เราจะได้หน้าตาของแบบฟอร์ม Leave Application โผล่ออกมา จากนั้นเราจะเพิ่ม Radio Button เพื่อกำหนดเป็น Approved และ Rejected กำหนดค่าดังนี้



Label : Approval
Type : Radio
ID : approval
Options :




  • ค่าแรก




    • Value : Approved

    • Label : Approved


  • ค่าที่สอง




    • Value : Rejected

    • Label : Rejected




Validation : Mandtory
Workflow Variables : status



เพิ่มลูกเล่นให้กับ Form ของเราอีกนิดหน่อย หากว่า Approver/Manager ไม่อนุมัติในลาให้เรา คลิกที่ปุ่ม Rejected แล้วแบบฟอร์มจะแสดงกล่อง Text Area ให้กรอกหมายเหตุเพิ่มเติม วิธีการทำมีดังนี้



ให้เพิ่ม Section มาอีก 1 อันกำหนดค่าดังนี้



Label : Rejected
Visibility :
Field ID to control this Section : approval
Field value to display this Section : Rejected



จากนั้นเพิ่ม Text Area เข้าไปกำหนดค่าดังนี้



Label : Remark
Type : Text Area
ID : remark



ทีนี้ Save และ Preview ดูนะครับว่า กดปุ่ม Rejected แล้วมี Section ส่วน Remark ขึ้นมามั๊ย เอาคร่าวๆ แค่นี้ก่อนครับ :) ทีนี้กลับมาที่หน้า Leave App ของเรา เพื่อสร้าง User View เพื่อให้ผู้ใช้เข้าใช้งาน App หน้านี้ หน้าตาของ UserView ที่จะสร้างเป็นแบบนี้





ลงมือกันเลย กดไปที่ Userview โปรแกรมจะเปิดหน้า User View ขี้นมาให้กดปุ่ม Create New Userview จากนั้นกำหนดค่าดังนี้



Name : Leave Application Portal
ID : leavePortal



โปรแกรมจะเปิดหน้า UserView Designer ขึ้นมา ให้สร้าง Category ชื่อ Main จากนั้นเพิ่ม Menu ลงไปดังนี้



Label : Home
Element : HTML Page
Content : Welcome to Leave Application Portal



Label : Inbox
Element : Inbox
Assignments to Display : Assignment for A Process Only
Process : Leave Process
UI :




  • Show Number of Rows In Menu : (check เพื่อแสดงจำนวนข้อมูลใน Inbox)



Label : New Leave
Element : Run Process
Assignments to Display : Assignment for A Process Only
Process : Leave Process
Run process without confirmation screen? : (check - เพื่อไม่ต้องถามคำถามก่อน Run Process)
Show in popup dialog? : (เอาออก - เพื่อให้แสดงผลในหน้าเดียวไม่ต้องเปิดหน้าแสดงผลแบบ Dialog)



จากนั้น Save สั่ง Publish Application แล้ว Launch App ดูครับ เราจะได้หน้าตา Application ของเราอย่างนี้



Leave Application Portal



ลองใส่ข้อมูลดูครับ





Logout แล้วลอง Login เป็น Clark (Kent)





จะพบว่ามีเอกสารรอ Approve อยู่ 1 ฉบับหน้าตาแบบนี้





กดเพื่อเข้าไปอ่าน





ถ้าเลือก Rejected แบบฟอร์มจะให้กรอกเหตุผลของการไม่อนุมัติดังภาพ





ครั้งหน้าเราจะมาลองเล่น




  • การเพิ่ม Data List

  • การ Map Tools to Plugins

  • สั่งให้ส่ง E-Mail เตือน, Update Database ฯลฯ

  • เล่นกับ Hash Variable



อ้อเกือบลืมตัวอย่างไฟล์สมารถดาวน์โหลดได้ที่ http://pub.thaiopensource.org/joget-archive/Apps/ ครับ