Thursday, July 07, 2005
Constant Interval Control Points for Aorta
อันนี้เป็นของ Aorta นะ
int nColAdjust = 104;
int nRowAdjust = 189;
int nSlcAdjust = 75;
int
AortaModelBuilder::initPhase1H001( float* arControlPts ) {
float* b = arControlPts;
int nAdjust = 0; //To adjust point order when we need to make ad hoc insertion/deletion.
// It will be set to zero in final version.
b[1+nAdjust]=96; b[2+nAdjust]=119; b[3+nAdjust]=130;
b[4+nAdjust]=87; b[5+nAdjust]=122; b[6+nAdjust]=104;
b[7+nAdjust]=89; b[8+nAdjust]=130; b[9+nAdjust]=76;
b[10+nAdjust]=98; b[11+nAdjust]=139; b[12+nAdjust]=57;
b[13+nAdjust]=111; b[14+nAdjust]=149; b[15+nAdjust]=42;
////////////
b[16+nAdjust]=128; b[17+nAdjust]=163; b[18+nAdjust]=35;
b[19+nAdjust]=142; b[20+nAdjust]=180; b[21+nAdjust]=32;
b[25+nAdjust]=153; b[26+nAdjust]=205; b[27+nAdjust]=38;
b[22+nAdjust]=152; b[23+nAdjust]=222; b[24+nAdjust]=55;
b[28+nAdjust]=146; b[29+nAdjust]=230; b[30+nAdjust]=79;
////////////
b[31+nAdjust]=139; b[32+nAdjust]=232; b[33+nAdjust]=106;
b[34+nAdjust]=136; b[35+nAdjust]=230; b[36+nAdjust]=139;
b[37+nAdjust]=136; b[38+nAdjust]=227; b[39+nAdjust]=173;
b[40+nAdjust]=136; b[41+nAdjust]=223; b[42+nAdjust]=207;
b[43+nAdjust]=137; b[44+nAdjust]=219; b[45+nAdjust]=240;
return 15; //The number of control points.
}
int nColAdjust = 110;
int nRowAdjust = 195;
int nSlcAdjust = 80;
int
AortaModelBuilder::initPhase1H002( float* arControlPts ) {
float* b = arControlPts;
int nAdjust = 0; //To adjust point order when we need to make ad hoc insertion/deletion.
// It will be set to zero in final version.
b[1+nAdjust]=112; b[2+nAdjust]=134; b[3+nAdjust]=147;
b[4+nAdjust]=106; b[5+nAdjust]=135; b[6+nAdjust]=129;
b[7+nAdjust]=108; b[8+nAdjust]=141; b[9+nAdjust]=113;
b[10+nAdjust]=117; b[11+nAdjust]=146; b[12+nAdjust]=101;
b[13+nAdjust]=126; b[14+nAdjust]=153; b[15+nAdjust]=90;
////////////
b[16+nAdjust]=136; b[17+nAdjust]=168; b[18+nAdjust]=88;
b[19+nAdjust]=141; b[20+nAdjust]=169; b[21+nAdjust]=86;
b[25+nAdjust]=144; b[26+nAdjust]=184; b[27+nAdjust]=93;
b[22+nAdjust]=149; b[23+nAdjust]=198; b[24+nAdjust]=101;
b[28+nAdjust]=152; b[29+nAdjust]=208; b[30+nAdjust]=114;
////////////
b[31+nAdjust]=153; b[32+nAdjust]=216; b[33+nAdjust]=130;
b[34+nAdjust]=149; b[35+nAdjust]=221; b[36+nAdjust]=147;
b[37+nAdjust]=146; b[38+nAdjust]=222; b[39+nAdjust]=170;
b[40+nAdjust]=145; b[41+nAdjust]=223; b[42+nAdjust]=194;
b[43+nAdjust]=144; b[44+nAdjust]=224; b[45+nAdjust]=219;
return 15; //The number of control points.
}
int
AortaModelBuilder::initPhase2H048( float* arControlPts ) {
float* b = arControlPts;
int nAdjust = 0; //To adjust point order when we need to make ad hoc insertion/deletion.
// It will be set to zero in final version.
b[1+nAdjust]=122; b[2+nAdjust]=120; b[3+nAdjust]=123;
b[4+nAdjust]=120; b[5+nAdjust]=118; b[6+nAdjust]=95;
b[7+nAdjust]=122; b[8+nAdjust]=122; b[9+nAdjust]=67;
b[10+nAdjust]=126; b[11+nAdjust]=134; b[12+nAdjust]=49;
b[13+nAdjust]=134; b[14+nAdjust]=151; b[15+nAdjust]=39;
////////////
b[16+nAdjust]=137; b[17+nAdjust]=157; b[18+nAdjust]=39;
b[19+nAdjust]=145; b[20+nAdjust]=181; b[21+nAdjust]=37;
b[25+nAdjust]=150; b[26+nAdjust]=204; b[27+nAdjust]=43;
b[22+nAdjust]=152; b[23+nAdjust]=221; b[24+nAdjust]=56;
b[28+nAdjust]=152; b[29+nAdjust]=232; b[30+nAdjust]=75;
////////////
b[31+nAdjust]=151; b[32+nAdjust]=241; b[33+nAdjust]=99;
b[34+nAdjust]=149; b[35+nAdjust]=244; b[36+nAdjust]=128;
b[37+nAdjust]=148; b[38+nAdjust]=244; b[39+nAdjust]=161;
b[40+nAdjust]=146; b[41+nAdjust]=242; b[42+nAdjust]=191;
b[43+nAdjust]=143; b[44+nAdjust]=240; b[45+nAdjust]=219;
return 15; //The number of control points.
}
Sunday, June 19, 2005
เทคนิค: Reference and Cross Reference and Tables of Content in Microsoft Word
- ทำการสร้างสารบัญ
จำทำสารบัญสำเร็จได้เวลาพิมพ์เราก็ต้องแบ่งประเภทฟ้อนต์ออกเป็น Heading 1 และ Heading 2 ไม่งั้นจะเป็นเรื่องยุ่งขึ้นมาได้ทันที การใช้ heading 2 จะทำให้มันกลายเป็นหัวข้อรองไปในทันที
เมื่อมีการเรียกใช้หัวข้อของพวกนี้เสร็จแล้ว ก็หาที่เหมาะๆแล้วใส่สารบัญเข้าไปได้เลย ด้วยการไปที่
insert -> reference -> Index and Tables จากนั้นก็ไปที่แท็บ Table of Contents แล้วเลือกรูปแบบตามที่เราอยากให้มันเป็น - การทำหมายเลขบท (chapter)
การทำหมายเลขบทเป็นสิ่งที่สำคัญมาก เพราะไม่อย่างนั้นเราจะพบว่าเวลาที่เราใส่ caption ให้กับรูปหรือตารางมันจะไม่แสดงแสดงเลขบทที่ถูกต้องออกมา เพราะมันไม่รู้ว่าขณะนี้อยู่ในบทที่เท่าไหร่ อย่างไรก็ตามการทำสารบัญไม่จำเป็นต้องใส่หมายเลขบทก็ได้ เพราะว่าสารบัญจะตรวจดูเฉพาะลักษณะของตัวอักษรเท่านั้น
ขั้นตอนการทำหมายเลขบทก็คือการใส่หมายเลขเข้าไปแบบธรรมดา ขอให้รู้เพิ่มเติมด้วยว่าหากเราต้องการที่จะเปลี่ยนรูปแบบการแสดงหมายเลขบท เป็นต้นว่าแทนที่จะแสดงตัวเลขเฉยๆ แต่ต้องการแสดงเป็น Chapter 1. แทน ในลักษณะเช่นนั้นเราก็ต้องทำการ customize รูปแบบเองซึ่งทำได้ไม่ยาก
หมายเหตุ การนับเลขบทยังสามารถที่จะนับต่อจากที่นับไว้ก่อนหน้าได้ ทำให้เราสามารถแก้ไขมันได้ ภายหลังจากที่ได้พิมพ์แบบตรงๆดื้อๆไปเยอะ - การทำให้หัวชื่อของรูปหรือตาราง (Caption) สามารถไปปรากฏที่สารบัญภาพและตาราง
เรื่องนี้ทำได้ง่ายๆตรงไปตรงมา นั่นก็คือ เราจะต้องทำการใส่ชื่อ (Caption) ให้กับรูปหรือตารางเข้าไป โดยการที่คลิกไปที่รูปก่อน จากนั้นก็ไปที่ insert->reference->caption
เมื่อใส่ชื่อเข้าไปแล้วก็เลือกที่เหมาะๆแล้วก็ inert->reference-> Index and Tables จากนั้นก็ไปที่ Table of Figures แล้วเลือกรูปแบบสารบัญภาพ / ตารางตามความต้องการ - การทำการอ้างอิงไปตรง Reference/Bibliography
มันต้องเริ่มจากการที่เราใส่หมายเลขของหนังสือหรือบทความเข้าไปก่อนนะ โดยใส่เข้าไปตามปรกติเหมือนกับที่ทำหมายเลขบทนั่นแหละ
เมื่อใส่หมายเลขเข้าไปแล้วเราก็พร้อมที่จะทำการอ้างอิง โดยไปที่ insert->reference->cross-reference แล้วเลือก "Numbered item" - เรื่องไม่ค่อยดีเกี่ยวกับฟีทเจอร์สารบัญ
เราพบว่าบางครั้งถ้ารูปเรามันบังเอิญไปเกี่ยวพันกับลักษณะอักษรที่เป็น Heading เมื่อไหร่ มันจะถูกเอาไปใส่ในสารบัญด้วย ทั้งๆที่มันเป็นรูป ในกรณีเช่นนี้ เราจะต้องทำการเปลี่ยนรูปแบบกลับไปเป็น Body text ให้ได้
แต่ปัญหาก็คือไม่รู้จะเปลี่ยนยังไงดี เพราะคลิกไปที่รูปแล้วกดเปลี่ยนมันก็ยังไม่ได้อีก อาการเช่นนี้ให้เราทำการไฮไลต์มันทั้งบริเวณก่อนและหลังรูป แล้วจัดการแก้เป็น body text ก็จะทำให้ทุกอย่างเสร็จไปได้ - อีกปัญหากับ caption
บางทีเราพบว่า caption ที่เรามีอยู่มันแสดงผลแปลกๆของมันพยายามแก็ก็ไม่สำเร็จ ลักษณะเช่นนี้ขอให้ทำใจไว้เลยว่า "ลบอันเดิมออกเถอะ แล้วใส่อันใหม่เข้าไปแทนที่จะดีกว่านะ" ใส่ใหม่เถอะ เร็วกว่า
Friday, June 17, 2005
บันเทิง: เพลงคนตีเหล็ก
นำมาจาก http://www.beautysheet.com/thai/mg591.html
เว็บเกี่ยวกับวงคาราวานสามารถเข้าไปได้ที http://www.caravanonzon.com
คนตีเหล็ก
คาราวาน
..ดนตรี..
สุมไฟ.ให้แรง
เหล็กก็แดงคุโชน
เรายกมันขึ้นทั่ง
เตรียมถั่งแรงปูดโปน
เฮเฮไฮ้ ฮึบฮือฮึบ เราลงพะเนิน
บนเหล็กแดงด้วยไฟ
ตี.เข้าไปเอ้าตี.เข้าไป
ดัดแปลงรูปใด
ย่อมเสร็จได้ด้วยแรง
....ดนตรี..........
ทุ่มกาย.ทุ่มใจ เพื่อให้ไทยเป็นไทย
ต้องสร้างด้วยไฟ ที่ลุกโชนโชติแดง
เฮเฮไฮ้.ฮึบฮือฮึบ
มารวมพลัง สร้างสังคมที่ดี
ตี.เข้าไป ฮึบตี.เข้าไป
สร้างโลกสดใส
ย่อมเสร็จได้ด้วยเรา
....ดนตรี..........
สุมไฟ.ให้แรง
เหล็กก็แดงคุโชน
เรายกมันขึ้นทั่ง
เตรียมถั่งแรงปูดโปน
เฮเฮไฮ้ ฮึบฮือฮึบ เราลงพะเนิน
บนเหล็กแดงด้วยไฟ
ตี.เข้าไปเอ้าตี.เข้าไป
ดัดแปลงรูปใด
ย่อมเสร็จได้ด้วยแรง
....ดนตรี..........
ทุ่มกาย.ทุ่มใจ เพื่อให้ไทยเป็นไทย
ต้องสร้างด้วยไฟ ที่ลุกโชนโชติแดง
เฮเฮไฮ้.ฮึบฮือฮึบ
มารวมพลัง สร้างสังคมที่ดี
ตี.เข้าไป ฮึบตี.เข้าไป
สร้างโลกสดใส
ย่อมเสร็จได้ด้วยเรา
Thursday, June 16, 2005
เบ็ดเตล็ด: ชอบข่าวนี้
อ้างอิง: http://live.psu.edu/story/12430
"William and Josephine Weiss named Philanthropists of the Year
Thursday, June 16, 2005
Penn State has named William L. and Josephine B. Weiss recipients of the 2005 Philanthropists of the Year award in recognition of their longtime commitment to the University as volunteers and donors.
William Weiss, a 1951 Penn State graduate in industrial engineering, retired in 1994 as chairman and CEO of Ameritech Corp., a Midwestern communications company. Josephine Berry Weiss is a 1950 Penn State graduate in the liberal arts. She has held numerous leadership posts with civic and educational groups in the Chicago area, where the Weisses lived for many years.
The Philanthropist of the Year award originated in 2002 to recognize outstanding generosity and philanthropic leadership that benefits the Penn State community.
The Weisses have directed their philanthropy primarily to students and faculty in the Colleges of Engineering and the Liberal Arts, and to the University Libraries.
"Bill and Jo have supported some of Penn State's highest academic priorities," said Penn State President Graham B. Spanier. "Through scholarships, they have helped many undergraduates who have financial need, and have enabled the University to attract outstanding graduate students. Bill and Jo have been equally generous in sharing their time and talent as volunteers, and have inspired numerous other alumni to make the same kind of commitment. We are truly grateful for all that they have done for Penn State."
The Weisses are personally involved in their support for students. They established a series of Breakthrough Scholarships for undergraduates in the Colleges of Engineering and the Liberal Arts. These awards, covering 50 percent of tuition, are given to academically talented students who have financial need, show leadership potential and are the first generation in their family to attend college.
"Bill and I meet with our students in small groups at least annually and often correspond with them individually," said Josephine Weiss. "As we've learned about their career aspirations and personal goals, they have become part of our extended family."
The Weiss Graduate Scholarships support talented advanced-degree students in these same areas, and bring together selected doctoral candidates from the two colleges to exchange ideas that are beyond the boundaries of their individual disciplines and to learn from distinguished guest scholars. The two awards programs combined are expected to help more than 250 students over the period of the gift.
"Jo and I met while we were students at the University, and Penn State has played an important role in our lives ever since," noted William Weiss. "We'd like others to experience the same kinds of opportunities and benefits that we did."
In addition, the couple has endowed faculty fellowships in engineering and the liberal arts and the Josephine Berry Weiss chair in the humanities, and designated support for the University Libraries collections and equipment.
William Weiss also has served in a number of volunteer leadership capacities in support of Penn State's private fund-raising efforts. Most recently he was a vice chair of the Grand Destiny capital campaign that raised $1.37 billion in philanthropy between 1996 and 2003. He served as a trustee of the University from 1994 to 2003, and also was a member of the board of directors of Penn State Milton S. Hershey Medical Center.
A Big Run native, Weiss joined Bell Telephone upon graduating from Penn State. He was named chairman and CEO of Ameritech (now part of SBC Communications) in 1984, following a career with Bell companies in Pennsylvania, Wisconsin, Indiana and Illinois.
Josephine Weiss has been involved as a volunteer leader with such diverse organizations as the Chicago Child Care Society, the Women's Board of Northwestern University, and Chicago Museum of Science and Industry."
บันทึก: June 16, 2005
- กลัวว่าจะทำ control point ต้นฉบับหายก็เลยเอามาเซฟไว้ที่นี้ด้วย
int
PaModelBuilder::initPhase1H001( float* arControlPts ) {
float* b = arControlPts;
int nAdjust = -3;
/*** TRUNK ***/
b[ 4+nAdjust] = 137; b[ 5+nAdjust] = 122; b[ 6+nAdjust] = 109;
b[ 7+nAdjust] = 138; b[ 8+nAdjust] = 117; b[ 9+nAdjust] = 112;
b[10+nAdjust] = 140; b[11+nAdjust] = 107; b[12+nAdjust] = 121;
b[13+nAdjust] = 142; b[14+nAdjust] = 89; b[15+nAdjust] = 132;
/*** LEFT ***/
b[16+nAdjust] = 169; b[17+nAdjust] = 200; b[18+nAdjust] = 105;
b[19+nAdjust] = 146; b[20+nAdjust] = 187; b[21+nAdjust] = 89;
b[22+nAdjust] = 137; b[23+nAdjust] = 168; b[24+nAdjust] = 84;
b[25+nAdjust] = 136; b[26+nAdjust] = 160; b[27+nAdjust] = 85;
b[28+nAdjust] = 134; b[29+nAdjust] = 148; b[30+nAdjust] = 93;
b[31+nAdjust] = 133; b[32+nAdjust] = 136; b[33+nAdjust] = 103; //Bifurcation point
/*** RIGHT ***/
b[34+nAdjust] = 128; b[35+nAdjust] = 146; b[36+nAdjust] = 102;
b[37+nAdjust] = 121; b[38+nAdjust] = 155; b[39+nAdjust] = 105;
b[40+nAdjust] = 109; b[41+nAdjust] = 163; b[42+nAdjust] = 107;
b[43+nAdjust] = 100; b[44+nAdjust] = 167; b[45+nAdjust] = 109;
b[46+nAdjust] = 93; b[47+nAdjust] = 168; b[48+nAdjust] = 112;
return 15; //The number of control points.
}
int
PaModelBuilder::initPhase1H002( float* arControlPts ) {
float* b = arControlPts;
int nAdjust = -3;
/*** TRUNK ***/
b[ 4+nAdjust] = 148; b[ 5+nAdjust] = 135; b[ 6+nAdjust] = 146;
b[ 7+nAdjust] = 150; b[ 8+nAdjust] = 127; b[ 9+nAdjust] = 150;
b[10+nAdjust] = 151; b[11+nAdjust] = 120; b[12+nAdjust] = 155;
b[13+nAdjust] = 155; b[14+nAdjust] = 101; b[15+nAdjust] = 170;
/*** LEFT ***/
b[16+nAdjust] = 171; b[17+nAdjust] = 201; b[18+nAdjust] = 139;
b[19+nAdjust] = 167; b[20+nAdjust] = 200; b[21+nAdjust] = 131;
b[22+nAdjust] = 159; b[23+nAdjust] = 182; b[24+nAdjust] = 135;
b[25+nAdjust] = 148; b[26+nAdjust] = 162; b[27+nAdjust] = 135;
b[28+nAdjust] = 147; b[29+nAdjust] = 154; b[30+nAdjust] = 138;
b[31+nAdjust] = 146; b[32+nAdjust] = 145; b[33+nAdjust] = 141; //Bifurcation point
/*** RIGHT ***/
b[34+nAdjust] = 126; b[35+nAdjust] = 145; b[36+nAdjust] = 149;
b[37+nAdjust] = 129; b[38+nAdjust] = 155; b[39+nAdjust] = 150;
b[40+nAdjust] = 122; b[41+nAdjust] = 162; b[42+nAdjust] = 154;
b[43+nAdjust] = 118; b[44+nAdjust] = 165; b[45+nAdjust] = 157;
b[46+nAdjust] = 104; b[47+nAdjust] = 172; b[48+nAdjust] = 158;
return 15; //The number of control points.
}
int
PaModelBuilder::initPhase2H048( float* arControlPts ) {
float* b = arControlPts;
int nAdjust = -3;
/*** TRUNK ***/
b[ 4+nAdjust] = 162; b[ 5+nAdjust] = 134; b[ 6+nAdjust] = 100;
b[ 7+nAdjust] = 168; b[ 8+nAdjust] = 116; b[ 9+nAdjust] = 113;
b[10+nAdjust] = 176; b[11+nAdjust] = 96; b[12+nAdjust] = 136;
b[13+nAdjust] = 182; b[14+nAdjust] = 92; b[15+nAdjust] = 160;
/*** LEFT ***/
b[16+nAdjust] = 200; b[17+nAdjust] = 232; b[18+nAdjust] = 100;
b[19+nAdjust] = 180; b[20+nAdjust] = 211; b[21+nAdjust] = 86;
b[22+nAdjust] = 162; b[23+nAdjust] = 183; b[24+nAdjust] = 88;
b[25+nAdjust] = 159; b[26+nAdjust] = 168; b[27+nAdjust] = 88;
b[28+nAdjust] = 157; b[29+nAdjust] = 158; b[30+nAdjust] = 93;
b[31+nAdjust] = 157; b[32+nAdjust] = 149; b[33+nAdjust] = 97; //Bifurcation point
/*** RIGHT ***/
b[34+nAdjust] = 141; b[35+nAdjust] = 154; b[36+nAdjust] = 103;
b[37+nAdjust] = 128; b[38+nAdjust] = 160; b[39+nAdjust] = 109;
b[40+nAdjust] = 122; b[41+nAdjust] = 167; b[42+nAdjust] = 113;
b[43+nAdjust] = 114; b[44+nAdjust] = 168; b[45+nAdjust] = 118;
b[46+nAdjust] = 103; b[47+nAdjust] = 168; b[48+nAdjust] = 124;
return 15; //The number of control points.
} - Method to improve the result for all cases:
Because of the number of control points is too small to address some complex curves of blood vessels, we can make additional recovery. The recovery process can be done in two folds: 1. Perpendicular to the axis (maybe more suitable for pulmonary artery)
2. Independently from the axis by starting from 3 crucial points (for aorta) - Things needed to be investigated:
- Change the propotion of weight in optimization process (ลองแล้ว ก็ไม่ค่อยเปลี่ยน)
- Independent search for each part of pulmonary artery (ไม่ค่อย make sense แ่ต่ก็จะลอง)
- Make an explicit backup of best control points in global optimization process (ลองแล้วเหมือนเดิม)
- Increase the number of control points to check if there is any improvement
- Make an x-y scaling of coordinates before start model matching (ลองแล้วไม่ค่อยได้ผล)
- I now know the reason of failure. The angle of the three parts of pulmonary artery is different from person to person. Although we try to add more models, it is very likely that the problem still persists. However, locating bifurcation point of Pa is reliable enough to do additional recovery.
- Change the propotion of weight in optimization process (ลองแล้ว ก็ไม่ค่อยเปลี่ยน)
Tuesday, June 14, 2005
ธรรมะ: คำศัพท์ที่น่าสนใจในพุทธศาสนา
- สมถะ ธรรมเป็นเครื่องสงบระงับจิต, ธรรมยังจิตให้สงบระงับจากนิวรณูปกิเลส, การฝึกจิตให้สงบเป็นสมาธิ (ข้อ ๑ ในกรรมฐาน ๒ หรือภาวนา ๒)
- สมถกัมมัฏฐาน กรรมฐานคือสมถะ, งานฝึกจิตให้สงบ ดู สมถะ
- สมณะ ผู้สงบ หมายถึงนักบวชทั่วไปแต่ในพระพุทธศาสนา ท่านให้ความหมายจำเพาะ หมายถึงผู้ระงับบาป ได้แก่ พระอริยบุคคล และผู้ปฏิบัติธรรมเพื่อระงับบาป ได้แก่ผู้ปฏิบัติธรรมเพื่อเป็นพระอริยบุคคล
-
กัมมัฏฐาน ที่ตั้งแห่งการงาน, อารมณ์เป็นที่ตั้งแห่งการงานของใจ, อุบายทางใจ, วิธีฝึกอบรมจิต มี ๒ ประเภท คือ สมถกัมมัฏฐาน อุบายสงบใจ ๑ วิปัสสนากัมมัฏฐาน อุบายเรืองปัญญา ๑ (นิยมเขียน กรรมฐาน) ดู ภาวนา - subjects of meditation; meditation exercises; the act of meditation or contemplation; ground for mental culture.
กัมมัฏฐาน ๔๐ คือกสิณ ๑๐ อสุภะ ๑๐ อนุสสติ ๑๐ พรหมวิหาร ๔ อาหาเรปฏิกูลสัญญา ๑ จตุธาตุววัตถาน ๑ อรูป ๔
- อนุสติ ความระลึกถึง, อารมณ์ที่ควรระลึกถึงเนืองๆ มี ๑๐ อย่าง คือ ๑) พุทธานุสติ ระลึกถึงคุณของพระพุทธเจ้า ๒) ธัมมานุสติ ระลึกถึงคุณของพระธรรม ๓) สังฆานุสสติ ระลึกถึงคุณของพระสงฆ์ ๔) สีลานุสติ ระลึกถึงศีลที่ตนรักษา ๕) จาคานุสติ ระลึกถึงทานที่ตนบริจาคแล้ว ๖) เทวตานุสติ ระลึกถึงคุณที่ทำคนให้เป็นเทวดา ๗) มรณัสสติ ระลึกถึงความตายที่จะต้องมีเป็นธรรม ๘) กายคตาสติ ระลึกทั่วไปในกายให้เห็นว่าไม่งาม ๙) อานาปานสติ ตั้งสติกำหนดลมหายใจเข้าออก ๑๐) อุปสมานุสติ ระลึกถึงธรรมเป็นที่สงบระงับกิเลสและความทุกข์ คือ นิพพาน
- อนุสัย กิเลสที่แฝงตัวนอนเนื่องอยู่ในสันดาน มี ๗ คือ ๑) กามราคะ ความกำหนัดในกาม ๒) ปฏิฆะ ความหงุดหงิด ๓) ทิฏฐิ ความเห็นผิด ๔) วิจิกิจฉา ความลังเลสัยสัย ๕) มานะ ความถือตัว ๖) ภวราคะ ความกำหนดในภพ ๗) อวิชชา ความไม่รู้จริง
- สติปัฏฐาน ธรรมเป็นที่ตั้งแห่งสติ, ข้อปฏิบัติมีสติเป็นประธาน, การตั้งสติกำหนดพิจารณาสิ่งทั้งหลายให้รู้เห็นเท่าทันตามความเป็นจริง, การมีสติกำกับดูสิ่งต่าง ๆ และความเป็นไปทั้งหลาย โดยรู้เท่าทันตามสภาวะของมัน ไม่ถูกครอบงำด้วยความยินดียินร้าย ที่ทำให้มองเห็นเพี้ยนไปตามอำนาจกิเลส มี ๔ อย่างคือ ๑.กายานุปัสสนา สติปัฏฐาน การตั้งสติกำหนดพิจารณากาย, การมีสติกำกับดูรู้เท่าทันกายและเรื่องทางกาย ๒.เวทนานุปัสสนา สติปัฏฐาน การตั้งสติกำหนดพิจารณาเวทนา, การมีสติกำกับดูรู้เท่าทันเวทนา, ๓.จิตตานุปัสสนา สติปัฏฐาน การตั้งสติกำหนดพิจารณาจิต, การมีสติกำกับดูรู้เท่าทันจิตหรือสภาพและอาการของจิต ๔.ธัมมานุปัสสนา สติปัฏฐาน การตั้งสติกำหนดพิจารณาธรรม, การมีสติกำกับดูรู้เท่าทันธรรม; เรียกสั้น ๆ ว่า กาย เวทนา จิต ธรรม
ลิงค์: หนังสือทฤษฎีกราฟ
"ไปถาม ๆ ไว้ในหน้าพูดคุยของหัวข้อทฤษฎีกราฟ ที่วิกิพีเดียภาษาไทย ว่าอยากได้หนังสือที่แนะนำเกี่ยวกับทฤษฎีกราฟหน่อย เอาแบบตัวอย่างเยอะ ๆ อยากจะรื้อฟื้นเรื่องนี้ หลังจากทิ้งไปนานพอสมควร เพราะดูท่าจะได้ใช้เยอะขึ้นในอนาคต
ไม่ทันไร คุณไร้สติ ก็แนะนำหนังสือมาเป็นชุด:
- J.A. Bondy and U.S.R. Murty, Graph Theory with Applications
- Reinhard Diestel, Graph Theory Second Edition
- Lawler E.L., Combinatorial optimization.. networks and matroids
- Einführung in Graphen und Algorithmen (in German)
ทั้งหมดดาวน์โหลดมาอ่านได้ – โซ คู่น
million thanks ;)"
Sunday, June 12, 2005
บันทึก: June 11, 2005
- จะวัด relative time จากจุดที่สนใจ
เราสามารถใช้ GetTickCount() ได้ โดยที่ฟังก์ชันนี้ปรกติจะคืน เวลาในหน่วย millisecond นับตั้งแต่เปิดเครื่องขึ้นมาให้เรา - การใช้ class-member static variable ใน C++
วิธีใช้ค่อนข้างจะจุกจิกเล็กน้อยสำหรับ C++ นอกจากเราจะต้องทำการประการไว้ที่ header ของคลาสแล้ว เราจะต้องทำการ initialize มันในระดับ global ด้วย (โดยปรกติกจะ init ไว้หน้า main function)
ตัวอย่าง
class ExperimentLog
{
public:
static fstream* fileLog;
static void initFileLog( CString strDirName, CString strFileName );
static void writeCoordinate( int x, int y, int z );
static void writeAffineParams( float arAffineParam[] );
static void writePts( float arPts[], int nNumPts );
static void writeCurvePtsWithDistance( float arPts[], int nNumPts );
ExperimentLog(void);
~ExperimentLog(void);
private:
static char bufX[8];
static char bufY[8];
static char bufZ[8];
public:
static void test(void);
};
//Initialize static members
fstream* ExperimentLog::fileLog = NULL;
char ExperimentLog::bufX[8];
char ExperimentLog::bufY[8];
char ExperimentLog::bufZ[8];
void main() { ... }
- การแปลงเลขทศนิยมให้เป็น string
มีฟังก์ชันที่ทำหน้าที่นี้ได้อยู่สามตัวคือ _fcvt, _ecvt และ _gcvt แต่ก็ไม่มีอันไหนใช้ง่ายซะทีเดียว ที่ลองใช้มาพบว่าแบบ scienctific น่ะดีที่สุดแล้ว (คือใช้ _gcvt นั่นเอง)
ตัวอย่าง
const int nPrecision = 9;
char* bufAffine = new char[20];
//int nDecimalLocation, nSign;
int nDotPosition;
CString strInitial = "Z Axis (radian): ";
_gcvt( arAffineParam[1], nPrecision, bufAffine );
*fileLog << strinitial = "X Axis (radian): ">
ธรรมะ: ภาพของพุทธสาวกสองคนแรกในพุทธศาสนา
![]()
ฝีมือครูเหม เวชกร จิตกรมือหนึ่งของไทย
สองพาณิชถวายข้าวสัตตุผงก้อนสัตตุผง แล้วทูลปฎิญาณตนเป็นอุบาสกคู่แรก ในโลก [๓๑]
ภาพนี้เอามาจาก http://www.dhammalife.com/
ภาพพร้อมคำบรรยายแบบละเอียดดูได้ที่ http://www.dhammalife.com/buddha/pixbio/ (อ้างอิงเลขที่ 31 )
นี่ มีการแจกซีดีธรรมะฟรีด้วยนะ สามารถติดต่อได้ที่ http://www.cdthamma.com/
มีซีดีที่อยากได้ดังนี้
1. CD001 ซีดีพระไตรปิฏก รวม 3 ชุด
http://www.cdthamma.com/titles/cd001_050/cd001.htm
2. CD015 ซีดีธรรมปรารภเพื่อสติปัฏฐาน หลวงพ่อคำเขียน สุวัณโณ
http://www.cdthamma.com/titles/cd001_050/cd015.htm
3. CD006 พระธรรมเทศนา โดย พระพรหมคุณาภรณ์ (ป.อ.ปยุตฺโต)
http://www.cdthamma.com/titles/cd001_050/cd006.htm
4. พระธรรมเทศนา โดย พระราชพรหมยาน( หลวงพ่อฤาษีลิงดำ ) วัดท่าซุง อ.เมือง จ.อุทัยธานี
http://www.cdthamma.com/titles/cd001_050/cd024.htm
ธรรมะ: นิยามของคำว่าอบายมุข
(อ้างอิง: http://www.dhammalife.com/dhamma/vocab/)
พบว่านิยามในศาสนาแบ่งคำแปลออกเป็นสองหมวดดังนี้
อบายมุข ช่องทางของความเสื่อม, เหตุเครื่องฉิบหาย, เหตุย่อยยับแห่งโภคทรัพย์, ทางแห่งความพินาศสิ่งที่อยากให้สังเกตก็คือความเกียจคร้านการงานก็คือทางสู่ความเสื่อมเช่นกัน
มี ๔ อย่าง คือ ๑) เป็นนักเลงหญิง ๒) เป็นนักเลงสุรา ๓) เป็นนักเลงการพนัน ๔) คบคนชั่วเป็นมิตร;
อีกหมวดหนึ่งมี ๖ อย่าง คือ ๑) ติดสุราและของมึนเมา ๒) ชอบเที่ยวกลางคืน ๓) ชอบเที่ยวดูการเล่น ๔) เล่นการพนัน ๕) คบคนชั่วเป็นมิตร ๖) เกียจคร้านการงาน
เบ็ดเตล็ด: วันเกิดของคนในครอบครัว
วันเกิดอาแหม่ะ: 23 ตุลาคม
วันเกิดคุณเตี๊ยง: (ไม่รู้แฮะ ลืมถามมา)
วันเกิดคุณอ๋อย: 3 สิงหาคม
วันเกิดสมพล: 16 มกราคม
วันเกิดภิญโญ: 1 มิถุนายน
บันทึก: June 11, 2005
อ่า อย่าลืมแก้ฟังก์ชัน Opmization ให้เรียบร้อยด้วยนะ เพื่อป้องกันการติดลูป
เราควรจับเวลาในการทำ optimization เทียบกับพารามิเตอร์ต่างๆ และผลลัพธ์ที่ได้ด้วย
วันนี้ลองทำเว็บแกลเลอรี่ดูพบว่าทำได้ง่ายมาก ขอบคุณตัวเองที่ทำบุ๊คมาร์คไว้หน้าเว็บที่บอกวิธีไว้ด้วยนะ คิดว่าโอกาสต่อไปจะเริ่มมาทำแกลเลอรีีให้ไทยคลับมั่งแล้ว
แถมนิดวันนี้ไปวิ่งมา พบว่าเราิวิ่งด้วยเวลาเกือบ 30 นาทีนะ (อีกแค่ประมาณ 30 วิก็จะ 30 นาทีพอดี) วิ่งช้ากว่าที่คิดนิดหน่อย แต่จากเวลาที่ใช้คิดว่าระยะทางน่าจะ 4.5 กิโลเมตรได้
Saturday, June 11, 2005
บันทึก: มิถุนายน 10, 2005
1. โมเดลที่ใช้ในการ optimization กับโมเดลที่เอาไว้ดูนั้นต่างกันมาก เพราะโมเดลที่เอาไว้ดูนั้น ต้องเน้นที่การกำหนดไปที่จุดที่มีค่า likelihood สูง แต่สำหรับโมเดลที่เอาไว้ใ้ช้ในการ optimization นั้น จะสำคัญที่การกระจายจุดด้วย ไม่เช่นนั้นเวลาที่ทำการ optimize มันก็จะพยายาม optimize จุดที่มีการกระจุกตัวเป็นหลัก
2. ค่าพารามิเตอร์สำหรับการ optimize ใน powell's method ค่อนข้างจะสำคัญมาก เพราะว่า ถ้ากำหนดค่าผิดมันจะไม่ยอมหลุดออกจากลูปนะ ซึ่งขอบันทึกไว้ในที่นี้ด้วยว่าโดยปรกติค่ามักจะเป็นตามที่แสดงข้างล่าง
- ZEPS ถูกใช้ใน brent โดยปรกติจะมีค่าเท่ากัน 1e-10
- TINY ถูกใช้ใน mnbrak โดยปรกติจะมีค่าเท่ากัน 1e-20
- TOL เป็นค่าที่ linmin ส่งไปให้ brent โดยปรกติจะมีค่าเท่ากัน 2e-4
- tolerance ที่ส่งไปใ้ห้กับ powell มักจะมีค่าเท่ากัน 1e-16
Friday, June 10, 2005
งาน: Always make a good start
Key:
1. Study of data flow and its diagram
2. Class inheritance preparation
สำหรับครั้งนี้อยากจะเน้นเรื่องของการเขียนโปรแกรม และการจัดคลาสให้มีการรียูสโค้ดมากๆ
ถึงแม้จะอยู่ในช่วงทำ Prototype ก็ขอให้เริ่มมันดี ด้วยการจัดโครงสร้างที่พร้อมในการทำ inheritance พอสมควร เช่น ในงานของ Aorta and Pulmonary Artery Extraction พวกที่ทำหน้าที่เขียนผลลัพธ์, ในการ optimization, และ ในการเขียน spline น่าจะใช้ร่วมกันได้ ดังนี้เราจึงควรทำมันแยกออกมาเป็นโมดูลให้เรียกใช้กันได้ง่ายๆ ไม่ต้อง copy paste ให้วุ่นวายอย่างที่เป็นอยู่
การที่จะทำงานนี้ให้สำเร็จได้ เราจะต้องเริ่มด้วยการเขียน การไหลเวียนของข้อมูลก่อนเสมอ เพราะการไหลของข้อมูลจะทำให้รู้ได้ว่าเราต้องมี utility อะไรมั่งจึงจะสามารถทำงานได้สำเร็จ และเราก็จะรู้เองว่าอะไรที่ควรแยกออกมาทำเป็นคลาสได้โดยง่าย
ชีวิต: อย่ากลับไปใช้ชีวิตอย่างประมาทอีก
อย่าลืมนะว่าในปีแรกที่เราเข้าจุฬา และ ในปีแรกที่เราเข้าเพนเสตท เราทำงานหนักมาก แต่เราก็มีความสุขจากการทำงานของเราดี และเรามีความสุขเมื่อเรามองผลงานดีๆของเราย้อนกลับไปเสมอ
เราอยากจะเริ่มต้นชีวิตใหม่ตั้งแต่ตอนนี้เป็นต้นไป
เราจะกระทำความเพียรในการงานอย่างหนึ่ง
เ้ราจะทำสมาธิอย่างหนึ่ง
เราจะสำรวมกาย วาจา ใจอย่างหนึ่ง
เราจะปฏิเสธความยินดีในกามอีกอย่างหนึ่ง
เราจะเริ่มต้นชีวิตใหม่เดี๋ยวนี้ เราจะทำการทดลองทุกอย่างอย่างละเอียด จะให้เหลือข้อสงสัยแม้แต่น้อยนิดก็ไม่ได้
Monday, June 06, 2005
2005-June-6: Note
- Writing formatted number in Java
When we want to specify the exact significant number in Java we should use %nG in formatting, where n is that exact significant number. However, Java i's quite awkward in formatting number; we need to specify number in object and put it in an array.
Example:
Double[] arDouble = new Double[1];
arDouble[0] = new Double(12.345678);
System.out.printf("I print %5G na.", arDouble );
- Writing text to a file in Java
มันง่ายอย่างไม่น่าเชื่อในการที่เราจะเขียนข้อความลงไฟล์ในภาษาจาวา เราเพีียงเริ่มต้นด้วยการกำหนดปลายทางของข้อความที่เขียนไปที่ไฟล์ที่เราต้องการ ซึ่งสามารถทำได้ด้วยคลาส BufferedWriter และ FileWriter
ตัวอย่าง:
BufferedWriter out = new BufferedWriter(new FileWriter("M:/outfilename.txt"));
out.write("1\t1.2\t5.34\t2.225");
out.close();
Thursday, June 02, 2005
เทคนิค: เรื่องน่าสนเกี่ยวกับไวรัส
http://news.zdnet.com/2100-1009_22-5729426.html?tag=nl.e589
Monday, May 23, 2005
Tech: Bug Parade
Friday, May 20, 2005
เพื่อสุขภาพ: การออกกำลังกาย กับ การลดน้ำหนัก
| ||||||
| ||||||
Monday, May 09, 2005
"Misc" โรคเกาต์
http://www.manager.co.th/Science/ViewNews.aspx?NewsID=9480000055227
มนุษย์รู้จักโรคเกาต์มาตั้งแต่สมัยโบราณ แพทย์กรีกชื่อ Hippocrates เมื่อ 2,400 ปีก่อนนี้ ได้พบว่า เกาต์เป็นโรคปวดข้อเรื้อรังชนิดหนึ่ง ที่มักพบในผู้ชายสูงอายุยิ่งกว่าหญิง โดยเฉพาะผู้ที่มีอายุมากกว่า 30 ปีขึ้นไป คือในผู้ชาย 1,000 คน จะมีคนป่วยด้วยโรคเกาต์ 2 คน
ประวัติศาสตร์การแพทย์ได้บันทึกว่า บุคคลสำคัญที่ป่วยด้วยเกาต์มีมากมาย เช่น จักรพรรดิ Alexander มหาราช, จักรพรรดิ Kublai Khan, นักฟิสิกส์ Isaac Newton, นักชีววิทยา Charles Darwin, แพทย์ William Harvey, รัฐบุรุษ Benjamin Franklin, นักประพันธ์ Guy de Maupassant และกวี Johan Wolfgang Goethe เป็นต้น
สำหรับคนที่ป่วยด้วยโรคนี้ ถ้าเป็นชนิดรุนแรงและเฉียบพลันคือไม่มีการเตือนล่วงหน้า ตามบริเวณนิ้วหัวแม่เท้า ข้อเท้า หัวเข่า ข้อนิ้ว ข้อมือ ข้อศอก หรือเท้าจะบวม และปวดจนอาจทนไม่ไหว นอกจากนี้ผู้ป่วยจะสังเกตเห็นว่าผิวหนังในบริเวณที่ปวดจะตึงออกสีแดง และร้อนบางครั้งอาการปวดจะรุนแรงมาก จนแม้แต่เวลาใครเดิน ผู้ป่วยจะรู้สึกว่าการเดินทำให้พื้นสะเทือนจนทนไม่ได้ แต่เมื่ออาการทุเลาผิวหนังที่ปวดจะคืนสู่สภาพปกติ
ตามปกติผู้ป่วยอาจจะเริ่มปวดตอนกลางคืน หรือหลังจากการดื่มแอลกอฮอล์ และเมื่อถึงเวลาเช้าอาการปวดอาจมีไข้หนาวสั่นด้วย จนทำให้รู้สึกอ่อนเพลียและเบื่ออาหาร บางครั้งอาการปวดอาจจะนานตั้งแต่ 1-6 อาทิตย์ หรือนานกว่านั้น แต่บางครั้งความเจ็บปวดก็หายเองโดยผู้ป่วยไม่ได้รับการรักษาใดๆ แต่แล้วอาการปวดก็อาจหวนกลับมาอีกในอีกหลายเดือนต่อมา และจะมาถี่ขึ้นๆ
สำหรับวิธีการรักษานั้น เมื่อประมาณปี พ.ศ. 1000 แพทย์กรีกชื่อ Alexander แห่งเมือง Tralles ได้พบว่า เมล็ดของต้น crocus สามารถทำให้อาการปวดเนื่องจากเกาต์บรรเทาลงได้ (ณ วันนี้นักเภสัชได้พบว่า เมล็ดและหัวของต้น crocus และใบต้นดองดึงมีตัวยาชื่อ colchicine ที่มีประสิทธิภาพในการรักษาเกาต์ได้) ตัวยานี้จึงเป็นยาที่แพทย์ใช้รักษาโรคเกาต์ตลอดเวลานานร่วม 1,400 ปีที่ผ่านมา ทั้งๆ ที่คนที่บริโภคยานี้อาจมีอาการอาเจียนปวดท้อง และท้องเสียเป็นอาการข้างเคีียง
ส่วนแพทย์ปัจจุบันก็รู้ดีว่า เกาต์เกิดจากการที่ระบบเผาผลาญพลังงานในร่างกายทำงานผิดปกติ ทำให้ร่างกายมีกรด uric ในเลือดมากเกินไป และเมื่อกรด uric มีมากเกินความจำเป็น ผลึกของกรด uric ที่ตกได้ไปสะสมที่ข้อต่อผิวหนัง ไต หรือผิวหนังทำให้บริเวณดังกล่าวมีก้อนกลมปรากฏ ซึ่งเรียกว่า tophus หรือตุ่มผลึก และตุ่มนี้ไม่เจ็บ ดังนั้น การเห็นก้อนเนื้อกลมแข็งปรากฏตามตัวผู้ป่วย แสดงให้เห็นว่า ระบบการเผาผลาญพลังงานในร่างกายของคนคนนั้น กำลังทำงานบกพร่อง
ในปี พ.ศ. 2319 Karl Wilhelm Scheeli นักเคมีชาวสวีเดนได้พบกรด uric เป็นคนแรก และในเวลาต่อมา William Wollaston นักฟิสิกส์-เคมีชาวอังกฤษ ได้วิเคราะห์ก้อนเนื้อเกาต์ และพบว่ามีเกลือของกรด uric อยู่ พออีก 50 ปีต่อมา Sir Alfred Garrod แพทย์ชาวอังกฤษได้พบว่า ระดับกรด uric ในเลือดเกี่ยวข้องโดยตรงกับโอกาสการเป็นโรคเกาต์ในคน
ณ วันนี้เรารู้แล้วว่า กระบวนการ metabolism ที่ร่างกายย่อยสลายโปรตีนจะให้ผลิตผลชนิดหนึ่งคือ กรด uric ซึ่งถ้าเป็นสัตว์เลี้ยงลูกด้วยนม กรด uric นี้จะถูกเปลี่ยนไปเป็น allantoin โดย enzyme ชนิด uricase ที่มีในตับ ดังนั้น ปัสสาวะของสัตว์เลี้ยงลูกด้วยนมส่วนมากจะมี allantoin ปนอยู่ แต่ร่างกายของคนไม่มี enzyme ชนิดนี้ ดังนั้น กรด uric และสารประกอบต่างๆ ของกรดนี้ จึงยังตกค้างในร่างกาย นอกจากนี้ร่างกายยังได้กรด uric จากการผลิตเองด้วย ตามปกติแพทย์พบว่า กรด uric ในร่างกายคนมีปริมาณน้อยคือประมาณ 1 กรัม และทุกวันร่างกายจะขับกรดประมาณ 0.5 กรัม ออกมากับปัสสาวะ แต่ในร่างกายคนที่เป็นเกาต์ปริมาณกรดยูริกในเลือดจะมีมากประมาณ 20-30 เท่าของคนปกติ
อนึ่งแพทย์ยังได้สำรวจพบอีกว่า คนที่ป่วยด้วยโรคเกาต์มักเป็นโรคอื่นด้วย เช่น เบาหวาน หัวใจ ความดันโลหิตสูง ไต ไขมันในเลือดสูง นิ่วในทางเดินปัสสาวะ และโรคกระดูกพรุนด้วย ทั้งนี้เพราะกรดยูริกในเลือดมีสภาพกรด ดังนั้น มันจะทำลายกระดูกจนไม่สามารถดูดซึมแคลเซียมได้ ส่วนในคนที่ไตทำงานบกพร่อง ไตจะไม่สามารถกำจัดกรด uric ได้ดี ดังนั้น ร่างกายจึงป่วยเป็นเกาต์
ด้วยเหตุนี้ วิธีหนึ่งที่แพทย์ใช้ในการรักษาเกาต์ คือบำรุงไต หรือฟื้นฟูสภาพของไต และทำความสะอาดหลอดเลือดทั่วร่างกาย โดยการละลายไขมัน สลายลิ่มเลือด ลดระดับ triglycericle เพิ่ม cholesterol ชนิด HDL และลด cholesterol ชนิด LDL โดยการให้ดื่มน้ำวันละ 6 แก้ว ลดการบริโภคเหล้า เบียร์ กาแฟ ชา อาหารเค็ม แกงเผ็ด เครื่องในสัตว์ปีก ชะอม กระถิน แตงกวา หน่อไม้ ดอกกะหล่ำ ผักปวยเล้ง ถั่วงอก ยอดแค ดอกสะเดา สาหร่าย กุ้ง กุนเชียง ปลาซาร์ดีน ไข่แมงดา ซึ่งให้โปรตีนประเภท purine มาก และเพราะคนที่มีฐานะดีมักกินอาหารที่มีโปรตีนมาก ดังนั้น จึงเป็นเรื่องไม่แปลกที่เรามักพบว่า คนร่ำรวยมักป่วยด้วยโรคเกาต์
ในการตรวจอาการเกาต์ แพทย์ตรวจระดับกรด uric ในเลือดหรือดูดน้ำในข้อมาดู และหากพบผลึกรูปเข็มของ monosodium urate มากนั่นแสดงว่า คนคนนั้นกำลังเป็นเกาต์ และตามปกติแพทย์จะไม่รักษาโดยการผ่าตัด เพราะการผ่าจะทำให้แผลหายช้า เขาจึงนิยมใช้ยาลดขนาดของผลึกให้เล็กลงๆ และให้ยาลดระดับกรด uric พวก probenecid sulfinpyrazone, benzbromarone และ allopurimol โดยยาที่ใช้รักษาต้องเป็นยาแก้อักเสบที่ไม่ใช่สเตียรอยด์ (nonsteroidal anti-inflamatony drug) พวก advil และ motil เป็นต้น ข้อเสียอย่างหนึ่งของคนที่เป็นเกาต์คือ ต้องกินยาเรื่อย
ในส่วนของการดูแลตนเองนั้น คนที่เป็นเกาต์ควรบริโภคอาหารให้ครบหมู่ ลดน้ำหนัก ลดระดับไขมันในเลือด ลดอาหารพวกเครื่องใน ตับ อาหารทะเล พยายามอย่าดื่มเหล้า เบียร์ เพราะเครื่องดื่มชนิดนี้มีสาร guanosine ที่สร้างกรด uric ผู้ป่วยควรดื่มน้ำมากๆ เพื่อขับกรด uric ออกจากร่างกาย และออกกำลังกายอย่างสม่ำเสมอ เพื่อให้เลือดหมุนเวียนในร่างกายได้อย่างเพียงพอ และต้องไปหาหมอ เพื่อรับการตรวจรักษาร่างกายอย่างสม่ำเสมอ เพื่อให้หมอหาทางป้องกันอาการข้อเสื่อม เนื่องจากมีติ่งผลึกมาเกาะตามข้อต่อซึ่งจะทำให้ข้อต่อมีรูปร่างผิดปกติ (น่าเกลียด) เพราะการรักษาที่ถูกวิธี และต่อเนื่องเท่านั้น จึงจะสามารถลดอาการอักเสบที่ทำให้ร่างกายทรมานจนเดินไม่ได้ครับ
สุทัศน์ ยกส้าน ภาคีสมาชิก ราชบัณฑิตยสถาน
Wednesday, April 27, 2005
PSU: รอบรู้เว็บเพนสเตท
ตอนนี้เราก็สามารถใช้ PHP ได้แล้ว ข่าวสามารถอ่านได้ที่
http://aset.its.psu.edu/announcements/app_engines.html
นอกจากนี้เราก็ยังจะได้พื้นที่เพิ่มในปีการศึกษา 2005 เป็น 1GB ด้วย เสร็จป๋มล่ะ ไม่ต้องไปหาพื้นที่เว็บข้างนอกแล้ว
http://live.psu.edu/story/11633
เอ้อ ถ้าอยากตรวจว่าไทยคลับมีพื้นที่เท่าไหร่ก็ให้ไปที่
้https://www.work.psu.edu แล้วดูลิงค์ที่ทางขวาล่างนะจะมี 'Directory quotas' อยู่
จากนั้นก็จัดการใส่ที่อยู่ของพื้นที่ไทยคลับไปซะ
/:/services/www/clubs/wwwroot/up/thaiชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชช
Phase II of Dynamic Web Application Engines,
Planned for Release August 24, 2004
posted on August 18, 2004
On June 30, 2004, Academic Services and Emerging Technologies (ASET), a unit of Information Technology Services (ITS), announced Phase I of its Dynamic Web Application Engines service (see below), which introduced the PHP application engine. On August 24, ASET will continue this rollout with Phase II updates. The updates include:
- an upgrade from PHP version 4.x to PHP version 5.x;
- files ending in .php on http://www.personal.psu.edu/, http://www.psu.edu/dept/, http://www.clubs.psu.edu/ and http://www.courses.psu.edu/ will be automatically redirected to the corresponding URL on php.scripts.psu.edu (as of August 25);
- SQLite database support will be introduced as part of PHP 5.x; and,
- SSL and WebAccess support will be available, per request, for select sites.
At this time, a fully-featured database service is not provided; however, one is planned for a later release. Developers and Web content providers are welcome to use independently-operated database servers. Additionally, because of the way PHP is implemented in this service, developers should not use this for sensitive or confidential data. The plan is to improve access methods with subsequent implementations, enabling developers to consider the management of more sensitive information.
For additional details and resources, please refer to the original announcement below.
Phase I
posted on June 24, 2004
University Park, PA -- In an effort to provide the Penn State community of computing users with additional Web service options, Academic Services and Emerging Technologies (ASET), a unit of Information Technology Services (ITS), will begin the first phase of a multi-phase rollout of Penn State Web Application Engines. This service will provide several application engines, beginning with PHP: Hypertext Preprocessor (PHP), php.scripts.psu.edu. Other dynamic content application engines such as ASP and JSP may be available in the future as part of future-phase rollouts.
This service is designed for all Penn State students, staff and faculty with Personal Web space; student organizations with Web space on the Student Organizations Web Server; colleges; other Penn State locations and departments with ITS Departmental Web space; and, courses with Course Online Accounts (COLA).
Please note that a database server is not provided for this service with Phase I; however, one is planned for a later release. Developers and Web content providers are welcome to use independently operated database servers. Also note that at this time, this service is not designed for use with authentication via the Penn State Access Account or Friends of Penn State Account.
Getting Started
Information, guidelines and resources for using this service are found via the Penn State Web Application Engines Web site.
Getting Help
Questions specific to this service may be directed to dbadmin@aset.psu.edu. Requests for assistance may be directed to the ITS Help Desk at helpdesk@psu.edu.
Future Directions
Please check ASET's Web site during the summer for updates and announcements. Likewise, announcements will be posted via the appropriate media avenues.
ชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชชUniversity to expand digital storage resources
Wednesday, April 20, 2005
University Park, Pa. -- This fall, Penn State Information Technology Services (ITS) plans to double the amount of digital storage space available to University community members, by providing a gigabyte (or 1,000 megabytes) of space for course work, research, Web projects, portfolios, graphics, photos and more.
The University's network storage system, known as Penn State Access Account Storage Space (PASS), is provided to all computer users when they sign up for Penn State's e-mail service and can be used for a variety of Internet needs including storing Penn State Portal preferences or storing Penn State Web Mail mailboxes and attachments.
According to Kevin Morooney, senior director of ITS Academic Services and Emerging Technologies, the upcoming boost to PASS will enable individuals to personally add space to their accounts in 100 Megabyte increments up to a full gigabyte, providing considerably more space for students, faculty and staff to securely store and manage research materials and Web resources.
Currently Penn State community members each have 500 megabytes of space, but with the upcoming PASS expansion, each individual's space can be increased up to 100 percent beginning on the first day of fall semester classes.
In addition to the recent increase, other standard Web storage features will continue to be offered to Penn State Access Account users through the University's PASS storage system. For example students, faculty and staff can choose to add an additional 10 megabytes to their storage space by applying for Personal Web Space at http://aset.its.psu.edu/accounts/personal.html and instructors can receive up to 50 megabytes of Web space for their instructional development interests via the Course Online Account system (COLA). Faculty members also can request 10 megabytes of Web space for each of their students to use for course assignments through the Student Online Development Account system (SODA).
For additional information about PASS, visit http://aset.its.psu.edu/ait/storagespace.html and to learn more about the Penn State Access Account and other services provided by ITS, go to http://its.psu.edu/
[Misc] เรื่องอุบาทว์ของไทยๆ
ตัวข่าวที่มีการบรรยายตั้งแต่เหตุการณ์ประมูล
http://www.dailynews.co.th/today/each.asp?newsid=52070
เกี่ยวกับผลลัพธ์ของมัน
http://www.manager.co.th/Daily/ViewNews.aspx?NewsID=9480000054571
เรื่องแย่ๆอีกอันก็คือเรื่องหนองงูเห่ากับนายสุริยะที่ดูแล้วรู้สึกอนาถใจเช่นกัน
งาบทีมากกว่าราคาจัดซื้อที่ควรจะเป็นอีก กล่าวคือราคาตลาดน่าจะไ่ม่เกิน 1400 ล้าน แต่ปรากฎว่าจ่ายไปรวมประมาณ 4300 ล้าน นับว่าทุเรศมาก นายสุริยะจบจาก UC Berkeley แต่มาดแม้นว่าการศึกษากับจริยธรรมเป็นเหมือนของที่ไม่มาพบกันในปัจจุบันอีกแล้ว
http://vuthi.blogspot.com/2005/04/blog-post.html
[Tech] เรื่องเกี่ยวกับ startup ของ Windows
http://www.manager.co.th/CyberBiz/ViewNews.aspx?NewsID=9480000056119
Sunday, April 24, 2005
[Dharma] ประโยคสวยๆในพุทธศาสนา
Wednesday, April 20, 2005
Prolog
Thursday, March 31, 2005
[Tech] Strange stuff in C++
- Whenever you declare a class, be sure that you end the declaration with ';'. Error message from compiler may look irrelevant. It can be 'error C2533: 'TextImageExporter::__ctor' : constructors not allowed a return type'.
- If you are using stdafx.h to reduce recompilation time, you need to #include it in every cpp file in the project (even though you don't want to reduce the compile time for some files). If not, you will get this error message:
fatal error C1010: unexpected end of file while looking for precompiled header directive
Monday, March 21, 2005
[Tech] CLapack กับ VC++
1. Obtain the library at http://www.netlib.org/clapack/
(Mar 2005) The version I recommend is version 3. The file size is huge because it includes src code and compiled library (both debug and release mode).
2. Set up VC project and use 'Multithreaded DLL' for runtime library.
3. Edit the header file 'clapack.h' to extern "C" api. This is required for C++ project.
4. Put the libary files in appropriate location and add them as 'additional dependencies'.
For example, I put them in 'Visual Studio solution' directory at Lib/Release; the additional dependencies will be
odbc32.lib odbccp32.lib ../Lib/Release/blas.lib ../Lib/Release/libF77.lib ../Lib/Release/libI77.lib ../Lib/Release/clapack.lib
5. Standard libraries we are going to use may conflict each other. Order of inclusion is very important. The following code is a working example of inclusion:
#include
using namespace std;
#include
#include
#include "f2c.h"
#include "clapack_extern.h"
6. You might need some good document:
6.1. For guideline of what's going on inside Lapack:
http://www.netlib.org/lapack/lug/index.html
The guide is official book of Lapack routine, but it's not API reference.
6.2. For API reference:
http://www.math.utah.edu/software/lapack/
Tuesday, March 08, 2005
[Tech] Link Java API documents to Eclipse interface
We will see the list of JRE availabe. Click the one you like and then 'Edit'. Then, change the Javadoc URL to a folder location we want.
To access the document, press F1 on Java class we want to explore and then select the last menu, 'Javadoc for
Another Tip in Eclipse:
Eclipse has a feature to help us locate a reference of class or object easily. This is important because sometimes we want to track usage of a variable or a class. To access the information, right click on a class name or a variable anc choose 'References->Project' (or Workspace). A tree of reference will be displayed for browsing (in another panel). In addition, hightlight for the reference will be shown in source code too.
[Tech] จะตั้ง CVS Server
อย่างไรก็ตามมีข้อเท็จจริงที่น่าสนใจอยู่อย่างหนึ่งก็คือว่า ถ้าหากจะใช้ pserver เราต้องรัน Password Agent ด้วย เราคิดว่าที่ทำไม่สำเร็จจริงๆแล้วเป็นเพราะ interface ของ TortoiseCVS มันทำไม่ได้มากกว่า
สำหรับตอนนี้เรามีความเห็นว่าถ้าหากอยากจะทำโดยผ่าน TortoiseCVS เราอาจจะลงมันเป็นแบบ local ไป แต่คนใช้อาจจะใช้การล็อกเข้าแบบ pserver แทน (ไม่รู้จะได้จริงรึเปล่า)
อ้อ ไม่ว่าจะตั้งด้วยวิธีไหน สิ่งที่อยากให้รู้ก่อนเสมอก็คือ ชื่อของ directory ที่มีอยู่แล้วที่เราจะใส่มันเข้าไปภายใน Repository
ตาม convention ของเราแล้ว ให้ตั้งชื่อของ repository เป็นไปตามชื่อของ directory ที่เราจะใส่เข้าไป
ตัวอย่าง
1. เรามี source code ของ eclipse อยู่แล้วอยู่ใน DropletRecognition Folder
2. จริงแล้วเราก็อยากจะตั้งชื่อโมดูลให้เป็นแบบนั้นอยู่หรอก แต่ว่านะซอร์สโค้ดก็เขียนไปแล้ว และมันก็ตั้งอยู่ในไดเรกทอรีชื่อ src ตามที่ Eclipse ให้มันเป็น
3. เราอยากเอาแค่ src เข้าไปเท่านั้น
4. เพราะว่าเวลา check out อะไรออกมา มันจะสร้าง directory ให้เป็นไปตามชื่อโมดูล และเราตั้งการรักษา constraint ชื่อโพลเดอร์ที่ Eclipse ใช้ ดังนั้นเราจึงต้องสร้างโมดูลให้ชื่อ src ตาม
5. เพราะไม่ต้องการให้สับสนกับของอย่างอื่นที่อาจจะเป็นชื่อ src ตามมา เราจึงสร้างโฟลเดอร์ที่จะ host repository ให้มีชื่อว่า DropletRecognition แล้วจะไปสร้างโมดูลในนั้นให้มีชื่อว่า src แทน
6. ก็จะได้ว่าชื่อของไดเรกทอรีที่เก็บ repository ไว้ ที่จริงแล้วมันคือชื่อของ repos ที่เราอยากได้นั่นเอง
Wednesday, March 02, 2005
[News] About Patent
http://www.manager.co.th/SMEs/ViewNews.aspx?NewsID=9480000030427
I'd like to copy last part of the news here:
ทั้งนี้ สินค้าโอทอป สินค้า SMEs สามารถจดทะเบียนทรัพย์สินทางปัญญาเพื่อขอรับความคุ้มครองหรือแจ้งข้อมูลได้หลากหลายรูปแบบมาก เริ่มจากการจดทะเบียนสิทธิบัตร ซึ่งการจดสิทธิบัตรสามารถจดได้ 2 ประเภท คือ สิทธิบัตรการประดิษฐ์ สิทธิบัตรการออกแบบผลิตภัณฑ์ เช่น การประดิษฐ์ รถยนต์ ทีวี คอมพิวเตอร์ โทรศัพท์ หรือการออกแบบขวดบรรจุน้ำดื่ม ขวดบรรจุน้ำอัดลม หรือการออกแบบลวดลายบนจานข้าว ถ้วยกาแฟ ไม่ให้เหมือนของคนอื่น การออกแบบแก้วน้ำให้มีรูปร่างคล้ายรองเท้าบูต เป็นต้น ซึ่งสินค้าโอทอป-SMEs สามารถจดทะเบียนสิทธิบัตรได้หลายรายการเลยทีเดียว ที่สำคัญ สินค้าที่จะขอรับสิทธิบัตรการประดิษฐ์ได้นั้น ผู้ผลิตสินค้าโอทอป-SMEs จะต้องดูว่าเข้าเงื่อนไขดังต่อไปนี้หรือไม่ คือ 1.เป็นสิ่งประดิษฐ์ใหม่ ที่ยังไม่เคยมีจำหน่ายหรือขายมาก่อน หรือยังไม่เปิดเผยรายละเอียดในที่ใดมาก่อน 2.มีขั้นตอนการประดิษฐ์ที่สูงขึ้น คือ ไม่เป็นสิ่งการประดิษฐ์ที่สามารถทำได้ง่าย โดยผู้มีความรู้ในระดับธรรมดา หรืออาจพูดได้ว่า มีการแก้ไขปัญหาทางเทคนิคของสิ่งประดิษฐ์ที่มีมาก่อน และ 3. สามารถนำไปใช้ประโยชน์ในการผลิตทางอุตสาหกรรม หัตถกรรม เกษตรกรรม และพาณิชยกรรมได้ ซึ่งหากเป็นสินค้าที่เข้าเงื่อนไขทั้ง 3 ข้อนี้ก็ยื่นขอจดทะเบียนได้
อย่างไรก็ตาม หากไม่ประสงค์จะจดสิทธิบัตร หรือสินค้านั้นไม่เข้าข่ายหรือเงื่อนไขที่จะจดทะเบียนสิทธิบัตรการประดิษฐ์ได้ เช่น เป็นสินค้าที่มีจำหน่ายแพร่หลายอยู่แล้ว หรือเป็นสินค้าที่ไม่มีการคิดค้นแก้ไขปัญหาทางเทคนิคใดๆ เป็นเพียงการคิดค้นต่อยอดจากเดิมเพียงเล็กน้อย ไม่มีอะไรที่ซับซ้อน มีประโยชน์ใช้สอยมากขึ้น ก็อาจจะจดทะเบียนเป็นอนุสิทธิบัตรได้ ซึ่งมีขั้นตอนที่ไม่ยุ่งยากซับซ้อนเหมือนกับการจดสิทธิบัตรการประดิษฐ์
นอกจากนี้ ชื่อยี่ห้อของสินค้ายังสามารถที่จะขอจดทะเบียนเครื่องหมายการค้าได้ เพื่อให้ผู้บริโภคสามารถจดจำและเลือกหาสินค้าได้ถูกต้อง ซึ่งผลก็คือจะทำให้ผู้บริโภคแยกแยะสินค้าออกจากของคู่แข่งได้ และยังป้องกันไม่ให้คนอื่นมาใช้เครื่องหมายการค้ากับสินค้าเดียวกันนี้ได้ด้วย
ขณะเดียวกันหากมีข้อมูลทางการค้า หรือข้อมูลธุรกิจที่เก็บรักษาไว้เป็นความลับก็สามารถที่จะแจ้งข้อมูลความลับทางการค้าได้ด้วย หากมีผู้อื่นมาล่วงละเมิดก็จะมีความผิดทางกฎหมายความลับทางการค้าที่ได้รับความคุ้มครอง จะต้องเป็นข้อมูลการค้าซึ่งยังไม่รู้จักกันโดยทั่วไปและมีประโยชน์ในเชิงพาณิชย์ ผู้ควบคุมความลับทางการค้าจะต้องมีมาตรการที่มีความเหมาะสมในการเก็บความลับทางการค้า เช่น สูตรยา สูตรอาหาร สูตรเครื่องดื่ม สูตรเครื่องสำอาง กรรมวิธีการผลิต ข้อมูลการบริหารธุรกิจ รายละเอียดเกี่ยวกับราคาสินค้า บัญชีรายชื่อลูกค้า เป็นต้น
พร้อมกันนี้ หากสินค้าเกษตร สินค้าสินค้าโอทอป สินค้า SMEs ที่มีการปลูกหรือผลิตในชุมชนใดชุมชนหนึ่งมีความเชื่อมโยงกับแหล่งภูมิศาสตร์ตามธรรมชาติ เช่น สภาพดินฟ้าอากาศ หรือวัตถุดิบเฉพาะในพื้นที่ ทำให้ได้พืชผล หรือผลิตภัณฑ์ที่มีคุณลักษณะพิเศษที่มาจากพื้นที่ดังกล่าว เช่น ไข่เค็มไชยา ส้มโอนครชัยศรี มะขามหวานเพชรบูรณ์ ข้าวหอมมะลิทุ่งกุลาร้องไห้ ผ้าไหมแพรวา เป็นต้น ผู้ที่ผลิตสินค้าเหล่านี้ คนที่อยู่ในชุมชน ตัวแทนในชุมชน และองค์กรส่วนท้องถิ่น สามารถที่จะยื่นขอขึ้นทะเบียนสิ่งบ่งชี้ทางภูมิศาสตร์ได้ เพื่อป้องกันไม่ให้ผู้ผลิตสินค้าที่อยู่ในแหล่งอื่นนำชื่อไปใช้ และป้องกันการแอบอ้าง ใช้ชื่อนี้กับสินค้าที่นำออกจำหน่าย
นอกจากนี้ในการผลิตสินค้า OTOP หรือสินค้า SMEs บางประเภทที่เกิดจากการสร้างสรรค์งานด้วยฝีมือเป็นงานศิลปกรรม เช่น ตุ๊กตา ลวดลายผ้า และรูปปั้น เป็นต้น ยังได้รับความคุ้มครองเป็นงานอันมีลิขสิทธิ์อีกด้วยในประเด็นสุดท้าย สินค้าโอทอป-SMEs สามารถที่จะแจ้งข้อมูลภูมิปัญญาท้องถิ่นไทยได้ด้วย เช่น การผลิตอาหารและเครื่องดื่ม การผลิตผลิตภัณฑ์จากสมุนไพร การผลิตผลิตภัณฑ์จากวัสดุเหลือใช้ และการผลิตผลิตภัณฑ์จากไม้ หิน โลหะ แก้ว เซรามิค ดินเผา เครื่องหนัง และอื่นๆ ซึ่งข้อมูลที่ได้รับการจดแจ้งนั้น จะถูกรวบรวมไว้เป็นฐานข้อมูลสำหรับให้ ประชาชนผู้สนใจได้ค้นหาข้อมูล หรือติดต่อกับผู้แจ้งข้อมูล เพื่อประโยชน์ในทางธุรกิจ อันเป็นการอนุรักษ์และส่งเสริมภูมิปัญญาไทยให้มีการนำไปใช้อย่างเกิดประโยชน์สูงสุดในเชิงพาณิชย์ต่อไป
“จะเห็นได้ว่าสินค้าโอทอป สินค้าของ SMEs จะได้รับความคุ้มครองทรัพย์สินทางปัญญาได้หลายประเภทด้วยการจดทะเบียนและแจ้งข้อมูลทรัพย์สินทางปัญญาได้หลากหลายรูปแบบโดยมีเป้าหมายเพื่อให้มีการคุ้มครองสิทธิ์ของผู้ที่เป็นเจ้าของจริงๆ และป้องกันปัญหาการละเมิด ขณะเดียวกัน ยังอาจนำหลักฐานการจดทะเบียนหรือแจ้งข้อมูลทรัพย์สินทางปัญญารูปแบบต่างๆ ไปเป็นหลักทรัพย์ค้ำประกันกับสถาบันการเงิน เพื่อเข้าร่วมโครงการแปลงทรัพย์สินทางปัญญาเป็นทุนกับรัฐบาลได้ด้วย” นายคณิสสรกล่าวในที่สุด
ทั้งนี้ ผู้ผลิตสินค้าโอทอป ผู้ผลิตสินค้า SMEs ที่ต้องการข้อมูลเพิ่มเติม สามารถติดต่อสอบถามได้ที่โทร 0-2547-4621-5 หรือสายด่วน 1368 หรือ www.ipthailand.org
Sunday, February 27, 2005
[Tech] พิมพ์เอกสารออกมาเป็นไฟล์รูปภาพ
1. เวลาจะพิมพ์งานก็ให้เลือกเครื่องพิมพ์เป็น Microsoft Office Image Document Writer
2. ภาพที่ได้จะอยู่ในรูป mdi (Microsoft Document Image มั้ง) ซึ่งไม่มีใครเปิดได้นอกจากคนที่มีเครื่องมือตัวนั้น วิธีแก้ก็คือ ให้เราใช้โปรแกรมนั้นแหละ convert มันเป็น tif และการแปลงภาพนั้นจะต้องไปเซ็ตค่าเพิ่มเติมเพื่อให้รูปที่ได้มีความเข้ากันได้กับโปรแกรมอื่น (increase compatibility)
3. เมื่อได้ภาพมาแล้ว ก็ให้ใช้โปรแกรมพวก Gimp หรือไม่ก็ Macromedia Fireworks จัดการแปลงภาพ ในกรณีที่เราใช้โปรแกรม Fireworks นั้น ขอให้สังเกตด้วยว่าปรกติเราจะ export ภาพไปเป็นแบบอื่นด้วยคำสั่ง Export ... ไม่ได้นอกจากฟอร์แมตที่เป็นค่า default ที่ขึ้นมาให้ วิธีแก้ก็คือให้ใช้คำสั่ง Export Wizard แทน ซึ่งจะทำให้กำหนดรูปแบบได้หลากหลายขึ้น
เอ่อ ถ้าใครรู้โปรแกรมที่ทำให้พิมพ์งานออกมาเป็นไฟล์รูปภาพได้ช่วยบอกด้วยนะ (จะมีใครมาอ่ารบล็อกเรามั้ยเนี่ย) บางทีเราไม่ต้องการให้มันออกมาเป็น pdf น่ะ ต้องการได้ที่เป็นรูปเลย เอาที่เป็นโปรแกรมฟรีนะ
Thursday, February 24, 2005
[PSU] Reserved Time for Room 220
Tuesday 12.00-14.30
Wednesday 10.00-11.30
and 13.00-15.30
Thursday 10.00-14.30
Friday 10.00-11.00
[Tech] บทเรียนการเขียนโปรแกรมเมื่อวาน
2. To work with matlab compiler, make sure that we include libraries that corresponding to our compiler version. Matlab prepares libraries for every famouse compilers and we need to recompile the old .m file as well.
3. Suffering from using C++ is common if we do not sacrifice some performance for flexibility and convenience by using STL. Study it and use it in regular basis. The loss of performance will not hurt you as much as the loss of time.
Wednesday, February 23, 2005
[Tech] Restore MS Windows Important Files
http://www.windowsbbs.com/showthread.php?t=41007
และคำสั่งที่สำคัญก็คือ
sfc /scannow
แต่พอลองทำดูก็กลัวเหมือนกันว่ามันจะไปแก้ไฟล์ที่ได้มาจากการอัพเดตพวก service pack ไปแล้วทำให้เกิดเรื่องไม่ดีขึ้น ต้องลองใช้ต่อไป
Tuesday, February 22, 2005
[Tech] อีกวันกับ CVS
1. Add Contents
2. Tagging
3. Braching
4. Merge from branches
5. Revision number control
6. Annotate
1. Add Contents
Starting from adding a directory to CVS, we can add all of its contents recursively to ourCVS repository buy using 'Add Contents' in Tortoise CVS interface.
2. Tagging
I guess this is for naming and clarification purpose only. The result, however, will appear in a revision graph and look really nice. One of the main use is to make a tag to several files at the same time. This can make a meaningful custom revision number. For example, if we have three files: file1, file2 and file3 and their revision number 1.11, 1.5 and 1.4 respectively and we want to make note that those three files with the revision numbers are in the same release or at the same milestone in our development, we can issue the same tagg to all the three files.
Note for TortoiseCVS: If we want to update by tag name reference, we sometimes need to update the tag lists before it's available in the GUI. To get the copy by another method such as graph or history, 'update list' is generally unnecessary.
3. Annotate
I am still unable to fully understand it, but this can show us history of each line!!! It displays developer's name whose contributes to each line and revision number that makes the latest change on the line.
4. Branching/Merging
This feature is so confusing. But the guideline of usage is that we can create a branch and then merge it back and commit. If we commit before merging, it will go to the main development line (line before we make a branch). I, however, cannot stop branching and merge everything back to the HEAD development line. In addition, the revision number counting is strange. It show four numbers, not three. Sth. must wrong.
Hey, after some study, I found that the number is correct. If we make a brach from revision 1.5, we will get a branch with revision number 1.5.2.1. The number is in this way because there is internal running number too (main version may be 1.5.1.1).
Another noteworthy stuff is that if we make a mistake about a file and cannot do anything useful with that, we can delete it and use cvs update in the directory to get the file back with fresh start. If the result from the update is not satisfactory, we may use 'update spacial' to specify a branch name for that file. BEWARE: If we use update special to a directory with 'clean copy' option, every file that is not related to the branch in update special command will be deleted.
Then, how to go back to the main development line? When we finish doing something in a branch, we want to go back and make a new revison in the main line. To go back, first make sure we commit any good change to the repository. Second, use 'update special' to get the main branch copy. Third, merge the branch and solve conflict if any. Then, we will see that the file is modified after the merge. If everything is okay, we can commit the change safely. Note that if we make a merge when we are on the branch, the later commit will appear on the branch, not on the main line. In other word, if we want to make new revision at any development line, use update special to get the line and issue commit when appropriate.
Sunday, February 20, 2005
[Tech] วันนี้กับ CVS (โปรแกรมนะ ไม่ใช่ร้านยา)
1. Right click at the file we want to restore, go to cvs menu and choose 'history'.
2. Dialog will pop up and we will see every revision we commited. Right click on a revision we prefer to get a pop up menu. Please read 3 before you move on.
3. There are 'Get this revision (sticky)' and 'Get clean copy of this revision (sticky)'. If we select the first option, we will get the mixture of our current uncommitted edition and the committed one (if no conflict involved). If we choose the second option, we can obtain the fresh start over (or fresh new version).
Explaination: The first option is designed for update/merge, not start over. For example, someone may check out the same file and commit new version. If we want to get the new version without manual copy-paste for update, we can try the first choice. Note that manual copy-paste may be required if there is conflict between committed and uncommitted one.
For second option, we can make a start over at our current option. In case somebody committed new version and we want to retrieve the new one, if we want to throw our uncomitted change away, choose the second option. That's why I said we can both restore or get new version.
Saturday, February 12, 2005
[Tech] Install Large External HD (200GB)
วันนี้ไอ้ฮาร์ดดิสก์กับ enclosure ที่สั่งซื้อไปจาก newegg.com มาใหม่ๆ เป็น Maxtor DimondMax ( MX 200GB 7200 8M ATA133 6B200P0 ) และ ENCLOSE ADI | 3.5 USB HD-360U RT
เพราะว่าเครื่องเป็น service pack 2 มั้งก็เลยไม่ต้องทำอะไรเพิ่มเลย เริ่มมาก็วิ่งไปที่ control panel -> admistrative tools -> computer management -> storage -> disk management
พอไปถึงก็จะตกใจว่า disk ไม่ได้ initialized แล้วก็ไม่รู้จะทำไงดี เพราะคลิกไปที่ properties ของพื้นที่ที่เป็น 'unallocated' ก็ทำอะไรไม่ได้
วิธีแก้ก็คือ ให้ไปคลิกไอคอนที่อยู่ข้างซ้ายของพื้นที่นั้นแล้วก็ init ซะ จากนั้นก็หมดปัญหาแล้ว ต้องทำที่เหลือได้แน่ๆ
Monday, January 24, 2005
[Entertain] Seven things men do that drive women nuts
http://msn.match.com/msn/article.aspx?articleid=3163&TrackingID=516311&BannerID=544657>1=6038
Seven things men do that drive women nuts
| I believe it was Socrates who said, “Women are insane, and men are dumb.” Then again, it might’ve been Anaïs Nin. Or maybe Simone de Beauvoir. In any event, if women are indeed insane – which I’m not convinced of – it’s only because us men are dumb. I’m not talking dumb in the I.Q. sense, but rather dumb in the clueless sense, especially when it comes to certain aspects of dating and mating.
Be it logistical or emotional, there are things us guys do or don’t do that justifiably raise the collective dander of our girlfriends and/or wives. Here are seven ways to keep your significant other’s blood pressure at a healthy level: Put the toilet seat down Guaranteed if you’re not a conscientious seat-putter-downer, you hear this complaint so often that it flies in one hear and out the other. Well, boys, there’s a very valid reason this is a common kvetch: WOMEN DON’T LIKE FALLING INTO THE TOILET WHEN THEY GET UP TO USE THE BATHROOM AT 3:30 A.M.! I mean, would you want to end up with your butt in the toilet at 3:30 A.M.? Didn’t think so. Clean up Men are neat, while women are clean. To elaborate: A guy’s place may look perfect; for example, all of his “art” is in its place on the shelves, and the floor is empty of shoes, remote controls, and various other dude detritus. But when your girl examines the shelf area under that aforementioned “art,” there’s a 75% chance she’ll come upon a half-inch coating of dust. Girls, on the other hand, may have a pile of to-be-put-away clean clothes on her bedroom floor, but at least their space is clean. Get it? Good. Be emotionally available Another frequent complaint, which isn’t as easy to alleviate as the toilet situation. Many of my male brethren have spent a lifetime bottling up their feelings, and it’s hard to open up just like that. You can’t become a totally communicative guy overnight, but she’ll appreciate if you put forth a legitimate effort. If you tell her you’ll call her on Thursday, call her on Thursday You’re not in high school anymore. Quit playing head games, and get dialing. Groom yourself Based on personal experience, I know women dislike walking down the street with a guy who doesn’t keep his fingernails clipped, or his shirt and pants relatively wrinkle- and hole-free, or his armpits un-stinky. Put together an original night out Dinner and a movie? C’mon, you did that last week. And the week before. And the week before that. One more week, and you’ve officially entered Dullsville. Take her bowling, or to a museum… or any place other than to dinner and a movie. Be romantic If your girlfriend finds out one of her girlfriend’s boyfriend gave her a dozen “just because” roses – and the only “just because” gift you’ve ever given your girl is a ticket to a Cleveland Indians game – she’ll want to throttle you. And if that’s the case, you’ll deserve a throttling. | |
[Life] สุ่ความมีประสิทธิภาพ (3)
I come so far; I will not throw it away.
เราตอนนี้แทบจะไม่เคยตระหนักถึงจุดหมายแห่งการมีชีวิตอยู่ของเราแล้ว เราไม่ได้ตระหนักถึงมันทำให้เราอ่อนแอลง ใช่จำไว้เสมอนะว่าเราต้องการที่จะเปลี่ยนแปลงวัฒนธรรมของสังคมที่เราอยู่ไปในทางที่ดีขึ้น เราจะต้องนำศาสนาอันดีกลับมาสู่ความยิ่งใหญ่ และเราจะไม่ยอมแพ้ต่อความลำบากทุกข์ยากใดๆที่เราจะพานพบทั้งในอดีต ปัจจุบัน และในอนาคต
แต่การที่เราจะไปถึงจุดนั้นให้ได้ เราก็ต้องแสดงให้สังคมได้เห็นก่อนว่าการที่เรามีศาสนา มีความดีเป็นเสาหลักแห่งการดำเนินชีวิต ก็ทำให้เราไปถึงความสำเร็จอันยิ่งยวดได้ เราต้องทำให้คนอื่นได้เชื่อว่าศาสนาเป็นสิ่งที่นำมาปฏิบัติให้เกิดประโยชน์ในดินแดนทั้งสองได้พร้อมกัน คือ อาณาจักร และ ศาสนจักร เราจะต้องทำให้ของสองสิ่งรุ่งโรจน์ได้พร้อมกัน
เราจะต้องฟันฝ่าอุปสรรคแห่งความบกพร่องภายในของเราไปให้ได้ และเราจะบอกกับลูกศิษย์ทั้งหลายที่เราจะได้พบในอนาคตว่า เขาจะทำอย่างไรจึงจะไปถึงที่สุดแห่งศักภาพโดยที่ใช้ชีวิตภายใต้ความดีงามของตนได้
แล้วอะไรคือเป้าหมายย่อยที่จะทำให้เราแสดงความเก่งกล้าในทางโลกออกมาได้บ้างล่ะ?
เพราะวิธีการที่เราได้เลือกใช้ที่จะไปถึงจุดหมายสูงสุดของเราคือ การช่วยเหลือคนด้วยวิถีทางที่มีประโยชน์ในทางโลก พร้อมกับแทรกหลักธรรมต่างๆเข้าไปให้เป็นส่วนหนึ่งของวิถีชีวิตอีกฝ่าย ดังนั้นเราต้องทำให้อีกฝ่ายได้มองเห็นประโยชน์ในทางโลกก่อน แล้วจึงยกย่องประโยชน์ในทางธรรม
และนั่นคือคำถาม เราต้องทำอะไรมั่งจึงจะมีความสามารถพอที่จะทำให้คนอื่นประทับใจเราได้
1. เราต้องสั่งสมความสามารถพื้นฐานที่จะเกี่ยวกับงานของเราก่อน ซึ่งได้แก่
1.1. ภาษาอังกฤษ (Speak/Pronunciation, Read and Write)
1.2. แคลคูลัส
1.3. พีชคณิตเชิงเส้น (Linear Algebra)
1.4. Combinatorics and Statistics
1.5. Math Trick and Algorithm
2. ความรู้ทั่วไปที่จะทำให้คุยเล่นสนุกๆกับคนอื่นได้
2.1. มิลินทปัญหา
2.2. เรื่องทางพุทธศาสนาที่อยู่ในมติชน
[Life] สู่ความมีประสิทธิภาพ (2)
From Palmistry Book:
Horizontal lines across the end zone (Fig. 3-56) indicate
blockages to will power and determination. These are selfimposed,
self-defeating patterns of resistance to exercising one's will
power. These lines reveal that the person probably is not getting
maximum results in many areas of life, due to her or his own selfsabotage.
The challenge for this person is to identify what prior experiences
are subconsciously causing the self-sabotage.
เราไม่มีทางรู้ถึงอดีตตรงนั้นได้เลย เรารู้แต่ว่าข้อความเกี่ยวกับ will power และ determination นั้นเป็นจริง แต่เราหาอดีตนั้นไม่เจอ มันอาจจะเป็นมาแต่ก่อนเกิดก็ได้ ดังนั้นเราขอให้สุขนิสัยและสมาธิเพื่อเพิ่ม will power และ determination ของตัวเอง There is more than one way to do it.
นอกจากนี้เรายังมีเครื่องกีดกั้นการใช้เหตุผลและตรรกะอยู่อีก ดังนั้นเราต้องมีสติรู้เท่าทันตัวเองอยุ่เสมอ
เราทำงานได้ดีเมื่อมีทรัพยากรมาก และสามารถเข้าใจกลไกการทำงานของสิ่งต่างๆได้ดี
From Palmistry Book:
When this zone is wide at the bottom and narrow at the top
(Fig. 4-22), it shows this person starts one thing, stops doing
that because she or he wants to do something else, and later
switches back to the original plan.
บางทีอาจเป็นเพราะความเป็น Wishy-Washy มันบล็อคอำนาจจิตเราไว้ ทำให้เราอ่อนแอลงไป ดังนั้นเราต้องแก้ไขตรงนี้ เราขอเริ่มด้วยสุขลักษณะขั้นที่สอง Three Hour Session of Hard Working
แบบว่าเคยใช้มาก่อนแล้วทำให้ประสิธิภาพมันสูงมากเพราะเราแทบไม่มีการเคลื่อนไหวไปเป็นอย่างอื่น ทำให้จดจ่อมากขึ้นและเปลี่ยนงานไปมาน้อยลง
ควรลดการใช้คอมพิวเตอร์ให้น้อยลงเพราะความสามารถในการรบกวนสมาธิืมันสูงมาก เรายังต้องวางแผนและจัดระเบียบสิ่งต่างๆอีกมาก เพื่อให้รู้ว่าเราต้องการอะไรกันแน่ และจะได้ไม่ลืมที่จะเติมเต็มมันได้ตลอดอย่างมีประสิทธิภาพ
[Life] สุ่ความมีประสิทธิภาพ (1)
อันดับแรกเราจะต้องตระหนักถึงจุดหมายและพยายามไปถึงจุดหมายให้เร็วที่สุด ความพยายามที่จะก้าวไปให้เร็วที่สุดนี่หละคือกุญแจสำคัญสู่ความต้านทานความง่วง อย่างเมื่อสักครู่เราเริ่มรู้สึกง่วง แต่เราตระหนักถึงจุดหมายและเร่งรุดสู่การทำงาน ทำให้ความง่วงถูกกีดกันไว้ให้อยู่ในระดับต่ำๆเท่านั้น
แล้วทำยังไงเราถึงจะมีสติพอที่จะระลึกถึงเป้าหมายได้ล่ะ?
จำไว้อย่างนึงเลยว่าการนั่งหลังตรงไม่เกร็งเกินไป และการวางเท้าที่ไม่ไขว่ห้างมีส่วนช่วยอย่างมาก เพราะมันทำให้ร่างกายเราอยู่ในระเบียบที่สะท้อนถึงความมั่นคงออกมาได้ และนั่นหมายถึงจิตใจด้วย
ดังนั้นจงตระหนักถึงการจัดระเบียบร่างกายกายด้วย
ความเร่งรุดสำคัญมากต่องานประเภทหนึ่ง ซึ่งงานเราอาจจะแบ่งได้สองกลุ่มหลักคือ
1. Less Creativity and Skill Oriented
2. High Creativity and Profound Understanding
พวกที่ใช้ความคิดสร้างสรรค์ต่ำ และเน้นความชำนาญได้แก่งานด้านการฝึกเขียนโปรแกรม และงานการฝึกทำโจทย์เลขทั่วไป พวกนี้เน้นการจำ pattern ไปเรื่อยๆ ตรงนี้สำหรับบางคนจะพบว่าต้องใช้จินตนาการมากให้การตรวจหาและสร้าง pattern แต่บังเอิญว่าเรามีพรสวรรค์ด้านนี้ดีมากทำให้เรารู้สึกว่ามันเป็นงานกลุ่ม less creativity ไปโดยปริยาย
กับงานกลุ่มนี้ก็ขอให้เราบุกดงเ้ข้าไปลุยเลย และพยายามจับเวลาให้ตัวเองเสมอ และสังเกตด้วยว่าอะไรที่ทำให้เราช้าไป เพราะจริงๆแล้วของที่ทำให้เราช้าไปมันมีอยู่ไม่กี่แบบหรอก แต่มันกลับทำให้เราช้าได้เสมอ
เนื่องจากเรามีความประสงค์ที่จะเก็บบันทึกงานไว้บ่อยๆ ดังนั้นเราก็จะทำ snap shot สำหรับโปรแกรมไว้ด้วย และจะพิมพ์บันทึกวิธีแก้โจทย์ไว้ให้เรียกอ่านดูภายหลังได้แบบง่ายๆเสมอ
[Life] อดีตรำลึก
เมื่อเราตกอยู่ในสภาพแบบนี้เราก็อดนึกถึงอดีตของตัวเองในสมัย ม 6 กับ ปีหนึ่งเทอมต้นไม่ได้
ตอนนั้นการทำงานประสิทธิผลสูงมาก ไม่ใช่เพราะนอนน้อยจึงมีเวลามาก แต่เป็นเพราะว่าเราทำงานมีประสิทธิภาพ โดยทั่วไปเรานอนวันละเกือบ 8 ชั่วโมงทีเดียว ตอนที่นอน 6 ทุ่ม เรารู้สึกว่ามันดึกมากๆเลย (ปรกตินอนตอน 4 ทุ่มครี่ง)
เราไม่ได้คิดอยากจะจมอยู่ในอดีตที่รุ่งโรจน์ แต่เราก็ต้องคิดถึงเรื่องนี้เพื่อตัวเองในปัจจุบันและอนาคต และเราต้องทำอะไรสักอย่างเพื่อไปให้ถึงจุดประสงค์อันดีที่เราปรารถนาไว้ และสิ่งหนึ่งที่เราเห็นว่าเป็นกุญแจสำคัญของประสิทธิภาพคือ สุขนิสัย, เป้าหมายของการทำงาน และ สมาธิ
ปัจจุบันเรามีเป้าหมายในการทำงานมาก เพราะเราต้องสู้กับปัจจัยของความไม่แน่นอนหลายอย่าง และมันก็เป็นสิ่งที่นำไปสู่การล่วงเวลา และทำลายสุขนิสัยอันดี เมื่อเป็นเช่นนี้เราก็อยากจะบอกกับตนเองว่า ต่อไปนี้ขอให้รู้ด้วยว่าเป้าหมายของการทำงานคือสุขนิสัย คือต้องไม่ทำให้เกิดการล่วงเวลา งานของเราเป็นงานระยะยาวและแน่นอนว่า สุขนิสัยในระยะยาวย่อมสำคัญกว่า
นอกจากประสบการณ์ตรงและงานวิจัยบางอย่างที่เคยอ่านมา เราพบว่าการตื่นเช้าเป็นเรื่องที่ดีมาก และเราก็จะตื่นเช้าให้ได้ ต่อไปนี้เราจะตื่นตอน 6.30 น. ให้ได้ และนอนตอนประมาณ 4 ทุ่มครึ่ง นี่เป็นสุขนิสัยประการที่หนึ่งที่เราจะปฏิบัติให้ได้
ส่วนอันต่อไปที่จะสร้างก็คือ ความสามารถให้การต้านทานความง่วง ในช่วงที่รุ่งโรจน์ เราไม่เคยวกกลับไปนอนต่อบนเตียงเลย ไม่ว่าตอนตื่นขึ้นมาเราจะง่วงแค่ไหน และตอนกลางวันแม้จะง่วงมาก เราก้ไม่เคยยี่หระ (จริงๆแล้วเราอาจจะไม่เคยง่วงมากก็ได้ เพราะว่าเรามีสมาธิที่แข็งแกร่งเกินกว่าที่จะง่วงได้) ที่เราทำได้ก็เพราะว่าเราทำให้รู้สึกมีความตื่นเต้นกับการสู้กับอุปสรรคและจะเอาชนะตัวเองให้ได้อยู่ตลอด แต่ในวันนี้เราไม่คิดที่จะชนะตัวเอง ทำให้เรารู้สึกว่างเปล่าในชีวิตและไม่มีกำลังใจที่จะต่อสู้เพื่ออนาคตอันดีสักเท่าไหร่ เราอาจจะเป็นคนดีเช่นเดิม แต่นั่นไม่เพียงพอที่จะนำคนอื่นไปสู่ความดีได้ เราต้องแสดงให้คนอื่นเห็นถึงความสำเร็จของคนดี และวิธีที่จะนำไปสู่ความสำเร็จนั้นให้ได้ เราต้องนีกอยู่ในใจตลอดว่า ต้องสู้
Saturday, January 22, 2005
[Link] Useful Links
1. Image Processing Fundamental
This includes derivative, morphological and convolution-based operations.
http://www.ph.tn.tudelft.nl/Courses/FIP/noframes/fip-Contents.html
1.1 Snake Implementation
http://iacl.ece.jhu.edu/projects/gvf/
http://www.slaney.org/malcolm/pubs.html
2. CVS Daily Use Guide and Complete Reference
Daily Use Guide: http://www.thathost.com/wincvs-howto/
Complete Reference: http://www.thathost.com/wincvs-howto/cvsdoc/
3. CVS GUI Websites
TortoiseCVS: http://www.tortoisecvs.org/
CvsGui (Cross-Platform, but no further development): http://www.wincvs.org/
แต่ WinCVS ที่อยู่ใน SourceForge ก็ดูเหมือนจะเป็นคนละตัวกัน ที่อยู่บน SourceForge นั้นยังดูมีการพัฒนาต่อ บางที wincvs.org อาจจะไม่ยอมอัพเดตตามก็ได้
4. Audacity (Sound Recorder)
เป็นตัวบันทึกเสียงจากช่องไมโครโฟนที่ดูดีมากและฟรี สามารถดาวน์โหลดได้จาก http://audacity.sourceforge.net/ เสียตรงที่ตั้งเวลาอัดไม่ได้ (หรือว่าเราอาจจะทำไม่เป็นเองก็ได้)
ข้อดีของ Audacity ก็คือ ไม่ต้องติดตั้ง แค่ก๊อปปี้ไฟล์ไปไว้บนดิสก์ก็รันได้เลย
5. ฐานข้อมูลด้านการประมวลผลภาษาธรรมชาติที่ใหญ่ที่สุดในโลก (ตามคำบอกเล่าของ bact)
:The Linguist List
http://linguistlist.org/
6. Matlab External Interface Reference
ฟังก์ชันส่วนใหญ่จะอยู่ในหมวด 'C-MX Functions' ซึ่งถ้าสังเกตให้ดีๆก็จะเห็นว่าฟังก์ชันที่เราเรียกให้นั้น มันนำหน้าด้วย mx หมดเลย (มี mlf ปนมาอยู่บ้าง)
http://www.mathworks.com/access/helpdesk/help/techdoc/apiref/apiref.html
สำหรับ float ในภาษา C มันจะเทียบได้กลับ mxSINGLE_CLASS ใน matlab
7. Reflection in C++
http://www.vollmann.com/en/pubs/meta/meta/meta.html
8. Atlas/Blas/Lapack (in VC++)
http://www.cs.unc.edu/~kim/lapack/
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/matlisp/matlisp/lib/
http://www.nacse.org/demos/lapack/
http://www.inf.bv.tum.de/~heisserer/softwarelab04/
http://www.math.utah.edu/software/lapack/
9. Function Pointer and Callback Function Tutorial
http://www.newty.de/fpt/index.html
10. Multimedia Software
โปรแกรมตัดต่อและแปลงฟอร์แมตไฟล์ http://www.eo-video.com/
โปรแกรมจับหน้าจอสตรีมมิ่ง http://wmrecorder.com/
11. About IDE
11.1 VS 2005 Enchancement http://www.codeguru.com/columns/Kate/article.php/c9167/
12. PHP and Related
12.1 PHP-Nuke and SQLite http://www.tanguay.at/installPhp5.php5?step=1
Tuesday, January 11, 2005
[Tech] Try to Display PHP Error Message on a User Page
To do that, edit php.ini file and find a line with display_errors then set it to 'on', not 'off'. More info can be found in the php.ini itself or in the PHP manual.
Monday, January 10, 2005
[Tech] UpdateData method in MFC
To preserve user input before writing over it, we can use UpdateData ( TRUE ) and then perform business logic to modify document variables. When we are ready to update the View, use UpdateData ( FALSE ) and the variables we modified will affect the View.
[Tech] Enable Debugging Ability in VC++ 6
1. Click on the project name in 'Project Settings' (can be reached by a menu Project->Settings).
2. Choose a tab, 'C/C++', and see the settings for category 'General'. Make sure that the 'Debug Info' is not set to 'None' ('Program Database' recommended).
3. Next change to a tab, 'Link', and go to 'Debug' category. Make sure that the 'Debug Info' check box is checked.
Note that a break point in .h file can be set too. Just make sure that the previous steps are done correctly.
Thursday, January 06, 2005
[Tech] CVSnt กับ TortoiseCVS
สำหรับ CVS นี่ก็แปลกอยู่อย่างหนึ่งตรงที่ว่า Document มันไม่ได้ลงมาให้ในเครื่อง แต่จะลงลิงค์มาให้แทน งงเหมือนกันว่าต้องการให้อ่านเอกสารที่อัพเดตขนาดนั้นเลยเหรอ
(วันที่ 7 มกราคม) พบแล้ว มันให้มาเป็นไฟล์ chm เลย ดีมากๆ ใช้งานง่ายถึงจะไม่ครอสแพลตฟอร์มก็ตามเหอะ
สำหรับ password จะตั้งเป็น mycvsnt6 นะ เอาไว้ใช้ส่วนตัวเท่านั้นก็เลยเอามาแปะไว้ในนี้เลย
ตอนนี้ยังไม่ได้ลองคอนฟิกดู ถ้าทำได้แล้วจะมาบันทึกใหม่อีกรอบ
(Jan 7, 2005)
1. We can add the repository by:
cvs -d "F:/thai_club_repository" init
2. We can add a user by:
cvs -d "F:/thai_club_repos" passwd -a -r pinyo pinyotae
pinyo is a 'real' user in a system (should be a machine that host repository--not confirmed).
pinyotae is a user for the cvs system.
Note that the directory is specified every time because I have no CVSROOT value.
3. Now, we are ready to add something to the repository (actually, if everything is on local disk and we do not use any remote protocal, we can skip the step 2).
3.1. We can import our on going files into CVSROOT by
3.1.1. Go to the directory of the files.
3.1.2. Issue a command: cvs import -m "import thai club files" thai_club_project pinyotae start.
The above command imports files in your current directory into $CVSROOT/CVSROOT/thai_club_project. 'pinyotae' is a vendor name and start is a release tag.
3.2. The import makes the 'thai_club_project' directory a module we can check out.
4. Ready to check out!
4.1. Remember to check only the module you added. DO NOT check out '.' module; that will retrieve the CVSROOT directory too.
4.2. The directory (and EVERY THING inside it) you use TortoiseCVS to check out will be under CVS control. Thus, do not use TortoiseCVS at root directory of a drive. It makes all content in the drive your CVS local version. Make sure that you check out in a prepared directory.
[Entertain] กลอนรักสุนทรภู่
(ว่าแต่ไอ้กลอนนี้ใช่ของสุนทรภู่รึเปล่าหว่า)
ถึงม้วยดิน สิ้นฟ้า มหาสมุทร
ไม่สิ้นสุด ความรัก สมัครสมาน
แม้อยู่ใน ใต้หล้า สุธาธาร
ขอพบพาน พิศวาส ไม่คลาดครา
แม้นเนื้อเย็น เป็นห้วง มหรรณพ
พี่ขอพบ ศรีสวัสดิ์ เป็นมัจฉา
แม้เป็นบัว ตัวพี่เป็น ภุมรา
เชยผกา โกสุม ปทุมทอง
แม้เป็นถ้ำ อำไพ ใคร่เป็นหงษ์
จะร่อนลง สิงสู่ เป็นคู่สอง
ขอติดตาม ทรามสงวน นวลละออง
เป็นคู่ครอง พิศวาส ทุกชาติไป
Tuesday, January 04, 2005
[Cook] วิธีทำแกงกะหรี่ที่พี่ยศสอนมา
ส่วนประกอบ
1. เครื่องแกงกะหรี่ 4 ก้อน
2. ฺิBreast Chicken 1.5 pound (เอาส่วนอื่นก็ได้ แต่ส่วนนี้มีมันน้อย)
3. หอมหัวใหญ่(มาก) หั่นแบบสับ
4. มันฝรั่ง 4 หัว ถ้าใช้แบบสีแดงไม่้ต้องปอกเปลือก
5. Carrot 1/2 pound
6. Green Pepper 2 pieces (bell pepper)
7. เนยครึ่งแท่ง
8. เกลือ 2+ ช้อนชา
9. น้ำตาลหนึ่งช้อนโต๊ะ
10. Kikoman
วิธีทำ
1. หั่นไก่ชิ้นพองาม และ สับหอมหัวใหญ่
2. หั่นมันฝรั่งและล้างผักอื่นๆให้เรียบร้อย
3. เอาเนยและหอมใส่ลงไป รอจนเนยเริ่ม stale
4. เอาไก่ที่หั่นไว้ใส่ลงไป
5. ใส่เกลือ 2+ ช้อนชา (ที่ใส่บวกไว้เพราะบางทีมันน้อยไป แต่ก็ไม่ควรจะใส่มากไป)
ุ6. พอไก่เริ่มสุกก็ใส่น้ำลงไปสามถ้วยตวง
7. ระหว่างที่รอน้ำเดือดก็หั่นแครอทไว้ซะ
8. ตามด้วยการหั่น pepper โดยทิ้งหัวกับเม็ดมันไป (ถ้าหั่นไม่ทันก็รอทำหลังข้อ 9)
9. พอน้ำเดือดได้ 4 นาที(เพื่อให้เนื้อนิ่มพอ ถ้าใช้หมูต้องรอนานขึ้น) ก็ใส่ แครอทและมันฝรั่งลงไป
10. รอจนมันเดือดก็ใส่ pepper ลงไป รอไปอีก 5 นาที (เพื่อให้มันฝรั่งสุก)
11. ใส่น้ำตาลลงไป 1 ช้อนโต๊ะ
12. อย่าพึ่งแกะซองก้อนแกง ให้หักมันเป็นสี่ชิ้นเพราะเราต้องใส่มันไปแบบกระจายๆในหม้อ
13. ใส่ก้อนแกงลงไป 4 ก้อน (ถ้ามันเหลวก็ต้องเพิ่มเป็น 5 ก้อน) แล้วก็คนไปเรื่อยๆ แต่ถ้าคนมากไปมันฝรั่งจะละลายไปกับน้ำแกงกะหรี่
14. ใส่ Kikoman 1 ช้อนโต๊ะ ใส่พริกป่นและ black pepper
15. คนจนแ่น่ใจว่าได้ที่
จบ
Sunday, January 02, 2005
[Tech] Webmail Address Logon Page on Ace-Host.net
https://65.254.55.114:2096/webmaillogout.cgi
แต่ไม่รู้เหมือนกันว่าเวลาที่เราจะตั้งให้ดูดเมล์มาที่เมล์ไคลเอนต์ที่เครื่องต้องทำยังไง เพราะเรามีปัญหาว่าค่า IP ที่เราตั้งไว้ตอนจดโดเมนเนม มันแปลกๆยังไงก็ไม่รู้ ต้องศึกษากันต่อไปอีก
อ๊ะ ทำได้แล้ว แต่ยังไม่ดีเท่่าไหร่ เพราะเรายังต้องเขียน address ของเซิร์ฟเวอร์เป็น fresh.securenet-server.net ไม่สามารถใช้เป็น psuthaiclub.net ได้ ทำตามนี้นะ
1. ใช้เมล์แบบ POP3
2. ทั้ง Incoming และ Outgoing ให้ใช้เป็น fresh.securenet-server.net ทั้งคู่
3. Account Name ให้ใช้เป็น thaipsu
(ในกรณีที่เป็น account ลูก account name จะเป็น pinyotae+psuthaiclub.net ทำนองเนี้ย)
