เหตุของการเขียนโปรแกรม

...เนื่องจากข้าพเจ้า มิได้เป็น programer จึงทำให้รูปแบบหน้าตา และการใช้งาน อาจจะดูไม่มีสีสรร เน้นการใช้งาน ให้ได้ข้อมูลที่จะนำไปใช้ให้ได้เป็นประโยชน์จริงๆเป็นหลักใหญ่ จึงมิได้จัดทำรูปแบบอะไรมาก และไม่มีการโปรโมทเว็ป หรือ แปะโฆษณาใดๆ ต้องการให้ทุกคนที่เห็นคุณค่าเข้ามาใช้งานได้อย่างสะดวก..
..การเขียนโปรแกรม หาพื้นที่ดิน ตามมาตราวัดของไทย มีหน่วยเป็นไร่, งาน,ตารางวานั้น เกิดมาจาก เมื่อก่อนข้าพเจ้าถูกขอให้ช่วยคำนวณพื้นที่ ที่ต้องการจะซื้อขายกัน ตอนนั้นไม่มีความรู้เรื่องของหน่วยพื้นที่ไทย ว่าเขาแปลงหน่วยกันอย่างไร จึงออกไปดูวิธีการวัดความยาวของด้านทั้ง 4 ก็ใช้ตลับเมตรยาวขึง หรือใช้เชือกขึงไปตามขอบพื้นที่ วัดหมุดต่อหมุด มีหน่วยที่ใช้คือ เมตร
จากนั้น ก็ดูชาวบ้านเขาคิดคำนวณให้ดูว่า 1 วา = 2 เมตร , เขาก็คิด กว้าง × ยาว ในหน่วย วา คือ คิด หาร 2 ค่าที่วัดได้ มาคูณกันตรงๆ เหมือน พื้นที่สี่เหลี่ยมผืนผ้า ธรรมดาๆตรงๆ  แค่ประยุกต์ เอาด้านตรงข้าม 2 ด้านมาบวก แล้วเฉลี่ย หาร 2 จึงนำค่าเฉลี่ยมาคูณ แล้วได้ค่าออกมาเป็น ไร่,งาน, ตารางวา
...ข้าพเจ้าคิดทบทวนอยู่นาน หลังจากวันที่ได้เห็นการกระทำอย่างนั้น
..อันดับแรก คือ ทบทวนว่า การแปลงจาก เมตรเป็นวา ก่อน ไปหาข้อมูล ก็ได้ว่า
1 วา = 2 เมตร ดังนั้น
1 ตร.วา = 4 ตร.ม.
คิดพื้นที่ 1 งาน = 100 ตร.วา = 400 ตร.ม.
การคิดเช่นนี้จึงพิจารณาเห็นว่า
คนสมัยโบราณ ใช้ร่างกายในการวัดความยาว คือมีมือ กางนิ้วออก เป็น คืบ
เทียบ คืบ กับ ศอก ได้
2 คืบ = 1 ศอก
พับศอกเข้าหาตัว ดังนั้น กางแขนออกจนสุด จะได้ 4 ศอก เรียก 1 วา
คราวนี้ ระยะก้าวเดิน ก็ใช้เส้นเชือกขึงเทียบ ให้ได้ 20 วา = 1 เส้น
ดังนั้น ถ้าเอามาคิดเป็นพื้นที่
1 เส้น × 1 เส้น = 1 ไร่
และคิดลดลงมา ถ้ากางแค่ 10 วา
ก็สามารถแบ่งพื้นที่ไร่ออกเป็น 4 ส่วน
ดังนั้นจึงคิด 4 งาน = 1 ไร่
จึงเห็นได้ว่า
1 ไร่ = 400 ตร.วา
1 งาน = 100 ตร.วา
 แต่เมื่อยุคสมัยเปลี่ยนไป หน่วยสากลเข้ามาเป็นที่นิยม แต่คนทำไร่ ทำนา ทำสวน ก็ยังคง วัดความยาว และพื้นที่ แบบเดิม
เช่น เสาสูง กี่ศอก, ไกลกันกี่เส้น กี่วา หรือใกล้กันแค่คืบ เป็นต้น
ในด้านการวัด คำนวณพื้นที่ ก็คงใช้ ไร่ งาน และ ตร.วา เช่นเดิม
จึงนำเอาความยาว 1 วา ที่เคยใช้ มาเขาระบบสากล เมตริก คือ เมตร เราอ้างอิงแบบนี้ มิได้ใช้ ฟุต, นิ้ว, ไมล์ มาใช้
จึงเทียบ 1 วา = 2 เมตร เปนหลักตายตัว
การเทียบหาค่าหน่วยความยาว และพื้นที่ จึงเข้าใจ สามารถเขียนสูตรคำนวณได้
แต่พอมาคิดพื้นที่รูปสี่เหลี่ยม ครั้งแรกหาได้ตามนี้คือ
เมื่อคราวเขียนใส่โปรแกรม มาโครของ Ms Access ให้ผู้อื่นมา download ไปใช้งานนั้น มาทบทวนดูหลายๆครั้ง ค่าพื้นที่ไม่ตรงกับความจริง
จึงเปลี่ยนมาใช้ สูตรหาพื้นที่ สามเหลี่ยมด้านไม่เท่า 2 รูป มาบวกกัน พยายามหา จาก internet หลายสูตร จนพบ สูตรที่ใช้ ณ ปัจจุบัน เป็นของต่างประเทศ ซึ่งตอนนั้น ยังไม่พบว่า สูตรนี้ในประเทศไทยมี แต่ยังไม่ลงไว้หรืออย่างไร แต่ตอนนี้ มีแพร่หลายแล้ว
นำมาทดสอบแล้ว สามารถใช้ได้ แม้แต่ 3 เหลี่ยมด้านเท่า และไม่เท่าก็สามารถใช้งานได้ตรง จึงมั่นใจว่า สามารถเผยแพร่ให้สาธารณะชนไดใช้ จึงเขียน ใน blogger เป็นภาษา java ก็ไม่เคยเรียนมาแต่อย่างใด เข้าเวป เอาตัวอย่างมาทดสอบ ทดลอง จนเข้าใจการสื่อสาร ว่ารับเข้าอย่างไร ประมวลผลอย่างไร และแสดงค่าอย่างไร
จึงนำมาเขียนไว้ และมิได้ปรับปรุงอะไรมาก ได้เห็น web อื่นนำเอาไปเขียนปรับปรุงให้ดูดีขึ้น ก็น่าชื่นชมในการจัดทำให้เป็นประโยชน์ เพื่อสาธารณะประโยชน์ต่อๆไป
...
โปรแกรมต่อมาคือ เรื่องหลังคา, อิฐก่อผนัง 
, ปูนฉาบผนัง และ คอนกรีตเทพื้น
สิ่งเหล่านี้ เกิดจากประสบการณ์งานด้านก่อสร้างเป็นสำคัญ เพราะครั้งแรกๆ ที่เข้าไปทำงาน ก็สอบถามช่างบ้าง หรือวิศวกรที่ทำงานร่วมกัน ว่าเป็นอย่างไร? 
เพราะมิได้จบมาทางด้านนี้ เพราะส่วนตัวจบมาทางด้านไฟฟ้า งานก่อสร้าง,โยธา ก็ต้องมาเรียนรู้หน้างานเอาใหม่หมดกว่าจะจับหลักการได้ สิ่งเหล่านี้เกิดเพราะเมื่อเข้าไปทำงานร่วมกัน และอาศัยสังเกตุศึกษาเอาทั้งหมด อาจมีผิดพลาดได้แน่นอน ขอออกตัวในที่นี้ไว้ก่อน..
.. การคิดค่าหลังคา คนมักมองไม่เห็นว่า หลังคานั้นยาวไม่เท่ากับพื้น คิดพื้นที่พื้นแล้วจะคิดหลังคาได้เลย..เช่นนี้ เข้าใจผิดเหมือนผู้เขียนในตอนต้น จนได้มาสังเกตุเห็นว่า ที่เราคิดผิดเพราะ ไม่เห็นว่ามันเอียงหรือไง? คราวนี้เอียงแล้วจะเอาอะไรมาจับ มาวัดพื้นที่ได้?
คำตอบ คือ " มุม" ตรีโกณมิติ คือทางออก ที่เราจะรู้ได้
คราวนี้ ตรีโกณฯที่เรียนมา อันมีแค่มุม 0', 30', 45', 60', และ 90' มันจะยังไงกันดีหนอ? คราวนี้จำได้ว่า
ทั้ง sin, cos, tan, arcsin, arccos,arctan ยังพอหาค่าได้ 
เมื่อได้มุม ความยาวของด้านเอียงก็ได้ บวกระยะยื่นให้ครบ นำมาคูณกับด้านไม่เอียง ก็จะได้พื้นที่หลังคาแล้วเพิงหมาแหงนแล้ว หากเป็นหน้าจั่ว ก็คิดข้างเดียว นำมาคูณ 2 ก็ได้ ปั้นหยาคิดยากหน่อย แต่ยึดหลักว่าเอียง 45' ทุกด้าน ก็เป็นพื้นที่ สี่เหลี่ยมคางหมู สามารถหาพื้นที่ได้ แล้วจึงนำเอา พื้นที่ไปคิดตามวัสดุหลังคา ที่แต่ละชนิดมีขนาดไม่เท่ากัน มาตรฐานผู้ผลิตให้เอาไว้แล้วมีการเผื่อทับซ้อนเรียบร้อย จึงไม่ต้องคำนวณเผื่ออีก จึงสามารถเขียนได้อีกโปรแกรม
...โปรแกรมหาจำนวนอิฐฝาผนัง ก็เช่นกัน เคยถามช่าง ถามร้านให้คำนวณ ก็ไม่ค่อยจะตรง ทั้งๆที่ไม่มีอะไรมาก ผนังเป็นพื้นที่ตรงๆ คือ กว้าง × สูง ลบ พื้นที่ประตูหน้าต่างออก นำไปหารพื้นที่ของก้อนอิฐที่ต้องการใช้ ก็จะได้จำนวนที่ต้องการแล้ว
ส่วน ปูนที่ใช้ฉาบ ใช้ก่อ หาข้อมูลจากใน web ต่างๆที่รวมสถิติ และข้อมูลผลิตภัณฑ์การผสมใช้งาน นำมาคิดต่อพื้นที่ ก็เขียนออกมาได้
...โปรแกรมส่วนผสมปูน คอนกรีต ปริมาณคอนกรีต ก็ต้องรู้จักคำว่า คิว ก่อน กว่าจะไปทราบก็งงหลายตลบ เพราะอย่างว่าแหละ เรียนไฟฟ้ามา พอมาเจองานโยธา ตกม้าตายแต่ยกแรก จึงรู้ว่าที่เรียกคิวคือ Cu.m. หรือ ลูกบาศก์เมตร จากนั้นพอคำนวณได้ ไปผิดที่ความหนาอีก เขาใช้ ซม. ลืมแปลงหน่วย คราวนี้ออกมาบานเลย จึงเขียนโปรแกรมให้ช่วยคำนวณใช้ง่ายๆ เพราะตอนนั้น ยังไม่เห็นมีโปรแกรมทาง internet ใช้งาน
.. พอคำนวณคิวปูนได้ คราวนี้ เขามาเทปูนพื้นจริงๆ ก็ซื้อปูนมาผสมอีก ถามแต่ว่า ใช้กี่ลูก? ทรายเท่าไร? หินเท่าไร? จึงต้องเขียนเพิ่ม ดูข้อมูลจากใน web วิศวกรโยธาเขียนอัตราเอาไว้ ก็นำมาเข้าสูตร
.. แต่ก็อีกแหละ คนเอาปูนมาใช้เป็นลูกๆ พอเหลือ เพราะส่วนใหญสั่งปูนมาเป็นตัน ให้ปรพหยัดเงินเหลือก็ถามว่า จะเทอะไรได้สักเท่าไร? คราวนี้ ปัญหามันย้อนทาง คือ ครั้งแรก เห็นพื้นที่ หาปูน คราวนี้ เห็นปูน ไปหาพื้นที่ เพราะจะได้ใช้ปูนที่เหลือให้คุ้มค่า เพราะถ้ารู้ว่าพื้นที่จะทำเหมาะกับจำนวนปูนที่เหลือ การใช้ปูนก็จะมีประสิทธิภาพ จึงต้องเขียนเพิ่มเติมไป
สวนเรื่องระบบไฟฟ้านั้นเขียนตามความรู้พื้นฐานอยู่แล้ว และในเมืองไทยยังไม่มีใครเขียน จึงเขียนไปเท่าที่จะเขียนได้ เพราะรายละเอียดมาก ข้อมูลตัดสินใจมีมากขั้นตอน จึงต้องใช้เวลา..

หากในปัจจุบัน ได้เห็นหลายที่ได้นำเอาโปรแกรมไปใช้ ไปทำใหม่ หรือเอาหลักไปใช้มากยิ่งขึ้นก็คิดว่าเป็นประโยชน์ต่อการพัฒนาสังคมชาติบ้านเมืองประเทศชาติและของโลกด้วย อาจดูเหมือนพูดเกินไป แต่จริงแล้วหากเราทราบการใช้วัสดุที่ถูกต้องแม่ยำ ก็จะไม่ขาดไม่เกิน ซื้อมาใช้งานได้อย่างพอดี ไม่ต้องเสียค่าใช้จ่ายในการขนส่งบ่อย(เช่นซื้อมาขาด ก็ต้องสั่งเพิ่มหากไม่รู้จำนวนก็อาจซื้อไปตามการคาดเดาคงเสียค่าเชื้อเพลิงเพิ่มขึ้นไปอีก หากคาดไว้มากเกินไปมาก ของก็เหลือบรรทุกมาก็หนักเปลืองน้ำมัน เปลืองเนื้อที่เก็บ ซื้อแล้วเหลือมาก ราคาของเหลือ ก็กลายเป็นราคาของเก่ามูลค่าก็ลดลง เช่นนี้จึงว่าช่วยลดโลกร้อนได้ ช่วยประเทศชาติบ้านเมืองตามเศษฐกิจพอเพียง เพราะเพียงพอในการใช้ ไม่ขาดไม่เหลือ
มีผู้สงสัยว่า แล้วการที่มีคนนำโปรแกรมไปใช้แบบลอกไปใช้ ไม่เป็นอะไรหรือ? ต้องตอบว่า "ไม่เป็นอะไร" เพราะแสดงว่าสิ่งที่ผู้คิดและทำคือคนเริ่มทำไว้ เป็นสิ่งที่สังคมให้การยอมรับ ว่าใช้แล้วถูกต้องเหมาะสม และเป็นประโยชน์แล้วเขาจึงนำไปใช้ เหมือนทฤษฎีของในหลวงที่สร้างความพอเพียงให้กับผู้ที่เห็นประโยชน์แล้วจึงนำไปใช้ ถ้าผู้ใดนำไปใช้แล้วเกิดประโยชน์จึงถ่ายทอดเผยแพร่กันจนแพร่หลาย จนเป็นประโยชน์ต่อสังคมในที่สุด อันที่จริงในหลวงพระองค์ท่านตั้งใจจะเผยแพร่แบบไม่จำเป็นต้องให้ใครมารู้ว่ามาจากพระองค์เสียด้วยซ้ำ ทำไปแบบผู้ปิดทองหลังพระ พระองค์ไม่ต้องการแม้แต่ใครจะมาแต่งเพลงร้องยกย่องท่านเลย ขอเพียงทุกคนใช้แล้วมีประโยชน์ ได้ประโยชน์ต่อตน ต่อคนอื่น ต่อประเทศชาติบ้านเมืองและต่อสิ่งแวดล้อมของโลกแล้วพระองค์ท่านก็พอใจแล้ว ผู้เขียนเห็นการกระทำของในหลวงจึงนำมาเป็นแนวทางแบบอย่างในการปฏิบัติเท่านั้น และหากมีผู้เห็นต่าง เห็นจุดบกพร่องในการใช้งาน หากผู้นำไปใช้ยังไม่เข้าใจพื้นฐานการคิด หลักการวิธีคิด หรือการแก้ไขสูตรคำนวณ ก็อาจจะไม่สามารถแก้ไข หรืออธิบายได้ ครานั้น ผู้เขียนก็จะต้องอธิบายหรือแก้ไขให้ หรือ ผู้ที่เข้าใจพื้นฐานอย่างละเอียดก็สามารถตอบคำถามหรือแก้ไขไปได้ แต่หากจะให้เป็นประโยน์มากยิ่งขึ้นควรแลกเปลี่ยนความคิดเห็นเพื่อร่วมกันปรับปรุงพัฒนาให้เหมาะสมตรงกับความเป็นจริงมากที่สุดจึงจะเป็นการดี
  มีผู้ต้องการทราบแนวทางในการเขียนโปรแกรม​ จึง​เขียน​อธิบาย​เพิ่มเติม​สามารถ​ดู​ได้​ที่ https://navy30e.blogspot.com/2018/12/blog-post.html?m=1

5 ความคิดเห็น:

  1. ละเอียดดีแล้วครับ!

    ตอบลบ
  2. ละเอียดดีแล้วครับ!

    ตอบลบ
  3. โปรแกรม ช่วยได้มากครับ ขอบคุณครับ

    ตอบลบ
  4. ขอบคุณด้วยความซาบซึ้งใจ ขอบคุณน้ำใจที่เผื่อแผ่แบ่งปัน ปกติจะเสิร์ชหาโปรแกรมต่างๆ มาประกอบการทำงาน วันนี้ได้มาเจอ รู้สึกประทับใจมาก และได้อ่านถึงเหตุของการเขียนโปรแกรมแล้วยิ่งขอบคุณมากๆ ขึ้นอีก ดีใจกับประเทศไทยที่มีคนเขียนโปรแกรมคุณภาพแบบนี้และยังคงส่งมอบสิ่งดีดีให้กับผู้คนจนถึงวันนี้ ที่สำคัญคือรู้สึกได้ถึงความจงรักภักดีต่อพระมหากษัตริย์และการทำสิ่งดีดีเพื่อแทนคุณแผ่นดิน ขอส่งความขอบคุณเป็นกำลังใจ ขอให้เจริญรุ่งเรืองยิ่งๆ ขึ้นไปค่ะ

    ตอบลบ