Category Archives: Uncategorized

เดี๋ยวกะย้ายไปเขียนที่ Blogspot

เดี๋ยวคงยายไปเขียนที่ Blogspot มั่ง ที่ WP มีโฆษณาโผล่มาแต่ไม่รู้แบ่งรายได้ให้เราด้วยไหม (ที่โน้นมีแบ่ง) และ WP เวลาเขียนผ่านแอพ มันไม่ sync กับแบบเว็บ 

แต่ Blogspot ที่ไม่มั่นใจคือ ping back จะสามารถส่งไปถึงผู้ถูกพาดพิงได้ไหม และการ embedding ต่างๆ (เช่น Flickr, YouTube) จะทำได้ไหม

https://ultimateohm.blogspot.com

Premature Optimization is the Root of all Evil

เคยพาดพิงถึงข้อความนี้ใน “เมื่อโปรแกรมเมอร์ (และพนักงาน IT) มาทำการเกษตร” แล้วก็มาเจอกับตัวเองบ้างแล้วครับ

อธิบายเรื่องนี้โดยคุณ Roofimon

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

หรือจะว่าไป น่าเอาโค้ดทั้งแบบธรรมดา ใส่กำกีบไว้ด้วยเหมือนกัน

ปล. algorithm X จาก Donald Knuth ใช้แก้ Sudoku

http://www.cs.mcgill.ca/~aassaf9/python/algorithm_x.html

ร้านขายขนม แบบไม่มีหน้าร้าน

รวมร้านขายขนม เบเกอรี ที่ไม่จำเป็นต้องมีหน้าร้าน มีหน้าเว็บหรือหน้า social network แทน น่าจะเรียกได้ว่าเป็น home made คือทำที่บ้านไม่ใช่ร้านกันจริงๆ

https://instagram.com/webake_asap/ ดูเหมือนปิดรับคำสั่งซื้ออยู่

https://instagram.com/pushface/ เห็นบอกว่ารับรูปหน้าคนด้วย

https://instagram.com/beary_cookie/ คุ้กกี้ อบอาทิตย์ ส่งจันทร์

https://instagram.com/sweetaround/ เหมือนจะมีร้านเป็นระยะๆ

http://www.simplysweetsthai.com/ มี FB ด้วย

https://instagram.com/kanangcake/ สั่งล่วงหน้า 5-7 วัน

https://instagram.com/cupcake_chiangmai/

Brownie Addict รับผู้กระจายสินค้า (เรียกว่า dropship ได้ไหม)

https://instagram.com/lineebakery เค้กสามมิติ

https://instagram.com/cakebymm/

https://instagram.com/toffeecakechonburi/ เป็นทอฟฟีเค้ก

 

ที่มา http://pantip.com/topic/31903181

นับเลขภาษารัสเซีย

0 ноль (การกอื่นๆ ноля́, нолю́, но́ль, нолём, ноле́ พหูพจน์ ноли́, ноле́й, ноля́м, ноли́, ноля́ми, ноля́х)

1 оди́н, одна́, одно́

2 два, две

3 три

4 четы́ре

5 пять

6 шесть

7 семь

8 во́семь

9 де́вять

10 де́сять

11 оди́ннадцать

12 двена́дцать

13 трина́дцать

14 четы́рнадцать

15 пятна́дцать

16 шестна́дцать

17 семна́дцать

18 восемна́дцать

19 девятна́дцать

20 два́дцать

21 два́дцать оди́н

22 два́дцать два

24 два́дцать четы́ре

30 три́дцать

40 со́рок (รวมถึงกรรมการกด้วย ส่วนการกอื่นๆ ใช้ сорока́)

50 пятьдеся́т (การกอื่นๆ ดูเหมือนผันจาก 5×10 пяти́десяти, пяти́десяти, пятьдеся́т, пятью́десятью, пяти́десяти)

60 шестьдеся́т

70 се́мьдесят

80 во́семьдесят

90 девяно́сто

100 сто

200 две́сти

300 три́ста

400 четы́реста

500 пятьсо́т

600 шестьсо́т

700 семьсо́т

800 восемьсо́т

900 девятьсо́т

1,000 ты́сяча, одна́ ты́сяча

2,000 две ты́сячи

3,000 три ты́сячи

4,000 четы́ре ты́сячи

4,500 = 4×1000 + 500 четы́ре ты́сячи пятьсо́т, четы́ре пятьсо́т

5,000 пять ты́сяч

6,000 шесть ты́сяч

7,000 семь ты́сяч

8,000 во́семь ты́сяч

9,000 де́вять ты́сяч

10,000 де́сять ты́сяч

60,140 =60×1000 + 100 + 40 шестьдеся́т ты́сяч сто со́рок

1,000,000 миллио́н

1,000,000,000 миллиа́рд

Computer Unbeatable Hangman Game (Improved)

Improved my Python Code for participation in Weekend Programming Challenge Issue-8 (solutions).

Or improved code http://pastebin.com/raw.php?i=6sCKNae3

import sys
import string
import fileinput
import random
import re
from string import maketrans

# file wordlower.txt contains one word in one line
# to filter only lowerletter 
# grep [a-z] < words.txt > wordlower.txt

file = [line.rstrip('\n') for line in fileinput.input("wordlower.txt")]
#print file[0]
#print file[len(file)-1]
rand = random.Random()
w1 = file[int(rand.random() * len(file))]

#improvement: create list only the same len of random word without itself
#list file_only_the_same_len is list of words for cheating
file_only_the_same_len = [i for i in file if len(i)==len(w1) and i!=w1]

w2 = '.'*len(w1) # len of w1
count = 10
t1 = 'abcdefghijklmnopqrstuvwxyz'
t2 = '.'*len(t1)
usedletter = []

# maskword() removes char c that must be hidden from t1 
# and returns w only char that must be disclosed
def maskword(w, c):
    global t1
    global t2
    t2 = t2[:-1]
    t1 = t1.replace(c, '')
    trantab = maketrans(t1, t2)
    return str.translate(w, trantab)

while True:
    #print "'%s'" % w1 # debug or real cheat :D
    print "Guess word '%s'. Count remain=%d" % (w2, count)
    print "Used letters %s" % usedletter
    if w1 == w2:
        print "You win"
        break

    l = raw_input('Enter guess letter ')
    l = string.lower(l[:1]) #only 1-st lowercase letter
    if any(l in s for s in usedletter):
        print "%s already choosen" % l
        continue
    else:
        usedletter.append(l)
        file_only_the_same_len = [i for i in file_only_the_same_len if not l in i]

    if string.find(w1, l) == -1: #letter not found, no need to change w1
        count -= 1
        print "No %s letter in that word."  % l
        if count <= 0:
            print "You lose. Answer is %s" % w1
            break
        
        continue #letter not found -> continue loop

    # w1 contains that guese letter
    # cheating here
    # by changing (if possible) w1 so that it does not contain letter l
    # and does not contain letters that in usedletter
    # and masking still like w2 (the same string len too

    rex = re.compile("^%s$" % w2)
    for w3 in file_only_the_same_len:
        #print "%s w3=%s cheatlist=%d " % (w1, w3, len(file_only_the_same_len)) # debug printing
        if rex.match(w3): 
            w1 = w3 # todo w3 should not contain letter in usedletter 
            break

    #print "'%s' (cheat)" % w1 # debug or real cheat :D
    if string.find(w1, l) == -1: #check again if letter not found
        count -= 1
        print "No %s letter in that word."  % l
        if count <= 0:
            print "You lose. Answer is %s" % w1
            break

    else:
        print "Contains %s" % l
        w2 = maskword(w1, l)

ประสบการณ์โดนแฮ็กบัตรเครดิต

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

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

ถ้าที่ธนาคารอื่นก็มี ใช้บัตรเครดิตกสิกรแล้วถูกแฮ็ก ต้องควักเงินตัวเองออกไปก่อน ไม่รู้จะได้เงินคืนหรือเปล่า หรือโดนขโมยข้อมูลบัตรเครดิตไปใช้แต่กลับถูกฟ้องร้องให้ใช้หนี้บัตรแทน http://pantip.com/topic/30184583

TV, Twitter, Rating, Social TV, Connected TV, Second Screen

ไปอ่านเจอ Nielsen Twitter TV Rating วัดเรตติ้งรายการผ่านทวิตเตอร์ เลยนึกขึ้นได้ว่าตอนดูรายการมวยปล้ำ WWE ก็มีขึ้น Twitter hashtag หรือทวีตข้อความของนักมวยหรือผู้ดำเนินรายการ หรืออื่นๆ ที่เกี่ยวข้องกับรายการ ก็คงเป็นแนวทางการใช้ social network มาประกอบการชม TV หรือในเมืองไทย คมชัดลึก ก็มีเหมือนกัน

ถ้าสร้าง app ขึ้นมาเพื่องานนี้โดยเฉพาะ เช่น Social TV อาจจะทำให้ผู้ใช้ต้องหัดใช้โปรแกรมใหม่ๆ ไม่คุ้นเคยเหมือน app ที่มีอยู่แล้ว และก็เคยมีรายงานการใช้จอที่สอง คือ smartphone หรือ tablet ระหว่างการดู TV น่าใช้แก้เซ็งตอนดูโฆษณา หรือค้นหาเรื่องอื่นๆ ใน อินเตอร์เน็ตที่เกี่ยวกับรายการที่กำลังชมอยู่ก็เป็นได้

หรือถ้าอีกหน่อยมี TV ติดเน็ตเลย (ใช้ mini PC ทำงานนี้ได้ไหม) ก็น่าจะผนวก app พวก social เข้ากับ TV ได้เลย หรือจะทำ app มาเฉพาะกับ TV แบบนี้เลยก็ได้ แต่ผู้ชมก็อาจต้องเรียนรู้วิธีใช้ app เพิ่มจากที่เคยใช้กัน สำหรับการเก็บข้อมูลการรับชม เช่นการกด remote controll หรือรายการที่กำลังฉายก็คงทำได้ไม่ยาก หรือแม้แต่การติด Kinect เพื่อใช้ซื้อของผ่านเน็ตหรือเฝ้าดูสายตาของผู้ชม