"Hello World" - Mad Programmer's Diary

รีวิว Windows 10 Anniversary Update

windows-10-update-anniversary

นับว่าเป็นอัพเดทใหญ่ตัวแรกที่ Microsoft ออกให้กับ Windows 10 เพือเป็นการฉลองที่ Windows 10 มีอายุครบ 1 ขวบพอดี เลยตั้งชื่อมันซะเลยว่า Windows 10 Anniversary Update เอางั้นเลย ฮ่าๆๆ ฉะนั้นวันที่เพือเป็นการฉลองไปด้วยกัน เราจะไปดูกันว่า อัพเดทครบรอบ 1 ขวบนี้จะมีอะไรที่น่าสนใจโผล่มาบ้าง และมีอะไรที่ไม่ดีบ้าง ซึ่งผมก็ได้ใช้ไปแล้วประมาณอาทิตย์หน่อย ๆ บน Surface 3 และบน Macbook Pro ของผม ลองไปดูกันเลย สวัสดี Windows 10 Anniversary Update เราสามารถทำการอัพเดทเป็น Anniversary Update ได้ผ่าน Windows Update ได้โดยตรงเลย ซึ่งจะใช้เวลาไม่นาน ขึ้นอยู่กับอินเตอร์เน็ตของเรา สำหรับใครที่ทำไม่เป็น ก็ให้เข้าไปที่ Settings > Update & security และกด […]

นานาสาระกับ Middleware ใน Laravel

Laravel-Middleware_3

ผมเชื่อว่า ใครที่พึ่งเริ่มเรียน หรือหัดใช้ Laravel สิ่ง ๆ หนึ่งที่พวกเราหลาย ๆ คนไม่น่าอยากเข้าไปยุ่งในตอนนั้นคือ Middleware มันดูเป็นอะไรที่ ลึกลับ ซับซ้อน มาก ๆ สำหรับผมตอนแรก ๆ เลย แต่พอเราได้ลองมาดูจริง ๆ แล้ว มันแค่หลอกตาเราเท่านั้นแหละ ง่ายมาก ๆ เลย วันนี้เราจะลองมาดูกันว่า มันคืออะไร และ ทำอะไรได้บ้าง Middleware คืออะไร ผมก็ไม่รู้จะนิยามมันว่ายังไงเหมือนกัน อธิบายให้มนุษย์เข้าใจ มันคือ ตัวกรอง ในเครื่องกรองน้ำเลย ในที่นี้มันทำหน้าที่ในการกรอง Request ต่าง ๆ ที่ User กดไป กดมา อยู่ใน App ของเรา หลักการทำงาน(คร่าว ๆ ?) เราลองมาดูการทำงานแบบผิว ๆ กัน ก่อนที่เราจะเข้าไปดูว่าโค๊ตจริง ๆ […]

Filesystem Service ใน Laravel

Filesystem Laravel

กลับมาอีกครั้งกับซีรีส์ของ Laravel ในวันนี้ผมจะพาไปรู้จักอีก Service หนึ่งใน Laravel ที่จะช่วยให้เราจัดเก็บ และจัดการไฟล์ต่าง ๆ ในเว็บไซต์ของเราได้ง่ายขึ้นกับ Service ที่มีชื่อว่า Filesystem Filesystem ใน Laravel ทำอะไรได้ ? ถ้าเมื่อก่อน ก่อนที่เราจะได้มาใช้ Filesystem Service ใน Laravel ถ้าเราต้องการที่จะเก็บไฟล์ เรียกไฟล์หรือ เรียกค่าต่าง ๆ จากไฟล์ เราจำเป็นต้องเขียนคำสั่งในภาษา PHP เองทั้งหมด ซึ่งเราจะต้องมารับมือกับ Function มากมายก่ายกองไปหมด ถ้าเขียนในระบบเล็ก ๆ ภาระ ในการ Implement อาจจะไม่ยากนัก แต่ถ้าเราเขียนระบบใหญ่ เรื่องง่าย ๆ อย่างการอัพโหลดไฟล์อาจจะเป็นเรื่องใหญ่ ที่สร้างความบรรลัย และปวดหัวมาก ๆ เลยก็ได้ แต่ด้วย Filesystem Service ใน Laravel จะช่วยให้เราสามารถ […]

Getting Started with Gulp.js

gulpjs_sign

ถ้าใครที่เขียนเว็บในสมัยนี้ เราจะพบว่ากว่าเราจะเขียนเว็บออกมาได้สักเว็บหนึ่ง เราต้องเขียนทั้ง HTML, CSS และ JS หรือในบางคนอาจจะเขียน SCSS ไม่ก็ SASS ก็ต้องมา Compile และ Minify อีก ซึ่งเป็นอะไรที่ค่อนข้างเสียเวลามาก ๆ จะดีกว่ามั้ยที่จะมี Tool สักตัวมาจัดการให้เราเองทั้งหมด มาทำความรู้จักกับ Gulp.js กัน Gulp.js คืออะไร ? Gulp.js เป็น Tool ตัวนึงที่จะเข้ามาช่วยเราจัดการ Workflow การทำงานของเราให้รวดเร็วมากขึ้น โดยมี Plugin ให้เราเลือกใช้มากมาย ถ้านึกภาพไม่ออก ให้นึกซะว่า Gulp มันคือ คนใช้ ที่โง่มาก ๆ ทำอะไรไม่เป็นสักอย่าง แต่เราสามารถสอนมันได้โดยการลง Plugin ให้และบอกให้มันไปทำเป็นอย่าง ๆ ไป หรือเราเรียกว่า Task ติดตั้ง Gulp.js ตัว Gulp เองเป็น […]

Atom Package ที่น่าสนใจ และใช้อยู่

atom-packages-sign

ตอนนี้ผมก็เปลี่ยน Text Editor ตัวเองมาใช้ Atom มาหลายเดือนแล้วตั้งแต่ประกาศเวอร์ชั่น 1.0 ออกมา ในตอนแรกนั้นมันก็ ทำอะไรไม่ค่อยได้เลย และบัคก็เยอะมาก เมื่อเทียบกับ Sublime Text ที่ใช้อยู่ ณ ตอนนั้น แต่ตอนนี้เวลาผ่านไป Community ของคนที่ใช้ Atom ก็ใหญ่ขึ้นเรื่อย ๆ บัคก็ถูกแก้ไปเรื่อย ๆ เลยทำให้โปรแกรมนี้ค่อนข้างเป็นที่นิยมและมี Atom Package ออกมาเป็นจำนวนมาก หนึ่งเหตุผลที่ทำให้ Atom นั้นเป็นที่นิยมก็เพราะว่า ตัวมันถูกเขียนขึ้นมาด้วย HTML, CSS และ JS และใช้ Electron ช่วยเพื่อให้มันรันได้เหมือน Native Application ฉะนั้นใครที่เขียนเว็บเป็นก็สามารถเล่นกับมันได้ไม่ยากเลย Atom Package จากที่ได้บอกไปว่าตัวมันถูกเขียนโดย HTML, CSS และ JS ทำให้นักพัฒนาสามารถ เล่นกับตัวโปรแกรมได้จนถึงตัวแกนกลางเลยก็ย่อมได้ ดังนั้นจึงมีนักพัฒนาที่พัฒนา Package หรือ […]

นับ 1 2 3 มาถ่ายรูปกันเถอะ! – เรื่องยุ่งๆ หลังคอม (Part 2)

photoTip4_3

หลังจากตอนที่แล้วก็หายไปนานเลย สารภาพบาปว่า ตอนนั้นงานยุ่งมาก จนลืมไปเลย ตอนนี้ปิดเทอมแล้ว จะมาไล่เขียน Tutorial ที่ค้างไว้ให้จบกันเลย คราวที่แล้ว เราได้เรียนรู้ การดู Histogram กันไป วันนี้ เราจะมาดูอีกหนึ่งเรื่องที่สำคัญของการ Process ภาพนั่นคือ White Balance White Balance คืออะไร White Balance (WB) หรือภาษาไทยเราเรียกว่า สมดุลแสงขาว (อ่านแล้วแปลก ๆ มาก !) แต่ก่อนที่จะไปดูความหมาย เราต้องเข้าใจก่อนว่า แสงที่เรามองเห็นนั้นมี อุณหภูมิ ที่แตกต่างกัน สังเกตไม่ยาก เราลองดูมองออกไปนอกหน้าต่างตอนกลางวัน และเทียบกับ แสงจาก Flash จากโทรศัพท์ของเราดู เราจะเห็นว่า แต่ละแหล่งกำเนิดแสงให้แสงที่มี อุณหภูมิ หรือสีที่แตกต่างกันออกไป อุณหภูมิของแสง เราจะวัดกันในหน่วย เคลวิน ยิ่งมาก แสงจะออกสีไปทาง ส้ม มากขึ้น กลับกัน ถ้าน้อยจะออกไปทาง […]

Database Migration with Laravel

Database_Migration_Laravel_2

ถ้าใครที่ใช้ Laravel ใหม่ ๆ ก็อาจจะสงสัยว่า Migration ใน Laravel มันคืออะไร แล้วมันเกิดมาเพื่ออะไรกันแน่ วันนี้เราจะมาทำความเข้าใจกับ Database Migration ใน Laravel กัน Database Migration คืออะไร ? ก่อนที่เราจะเข้าใจความหมาย เรามาดูกันก่อนว่า ปกติแล้ว เราทำงานกับ Database ในเว็บกันอย่างไร กับผม ก่อนที่จะมาใช้ Laravel ผมก็จะเขียน ERD แล้ว Implement ลงใน DBMS ที่ใช้เช่น MySQL หรือ SQL Server ก็ว่าไปแล้วแต่ Project และพอผมทำเสร็จผมก็จะ Backup ตัว DB แล้วส่งต่อให้ในทีมเอาไปทำต่อ ถ้าเกิดวันหนึ่งผมต้องเปลี่ยนชื่อ Field สักตัวใน DB นั่นแปลว่า ผมต้องส่งตัว Backup ของ […]

แว่บไปงาน Google I/O Extended Bangkok 2016 มา

GoogleIO_Extended_Bangkok_2016_6

เมื่อวาน (นับจากวันที่เขียน) 1 ปีก็เวียนมาบรรจบอีกครั้งกับงาน Google I/O Extended Bangkok 2016 ปีนี้ก็เป็นอีกปีที่ GDG Thailand จัดขึ้น และปีนี้เล่นใหญ่มาก เพราะเล่นไปจัดกันใน สยามพาวาลัย Siam Paragon กันเลยทีเดียว เล่นใหญ่จริง ๆ เริ่มจากตอนเช้า ผมว่า ผมน่าจะเป็น คนแรก ที่มาเลยจริง ๆ มาตั้งแต่ 6 โมงครึ่ง (มาเร็วขนาดนี้ เพื่อ ???) ก็เลยต้องนั่งรอ พอจนถึงสัก 8 โมงครึ่งคนก็ทยอยกันมา และงานในปีนี้ ใครที่มาลงทะเบียน 800 คนแรก จะได้ Cardboard ไป คนเลยต้องมาต่อแถว กันยังกะเล่นเกม งู กัน คือ โอ้โหมาทำอะไรกันเยอะแยะ กว่าจะได้ลงทะเบียนกันก็ 9.30 ได้ หลังจากที่ได้ลงทะเบียนกันแล้ว ก็เป็น Welcome Speech […]

Vi หรือ Vim คืออะไร มาทำความรู้จักกัน

What-is-Vim-3

สวัสดีครับ ! ช่วงนี้หายไปนานเลย วันนี้ขอกลับมาด้วยหัวข้อที่คนที่พึ่งหัดเขียนโปรแกรมในสมัยนี้ไม่รู้จักหน่อยล่ะกัน นั่นคือ Text Editor ที่เป็นที่นิยมอย่าง Vi หรือ Vim นั่นเอง ในบทความนี้ผมจะอธิบายการใช้งานเบื้องต้นเท่านั้น ไม่มีเรื่องของการใช้ Plugin หรือการตั้งค่าต่าง ๆ นะครับ Vi หรือ Vim คืออะไร ? Vi หรือ Vim เป็น Text Editor ตัวนึง เหมือนกับ Atom หรือ Sublime Text ที่เราใช้ในปัจจุบัน แต่มันเกิดมาในยุคที่เก่ากว่า นั่นคือยุคที่เรายังใช้ Command Line เป็นหลัก กันอยู่ ข้อดีของมันในปัจจุบันคือ มันมี Module ให้เราเลือกโหลด และ เลือกเล่นเต็มไปหมด มันเยอะจนไม่รู้จะเล่นอะไรดี แต่ข้อเสียมันก็มีเหมือนกัน คือถ้าเราไม่เคยอ่าน Document หรือไปฟังใครมาก่อน เล่นเอง แรก […]

Review Apple Magic Mouse 2

magicmouse2_1

หลังจากใช้ Magic Mouse ครั้งแรกเมื่อ 5 ปีมาแล้ว ตอนที่ซื้อ Macbook Pro 2011 มาใช้ ตอนนี้มันก็เริ่มอาการไม่ดีเท่าไหร่ บางทีมันก็คลิกไม่ได้ หรือบางทีคลิกไปครั้งเดียวมันกลายเป็น คลิก 2 ครั้งเฉยเลย หลัง ๆ มันเป็นหนักขึ้นเรื่อย ๆ เลยต้องหาเมาส์ใหม่ ตอนแรกเลย ก็จะซื้อ Magic Mouse นี่แหละ แต่เห็นราคาแล้ว โอ้ !!! น่ากลัว ! เลยทำให้ต้องใช้ Razer Deadadder ที่มีอยู่แล้วไปก่อน แต่มันก็ไม่สามารถตอบโจทย์ได้เท่าไหร่ เลย ตัดสินใจและ ยอม ! เอาก็ได้ฟร๊ะ ครั้งแรกที่ผมเห็นมัน ก็จำไม่ได้เหมือนกันว่าเมื่อไหร่ แต่จำได้ว่าครั้งแรกที่เห็น มันก็มีคำถามขึ้นมาในหัวว่า “ต่างจากเติมยังไงฟร๊ะ !!” พอมาอ่านดูก็อืม… มันชาร์จได้เฟ้ย ! มันช่างเป็นนวัตกรรมจริง ๆ สุดยอดไปเลยจอร์จ น้ำตาจะไหล ปัดโธ่ […]

arnondora.in.th Update หน้าเว็บแล้วนาจา

arnondora22_1

หลังจากที่เมื่อปีที่แล้ว ที่ผมเปลี่ยนหน้าเว็บใหม่หมดไฉไลกว่าเดิม ปีนี้ก็เช่นกัน เราก็ต้องทำอะไรบ้างแล้วแหละ เลยจัดซะเลย ผมใช้เวลา เสาร์ อาทิตย์ที่ผ่านมานั่งทำอยู่ ตอนนี้ก็เสร็จเรียบร้อยแล้วตอนนี้ก็อะเรียบร้อยหมดแล้ว ตามสัญญาที่โพสต์เอาไว้ในเฟส จะมาเขียนให้อ่านกันว่า มันมีอะไรใหม่ ๆ เพิ่มเข้ามาบ้าง มาดูกันเลย Font ใหม่อ่านง่ายกว่าเดิม จากอันเดิมที่ใช้ Roboto ที่ไม่รองรับภาษาไทย เพราะฉะนั้นเวลาแสดงผล เครื่องก็จะเลือกเอา Font มาตราฐานมาใช้ทำให้ มันแสดงผลต่างกันในล่ะล่ะ OS อีก ซึ่งมันไม่สวยเลย ตอนนี้เราเปลี่ยนใหม่แล้ว ถ้าสังเกตจุดใหญ่ ๆ เราใช้ Sukhumwit Set ที่มาพร้อมกับ macOS แต่มันก็ติดเรื่องของ License อีก เพราะว่า Sukhmwit Set ที่มาพร้อมกับ macOS นั้นห้ามเอามาทำเป็น Font-Face ลงบนเว็บ เลยทำให้ต้องไปหาอีก Font นึงที่หน้าตาคล้าย ๆ กันนั่นคือ Thai Sans Lite […]

[Docker] สร้าง LAMP Stack ด้วย Docker

LAMP_with_docker_sign

จากตอนที่แล้ว ที่เขียนเรื่องของ Docker ไปก็มีหลายคนสนใจมาก ๆ วันนี้เลยจะมาต่อยอดจากคราวที่แล้วกัน เราจะมาลองทำ LAMP Stack ไว้ใช้งานกัน LAMP Stack คืออะไร ? อันนี้อธิบายเพื่อใครไม่รู้จัก LAMP Stack คือชุดของ Software 4 ตัวที่มารวมกันเพื่อทำ Web Server ที่เราใช้ ๆ กันอยู่นี่แหละ โดยมันประกอบด้วย L แรกคือ Linux ที่เป็น OS ที่เราน่าจะรู้จักกันดี A คือ Apache หรือ Web Server M คือ MySQL ที่เป็น Database ให้เราใช้งาน P คือ PHP เป็น ภาษาที่เราใช้เรียกและดึงข้อมูลต่าง ๆ มาลองสร้างกัน ใน Workshop นี้จะไม่พูดพร่ำทำเพลงอะไรมา […]

รู้จักกับ Docker ที่ทำให้ชีวิตง่ายขึ้น

what-is-docker-sign

Docker คืออะไร ? มันเป็น Tool ตัวหนึ่งที่ทำให้เราสามารถห่อระบบของเราแล้วเอาไปรันที่ไหนก็ได้ ที่มี Docker ติดตั้งไว้ อ่านแล้วน่าจะ งง กัน ง่าย ๆ มันก็คือ Virtual Machine แบบนึงเหมือนกับที่เราใช้ VMware, VirtualBox หรืออะไรพวกนี้ แต่ Docker ต่างจาก VM ตัวอื่น ๆ ตรงที่มันจะทำงานอยู่บน LXC ซึ่งเป็น VM ที่ทำงานอยู่บนระดับ OS อ่านแล้ว งง แน่ ๆ เอาเป็นว่า จุดที่ต่างคือปกติแล้ว VM จะจำลองมันทั้ง OS เลย แต่ Docker มันจะแยก Guest OS ออกเป็นแต่ล่ะ Container โดยที่แต่ล่ะ Container จะไม่เกี่ยวข้องกันเลย (แต่จะให้มันเกี่ยวกันก็ได้) สรุปเราสร้าง […]

Movie Review – If Cats Disappeared From The World น้ำตานองโรง

Review-If-Cats-Disappeared-Sign

วันนี้ก็เป็นโอกาสอันดีที่เราได้ โดดงาน ไปดูหนัง ซึ่งเป็นเรื่องที่อยากดูมานานแล้ว แต่ไม่มีโอกาสได้ไปดูสักที วันนี้ก็ได้ไปดูมาแล้ว กับเรื่อง If Cats Disappeared From The World หรือชื่อภาษาไทย มิ้ง ๆ ว่า ถ้าแมวตัวนั้นหายไปจากโลกนี้ เป็นหนังที่ดัดแปลงมาจากนิยายขายดีของ Genki Kawamura แน่นอนว่า หนังมาขนาดนี้ ต้องมีหนังสือแปลมาด้วยแน่นอน ซึ่งผมยังไม่ได้ซื้อมาอ่านเลย ไว้เดี๋ยวจะซื้อมาอ่านแน่นอน !! กับรีวิวเรื่องนี้ ไม่รู้จะเขียนยังไงดีเลย ไม่รู้จะอธิบาย อารมณ์ และ ความรู้สึกที่ค้างจากหนังยังไงดีเลย ตอนนั่งดู จู่ ๆ น้ำตาก็เอ่อออกมาเอง แบบไม่รู้ตัวเลย (นี่คือขั้นกว่า ของการร้องไห้ธรรมดาอีกนะ) ไม่คิดว่าหนังตะวันออกจะทำ Damage กับอารมณ์ได้ขนาดนี้ ตอนนี้กำลังเขียนด้วยน้ำตาเลยนะ ! (มันซึ้งขนาดนั้นอะ) เรื่องย่อ ย่อสุด ๆ ไม่สปอยล์ If Cats Disappeared From The World เป็นหนังที่เล่าถึงชีวิตของบุรุษไปรษณีย์กับแมวของเขาที่มีชีวิตอยู่อย่างสงบสุข อยู่ดี […]

Machine Learning is Fun : Decision Tree (EP.2)

machineLearning_EP2_Sign

ความเดิมจากตอนที่แล้ว จากตอนที่แล้วเราได้เรียนรู้เกี่ยวกับ Machine Learning ไปเบื้องต้น และเราได้ไปทำความรู้จักกับ Classifier ที่เป็นเหมือนกับฟังก์ชั่นตัวหนึ่งที่ทำให้คอมพิวเตอร์สามารถจำแนกส่ิงต่าง ๆ ตามที่เราต้องการได้ และเรายังได้รู้ถึงคำว่า Supervise Learning กันไปว่ามันคือการ ที่เราให้คอมพิวเตอร์จดจำ และบอกว่า สิ่ง ๆ นั่นคืออะไร แล้วให้มันพยายามบอกว่า สิ่งที่เราป้อนเข้าไปใหม่มันคืออะไร และสุดท้าย ท้ายสุดเราก็ได้มาลอง Coding กันสนุก ๆ เล็กด้วย Scikit-learn Library ที่ใช้ Python นั่นเอง All About Induction เรื่องนี้จริง ๆ มันต้องอยู่ในตอนที่ 1 ในเรื่องของ Supervise Learning นั่นแหละ แต่ลืมเขียนไป จริง ๆ แล้วการที่เรา เอาข้อมูลให้คอมพิวเตอร์ และบอกเฉลยมัน และสุดท้ายเราก็เอาข้อมูลมาให้มันดู และถามว่ามันคืออะไร จริง ๆ แล้วมันก็คือการทำ Induction […]

Older Entries