Archive

Archive for the ‘Programming’ Category

CodeAndroid

พฤศจิกายน 29th, 2009 Kowit 1 comment

Entry แรกหลังจากกู้ Server กลับมาได้จากอาการ “โคอาล่าเป็นพิษ”
หลังจากไป meeting ที่ SIS  มาได้ข้อสรุบว่า HTC ต้องการให้เหล่า Developer สร้าง App สำหรับคนไทยขึ้นมา เพื่อขยายฐานผู้ใช้ Android ในเมืองไทย ส่งผลต่อเนื่องถึงยอดขายของ HTC ในทางอ้อม
หากมองในตอนนี้เห็นได้ชัดว่า  Android ไม่ได้เปรี้ยงปร้างเท่าที่ควรจะเป็น ส่วนหนึ่งคงเป็นเพราะมันไม่หล่อเหมือน  iPhone อันนี้เรื่องจริงต้องยอมรับ แต่ในระยะยาวก็ไม่แน่ เพราะ Android Open source และยังมี Google หนุนหลังเต็มที่
สำหรับตัวผมแล้วติดว่า โทรศัพท์ที่ใช้ Android ส่วนใหญ่ราคาไกล้เคียงกับ iPhone แต่ความสามารถนั้นสู้ไม่ได้ อย่างน้อยก็มัลติทัช แล้วก็เอฟเฟกต์วิ้งๆทั้งหลายแหล่ จะมีดีกว่าก็เพียงแต่มันไม่ยุ่งยาก จุกจิกกวนใจเหมือน iPhone ทำอะไรนิดอะไรหน่อยก็หมดประกัน ถ้า HTC Magic ราคาลงมาสัก 5000 อย่างนี้จะเลือกง่ายขึ้นเยอะ
ด้าน Developer อันนี้ชัดเชน Android มาพร้อม [...]

ติดตั้ง Postgres ลงบน Ubuntu 9.04 อย่างง่ายและรวดเร็ว

ตุลาคม 17th, 2009 Kowit No comments

ผมมีปัญหากับการติดตั้ง postgres มาตลอด เมื่อเปรียบเทียบกับ mysql แล้วพบว่ายุ่งยากมาก ลองใช้วิธีต่อไปนี้ทำให้ติดตั้ง postgres ภายในสามนาที!!
sudo apt-get install postgresql pgadmin3 python-psycopg2
หลังจากรอขั้นตอนการติดตั้งจนเสร็จเรียบร้อยแล้วให้ตั้งรหัสผ่านให้กับ user postgres เพื่อไปติดตั้งส่วนอื่นๆต่อไปดังนี้

sudo -u postgres psql

postgres=# \password postgres
postgres=# \q

ได้รหัสผ่านของ user postgres แล้ว!!
อย่าลืมแก้ไฟล์ sudo nano /etc/postgresql/8.3/main/pg_hba.conf ตรงบรรทัด

# “local” is for Unix domain socket connections only
local all all [...]

Categories: Programming Tags: ,

The Django template language

กรกฎาคม 31st, 2009 Kowit No comments

เกี่ยวกับเอกสารนี้
เอกสารนี้อธิบายรายละเอียดเกี่ยวกับไวยากรณ์ของ Django Template . หรือมีข้อสงสัยหรือปัญหาการใช้งาน โปรดอ่าน The Django template language: For Python programmers.
Django template นั้นออกแบบมาอย่างสมดุลระหว่างความสามารถและความง่ายดาย. มันถูกออกแบบมาให้สามารถทำงานกับ HTML ได้สะดวก นั่นรวมถึง Text-Based อื่นๆด้วย.

หลักการ
ถ้าคุณเคยมีพื้นฐานการเขียนโปรแกรมที่ฝังโค้ดใน HTML แล้ว คุณจะรู้สึกเหมือนได้กลับบ้านอีกครั้ง การใช้ Django template จะเป็นอะไรที่ง่ายดาย แต่ถ้าหากคุณหวังว่าจะเห็นโค้ด Python ใน Django template แล้ว ต้องขอแสดงความเสียใจที่ทำให้ผิดหวัง
The Django template มีฟังชั่นเหมือนกับภาษาโปรแกรมทั่วไป มี if tags เพื่อตรวจสอบเงื่อนไข มี for loop เอาไว้วนให้ปวดหัวเล่น Django template จะรันเพียง template tag และจะไม่รัน Python code โดยเด็ดขาด

จำนวนเฉพาะกับตะแกรงเอราทอสเทนีส

กรกฎาคม 30th, 2009 Kowit No comments

ไปอ่านเจอมา เขียนไว้กันลืม

def primes(n):
“”"
primes(n) –> primes

Return list of primes from 2 up to but not including n.
Uses Sieve of Erasth.
“”"

if n < 2:
return []

nums = range(2,int(n))
p = []

while nums:
[...]

Categories: Programming, Python Tags:

Django 1.1 ออกแล้ว

กรกฎาคม 30th, 2009 Kowit No comments

หลังจากติดโรคเลื่อน ในที่สุด Django 1.1 หลังจากติดโรคเลื่อนจนผมถอดใจ ในที่สุด Django ก้ได้ปล่อย stable version ออกมาเสียทีเมื่อเช้านี้
โดยรวมๆแล้วมีการเปลี่ยนแปลงที่ชัดเจนคือหน้าตาของ AdminSite โดยเฉพาะ slugField ที่เพิ่มข้อมูลให้อัตโนมัติ ไม่ต้อมานั่งกรอกเองให้เมื่อยตุ้ม
Aggregate ที่เมื่อก่อนทำไม่ได้ ในเวอร์ชั่นนี้สามารถทำได้แล้ว สามารถใช้อะไรอย่าง
>>> from django.db.models import Avg
>>> Book.objects.all().aggregate(Avg(‘price’))
{‘price__avg’: 34.35}
หล่อขึ้นเยอะมากเลยทีเดียว
และอีกหลายๆอย่างที่ขี้เกียจเขียน อยากรู้ไปอ่านเองดีกว่าครับ
ส่วนเรื่องภาษาไทยนั้น ผมได้ส่งฉบับล่าสุด โดยมีพี่เทพช่วยตรวจสอบให้ โดยพยายามให้เป็นไปในแนวทางเดียวกันกับ tl10n หลายๆจุดปรับปรุงให้ดีขึ้น ลดความกำกวมไปเยอะ โดยทาง Django ได้ปล่อย stable version หลังจากที่เพิ่มภาษาไทยเพียงสี่ชั่วโมง ฉิวเฉียด หวาดเสียวกันจนหยดสุดท้ายจริงๆ
ยังไงก็ขอให้สนุกกับการพัฒนาโปรแกรมนะครับ

Django 1.1RC ออกแล้ว เตรียมพร้อมกันหรือยัง

กรกฎาคม 24th, 2009 Kowit 1 comment

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

Categories: Django Tags: ,

RegEx validate email for python

กรกฎาคม 8th, 2009 Kowit 1 comment

เขียนเว็บก็ที่ก็ต้องมานั่งเขียน validate email address ทุกที รำคาญมาก จดไว้ในนี้เสีย จะได้ไม่ต้องเสียเวลาไปค้นอีก
อย่างแรกคือกฎ วุ่นวายสับสนมากมาย ไปอ่านเพิ่มเติมกันเอาเองที่นี่ IETF แต่ถ้าเอาคร่าวๆก็ตามนี้

Alpha Characters a-z and A-Z (ASCII 97-122 and 65-90)
Numeric Characters (ASCII 48-57)
Exclamation Point ‘!’ (ASCII 33)
Number Sign ‘#’ (ASCII 35)
Dollar Sign ‘$’ (ASCII 36)
Percent Sign ‘%’ (ASCII 37)
Ampersand ‘&’ (ASCII 38)
Single Quote ”’ (ASCII 39)
Asterisk [...]

Categories: Python Tags: ,

บรรทัดเดียวก็พอ #1 factorial

กรกฎาคม 8th, 2009 Kowit 2 comments

def fact(x): return (1 if x<1 else x * fact(x-1))

Categories: Programming, Python Tags: ,

ติดตั้ง Django กันดีกว่า

พฤษภาคม 27th, 2009 Kowit No comments

เพราะคนดีย่อมแก้ไข คนจัญไร นั้นแก้ตัว ผมจึงสารภาพตามตรงว่าหลังจากบาร์แคมป์ บางกอก ครั้งที่ 3 แล้ว ความขี้เกียจได้จับตัวกันเป็นก้อน ไม่มีเหตุผลอื่นใดเลย เรื่องที่ติดว่าจะบล็อกเรื่องการ Deploy Django นั้นจึงยังไม่ได้ขึ้นด้วยประการฉะนี้
เกริ่นไปให้มากความ เข้าเรื่องเลยดีกว่า ก่อนอื่นเลยผมขอแยกส่วนต่างๆของโปรเจ็คออกเป็นส่วนๆ เพื่อง่ายต่อการอัพเดต

Django (เอาไว้เก็บ Source code ของ django)
Media (images, css, javascript)
Logs ( ถ้าอยากมี logs ก็เอามันมาไว้ข้างนอกเสีย อย่าเอาไปรวมกับ source code)
User-upload ( อะไรที่ user upload ขึ้นมา พึงระวัง)
Project source code ( เอาไว้เก็บไฟล์โปรเจ็คของเรา มีอะไรก็อัพเดตมันตรงนี้แหละ)
Configuration ( ชื่อก็บอกว่าเก็บคอนฟิก อันนี้ถ้าทำงานหลายๆ คนก็แยกเป็นโฟลเดอร์ย่อยๆ ของใครของมัน หรือถ้าทำคนเดียวก็เป็นโฟลเดอร์ย่อยอีกนั่นแหละ เผื่อมีคนรู้ใจเข้ามาทำด้วย จะได้ขยับขยายได้ง่าย)
Extension ect…(extension, libary, python packages [...]

How to fix Bad settings.LANGUAGE_CODE in Satchmo

พฤษภาคม 20th, 2009 Kowit No comments

This thread describes the issue
The following command will generate the locale on Unix systems.
sudo locale-gen en_US

Categories: CMS, Programming Tags: , ,