[CSS] ปรับหน้าเว็บให้เป็นโทนขาวดำ

โพสนี้เนื่องจากมีเพื่อนถามมากันพอสมควรว่าเปลี่ยนเว็บ เป็นโทนสีขาวดำ เพื่อร่วมไว้อาลัยถวายแด่ “ในหลวง” ผมลองหาข้อมูลดู เนื่องจากไม่ได้ทำงานด้าน CSS มาก่อนเลย เลยมาของสรุปไว้นะครับ โดยถ้าเป็นเว็บที่ไม่ใช้ได้ CMS อะไรเลย สามารถนำ Code นี้ไปใช้งานได้เลยครับ สำหรับตัว WordPress สามารถเข้าไปที่ Theme >> Customize >> Theme Options จะมีส่วนของ Custom CSS สามารถเอา Code ไปใส่ได้เลยครับหรือ ถ้าขี้เกียจสามารถใช้ Plug-in ของคุณ tannysoft ได้ครับ หมายเหตุ พยายามปรับระดับ grayscale ให้เหมาะสมกับเนื้อหาของเว็บนะครับ จะได้ไม่สรางปัญหาให้กับผู้อ่าน และลด UX ของเว็บลงไป

[.NET] สรุปงาน DevRock #03 Rock Show

สำหรับงานนี้ ผมเพิ่งนึกว่ามีครั้งแรก 555 เพราะเข้ามาอยู่ในกลุ่ม Dev Rock Developer Group นานแล้ว (รู้สึกว่าชื่อเดิมเกี่ยวกับ ASP.NET MVC ครับ) ผมเพิ่งสังเกตุว่าตัว Event เพราะ เพื่อนใน FB หลายคนกด Like ไว้ใน Facebook ไว้นะครับ สำหรับงานครั้งนี้จัดเป็นครั้งที่ 3 และ โดยครั้งนี้จัดที่มหาวิทยาลัยหอการค้า คณะวิทยาศาสตร์ และเทคโนโลยี อาคาร 7 ชั้น 3 ครับ แต่วันนี้งานเริ่ม Late ไปนิดนึงนะครับ เนื่องจากฝนตกครับ โดยตัวงานเริ่มประมาณช่วง 09:30 ครับ โดยมีรายละเอียด ดังนี้ BDD with .NET Behave Speaker Peerapat Asoktummarungsri ฺBehavior-driven development หรือ BDD – เริ่มมาจากของฟากภาษา Ruby (RSpec) จากนั้นเริ่มแตกออกไปหลายๆ ภาษา เช่น Java, .NET หรือ PHP เป็นต้น ตัว BDD ทำหน้าที่เป็นตัวกลาง (Adapter) เชือมงานแต่ละชิ้น เข้าด้วยกัน ลองดูตัวอย่าง เช่น ทำเว็บหาราคาที่พัก แล้ว … งานมันแยกกันทำนี่ คนนึงอาจจะทำ Search คนนึงทำ Login แล้วถ้า Login ก่อน Search หรือ Search ก่อน login ผลลัพธ์มันจะเป็นอย่างไร ? BDD สำหรับในมุมของพี่เค้ามองว่าเป็น User Acceptance Test แบบ Coding ที่ Integrated หลายๆอย่างมารวมกัน…

มาลองใช้ npm install มา Restore พวก Dependency ดีกว่า

NPM

หลังจากใช้ npm มาประมาณ 5-6 วัน มันมีเรื่องที่ว่าปกติ ผมมักจะ Copy งานที่ทำก่อนหน้า มาเริ่มต้นทำต่อในวันถัดไป แต่วันนี้ Copy ไม่ได้แล้ว Windows มันด่าว่า Path ยาวเกินไปนะ (จริงๆใช้พวก Git น่าจะดีกว่านะ) ไหนๆก็เจอปัญหาแล้ว ลองมา Restore พวก Dependency ดีกว่าครับ

มาลองรัน webpack-dev-server โดยที่ไม่ต้องลงแบบ Global

ลองรัน webpack-dev-server โดยที่ไม่ต้องลงแบบ Global กัน สำหรับ Blog นี้เกิดจากความกลัวล้วนๆครับ ฮ่าๆ กลัวว่าไป Run คำสั่ง มันจะไปโดนงานที่ทำอยู่ แต่ลองหาข้อมูลแล้วเจอแบบให้ลงแบบ Global เลยลองพิมพ์ตาม Pattern ของคำสั่งเวลาเรียกใช้ webpack ครับ โดยสำหรับสาย Windows อย่างผม

[JS] ใช้ Library lodash จัดการกับข้อมูล

ช่วงนี้ผมได้ไปเรียน Course Online ที่จัดโดยสมาคมโปรแกรมเมอร์ไทยครับ เกี่ยวกับ JS+Angular+FireBase ครับ โดยระหว่างเรียนมีการบ้านให้จำนวน 4 ข้อ ก่อนจะไปลองโจทย์ มารู้วิธีการเล่นกับข้อมูลก่อน (Data Model) ว่าตัว Javascript มี function อะไรให้ใช้งานบ้างครับ ตัวโจทย์ตั้ง 4 ข้อ ผมใช้ตัว Lodash (ผมมองว่ามันเป็น Super Util Library) ลองเล่นกับข้อมูลที่ผู้สอนเตรียมไว้ ดังนี้ครับ หลังจากได้เรียน Section นี้ไป ถ้ามีพื้นฐานอย่างตัว SQL ช่วงทำให้เข้าใจข้อมูลได้ง่าย และถ้ารู้เรื่องพวก Functional Programming อย่างของผมที่หลักๆ ใช้ C# พวก Linq กับ Lambda Expression จะช่วยให้ไปได้ไวขึ้นครับ อ๋อแล้วก็ Code ผมพยายามเอาขึ้น GitHub นะครับ Reference

[CR] รวมอาหารเจจากร้านสะดวกซื้อ ปี 2016

ช่วงนี้เข้าเทศกาลกินเจ มาวันนี้ผมได้รวมอาหารเจที่หาซื้อได้ง่ายตามร้านสะดวกซื้อกันครับ ถ้ามีอะไรได้ลองชิมเพิ่มเดี๋ยวผมทยอยอัพขึ้นเรื่อยๆครับ EZYGO-ข้าวอบห้าเซียนเจ EZYGO-ข้าวกะเพราเจ EZYGO-ผัดหมี่ฮ่องกงเจ EZYGO-เปาฮื้ออบวุ้นเส้นเจ EZYGO-ข้าวผัดพริกขิงเจ Fami-ข้าวไรซ์เบอรี่อบเผือกเจ Sun Merry-ครัวซองเจ EzyChoice-ข้าวลาบเจ Fami-ผัดหมี่ฮ่องกงเจ Sun Merry-ขนมปังไส้ถั่วทองเจ EZYGO-สปาเก็ตตี้ผัดขี้เมาเจ เอพลัส-ขนมปังโฮลวีท ไส้ถั่วแดง แป๊ะก๊วย EzyChoice-ข้าวกระเพราเจ Buck-ขนมปังไส้เผือกมะพร้าวเจ EZYGO-ผัดหมี่ซั่วเจ 7FREASH-สาคูเปียกข้าวโพด 7FREASH-พายสับปะรด 7FREASH-พายไส้เห็ดหอม 7FRESH-ขนมปังไรด์เบอร์รี่ไส้ธัญญาพืช และก็ท้ายที่สุด ผมกินเจ @ Home ครับ ส่วนนอกบ้าน ผมจะพยายามหาเจกิน ถ้าทำได้ครับ

Refusing to install webpack as a dependency of itself

ปัญหา “Refusing to install webpack as a dependency of itself” สำหรับปัญหานี้เกิดจากความโง่ของผมเองครับ พอดีจะลองตัว webpack ตาม Video สอน ดันไปสร้างโพลเดอร์ที่ชื่อว่า webpack รอดแล้ว ได้เรียนต่อ ^___^

Requirement ผิดแค่ลบหนึ่งวัน !!!!

เมิ้อลูกค้าสั่งแก้โปรแกรม

ว่าจะไม่เขียน Blog นี้แล้ว แต่มันอดเขียนไม่ได้จริง กล่าวถึง DataSet LQ1 ของ BOT เข้าระบบ BOTDMS แหละ Site ที่จ้างบริษัทที่ผมรับเงินเดือนไปทำเนี่ย ไม่รู้ว่าที่ต้องส่ง BOT จริงๆ ต้องส่งอย่างไร มันเลยเป็นปัญหาที่ว่า UAT บน Production เนี่ยแหละ แล้วมันมีช่วงการ UAT ไปทำไม ในเมื่อ User ต้องเซ็นผ่านให้ตรงกับ KPI องค์กร จากนั้นมาทวงบุญคุณวนไปเรื่อยไป มาที่ Timeline ของ DataSet ชุดนี้ก่อน มาที่ฝั่ง User ก่อน มาฝั่งทีม BA บ้าง Dev ผู้รับกรรม จากปัญหาเปลี่ยนแนวคิดของระบบบ้าง มันก่อปัญหาอะไรบ้าง จากปัญหาทั้งหมดรวมถึงเรื่องที่ User ชอบไป UAT บน Production เนี่ย ส่งผลอะไรกับองค์กรบ้าง และปิดท้ายด้วยตำนานของ DataSet ทำเสร็จแล้ว ออกยกทีม 55555 ตอนนี้ BA ก็ออกไปแล้วนะ

[JS] Functional Programming

จดๆ Note ไว้ เกี่ยวกับ Functional Programming โดยใช้ JavaScript เป็นต้วอย่าง function เป็น Input หรือเป็น Parameter ได้ จาก Code ด้านล่างจะเป็นตัวอย่างที่แสดง ยกตัวอย่างอีกเคสนึง อย่างตัว EmailValidator เมื่อมี function หลายๆอัน เรายุบรวมมันว่าเป็น Service เช่น EmailValidator เกิดจากการเอา Function หลายๆตัวอย่าง hasAtSymbol / hasValidDomain / hasNoSpaces / matchesPattern มาทำงานร่วมกัน สรุป Key Functional Programming Principles

[JS6] มาลองเล่น ECMAScript 6

หลังจาก Blog ตอนก่อน ก้าวเข้าสู่โลกของ Frontend เริ่มเล่น Nodejs ลงเพื่อให้ได้ตัว NPM มานะครับ คราวนี้ผมลองศึกษาตัว ECMAScript 6 โดยดูจาก GitHub ECMAScript 6 Tutorial ใส่ตัวอย่างจาก Git เข้ายก Mortgage Calculator ที่มี amortization และเราลองทำตามขั้นตอนที่ผู้เขียนแนะนำครับ ECMAScript 6 คือ JavaScript แหละ ที่ปรับเปลี่ยนให้ตามยุคสมัยมากขึ้น – Use Strict อันนี้มีมาตั้งแต่ ECMAScript 5 แล้ว แต่ถ้าใครมาจากภาษาที่แบบเคร่งอยากให้เปิดไว้ เช่น จริงๆ เรื่องนี้มีอีกหลายอันเลย เรื่อง use strict แต่เอาเท่านี้ก่อน JavaScript ใช้ reference pointer – เราไปยุ่งตรงๆไม่ได้ แต่มันอยู่เบื้องหลังให้เราใช้งาน – การประกาศตัวแปร ของเดิม var แล้วจะทำอะไรก็ได้ แต่ปัญหาของมัน คือ ตัวแปรประเภท var มี Scope เป็น Global ครับ ของใหม่เพิ่ม let / const เข้ามา let เหมือน var แต่มี Scope อยู่ใน Block ของการทำงานครับ จะเป็นโมดูล หรือ Function อีกตัวเป็น const เก็บค่างคงที ห้ามแก้ไขหลังประกาศ – Data Type ใหม่ Destructoring  – ดึงข้อมูลบางส่วนมาจาก Array ใหม่  template string แทนที่เราต้องเอาตัวแปร + เชื่อม String…