"Hello World" - Mad Programmer Diary

Year In Review 2015! สวัสดีปี 2016

Posted by arnondora on December 31st, 2015

สำหรับปีนี้เป็นเหมือนปีที่ “พังทุกอย่าง และเริ่มต้นใหม่จริง ๆ” ปีนี้ผมเหมือนพยายามพังทุกอย่าง เพื่อก้าวสู่สิ่งใหม่ ซึ่งบางอย่างก็วางแผนไว้ บางอย่างก็เกินคาดจริง ๆ และก็ได้พบสิ่งที่ตัวเอง ชอบ จริง ๆ สักที ทำให้ในปีที่ผ่านมานี้ ผมได้ลงมือ ทำในสิ่งที่ตัวเองชอบสักทีนึง หลังจากถูก สิ่งที่เรียนบังตาอยู่ ว่าจริง ๆ แล้วผมไม่ได้ชอบในเรื่องของการ Coding และ Algorithm จริง ๆ เลย อีกอย่างนึงคือ ปีนี้เป็นปีที่การเรียน และเรื่องต่าง ๆ ค่อนข้างที่จะลงตัวอยู่พอสมควรแล้ว เลยพยายามชดเชยด้วยการทำกิจกรรมต่าง ๆ ในมหาลัยและคณะ จริง ๆ มันก็ไม่ ต่าง ๆ นะ เพราะว่า แค่มาช่วยงาน ชมรม Photo กับ สภานักศึกษานิดหน่อย และ พาคณะบุคคลากรที่มาจากจีนทัวร์ ทำให้รู้ว่า แก๊งทัวร์จีนนั้นไม่ได้แย่อย่างที่คิด (จริง ๆ ที่พึ่งไปกะบี่มา นี่อยากจะเปลี่ยนคำพูดเลย) […]

รู้จักกับ Accelerated Mobile Pages กันเถอะ

Posted by arnondora on December 23rd, 2015

ในบทความนี้เราจะมาทำความรู้จักโปรเจ็คใหม่ล่าสุดแกะกล่องจาก Google กันนั่นคือ Accelerated Mobile Pages หรือที่เราเรียกย่อ ๆ ว่า AMP นั่นเอง Accelerated Mobile Pages คืออะไร ? AMP หรือ Accelerated Mobile Pages มันเป็นซับเซ็ตตัวนึงของ HTML เหตุมันเกิดมาจาก Google มองว่า การพัฒนาเว็บในปัจจุบันนั้นสามารถทำได้หลากหลายทางมาก ๆ จนในบางวิธีนั้นได้ผลงานตามที่คนสร้างต้องการจริงแต่ในแง่ของ Performance ถือว่าแย่มาก ๆ Google เลยสร้าง AMP HTML ขึ้นมาเพื่อมาช่วยคุมเรื่องของ Performance นั่นเอง (เอาเป็นว่า มันเหมือนกฏที่สร้างมาให้เราทำตาม แล้วจะมั่นใจได้ว่า Performance ของเว็บเราดีแน่นอนก็ได้) ส่วนประกอบของ AMP AMP HTML – มันคือ HTML ที่เราเขียนกันในทุกวันนี้ปกติ แต่จะมีการเพิ่มมาของกฏและ Tag ใหม่บางประการซึ่ง Tag ทั้งหมดที่เพิ่มเข้ามาจะมีชื่อ amp แล้วตามด้วยชื่อ Tag […]

HTTP Status Code ที่หลาย ๆ คนไม่เข้าใจ

Posted by arnondora on December 22nd, 2015

เชื่อว่าหลาย ๆ คนที่เข้าเว็บในปัจจุบันน่าจะเคยเห็น Error ในหน้าเว็บต่าง ๆ ไม่ว่าจะเป็น 4xx หรือ 5xx เราจะเรียกมันว่า HTTP Error Code ซึ่งแต่ล่ะตัวก็มีความหมายที่แตกต่างกันออกไป วันนี้เราจะมาดูกันว่า แต่ล่ะ Code ที่เรามักจะพบเจอบ่อยในชีวิตประจำวันของเรามีอันไหนบ้าง ทำไมต้องมี HTTP Error Code? มันทำให้เรารู้ถึงปัญหาในการโหลดหน้าเว็บต่าง ๆ และสามารถวินิฉัยปัญหาได้ เมื่อมันเกิดขึ้น โดยมีรูปแบบที่เป็นมาตราฐานเหมือนกันทั่วโลกเลยล่ะ 4xx Error มาเริ่มกันที่ Error ยอดฮิตอย่าง 4xx Error (xx คือเลขตามหลัง) กันเลย เราจะเรียก Error แบบนี้ว่า Client Error ซึ่งน่าจะเกิดจากการเรียกหน้าเว็บผิด หรือใช้ไวยากรณ์ในการเรียกผิด หรือเหตุผลอื่น ๆ โดยน่าจะเกิดจากทางฝั่ง Client หรือฝั่งเราเอง Error 401 (Unauthorised) – เกิดจากเราไปเรียกหน้าที่ไม่สามารถโหลดได้จนกว่าเราจะใช้ […]

ทำให้ชีวิตง่ายขึ้นด้วย SSH Key

Posted by arnondora on December 14th, 2015
SSH Key

วันนี้ เราจะมาดูกันว่า เราสามารถติดตั้ง SSH Key ลงบน Server ของเราได้อย่างไร ในตัวอย่างนี้ ผมจะติดตั้งมันลงไปใน Server ของเว็บนี้กัน SSH Key คืออะไร ? ถ้าเราถามว่า ปกติเวลาเรา Login เข้าไปที่ Server เราก็ต้องผ่านตัว SSH หรือ Secure Shell โดยการใช้ Password แต่ปัญหาคือ ความปลอดภัย เพราะว่า Password ถ้าเราอยากจะรู้ก็ไม่ยากแค่ Brute Force ก็ออกมาอย่างง่ายดาย ดั่งสายลงวิ่งผ่าน แต่ถ้าเป็น SSH Key ที่กำลังจะได้ดูวิธีการใช้งานกันวันนี้จะเห็นได้ว่า แทบไม่มีทางที่จะใช้แค่ Brute Force แล้วออกเลย เพราะว่า ตัว Key จะถูกแบ่งออกเป็น 2 อันคือ Public Key และ Private Key […]

ขอ Certificate ง่าย ๆ จาก Let’s Encrypt

Posted by arnondora on December 11th, 2015

หลังจากที่ Let’s Encrypt ที่เป็นโครงการที่ทำให้เราสามารถออก Certification Authority (CA) ได้ฟรีโดยไม่มีค่าใช้จ่าย ตอนนี้ได้เดินทางเข้ามาสู่ช่วง Public Beta กันแล้ว นั่นคือเราสามารถขอ Certificate โดยไม่ต้องมี Invite เหมือนตอน Close Beta อีกต่อไป (ใคร ๆ ก็สามารถขอได้นั่นแหละ) ส่วนวิธีการขอนั่นก็ง่ายมาก ๆ เพราะว่าทาง Let’s Encrypt ได้เตรียมเครื่องมือที่ช่วยติดตั้งสำหรับ Web Server ยอดนิยมอย่าง Apache และ Nginx ไว้ให้แล้ว (ส่วน Web Server แบบอื่น ๆ อาจจะต้องติดตั้งเอง) มาดูวิธีติดตั้งและใช้งานกัน Step 1 : Clone Let’s Encrypt Client สำหรับเครื่อง Server ของใครที่ยังไม่ได้ติดตั้ง Git ก็ให้ติดตั้งกันก่อน โดยใช้คำสั่ง […]

วิธีเชื่อมต่อ Magic Mouse และ Apple Wireless Keyboard ใน Bootcamp

Posted by arnondora on December 7th, 2015

เมื่อวันก่อน เปิดคอมขึ้นมาใช้ตามปกติ แต่แค่เปิด Windows ผ่าน Bootcamp ตามปกติ แต่จู่ ๆ เมาส์ที่เป็น Magic Mouse ก็ต่อไม่ได้ เปิดแล้วนะ ก็ยังใช่ไม่ได้อยู่ดี เลยลองเข้าไป Unpair ใน Settings ของ Windows อะไรนี่แหละ หลังจากนั้นก็ Pair ไม่ได้อีกเลย น่าเศร้าจริง ๆ ตอนแรก ก็ลองหาเว็บที่เป็นภาษาไทยดูก่อน เพื่อจะมีคนเขียนเรื่องพวกนี้ไว้บ้าง สรุปก็ไม่มีเลย เศร้าแท้ TT จนสุดท้ายลองเข้าไปหาใน Apple Support ก็ดันไปเจอคนที่เป็นเหมือนเราพอดีเลย เลยลองเอามาทำตามดู ก็ยังไม่ได้อยู่ดี ระหว่างแต่ลองผิดลองถูก เอาวิธีของคนนั้นมาผสมกับคนนี้ จนเกิดฟลุ๊ก ได้เฉย งง ไปเลย (นั่งทำแก้อยู่ประมาณ 3-4 ชั่วโมงได้) ตามปกติ ตัว Mouse และ Keyboard เวลาเรา Install […]

งานเกิด ! เมื่อขอ Certificate จาก Let’s Encrypt แล้วพลาด !

Posted by arnondora on December 5th, 2015

เมื่อไม่กี่วันที่ผ่านมา ระหว่างที่ผมเข้าเน็ต เล่นเว็บอะไรไปเรื่อย ๆ ก็ไปเจอว่า “Let’s Encrypt เปิดในบริการในช่วง Public Beta แล้ว !!” ก็ดีใจหน้าตั้งสิครับ ! และหยุดอ่านหนังสือ และทำการบ้านทันที (นี่จะสอบอยู่วันอังคารแล้ว !!) เพราะว่ารอมานานมากแล้วตั้งแต่ Close Beta ที่สมัครไม่ทัน รอบนี้เลยเร็วมาก รีบทำซะ ! Let’s Encrypt คืออะไร ? เล่าสั้น ๆ ล่ะกัน เพราะว่า เดี๋ยวพอทำเสร็จแล้วจะมาเขียนให้อ่านกันอีกรอบนึง Let’s Encrypt เป็นโครงการตัวนึง ที่ต้องการให้เว็บหลาย ๆ เว็บที่กำลังเปิดให้ใช้อยู่ทุกวันนี้ เริ่มที่จะใช้กระบวนการเข้ารหัสทั้งหมด เพื่อความปลอดภัย แต่เมื่อก่อนนั้นการขอใบรับรองพวกนี้ จะต้องมีค่าใช้จ่าย แต่ Let’s Encrypt นั้นไม่มีค่าใช้จ่ายใด ๆ และมีการเซ็นใบรับรองแบบอัตโนมัติด้วย เลยทำให้เรื่องพวกนี้เป็นเรื่องที่ง่ายขึ้นมาก ๆ เลย ซึ่งอย่างที่บอกไปว่า ตอนนี้โครงการ Let’s Encrypt […]