Thursday, June 29, 2006

วันแห่งการตัดสินใจ

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

ตอนนี้ตัวเลือกที่เหลือหลังจากตัดนู่น ตัดนี่ทิ้งไปหลายอันแล้วก็เหลือดังนี้

ภาษาที่จะใช้สำหรับ Web App
- JSP ก็เพราะรันได้ทุก Platform และยังมี class จาก Java ให้ใช้ด้วย
- PHP ก็เพราะมันฟรี และก็คล้ายๆกับ C ซึ่งจริงๆแล้ว PHP นี่ก็พอเขียนได้อยู่แล้ว

ภาษาที่จะใช้สำหรับ Win App
- Cpp มันทำงานเร็วดี และก็คุมทุกอย่างได้ดี แต่จริงๆแล้ว ก็ไม่ค่อยถนัดนักเพราะส่วนตัวคิดว่าเขียนยากจัง
และถ้าหากต้องการให้ cross platform ต้องใช้ widgets แต่ถ้า MFC คงง่ายกว่าแต่ก็แพงอีก
- Java รันได้ทุก Platform และก็มี IDE ฟรีๆ ดีๆ อย่าง netbean และ eclipse แถมด้วย report ฟรีๆ
- VB ก็เพราะมันโคตรจะ productivity เลยอ่ะนะ . . . ใช้เขียนโปรแกรมได้เร็วมากๆ ถึงจะไม่ถนัดแต่ไม่ยาก
ถ้าคิดจะไปศึกษา แต่ก็อีกมันเสียเงินค่อนข้างแพง - -''
- C# อันนี้ก็ดีนะ Compatible กับเครื่องที่รัน ได้ดีกับ Windows เขียนเป็นที่สุดในสี่ตัว .. ก็เรียนจบมาด้วย C#
ถ้าจะใช้ฟรีก็มี IDE อย่าง VC# ในรุ่น Express Edition ให้ใช้ แต่มันไม่มี Report นี่ดิ๊

ระบบบฐานข้อมูล
- Access ใช้บ่อยมันง่ายดี ( แต่เสียเงิน แพงอีกแหละ )
- mysql ฟรีแวร์ดีดี ซึ่งไม่ค่อยมั่นใจว่าถ้าใช้ทำ commercial software จะต้องจ่ายเงินให้หรือเปล่า
แต่คิดว่าไม่น่าจะต้องเสียเงินนะ . .. และก็ได้ทุก platform
- oracle 10g ฟรีแวร์ ( รุ่น express edition ) ยังไม่ได้ใช้เลยจะหัดใช้อยู่ ได้ทุก platform ด้วย
- ms sql express edition แจกฟรีจาก MS เหมือนกัน เค้าว่าดี เสียตรงอยู่แค่ตรง windows


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

Wednesday, June 28, 2006

Exthreme Programming

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

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

มันอาจจะไม่ดีนักที่ผมมาคิดตอนนี้เพราะผมเองก็ตัดสินใจทิ้งงานที่รับมาสองงาน เพื่อความต้องการส่วนตัวของผมตรงนี้
แต่ผมจะถือว่า นี่ คือการยอมเสีย เพื่อจะเริ่มต้นใหม่อีกครั้งในแบบที่ดีกว่าเดิม มีจุดยืนมากกว่าเก่า

ขอเวลาถึงสิ้นเดือน ตุลาคม . . .

#########################################################

เมื่อสมัยเรียน เคยนึกสงสัยตอนวิชา System Analyst ว่าทำไมนะ WaterFall Model ที่เค้าสอนเรามันดูแล้วรู้สึกว่า
เหมือน infinity loop ชอบกล วันนึงเคยไปอ่านเจอในกระทู้ว่า วันส่งโปรแกรม คือ จุดเริ่มต้นสำหรับผู้ใช้

มันก็จริง . . . คิดแล้วมันอ่อนใจ ผมก็คิดแล้วคิดอีกด้วยตัวผมเองพยายามจะให้การวิเคราะห์และออกแบบระบบของตัวเองมี Pattern
เป็นของตัวเราเอง . . . แต่แล้วจนมาวันนึงได้มีโอกาสอ่านบทความเกี่ยวกับ Exthreme Programming ก็เกิดติดใจขึ้นมาเลย
ว่านี่ น่าจะเป็นวิธีที่ทำให้ ผู้ใช้ และ โปรแกรมเมอร์ มีวันจบโปรเจค วันเดียวกัน และ ให้ผู้ใช้บอกความต้องการตัวเองออกมาได้ก่อนโปรเจค
จะเสร็จแล้วส่งมอบ แต่หลังจากอ่านเงื่อนไขหลายๆอย่างแล้วผมก็คิดว่า มันคงเอามาใช้ได้ไม่หมดหรอก สุดท้ายไม่ว่าจะเป็นทฤษฏีใดๆ
เราก็คงจะต้องเลือกใช้ และ เลือกมองข้าม ตามความเหมาะสมอยู่ดี