เนื่องจากว่า มีความต้องการใช้ git repository ที่ฟรีและเป็นส่วนตัว เลยไปเจอที่นี่ bitbucket.org ซึ่งมีข้อจำกัดอยู่ตรงที่ ทั้ง project จะมี member ได้แค่ 5 คนเท่านั้น เกินนั้นเสียตัง ก็ถือว่าเหลือแหล่สำหรับสิ่งที่กำลังทำอยู่นะ จะมีปัญหาอยู่หน่อยคือ ใช้อะไรเป็น client ดี ให้มานั่ง git command line ก็ดูเถื่อนไป ด้วยความที่ติดนิสัยใช้ ท้อถอย <Tortoise> มันมี git client แบบ ui ให้ด้วย เลยใช้นี่ละกัน TortoiseGit ซึ่งที่จริง bitbucket ก็มี GUI Client ให้ใช้อยู่นะ ชื่อ SourceTree ไปลองใช้กันได้ตามอัธยาศัย ก่อนจะเริ่มทำอะไร ต้องลงโปรแกรมตามนี้ก่อน Git Command Line Client TortoiseGit ลงข้างบนเสร็จ เปิด GitBash ขึ้นมา หาไม่เจอ อยู่ใน %GIT_HOME% พิเศษ สำหรับใครที่ลง CygWin ไว้ เปิด CygTerminal ขึ้นมาใช้แทนได้เลย จากนั้นพิมพ์คำสั่งต่อไปนี้ git config –global user.name “Thapanut Khanteetao” git config –global user.email “magicbank@gmail.com” user.name ให้เป็นชื่ออะไรก็ได้ มันจะพ่วงไปเป็นชื่อคนที่ commit ไฟล์เข้าระบบ user.mail ให้ใช้ email ที่ใช้เป็น username กับ bitbucket ssh-keygen -t rsa -C “magicbank@gmail.com” กด enter ไปเลยสองสามที ใช้ค่า default ที่มันมีให้ passphrase ก็ไม่ต้องตั้ง แล้วจะได้ไฟล์มาสองไฟล์ชื่อ id_rsa กับ id_rsa.pub clip < ~/.ssh/id_rsa.pub เพื่อ copy ข้อมูลใน id_rsa.pub ไว้ใน clipboard จบขั้นตอนใน command line เปิด bitbucket.org ขึ้นมา คลิกที่มุมขวาบน เลือก[…]
พอดีว่าเช่ามหาสมุทรเอาไว้ใช้ทำ java web server เลยได้ลองเอา wildfly มาใช้ดู แล้วเห็นมันมี feature ใหม่มาให้ใช้ คือการกำหนดสิทธิหรือ role ของ user โดย role ที่เรียกว่า rbac โดย role ที่มีมาให้ก็จะมีดังนี้ Role Permissions Monitor Has the fewest permissions Only read configuration and current runtime state No access to sensitive resources or data or audit logging resources Operator All permissions of Monitor Can modify the runtime state, e.g. reload or shutdown the server, pause/resume JMS destination, flush database connection pool. Does not have permission to modify persistent state. Maintainer All permissions of Operator Can modify the persistent state, e.g. deploy an application, setting up new data sources, add a JMS destination Deployer All permissions of Maintainer Permission is restricted to applications only, cannot make changes to container configuration Administrator All permissions[…]
พอดี นั่งขี้อยู่ คิดขึ้นได้ คิดได้ตอนขี้ตลอด ระบบคล้ายๆ facebook แต่จะไม่เหมือนตรงที่ news feed จะทำงานอยู่บน location base จะเห็น status ของคนอื่นที่อยู่ในละเวกเดียวกันเท่านั้น ถึงจะไม่ใช่ friend ก็จะมองเห็น ซึ่ง privacy จะเป็นแบบ public เท่านั้น ไม่มีแบบอื่นเหมือน facebook แต่ถ้าเป็นเพื่อนกันจะเห็น status กันได้ แม้ว่าจะไม่ได้อยู่ในละเวกเดียวกันก็ตาม เอา scope แค่นี้ก่อน ค่อยต่อยอดเอา
อยู่ดีๆ ก็มีไอเดียพุดขึ้นมาสองงาน ขอจดไว้ก่อน เดี๋ยวลืม เอาไว้ให้ปี 4 ทำเป็นโปรเจ็คจบ – ระบบตรวจสอบสภาพการจราจร คือตอนนี้ข้อมูลมันมีอยู่แหละ กระจัดกระจายมาก แต่ละหน่วยงานก็เก็บไว้ใช้เอง ไม่คิดจะเอามาบูรณาการเลย ถ้าเราจับพวกนี้มาทำให้เป็นระบบ มีการคำนวนและทำนายเพื่อแจ้งเตือนผู้ใช้งานด้วย คงจะดีอยู่นะ ก็ลองทำดู เป็น pilot project พลักดันให้หลายๆ หน่วยงาน ยอม open data จริงๆ สักที – ระบบจัดการเอกสารด้านการเงินของฟรีแลนซ์ เป็นที่รู้กันว่า โปรแกรมเมอร์ห่วยแตกเรื่องนี้ขนาดไหน ทำระบบมาให้ใช้เลยดีกว่า ออกแบบฟอร์มด้านการเงินได้ มีระบบจัดการที่ดี แจ้งเตือนเมื่อถึงดีล คำนวนราคาค่าจ้างขั้นต้นให้ได้ มีรายงานนิดหน่อยเกี่ยวกับ cash flow … อืม เยอะละ ไอเดียได้มาจากตัวอย่าง ตรงนี้ – ระบบทำ resume ง่ายๆ กรอกๆ แล้ว export เป็น docx/pdf ตัว template ก็ใช้ xdocreport เป็น engine
พอดี มี time off project ที่จะเขียนบน android แล้วมีปัญหาว่าเพิ่งอัพเดด sdk เป็น version ล่าสุดไป ซึ่งตัว MOTODev ที่ใช้อยู่ #V4.0 มันยังไม่รองรับ เพราะ adt ของมันเป็น V18 แต่ตัว sdk ต้องการ V20 แล้ว MOTO ยังไม่มีอัพเดดออกมา #ใหม่เกิน ก็เลย เอาวะ ลองใช้ Eclipse JUNO ดู เห็น @kiattikhun ขายยาไว้ว่ามันเทพ #ใช้ดูแล้วเทพจริง หลังจากลงทุกอย่างที่มันต้องการเรียบร้อย ปัญหาเกิด create android project ไม่ได้ ติดอยู่หน้าสุดท้าย มันบอกว่า หา support library ไม่เจอ ก็ลองกด Install/Upgrade ดู มันก็ลงให้เสร็จเรียบร้อย แต่ก็ยังค้างอยู่หน้านี้อยู่ดี จะไป install จาก sdk manager ก็เหมือนเดิม หาไปหามา ได้ความว่า sdk ที่ผมลงมันเป็นตัวเก่า แล้ว upgrade มาเรื่อยๆ ทีนี้ folder ที่ใช้เก็บ library พวกนี้เนี่ย มันอยู่ที่ path <sdk>/extras/android/compatibility แต่ตัว adt V20 หรือไม่ก็ eclipse เองนี่แหละ ไม่ได้อ่านจาก path นี้ มันดันไปอ่านมาจาก path <sdk>/extras/android/support อ่าว ตลกละ วิธีแก้ก็ง่ายๆ ครับ ใช้วิธีพื้นบ้านทั่วไป copy folder compatibility มาอีกอันหนึ่ง ตั้งชื่อเป็น support แค่นี้ก็ create project ได้แล้ว เกรียนซะไม่มี 555+
พอดี เพื่อนถาม จดไว้หน่อย กันลืม วิธีการใช้งาน apt-get ใน network ที่ต้องผ่าน proxy มีวิธีตั้งค่า proxy 2 แบบ แบบชั่วคราว export http_proxy=http://[user:pass@]host:port export https_proxy=http://[user:pass@]host:port export ftp_proxy=http://[user:pass@]host:port apt−get command แบบค้างคืน เข้าไปแก้ใน /etc/apt/apt.conf เพิ่มบรรทัดนี้ลงไป Acquire::http::Proxy “http://[user:pass@]host:port”; Acquire::https::Proxy “http://[user:pass@]host:port”; Acquire::ftp::Proxy “http://[user:pass@]host:port”; จบ
อะไรคือ EJB แล้ว EJB มันเกิดมาได้อย่างไร ใครอยากรู้ ไปหาอ่านเอาเองครับ :p เมื่อก่อน ในสมัยของ EJB2 การเขียน ejb มันเป็นอะไรที่ ใครเคยเขียนจะเข้าใจว่ามันนรกขุมสุดท้ายจริงๆ ไม่มีใครเขาอยากจะเขียน ก็เลยเทใจไปให้ spring กันซะหมด แต่สำหรับ EJB3 นั้น มันเปลี่ยนไปแล้วครับ ตาม concept เดิมของ sun วางเอาไว้ว่า การเขียน EJB จะใช้คน 3 คนคือ programmer คือคนเขียน bean assembler คือคนที่รู้ business ทั้งหมดของระบบ จะเป็นคนที่เอา bean ที่ programmer เขียนมาเรียบเรียงให้เป็น service ที่ต้องการ deployer คือคนที่เอา bean ที่ programmer สร้างขึ้นมาเข้าไปในระบบ และเป็นผู้กุมความลับของ xml config ต่างๆ เอาไว้ ทีนี้ เมื่อ programmer เขียน bean เสร็จ กว่าจะ test ได้ ก็ต้องรอ deployer เอา bean นั้นเข้าไปในระบบให้ก่อน ไม่งั้นก็ test ไม่ได้ เสียเวลา ในความเป็นจริงประเทศไทย สามคนนั้น มันเป็นคนคนเดียวกัน ในกาลต่อมา EJB3 จึงถือกำเนิดขึ้นบนหลักการของ annotation ใช่ครับ ชีวิตมันง่ายขึ้น สะดวกสบายขึ้น ไม่มี xml config ให้ปวดหัว ทุกอย่างถูกกำหนดลงไปใน annotation ลดเวลา ลดขั้นตอนการสร้าง service ลงไปได้มาก ก่อนที่เราจะสร้าง bean แรก เรามา setup environment กันก่อนดีกว่า จากการที่ลองผิดลองถูกกับ version ที่หลากหลาย ก็ได้สูตรดังนี้ JAVA 1.6 ลอง 1.7 แล้ว ไม่ work มีปัญหากับ openejb 4 OpenEJB 4 เอาไว้ทำ test ส่วนจะทำยังไง[…]