development

ระบบจองแบบ Open Source

ช่วงนี้ได้ยิน/ได้เกี่ยวข้องกับระบบการจองต่างๆบ่อย เลยนึกขึ้นมาว่าลองค้นหาดูหน่อยซิ ว่ามีคน open source ระบบการจองนู่นจองนี้เอาไว้บ้างรึเปล่า
Read more

หนังสือและบทความเทคโนโลยีที่น่าสนใจ (วันที่ 30ม.ค. 2560)

รายงาน Security and Frontend Performance หนังสือ โมเดลธุรกิจ 21แบบที่เปลี่ยนวิธีการซื้อของเรา The Future of Commerce 21 Business Models That Are Changing How We Buy
Read more

หนังสือพัฒนาแอพ Android ที่น่าสนใจ ใน Safari Online

รายการหนังสือพัฒนาแอพ Android ที่น่าสนใจ เริ่มตั้งแต่เรียนรู้เครื่องมือ Android Studio แล้วก็หัดเขียนแอพโดยมีโครงงานให้ทำ ลงท้ายด้วยเนื้อหาที่ต้องอาศัยความชำนาญขึ้นมาอีกหน่อย เป็นเรื่อง pattern เรื่อง performance รวบรวมมาจากหนังสือและวิดีโอที่มีอยู่ใน Safari Online (ไปทดลองใช้งานอ่าน,ดูได้ฟรี)
Read more

คอนฟิก Gogs ใช้ login กับ LDAP (Active Directory)

ทดลองติดตั้ง GOGS เป็น git server ที่มีหน้าเวบให้จัดการ คล้ายๆ github, gitlab, bitbucket gogs มี plugin/extension ที่ให้เราเชื่อมระบบผู้ใช้เจ้ากับ LDAP server หรือ ​Active directory ได้ พอภาษาที่ใช้พัฒนาแอพเปลี่ยน การกรอกค่า configuration ของ LDAP ก็มักจะต้องมีเทคนิคในการใส่ค่าคอนฟิก พลิกแพลงไปอีก ทดลองใส่ตามนี้แล้ว work ค่า Security Protocol เลือก Unencrypted ซึ่งน่าจะทำให้ช่อง port ใช้ 389 Bind DN/Bind DN ค่านี้ใส่ account ldap ที่ใช้ในการค้นหา account อื่นๆ บางแห่งจะเรียก search account หรือ service account ค่าที่จะนำไปใส่เช่น account@YOURDOMAIN.
Read more

แกัปัญหา Cannot call sendRedirect() after the response has been committed

เจอ exception java.lang.IllegalStateException: Cannot call sendRedirect() after... ตัวนี้มานานแล้วมันมักจะเกิดขึ้นเวลาเราพยายามจะ redirect/ส่งต่อ request ไปยังหน้าอื่นๆ มันเกิดขึ้นเพราะเราไม่เข้าใจการทำงานของมันดีพอ ศึกษาจากโค้ดนี้ private void doPost() { if (someCondition) { sendRedirect(); } forward(); // โค้ดตรงบล๊อกนี้ก็ยังคงถูกเรียกใช้งานอยู่ ถึงแม้ว่า if condition ข้างบนก็ถูกเรียกใช้งาน } เราจะคุ้นเคยกับการที่ว่า คิดว่าการเรียก sendRedirect() เหมือนกับการสั่ง System.exit() คือ program จบเลย แต่มันไม่ใช่อย่างนั้นน่ะสิ่ Error Cannot call sendRedirect() after the response has been committed จึงเกิดขึ้นเมื่อ forward() มันถูกเรียก เท่ากับว่าเราเรียก sendRedirect() แล้วยังไปเรียก forward() อีก exception มันจึงเกิดขึ้น
Read more

Config Jenkins's service to use mvn command manually

ติดตั้ง Jenkins อีกตัวเพื่อจัดการ deploy application ตัวใหม่ที่กำลังพัฒนากันอยู่ ทำเป็น OS service เอาไว้ด้วย เวลา server มันถูกรีสตาร์ตมันจะได้กลับทำงานอยู่ตลอด ตอนแรก project ที่พัฒนาอยู่ใช้ Ant build script ภายหลังเรามาเปลี่ยนเป็น Maven จึงไปปรับ Jenkins configuration จะให้ Jenkins เค้าติดตั้ง Apache Maven ให้ด้วย แต่ว่า check checkbox แล้วก็ยังใช้ไม่ได้ เค้าไม่ติดตั้งให้เลยต้องมาติดตั้ง maven command เองซะเลยดีกว่า วิธีติดตั้ง maven ก็ไม่ซับซ้อน ไปโหลด binary distribution ที่เป็นไฟล์แบบ .
Read more

แนะนำเครื่องมือช่วยสุ่มพิกัด GPS รอบๆตัวเรา 🗺️ Generate GPS location around me.

สำหรับใครที่ต้องสร้างแอพที่ใช้งานกับ Maps 🗺️ หรือ Google Maps เคยอยากจะสร้าง pin สถานที่แบบสุ่มเอามั้ย? ถ้าเอาแบบถั่วๆที่สุดคือไปจิ้มใน Google Maps แล้วแกะเอาพิกัด GPS หรือพิกัดแลตติจูด-ลองกิจูดเอามาใส่ให้ marker ผมขอเรียกเป็นภาษาโปรแกรมมิ่งว่าเป็นค่า Geolocation ละกันนะ ผมอยากได้ Geolocation พิกัดรอบๆ ตำแหน่ง ตำแหน่งนึงที่ได้เลือกเอาไว้แล้ว โดยไม่ต้องไปนั่งจิ้มในแผนที่แล้วแกะเอามา สมมติว่าเลือกตำแหน่งศูนย์กลางไว้เป็น Central World อยากได้ marker อีก 10 แห่งในระยะ 3kmรอบๆนั้น ถ้ามานั่งจิ้มเอาคงเซ็งน่าดู เลยไปหาเครื่องมือมาช่วยสร้าง Geolocation ให้เรา เพราะตอนนี้ผมขี้เกียจศึกษาว่าคำนวนพิกัดแลตติจูด-ลองกิจูดอย่างไร…แฮ่ มาทำความรู้จักเจ้าเครื่องมือนี้กันแบบเร็วๆ ไปที่เว็บไซด์ Geo MidPonint
Read more

ใช้ nvm ติดตั้ง node.js บน OSX (ดีกว่า)

เราใช้ macOS และใช้ brew จนชินแล้ว มาวันนี้จะ upgrade version ของ nodejs ต้องเรียกว่าเคาะสนิม…หลังจากที่ไปจับเรื่องอื่นอยู่นาน ก็งงงง มึนมึน เรียกใช้ yarn แล้วมันฟ้องว่า ตอนนี้ในเครื่องคุณใช้ node v7 ซึ่งไม่ support แล้ว เราเลยไปหาว่าตอนนี้ node version อะไรที่เป็น LTS (long term support) เลยได้มาว่าจะติดตั้ง 8.x (8.9.4) ซึ่งเป็น long term support ลองใช้ brew search node, nodejs เห้ย!
Read more

Peacock (vscode) with THAITONE 2.0

จุดประสงค์หลักเพื่อเก็บค่าสีเอาไว้ใช้กับ Peacock extension ของ VS Code Editor Peacock ทำให้เราเปลี่ยนสีหน้าต่างหรือ interface ของ workspace. ทำให้เราแยกแยะว่าหน้าต่างไหนเป็น workspace ไหนหรือเป็นงานของ project ไหนได้ง่ายมาก. และยังเอาไปใช้กับตัว Remote Development Extension ได้ด้วย ทำให้หน้าต่างที่เป็น remote workspace ก็เปลี่ยนสีได้
Read more

VSCode on Window 11 Snap Layout control missing [solved]

Symptom: When your mouse cursor over the maximize/minimize button of the VSCode window there’s no Snap Layout balloon shown. Solution 1: Press Win + Z; It’s the window shortcut to open the snap layout menu. Solution 2: Modify vscode user settings.
Read more