Voice in the Gentle Wind

ตุลาคม 27, 2007

iPhone เมื่อ 15 ปีที่แล้ว ?

Filed under: java — deans4j @ 9:23 pm

(คำเตือน : เสียงน่ารำคาญนิดนึง)

สมัยป๋าแกยังหนุ่ม ปี 1992 กับเครื่องต้นแบบ Star7 ตลกดีเหมือนกันเทียบกับวันนี้ UI ระดับนี้ธรรมดามากมาย แต่เมื่อ 15 ปีที่แล้วคงจะสร้าง wow effect ได้น่าดูชม คิดต่อไปสัก 10 ปีข้างหน้า UI จะเปลี่ยนไปแค่ไหนกัน เด็กในวันนั้นจะนั่งขำกับสิ่งที่เราทำ ณ วันนี้หรือเปล่า

เห็น Duke ไหม? นั่นมัน Java มาสคอตนินา แล้ว 15 ปีที่แล้วมี Java แล้วหรอ? สงสัยไหมครับ? : )

โปรเจกต์ Green ต่อมาในอนาคตเล่นบทบาทสำคัญทีเดียว เป็นต้นกำเหนิดของภาษา Oak ภาษาที่ออกแบบมาสำหรับอุปกรณ์ขนาดเล็ก ก่อนจะผันตัวเองมาเป็น Java ณ วันนี้ สรุปแล้ว Duke เกิดมาตั้งแต่ยุคแรกๆ เลยเชียว

Advertisements

ตุลาคม 23, 2007

ดูไบ

Filed under: java — deans4j @ 7:45 pm

ช่วงนี้งานยุ่ง และข่าวเยอะมาก ต้องขอติดไว้ก่อน

เพื่อคั่นเวลาแก้คิดถึง + มีคนถามผมเรื่อง Dubai บ่อยๆ ว่าเป็นอย่างไร น่าไปทำงานไหม

เลยถือโอกาสส่งวิดีโอนี้ไปดูแก้ขัดเพื่อให้เห็นภาพรวมของเมืองว่าเป็นยังไง

คิดยังไงกัน?

ตุลาคม 15, 2007

BEA ปฏิเสธความพยายามเข้าซื้อกิจการจาก Oracle

Filed under: java — deans4j @ 1:38 am

BEA ปฏิเสธความพยายามของ Oracle เจ้าพ่อจอมใช้เงินตบเด็กเข้ารังที่เสนอซื้อด้วยราคาต่อหุ้น $17 สูงกว่าราคาจริงในตลาดถึง 25%BEA เป็นบริษัท middleware คู่แข่งที่มีผลิตภัณฑ์ดีที่สุดในตลาดก็ว่าได้แต่ด้วยการตลาดที่แย่ทำให้ไม่โด่งดังเทียบเท่า Oracle และ IBM การปฏิเสธครั้งนี้ BEA ให้เหตผลว่าราคาที่ Oracle นั้นยังน้อยเกินไปเมื่อเทียบกับคุณค่าผลิตภัฒฑ์ของ BEA จริงๆ จากการไล่ตบเด็กมาตลอดหลายปีหลัง รวมกับการเข้าซื้อครั้งนี้สำเร็จลง Oracle จะมีผลิตภัณฑ์ที่ซ้ำซ้อนตลาดของตัวเองเต็มไปหมด

ที่มา – CNN

ตุลาคม 13, 2007

Filed under: God's qoute — deans4j @ 11:07 pm

With Him are the keys of the Unseen, the treasures
that none knoweth but He. He knoweth whatever there is
on the earth and in the sea. Not a leaf doth fall but
with His knowledge: there is not a grain in the
darkness (or depths) of the earth, nor anything fresh
or dry (green or withered), but is (inscribed) in a
Record clear (to those who can read).” (Al An-aam:59)

ตุลาคม 10, 2007

รวบยอดข่าว JDK/JRE/OpenJDK

Filed under: java — deans4j @ 8:03 am

วันนี้ JRE/JDK 6 update 3 ออกแล้วนะครับ รุ่นนี้จะเด่นเรื่องระบบรักษาความปลอดภัยแบบใหม่  แต่จากประกาศในรีลีสโน็ตน่าสังเกตคือจำนวนบั๊กที่ถูกแก้ไปนั้นน้อยกว่าอัปเดตรุ่นก่อนๆ มาก นี่อาจสื่อความหมายได้ว่า

  • ตั้งแต่อัปเดต 2 มา JRE/JDK ก็เสถียรแล้ว – ไม่ได้ต่อต้านนะครับ แต่จากธรรมชาติซอฟต์แวร์ ผมคงไม่เชื่ออย่างนั้น ถ้าให้ทำนายเล่นๆ คิดว่า
  • ซันน่าจะโยกย้ายวิศวกรไปลงกับโครงการ Java SE 6 update N ซึ่งตรงนั้นถือว่าเป็นอัปเดตขนาดใหญ่ อันที่จริงถ้าไม่กลัวคนสับสนว่าอัปเดตนี้มีผลกระทบไปปรับแต่งไลบรารี่ส่วนใดจากเติมหรือเปล่า การเพิ่มทศนิยมอีกจุดหลังชื่อก็ไม่น่าเกลียดด้วยซ้ำ (ยกตัวอย่างเช่น Java SE 6.5)

ที่มา – Sun Site

ส่วนข่าวทางฝั่ง OpenJDK เคลียร์ปัญหาที่ติดไบนารีที่โอเพนซอร์สไม่ได้ไปหลายส่วน ส่วนของ rasterizer มีข่าวว่าตัวที่จะมาแทนส่วนโคลสซอร์ส Ductus มีชื่อว่า Pisces เป็นโครงการโอเพนซอร์สใหม่ที่ในแง่ฟีเจอร์นั้นสมบูรณ์เทียบเท่าแล้ว แต่ยังติดปัญหาเรื่องประสิทธิภาพอยู่ ส่วนถังใส่โค้ดอย่าง Mercurial กำลังดำเนินการอย่างแข็งขัน น่าจะพร้อมประกาศตัวสู่สาธารณะ ราวสิ้นเดือนนี้

  • อะหนึ่ง ส่วน rasterizer คือส่วนหนึ่งใน Java2D ที่จัดการกราฟิกให้ทำภาพ anti-alias ได้
  • Pisces เป็นโครงการโอเพนซอร์สอยู่แล้วแต่เดิมมีเป้าอยู่ที่การทำ rasterization บน Java ME เท่านั้น
  • ส่วน Mercurial จะเป็นระบบ distributed revision control ที่ซันเลือกใช้ในการบริหารจัดการโค้ดของ OpenJDK เมื่อเปิดให้คนภายนอกเข้าถึงได้

Pair Programming (2)

Filed under: NoneSense, simple thoughts — deans4j @ 12:10 am

(more…)

ตุลาคม 9, 2007

Crap4j : ตัววัดโค้ดห่วย

Filed under: Testing/TDD/BDD — deans4j @ 12:27 am

วันนี้ไปเจอมา สะดุดก็ตรงชื่อมันนี่แหละ คอนเซปต์อ้างว่าโค้ดห่วยดูแลยากมักสอดคล้องกับโค้ดที่ผ่านการทดสอบมาไม่เพียงพอ crap4j (Change Risk Analysis and Prediction for Java) [ยังอุตสาห์หาชื่อมาจับได้] เป็นเครื่องมือวัดความห่วยของโค้ดโดยพิจารณาจากความซับซ้อนของเมธอดและค่าการครอบคลุมของบททดสอบ (test coverage) ในเมธอด โดยมีสูตร v.0.1 ว่า

 

CRAP(m) = comp(m)^2 * (1 – cov(m)/100)^3 + comp(m)

comp(m) เป็นผลการวัดความซับซ้อนของเมธอด m ส่วน cov(m) เป็นการวัดการทำ test coverage เมธอด ผลลัพธ์ที่ได้คือคะแนนความห่วยของเมธอดนั้น จากสูตรเพราะฉะนั้นถ้าเมธอดยิ่งซับซ้อนเท่าไหร่ การทำ test coverage ก็ต้องทำอย่างจริงใจมากขึ้นเท่านั้น ตารางข้างล่างบ่งบอกความสัมพันธ์วิกฤตก่อนจะพิจารณาว่าเมธอดนั้นห่วยหรือไม่

คะแนนความซับซ้อนของเมธอด         % test coverage วิกฤตเมธอดห่วย
------------------------------        --------------------------------
0 – 5                                   0%
10                                     42%
15                                     57%
20                                     71%
25                                     80%
30                                    100%
31+                                   ไม่มีทางที่ test coverage ใดๆ จะทำให้เมธอดที่ซับซ้อนขนาดนี้หลุดพ้นจากคำว่า ห่วย ไปได้

ผู้ประพันธ์ให้ความเห็นว่าที่ระดับโปรเจกต์หากมี crap เมธอดเกิน 5% ให้พิจารณาได้เลยว่าโปรเจกต์นั้น crap ตามไปด้วย 😉

ถ้าอยากเล่นกับ crap4j ตอนนี้มี Eclipse plug-in ให้ลอง prototype ดูได้

ที่มา – Artima

Pair Programming

Filed under: NoneSense, simple thoughts — deans4j @ 12:05 am

ใครทำ Pair Programming มีอาการแบบนี้บ้าง?

ตุลาคม 6, 2007

Astro (Flash 10) แนะนำภาษา Hydra

Filed under: flex/apollo, ria — deans4j @ 10:02 pm

งาน Adobe MAX 2007 ที่เพิ่งผ่านไป อโดบีแอบเปิดให้ดูความสามารถใหม่ๆ เล็กน้อยใน Flash 10 หรือโค้ดเนม Astro หนึ่งในจุดขายใหม่ที่สำคัญคือ Hydra ภาษาโปรแกรมมิงสำหรับการทำกราฟิก

คาดว่า Hydra จะมาแทนที่การฟิลเตอร์เอฟเฟกซ์แบบเดิมๆ ที่มีใน Flash 8 โดย Hydra นำเทคโนโลยีที่มีอยู่ Adobe After Effect CS3 มาผสมรวมกัน ข้อดีของ Hydra นอกจากจะเขียนเอฟเฟกซ์เพิ่มได้ไม่จำกัดแล้ว อีกประเด็นที่น่าสนใจคือความเร็วในการแสดงผล Hydra ปรับแต่งการทำงานและใช้ประโยชน์จาก GPU และประโยชน์ของ multi-core CPU ในการช่วยคำนวณ ผลลัพธ์ที่ได้จะทำให้การประมวลผลภาพอนิเมชันทำงานได้อย่างรวดเร็วมาก

ในงานยังเปิดตัว AIF Toolkit เครื่องมือที่ช่วยในการพัฒนาเบื้องต้น ดูดีๆ เหมือน JavaFX Pad แต่เท่กว่าเยอะเลย 😛 คงใกล้ได้เวลาอ่าน ActionScript แบบจริงจังแล้วสินะ

ที่มา – John Nack’s Blog

วิดีโอตอนท้ายที่โชว์ Hydra

ตุลาคม 4, 2007

What I Read : Rich Client Programming + Filthy Rich Clients

Filed under: simple thoughts — deans4j @ 2:03 am

เล็งสองเล่มนี้ไว้ตั้งแต่ยังไม่ออก พอออกแล้วเลยสั่งมา อยากเก็บไว้เป็นที่ระลึกซักหน่อย

ผมมองการณ์ไกลถึงเรื่องจาวาบน Desktop Client ว่ามีโอกาสจะกลับมาแบ่งส่วนตลาดได้บ้าง หลังจากที่พักหลังๆ ดูเหมือนว่าจะมีโมเมนตั้มที่ดีขึ้นเรื่อยๆ

เล่มแรกมีชื่อเต็มๆ ว่า Rich Client Programming – plugging into NetBeans Platform เนื้อหาส่วนใหญ่ก็โฟกัสไปที่การใช้งานตัว NetBeans Platform นั่นเอง ผมอ่านเล่มนี้ไม่ได้หมายความว่าผมต่อต้านหรือยืนฝั่งตรงข้ามกับ Eclipse RCP นะ แต่เป็นเพราะพื้นความรู้สถาปัตยกรรมของ Swing ที่มีมากกว่า เลยไม่อยากเสียเวลาไปอ่าน SWT มากนัก พอดีผมยังเป็นวัยรุ่นอยู่ ยังอยากมีเวลาเที่ยวเล่นบ้าง : P

เล่มที่สอง Filthy Rich Clients – Developing Animated and Graphical Effects for Desktop Java Application ชื่อยาวมากแล้วก็เขียนสนุกมากเช่นเดียวกัน  คนเขียนก็คนคุ้นเคย Chet Haase กับ Romain Guy ที่ผมชอบยกข่าวอ้างอิงจากบล่อกแกบ่อยๆ ทั้งคู่ขึ้นชื่อเรื่องอารมณ์ขันดีเด่นอยู่แล้ว อ่านก็เลยเพลินซะ เล่มนี้พูดถึง Timing Framework Library ที่เคยเล่าข่าวไป แล้วก็พูดถึง Painter Interface ใหม่ที่เคยเล่าไปแล้วเช่นกัน ซึ่งสองเทคโนโลยีนี้จะตามหลังมาเป็นมาตรฐานใน Java 7 จะช่วยเปิดความสามารถการทำเอเฟกต์ต่างๆ ใน Java2D ให้เป็นเรื่องที่ง่ายขึ้น และมีการ reuse ที่ดีขึ้น เป็นอีกทางเลือกนอกจาก JavaFX ที่มาใหม่ ถึงแม้เล่มนี้จะสนุกดี แต่อ่านแล้วต้องมีความรู้ Computer Graphic น่าจะอ่านได้ลื่นขึ้น ซึ่งเป็นหนึ่งในวิชาคอมฯ ไม่กี่ตัวที่ผมไม่ได้ลงเรียนตอนป.ตรี

 

สองเล่มนี้ได้มาเป็นอาทิตย์แล้วครับ แต่ไม่ได้พูดถึงเพราะยุ่งตลอด สั่งผ่าน Amazon.com เล่มละ $32 -33 ถือว่าซื้อได้ถูกกว่าตอนปัจจุบันเพราะสั่งจองล่วงหน้า (ปัจจุบันแม้จะซื้อร่วมกันก็ยังแพง $82.98 เพราะ Amazon.com กลับไปขายเล่มแรกเต็มราคาที่ $49) พอได้มา ก็เหมือนซื้อ CD เพลงแหละครับ เอาเก็บเข้าตู้ แล้วก็หยิบเวอร์ชัน e-book ที่ได้มาก่อนหน้านานแล้วมาอ่านต่อ : P จะหยิบออกมาก็ตอนอยากเอาไปอ่านระหว่างการเดินทางซะมากกว่า

อีกเล่มนึงที่ผมแนะนำว่าให้อ่าน โดยเฉพาะแฟนๆ eXtreme Programing คือ Test Driven – practical TDD and Acceptance TDD for Java Developer จากสำนักพิมพ์ Manning โดย Lasse Koskela เป็นอีกคนที่เขียนสนุกดีมากๆ ผมว่าเหมาะเลยที่จะใช้เป็นหนังสือเล่มแรกให้กับ developer ที่ไม่เคยทำ TDD มาก่อน เพราะเท่าที่เคยดูมาหลายเล่มส่วนใหญ่จะไม่ค่อยเน้นการโน้มน้าวสู่ TDD เท่าไหร่ คนอ่านที่โดนหลอกมาอ่านถ้าไม่เคยรู้มาก่อนว่า TDD คืออะไรอาจจะเหวอได้ แต่เล่มนี้ไม่ค่อยเน้น code ครับส่วนใหญ่จะเน้นการปูคอนเซปต์ที่ดี ตอนนี้ที่ JavaLobby ก็มีบทสัมภาษณ์ Lasse Koskela ใช้คำว่า “a must have book” ซึ่งผมว่าไม่เว่อร์เกินไปเลย ส่วนตัวผมให้ดาวพอๆ กับเล่ม Hibernate in Action จากค่ายเดียวกันเลย

Older Posts »

บลอกที่ WordPress.com .