Blog

Swiftlet provides knowledge in software development and practice in Thai to open more opportunities for Thai developers and others to improve their skills in Thai context.

Alfred! ผู้ช่วยการทำงานและการค้นหามือหนึ่งบน Mac OS X

Posted on July 1, 2015 By Anak Umpaivit Alfred คืออะไร? Alfred คือ Application ที่ชื่อดูเหมือนพ่อบ้านของฮีโร่ดัง และความสามารถในการช่วยอำนวยความสะดวกในการทำงานบน Mac OSX ได้เป็นอย่างดี เปรียบเสมือนเราได้ผู้ช่วยมาทำงานให้นั่นเอง โดยการทำงานออกจะคล้ายๆ Spotlight Search ที่มีมาให้กับ OSX แต่จะมีความสามารถเพิ่มเติมเข้ามาอีก ทั้งในขอบเขตที่สามารถใช้งานได้ฟรี และ ความสามารถที่ต้องจ่ายเงิน แต่ขอบอกได้ว่า แค่ความสามารถในการทำงานของตัวฟรีก็โดนใจผู้เขียนแล้ว เราไปดูความสามารถและวิธีการใช้งานกันเลย! 😀 Alfred General เมื่อเราติดตั้ง Alfred เรียบร้อย หน้าแรกจะให้เราตั้งค่า Hot Key ที่ใช้เรียกการทำงาน เหมือนกับเราเรียก Spotlight นั่นเอง น่าเสียดายที่ไม่สามารถเลือกบาง Key มาใช้ได้ เช่น ไม่สามารถเลือก ให้ทับ Hot Key ของ Spot light […]

Alfred! ผู้ช่วยการทำงานและการค้นหามือหนึ่งบน Mac OS X Read More »

Regular Expression

ณัฐธิดา หมวดเพ็ชร  [ 30 มิถุนายน 2558 ] Regular Expression  Regular Expression คือ การกำหนดรูปแบบอักขระ เพื่อใช้ในการค้นหาค่าในรูปแบบของ String โดย Regular Expression มีพื้นฐานมาจากทฤษฎีทางคณิตศาสตร์ที่ใช้ในการเปรียบเทียบข้อความที่ต้องการค้นหากับรูปแบบที่กำหนดว่ามีความสอดคล้องกันหรือไม่ รูปแบบอักขระของ Regular Expression มาจากการผสมอักขระพื้นฐานหลายตัวเข้าด้วยกัน เช่น /abc/ หรือจากการผสมอักขระพื้นฐานกับอักขระพิเศษ เช่น /ab*c/ หรือ/Chapter (\d+)\.\d*/ ที่ใช้เครื่องหมายวงเล็บเป็นหน่วยความจำ โดยข้อความที่ตรงกับรูปแบบอักขระในวงเล็บนี้จะถูกจดจำไว้เพื่อเรียกใช้ในภายหลัง มาดูสัญลักษณ์ของ Regular Expression ที่ใช้กันบ่อยๆดีกว่า ^ แทนความหมายว่า “ขึ้นต้นด้วย” เป็นจุดเริ่มของข้อความ $ แทนความหมายว่า “ลงท้ายด้วย” เป็นจุดสิ้นสุดของข้อความ . แทนตัวอักษรใด ๆ หนึ่งตัวยกเว้น NULL และแทนตัวขึ้นบรรทัดใหม่ | ใช้เป็นตัวคั่นเพื่อแสดงตัวเลือก ? แทนการเกิดขึ้น 0 หรือ 1 ครั้ง

Regular Expression Read More »

Mongoid Slug กับ Ruby on rails

เขียนโดย นายวุฒิไกร ลิ่มสกุล : 30 มิ.ย 2558         Mongoid slug เป็น gem สำหรับแปลง url ที่ไม่เป็นมิตรกับมนุษย์ หรืออ่านแล้วไม่เข้าใจ ให้อ่านเข้าใจ อย่างเช่น https://swiftlet.co.th/92cc35193275461e1e95569c เป็น https://swiftlet.co.th/mongoid-slug เป็นต้น ซึ่งจะมีผลอย่างมากกับ SEO (Search engine optimization) อย่ารอช้ามาเริ่มกันเลยดีกว่า เริิ่มจากการลง gem ก่อน เพิ่มเข้าไปยังไฟล์ Gemfile [code language=”ruby”] gem "mongoid_slug" [/code] อย่าลืมไปที่ Terminal แล้วเข้าไปยัง directory ของ project จากนั้นพิมพ์คำสั่ง [code language=”html”] $bundle install [/code] เมื่อทำการติดตั้ง gem

Mongoid Slug กับ Ruby on rails Read More »

Ruby กับการเก็บข้อมูลแบบ Hash

โดย แสงเดือน จันทร์ใหม่ – 29 มิถุนายน 2558 Hash คืออะไร Hash เป็นรูปแบบการเก็บข้อมูลชนิดหนึ่ง ซึ่งประกอบด้วยชุดของ Key และ Value โดย Key ของ Hash สามารถเป็นอะไรก็ได้ตามที่เรากำหนด และ Hash หนึ่งๆ สามารถมีชุด Key และ Value ได้กี่ชุดก็ได้ นอกจากนี้ค่า Value ของแต่ละ Key ใน Hash ก็สามารถเก็บเป็นข้อมูลชนิดใดก็ได้ ไม่จำเป็นว่าทุก Key จะต้องเก็บข้อมูล Value ที่เป็นชนิดเดียวกัน ซึ่งนั่นหมายรวมไปถึงเราสามารถเก็บ Value ที่เป็น Hash ได้ หรือ Hash ซ้อน Hash นั่นเอง การใช้งาน Hash เบื้องต้น การกำหนดค่าตัวแปร Hash

Ruby กับการเก็บข้อมูลแบบ Hash Read More »

เริ่มต้นรู้จักกับ Automated Testing ด้วย Capybara

Posted on June 19, 2015 By Anak Umpaivit ใน Blog นี้ เราจะมาพูดถึงหนึ่งเครื่องมือของ QA นั้นก็คือ Automated Testing นั้นเอง ซึ่งการสร้างระบบการทดสอบโดยอัตโนมัตินี่ขึ้นมา ก็จะช่วยให้ Application ที่กำลังพัฒนา มีความถูกต้องอยู่เสมอ สำหรับ Swiftlet ที่ทำงานกับ Ruby on Rails นั้น Capybara และ Rspec ก็เป็นตัวเลือกที่เราเลือกใช้ในการทำงาน สำหรับผู้ที่สนใจ และยังมองไม่เห็นภาพ วันนี้ ผมจะมายกตัวอย่างคำสั่งเริ่มต้นง่ายๆ และหน้าตาของการทำงานของ Capybara Automated Testing ให้ดูกัน เริ่มต้น หลังจากเราติดตั้ง และ Setup สิ่งต่างๆของ Capybara และ Application ที่เราต้องการทดสอบแล้ว ก็มารู้จักการทำงานของ Capybara กัน การเข้าถึงหน้า

เริ่มต้นรู้จักกับ Automated Testing ด้วย Capybara Read More »

Basic Unix Commands คำสั่งง่ายๆ สำหรับผู้เริ่มต้น

Basic Unix Commands Posted on June 16, 2015 By Anak Umpaivit ในการพัฒนา Application  Tools ที่เราใช้ส่วนใหญ่ ก็มักจะเป็น Open Source รวมถึงระบบปฏิบัติการอย่าง Unix ด้วย Blog นี้จึงจะเป็นการ แนะนำ Basic Unix Commands ที่มักได้ใช้กับการทำงาน เพราะบางครั้ง คำสั่งที่เราไม่ค่อยได้ใช้ เราก็จะจำไม่ได้ คำสั่ง คำอธิบาย ls ลิสไฟล์ใน Directory ปัจจุบัน cd <option> คำสั่งในการย้ายผู้ใช้ไปยัง Directory ต่างๆ option: ว่างเปล่า ไปยัง home Directory option: folder name เข้าไปยัง Folder ที่ต้องการ option: ~/path/

Basic Unix Commands คำสั่งง่ายๆ สำหรับผู้เริ่มต้น Read More »

สร้าง Active Directory ด้วย Samba 4 บน ubuntu 14.04

Chamnan Longlum 01/07/15 สำหรับบทความนี้เราจะกำหนด Hostname: adserv Domain : swiftlet.local IP: 192.168.3.34 NETBIOS : Swiftlet DNS : 192.168.3.34 Forwarding-DNS : 192.168.3.1 ทำการเซ็ต Static IP สำหรับ  Server แก้ไขไฟล์  /etc/network/interfaces  ในส่วนของ interface ที่ใช้งานอยู่   (ในตัวอย่างจะใช้เป็น eth0) ดังนี้ [code language=”shell”] auto eth0 iface eth0 inet static address 192.168.3.34 netmask 255.255.255.0 gateway 192.168.3.1 dns-nameservers 192.168.3.34 192.168.3.1 dns-search swiftlet.local [/code] ทำการ restart

สร้าง Active Directory ด้วย Samba 4 บน ubuntu 14.04 Read More »

Website Hacked Log Analysis

Chamnan Longlum 16 / 06 / 15 ในยุคที่internetเป็นใหญ่ในปัจจุบัน ระบบต่างๆก็อยู่บนinternet ความเสี่ยงของระบบที่จะถูกโจมตีจากบุคคลที่ไม่พึงประสงค์ก็มีมากขึ้น แล้วเราจะรู้ได้อย่างไรเมื่อเราโดนโจมตี? สำหรับผู้ดูแลหลายคนเลือกที่จะทำการ ป้องกันไว้ก่อน ซึ่งนั่นก็เป็นเรื่องที่ดี จากประสบกาณ์ของผู้เขียน บริษัทหลายๆแห่งเลือกที่จะลดCostการดูแลระบบโดยให้คนที่มีความรู้งูๆปลาๆเป็นคนดูแลระบบ บางที่ก็เป็น Graphic Design บางที่หาไม่ได้ก็ให้ตำแหน่งadmin(ที่ทำงานเอกสาร)มาดูแลกันซะอย่างนั้น กว่าจะรู้ตัวว่าเว็บโดนแฮคก็เข้าไม่ได้ไปซะแล้ว สำหรับบริษัทขนาดใหญ่ มีData Center ของตัวเอง ก็คงจะมีจะมีระบบสำหรับตรวจจับของตัวเองอยู่แล้ว ไม่ว่าจะเป็น Firewall หรือ Iron port สำหรับตรวจจับจากในระบบเมล์  แต่สำหรับบริษัทที่เบี้ยน้อยหอยน้อยคงคงไม่จำเป็นขนาดนั้น จากปัญหาข้างต้นเราจะมาดูกันว่ามีที่ใหนบ้างที่จะป้องกันเมื่อมีคนมาลองดีกับเว็บของเราได้บ้าง    – ใช้ fail2ban monitor log สำหรับ fail2ban จะเป็นsoftware ที่ดูlogแล้วเอา log มาทำการ Analyze ว่าผิดปกติหรือไม่ ไม่ว่าจะเป็น webserver อย่าง apache , nginx ,

Website Hacked Log Analysis Read More »

ทำให้ Rails รองรับ CORS แบบง่ายๆ

Posted on June 16, 2015 By Karun Siritheerathamrong Cross Origin Resource Sharing (CORS) คือกลไกที่ทำให้เว็บเซิร์ฟเวอร์สามารถอนุญาต หรือไม่อนุญาต การร้องขอทรัพยากรใดๆ ในหน้าเว็บ ที่ถูกเรียกมาจากโดเมนอื่น ที่ไม่ใช่โดเมนที่หน้าเว็บนั้นอยู่ ตัวอย่างการใช้งานทั่วไป – หน้าเว็บใดๆ ในเว็บไซต์ xyz.com มีการเรียกไฟล์ฟอนต์ และรูปภาพจาก hahaha.com  แล้วเว็บ hahaha.com สามารถใช้ CORS เพื่อไม่อนุญาตให้เว็บอื่นๆ ที่ไม่ได้มาจากโดเมน hahaha.com สามารถเข้าถึงไฟล์ในเว็บได้ – เว็บ api.mydomain.com จะยอมรับเฉพาะคำร้องจากโดเมน mydomain.com และ myfrienddomain.com เท่านั้น ก็สามารถใช้ CORS เพื่ออนุญาตเฉพาะบางโดเมนได้ แม้การเปิดใช้งาน CORS จะช่วยลดปัญหาการเรียกใช้ทรัพยากรข้ามโดเมนหรือการเข้าถึงที่ไม่ได้รับอนุญาตได้ก็ตาม แต่การจะตั้งค่าให้เครื่องเซิร์ฟเวอร์รองรับการใช้งาน CORS ได้ก็ค่อนข้างยุ่งยากพอสมควร ดูจากมาตรฐานของ CORS จาก

ทำให้ Rails รองรับ CORS แบบง่ายๆ Read More »

การสร้าง Timeline อย่างง่ายด้วย visJs

โดย นายวุฒิไกร ลิ่มสกุล : 15/06/2558         visJs มีความสามารถในการสร้าง กราฟ 2D, 3D, Network, Data set และ Timeline อย่างง่ายให้สามารถใช้งานกันได้แบบฟรีๆ โดยสามารถทำงานร่วมกับภาษาโปรแกรม หลายต่อหลายภาษาที่ทำงานร่วมกับ Javascript ได้ เช่น PHP, Ruby on rails, codeigniter ฯลฯ มาดูวิธีการสร้าง Timeline โดยใช้ภาษา Ruby on rails กับ visJs กัน เริ่มด้วยการ ติดตั้ง visJs ในงานที่เราจะสร้าง Timeline กันก่อน ที่นี่ (ใช้ได้แล้วหรอ…? บ้า อีกนิดนึง) จะต้อง Include ไฟล์ vis.js และ vis.css

การสร้าง Timeline อย่างง่ายด้วย visJs Read More »