เปิดตัว PodCastsGen WebBase Version 0.0.1 Alpha

Link@PodCastsGen WebBase Version 0.0.1 Alpha

เป็นโปรแกรมประยุกต์ ที่ทำงานบนได้บน Web Browser โดยใช้ความสามารถของภาษา PHP และ JavaScript แล้วทำการ Export หรือ Generate Code เป็น XML ซึ่งอยู่ใน specification ของ RSS Feed และตรงตาม specification ของ Podcasts ในระดับสากลด้วย

ขั้นตอนการทำงาน และการใช้งานไม่ยุ่งยากเนื่องจากในหลักการเอาข้อมูลที่ได้จาก form ในระบบ Input data dynamic หรือการใส่ข้อมูลเชิงยืดหยุ่นนั้นเอง กล่าวคือ ระบบจะมีข้อมูลพื้นฐานที่จำเป็นก่อน นั้นคือ รายละเอียดของ Podcasts ต่างๆ ไม่ว่าจะเป็น

  • ชื่อ
  • ใจความสำคัญ
  • ที่อยู่ของ Podcasts ที่จะเอาไปใส่
  • ชื่อผู้จัดทำ
  • อีเมล ของคนจัดทำ นั้นๆ
  • โดยที่จะเริ่มด้วย Episodes แรกเป็นขั้นเริ่มต้น ซึ่งคำว่า Episodes เป็นคำที่เรียกจำนวนตอน หรือจำนวนไฟล์ของมีเดีย นั้นๆ ครับ

การใส่ Episodes ในโปรแกรมประยุกต์นี้ จะเป็นไปในลักษณะของการใส่ที่อยู่ของไฟล์มีเดีย ซึ่งไฟล์มีเดียที่จะเอามาใส่นั้นควรมีลักษณ์สำคัญคือ

  • มีขนาดที่ไม่ใหญ่มาก (แนะนำไม่ควรเกิน 10MB ต่อความยาวในการออกอาหาศ 1ชม.)
  • ใช้นามสกุลไฟล์เป็น mp3, m4a, m4b, acc, aiff
  • ต้องมีที่อยู่จริงอยู่แล้วใน internet ซึ่งต้องทำการ upload จากเว็บใดเว็บหนึ่งก่อน ไม่ว่าจะใช้ที่ geocities หรือ thai.net ก็ได้

ซึ่งการใส่มีเดียในแต่ละส่วนนั้น จะใช้หลักการคล้ายๆ กับการใส่ Condition ใน SmartPlaylist ของ iTunes นั้นเอง ซึ่งจะสามารถใส่มีเดียได้ไม่เกิน 10 ไฟล์ และอนาคตจะพัฒนาให้สามารถใส่ได้ไม่จำกัด

เมื่อทำการ submit ตัว form ของโปรแกรมประยุกต์แล้ว ตัวระบบจะทำการสร้างโค็ด XML ออกมาโดยแสดงใน Web Browser ของท่าน โดยที่ทางผู้ใช้ต้องทำการ save โค็ดเหล่านั้นเอง ไม่ว่าจะด้วยวิธีใดก็ตาม ตัวอย่างเช่น

Internet Explorer

  • ใช้เมนู File ตามด้วยเมนู Save As
  • ที่ Dialog Save As ให้เลือก Save as type เป็น XML Files (*.xml)
  • ที่ File name ให้ใส่ของไฟล์ลงไป
  • เอาไฟล์ดังกล่าวไป upload ขึ้นที่เว็บที่เราต้องการ
  • ตัวอย่าง http://www.yourweb.com/podcasts/yournamepodcasts.xml

Firefox

  • ใช้เมนู File ตามด้วยเมนู Save Page As
  • ที่ Dialog Save As ให้เลือก Save as type เป็น XML Document
  • ที่ File name ให้ใส่ของไฟล์ลงไป
  • เอาไฟล์ดังกล่าวไป upload ขึ้นที่เว็บที่เราต้องการ
  • ตัวอย่าง http://www.yourweb.com/podcasts/yournamepodcasts.xml

ก็เป็นอันเสร็จสิ้นวิธีการทำงาน โดยในอนาคตในขั้นตอนการจัดการไฟล์ ที่ Export ออกมาจะปรับเปลี่ยนเป็นการทำ Archive เป็น ZIP Files แทน เพื่อให้ขึ้น Dialog ให้ Download ได้เลย

และโครงการต่อไปเป็น PodCasts->Hub ที่กำลังร่างระบบอยู่ ซึ่งไม่รู้จะทำได้หรือเปล่า -_-" แต่ระบบน่ะไม่ยาก

วิธีการทำ podcast เผยแพร่

ผมได้ทำ podcast ของผมเองอยู่ที่ http://www.thaicyberpoint.com/podcasts ตอนนี้ผมทำ podcast ตัวแรกให้ลองฟังแล้วนะครับ ถ้ามีอะไรติชมก็บอกกันได้ครับ

ส่วนใครต้องการเอา podcast ตัวนี้ไปลองทำเองก็ง่ายมากครับ

สิ่งที่ต้องการก็มีพื้นที่เว็บใน internet ที่สนับสนุนการใช้ script PHP และพื้นที่สัก 10 – 20 MB ในการเก็บไฟล์เสียงครับ

แล้วก็หา script podcast จำพวก PHP มาลงครับ อย่างของผมก็ ลองโหลดไปแกะได้ที่นี่ครับ http://www.thaicyberpoint.com/podcasts/dircaster_v_04_podcastPHPScript.zip ทำการแตกไฟล์ zip แล้วก็ทำการปรับแก้เพียงเล็กน้อยครับ

—————————————–

// ขนาดมาที่สุดของการแสดง podcast ใน 1 ครั้ง

$maxFeed = 5;

// Title ของ Podcast ครับ

$titleTAG=”ThaiCyberPoint.com – PodCasts beta”;

// ที่อยู่ของ Podcast ครับ

$linkTAG=”http://www.thaicyberpoint.com/podcasts”;
// รายละเอียดของ Podcast ครับ ใส่เป็นภาษาไทยได้ ตอนนี้ผมปรับแต่งให้ลองรับภาษาไทยแล้วครับ
$descriptionTAG=”Public PodCast from ThaiCyberPoint.com”;
// ภาษาของ Podcast ครับ แนะนำให้ใช้ en-US ครับ
$languageTAG=”en-us”;
// คำแจ้งลิขสิทธิ์ของ Podcast ครับ
$copyrightTAG=”Creative Commons License”;
// อีเมลของ podcast ครับ
$webMasterTAG=”[email protected]”;
// ชื่อโปรแกรมที่เอามาทำ Podcast ไม่แนะนำให้ปรับเปลี่ยนครับ ถือเป็นมารยาท
$generatorTAG=”dirCast 0.4″;
// เวลาในการเข้าถึง หรือ timeout ครับ
$ttlTAG=60;

————————————-

แล้วก็ทำการ upload เข้าสู่ server ครับ ซึ่งมันเป็นไฟล์ index.php ครับ ก็เวลาเราให้ URL ก็ http://www.mysite.com/podcast/index.php หรือ http://www.mysite.com/podcast/ ก็ได้ครับ

แล้วจะเอาไฟล์เสียงขึ้นก็ทำการแก้ไข ID3 Tag ครับ แนะนำ Version 2.3 ครับ แล้วทำการ Upload ขึ้นไปที่เดียวกับไฟล์ index.php เมื่อกี้นี้ครับ ตัว script มันจะ detect เองจากไฟล์ว่า title, artist, album, year, comment, genre ว่ามีอะไรบ้างก็แนะนำให้ edit เอานะครับในไฟล์ สะดวกดีครับ

อนาคตเดี่ยวผมว่าจะ Podcast Portal ครับ ยังไงจะมาบอกอีกทีนะครับ สำหรับคนที่ไม่อยากทำ script เองครับ เพียงแต่หาพื้นที่เก็บไฟล์ก็พอน่ะครับ กำลังคิดโปรแกรมอยู่ครับ

ตัว script PHP ไม่สนับสนุนภาษาไทยในส่วนของ title, artist, album, year, comment, genre ใน ID3 Tag 2.3 นะครับ กำลังแก้ไขอยู่ครับ ตอนนี้ใช้แบบนี้ไปก่อนนะครับ

แถลงไข CPU 64-bit

อะไรคือ CPU 64-bit

         ใน Computer Architecture นั้น 64-bit เป็นการขยายของการใช้ integer, floating point, memory address หรือ ชนิดข้อมูลอื่นๆ ที่ต้องการใส่ข้อมูลที่มีขนาดความกว้างของข้อมูลมากถึง 64 bit (8 octets) โดยที่รายละเอียดของ CPU และ สถาปัตยกรรม ALU บน register, address buses, หรือ data buses ต้องมีขนาดเท่านั้นด้วย

         โดยในปี 2004 ได้มี CPU 64-bit CPU เป็นพื้นฐานสำหรับตลาดระดับ Server และเตรียมพร้อมสำหรับการเข้าสู่สายการผลิตหลักของตลาด Personal Desktop โดยการเข้ามาของ AMD64 (AMD), EM64T (Intel) และ PowerPC 970 (G5 จาก IBM)


ความเหมือนที่แตกต่างของ CPU 32-bit และ 64-bit

         นับแต่อดีตถึงปัจจุบันปริมาณข้อมูล ที่ใช้ในการประมวลผลต่อ 1 รอบสัญญาณนาฬิกามีจำนวนมากขึ้น อย่างไม่มีที่สิ้นสุด การเปลี่ยนแปลงจาก 16-bit ในอดีตเมื่อ 10 ปีก่อน มา 32-bit ในปัจจุบัน และกำลังก้าวเข้าสู่โลก 64-bit ได้สร้างปรากฎการณ์ใหม่ให้กับโลกคอมพิวเตอร์ได้อย่างมากมาย ทั้งในด้านจำนวนข้อมูลที่ส่งต่อในระบบภายในที่มีจำนวนมากขึ้น และความเหมือนจริงในการทำงานด้านมัลติมีเดียต่าง ๆ มากมาย ยังผลให้ ข้อมูลที่เข้าสู่กระบวนการประมวลผลนั้นมากตามไปด้วย ซึ่งไม่ได้เกี่ยวข้องในส่วนของความเร็วในการประมวลผลแต่ประการใด เป็นเพียงเพิ่มความหนาแน่นของข้อมูลต่อชุด ในการประมวลต่อครั้งเท่านั้น

         จากที่ได้กล่าวไปแล้วนั้นว่าความแตกต่างในทั้งสอง ไม่ได้แตกต่างกันที่ความเร็ว ขยายความให้เข้าใจได้ง่ายคือ สัญญาณนาฬิกายังคงมีความเร็วเท่าเดิม แต่ความหนาแน่นของข้อมูลต่อชุดคำสั่งมีมากขึ้นนั้น เราอาศัยการเปรียบเทียบที่ memory addrees ระหว่าง 32-bit และ 64-bit โดยที่ 32-bit นั้นมี memory address ได้ 4Gbytes เท่านั้น แต่ใน 64-bit นั้น มี memory address ถึง 16 Ebytes (~17,179,869,184 Gbytes) ทำให้เกิดความได้เปรียบในด้านความเร็วในการทำงานใน software ที่ต้องการ การไหลของข้อมูลในปริมาณที่มาก ๆ เช่นการเล่นเกม, ระบบฐานข้อมูลใหญ่ ๆ , ระบบที่ต้องการความละเอียดต่อการประมวลผลมาก ๆ เช่นการ Simulate, Render, Retouch, Lenear Editing ฯลฯ แต่หากเป็น software โดยทั่วไปแล้ว แทบจะไม่เห็นความแตกต่าง แต่อย่างใด “ปัญหาของระบบ 32-bit ที่ทำให้เกิด 64-bit ขึ้นมาในปัจจุบันคือ ขนาดของหน่วยความจำหลัก (RAM Memory) มีจำกัดเกินกว่าจะยอมรับได้แล้ว”

         CPU 32-bit นั้นมีความต้องหน่วยความจำหลักได้มากสุดที่ 4Gbytes เท่านั้น แล้ว 4Gbytes มาจากไหนหล่ะ ?
คำตอบคือ 32-bit register นั้นมาจาก 2 ยกกำลัง 32 หรือมีขนาดที่ 4Gbytes ของหน่วยความจำหลัก (RAM memory) นั้นเอง

         นั้นหมายความว่า CPU 64-bit นั้นมีความต้องหน่วยความจำหลักได้มากสุดที่ …..  16 Ebytes * (~17,179,869,184 Gbytes) นั้นเอง ซึ่งมาจาก 2 ยกกำลัง 64 หรือมีขนาดที่ 16 Ebytes ของหน่วยความจำหลัก (RAM memory)
* Ebytes อ่านว่า เอ๊กซาไบต์ (Exabyte)

232    = 4,294,967,296 bytes
        =~ 4 Gbytes
264    = 18,446,744,073,709,551,616 bytes
        = ~ 16 Ebytes หรือ 17,179,869,184 Gbytes

การแปลง byte เป็นหน่วยต่าง ๆ อ่านที่นี่ครับ พื้นที่ในฮาร์ดดิสค์หายไปไหน ?? มันคือพื้นที่ผีอยู่ หรือว่ามันหายไปจริงๆ !!!


แล้วมันแตกต่างกันตรงไหนในด้านการประมวลผล ?

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

  • คุณชมภาพยนต์ในจอคอมพิวเตอร์จากแผ่น VCD (เทียบได้กับ 32-bit) และ DVD (เทียบได้กับ 64-bit) ถ้าคุณได้รับชมผ่าน VCD ในจอคอมพิวเตอร์คุณได้ภาพที่เล็ก และไม่ละเอียด เท่ากับ DVD ที่มีภาพที่ละเอียดกว่า และยังขยายขนาดของภาพให้ Full Srceen ได้โดยภาพไม่แตกเหมือน VCD
  • คุณเล่นเกม ภาพที่ได้จะมีมิติมากขึ้นกว่าเดิม แสงเงาต่าง ๆ จะสมจริงมากขึ้น แต่ไม่ได้ทำให้การประมวลเร็วขึ้นแต่อย่างใด
  • ฯลฯ

         แต่ทั้งนี้ทั้งนั้น ต้องขึ้นอยู่กับ Software ที่นำมาทำงานร่วมกับ CPU 64-bit ด้วยว่าสนับสนุนการทำงานนี้หรือไม่ มิเช่นนั้นก็ไม่สามารถใช้งาน CPU 64-bit ได้อย่างมีประสิทธิภาพดังที่ตั้งใจไว้          สรุปให้เข้าใจง่าย ๆ ว่า 64-bit เป็นการทำให้การประมวลผลต่อครั้งมีความละเอียดมากขึ้น ไม่ใช่เร็วมากขึ้น อย่างที่ หลาย ๆ คนเข้าใจ แต่การเร่งความเร็วในการประมวลผล น่าจะเป็นในส่วนของ Dual Core CPU มากกว่า แต่การทำให้ Dual Core CPU สามารถใช้งานได้ดีและเต็มประสิทธิภาพนั้น จำเป็นอย่างมากที่ software ที่เราใช้ต้องสนับสนุนระบบ Multiprocessor ด้วยเช่นกัน

อะไรคือโปรแกรม และการเขียนโปรแกรม ตอนที่ 2 (จบ)

ตอนที่แล้วจาก : อะไรคือโปรแกรม และการเขียนโปรแกรม ตอนที่ 1



หันกลับมา
มองการเขียนโปรแกรม

            เมื่อเราได้มองซ้ายมืองขวาแล้ว เราก็คงพบว่า ทั้งการก่อสร้าง ทั้งการเขียนนิยาย มีคอนเซปท์ที่ค่อนข้างคล้ายกันมากที่เดียว และถ้าเราเทียบกับการสร้างโปรแกรมแล้ว เราจะได้อะไร ?

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

  • โปรแกรมที่ทำการจำลองการเดินทางของแสง จำเป็นต้องเข้าใจ Electromagnetics (Maxwell’s equations) และ Finite Defference method เป็นอย่างน้อยที่สุด

  • การจำลองของไหลในท่อน้ำ อาจจะใช้ Navier-Stoke’s equations กับ Finite Elements methods
    Voice recognition program
    อาจจะต้องใช้ความรู้ Pattern recognition, Signal processing ตลอดจนเรื่องอื่นๆ ที่เกี่ยวข้อง

  • โปรแกรมแต่งภาพ ก้ต้องรู้เรื่องพวก Image processing ต่างๆ ตลอดจน Compression techniques ต่าง ๆ
    3D Modeling
    ก็ต้องเข้าใจคณิตศาสตร์ของ Bazier curve, B-Spilne, NURB, Ray tracing หรือว่าเร็วๆ นี้ก็ Photon mapping

  • โปรแกรมเพื่อทำการดู Pattern ใน DNA sequence ก็จำเป็นต้องรู้เกี่ยวกับเรื่องของ DNA เบื้องต้นด้วย
    การเขียนเกมปรแกรม อาจจะต้องรู้ A*Path-finding, Collision  detecting, การประยุกต์ใช้ DSP-Tree ฯลฯ

  • ฯลฯ

เป็นต้น หรือว่าแม้แต่การพัฒนาส่วนประกอบใหม่ ๆ ของระบบเดิม ๆ เช่น

  • การเพิ่มตัวป้องกันเมลขยะ หรือ Spam mail ในโปรแกรมรับ e-mail ก็ตาม อาจจะใช้ความรู้พวก Machine learning, Pattern recognition, Rule discovery ฯลฯ ต่าง ๆ มากมาย

  • การทำ On-line e-Commerce นั้นก็อาจจะใช้ Machine learning เข้ามาช่วยกันกับ Data clustering และ  selt-organizing Map เพื่อแนะนำสินค้าให้กับลูกค้า

  • การเขียนโปรแกรมเพื่อควบุคมระบบ Network แบบอัตโนมัติ จำเป็นต้องรู้ Network Flows และ Optimization theory

  • ฯลฯ

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


ภาษาและการเขียนโปรแกรม

            การเขียนนิยาย เราใช้ภาษาใดภาษาหนึ่ง (ภาษาไทย, ภาษาอังกฤษ ฯลฯ) ในการเขียนบอกให้ตัวละครไปตามสถานที่ต่าง ๆ ในการเขียนบทสนทนา ในการเขียนบรรยายฉาก และเขียนในสำนวณต่าง ๆ กันไปแล้วแต่ผุ้เขียนแต่ละคน

            สำหรับการเขียนโปรแกรมนั้น ก็คือการเขียนคำสั่งเพื่อให้คอมพิวเตอร์ทำงานตามที่เราต้องการ อย่างที่ได้กล่าวถึงไปแล้วข้างต้น และเช่นเดียวกับการเขียนนิยาย ที่เราใช้ภาษาที่คนอ่านเข้าใจ การเขียนโปรแกรมคอมพิวเตอร์ ก็คือการเขียนคำสั่ง โดยใช้ภาษาที่คอมพิวเตอร์ สามารถเข้าใจได้ ซึ่งนั้นก็คือ ภาษาเครื่อง (Machine Language) นั่นเอง แต่ว่าทั้งนี้ ภาษาเครื่องนั้นยากต่อการทำความเข้าใจมาก จึงได้มีการพัฒนาภาษารับดับสูง (High-level Language) ขึ้นมามากมายหลายภาษา เพื่อให้คนสามารถเขียนโปรแกรมได้ง่ายขึ้น และใช้โปรแกรมที่เรียกกว่า คอมไฟเลอร์ (Compiler) ทำการแปลเป็นภาษาที่เครื่องเข้าใจอีดต่อหนึ่ง โดยภาษาระดับสูงที่เป็นที่รู้จักกันโดยทั่วไปก็คือ  C, C++, Pascal, Java ฯลฯ นอกจากนี้ยังมีอีกหลายภาษาที่ไม่เป้นที่รู้จักกันมากเท่ากับภาษาเหล่านี้ แต่ว่าก็เป็นภาษาที่สำคัญ และมีบทบาทในงานหลายอย่าง เช่น Lisp, OcaML, Python, Perl, Hashell ฯลฯ โดยภาษาเหล่านี้จะมีจุดเด่น และจุดด้อนแตกต่างกันไป

เรียบเรียงบทความโดย Rawitat Pulam

บทความฉบับนี้เป็นไปตามข้อกำหนดของ GNU Free Documentation License 1.2. เท่านั้น

Express Editions มัน Free (แต่มีเงื่อนไข) จริงๆ นะ

เข้าไปดูส่วนของ Microsoft SQL Server 2005 Express Editions แล้วตกใจหมดเลยกับคำว่า Free !!! เป็นไปได้ไง

แต่อ่านไปอ่านมา ก็ถึงบางอ้อ?.. หรือหนองอ้อ ดีหว่า (หุๆๆๆ) เพราะว่ามันคือการเปลี่ยนชื่อของ Microsoft SQL Server Desktop Engine (MSDE) จากเดิมที่ Microsoft แบ่ง SQL Server ของตัวเองเป็นสองส่วนคือส่วน Commercial ที่ใช้ชื่อว่า Microsoft SQL Server กับ Free ที่เป็น Microsoft SQL Server Desktop Engine แต่ตอนนี้เพื่อไม่สับสน (หรือเปล่า) เลยให้มันชื่อเหมือนๆ กันซะเลย เลยเปลี่ยนชื่อ MSDE เป็น Microsoft SQL Server Express Editions แทนซะเลย

ว่า Microsoft SQL Server 2005 Express Editions ถึงแม้จะ Express Edition ก็ตามที แต่ก็คาดว่าน่าจะทำงานได้ดีในระดับหนึ่ง แต่ดูๆ ไปแล้วคาดว่าทาง Microsoft คงเอามาสู้กับ Oracle Database 10g Express Edition ที่ Free ที่ได้เปิดตัว Beta ไปเมื่อเร็วๆ นี้เช่นกัน

แต่ขึ้นชื่อว่าของฟรีแล้ว มันก็มีข้อจำกัดในตัวของมัน Microsoft SQL Server 2005 Express Editions นั้นทำงานได้แค่ 1 CPU, RAM ไม่เกิน 1GB , ขนาดฐานข้อมูลไม่เกิน 4GB และไม่มีพวกสิ่งอำนวยความสะดวกพวก Analysis Services, Reporting Services, Data Transformation Services และ Notification Services เท่านั้นเอง แต่ถ้าอยากได้มากกว่านี้ก็ต้องใช้ของเสียเงินแทนหล่ะครับ ซึ่งถ้าดูๆ ไปก็เหมาะสำหรับคนที่ใช้เล็กๆ น้อยๆ, ธุรกิจขนาดเล็ก หรือนักพัฒนาระบบทั่วไปครับ

ต่อมาในส่วนของ Visual Studio Express Editions ที่แยกมาเป็น

Visual Basic 2005 Express Edition
Visual C# 2005 Express Edition
Visual C++ 2005 Express Edition
Visual J# 2005 Express Edition

แต่อันนี้ใช้ได้แค่ 1 ปีเท่านั้นหลังจากนั้นก็ซื้อมาใช้แล้วกันครับ คงไม่มีอะไรมาก แต่ว่าถ้าเอามาใช้ศึกษานี่เหมาะมาก หรือเอาไปเขียนซอฟต์แวร์ขายก็น่าจะ OK แต่ว่าติดที่คุณต้องลง Microsoft .NET Framework 2.0 ด้วย ซึ่งขนาดไม่แตกต่างกับ 1.1 หรือ 1.0 เท่าไหร่นัก

อย่างอื่นก็ลองอ่านเอาที่

Visual Studio Express : http://msdn.microsoft.com/vstudio/express/
SQL Server Express : http://msdn.microsoft.com/vstudio/express/sql/
Frequently Asked Questions : http://msdn.microsoft.com/vstudio/express/support/faq/default.aspx
Oracle Database 10g Express Edition : http://www.oracle.com/technology/products/database/xe/index.html

Update !!! 11/11/2005
เพิ่งได้รับความกระจ่างในเรื่องของ Visual Studio 2005 Express Edition ต่าง ๆ ของ Microsoft ในเรื่องนี้จากพี่เดฟ (ithilien_rp) โดยผมเข้าใจผิดไปนิดนึงในเรื่องของการใช้ฟรี 1 ปีแล้วหมดอายุนั้น “ไม่ใช่” ครับ

ขอปรับเปลี่ยนว่า การใช้งานนั้น “สามารถใช้ได้เท่าที่ต้องการไม่จำกัดระยะเวลา” แต่ที่จำกัดคือ “ระยะเวลาในการที่จะ Download ตัว Visual Studio 2005 Express Edtion มาเก็บไว้”

อ้างอิงจาก Frequently Asked Questions ใน Link ข้างต้นในข้อที่ 12 ที่ว่าไว้ว่า

You said “free for one year” ? what does that mean, exactly “Will you be charging for this later”

We originally announced pricing of Visual Studio Express at US$49. We are now offering Visual Studio Express for free, as a limited-in-time promotional offer, until November 6, 2006. Note that we are also offering SQL Server 2005 Express Edition as a free download, and that this offer is not limited to the same promotional pricing period as Visual Studio Express.

โดยที่ใจความสำคัญว่า “พวกเราตั้งราคาพื้นฐานของ Visual Studio Express ไว้ที่ 49$ แต่ในตอนนี้ Visual Studio Express นั้น Free โดยมีช่วง Promotion ถึงวันที่ 6 พฤศจิกายน 2006 โดยที่ SQL Server 2005 Express Edition นั้นก็ Free เช่นกัน แต่ไม่ได้กำหนดเวลา Promotion เหมือนกับ Visual Studio Express”

Update !!! 12/11/2005
มีคนถามว่ามันเป็น Beta หรือเปล่า ก็บอกได้เลยว่า Visual Studio 2005 Express Edition ที่อยู่ในเว็บ มันเป็นตัว Full Version แล้วครับ ไม่ใช่ Beta หรือ Demo/Trial ครับ ซึ่งตอนนี้ผมกำลังโหลดอยู่เหมือนกันครับ

แต่เท่าที่คาดการณ์นะครับ ในเรื่อง Express Edition ที่ได้ฟังจากพี่เดฟ และความเห็นส่วนตัวนั้น เป็นการเปิดตัว Free Developer Tools สำหรับ .NET Platform ทั้งระบบครับ โดยภายใต้การทำ IDE จาก Microsoft แทน Third Party อื่นๆ เพราะว่าปีหน้า Vista กำลังมาครับ และ Vista เป็นการทำระบบทั้งหมดใน OS ใหม่ทั้งหมด ไม่ว่าจะ Avalon, WinFS, Indego และทั้งส่วนของ Base Operating System ด้วย โดยคาดการณ์ไว้ว่า Microsoft Windows Vista จะไม่สนับสนุน Win32 Library , VB Runtime Library 6.0 หรืออื่นๆ ก่อนหน้า .NET Platform ทั้งหมด หรือถ้าสนับสนุน ก็ผ่าน Emulator หรือ Run Time Virtual Machine ไปแทน ซึ่งทำให้ประสิทธิภาพลดลงไป แต่ใช้งานได้ แต่ช้าหน่อย อย่าลืมนะครับว่า .NET มันมี 2 ส่วนใหญ่ๆ คือ CLR (Common Language Runtime) กับ CLI (Common Language Infrastructure) ซึ่งทำให้คนที่พัฒนาซอฟต์แวร์ทำงานได้ง่าย และดีขึ้น รวมไปถึงถ้าใช้ C++.NET ในการพัฒนาแล้ว Compile เป็น Native Code แบบ .NET แล้วด้วยเนี่ย ทำให้เราใช้ Feature ใหม่ๆ ใน .NET รุ่นใหม่ๆ ได้ดีขึ้น ซึ่งเป็นการทำ Express Edition ออกมาเป็นของเล่นของนักพัฒนาซอฟค์แวร์ได้ลองใช้ และปรับเปลี่ยนการใช้งานของตนเอง รวมไปถึง Recompile ตัว Software เดิมใหม่ด้วย เพื่อให้ Win32 Library , VB Runtime Library 6.0 หรืออื่นๆ ที่ตนเองได้ใช้อยู่ได้ทำการเปลี่ยนแปลงตัวเองมาทำงานบน .NET แทน ซึ่งดูจากเวลาที่ออกก็มีเวลาในการปรับเปลี่ยนตรงนี้ประมาณเกือบ 1 ปีเห็นจะได้ครับ ซึ่งที่ทำแบบนี้เพราะต้องเอามารองรับการเปลี่ยนระบบ Base Operating System ใน Vista เองด้วย เพื่อให้การปรับเปลี่ยนนี้ราบรื่นขึ้น และมี Software ที่ทำงานได้ดีบน Vista ซึ่งบทเรียนนี้เกิดจากตอน XP ที่ออกมาไม่ได้ทำแบบนี้เลยทำให้ซอฟต์แวร์ส่วนใหญ่ทำงานไม่ค่อยได้ในตอนแรกนั้นเอง และรวมไปถึง Microsoft น่าจะทำออกมาแข่งกับ Java Platform ที่เพิ่งปล่อยพวก Enterprise IDE ออกมาให้ใช้ฟรีๆ แถมด้วยตลาด Database ที่ออก Oracle ที่ออก Express Edition ที่ยังเป็น Beta เช่นกัน โดยคราวนี้ Microsoft ปล่อยมา ยกระบบเลยทั้ง IDE และ DBMS ด้วย

แหม เล่นซะคนช็อคกันทั่วโลก ไม่อยากเชื่อว่า Microsoft จะสำกดคำว่า Free !!! ได้

Update !!! 13/11/2005
แต่ลองใช้งานแล้ว convert project เก่าจาก VB.NET 2003 มาใช้ใน 2005 ก็ไม่มีปัญหาใดๆ ตัว project ทำงานได้ปกติดี แต่ไม่รู้ว่าตัว project ที่ซับซ้อนมากๆ จะมีผลหรือเปล่า

ส่วนการ download มาแล้วทำการลง แนะนำว่าให้ทำการ register ด้วยจะดีมากครับ เพื่อเป็นการยืนยันลิขสิทธิ์ครับ กันไว้ก่อนดีกว่า

แต่ผมชอบมากเลยสำหรับ Learning Resources for Visual Basic Express เป็น VDO Review ครับ ทำได้ดีพอสมควรทีเดียว

http://msdn.microsoft.com/vstudio/express/vb/learning/default.aspx

เท่าที่ดูนี่ ผมว่างานนี้ Microsoft มาแปลก ๆ ดูทุ่มเท มากเลยงานนี้ ;)