Tags:

นั่งกินข้าวกับ PM ตอนเลิกงาน

นั่งคุยกันจนมาถึงหัวข้อนี้ ผมบอกว่าการเขียนโปรแกรมเป็นศิลปะ

พี่เอ็ม(PM :D) บอกว่าไม่ใช่ การเขียนโปรแกรมคือการแก้โจทย์ มันไม่มีอะไรเป็นศิลปะ นั่งคุยกันนาน ยกเหตุผลต่างๆนาๆ

แล้วผมก็ อยากรู้ว่าโปรแกรมเมอร์คนอื่น มีใครมองการเขียนโปรแกรมเป็นศิลปะ หรือว่าไม่เป็นศิลปะบ้าง

Comments

By: varavut
Windows PhoneUbuntuWindows
varavut's blog
on 18/01/12 20:50 #374849 toggle
varavut's picture

สำหรับผมแล้วการเขียนโปรแกรมเป็นงานศิลปะครับ มันเป็นการสร้างสรรค์ที่งดงาม ทั้งความงดงามภายนอก(รูปแบบการเขียน) และความงดงามภายใน(ประสิทธิภาพ) ต่างก็เป็นสิ่งที่น่าหลงไหลอย่างยิ่ง ผมเชื่อว่าทุกศาตร์ในโลกนี้ล้วนก็เป็นศิลปะเช่นกัน ^^

By: JavaDevil
In Love
JavaDevil's blog
on 18/01/12 20:53 #374850 toggle
JavaDevil's picture

ถ้าในการทำงานอย่างเป็นระบบ ศิลปะมันจะหายไป จะมองเห็นการเขียนโปรแกรมแบบสวยๆ ได้ในงานแข่งต่างๆ code แต่ละคนเนี้ยบรรเจิดจริงๆ

By: planktons
planktons's blog
on 18/01/12 21:20 #374855 toggle
planktons's picture

ในอดีตสมัยยังไม่มี OOP การเขียนโปรแกรมถือเป็นงานศิลปะในการแก้ปัญหาครับ แต่ยุคนี้ไม่ใช่แล้ว ตั้งแต่มีวิชา Software Engineer ครับ การเขียนโปรแกรมเลยกลายเป็นงานวิทยาศาสตร์แทน

By: lancaster
ContributoriPhoneAndroidWindows
lancaster's blog
on 18/01/12 21:37 #374859 toggle
lancaster's picture

มันเป็นวิศวกรรมครับ

By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 18/01/12 21:54 #374866 toggle
PaPaSEK's picture

มันเป็นกรรมครับ

ทำอะไรเอาไว้ก็ต้องใช้กรรม เคยเขียนโค้ดไว้ปีก่อน วันนี้ต้องมีการแก้ไขโค้ด เปิดโค้ดมา ... อ้าว ... ตอนนั้นทำไมตรูเขียนแบบนี้เนี่ย แล้วส่วนนี้มันทำอะไรหว่า

เข้าเรื่อง

มันเป็นศาสตร์และศิลป์ครับ ส่วนตัวผมชอบเขียนให้มี readability สูง เว้นวรรค, indent อย่างดี ให้รู้ว่าโค้ดนี้อยู่ block นี้

เคยมั้ยครับต้องแก้ code ของคนอื่นที่ติดกันเป็นพรืด (vb) ไม่มี indent กว่าจะไล่จบว่า if นี้ไปจบที่ไหน do นี้ของ loop ไหนหาแทบตาย

บางคนเขียน if แบบไม่ปิด end if อีก ไล่กันไปเถอะครับ ตาแฉะ

By: lunatic
iPhoneWindows PhoneAndroidUbuntu
lunatic's blog
on 18/01/12 21:59 #374869 Reply to:374866 toggle
lunatic's picture

บรรทัดแรกก็ฮาเลย จำเอาไปใช้ดีกว่า 555

By: VanGogh
AndroidWindows
VanGogh's blog
on 19/01/12 9:48 #374995 Reply to:374866 toggle
VanGogh's picture

ฮาบรรทัดแรกมากๆครับ ^^

By: Invisible Force
ContributoriPhoneAndroidUbuntu
Invisible Force's blog
on 19/01/12 12:36 #375056 Reply to:374866 toggle
Invisible Force's picture

คนทำกรรม = กรรม(กร)!

By: Ford AntiTrust
ContributoriPhoneWindows PhoneBlackberry
Ford AntiTrust's blog
on 19/01/12 16:45 #375190 Reply to:374866 toggle
Ford AntiTrust's picture

ผมคงแก้กรรมทุกวันเลยซินะ ><"

By: mr_tawan
ContributoriPhoneAndroidWindows
mr_tawan's blog
on 19/01/12 17:43 #375218 Reply to:374866 toggle
mr_tawan's picture

http://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882/ref=pd_bxgy_b_img_b

เอาเล่มนี้ไปอ่านซะนะครับ อีก 10 ปีจะได้ไม่มาบ่นแบบเดียวกัน :D


By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 19/01/12 20:24 #375275 Reply to:375218 toggle
PaPaSEK's picture

ฮา ... จริงๆ แล้วผมแก้ด้วยการใส่ Comment ครับ คือช่วงที่เป็นพนักงานใหม่ก็เลยอีโก้กับตัวเองจัดๆ พยายามเขียนโค้ดให้มันลึกล้ำ ไปๆ มาๆ มันกลายเป็น "ลึกลับ" ไปซะอย่างนั้น

จริงๆ แล้วผมเคยอ่านเล่มนี้ด้วยนะครับ The art of computer programming แต่อ่านไปได้ไม่เยอะครับ รู้สึกว่าตัวเองไม่เหมาะกับหนังสือแบบนี้อย่างแรง

ปล.หลายครั้งผมแอบหวังว่า Playground-Soft จะเปิดซอร์สนะ อิอิ

By: mr_tawan
ContributoriPhoneAndroidWindows
mr_tawan's blog
on 19/01/12 23:59 #375338 Reply to:375275 toggle
mr_tawan's picture

ก็เปิดแทบทุกตัวแหละครับ อ่านดี ๆ 555

ปล. หนังสือเล่มที่ผมแนะนำเขียนเอาไว้ว่า ไม่ควรเขียน comment ถ้าไม่จำเป็น เพราะการเขียน comment เป็นการแสดงออกว่าโค๊ดที่เราเขียนยังไม่ดีพอที่จะอ่านแล้วเข้าใจได้ว่าโค๊ดทำอะไรครับ

เจ็บไหม ? เรามารณรงค์เลิกการเขียนคอมเม้นท์ แล้วมาเขียนโค๊ดที่เข้าใจได้ง่ายตั้งแต่ต้นกันดีกว่า !


By: Thaina
Windows
Thaina's blog
on 20/01/12 0:20 #375344 Reply to:375338 toggle
Thaina's picture

เห็นด้วยยยยยยย >___<


My Blog

By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 20/01/12 9:39 #375450 Reply to:375344 toggle
PaPaSEK's picture

สำหรับผมต้องเขียนครับ เพราะโปรแกรมทางฝั่งโกดังต้องมีการเปลี่ยนแปลงตามความต้องการของลูกค้าที่ค่อนข้างบ่อย

ถ้าไม่ comment ไว้จะทำให้จำไม่ได้เลยว่าไอ้ที่เปลี่ยนมา 10 ครั้งนี่ทำไปเพราะอะไร

เคยมีกรณีพิพาทระหว่างบริษัทฯ กับลูกค้า ลูกค้าบอกว่าทำไมโปรแกรมของเราทำงานผิด บลาๆๆ ผมนั่งไล่โค้ดเจอ comment บอกรายละเอียดไว้เลยว่าแก้ไขโค้ดวันไหน เพราะอะไร ลูกค้าชื่ออะไรเป็นคนขอ อ้างอิงอีเมล์ไหน

By: mibtrex
mibtrex's blog
on 20/01/12 10:26 #375486 Reply to:375450 toggle
mibtrex's picture

ผมว่าแกไขได้ด้วยการใช้ Version control


แคสเปอร์ก็คือแคสเปอร์

By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 20/01/12 13:47 #375561 Reply to:375486 toggle
PaPaSEK's picture

CVS, Versioning, Version Control เป็นเรื่องที่ผมติดค้างตัวเองมานานมากเลยครับ ผมยังไม่ได้เริ่มศึกษาเลย การทำ Version control ของผมห่วยมากๆ

ยอมรับผิดเต็มๆ ครับ

By: mr_tawan
ContributoriPhoneAndroidWindows
mr_tawan's blog
on 20/01/12 15:37 #375598 Reply to:375561 toggle
mr_tawan's picture

ศตวรรษที่ 21 แล้ว ไม่ต้องไปศึกษา CVS แล้วครับ ข้ามไปตัวอื่นเลย


By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 20/01/12 22:12 #375697 Reply to:375598 toggle
PaPaSEK's picture

รบกวนแนะนำต่อด้วยครับ อยากจะพัฒนาระบบงานตัวเอง

By: lancaster
ContributoriPhoneAndroidWindows
lancaster's blog
on 21/01/12 3:31 #375748 Reply to:375697 toggle
lancaster's picture

svn + git

By: EThaiZone
ContributorSymbian
EThaiZone's blog
on 24/01/12 18:28 #376688 Reply to:375697 toggle
EThaiZone's picture

ใช้ git แล้วจะหนุกหนานครับ ไม่แน่ใจว่าจะพัฒนาแยกไหมก็แตก branch แตกไปแตกมา สับสนไม่รู้จะ merge ตัวไหนดีก็กลับมาไล่อ่าน commit ได้ มันหนุกหนานมากๆ ผมใช้ท้อถอยกิต (TortoiseGit)

By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 24/01/12 23:19 #376784 Reply to:376688 toggle
PaPaSEK's picture

เคยแต่ใช้ git เพื่อเอา source ของ Android มาเล่นครับ

งั้นขอศึกษาก่อน

By: Architec
ContributorWindows Phone
Architec's blog
on 20/01/12 21:29 #375691 Reply to:375338 toggle
Architec's picture

เขียนเองใช้เองก็ไม่มีปัญหาอะไรที่จะไม่ comment ครับ แต่ถ้าเป็นซอฟท์แวร์ที่ต้องใช้งานยาวๆ ยังไงก็ต้องมีอยู่ดี ไม่งั้นล่ะก็ประสาทกินขอรับ -*-

By: EThaiZone
ContributorSymbian
EThaiZone's blog
on 24/01/12 18:34 #376691 Reply to:375338 toggle
EThaiZone's picture

ผมรณรงค์ให้เขียน Doc ดีๆ ผมไม่แน่ใจกับภาษาอื่น แต่อย่าง PHP ผมเขียนบน Netbeans เวลาจะเขียน Lib ใหม่ ต้องเขียน PHPDoc แนบมันทุก Method เลยทีเดียว เพราะเวลาใช้ Autocomplete มันจะสะดวกมาก พัฒนาไว รวมถึงเราไม่ต้องไปไล่โค้ดว่ามันเป็น method อะไร รับค่าอะไร คืนค่าอะไร ไม่งั้นปวดหัวตาย

ทุกวันนี้ใช้ Codeigniter นี้แทบไม่เปิด User Guide ไม่เปิด PHP.net เพราะ Autocomplete+PHPDoc นี้แหละ

เรื่อง Comment ผมยังมองว่าจำเป็นในบางครั้ง โดยเฉพาะกับคนที่ไม่ได้ใช้ IDE เพราะจะไล่กันไม่ถูกเลยว่าส่วนนี้รับค่าจากไหนมา เป็นชนิดแบบไหน แล้วเราจะไม่สามารถควบคุม Error ที่จะเกิดขึ้นได้เลย

By: neizod
ContributorTraineeIn Love
neizod's blog
on 25/01/12 0:43 #376817 Reply to:375338 toggle
neizod's picture

เรื่อง comment ผมมองว่ามันจำเป็นในกรณีที่ต้องการจะ hack อะครับ 555+

By: lunatic
iPhoneWindows PhoneAndroidUbuntu
lunatic's blog
on 25/01/12 1:38 #376824 Reply to:375338 toggle
lunatic's picture

ผมก็แนวๆนี้ เขียน comment เฉพาะ code ประหลาดๆ ที่มีเหตุผลรองรับเช่น performance ส่วน code ปกติเขียนเป็น self documente

เวลาตั้งชื่อ method หรือ variable นี่ตั้งยาวๆให้อ่านออกไปเลย

สรุป ใช้เวลาทำงานมากขึ้น -_-" หวังว่าชินแล้วจะเผางานได้ไว เช่นเดิม

แต่ก็มีข้อดี คือไม่ต้องแก้กรรมบ่อย 55

By: iPomz
ContributorAndroidUbuntuWindows
iPomz's blog
on 23/01/12 8:51 #376115 Reply to:375218 toggle
iPomz's picture

กำลังโหลดตัวอย่างมาอ่านเลยครับ


T, B

By: neizod
ContributorTraineeIn Love
neizod's blog
on 18/01/12 22:15 #374873 toggle
neizod's picture

เขียนให้เป็นเชิงศิลปะ มันก็เป็นเชิงศิลปะ

เขียนให้เป็นเชิงวิศวะ มันก็เป็นเชิงวิศวะ

beauty is in the eye of the beholder~

By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 19/01/12 0:15 #374907 Reply to:374873 toggle
PaPaSEK's picture

ศิลปะในเชิงของผมมันรวมหมดเลยนะครับ

คือมันต้องมีทุกอย่างรวมอยู่ในนั้น มันถึงจะเรียกได้ว่า "งานศิลปะ"

เหมือนกับ code ของ Drupal ซึ่งผมดูแล้วก็รู้สึกได้ว่า "นี่แหละงานศิลปะ"

By: McKay
iPhoneAndroidIn Love
McKay's blog
on 19/01/12 1:43 #374930 Reply to:374907 toggle
McKay's picture

มันช่างสวยงามม~


"Microsoft is doing a terrific job of pissing off it's existing customer base to chase the sliver that is the tablet market." - William Topping

By: lancaster
ContributoriPhoneAndroidWindows
lancaster's blog
on 19/01/12 1:59 #374932 Reply to:374907 toggle
lancaster's picture

ต้อง wordpress สิฮะ

code is poetry

(แล้วมันก็ซด cpu ฉิบ..)

By: mementototem
ContributorJusci's WriterWindowsIn Love
mementototem's blog
on 19/01/12 9:37 #374988 Reply to:374932 toggle
mementototem's picture

เพราะมันเป็นศิลปะ เลยต้องเว้นวรรคพวกเครื่องหมายต่าง ๆ เช่น ( ) : ใช่ไหมครับ พอแก้ไขกับ IDE มันเลยลำบาก - -"


Jusci - Google Plus - Twitter - FSN

By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 19/01/12 20:26 #375276 Reply to:374988 toggle
PaPaSEK's picture

WordPress เว้นซะงงครับ แต่ว่าผมถือว่า WordPress งดงามในด้านความกะทัดรัดของโค้ดนะครับ แล้วก็กินทรัพยากรต่ำ

Drupal นี่ติดตั้งแชร์โฮสท์หลายๆ ที่ไม่ได้นะครับ มันคาที่เลย

By: crucifier
crucifier's blog
on 18/01/12 22:23 #374875 toggle
crucifier's picture

ผมเป็นศิลปินทำงานศิลปะด้วยการเขียนโปรแกรม

By: ZeroEngine
ContributorRed HatSUSEUbuntu
ZeroEngine's blog
on 18/01/12 22:27 #374877 toggle
ZeroEngine's picture

สำหรับผมมันคืองานดนตรี ที่มีท่วงทำน้องแห่งเสียงคีย์บอร์ด กรีดร้องออกเป็นโน๊ต(โค๊ด) ได้อย่างลงตัวและสวยงาม โอ้มายยยก๊ออออด เออเรอ อีกแหละ.....


ZeroEngine

By: netfirms
iPhoneAndroidWindows
netfirms's blog
on 18/01/12 22:39 #374884 toggle
netfirms's picture

ถ้าเขียนเองใช้งานเองก็เป็นศิลปะแต่ถ้าเขียนเพื่อทำงานที่ออฟฟิศมันก็เป็นการแก้โจทย์ปัญหา


กินตับทำให้ร่างกายแข็งแรง

By: put4558350
ContributorAndroidSymbianUbuntu
put4558350's blog
on 19/01/12 0:09 #374904 toggle
put4558350's picture

การเขียนโปรแกรมจาก flow เป็นการแก้โจทย์

การออกแบบ flow โปรแกรมเป็นศิลปะ

แก้ flow ที่ไม่เคลียใช้ทั้งศาสตร์และศิลป


^^

By: tamujin
AndroidSymbianUbuntu
tamujin's blog
on 19/01/12 0:11 #374905 toggle
tamujin's picture

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

By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 19/01/12 0:17 #374908 Reply to:374905 toggle
PaPaSEK's picture

ถ้าโจทย์เดียวกันแต่เขียนได้ 10 รูปแบบ

คนที่เขียนได้ดีที่สุด และงดงามที่สุด ใกล้เคียงทฤษฎีที่สุด แถมทำงานในทางปฏิบัติได้มีประสิทธิภาพมากที่สุด

แบบนี้ไม่เรียกว่างานศิลปะหน่อยเหรอครับ

By: lancaster
ContributoriPhoneAndroidWindows
lancaster's blog
on 19/01/12 1:57 #374931 Reply to:374908 toggle
lancaster's picture

ใกล้เคียงทฤษฎีที่สุด แถมทำงานในทางปฏิบัติได้มีประสิทธิภาพมากที่สุด

ผมเรียกว่าวิศวกรรมนะ

By: ninja741
ninja741's blog
on 19/01/12 3:18 #374938 Reply to:374908 toggle
ninja741's picture

คงมีแต่โปรแกรมเมอร์ที่อาจจะคิดว่า เขียนโปรแกรมเป็นศิลปะ

แต่คนอื่น รวมถึงคนที่สั่งให้โปรแกรมเมอร์เขียน ไม่มีใครมองแบบนั้นครับ

โปรแกรมที่ดีต้องอยู่บนวิศวกรรม ที่ยอดเยียมซึ่งตรงข้ามกับศิลปะโดยสิ้นเชิง

โปรแกรมที่ดี efficiency ต้อง 100% โดยที่กิน resource ให้น้อยที่สุด และไม่มี waste

By: takz1977
iPhoneUbuntuWindows
takz1977's blog
on 19/01/12 0:37 #374910 toggle
takz1977's picture
  • การแก้โจทย์ปัญหาคือเป้าหมาย ไม่ว่าเครื่องมือ,เครื่องใช้ใดๆ ถูกสร้างสรรค์ขึ้นมาย่อมมีเป้าหมายในการใช้งาน ดินสอ, หนังสือ, จรวด, ดาวเทียม
  • รายละเอียดทั้งภายนอกและภายในถ้าใส่ใจและพิถีพิถันกับมันสิ่งนั้นก็เป็นศิลปะขึ้นมาได้
  • วิศวกรรมและทั้งประติมากรรมใดๆ ที่สร้างอย่างไร้ศิลปก็มักจะเลือนหายไปตามเวลา
  • มีแต่วิศวกรรมและประติมากรรมที่หลอมรวมกับศิลปะอย่างลงตัวที่โดดเด่นจนเป็นที่จดจำข้ามกาลเวลา

อาหารที่ไม่มีใครกล้าตักเพราะรูปลักษณ์เหลือทน ก็หมดโอกาสจะแสดงรสชาติและคุณค่าในตัวอาหารจานนั้นไปแล้ว แม้รสชาติและคุณค่าจะวิเศษล้ำเลิสแค่ไหนก็ตาม


^_^

By: gab
AndroidSymbianWindows
gab's blog
on 19/01/12 8:38 #374959 Reply to:374910 toggle
gab's picture

+1 ให้กับ bullet สุดท้าย

By: Kurtumm
iPhoneUbuntu
Kurtumm's blog
on 19/01/12 16:46 #375192 Reply to:374910 toggle
Kurtumm's picture

เม้นอย่างมีศิลปะมาก


kurtumm

By: Invisible Force
ContributoriPhoneAndroidUbuntu
Invisible Force's blog
on 24/01/12 12:18 #376566 Reply to:374910 toggle
Invisible Force's picture

เม้นได้ดีมากครับ

By: tonkla
Ubuntu
tonkla's blog
on 19/01/12 0:48 #374919 toggle
tonkla's picture

จากประสบการณ์ของตัวผมเอง ผมเคยได้ยินมาเหมือนกันว่า "การเขียนโปรแกรมคืองานศิลปะ" แต่ไม่เคยเจอกับตัวเอง จนกระทั่งวันหนึ่งผมสามารถเข้าใจโค้ดของระบบตัวหนึ่งที่เขียนด้วย Java (เป็น Spring + Hibernate) ได้เห็นการออกแบบ Class และ Interface อย่างมีชั้นเชิง ได้เห็นวิธีการสื่อสารกันของ Object แต่ละตัว รูปแบบการส่งสารรับสารมันพริ้วเหมือนสายน้ำไหล ผมได้แต่นั่งนิ่ง ดื่มด่ำกับความงามที่เห็นตรงหน้า นับแต่นั้นมาผมก็เชื่ออย่างสนิทใจว่าเราสามารถใส่ศิลปะลงไปในโค้ดโปรแกรมได้ นี่เป็นการเห็นความงามครั้งแรก ซึ่งเป็นความงามจากการออกแบบระบบ ไม่ใช่ความงามของตัวภาษา Java

โลกศิลปะของผมถูกสั่นสะเทือนอีกครั้งเมื่อผมได้มารู้จักกับภาษา Ruby ... ข้างล่างนี้คือโค้ดภาษา Ruby ที่ถูกไวยากรณ์

for you in my_girlfriends
  kiss me if you.want?
  10.times { make_love me } unless you.menstruating?
end

นี่คือตัวอย่างความงามทางไวยากรณ์ของภาษา Ruby ที่สะกดผมในครั้งแรกที่เห็น ยิ่งพอมีโอกาสได้อ่านโค้ดโปรแกรมหลายๆ ตัวที่เขียนโดยคนที่ออกแบบซอฟต์แวร์เป็นและเข้าใจ Ruby จริงๆ ก็ยิ่งทำให้ผมหลงรักภาษา Ruby มากขึ้นเรื่อยๆ ผลผลิตจากความงามนี้ได้กลายมาเป็นความคิดสร้างสรรค์และแรงบันดาลใจให้นักพัฒนาจำนวนหนึ่ง จนเป็นที่มาของ Ruby on Rails และพันธมิตรอีกจำนวนมหาศาล

จริงอยู่ว่าการเขียนโปรแกรมคือการแก้โจทย์ปัญหา แต่เราก็สามารถแก้ปัญหาอย่างมีชั้นเชิงทางศิลปะได้นี่นา ดูเหมือนว่าจะเราจะเข้าใจความสัมพันธ์ระหว่าง "ระบบระเบียบ" กับ "ความงาม" ผิดไปนะครับ

ศิลปะในความหมายแบบง่ายๆ หมายถึง "ความงาม" ไม่ว่าจะงามทางหู ตา จมูก ลิ้น กาย ก็เรียกศิลปะได้ทั้งนั้น จุดสำคัญคือมันเข้าถึงใจเราหรือเปล่า

"Beauty is in the eye of the beholder" งามไม่งามมันก็ขึ้นอยู่กับคนมองล่ะครับ ศิลปะมันคือความสามารถในการเข้าถึงและเข้าใจ อย่างน้อยก็มีผมคนหนึ่งที่ไม่เห็นความงามในหนังของพี่เจ้ย หรือแม้แต่ภาพวาดของแวนโก๊ะ

ขอบคุณที่อ่านจนจบ พอดีอยากเขียนแสดงความคิดเห็นมากๆ :)

By: gab
AndroidSymbianWindows
gab's blog
on 19/01/12 8:37 #374958 Reply to:374919 toggle
gab's picture

+1 "แก้ปัญหาอย่างมีชั้นเชิงทางศิลปะ"

By: soginal
Android
soginal's blog
on 19/01/12 10:00 #374999 Reply to:374919 toggle
soginal's picture

อ่านแล้วนึกถึง The Tao Of Programming ตอนที่ปรมจารย์เขียนโปรแกรมพลิ้วไหวดั่งสายน้ำ ราบลื่นประดุจสายลมโชย และคอมไพล์ทีเดียวผ่านประหนึ่งพระเจ้ากำหนดไว้แล้ว


  1. "If debugging is the process of removing software bugs, then programming must be the process of putting them in."
  2. "Life like binary tree"
  3. "I need emoticon"
By: iStyle
ContributorAndroidSymbianWindows
iStyle's blog
on 19/01/12 4:06 #374941 toggle
iStyle's picture

ผมนึกเทียบกับใบประกอบโรคศิลป์อยู่..

ขนาดแพทย์ยังเป็นศิลป์เลย..


May the Force Close be with you.

By: EThaiZone
ContributorSymbian
EThaiZone's blog
on 24/01/12 18:40 #376692 Reply to:374941 toggle
EThaiZone's picture

ทำไมอ่านแล้วคิดว่าคำว่าศิลป์ กับ ศิลปะ กลายเป็นคนละคำไปเลย - -*

By: iStyle
ContributorAndroidSymbianWindows
iStyle's blog
on 25/01/12 3:46 #376835 Reply to:376692 toggle
iStyle's picture

คำเดียวกันแหละครับ เค้าตั้งใจด้วย เพราะการรักษาเป็นศิลปะ ไม่มีถูกหรือผิด หมอสองคนก็จัดฟันได้ไม่เหมือนกัน


May the Force Close be with you.

By: mr_tawan
ContributoriPhoneAndroidWindows
mr_tawan's blog
on 25/01/12 12:35 #376960 Reply to:376835 toggle
mr_tawan's picture

เขียนโปรแกรมก็เหมือนกัน โจทย์เดียวกัน เขียนได้เป็นล้านแปดแบบ 555


By: Invisible Force
ContributoriPhoneAndroidUbuntu
Invisible Force's blog
on 25/01/12 15:57 #377037 Reply to:376960 toggle
Invisible Force's picture

แม้ขับรถมาทำงาน ก็ยังขับมาทำงานแบบมีศิลปะได้เลย

By: lexurous
lexurous's blog
on 19/01/12 8:21 #374955 toggle
lexurous's picture

นิยามคำว่า ศิลปะ ก่อน

By: polawing
polawing's blog
on 19/01/12 8:59 #374963 toggle
polawing's picture

เขียนโปรแกรมเป็นงาน สถาปัตยกรรม ครับ เพราะรวมทั้ง วิศวกรรม และ ศิลปกรรม เข้ามาด้วยกัน คล้ายๆสร้างตึกหลังนึงน่ะครับ

By: tekkasit
ContributorAndroidWindowsIn Love
tekkasit's blog
on 19/01/12 9:09 #374965 toggle
tekkasit's picture

การเขียนโปรแกรมเป็นศิลปะ มันมีความสวยงามของ architecture ของเฟรมเวิร์ก, ความเป็นระเบียบเรียบร้อยในการเพิ่มเติมเสริมความสามารถ, ปัญหาเดียวกันสามารถมี solution ได้หลายแบบ แต่ละแบบสะท้อนถึงภูมิปัญญา,ประสบการณ์,ทักษะของผู้พัฒนา

แต่การพัฒนาระบบมันเป็น commercial art มันต้องจบในเวลา,ในงบประมาณที่ลูกค้า,กับเจ้านายพอใจ จะเอาเรื่องนี้มาเป็นสาเหตุให้นั่งรอบิลด์อารมณ์ อันนี้ไม่ได้

และถึงแม้องค์ความรู้การสร้างซอฟท์แวร์มันเป็นเรื่องใหม่ เกิดขึ้นไม่เกิน 50 ปีมานี้ ไม่เหมือนกับการก่อสร้างต่างๆ แต่ปัจจุบันการพัฒนาซอฟท์แวร์มันเริ่มมีองค์ความรู้ วิชาการมาจับ จนเริ่มเป็นศาสตร์ไปแล้วครับ (software engineering)

เช่นกัน ศิลปินหลายคน ถ้าไม่ใช่ท็อปจริงๆ มันก็ต้องศิลปะเชิงพาณิชย์ครับ คนเราต้องกินต้องใช้จะอุดมการณ์จ๋า จะรอให้ความคิดตกผลึก,รอแรงบันดาลใจ,เขียนงานเพื่อความพอใจของตัวเองแต่ไม่เป็นที่ต้องการของตลาดหรือลูกค้า,ฯลฯ ไปตลอดก็จะไม่มีกินเอา

By: sarunw
sarunw's blog
on 19/01/12 9:05 #374966 toggle
sarunw's picture

ศิลปะรึเปล่าไม่รู้แต่ลูกค้าบางทีบอกให้ลบวาดใหม่ หรือ บางทีต้องวาดรูปเดิมแต่เปลี่ยนสีที่ใช้ :(


my life

By: kimminwoo
AndroidRed HatUbuntuWindows
kimminwoo's blog
on 19/01/12 9:27 #374982 toggle
kimminwoo's picture

การเขียนโปรแกรม ผมมองว่าเป้นศาสตร์และศิลป์นะ


It is Signature = ="

By: Diaboros_Sorobaid
Symbian
Diaboros_Sorobaid's blog
on 19/01/12 9:37 #374987 toggle
Diaboros_Sorobaid's picture

เป็นอย่างไม่ต้องสงสัย. ศิลปกรรมในการเขียนให้อ่านง่ายและใช้งานได้อย่างปลอดภัย + วิศวกรรมในการสร้างทำงานให้เครื่องจักรมันทำงานไวๆและให้มีบั๊คน้อยสุด.

By: risc
risc's blog
on 19/01/12 9:59 #374998 toggle
risc's picture

โปรแกรมเมอร์ที่มีความเป็นศิลปินจะสร้างโปรแกรมที่มีศิลปะ


แสวงหามิใช่เพราะรอคอย เชี่ยวชาญมิใช่เพราะโอกาส ชำนาญมิใช่เพราะโชคช่วย"ดังนี้แล้วลิขิตฟ้าหรือจะสู้มานะตน"

By: mibtrex
mibtrex's blog
on 19/01/12 12:15 #375047 Reply to:374998 toggle
mibtrex's picture

+1 ครับ

สร้างบ้านโดยที่ไม่มีสถาปนิก ก็สร้างได้ อยู่ได้ แต่ใช้ไปแล้วไม่มีความสุข การเขียนโปรแกรมก็เช่นกัน ถ้าไม่มีการ design flow ของระบบ เขียนต่อกันไปเรื่อยๆจนโค้ดบวม ก็เหมือนบ้านที่มันรก ไม่น่าอยู่


แคสเปอร์ก็คือแคสเปอร์

By: mr_tawan
ContributoriPhoneAndroidWindows
mr_tawan's blog
on 19/01/12 11:42 #375034 toggle
mr_tawan's picture

มันเป็นศิลป์ครับ คือ ไม่ใช่แค่ศาสตร์ หรือแค่การแก้ปัญหา การตัดสินใจหลาย ๆ อย่างจะต้องเอาเหตุผลมาชั่งน้ำหนักกัน เราไม่สามารถที่จะเอาทฤษฎีหรือกฎข้อไหนมาใช้แล้วสามารถแก้ปัญหาได้หมดทุกข้อ การเลือกเอากฎหรือวิธีการ (methodology) มาใช้เป็นศิลปะครับ เป็นศิลปะขั้นสูงเลยด้วยซ้ำ จริงๆ แล้ว


By: multiplex
multiplex's blog
on 19/01/12 12:16 #375048 toggle
multiplex's picture

มันคือ งานศิลปะ (ทำท่าทำทาง แบบ อ.เฉลิมชัย )

หรือว่ามันคือ มนต์ดำแห่งนรก

By: Invisible Force
ContributoriPhoneAndroidUbuntu
Invisible Force's blog
on 19/01/12 12:35 #375055 toggle
Invisible Force's picture

มันอยู่ที่ว่า .. เราจะทำให้มันเป็นการสร้างสรรค์(ศิลปะ) หรือว่า จะทำให้เราเป็นเหมือน กรรม(กร) .. ก็ได้ครับ แต่ควรเลือกอย่างแรกครับ ^^

By: addib2010
iPhoneAndroid
addib2010's blog
on 19/01/12 14:36 #375107 toggle
addib2010's picture

ผมมองว่าโดยเนื้องานการโปรแกรมคือศาสตร์ แต่ "คน" เขียนโปรแกรมต่างหากที่ทำให้มันเป็นศิลป์

ต่อให้งานนั้นมันมี requirement ที่ตายตัว เขียนตามนั้นเป๊ะๆก็จบงานได้ แต่ถ้าคนเขียนโปรแกรมเพิ่มรายละเอียดของงานเล็กน้อยเช่น เพิ่ม animation ให้สวยงามขึ้น หรือปรับแต่ง interface ให้ผู้ใช้งานได้ง่ายขึ้น ผมว่ามันคือส่วนที่เป็นศิลป์ที่ทำให้โปรแกรมเมอร์แต่ละคนแตกต่างกัน


Game Developer.

By: Perl
ContributorUbuntu
Perl's blog
on 19/01/12 16:15 #375181 toggle
Perl's picture

เป็น Network Engineer ครับ แต่ต้องมาทำงาน Side Project เป็น Programmer = ="

มันเป็นกรรมครับ


ecution.style

By: Thaina
Windows
Thaina's blog
on 19/01/12 17:52 #375226 toggle
Thaina's picture

ผมเชื่อว่าการเขียนโปรแกรมมันไม่ใช่ศิลป์

แต่การเขียนให้ดี นั่นแหละเป็นศิลป์


My Blog

By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 19/01/12 20:31 #375281 Reply to:375226 toggle
PaPaSEK's picture

อ่า ... คิดเหมือนกัน ตอนกำลังนั่งให้ห้องน้ำก็คิดแบบนี้ครับ

คือการเขียนโปรแกรมไม่ใช่ศิลปะ แต่การเขียนให้ดี (วิธีการ, algorithm) นั่นแหละคือศิลปะ

By: mr_tawan
ContributoriPhoneAndroidWindows
mr_tawan's blog
on 20/01/12 13:43 #375559 Reply to:375281 toggle
mr_tawan's picture

จริง ๆ ก็แทบทุกอย่างแหละครับ ที่วิธีการมันเป็นศาสตร์ แต่การเลือกใช้วิธีการมันเป็นศิลป์

คนที่สามารถใช้ศิลป์ได้อย่างมีประสิทธิภาพนั่นแหละครับคืออัจฉริยะ ลำพังมีแค่ศาสตร์มันไม่เพียงพอ


By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 20/01/12 14:19 #375571 Reply to:375559 toggle
PaPaSEK's picture

พูดได้โดนใจมากครับ อยากจะกระโดดจูบสักที

คือผมคิดคำอธิบายแบบนี้ไม่ออก นี่แหละสิงที่พยายามจะบอก

By: McKay
iPhoneAndroidIn Love
McKay's blog
on 20/01/12 14:42 #375578 Reply to:375571 toggle
McKay's picture

เกือบแต๊ปกันเลยทีเดียว - -"


"Microsoft is doing a terrific job of pissing off it's existing customer base to chase the sliver that is the tablet market." - William Topping

By: mr_tawan
ContributoriPhoneAndroidWindows
mr_tawan's blog
on 20/01/12 15:38 #375599 Reply to:375571 toggle
mr_tawan's picture

/me กดเตะสูงอัตโนมัติ


By: Invisible Force
ContributoriPhoneAndroidUbuntu
Invisible Force's blog
on 24/01/12 12:22 #376568 Reply to:375571 toggle
Invisible Force's picture

อย่างนี้เค้าเรียกว่า ศิลปะการตอบ หรือป่าวเอ่ย !

By: lingjaidee
Windows PhoneAndroidWindows
lingjaidee's blog
on 19/01/12 18:50 #375248 toggle
lingjaidee's picture

อาร์ตๆ ทั้งนั้น ^^

By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 19/01/12 20:29 #375280 Reply to:375248 toggle
PaPaSEK's picture

คนวาดงานศิลป์คิดว่าไงครับ

ปล.ผมชอบงานสีน้ำของคุณลิงใจดีมากๆ ติดตามใน exteen มานาน แต่ช่วงหลังเห็นยุคแรกเริ่มกำลังหายไปหลายคน

By: Bank14
BlackberryUbuntuWindows
Bank14's blog
on 20/01/12 15:20 #375593 toggle
Bank14's picture

ไม่แน่ใจครับ ชั่วโมงบินไม่สูงพอ

แต่ JavaScript, CSS, HTML5 เนี่ย ก็อาร์ทดีนะ


+Autthapon | BLOG

By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 20/01/12 22:14 #375699 Reply to:375593 toggle
PaPaSEK's picture

JavaScript กับ Ruby นี่เขียนแล้วทำให้มองทุกอย่างเป็น object ได้ดีมากๆ เลยครับ ส่วนตัวชอบ JavaScript และมีท่าน John Resig เป็น idol ของวงการ JavaScript

By: adente
iPhoneWindows PhoneAndroidBlackberry
adente's blog
on 20/01/12 17:30 #375634 toggle
adente's picture

เคยอ่านเจอเรื่อง How To Write Unmaintainable Code ไม่รู้ว่าชีวิตจริงจะมีคนเขียนให้ได้ตาม concept พวกนี้ได้หรือเปล่า

ส่วนเรื่องศิลปะในการเขียน มันเป็นความลุ่มลึกและไหลลื่นของระเบียบวิธีการทั้งในเบื้องหน้าและ เบื้องหลังที่กลั้นกรองมาจากกึ๋นของคนเรา จะเขียนอย่างไรถึงจะหมดจด? จะเขียนอย่างไรให้สั้นที่สุดแต่ทำงานเร็วที่สุด? เขียนอย่างไรให้ตัวโค้ตสามารถมีชีวิตอยู่ได้อีก 10 ปี โดยไม่มีใครมาแก้มันอีก? กี่ครั้งที่เราต้องนั่งคิดๆๆ แก้ปัญหาชนิดที่ว่าอ้อมโลก เขียนโค๊ต100 บรรทัด เพื่อให้ได้ผลลัพธ์อันเดียว?

สุดท้ายผมมองว่า มันคือศาสตร์(กฏเกณท์ ระเบียบวิธี เทคนิคต่างๆ ที่สั่งสมถ่ายทอดกันมาเป็น 10ๆ ปี และไม่มีวันผิด) และศิลป์(ความเป็นเอกเทศของแนวทางการเขียน ลูกเล่นต่างๆที่คิดเขียนกันขึ้นมาจากประสบการณ์ที่สั่งสม โดยมีพื้นฐานมาจากศาสตร์ ) ที่ไม่ต่างอะไรจากเพลง jazz การเล่นเป็นวงไม่ต่างอะไรจากการเขียนเป็นทีม ทุกคนมีลีลาเป็นของตัวเอง แต่สามารถบรรเลงประสานกันได้อย่างลงตัว


ในที่สุดวันนี้ก็มาถึง...

By: nevermore
AndroidUbuntu
nevermore's blog
on 20/01/12 19:35 #375667 toggle
nevermore's picture

ศิลปะ มันอยู่เหนือเหตุและผล และไม่ต้องการคำอธิบายใดๆ

หึหึ......"เขียนโปรแกรม ฉันจะเขียนอย่างนี้ มีปัญหามั้ย ของเธออยากเขียนอะไรแบบไหนมันก็เรื่องเธอ

แต่เธอต้องแก้เออเร่อในแบบที่ฉันเขียนมาอย่างนี้ให้คอมไพล์ได้ เข้าใจมั้ย !!!"

อาร์ตมว๊ากกกกกกกกกกกกกก

เคยโดนมั้ยล่ะ หนุ่มๆ หึหึ

By: Manta
AndroidWindows
Manta's blog
on 21/01/12 20:47 #375894 toggle
Manta's picture

ในเชิงทรัพย์สินทางปัญญา ซอฟต์แวร์ถือเป็นงานวรรณกรรมไม่ใช่เหรอครับ (ผมเคยอ่านเจอนานแล้วนะ ถ้าผิดพลาดขออภัย)

By: pitisave
AndroidUbuntu
pitisave's blog
on 24/01/12 9:01 #376475 toggle
pitisave's picture

ใช้คณิตศาสตร์สร้างงานศิลปะ

By: mogohm
iPhoneWindows PhoneAndroidBlackberry
mogohm's blog
on 30/01/12 23:34 #378445 toggle
mogohm's picture

มันเป็นศิลปะ บน โลกไซเบอร์ และ ตัวเลข ....อิอิ