Making of adkdev.com Part 1: Introduction

June 17, 2017
howto introduction

เกริ่นนำ

สวัสดีครับ ห่างหายไปนานหลายปี วันนี้ฤกษ์งานยามเหมาะ จึงได้จัดทำ blog ขึ้นมาใหม่อีกครั้ง ก่อนหน้านี้ blog ของผมจะฝากไว้ที่ Google AppEngine แต่ตอนนี้ อยากจะลองใช้ GitHub pages ดู อันที่จริงก็อยากจะลอง Firebase Hosting อยู่เหมือนกัน ตอนนี้กำลังฮิตติดตลาด แต่เอาไว้งวดหน้าละกัน ตอนนี้เอาอันนี้ก่อน :D

ประวัติย่อ

โดย blog รุ่นแรกโน้น สมัยปี 2006 จะใช้ wordpress (โค้ดหายหมดแล้ว db ที่ backup ก็หายหมด) ต่อมาพอย้ายไป AppEngine เปลี่ยนไปเป็น python ทำมือบ้านๆ (เปิดค้างไว้ ไม่ค่อยได้เขียน) รุ่นนี้จึงอยากจะทำแบบธรรมดาๆ ธรรมชาติๆ แบบไม่เสียตังค์ จึงมาลองใช้ Static website ดู (เพราะ GitHub pages ไม่รองรับแบบ dynamic ฮ่าๆ)

เทคโนโลยี

ในส่วนของเทคโนโลยี ที่ใช้จัดสร้าง blog นี้จะประกอบไปด้วย

  1. Web hosting - GitHub pages ไว้สำหรับเก็บไฟล์ html, css, js, xml, json ทั้งหลายที่เป็นไฟล์เหี่ยวๆ แห้งๆ ไม่ต้องพึ่ง server-side ในการทำงาน
  2. DNS Server: Cloudflare แน่นอน ว่าเราจะมีแต่ Domain name เฉยๆ ไม่ได้ มันต้องมี dns server ที่คอยบอกผู้ชม ว่าไอ้ static files แห้งๆ เหี่ยวๆ ของเราทั้งหมดนั้น เก็บไว้ที่ไหน
  3. Static site generator: Hugo - เขียนด้วย Golang (อันที่จริง รุ่นแรก v0.1 ก่อนปล่อยตัวนี้ ใช้ jekyll เพราะเป็นระบบที่ใช้ทำ GitHub pages) แต่ด้วยความที่อยากลอง Golang จึงเลือกตัวนี้ (แต่พอทำเสร็จแล้ว ไม่ได้แตะโค้ด Golang สักบรรทัด เหอๆๆ T..T ระบบมันทำให้หมด)
  4. Domain name: มีอยู่แล้ว เพราะจดไว้นานละ จ่ายทุกปี
  5. Source control: แน่นอน ใช้ GitHub pages ก็ต้องเก็บ Code ไว้บน GitHub สิจ๊ะ

ยกเว้น Domain name ในข้อ 4. ที่ต้องต่ออายุทุกปี ระบบที่เหลือนั้น เป็นของฟรีหมดจ้าาาาา

Blog posts ชุดนี้ จะแบ่งเป็นตอนย่อยๆ 3 ตอน โดยในตอนหน้าจะเป็นขั้นตอนในการ Set up ที่ Service ในข้อ 1 และ 2 ครับ ส่วนข้อ 3 Hugo นั้นจะยาวหน่อย เลยจะจัดไว้เดี่ยวๆ

ส่วนที่เหลือข้อ 4, 5 นั้น ไม่มีอะไรมาก จะไม่ได้เขียนถึงครับ

วันนี้ ขอจบแต่เพียงเท่านี้ก่อนครับ บายๆ :D