Python
Django บน Jython ใกล้ความจริง
Submitted by mk
on 4 January, 2008 - 18:19.
tags:
โครงการ Jython (เขียน syntax ด้วยภาษาไพธอน แต่แปลงออกมาเป็น Bytecode ของจาวา) สามารถใช้เฟรมเวิร์กสำหรับพัฒนาเว็บแอพพลิเคชันอย่าง Django ได้แล้ว (สำหรับคนที่ไม่รู้จัก Python/Django เทียบได้กับ Ruby/Rails)
สำหรับตอนนี้ขั้นตอนยังยุ่งยากเล็กน้อย คือต้องใช้ทั้ง Jython และ Django เวอร์ชันใหม่ล่าสุดจาก SVN และลงแพตช์อีก 2 ตัว (คาดว่าในอนาคตแพตช์นี้จะเข้า Django) ปัจจุบันยังสนับสนุนแค่ PostgreSQL ส่วน MySQL เห็นว่ามี experimental backend แล้ว แต่ทั้งหมดนี้เป็นสัญญาณอันดีว่าอีกไม่นาน Django บน Jython จะใช้งานได้อย่างสมบูรณ์
ที่มา - บล็อกของ Jim Baker, Python Wiki
รุ่นที่สองของไพธอน 3000 alpha
Submitted by pruet
on 9 December, 2007 - 06:07.
tags:
ความสามารถเด่น ๆ ในรุ่นนี้ก็คือการเปลี่ยนชนิดข้อมูลแบบ bytes ให้กลายเป็น Immutable แล้วเพิ่มชนิดข้อมูล bytearray ที่เก็บข้อมูลแบบ Mutable ขึ้นมา ถ้านึกภาพของ Immutable/Mutable ไม่ออก ก็ลองนึกถึงชนิดข้อมูลแบบ String กับ StringBuffer ในจาวาดู สรุปง่าย ๆ ก็คือ ข้อมูลแบบ Immutable หลังจากสร้างขึ้นมาแล้วจะไม่สามารถแก้ไขได้ (พูดง่าย ๆ ก็คือไม่มี Setter ให้ใช้) ซึ่งมีประโยชน์มากสำหรับการสร้างข้อมูลที่ถูกใช้จากหลาย ๆ Thread เพราะว่าไม่จำเป็นต้องทำ Thread Synchronization กับข้อมูลแบบก็ได้เนื่องจากข้อมูลมันเปลี่ยนไม่ได้อยู่แล้ว แต่ในขณะเดียวกับ ข้อมูลแบบ Immutable จะมี overhead สูงกว่าถ้าต้องทำการเปลี่ยนแปลง ในจาวาถึงแนะนำให้ใช้ StringBuffer ในการสร้าง ดัดแปลง หรือว่าแก้ไขข้อความ แล้วจึงเปลี่ยนเป็น String ตอนท้ายทีเดียว
ที่มา - Blog ของ BDFL
- pruet's blog
- Login or register to post comments
Python 3000 alpha 1 มาแล้ว
Submitted by lew
on 1 September, 2007 - 23:48.
tags:
หลังการถกเถียงและเสนอความเห็นในประเด็นต่างๆ กันมายาวนาน Python 3000 ก็คลอดออกมาเป็นตัวเป็นตนแล้วเป็นครั้งแรก โดย Python 3000 จะไม่รับประกันความสามารถทำงานร่วมกับโค้ดเก่าๆ ที่เขียนขึ้นเพื่อ Python 2.X อีกต่อไป
ทาง Guido van Rossum นักพัฒนาที่สร้างภาษานี้ขึ้นได้ระบุถึงแผนงานว่ายังมีงานอีกมากที่ต้องทำหลังจากออก alpha 1 นี้ โดยเขาคาดการว่า Python 3000 รุ่นตัวจริงน่าจะคลอดออกมาในอีกหนึ่งปีข้างหน้า
สำหรับความสามารถใหม่ๆ สามารถอ่านได้ที่หน้า What’s New in Python 3.0
ที่มา - Artima
MySQL + Python on Mac OS X
Submitted by pittaya
on 22 June, 2007 - 10:34.
tags:
ปกติแล้ว python ที่ติดมากับ Mac OS X จะไม่มี module สำหรับติดต่อกับ MySQL database ทำให้เวลาที่ต้องการจะใช้งานผ่านทาง python ต้องติดตั้ง module MySQLdb เสียก่อน วิธีติดตั้งคือ
- ไปโหลด source module มาก่อนที่ http://sourceforge.net/projects/mysql-python/ อันที่โหลดมาเป็นเวอร์ชัน 1.2.2
- untar ออกมาจะได้ source อยู่ในไดเรกทอรีนึง
- ถ้าไม่มี mysql_config อยู่ใน PATH ก็แก้ไฟล์ setup_posix.py จากที่ว่า
mysql_config.path = "mysql_config"
แก้เป็น
mysql_config.path = "/path/to/your/mysql_config"
- สั่ง build ด้วยคำสั่ง
$ python setup.py build
- install module ด้วยคำสั่ง
$ python setup.py install
- เวลาเรียกใช้งานก็ import เข้ามาตามปกติ
Python 2.3.5 (#1, Jan 13 2006, 20:13:11)
[GCC 4.0.1 (Apple Computer, Inc. build 5250)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
Guido แถลงความคืบหน้า Python 3000
Submitted by lew
on 20 June, 2007 - 10:39.
tags:
หลังจากประกาศถึงแนวคิดของ Python 3000 มานาน Guido van Rossum ก็ออกมาเขียนบล็อกล่าสุดถึงแผนงานล่าสุดของทาง Python 3000 ที่จะเป็นการยกเครื่องครั้งใหญ่ และแน่นอนแล้วว่าจะไม่มีการรองรับ Backward Compatible อีกต่อไป
Guido ระบุว่าใน Python 2.6 จะเริ่มมีส่วนที่เป็นการรองรับความสามารถในอนาคตมาให้ใช้งานกัน พร้อมกับโหมดคำเตือนสำหรับโปรแกรมที่จะไม่ทำงานใน Python 3000 และจะมีโปรแกรมแปลง Syntax มาให้ในภายหลังอีกทีหนึ่ง
สำหรับฟีเจอร์ใหม่ๆ ใน Python 3000 ก็เช่นการรองรับ Unicode เต็มรูปแบบ การยกเลิกฟังก์ชั่น xrange โดยเอาไปทับฟังก์ชั่น range แทน และการคำความสะอาดภาษาอีกหลายจุด เช่นการเปลี่ยนชื่อไลบรารีที่มีชื่อในแบบจาวาให้กลายเป็นเชื่อในแบบ PEP-8 ทั้งหมด เป็นต้น
งานนี้เตรียม convert ซอร์สกันได้เลยครับ
ที่มา - artima developer
อยากได้อาสาสมัครมาช่วยทำโปรแกรมบัญชีโอเพนซอร์ส
Submitted by iamzhuqi on 27 April, 2007 - 11:15. tags:หลังจากที่เฝ้ารอวันรอคืนให้โปรแกรมเมอร์ท่านหนึ่ง พัฒนาระบบบัญชีที่เป็น web app มาเป็นเวลากว่าปีแล้ว โดยกำหนดให้ทั้งระบบจะต้องพัฒนาด้วยซอฟท์แวร์โอเพนซอร์สเท่านั้น
ขณะนี้ แม้ว่า schema ของ database (PostgreSQL) จะได้รับการปรับปรุงแก้ไขอย่างต่อเนื่อง และเริ่มงานการสร้าง interface สำหรับการเปิด invoice ต่างๆ ไปแล้วในระดับหนึ่ง แต่ก็ดูเหมือนความคืบหน้าของงานจะยังช้ามาก จึงอยากที่จะหาคนเช้ามาช่วยเสริม เพื่อเร่งโครงการนี้ให้สำเร็จลุล่วงไปอย่างที่ตั้งความหวังเอาไว้
โดยความตั้งใจเดิมนั้น มีความต้องการที่จะปล่อยให้ระบบบัญชีนี้เป็นโอเพนซอร์ส โดยจะสามารถทำงานได้บนฐานของ Linux เป็นหลัก เพื่อเป็น "โปรแกรมทางเลือก" สำหรับองค์กรธุรกิจระดับ SMEs ทั่วไป ซึ่งน่าจะลดบทบาทของซอฟท์แวร์เถื่อนในตลาดลงไปได้ ทั้งยังเป็นช่องทางสำหรับธุรกิจให้กับชุมชนโอเพนซอร์สต่อๆ ไปในอนาคต แต่ติดขัดที่ผมไม่ได้เป็นผู้เขียนโปรแกรมเองทั้งหมด จึงต้องให้ฝ่าย developer เป็นผู้ตัดสินใจ ซึ่งในที่สุดแล้ว developer เองก็ต้องการให้โปรแกรมถูกพัฒนาออกมาในทิศทางดังกล่าวแล้วขณะนี้
ต้องเรียกว่า "ขอความช่วยเหลือ" ดีกว่าครับ ผมเองชอบอกชอบใจกับวิธีการ และแนวทางของโอเพนซอร์ส หลังจากที่ได้สัมผัสกับวัฒนธรรมของพวกเขามาได้ระยะหนึ่ง และรู้สึกว่า น่าที่จะทำอะไรบางอย่างขึ้นมาเป็นโครงการระยะยาว ซึ่งเป็นประโยชน์ต่อแวดวงธุรกิจของประเทศด้วย แทนที่เราจะเฮฮากันทางด้านเทคนิคแต่เพียงอย่างเดียว ... ผมอยากเห็นโครงการนี้ ได้กลายเป็น "โปรแกรมทางเลือก" ให้กับทุกๆ องค์กรธุรกิจในประเทศไทยให้ได้
สนใจที่จะร่วมงาน กรุณาติดต่อที่
วิรัช เหมพรรณไพเราะ
tel: 081-5505460
ขอบคุณมากครับ
Hard Fight : Java vs. Python vs. Ruby
Submitted by bow_der_kleine
on 9 April, 2007 - 15:15.
tags:
ผมเป็นคนที่ชอบศึกษาเรื่องภาษาเขียนโปรแกรม ดังจะเห็นได้จาก จำนวนบล็อกที่ผมเขียนเกี่ยวกับภาษาเขียนโปรแกรม ที่มีมากกว่าในเรื่องอื่น ๆ จากการศึกษาโดยการเข้าไปหาข้อมูลในอินเตอร์เนตพบว่า เรื่องภาษาเขียนโปรแกรมเป็นเรื่องศาสนา คือ เป็นเรื่องที่มีพื้นฐานอยู่บนความเชื่อ มากกว่าเหตุผล
ทฤษฎีทางความเชื่อเกี่ยวกับภาษาเขียนโปรแกรมจำนวนมาก ได้ถูกกล่าวอ้างโดยไม่ได้รับข้อพิสูจน์ โดยเฉพาะจากเหล่าสาวกของภาษานั้น ๆ บางครั้งเวลาผมอ่านก็เคลิ้มตามไปเหมือนกัน บางครั้งก็อดตั้งคำถามไม่ได้ว่า มันจะจริงเหรอ ???
หมายเหตุ : ขอโฆษณาต้นฉบับหน่อยครับ ที่ BioLawCom.De :D
นักศึกษาอังกฤษเขียนโอเพนซอร์สซอฟต์แวร์แล้วจะได้เงิน
Submitted by elixer
on 13 January, 2007 - 11:55.
tags:
The UK Free Software Network (UKFSN) ผู้ให้บริการอินเทอร์เน็ตรายหนึ่งในเมือง Hertfordshire ของอังกฤษ ได้ประกาศว่าจะให้เงิน กับนักศึกษาที่พัฒนาโปรแกรมที่ผู้อื่นสามารถเอาไปดัดแปลงได้ หรือโอเพนซอร์สซอฟต์แวร์ นั่นเอง
โดยนักศึกษาคนแรกที่ได้เงินนี้ไปคือ นาย Andrew Price นักศึกษาวิทย์คอมชั้นปีที่ 2 ของ Swansea University โดยได้เงินไป 4,680 ปอนด์ จากการเขียนโปรแกรมสำรองข้อมูลที่มีชื่อว่า pyBackPack
ที่มา - PingWales
Python 2.5 ออกจนได้
Submitted by sugree
on 20 September, 2006 - 02:58.
tags:
หลังจากที่ Python 2.4 ออกมาเกือบ 2 ปีในที่สุด Python 2.5 ก็ออกมาซะที ลองไปอ่านประกาศแบบเต็มๆ ได้ที่ LWN การเปลี่ยนแปลงมีค่อนข้างมาก ไม่ว่าจะเป็นระบบค้นหาจุดบกพร่องแบบอัตโนมัติที่ช่วยให้ข้อผิดพลาดลดลงเป็นจำนวนมาก ทำให้เสถียรมากขึ้นกว่าเดิม และเร็วมากขึ้นอีกด้วย
นอกจากนี้ยังมีโมดูลใหม่เสริมเข้ามาในตัว ได้แก่ ctypes, ElementTree, hashlib, sqlite3 และ wsgiref โดยส่วนตัวผมเห็นด้วยอย่างยิ่ง รายละเอียดอื่นๆ อ่านได้จากใน What's New
ปล. วันนี้วันดี
ที่มา Slashdot
10 ภาษาโปรแกรมที่ควรเรียนรู้ในการทำงาน
Submitted by plynoi
on 16 September, 2006 - 11:55.
tags:
eWeek ทำการสำรวจตามบริษัทจัดหางานต่างๆ เพื่อสรุปเกี่ยวกับภาษา 10 ภาษาที่ถ้าเรียนรู้จนเป็นแล้วจะทำให้หางานได้ง่ายขึ้น, Resume น่าเป็นที่สนใจขึ้นมาดังนี้(ไม่เรียงตามลำดับ)ครับ
- PHP : จำนวนตำแหน่งที่ต้องการประมาณ 1,152 ตำแหน่ง
- C# : จำนวนตำแหน่งที่ต้องการประมาณ 5,111 ตำแหน่ง
- AJAX : จำนวนตำแหน่งที่ต้องการประมาณ 1,106 ตำแหน่ง
- JavaScript : จำนวนตำแหน่งที่ต้องการประมาณ 4,406 ตำแหน่ง
- Perl : จำนวนตำแหน่งที่ต้องการประมาณ 4,810 ตำแหน่ง
- C : จำนวนตำแหน่งที่ต้องการประมาณ 6,164 ตำแหน่ง
- Ruby กับ Ruby on Rails : จำนวนตำแหน่งที่ต้องการประมาณ 210 ตำแหน่ง
- Java : จำนวนตำแหน่งที่ต้องการประมาณ 14,408 ตำแหน่ง
- Python : จำนวนตำแหน่งที่ต้องการประมาณ 811 ตำแหน่ง
- VB.Net : จำนวนตำแหน่งที่ต้องการประมาณ 2,090 ตำแหน่ง
ทาง eWeek ยังกล่าวด้วยว่า การเรียนรู้ภาษา/เทคโนโลยีใหม่ๆ เป็นสิ่งที่โปรแกรมเมอร์ต้องทำอยู่แล้วและเลือกใช้ให้ถูกที่ถูกเวลาเท่านั้นเอง จำนวนตำแหน่งที่ต้องการนำมาจาก Dice.com ครับ
คิดว่าถ้าจัดอันดับในเมืองไทย PHP, VB.NET, Java กินเรียบ!
ที่มา - OSNews
IronPython 1.0 มาแล้วและรีวิว Turbo Explorer
Submitted by plynoi
on 6 September, 2006 - 18:05.
tags:
ในที่สุด IronPython ที่เป็น Python ที่ทำงานบน .NET Framework 2.0 ก็ออกเวอร์ชั่น 1.0 เป็นที่เรียบร้อยแล้วครับ ด้วยฝีมือ Jim Hugunin ผู้สร้าง Jython โดย IronPyton นี้ใช้ BSD license
ดาวน์โหลดได้ที่เวบ CodePlex ครับ
นอกจากนี้หนังสือ PC Magazine ยังมีรีวิว Turbo Explorer IDE ที่ Borland ตั้งใจกลับมาสืบสานตำนานอีกครั้ง ซึ่งผลทดสอบค่อนข้างดีเลยทีเดียวล่ะครับ อ่านรีวิวได้ที่นี่ครับ
ที่มา - OSNews(IronPython), OSNews(Turbo Explorer)
Python Image Library
Submitted by pittaya
on 14 August, 2006 - 20:15.
tags:
พอดีมีเรื่องจำเป็นต้องจัดการกับรูปภาพนิดหน่อย ดูเหมือนงานจะง่ายๆ แต่ออกจะกินแรงอยู่ไม่น้อย ปัญหาคือว่า มีรูปขนาด 13500 x 13500 pixel อยู่รูปหนึ่ง ต้องการหั่นเป็นรูปย่อยๆ รูปละ 1350 x 900 ดังนั้นก็จะได้รูปออกมา 10 x 15 = 150 รูป นอกจากนี้แต่ละรูป จะต้องใส่ขอบขาวเข้าไปด้านขวา และใส่ตัวเลขเข้าไปเพื่อบอกว่าเป็นรูปหมายเลขที่เท่าไหร่ โดยเป็นตัวเลขสองตัว ตั้งแต่รูปซ้ายบนสุด (0,0) จนถึงขวาล่างสุด (9, 14) เพื่อที่จะเอารูปไปอัดจากร้าน แล้วเอามาเรียงกลับเป็นอย่างเดิมทีหลังได้โดยไม่งง
Backup ข้อมูลด้วย Python
Submitted by bow_der_kleine
on 15 July, 2006 - 03:46.
tags:
สำหรับความสำคัญของการสำรองข้อมูล (backup) ผมคิดว่าทุกคนที่ใช้คอมพิวเตอร์คงทราบกันดีอยู่แล้ว และยิ่งนับวันความสำคัญของมันก็เพิ่มขึ้นเรื่อย ๆ เนื่องเพราะเจ้า Hard Disk ที่มีขายตามท้องตลาดนั้นเ สียง่ายขึ้นทุกครั้งที่มีการเพิ่มความจุ โดยไม่เพิ่มขนาดตาม อีกทั้งข้อมูลในยุคสมัยนี้ยังถือได้ว่าเป็นสิ่งมีค่ายิ่ง หากสูญหายไปเพราะ Hard Disk พังเจ้าของคงต้องนั่งร้องไห้เป็นเผาเต่าแน่นนอน
โดยปกติแล้วผมจะมี Hard Disk สำหรับสำรองข้อมูลโดยเฉพาะ แต่ผมก็ไม่สามารถนั่งสำรองข้อมูลด้วยการคัดลอกไฟล์ได้ทุกวัน เพราะกว่าจะเสร็จต้องใช้เวลาหลายชั่วโมง นอกจากนี้...
การสร้าง Python Extension ด้วย SWIG+Cygwin
Submitted by lew
on 10 June, 2006 - 00:56.
tags:
หลักการเขียนโปรแกรมยุคใหม่ๆ ในช่วงหลังๆ มานี้นิยมที่จะลดการเขียนโปรแกรมส่วนใหญ่ในภาษาระดับต่ำๆ เช่นภาษา C/C++ เนื่องจากเสี่ยงต่อการมีบั๊กค่อนข้างมาก และการพัฒนาที่ช้า เพื่อความเร็วในการพัฒนาแล้ว จึงมักนิยมใช้การพัฒนาในภาษาระดับสูงๆ เช่น Python, Ruby, PHP ฯลฯ แล้วทดสอบประสิทธิภาพ หากมีส่วนไหนทำงานช้าเกินยอมรับได้ จึงลงมือพัฒนาส่วนนั้นๆ เป็นภาษา C/C++ เพื่อความเร็ว แล้วจึงสร้างอินเทอร์เฟช เพื่อโมดูล C/C++ นั้นเข้ากับโปรแกรมหลัก
IronPython 1.0 Beta 1 ออกแล้ว
Submitted by deans4j on 2 January, 2006 - 18:09. tags:IronPython คือ Python ที่เขียนขึ้นมาจาก C# เพื่อให้ Python สามารถเรียกใช้ไลบรารี่และอ๊อบเจ็คต่างๆ ที่อยู่ใน .NET Framework ได้ โดยถือ Common Public License อยู่
ผลงาน IronPython นี่เป็นของนาย Jim Hugunin ซึ่งทำงานกับไมโครซอฟท์อยู่ขณะนี้ และส่วนนาย Guido ผู้คิดค้น Python ตอนนี้มาทำงานที่ Google แล้ว (อ่านข่าวเก่าเพิ่มเติม) ถึงแม้กำหนดการออก IronPython รุ่น 1.0 ตัวเต็มยังไม่มีกำหนดที่แน่นอน แต่นายจิมก็เคยระบุไว้ว่าอยากให้ IronPyhon มีสัก 10 beta ก่อนเป็นอย่างน้อย
IronPython ยังมีคู่แข่งที่ใกล้ชิดกันอย่างภาษา Boo ที่มีลักษณะใกล้เคียงกัน กล่าวคือ Boo ได้รับแรงบันดาลใจจาก syntax ของ Python และอิงความสามารถต่างๆ จากภาษา C# และ Ruby
ที่มา - IronPython




