สร้าง RESTful API ด้วย Node.js + Express เบื้องต้น

ช่วงนี้ผมได้มีโอกาสสร้าง RESTful API รัว ๆ ด้วย Node.js เนื่องจากเขียนง่าย ด้วย Syntax ภาษา JavaScript เพราะมีพื้นฐานมาบ้าง บวกกับ Framework ที่ชื่อ Express นั้น ก็ยิ่งทำให้การสร้าง RESTful API ทำได้ง่ายและรวดเร็วมากขึ้นไปอีก ก็เลยมาเขียนบทความทิ้งไว้สำหรับผู้เริ่มต้น ได้เป็นแนวทางในการเรียนรู้ ก่อนอื่น ขอพูดถึง Node.js นิดนึง เนื่องจากตอนที่ผมได้ยินชื่อ Node.js […]

กลับมาเถอะนะ Android SDK Manager บน Android Studio 2.3 (สำหรับ macOS)

ใน Android Studio นั้น ในเมนู Configure > SDK Manager จากหน้าแรก เราสามารถเปิดหน้า Android SDK ขึ้นมา เพื่อจัดการ SDK ต่าง ๆ ได้ แต่สำหรับผู้ที่ชอบ Android SDK Manager เดิม ๆ อย่างผม มักจะจิ้มตรง Launch Standalone SDK […]

Firebase Hosting : สร้างเว็บไซด์บน Web Hosting ฟรี ๆ ของดีจาก Google

หลายคนที่ได้ติดตามข่าวงาน Google I/O 2016 น่าจะได้ยินข่าวการเปิดตัว Firebase บริการใหม่จาก Google ที่เข็นออกมาให้เหล่า Developer อย่างเรา ๆ ได้ร้องว้าว! กันไปแล้ว เพราะถูกอกถูกใจ เนื่องมีบริการและเครื่องมือต่าง ๆ ให้ใช้งานเยอะมาก และนำมาใช้งานได้สะดวก ประหยัดเวลาชีวิตเหล่า Dev ไปได้อีกหลายกอง หลังจากจบงาน Google I/O 2016 เหล่า Dev ตาม Community […]

ใช้ Git เพื่อชีวิต (Source Code) ที่ดีกว่า – การติดตั้ง Git บน Mac

จากที่เคยได้เขียน Blog ในตอน ใช้ Git เพื่อชีวิต (Source Code) ที่ดีกว่า – การติดตั้ง Git บน Windows เมื่อปีที่แล้ว (นานเป็นปีเลยเหรอเนี่ย…) และผมก็ใช้งานมันมาอย่างต่อเนื่องชนิดที่เรียกว่า ขาดไม่ได้ และตอนนี้ได้เปลี่ยนมาใช้ Mac ซึ่งหลังจากได้เครื่องมา Git ก็เป็นโปรแกรมแรก ๆ ที่ผมติดตั้งลงไป สำหรับบทความนี้ จะพูดถึงขั้นตอนการติดตั้ง Git สำหรับ Mac […]

รีวิวงาน Code Mania 11 : Raise the bar (รูปเยอะ)

เมื่อวานนี้ ทางสมาคมโปรแกรมเมอร์แห่งประเทศไทย ได้จัดงาน Code Mania 11 ขึ้นมา ซึ่งเป็นครั้งที่ 3 แล้วที่จัดงานนี้ (นับเลขครั้งเป็นเลขฐาน 2) ซึ่งผมก็ได้มีโอกาสไปร่วมฟังบรรยายในงานในฐานะ Blogger คนนึง ก็เลยมาเล่าบรรยากาศในงานให้ได้รับชมกัน โดยครั้งนี้ ทางสมาคมฯ ได้เลือกสถานที่จัดงานเป็น คณะวิศวกรรมศาสตร์ จุฬาลงกรณ์มหาวิทยาลัย โดยใช้ Theme ของงานคือ Raise the bar ซึ่งจะนำเสนอไปในทิศทางว่า “อะไรคือสิ่งที่คนไทยจะได้รู้แล้วจะทำให้เขียนโปรแกรมได้ เก่งขึ้น สะดวกขึ้น […]

เมื่อ WordPress คุณถูกแฮ็ก ~ แกะรอยจากสิ่งที่ Hacker ได้ทิ้งไว้

อย่าเพิ่งตกใจกับจั่วหัวกันนะครับ บทความนี้ตั้งใจจะมาเล่าประสบการณ์ให้ได้ทราบกัน เพื่อที่เหล่า Web Developer ให้ได้เตรียมตัวและป้องกันไว้แต่เนิ่น ๆ และก็ไม่ได้จำกัดเฉพาะ WordPress เท่านั้น เรื่องของเรื่องมีอยู่ว่า เว็บนี้ถูก Hack โดยที่ผมไม่รู้ตัวนานถึง 8 เดือน!! อย่าเพิ่งรีบปิดเว็บหนีไปนะครับ ผมได้ทำการถอนรากถอนโคนออกไปหมดแล้ว และคิดว่าถึงเวลาที่ต้องมาแฉ ในสิ่งที่ Hacker นั้นทำไว้ รวมถึงวิธีการตรวจสอบต่าง ๆ แนวทางป้องกัน เผื่อว่าใครที่ตกอยู่ในภาวะเสี่ยงแบบเดียวกับผม จะได้ป้องกันได้

[Dev] เรื่องพื้น ๆ ของ OOP ที่โปรแกรมเมอร์ส่วนใหญ่มักไม่เข้าใจมัน

หลัง ๆ มานี้ ได้สอนงานน้อง ๆ และเพื่อนร่วมงานอยู่หลายครั้ง และค้นพบความจริงว่า คนที่รู้จัก Object-Oriended Programming หรือ OOP แบบถ่องแท้นั้นมีน้อยมาก บ้างก็รู้จัก แต่ออกแบบไม่เป็น บ้างก็แค่พอใช้งานได้แบบมั่ว ๆ ไป ไม่เข้าใจที่มาที่ไปซะทีเดียว บทความนี้จึงเกิดขึ้นมา จากการที่ได้พูดได้สอน จนได้วิธีการอธิบายให้เข้าใจได้ง่ายขึ้น จากการตกผลึกมาให้แล้ว เพื่อปลดล๊อคความเข้าใจในการเขียนโปรแกรมเชิงวัตถุ หรือ OOP ได้มากขึ้น

[Dev] จะใช้คำสั่ง Loop หรือเขียน Recursive บน VB.NET ดีนะ

จากบทความตอนที่แล้ว ที่ืได้ทดสอบคำสั่ง Loop ในแบบต่าง ๆ ไปนั้น คราวนี้จะลองนำมาเทียบกับการเขียน Recursive Function ดูบ้าง เนื่องจากว่า สามารถเขียนคำสั่งในการทำงานซ้ำ ๆ ได้เช่นกัน โดยการทดสอบ จะใช้โจทย์เดียวกับบทความที่แล้ว ก็คือ การบวกเลขตั้งแต่ 0 ไปจนถึง n-1 ซึ่ง n ก็คือตัวเลขที่เราจะสุ่มขึ้นมา ซึ่งมีค่าอยู่ในช่วง 1-100 นั่นเอง

[Dev] Loop แบบไหน บน VB.NET ทำงานได้เร็วกว่ากันนะ~!!

จากที่ได้ทดสอบคำสั่ง If ในรูปแบบต่าง ๆ รวมถึงการทดสอบเพื่อเปรียบเทียบคำสั่ง If-Else และ Select-Case ไปแล้ว คราวนี้ถึงคราวของ Loop บ้าง สำหรับการทดสอบคำสั่ง Loop ผมจะใช้โจทย์เป็น การบวกเลขตั้งแต่ 0 ไปจนถึง n-1 ซึ่ง n ก็คือตัวเลขที่เราจะสุ่มขึ้นมา ซึ่งมีค่าอยู่ในช่วง 1-100 นั่นเอง

[Tip] การ Import Settings หลังจากอัพเดต Android Studio และการแก้ปัญหา พร้อมคืนพื้นที่ฮาร์ดดิสก์

เชื่อว่า Android Developer ทุกคน ต้องเคยอัพเดตเวอร์ชั่นของ Android Studio กันบ้างแล้ว ซึ่งในบางครั้ง เมื่ออัพเดตเสร็จแล้ว จะพบกับ Complete Installation Dialog ถามเรื่องของการ Import Settings ซึ่งในบางครั้ง อาจจะเลือกตัวเลือกผิด แล้วไม่รู้จะแก้ไขยังไง ต้องมาตั้ง Settings กันใหม่ เนื่องจากผมเจอปัญหากับการอัพเดตในบางครั้ง ก็เลยได้ลองผิดลองถูกจนเข้าใจ เลยมาเขียนเป็นบทความให้อ่านกัน