<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-7114220</atom:id><lastBuildDate>Thu, 04 Feb 2021 11:42:12 +0000</lastBuildDate><category>apple</category><category>gui</category><category>interface design</category><category>home</category><category>interface</category><category>mac</category><category>ruby</category><category>hig</category><category>linux</category><category>love</category><category>osx leopard mac</category><category>usability</category><category>BAD</category><category>Object inheritance ruby</category><category>Scalable Web Server</category><category>Untitled</category><category>business</category><category>cocoa macruby</category><category>color</category><category>concept</category><category>cut to dashboard</category><category>dashboard</category><category>file manager</category><category>focus group</category><category>form</category><category>form usability</category><category>gnome font thai</category><category>google</category><category>helper form programming ruby rails</category><category>home application</category><category>home uttaradit</category><category>key binding</category><category>leopard dictionary thai english</category><category>lexitron leximac leopard mac</category><category>log</category><category>model</category><category>nautilus</category><category>netbean</category><category>object ruby</category><category>omni graffle</category><category>omnigraffle sketch osx application</category><category>os x</category><category>photoshop</category><category>php</category><category>picasa</category><category>port</category><category>pro application</category><category>process</category><category>programming</category><category>quotation</category><category>rails</category><category>rails monit mongrel nginx</category><category>rails nginx mongrel cluster ubuntu hardy</category><category>real</category><category>refractor</category><category>ruby block</category><category>ruby xml</category><category>shortcut</category><category>simplify</category><category>sketch</category><category>solaris</category><category>story</category><category>target</category><category>terminal</category><category>thai</category><category>time machine</category><category>unix</category><category>uploader</category><category>user</category><category>ux</category><category>wide mobile</category><category>windows linux date explorer finder table</category><category>xubuntu ubuntu 8.10</category><category>zfs</category><category>การเมือง</category><category>การเมือง ประชาธิปไตย</category><title>I share, therefore I am</title><description>I am Apirak Panatkool.</description><link>http://www.apirak.com/</link><managingEditor>noreply@blogger.com (Apirak)</managingEditor><generator>Blogger</generator><openSearch:totalResults>141</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-825087886880221940</guid><pubDate>Tue, 09 Jun 2020 01:24:00 +0000</pubDate><atom:updated>2020-06-08T18:24:39.533-07:00</atom:updated><title>UX Secrets at Apple</title><description>&lt;span class=&quot;text_exposed_show&quot; style=&quot;background-color: white; display: inline; font-family: system-ui, -apple-system, system-ui, &amp;quot;.SFNSText-Regular&amp;quot;, sans-serif; font-size: 14px;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; color: #385898; cursor: pointer; font-family: inherit; text-align: center; text-decoration-line: none;&quot;&gt;&lt;span style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;a data-ft=&quot;{&amp;quot;tn&amp;quot;:&amp;quot;-U&amp;quot;}&quot; data-lynx-mode=&quot;async&quot; data-lynx-uri=&quot;https://l.facebook.com/l.php?u=https%3A%2F%2Fwww.eventpop.me%2Fe%2F8934%2Fintensive-ux-workshop-jun-2020%3Ffbclid%3DIwAR0xiKzKeYpzfJwakcB63EA5tn-GfHmOLnbriduzZHae7tmtt2OrKKQzH4o&amp;amp;h=AT0cIsjN84HWwsCrOT3_0BVWSspBSqEg5E7tmRBYthc-v8Hwzh3nne3Jc06_Ruofc32rx1yyTo6YZZDCDlNrc-Q9DI7YeNPUPVg5B3PRiF4O4fUiEmakxVoBnuAMLgVRNWbLjDJrBl2UXh3y-kfJct3wj8vuWoa1sZnqZJjyKYvccyOqy5CS0Tg_Zg2MuOyqZPSaDNaMuxzaqVkA1INlRpfW9clHR7NP9Xy1XEycu3No_Y6I_Xxh3Uty89bbuv0POzETY-WJvtQvxvi-Jd1A7rVI5qgCHiwUmyl8BEpZbX7GHp4C85mPLGjDZSZfO54As9avQtwZRRWS6z13rNsfakxRdubmAemY4yx0VBB3qMBtwT9l4rLMhVRSXpIfiOHjvUi6Xk1YrXhZdY3VyMwTQHA_vYCuZUO3ChxspEqweGjYWhmYiF7g7ayaY3MqNgJIsuZG01of-YaGJEJPM9Y4M-2wk2vdOnN_TzvHwv96seh1T8uR_j_ncusSWy8tWCnQDR-K_31lEBvhsM7txAWeerlSSE2U3qdI7NgTXOTFo8aEI_2o9zdPZEAvWS-hXbNY6ctjxIwegClKpC40sXDitPlltRktBQ3lQ-N4CcIJZxakBXadWuGVZq-myttSKe2pehUYPDc&quot; href=&quot;https://www.eventpop.me/e/8934/intensive-ux-workshop-jun-2020?fbclid=IwAR0xiKzKeYpzfJwakcB63EA5tn-GfHmOLnbriduzZHae7tmtt2OrKKQzH4o&quot; rel=&quot;noopener nofollow&quot; style=&quot;color: #385898; cursor: pointer; font-family: inherit; text-decoration-line: none;&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;600&quot; data-original-width=&quot;600&quot; height=&quot;320&quot; src=&quot;https://1.bp.blogspot.com/-VAZEmWbN5XA/Xt7j4RVY5pI/AAAAAAANAL4/q_C_rBRIbZ4Ra6fyRhXnvgT5QhcUgbbFQCK4BGAsYHg/s320/apple%2Bsecrets.png&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; color: #385898; cursor: pointer; font-family: inherit; text-align: left; text-decoration-line: none;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit; text-align: left; text-decoration-line: none;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;7 ปีที่แล้วได้อ่านบทความจาก&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;อดีตพนักงาน Apple ทำให้ความมั่นใจในแนวทางของ UX Academy มากขึ้น&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;และทำให้คิดต่อไปว่าใครที่สอน UX ควรแก้ความเชื่อ 5 ข้อนี้ หรือเพิ่มความมั่นใจในความเปลี่ยนแปลงให้ได้&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;1. Persona ก็เหมือนกับ Market Research 🙅&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;2. User Journey ก็ไม่ต่างจาก Workflow 🙅‍♂️&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;3. Empathy User ก็พอ ไม่ต้องเรียน Empathy Stakeholder 🙅‍♀️&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;4. Design Thinking ก็คือ Product Discovery 🙅‍♂️&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;5. Start with Feature ก็ได้ผลเหมือน Start with Solution 🙅&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;ถ้าเราวิเคราะห์ความผิดของ 5 ข้อนี้ได้ การทำงานด้าน UX ก็จะสนุกมากขึ้นครับ ลองเอามาคุยกันได้นะครับ&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;[Link บทความ]&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;&lt;a href=&quot;https://www.fastcompany.com/3030923/4-myths-about-apple-design-from-an-ex-apple-designer&quot;&gt;https://www.fastcompany.com/3030923/4-myths-about-apple-design-from-an-ex-apple-designer&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;(บทความพูดถึงข้อความในรูป ไม่ได้พูดถึง 5 ข้อนี้นะครับ)&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; cursor: pointer; font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;</description><link>http://www.apirak.com/2020/06/ux-secrets-at-apple.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://1.bp.blogspot.com/-VAZEmWbN5XA/Xt7j4RVY5pI/AAAAAAANAL4/q_C_rBRIbZ4Ra6fyRhXnvgT5QhcUgbbFQCK4BGAsYHg/s72-c/apple%2Bsecrets.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-4985337611813947196</guid><pubDate>Sun, 10 Jan 2016 22:01:00 +0000</pubDate><atom:updated>2016-01-10T14:03:29.001-08:00</atom:updated><title>Move my blog to Medium</title><description>&lt;div style=&quot;text-align: center;&quot;&gt;
Thank you, Blogger. You are the best blogging platform for a long time.&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
Today, I will continue my journey on Medium&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;https://medium.com/@apirak&quot;&gt;https://medium.com/@apirak&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://4.bp.blogspot.com/-nF2Of1p65tc/VpLUN8pwOII/AAAAAAAGdHk/R6laicyHwbA/s1600/Screen%2BShot%2B2559-01-11%2Bat%2B4.58.16%2B%25E2%2598%2580%25EF%25B8%258F.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;275&quot; src=&quot;http://4.bp.blogspot.com/-nF2Of1p65tc/VpLUN8pwOII/AAAAAAAGdHk/R6laicyHwbA/s400/Screen%2BShot%2B2559-01-11%2Bat%2B4.58.16%2B%25E2%2598%2580%25EF%25B8%258F.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>http://www.apirak.com/2016/01/move-my-blog-to-medium.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-nF2Of1p65tc/VpLUN8pwOII/AAAAAAAGdHk/R6laicyHwbA/s72-c/Screen%2BShot%2B2559-01-11%2Bat%2B4.58.16%2B%25E2%2598%2580%25EF%25B8%258F.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-490831172434154773</guid><pubDate>Sun, 16 Feb 2014 17:25:00 +0000</pubDate><atom:updated>2014-02-16T09:25:54.905-08:00</atom:updated><title>ทดลองเขียน Java Script สำหรับเปลี่ยน Background ตาม Flickr Interesting List</title><description>หลังจากไม่ได้ทำ Project ของตัวเองมานานมาก วันนี้ขอเริ่มนิดๆ หน่อยๆ ก่อนจะจัดโครงการใหญ่ โดยหยิบโจทย์ว่า &quot;ไม่อยากให้หน้า Login มันน่าเบื่อ&quot; ขึ้นมา จากนั้นก็วางแผนแก้ปัญหาโดยจะหาภาพสวยๆ จาก Flickr แล้วก็ไปพบว่า การหาภาพที่น่าสนใจบน Flickr แบบสุม แล้วจะออกมาสวยมันยากมาก&lt;br /&gt;
&lt;br /&gt;
โชคดีที่ Flickr มันทำ Interesting List รายวัน ไว้ให้&amp;nbsp;http://www.flickr.com/explore/interesting/&lt;br /&gt;
&lt;br /&gt;
จากนั้นก็หาทางอ่าน feed ออกมา แต่มันดันไม่ทำเป็น feed แต่ต้องใช้ API ในการเรียก เลยต้องมาอ่าน API ของ Flickr อีกหน่อย โชคดีอันที่สองคือมันมีคำสั่งสำหรับอ่าน interesting list มาให้เลย แต่โชคร้ายที่มัน return เป็น xml ไม่ใช่ json&lt;br /&gt;
&lt;br /&gt;
แต่ด้วยความบังเอิญเราดันไปขอ json จากฟังก์ชั่นนั้น แล้วมันดันมีส่งกลับมา &amp;gt;_&amp;lt; ก็ดีใจไป แต่ก็เจ็บใจที่โดนหลอก ไปตามหา xml lib บน Java Script อยู่ตั้งนาน&lt;br /&gt;
&lt;br /&gt;
ขั้นตอนต่อมาก็ไปหาท่าสำหรับแสดง background บนเว็บ แบบ Responsive เพราะเราไม่รู้ว่าหน้าจอผู้ใช้ใหญ่แค่ไหน&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://2.bp.blogspot.com/-xjChbSKIP-s/UwDoSuP0IrI/AAAAAAADfSc/eHb_uKGtI9M/s1600/Screen+Shot+2557-02-16+at+11.29.16+PM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://2.bp.blogspot.com/-xjChbSKIP-s/UwDoSuP0IrI/AAAAAAADfSc/eHb_uKGtI9M/s1600/Screen+Shot+2557-02-16+at+11.29.16+PM.png&quot; height=&quot;181&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
จบบน &lt;span class=&quot;GINGER_SOFTWARE_mark&quot; ginger_software_uiphraseguid=&quot;549a69af-887a-4483-bea8-96ae7813bf9d&quot; id=&quot;6fd04783-54e6-423a-881e-271cdd637735&quot;&gt;jsfiddle&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
ตอนแรกกะจะใช้ image-background ใน &amp;lt;body&amp;gt; แต่กลายเป็นว่าควบคุมได้ยาก สุดท้ายเลยกลายเป็น &amp;lt;image&amp;gt; แทน&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
ถ้าสนใจ code ลองดูที่&amp;nbsp;http://jsfiddle.net/apirak/u4dbb/2/ ครับ&lt;/div&gt;
&lt;br /&gt;
&lt;span id=&quot;goog_949196288&quot;&gt;&lt;/span&gt;&lt;span id=&quot;goog_949196289&quot;&gt;&lt;/span&gt;&lt;br /&gt;</description><link>http://www.apirak.com/2014/02/java-script-background-flickr.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-xjChbSKIP-s/UwDoSuP0IrI/AAAAAAADfSc/eHb_uKGtI9M/s72-c/Screen+Shot+2557-02-16+at+11.29.16+PM.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-1771190530656958751</guid><pubDate>Fri, 30 Sep 2011 02:56:00 +0000</pubDate><atom:updated>2011-09-29T19:56:51.224-07:00</atom:updated><title>แสดง Library ใน Lion</title><description>ใน Lion ทาง Apple ตัดสินใจที่จะซ่อน Folder Library ไปซะ เข้าใจว่าผู้ใช้ส่วนใหญ่จะรู้สึกดี เพราะไม่มีมันมารบกวน แต่ผู้ใช้ส่วนน้อยอย่างเรากลับมีปัญหา ต้องคอยเปิด terminal เป็นประจำ&lt;br /&gt;
&lt;br /&gt;
ทางแก้ที่หนึ่งในกรณีที่ไม่ได้ใช้ Library เป็นประจำ ให้เราไปที่โปรแกรม Finder แล้วเลือก Menu Go พร้อมกดปุ่ม option หรือปุ่ม alt ค้างไว้ จะทำให้ Library โผล่ออกมา&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://3.bp.blogspot.com/-y7SCirU9FlU/ToUvOPHVy8I/AAAAAAABouI/ivRmHJ9I9t8/s1600/go-menu-library.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;http://3.bp.blogspot.com/-y7SCirU9FlU/ToUvOPHVy8I/AAAAAAABouI/ivRmHJ9I9t8/s320/go-menu-library.png&quot; width=&quot;241&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
ภาพแสดง Menu Go เมื่อกด option ค้างไว้&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
แต่ถ้าใครใช้ Library เป็นชีวิตประจำวัน ให้ไปที่โปรแกรม Terminal แล้วพิมพ์ดังนี้&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
chflags nohidden ~/Library/&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
ต่อไปเวลาเปิด Finder มันจะไม่ซ่อน Library อีกต่อไป และถ้าต้องการให้มันกลับไปซ่อนเหมือนเดิม ก็ใช้คำสั่ง&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
chflags hidden ~/Library/&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
เท่านี้เราก็เข้าถึง Library ได้สบายใจเฉิบเหมือนเดิมแล้วครับ&lt;/div&gt;
&lt;br /&gt;</description><link>http://www.apirak.com/2011/09/library-lion.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-y7SCirU9FlU/ToUvOPHVy8I/AAAAAAABouI/ivRmHJ9I9t8/s72-c/go-menu-library.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-2733978472822889567</guid><pubDate>Sat, 03 Sep 2011 11:02:00 +0000</pubDate><atom:updated>2011-09-03T06:32:49.861-07:00</atom:updated><title>แสดง branch name ใน terminal</title><description>ปัญหาหนึ่งเวลาที่เราใช้ Git คือ เราไม่แน่ใจว่าตัวเองอยู่ใน branch ไหน ปกติแล้วเราจะพึ่ง&lt;br /&gt;
&lt;br /&gt;
git status หรือ git branch&lt;br /&gt;
&lt;br /&gt;
พอต้องทำทุกครั้งก็จะเริ่มหน่าย วันนี้ไปเจอหน้าจอ termianl ของน้องเก้า &lt;a href=&quot;http://twitter.com/#!/neokain&quot;&gt;@neokain&lt;/a&gt; เลยได้ script สำหรับแสดง ชื่อ branch บน terminal มา&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: -webkit-auto;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://3.bp.blogspot.com/-wkBsw98GuJQ/TmIGlH7ftAI/AAAAAAABotk/Rpj2-fijCag/s1600/branch_in_termianl.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;237&quot; src=&quot;http://3.bp.blogspot.com/-wkBsw98GuJQ/TmIGlH7ftAI/AAAAAAABotk/Rpj2-fijCag/s400/branch_in_termianl.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: -webkit-auto;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
หลังจากปรับเล็กน้อย ก็ได้ script แบบนี้ครับ&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;background-color: white; font-family: &#39;Bitstream Vera Sans Mono&#39;, Monaco, Consolas, &#39;Courier New&#39;, monospace; font-size: 12px; line-height: 15px; white-space: pre;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;pre class=&quot;sunburst&quot; style=&quot;font-family: &#39;Bitstream Vera Sans Mono&#39;, Monaco, Consolas, &#39;Courier New&#39;, monospace; font-size: 9pt; line-height: 1.3em; margin-top: 0em;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;background-color: white;&quot;&gt;&lt;pre class=&quot;sunburst&quot; style=&quot;font-family: &#39;Bitstream Vera Sans Mono&#39;, Monaco, Consolas, &#39;Courier New&#39;, monospace; font-size: 9pt; line-height: 1.3em; margin-top: 0em;&quot;&gt;function parse_git_branch &lt;span class=&quot;meta meta_scope meta_scope_group meta_scope_group_shell&quot;&gt;{
  git branch &lt;span class=&quot;keyword keyword_operator keyword_operator_redirect keyword_operator_redirect_shell&quot; style=&quot;color: black;&quot;&gt;2&amp;gt;&lt;/span&gt; /dev/null &lt;span class=&quot;keyword keyword_operator keyword_operator_pipe keyword_operator_pipe_shell&quot; style=&quot;color: black;&quot;&gt;|&lt;/span&gt; sed -e &lt;span class=&quot;string string_quoted string_quoted_single string_quoted_single_shell&quot; style=&quot;background-color: #fff0f0; color: #dd2200;&quot;&gt;&#39;/^[^*]/d&#39;&lt;/span&gt; -e &lt;span class=&quot;string string_quoted string_quoted_single string_quoted_single_shell&quot; style=&quot;background-color: #fff0f0; color: #dd2200;&quot;&gt;&#39;s/* \(.*\)/(\1)/&#39;&lt;/span&gt;
}&lt;/span&gt;

GREEN=&lt;span class=&quot;string string_quoted string_quoted_double string_quoted_double_shell&quot; style=&quot;background-color: #fff0f0; color: #dd2200;&quot;&gt;&quot;\[\033[0;32m\]&quot;&lt;/span&gt;
YELLOW=&lt;span class=&quot;string string_quoted string_quoted_double string_quoted_double_shell&quot; style=&quot;background-color: #fff0f0; color: #dd2200;&quot;&gt;&quot;\[\033[0;33m\]&quot;&lt;/span&gt;
GRAY=&lt;span class=&quot;string string_quoted string_quoted_double string_quoted_double_shell&quot; style=&quot;background-color: #fff0f0; color: #dd2200;&quot;&gt;&quot;\[\033[1;30m\]&quot;&lt;/span&gt; 

PS1=&lt;span class=&quot;string string_quoted string_quoted_double string_quoted_double_shell&quot; style=&quot;background-color: #fff0f0; color: #dd2200;&quot;&gt;&quot;&lt;span class=&quot;variable variable_other variable_other_normal variable_other_normal_shell&quot;&gt;$GREEN&lt;/span&gt;\w&lt;span class=&quot;variable variable_other variable_other_normal variable_other_normal_shell&quot;&gt;$YELLOW&lt;/span&gt; &lt;span class=&quot;constant constant_character constant_character_escape constant_character_escape_shell&quot; style=&quot;color: #003388; font-weight: bold;&quot;&gt;\$&lt;/span&gt;(parse_git_branch)&lt;span class=&quot;variable variable_other variable_other_normal variable_other_normal_shell&quot;&gt;$GRAY&lt;/span&gt; \n&lt;span class=&quot;constant constant_character constant_character_escape constant_character_escape_shell&quot; style=&quot;color: #003388; font-weight: bold;&quot;&gt;\$&lt;/span&gt; &quot;&lt;/span&gt;&lt;/pre&gt;
&lt;/span&gt;&lt;/pre&gt;
เอา script ชุดนี้ใส่ไว้ใน file ~/.bash_profile ตอนที่เปิด termianl ขึ้นมาใหม่ ก็มีจะชื่อ branch ขึ้นมาให้เราดูครับ

</description><link>http://www.apirak.com/2011/09/branch-name-terminal.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-wkBsw98GuJQ/TmIGlH7ftAI/AAAAAAABotk/Rpj2-fijCag/s72-c/branch_in_termianl.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-6855833860737453387</guid><pubDate>Wed, 08 Jun 2011 02:15:00 +0000</pubDate><atom:updated>2011-06-09T19:11:27.831-07:00</atom:updated><title>เปิด Sub lime text จาก terminal</title><description>เพราะคุ้นเคยกับ &quot;mate .&quot; และ &quot;mvim&quot; ทำให้เคยตัว และรู้สึกว่า Sub lime text มันควรจะทำได้สิ&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://3.bp.blogspot.com/-0gSP_qp4MKI/Te7aeBnbERI/AAAAAAABopU/xQkfvCoDmy4/s1600/Screen+shot+2011-06-08+at+9.11.53+AM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;305&quot; src=&quot;http://3.bp.blogspot.com/-0gSP_qp4MKI/Te7aeBnbERI/AAAAAAABopU/xQkfvCoDmy4/s400/Screen+shot+2011-06-08+at+9.11.53+AM.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;หน้าตา sub lime text 2&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;ลองค้นดูพบวิธีง่ายๆ โดยการแก้ไฟล์ ~/.bash_profile แล้วเพิ่มบรรทัดนี้ลงไป&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: seagreen; font-family: Monaco, &#39;Andale Mono&#39;, &#39;Courier New&#39;, Courier, mono; font-size: 12px; line-height: 15px;&quot;&gt;alias subl=&#39;open -a &quot;Sublime Text 2&quot;&#39;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: seagreen; font-family: Monaco, &#39;Andale Mono&#39;, &#39;Courier New&#39;, Courier, mono; font-size: 12px; line-height: 15px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: seagreen; font-family: Monaco, &#39;Andale Mono&#39;, &#39;Courier New&#39;, Courier, mono;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 12px; line-height: 15px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;หลังจากนี้ถ้าต้องการเปิดไฟล์ ก็ให้สั่ง&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: seagreen; font-family: Monaco, &#39;Andale Mono&#39;, &#39;Courier New&#39;, Courier, mono; font-size: 12px; line-height: 15px;&quot;&gt;subl application.rb&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: seagreen; font-family: Monaco, &#39;Andale Mono&#39;, &#39;Courier New&#39;, Courier, mono; font-size: 12px; line-height: 15px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
หรือต้องการเปิด Folder ปัจจุบันก็ให้สั่ง&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: seagreen; font-family: Monaco, &#39;Andale Mono&#39;, &#39;Courier New&#39;, Courier, mono; font-size: 12px; line-height: 15px;&quot;&gt;subl .&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
เท่านี้ก็ได้ slt แบบ mate แล้ว&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;edit: แก้ comment เป็น subl ให้ตรงกับ command ใน Sublim Text 2.app&lt;/i&gt;</description><link>http://www.apirak.com/2011/06/sub-lime-text-terminal.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-0gSP_qp4MKI/Te7aeBnbERI/AAAAAAABopU/xQkfvCoDmy4/s72-c/Screen+shot+2011-06-08+at+9.11.53+AM.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-4592621503759663163</guid><pubDate>Wed, 08 Jun 2011 02:09:00 +0000</pubDate><atom:updated>2011-06-07T19:09:17.563-07:00</atom:updated><title>เปิด Terminal ใหม่บน Folder เดิม</title><description>บน Mac เวลาทีเปิดหน้าต่างบน Terminal ใหม่ มันจะกลับมาที่ Home ทุกครั้ง ตอนแรกๆ ก็คิดว่าพอรับได้ หลังๆ พบว่าสำหรับ Developer หรือ Admin เราต้องการเปิด Terminal ใหม่ใน Folder เดิม มากกว่า Folder Home แต่ก็ไม่รู้จะแก้ยังไง จะใช้ท่ายากก็ขี้เกียจ&lt;br /&gt;
&lt;br /&gt;
ล่าสุดผมเปลี่ยนมาใช้ iTerm 2 แทน Terminal เพราะมันแบ่งหน้าจอได้เหมือน Terminator&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://1.bp.blogspot.com/-CX1RzroR_Cw/Te7YgdwAC1I/AAAAAAABopI/XT3v19y7sdo/s1600/Screen+shot+2011-06-08+at+8.58.30+AM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;280&quot; src=&quot;http://1.bp.blogspot.com/-CX1RzroR_Cw/Te7YgdwAC1I/AAAAAAABopI/XT3v19y7sdo/s400/Screen+shot+2011-06-08+at+8.58.30+AM.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;แบ่งหน้าจอบน iterm 2&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
ทำให้พบว่าปัญหาที่ค้างมาสี่ห้าปี มีทางออกง่ายๆ แล้วโดยตัว Preference ของ iTerm 2 นั่นเอง&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://3.bp.blogspot.com/-pteb5ezQ6WU/Te7Y40p8U7I/AAAAAAABopM/CRxqXdmoLdM/s1600/Screen+shot+2011-06-08+at+9.05.10+AM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;257&quot; src=&quot;http://3.bp.blogspot.com/-pteb5ezQ6WU/Te7Y40p8U7I/AAAAAAABopM/CRxqXdmoLdM/s400/Screen+shot+2011-06-08+at+9.05.10+AM.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;หน้า preference ของ iterm 2&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;ขั้นตอนมีดังนี้&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;เปิด Preference ของ iTerm 2&amp;nbsp;&lt;/li&gt;
&lt;li&gt;แล้วกด Profile แล้วเลือก Tab General&lt;/li&gt;
&lt;li&gt;เลือก Reuse previous tab&#39;s directory &amp;nbsp;ใน &amp;nbsp;Work Directory&lt;/li&gt;
&lt;/ol&gt;&lt;br /&gt;
เสร็จแล้วครับ หลังจากนี้ไม่ว่าจะเป็นการเปิด Tab ใหม่ หรือ split หน้าจอ มันจะอยู่ใน Folder เดิมตลอด</description><link>http://www.apirak.com/2011/06/terminal-folder.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-CX1RzroR_Cw/Te7YgdwAC1I/AAAAAAABopI/XT3v19y7sdo/s72-c/Screen+shot+2011-06-08+at+8.58.30+AM.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-8772138296114203018</guid><pubDate>Thu, 19 May 2011 06:58:00 +0000</pubDate><atom:updated>2011-05-19T00:11:48.079-07:00</atom:updated><title>วิธีแก้ปัญหา Photoshop สั่ง Save for web แล้วทำให้สีเพี้ยน</title><description>ปัญหาของสีเพี้ยนตอนที่ save รูปจาก Photoshop ไปเป็น Png หรือ Jpeg เป็นเพราะว่า เราตั้ง Profile ของสีที่จะใช้กับสีที่แสดงบนหน้าจอเป็นคนละ Profile กัน ทำให้ได้ผลดังรูป&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/92185242@N00/5735611457/&quot; title=&quot;compare_image_save_for_web by apirakpanatkool, on Flickr&quot;&gt;&lt;img alt=&quot;compare_image_save_for_web&quot; height=&quot;336&quot; src=&quot;http://farm3.static.flickr.com/2014/5735611457_fb656ff9a4.jpg&quot; width=&quot;381&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;ภาพแสดงความแตกต่างของ original กับ save for web&lt;/div&gt;&lt;br /&gt;
ภาพล่างคือภาพที่ได้จากการ save for web ส่วนภาพบนเป็นต้นฉบับ จะสังเกตุว่าภาพล่างสีซีดกว่าภาพบน ทางแก้คือต้องปรับ Color Profile โดยเข้าไปที่ Edit &amp;gt; Color Settings จากนั้นเลือก Monitor Color ตามรูป&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/92185242@N00/5736269344/&quot; title=&quot;color_setting by apirakpanatkool, on Flickr&quot;&gt;&lt;img alt=&quot;color_setting&quot; height=&quot;438&quot; src=&quot;http://farm3.static.flickr.com/2315/5736269344_b75de5d4c8.jpg&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;ภาพแสดงการตั้งค่า Color profile&lt;/div&gt;&lt;br /&gt;
จากนั้นตอนแสดงผลให้เราปรับ Proof Setup ให้เป็น Monitor RGB &amp;nbsp;โดยเลือกที่เมนูตามภาพ&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/92185242@N00/5736161786/&quot; title=&quot;select_color_profile by apirakpanatkool, on Flickr&quot;&gt;&lt;img alt=&quot;select_color_profile&quot; height=&quot;292&quot; src=&quot;http://farm4.static.flickr.com/3077/5736161786_bbc6b77c71.jpg&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;ภาพแสดงการเลือก Monitor RGB&lt;/div&gt;&lt;br /&gt;
จากนั้นตอนที่เราสั่ง save for web ให้เราระวัง อย่าไปสั่ง convert to sRGB เพื่อให้แน่ใจว่าภาพที่ออกมาจะเหมือนกับที่เราออกแบบไว้&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/92185242@N00/5736161958/&quot; title=&quot;unselect_convert_to_srgb by apirakpanatkool, on Flickr&quot;&gt;&lt;img alt=&quot;unselect_convert_to_srgb&quot; height=&quot;238&quot; src=&quot;http://farm6.static.flickr.com/5063/5736161958_8052c3d56e.jpg&quot; width=&quot;381&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;ภาพแสดงว่าไม่ต้องเลือก Convert to sRGB&lt;/div&gt;&lt;br /&gt;
ที่ค่าเริ่มต้นของ Photoshop ไม่ได้เป็น RGB แต่เป็น CMYK คาดว่าเป็นเพราะบน Mac ผู้ใช้มักจะทำงานสิ่งพิมพ์มากกว่างานที่ออกหน้าจอทำให้เราต้องมาปรับค่า view กันทุกเครื่องไป&lt;br /&gt;
&lt;br /&gt;
ดูรายละเอียดเพิ่มเติมได้ที่&amp;nbsp;&lt;a href=&quot;http://www.gballard.net/psd/go_live_page_profile/embeddedJPEGprofiles.html&quot;&gt;embedded JPEG profiles&lt;/a&gt;</description><link>http://www.apirak.com/2011/05/photoshop-save-for-web.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm3.static.flickr.com/2014/5735611457_fb656ff9a4_t.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-367693072500731721</guid><pubDate>Thu, 19 May 2011 03:03:00 +0000</pubDate><atom:updated>2011-05-18T20:03:42.292-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">ux</category><title>ออกแบบ Action Bar ให้ Android Honeycomb</title><description>ถ้าเราออกแบบโปรแกรมตาม Pattern ที่&amp;nbsp;Platform&amp;nbsp;นั้นๆ กำหนด จะช่วยให้ผู้ใช้ของเรา สามารถนำประสบการณ์ที่เคยเห็นในโปรแกรมอื่นๆ ใช้ในการทำความเข้าใจกับ Application ของเราได้ทันที การจะทำอะไรที่แตกต่างต้องคิดแล้วคิดอีกว่าคุ้มหรือไม่&lt;br /&gt;
&lt;br /&gt;
วันนี้ดูวีดีโอ &quot;Designing and Implementing Android UIs for Phones and Tablets&quot; ของงาน Google IO แล้วไปเจอ Pattern เท่ๆ ของ Honeycomb เข้า ในวีดีโอเล่าว่าเราควรใช้ Action bar ในการตอบคำถามพื้นฐานให้กับผู้ใช้ โดยเรียงเป็นลำดับว่า&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;ฉันอยู่ที่ไหน?&lt;/li&gt;
&lt;li&gt;ฉันเห็นอะไรได้บ้าง?&lt;/li&gt;
&lt;li&gt;ฉันทำอะไรได้บ้าง?&lt;/li&gt;
&lt;/ol&gt;&lt;br /&gt;
ลองมาดูหน้าตาของ Action bar ที่ Google วาง Pattern ไว้ เพื่อตอบโจทย์ข้างต้น&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/92185242@N00/5735558592/&quot; title=&quot;android_ux_concept by apirakpanatkool, on Flickr&quot;&gt;&lt;img alt=&quot;android_ux_concept&quot; height=&quot;289&quot; src=&quot;http://farm4.static.flickr.com/3645/5735558592_7c42f4728f.jpg&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;หน้าจอ wireframe ของ Action Bar&lt;/div&gt;&lt;br /&gt;
จะเห็นว่าทั้ง Mobile และ Tablet ต่างก็มี Action Bar ทั้งคู่ ถ้าเป็น Mobile ตัว Action bar จะถูกวางเอาไว้ทั้งด้านบน และด้านล่าง ส่วนของ Tablet จะวางไว้ด้านบนสุดวาดยาวจากซ้ายไปขวา แบบออกได้เป็นสามส่วนเพื่อตอบโจทย์ตามลำดับ&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;1. ฉันอยู่ที่ไหน หรือ ฉันอยู่ในโปรแกรมไหน&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/92185242@N00/5735009151/&quot; title=&quot;android_ux_example_3 by apirakpanatkool, on Flickr&quot;&gt;&lt;img alt=&quot;android_ux_example_3&quot; height=&quot;295&quot; src=&quot;http://farm4.static.flickr.com/3663/5735009151_08bd524c6a.jpg&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;หน้าจอแสดงตัวอย่างตำแหน่ง Logo ของโปรแกรม&lt;/div&gt;&lt;br /&gt;
Google เลือกตอบคำถามโดยวาง Logo ของโปรแกรมไว้ที่ด้านซ้ายสุดของ Action bar โดยคาดว่าผู้ใช้น่าจะเคยชินกับการอ่านหนังสือจากซ้ายไปขวา ดังนั้นคำถามแรกจึงวางไว้ด้านซ้ายสุด&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;2. ฉันเห็นอะไรได้บ้าง&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/92185242@N00/5735557674/&quot; title=&quot;android_ux_example_2 by apirakpanatkool, on Flickr&quot;&gt;&lt;img alt=&quot;android_ux_example_2&quot; height=&quot;295&quot; src=&quot;http://farm4.static.flickr.com/3633/5735557674_46a3dc0408.jpg&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;ภาพแสดงตัวอย่างเมนูของโปรแกรม&lt;/div&gt;&lt;br /&gt;
ถัดจาก Logo จะเป็นเมนูเพื่อตอบโจทย์ว่าเราสามารถดูอะไรได้บ้างในโปรแกรมนี้ เช่นโปรแกรมปฏิทินจะแสดงเมนูว่าเราสามารถเลือกดูปฏิทินได้เป็นรายวัน รายสัปดาห์ และรายเดือน โดยแอบบอกเราเล็กน้อยว่าตอนนี้เราดูรายสัปดาห์อยู่นะ ส่วนโปรแกรมแผนที่ จะไม่ได้บอกเป็นเมนูแต่จะแสดงเป็นช่องค้นหา ผมเดาว่าต้องกาสื่อว่าจะดูอะไรก็ค้นเอาได้เลย&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;3. ฉันทำอะไรได้บ้าง&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/92185242@N00/5735558064/&quot; title=&quot;android_ux_example_1 by apirakpanatkool, on Flickr&quot;&gt;&lt;img alt=&quot;android_ux_example_1&quot; height=&quot;289&quot; src=&quot;http://farm6.static.flickr.com/5221/5735558064_600ac2dc66.jpg&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;ภาพแสดงตัวอย่าง Action Button ทางด้านขวา&lt;/div&gt;&lt;br /&gt;
ส่วนสุดท้ายจะวางชิดขวาสุด ทำหน้าที่บอกว่าเราสามารถทำอะไรกับโปรแกรมนี้ได้บ้าง เช่น ส่งจดหมาย ลบจดหมาย เป็นต้น หากไม่สามารถแสดงชุดคำสั่งทั้งหมดได้ใน Action bar ทาง Google ได้กำหนดให้ใช้ Icon รูปเมนู วางไว้ด้านขวาสุดของ icon ทั้งหมด&lt;br /&gt;
&lt;br /&gt;
พอได้เห็นแบบนี้ก็ทำให้คาดหวังได้ว่าผู้ใช้จะสามารถใช้งานโปรแกรมบน Android Honeycomb ได้ง่ายขึ้นเพราะโปรแกรมดีๆ น่าจะทำตาม Guide line ของ Platform&lt;br /&gt;
&lt;br /&gt;
ถ้ามาดู iOS จะพบว่าไม่มี concept ของ Action Bar แบบ Android แต่จะมีตัว Navigation bar ให้ใช้ ซึ่งวิธีการใช้งานก็ไม่ได้กำหนดไว้อย่างชัดเจนใน Human Interface Guideline แต่ถ้าสังเกตุก็จะพบแนวทางการใช้คร่าวๆ&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/92185242@N00/5735163377/&quot; title=&quot;icons_in_ipad_mail by apirakpanatkool, on Flickr&quot;&gt;&lt;img alt=&quot;icons_in_ipad_mail&quot; height=&quot;29&quot; src=&quot;http://farm6.static.flickr.com/5269/5735163377_43b054606b.jpg&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;ภาพแสดง Navigation bar ของ iOS&lt;/div&gt;&lt;br /&gt;
ด้าน ซ้ายมือจะใช้วางคำสั่งในการไปยังเนื้อหาที่ต้องการ เทียบได้กับ View Detail ของ Android ตรงกลางจะเอาไว้บอกว่าเราอยู่ที่ไหน ส่วนด้านซ้ายมือจะเหมือนกัน คือเอาไว้ใส่คำสั่งที่สามารถทำกับเนื้อหาที่เลือกอยู่ ส่วนการตอบคำถามว่าเราอยู่ในโปรแกรมไหนจะไม่มีใน iOS ส่วนเหตุผลลองเดากันดูนะครับ&lt;br /&gt;
&lt;br /&gt;
โดยส่วนตัวผมชอบแนวคิดของ Pattern นี้บน Android นะครับ แต่ยังติดอยู่สองที่&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;แนวคิดนี้บน Mobile อาจจะไม่เหมาะ&lt;/span&gt; เพราะพื้นที่แสดงผลบนมือถือมีน้อยมาก การมากำหนดตำแหน่งแบบนี้ทำให้หลายคนปรับวิธีประหยัดพื้นที่ได้ลำบาก เช่นการที่ต้องแสดง Logo ไว้ด้านบนซ้ายเสมอ จะไม่คุ้มเท่าไหรในหลายโปรแกรม หรือการที่ให้ชุดคำสั่งที่เหลือขึ้นมาเป็น popup ด้านล่าง ทำให้ไม่สามารถใส่ คำสั่งที่เหลือได้มากนัก ถ้าขึ้นมาเป็น Table View น่าจะง่ายกว่า&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;แนวคิดนี้ยังกำกวมอยู่ &lt;/span&gt;เช่น ปุ่ม search ของ map ถูกตัดสินใจให้อยู่ที่ View Detail ส่วน search ของ youtube จะอยู่ที่ Action button เป็นต้น ทาง Google อาจจะต้องสร้างโปรแกรมตัวอย่างที่ล้อตามแนวคิดของตัวเองมากกว่านี้ เพื่อให้นักพัฒนาสามารถเข้าใจ แนะนำมาประยุกต์ใช้กับโปรแกรมของตัวเองได้ง่ายขึ้น&lt;/li&gt;
&lt;/ol&gt;&lt;br /&gt;
แต่อย่างไรก็ตามถ้ายังไม่ได้จับตัวจริง ก็ยังสรุปไม่ได้ ถ้าเดินหาเล่นตามบิกซีได้ จะกลับมาวิเคาะห์เพิ่มเติมนะครับ</description><link>http://www.apirak.com/2011/05/action-bar-android-honeycomb.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm4.static.flickr.com/3645/5735558592_7c42f4728f_t.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-7085028859427122360</guid><pubDate>Thu, 16 Dec 2010 02:40:00 +0000</pubDate><atom:updated>2010-12-15T18:58:43.603-08:00</atom:updated><title>Land Meter</title><description>&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.flickr.com/photos/92185242@N00/5265255228/&quot; title=&quot;LandMeter White by apirakpanatkool, on Flickr&quot;&gt;&lt;img alt=&quot;LandMeter White&quot; height=&quot;200&quot; src=&quot;http://farm6.static.flickr.com/5049/5265255228_d4556f5fc5.jpg&quot; width=&quot;199&quot; /&gt;&lt;/a&gt;&lt;/td&gt; &lt;td&gt;&lt;br /&gt;
&lt;a href=&quot;http://itunes.apple.com/us/app/paper-calculator/id402603515?mt=8&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;App Store small&quot; border=&quot;0&quot; src=&quot;http://i243.photobucket.com/albums/ff51/apirakb/app_store_badge_small.png&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #6aa84f;&quot;&gt;Price: free&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #999999;&quot;&gt;Description&lt;/span&gt;&lt;br /&gt;
Land Meter is simple car pitching and rolling monitor for your iPad&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #999999;&quot;&gt;Screen short&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/92185242@N00/5264652869/&quot; title=&quot;iPad Screenshot 1 by apirakpanatkool, on Flickr&quot;&gt;&lt;img alt=&quot;iPad Screenshot 1&quot; height=&quot;360&quot; src=&quot;http://farm6.static.flickr.com/5041/5264652869_b088ea1719.jpg&quot; width=&quot;480&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;iPad version&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/92185242@N00/5264697429/&quot; title=&quot;LandMeter iPhone by apirakpanatkool, on Flickr&quot;&gt;&lt;img alt=&quot;LandMeter iPhone&quot; height=&quot;320&quot; src=&quot;http://farm6.static.flickr.com/5168/5264697429_06d95cc260.jpg&quot; width=&quot;213&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;iPhone version&lt;/div&gt;&lt;div style=&quot;text-align: -webkit-auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #999999;&quot;&gt;Feature&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Monitor Pitching and Rolling for your car&lt;/li&gt;
&lt;li&gt;Show Pitching and Rolling degree&lt;/li&gt;
&lt;li&gt;Warning by color when danger&lt;/li&gt;
&lt;li&gt;Reset button for automatic calibration&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #999999;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #999999;&quot;&gt;Waiting feature&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Warning by sound&lt;/li&gt;
&lt;li&gt;Map&lt;/li&gt;
&lt;li&gt;Recoder&lt;/li&gt;
&lt;li&gt;Support iPhone&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #999999;&quot;&gt;Note&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #666666;&quot;&gt;&lt;i&gt;iphone version is waiting for approve ;) It&#39;s universal application. You can use one for two device.&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Any suggestion or comment is welcome</description><link>http://www.apirak.com/2010/12/land-meter.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm6.static.flickr.com/5049/5265255228_d4556f5fc5_t.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-941819674913569277</guid><pubDate>Wed, 08 Dec 2010 13:45:00 +0000</pubDate><atom:updated>2010-12-08T06:12:53.640-08:00</atom:updated><title>Working on new iPad applicaiton</title><description>กำลังทดลองทำโปรแกรม Land Meter สำหรับคนที่ขับรถวิบาก&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/92185242@N00/5243645112/&quot; title=&quot;LandMeter by apirakpanatkool, on Flickr&quot;&gt;&lt;img alt=&quot;LandMeter&quot; height=&quot;240&quot; src=&quot;http://farm6.static.flickr.com/5049/5243645112_fcea384fa5.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
ความยากอยู่ตรงที่ iPad มันไม่ได้ส่งค่าองศามาให้เราตรงๆ แต่ให้มาเป็นค่าที่แต่ละแกนของ iPhone ถูกแรงโน้มถ่วงกระทำ&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/92185242@N00/5243378899/&quot; title=&quot;Accelerometer axes by apirakpanatkool, on Flickr&quot;&gt;&lt;img alt=&quot;Accelerometer axes&quot; height=&quot;320&quot; src=&quot;http://farm6.static.flickr.com/5126/5243378899_cc5268b94e.jpg&quot; width=&quot;301&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
ถ้าเราเอียง iPhone แกน X, Y, Z จะถูกแรงโน้มถ่วงกระทำไม่เท่ากัน เมื่อเกิดความเปลี่ยนแปลงเจ้า Accelerometer จะส่งค่าของทั้งสามแกนมาให้ เราก็จับเข้า &lt;a href=&quot;http://en.wikipedia.org/wiki/Atan2&quot;&gt;atan2(y,x)&lt;/a&gt;&amp;nbsp;สำหรับหา degree รูปหลังรถ และ atan2(x,z) สำหรับรูปด้านข้าง เมื่อได้ค่า degree เราก็เอามาแปลงเป็นองศาด้วย&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;radians = degrees * Pi / 180;&lt;/div&gt;&lt;br /&gt;
เมื่อได้องศา เราก็เอามาใช้หมุนรูปรถทั้งสองแกนอีกทีนึง เป็นอันเสร็จ สำหรับโปรแกรม Land Meter ตอนนี้ส่งขึ้น App Store ไปแล้วรอการอนุมัติอยู่ คาดว่าวันอังคารหน้า น่าจะได้ลอง Download กัน&lt;br /&gt;
&lt;br /&gt;
ตัวทำมาทดลอง iPad ก่อนสำหรับ version iPhone น่าจะตามมาในอีกหนึ่งอาทิตย์เพราะต้องรอให้ Version นี้อนุมัติก่อน ถึงจะส่งอีก Version ขึ้นไปได้</description><link>http://www.apirak.com/2010/12/working-on-new-ipad-applicaiton.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm6.static.flickr.com/5049/5243645112_fcea384fa5_t.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-4603331551763036854</guid><pubDate>Tue, 23 Nov 2010 09:53:00 +0000</pubDate><atom:updated>2010-12-08T06:15:33.440-08:00</atom:updated><title>Paper Calculator</title><description>&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;br /&gt;
&lt;a href=&quot;http://s243.photobucket.com/albums/ff51/apirakb/?action=view&amp;amp;current=Screenshot2010-11-23at35843PM.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Photobucket&quot; border=&quot;0&quot; src=&quot;http://i243.photobucket.com/albums/ff51/apirakb/Screenshot2010-11-23at35843PM.png&quot; /&gt;&lt;/a&gt;&lt;/td&gt; &lt;td&gt;&lt;br /&gt;
&lt;a href=&quot;http://itunes.apple.com/us/app/paper-calculator/id402603515?mt=8&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;App Store small&quot; border=&quot;0&quot; src=&quot;http://i243.photobucket.com/albums/ff51/apirakb/app_store_badge_small.png&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #6aa84f;&quot;&gt;Price: free&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #999999;&quot;&gt;Description&lt;/span&gt;&lt;br /&gt;
Paper Calculator is simple calculator that show and share what you calculated.&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #999999;&quot;&gt;Screen short&lt;/span&gt;&lt;br /&gt;
&lt;table style=&quot;text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://s243.photobucket.com/albums/ff51/apirakb/?action=view&amp;amp;current=IMG_0204.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Photobucket&quot; border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://i243.photobucket.com/albums/ff51/apirakb/IMG_0204.png&quot; width=&quot;133&quot; /&gt;&lt;/a&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;General interface&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://s243.photobucket.com/albums/ff51/apirakb/?action=view&amp;amp;current=IMG_0206.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;e-mail&quot; border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://i243.photobucket.com/albums/ff51/apirakb/IMG_0206.png&quot; width=&quot;133&quot; /&gt;&lt;/a&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;Send result to mail&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://s243.photobucket.com/albums/ff51/apirakb/?action=view&amp;amp;current=IMG_0205.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;zoom&quot; border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://i243.photobucket.com/albums/ff51/apirakb/IMG_0205.png&quot; width=&quot;133&quot; /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;Zoom your result&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #999999;&quot;&gt;Screencast&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;object height=&quot;385&quot; width=&quot;480&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/TupooB9tWzU?fs=1&amp;amp;hl=en_US&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/TupooB9tWzU?fs=1&amp;amp;hl=en_US&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;480&quot; height=&quot;385&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #999999;&quot;&gt;Feature&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Copy: You can copy calculated result to clipboard and paste it any where you want.&lt;/li&gt;
&lt;li&gt;Email: It&#39;s short cut to copy result and open your send mail page.&lt;/li&gt;
&lt;li&gt;Zoom: You can show calculated result to friend that sit on another side of table.&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #999999;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #999999;&quot;&gt;Waiting feature&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Support Facebook &amp;amp; Twitter&lt;/li&gt;
&lt;li&gt;Change themes&lt;/li&gt;
&lt;li&gt;Sound enable&lt;/li&gt;
&lt;li&gt;Delete Taskbar and Title from Zoom screen&lt;/li&gt;
&lt;li&gt;Add classic calculated style&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #999999;&quot;&gt;Note&lt;/span&gt;&lt;br /&gt;
&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #666666;&quot;&gt;&lt;s&gt;Now&amp;nbsp;available&amp;nbsp;version on App Store is 1.0 and 1.1 is waiting for Apple to approve.&lt;/s&gt;&amp;nbsp;&lt;/span&gt;&lt;/i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #666666;&quot;&gt;&lt;i&gt;Now version 1.1 is available on App Store.&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #666666;&quot;&gt;Version&amp;nbsp;1.1 will fix bug of 1.0 and enable some feature.&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #666666;&quot;&gt;Version 1.0 is&amp;nbsp;available&amp;nbsp;for iOS 4.2 only but version 1.1 will support from iOS 3.0 to current version.&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Any suggestion or comment is welcome</description><link>http://www.apirak.com/2010/11/paper-calculator.html</link><author>noreply@blogger.com (Apirak)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-2147342921162689794</guid><pubDate>Wed, 27 Oct 2010 01:29:00 +0000</pubDate><atom:updated>2010-10-26T18:29:39.031-07:00</atom:updated><title>Flash killer จากค่าย Sencha</title><description>สิ่งที่ทำให้ Flash ได้รับความนิยมอย่างสูง และ ยืนอย่างมั่นคงในกระแส HTML5 คงไม่ได้เป็นเพราะ Action Script หรือ Flash Player เท่านั้น เพราะทั้งสองอย่างมีตัวแทนที่สมน้ำสมเนื้อเกิดขึ้นมาแล้ว เช่น Java Script ที่เร็วขึ้น, SVG และ HTML5 เป็นต้น ผมคิดว่าที่ที่ Flash ยังได้รับความนิยมอยู่เป็นเพราะ Flash Developer ที่แม้แต่คนเขียนโปรแกรมไม่เป็นก็สามารถสร้างงาน Animation ออกมาได้ง่ายๆ&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;เพื่อเติมเต็มช่องว่างในการแข่งขัน วันนี้เริ่มมีตัวแทน Flash Developer ให้เห็นแล้วครับ&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://4.bp.blogspot.com/_F2rZXyRWz5I/TMdhoJAVR7I/AAAAAAABoag/gnqczBerq10/s1600/sencha_animator.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;209&quot; src=&quot;http://4.bp.blogspot.com/_F2rZXyRWz5I/TMdhoJAVR7I/AAAAAAABoag/gnqczBerq10/s320/sencha_animator.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;หน้าตา Sencha Animator&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;โปรแกรม &lt;a href=&quot;http://www.sencha.com/blog/2010/10/26/introducing-sencha-animator-the-html5-css3-alternative-to-flash/?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed:+extblog+(Ext+JS+Blog)&quot;&gt;Sencha Animator&lt;/a&gt; พัฒนาบนพื้นฐานของ HTML5, CSS3 และ Java Script โดยเบื้องต้นยังทำอะไรอลังการแบบ Flash ไม่ได้ ดังนั้นจุดขายจึงเป็นโปรแกรมสำหรับสร้างโฆษณาเป็นหลัก ซึ่งตอบโจทย์มากกว่า Flash เพราะ HTML5, CSS3 สามารถแสดงผลบน iPhone, iPad, MBA และ WP7 ได้ทันทีโดยไม่ต้องลงโปรแกรมเพิ่ม&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;ดูตัวอย่างโฆษณาได้ที่ &lt;a href=&quot;http://dev.sencha.com/animator/demos/water/&quot;&gt;animator demo&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;เท่าที่ทดลองใช้ผมรู้สึกเหมือนกลับไปเขียน Flash ตัวแรกๆ Sencha Animator &amp;nbsp;คงต้องพัฒนาอีกนาน โดยเฉพาะเรื่องความเข้ากันได้ของแต่ละ Browser ปัจจุบันยังรองรับเฉพาะ Webkit ครับ แต่ทีมงานสัญญาว่าจะพัฒนาให้รองรับกับ Engine ตัวอื่นต่อไป ผมคาดว่าที่ให้รองรับ Webkit ก่อน เพราะจุดขายหลักคือ Mobile แต่ก็ทิ้งตัวอื่นไม่ได้ถ้าอยากเข้ามาแทน Flash ในตลาดโฆษณา ส่วนตลาดเกมส์คงต้องรอไปก่อน&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;ที่มา &lt;a href=&quot;http://www.sencha.com/blog/2010/10/26/introducing-sencha-animator-the-html5-css3-alternative-to-flash/?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed:+extblog+(Ext+JS+Blog)&quot;&gt;sencha.com&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;ปล. &amp;nbsp;สำหรับค่าย SVG คงตั้งความหวังไว้กับ &lt;a href=&quot;http://wiki.inkscape.org/wiki/index.php/Animation-(Timeline)&quot;&gt;Inkscape&lt;/a&gt; ซึ่งพูดถึงเรื่อง Animation มานานมากแล้ว แต่ยังไม่มีหน้าตาให้เห็นซักที&lt;/div&gt;</description><link>http://www.apirak.com/2010/10/flash-killer-sencha.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_F2rZXyRWz5I/TMdhoJAVR7I/AAAAAAABoag/gnqczBerq10/s72-c/sencha_animator.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-1732642569652607699</guid><pubDate>Tue, 07 Sep 2010 02:43:00 +0000</pubDate><atom:updated>2010-09-06T19:43:33.254-07:00</atom:updated><title>อ่าน  Document EXTJS 3.2 แบบ Offline</title><description>เนื่องจาก net บ้านเราไม่เสถียรเอามากๆ การอ่าน API Document แบบ Offline เลยเป็นทางเลือกที่ดีกว่า แต่เจ้า API Document ของ EXTJS ดันมีแต่แบบ Online &amp;nbsp;วันนี้มาเจอตัว Offline เข้า เลยมาจดเอาไว้ก่อน&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://2.bp.blogspot.com/_F2rZXyRWz5I/TIWmwxG7x5I/AAAAAAABoL0/sbd6LogPUKg/s1600/Screenshot-ExtDocSuite+3.2.0+-+Ext+API+Documentation.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;203&quot; src=&quot;http://2.bp.blogspot.com/_F2rZXyRWz5I/TIWmwxG7x5I/AAAAAAABoL0/sbd6LogPUKg/s320/Screenshot-ExtDocSuite+3.2.0+-+Ext+API+Documentation.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.diloc.de/blog/extdocsuite/&quot;&gt;http://www.diloc.de/blog/extdocsuite/&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
ทำงานบน Adobe Air โดยโปรแกรมจะมี API ตัวล่าสุดเพราะมีระบบ update ให้ แถมมี &amp;nbsp;ExtUX พ่วงมาด้วย ไม่ได้ออกไปเปิดอีกตัว ปัญหาใหญ่มากๆ คือ search เป็นแบบ online :&#39;(&lt;br /&gt;
&lt;br /&gt;
เอามาจากเว็บ &lt;a href=&quot;http://www.diloc.de/&quot;&gt;http://www.diloc.de&lt;/a&gt;</description><link>http://www.apirak.com/2010/09/document-extjs-32-offline.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_F2rZXyRWz5I/TIWmwxG7x5I/AAAAAAABoL0/sbd6LogPUKg/s72-c/Screenshot-ExtDocSuite+3.2.0+-+Ext+API+Documentation.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-40711316409234886</guid><pubDate>Sun, 22 Aug 2010 01:04:00 +0000</pubDate><atom:updated>2010-08-21T18:04:23.583-07:00</atom:updated><title>ข้อมูลตัดสินใจเลือกตั้ง สก สข เขตทวีวัฒนา จากคนพุทธมณฑลสาย 3</title><description>ปีนี้ได้เลือกตั้ง สก สข ในเขตทวีวัฒนาเป็นครั้งแรก เลยต้องศึกษาผู้สมัครเอาไว้หน่อย&lt;br /&gt;
&lt;br /&gt;
ในปีนี้มีผู้สมัครสองคน&lt;br /&gt;
1. พ.ต.ท.หญิง อรุณศรี โสขุมา : ใน internet ไม่มีการพูดถึงผลงานหรือความสามารถ&lt;br /&gt;
2. นายสุไหง แสวงสุข : มีผลงานอยู่ในเว็บบ้านมือสอง วรสารหยดน้ำ&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;พัฒนาครองทวีวัฒนา&lt;/li&gt;
&lt;li&gt;สวนสาธารณะ สาย 2&lt;/li&gt;
&lt;li&gt;เคยเป็นสมาชิดสภากรุงเทพ ดูเรื่องขนส่งและการระบายน้ำ&lt;/li&gt;
&lt;li&gt;เคยเสนอเรื่องแก้ปัญหาน้ำท่วมอย่างยั่งยืน&lt;/li&gt;
&lt;li&gt;อยากวางมือไปทำไร่ปลูกผัก ให้ลูกทำงานแทน&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;br /&gt;
ผลการเลือกตั้งที่ผ่านมา 2553&lt;br /&gt;
นายสุไหง แสวงสุข &amp;nbsp;พรรคประชาธิปัตย์ &amp;nbsp;13,191 &amp;nbsp;คะแนน&lt;br /&gt;
พ.ต.ท.หญิงอรุณศรี โสขุมา พรรคไทยรักไทย &amp;nbsp; 5,815 คะแนน&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #cc0000;&quot;&gt;วิเคราะห์จากเว็บ bloggang&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
ส.ก.เก่า 2 สมัย อย่าง สุไหง แสวงสุข แห่งประชาธิปัตย์ ต้องเจอกับ ตำรวจหญิง พ.ต.ท.หญิงอรุณศรี โสขุมา จากไทยรักไทย แต่ความที่เขตนี้ชาวบ้านอยากเห็นรถไฟฟ้ากทม. ที่จะต่อขยายมาถึงเพชรเกษม ทำให้คะแนนเสียงของ ส.ก.สุไหง มีภาษีดีกว่า&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #cc0000;&quot;&gt;ส่วนตัวคิดว่า&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
ต้องเลือกคนที่มีข้อมูลอยู่ในมือและมีผลงานให้เห็นก่อนอย่างน่าเสียดาย เพราะไม่สามารถไปฟังนโยบายของคุณอรุณศรีได้ ถึงไปฟังก็ไม่รู้ว่าท่านมีผลงานอะไรบ้าง&lt;br /&gt;
&lt;br /&gt;
ในอนาคตถ้าใครจะลงสมัครก็ควรประกาศผลงานของตนเองเอาไว้บน internet ด้วย คนแบบผมจะได้เข้าไปศึกษา เท่าที่ดูแค่ลงทุนทำเว็บหรือติดต่อพูดคุยกับ blogger ก็ทำให้ได้คะแนนนำไปหลายขุมแล้ว เพราะคู่แข่งอีกท่านก็ไม่สนใจตลาดนี้เลย</description><link>http://www.apirak.com/2010/08/3.html</link><author>noreply@blogger.com (Apirak)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-4016794295269675111</guid><pubDate>Fri, 09 Jul 2010 07:41:00 +0000</pubDate><atom:updated>2010-07-09T21:12:37.195-07:00</atom:updated><title>ออกแบบ alert box</title><description>alert box เป็นทางออกของนักออกแบบ ในการซ่อนความซับซ้อนของโปรแกรม แล้วแสดงออกมาเฉพาะเวลาที่ผู้ใช้ต้องตัดสินใจ แต่หลายครั้ง alert box ถูกนำมาใช้โดยไม่ผ่านการคิดให้รอบด้าน แทนที่มันจะทำให้ผู้ใช้รู้สึกดีกับโปรแกรม กับทำให้เกิดผลตรงกันข้าม&lt;br /&gt;
&lt;br /&gt;
ยกตัวอย่างเช่น alert box ของโปรแกรม Thunderbird&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://3.bp.blogspot.com/_F2rZXyRWz5I/TDbLwvJw5qI/AAAAAAABoFM/F1pL7sDASD4/s1600/picture1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;133&quot; src=&quot;http://3.bp.blogspot.com/_F2rZXyRWz5I/TDbLwvJw5qI/AAAAAAABoFM/F1pL7sDASD4/s320/picture1.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;รูปแสดง alert box ตอนกด offline&lt;/div&gt;&lt;br /&gt;
เหตุการณ์ในรูปเกิดขึ้นเมื่อผมไปสั่ง Thunderbird ทำงาน Offline แต่โปรแกรมมีงาน download ค้างอยู่ มันจึงถามขึ้นมาว่า &quot;จะรอให้ download เสร็จก่อนมั้ย ค่อย Offline&quot; ปัญหาเกิดขึ้นทันทีครับ เพราะเมื่อทราบว่ามีการ download อยู่ ผมก็ไม่ต้องการให้มัน Offline และต้องการยกเลิกการ Offline แทน แต่มันไม่มีปุ่ม Cancel ให้&lt;br /&gt;
&lt;br /&gt;
ผมคิดว่า การขัดจังหวะผู้ใช้ไม่ว่าจะเป็นการถามหรือการยืนยัน แสดงว่ามีสิ่งผิดปกติหรือสิ่งอันตรายกำลังจะเกิดขึ้น แม้ว่านักออกแบบจะเตรียมทางออกที่ดีให้กับผู้ใช้แล้ว แต่ผู้ใช้อาจจะมีทางออกที่ดีกว่าเราและต้องการขอยกเลิกการกระทำของเค้า เมื่อได้รับข้อมูลที่เราแจ้งให้&lt;br /&gt;
&lt;br /&gt;
เช่นในกรณีของผม เมื่อผมทราบว่ามีการ download อยู่ค้างอยู่ผมจะไม่สั่ง offline เพื่อให้ web ทำงานเร็วขึ้น แต่จะตัดสินใจไปเล่นกับหมาแทนแล้วเปิดคอมพิวเตอร์ทิ้งไว้&lt;br /&gt;
&lt;br /&gt;
ดังนั้นเราควรให้โอกาสผู้ใช้ในการยกเลิกสิ่งที่กำลังทำอยู่ด้วย&lt;br /&gt;
&lt;br /&gt;
สำหรับการออกแบบในกรณีของ alert box กล่องนี้ อาจจะใช้วิธีเพิ่มปุ่ม cancel เข้าไป เช่น&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://2.bp.blogspot.com/_F2rZXyRWz5I/TDbL-KgnJeI/AAAAAAABoFQ/1Z87dDLErlQ/s1600/picture2.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;133&quot; src=&quot;http://2.bp.blogspot.com/_F2rZXyRWz5I/TDbL-KgnJeI/AAAAAAABoFQ/1Z87dDLErlQ/s320/picture2.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;รูปแสดงการใส่ cancel เข้าไปใน alert box&amp;nbsp;&lt;/div&gt;&lt;br /&gt;
ดูตัวอย่างจาก dialog ของโปรแกรม textedit&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://4.bp.blogspot.com/_F2rZXyRWz5I/TDbMMZwSPqI/AAAAAAABoFU/h4PN4-e7WKM/s1600/picture3.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;113&quot; src=&quot;http://4.bp.blogspot.com/_F2rZXyRWz5I/TDbMMZwSPqI/AAAAAAABoFU/h4PN4-e7WKM/s320/picture3.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;มี alert box เกิดขึ้นเมื่อปิดโปรแกรมโดยไม่ได้ save&lt;/div&gt;&lt;br /&gt;
ปัญหาต่อมาคือ Cancel มันไม่เข้ากับ Yes, No เพราะเป็นตัวเดียวที่เป็นกริยา และที่สำคัญคือคำว่า Yes, No เป็นคำที่ต้องอ่านคำถามให้ดี ไม่เช่นนั้นจะตอบผิด ลองนึกถึงคำถามที่อยู่ในรูปปฏิเสธ ผู้ใช้ต้องใช้สมองในการคิดว่า Yes แปลว่าทำหรือไม่ทำ เช่น&lt;br /&gt;
&lt;br /&gt;
&quot;คุณตัดสินใจไม่บันทึกใช่หรือไม่&quot; แล้วให้เลือก &quot;ใช่&quot; หรือ &quot;ไม่ใช่&quot; เราต้องใช้ความคิดนิดหน่อย&lt;br /&gt;
&lt;br /&gt;
แต่ถ้าเป็น&lt;br /&gt;
&lt;br /&gt;
&quot;คุณตัดสินใจไม่บันทึกใช่หรือไม่&quot; แล้วให้เลือก &quot;บันทึก&quot; หรือ &quot;ไม่บันทึก&quot; อันนี้น่าจะใช้สมองน้อยกว่า&lt;br /&gt;
&lt;br /&gt;
ดังนั้นเราลองเปลี่ยนปุ่มเป็นกริยาดู&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://1.bp.blogspot.com/_F2rZXyRWz5I/TDbMXXbWhQI/AAAAAAABoFY/FDtPCHhhkIM/s1600/picture4.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;132&quot; src=&quot;http://1.bp.blogspot.com/_F2rZXyRWz5I/TDbMXXbWhQI/AAAAAAABoFY/FDtPCHhhkIM/s320/picture4.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;เปลี่ยนปุ่มเป็นคำกริยา&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
ตาม HIG ของ Apple บอกว่าข้อความใน alert box ควรมีให้น้อยที่สุดเท่าที่จะทำได้เพราะกลัวว่าคนจะไม่อ่าน&amp;nbsp;ผมมีหลักการง่ายๆ ที่เคยไปฟังจาก WWDC 2005 เค้าบอกว่าสิ่งที่ต้องมีใน alert box คือ&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&quot;ปัญหาหรือสิ่งที่เกิดขึ้น + ผลลัพทธ์ของปัญหา + ทางแก้ปัญหา&quot;&lt;/div&gt;&lt;br /&gt;
ถ้ามีสองบรรทัด บรรทัดแรกให้เป็นข้อความที่ต้องการบอก (Message text) ส่วนบรรทัดที่สองเป็นคำขยาย (Informative text) หลังจากอ่าน HIG แล้วผมลองเปลี่ยนตาม HIG ของ Apple ดู&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://1.bp.blogspot.com/_F2rZXyRWz5I/TDbNmpJGjKI/AAAAAAABoFo/LKiSGBzfbi4/s1600/picture6.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;133&quot; src=&quot;http://1.bp.blogspot.com/_F2rZXyRWz5I/TDbNmpJGjKI/AAAAAAABoFo/LKiSGBzfbi4/s320/picture6.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;รูปหลังจากเปลี่ยนคำถาม&lt;/div&gt;&lt;br /&gt;
อันดับแรกผมตัดข้อความ&amp;nbsp;&quot;Download Message&quot; ซึ่งไม่จำเป็นออก &amp;nbsp;สองคือเพิ่มคำขยายผลของคำถามเข้าไป และ สุดท้ายคือเพิ่ม icon ของโปรแกรมเข้าไปใน icon ของ alert ด้วย ก็ได้แต่หวังว่า version ต่อไปของ Thunderbird จะเพิ่ม Cancel เข้าไป :)&lt;br /&gt;
&lt;br /&gt;
สำหรับ OSX จะประมาณนี้ หากสนใจเรื่องการเขียนข้อความใน Dialog ให้ลองอ่านใน&lt;a href=&quot;http://developer.apple.com/mac/library/documentation/UserExperience/Conceptual/AppleHIGuidelines/XHIGHIDesign/XHIGHIDesign.html&quot;&gt; HIG ของ Apple&lt;/a&gt; เพิ่มเติม แต่สำหรับ OS อื่นอาจจะมีวิธีการแบบของตัวเอง เราก็ควรจะเขียนโปรแกรมตามประสบการณ์ของ OS นั้นๆ ครับ ผู้ใช้จะได้ไม่รู้สึกแปลก&lt;br /&gt;
&lt;br /&gt;
แนะนำให้ลองอ่าน HIG ของ &lt;a href=&quot;http://library.gnome.org/devel/hig-book/nightly/&quot;&gt;Gnome&lt;/a&gt;, &amp;nbsp;&lt;a href=&quot;http://techbase.kde.org/Projects/Usability/HIG&quot;&gt;KDE&lt;/a&gt; และ &lt;a href=&quot;http://msdn.microsoft.com/en-us/library/aa511258.aspx&quot;&gt;Windows&lt;/a&gt; ดูครับ&lt;br /&gt;
&lt;br /&gt;
เพิ่มเติม 1&lt;br /&gt;
&lt;br /&gt;
อีกหนึ่งตัวอย่างจาก chrome ที่ใช้วิธีใส่ข้อความยาวๆ บนปุ่ม และลดเหลือทางเลือกแค่สองทาง&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://4.bp.blogspot.com/_F2rZXyRWz5I/TDfyy4sr70I/AAAAAAABoFw/-yO9_G_2sgs/s1600/Screen+shot+2010-07-09+at+7.06.16+PM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://4.bp.blogspot.com/_F2rZXyRWz5I/TDfyy4sr70I/AAAAAAABoFw/-yO9_G_2sgs/s320/Screen+shot+2010-07-09+at+7.06.16+PM.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;</description><link>http://www.apirak.com/2010/07/alert-box.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_F2rZXyRWz5I/TDbLwvJw5qI/AAAAAAABoFM/F1pL7sDASD4/s72-c/picture1.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-1879962830631528741</guid><pubDate>Fri, 21 May 2010 04:50:00 +0000</pubDate><atom:updated>2010-05-20T21:50:08.351-07:00</atom:updated><title>ติดตั้ง Parkplace Amazon S3 Clone บน Snow Leopard</title><description>มีปัญหากับการติดตั้ง &lt;a href=&quot;http://github.com/technoweenie/parkplace&quot;&gt;Parkplace&lt;/a&gt; บน Snow Leopard นิดหน่อย แต่ไหนๆ ติดตั้งได้แล้ว ขอจดขั้นตอนไว้ที่นี่ละกัน&lt;br /&gt;
&lt;br /&gt;
อันดับแรกให้ทำตามที่ Readme บอก&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;$ gem install camping mongrel --include-dependencies&lt;/li&gt;
&lt;li&gt;$ gem install sendfile&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;จากนั้นติดตั้ง &amp;nbsp;SQLite3 ruby plugin (ตัว SQLite ไม่ต้องติดตั้งเพราะ Snow leopard มีอยู่แล้ว)&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;$ gem install sqlite3-ruby&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;หลังจากทดลอง run &amp;nbsp;bin/parkplace มันจะถามหา activesupport 2.2.0 ถ้าเราไม่มีก็ให้ลงซะ&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;$ gem install rails -s http://gems.rubyonrails.org -v 2.2.0&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;ผมลง rails ทั้งยวงเลยเผื่อมันอยากได้อย่างอื่นด้วย เช่น activerecord จะได้มีพร้อม มาดูใน code ตอนหลังพบว่ามันต้องการสองตัวนี้&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;div&gt;gem &#39;activesupport&#39;, &#39;~&amp;gt; 2.2.0&#39;&lt;/div&gt;&lt;div&gt;gem &#39;activerecord&#39;, &amp;nbsp;&#39;~&amp;gt; 2.2.0&#39;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;หลังจากนั้นมันจะมีปัญหากับการเชื่อมต่อ SQLite อีก แต่ไม่ได้เป็นเพราะ activerecord ครับ แต่เป็นเพราะ package camping &amp;nbsp;มันทันสมัยไปหน่อย ให้ลบ version 2.0 ออก แล้วให้ลง 1.5.180 แทน&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;$ gem &amp;nbsp;uninstall camping&lt;/li&gt;
&lt;li&gt;$ gem install camping -v 1.5.180&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;หลังจากนั้นสามารถเปิด parkplace ได้เลย&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;$ ./bin/parkplace&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;</description><link>http://www.apirak.com/2010/05/parkplace-amazon-s3-clone-snow-leopard.html</link><author>noreply@blogger.com (Apirak)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-8670049129767064242</guid><pubDate>Tue, 18 May 2010 16:54:00 +0000</pubDate><atom:updated>2010-05-18T10:21:20.955-07:00</atom:updated><title>เขียนเกมส์บน iPhone ด้วยภาษา Lua</title><description>หลังจากได้ข่าวว่าสามารถเขียนเกมส์บน iPhone ได้ด้วย script language ก็รีบกระโดดเข้าไปอ่านทันทีครับ&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://3.bp.blogspot.com/_F2rZXyRWz5I/S_K_Uqt_mCI/AAAAAAABl04/NYyB0GJ9yxk/s1600/banner-overview-gameDev.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://3.bp.blogspot.com/_F2rZXyRWz5I/S_K_Uqt_mCI/AAAAAAABl04/NYyB0GJ9yxk/s1600/banner-overview-gameDev.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;ภาษาที่เค้าใช้คือภาษา Lua ซึ่งเป็นภาษาที่ใช้ในการเขียนเกมส์อยู่แล้ว อย่างเช่น Monkey Island หรือ &amp;nbsp;Grim fandango หรือแม้แต่ Civilization V ก็ใช้ภาษานี้ ดังนั้นมันเลยเหมาะเอามากๆ สำหรับการนำมาเขียนเกมส์ และยิ่งเหมาะมากที่จะเขียนเกมส์บน iPhone เพราะการเขียนด้วย Objective-C เป็นงานที่ยากขึ้นมาทันทีเมื่อเทียบกับ Corona-Lua&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;(ที่เรียกว่า Corona-Lua เพราะว่ามันขี่อยู่บน Library ของ Corona ครับ ยังมีคนอื่นที่ใช้ Lua เขียนโปรแกรมบน iPhone อีกแต่เป็น Library คนละชุดกัน)&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;การทดลองเล่นก็ไม่ยาก ให้เอา xcode มาลงก่อน จากนั้น &lt;a href=&quot;https://developer.anscamobile.com/products/get-corona-trial/&quot;&gt;download corona&lt;/a&gt; จากเว็บไซต์ เมื่อแตก dmg ดูใน folder จะเห็น &amp;nbsp;folder ชื่อ example อยู่ด้านใน ในนั้นจะมีตัวอย่างง่ายๆ ไว้ให้ทดลอง ให้เราเอา simulator ที่อยู่ใน folder นอกสุดเปิดดู ไม่ต้องห่วงเรื่อง compile หากทดลองแก้ไข code ก็กด refresh (command+r) ได้เลย&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;จากการทดลองเขียนโปรแกรม &quot;ยานร่อนลงดวงจันทร์&quot; เขียน code ไม่ถึง 100 บรรทัด เจอของง่ายแบบนี้แค่คิดว่าต้องเขียน Objective-C ก็เริ่มท้อซะแล้ว&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://2.bp.blogspot.com/_F2rZXyRWz5I/S_LCGOOr0mI/AAAAAAABl1E/i1-gaLB6wqk/s1600/Screen+shot+2010-05-18+at+11.36.19+PM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;http://2.bp.blogspot.com/_F2rZXyRWz5I/S_LCGOOr0mI/AAAAAAABl1E/i1-gaLB6wqk/s320/Screen+shot+2010-05-18+at+11.36.19+PM.png&quot; width=&quot;178&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;เกมส์นี้ง่ายๆ คือตัว module ของเราจะตกลงมาตามแรงโน้มถ่วง เราต้องคอยกดไอพ่น (ปุ่มสีแดง) ให้ยานชลอความเร็วลง ถ้ากดไอพ่นมากไปยานจะหลุดหน้าจอไปเลย แต่ถ้ากดน้อยไป ยานก็จะตกด้วยความเร็วทำให้ยานพัง&amp;nbsp;ลองดู code สั้นๆ ได้ที่นี่ครับ &lt;a href=&quot;http://files.apirak.com/downloads/apollo.tar.gz&quot;&gt;code and graphic&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;ทาง &lt;a href=&quot;http://anscamobile.com/corona/&quot;&gt;Anscamobile&lt;/a&gt; เค้ายืนยันว่าสามารถอยู่บน app-store ได้แน่นอน เพราะสุดท้ายแล้ว code ถูก compile เป็น native ไม่ได้ทำงานอยู่บน virtual machine และเค้าบอกว่า version สำหรับพัฒนาบน Linux และ Windows กำลังจะออกมาเร็วๆ นี้&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;ที่สำคัญที่สุดเราสามารถเขียนโปรแกรมทีเดียว ทำงานได้ทั้ง iPhone, iPad, Android เลยครับ น่าเสียดายไม่มี BB&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Reference&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;-&amp;nbsp;&lt;a href=&quot;http://en.wikipedia.org/wiki/Category:Lua-scripted_video_games&quot;&gt;เกมส์ที่เขียนด้วย Lua&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;-&amp;nbsp;&lt;a href=&quot;http://anscamobile.com/corona/&quot;&gt;Official site ของ Corona&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.amazon.com/Programming-Gems-Luiz-Henrique-Figueiredo/dp/8590379841?ie=UTF8&amp;amp;tag=ishather-20&amp;amp;link_code=bil&amp;amp;camp=213689&amp;amp;creative=392969&quot; imageanchor=&quot;1&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Lua Programming Gems&quot; src=&quot;http://ws.amazon.com/widgets/q?MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;Format=_SL160_&amp;amp;ASIN=8590379841&amp;amp;tag=ishather-20&quot; /&gt;&lt;/a&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://www.assoc-amazon.com/e/ir?t=ishather-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=8590379841&quot; style=&quot;border: none !important; margin: 0px !important; padding: 0px !important;&quot; width=&quot;1&quot; /&gt;&amp;nbsp;&amp;nbsp;&lt;a href=&quot;http://www.amazon.com/Beginning-Lua-Programming-Programmer/dp/0470069171?ie=UTF8&amp;amp;tag=ishather-20&amp;amp;link_code=bil&amp;amp;camp=213689&amp;amp;creative=392969&quot; imageanchor=&quot;1&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Beginning Lua Programming (Programmer to Programmer)&quot; src=&quot;http://ws.amazon.com/widgets/q?MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;Format=_SL160_&amp;amp;ASIN=0470069171&amp;amp;tag=ishather-20&quot; /&gt;&lt;/a&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://www.assoc-amazon.com/e/ir?t=ishather-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=0470069171&quot; style=&quot;border: none !important; margin: 0px !important; padding: 0px !important;&quot; width=&quot;1&quot; /&gt;</description><link>http://www.apirak.com/2010/05/iphone-lua.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_F2rZXyRWz5I/S_K_Uqt_mCI/AAAAAAABl04/NYyB0GJ9yxk/s72-c/banner-overview-gameDev.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-3995862142607576865</guid><pubDate>Tue, 27 Apr 2010 22:59:00 +0000</pubDate><atom:updated>2010-04-27T19:13:45.021-07:00</atom:updated><title>ข้อเสียของ Cloud Computing</title><description>&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #38761d;&quot;&gt;&quot;Dark side of the cloud&quot;&lt;/span&gt;&lt;/b&gt;&amp;nbsp;แม้ว่าปัจจุบันเราอาจจะยอมรับข้อเสียเหล่านั้นได้ไปแล้ว แต่สำหรับภาคธุรกิจ มันคือสิ่งที่เราต้องคำนึงถึงและหาทางรับมือไว้ล่วงหน้า&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;ทุกอย่างขึ้นกับ Internet&lt;/span&gt;&lt;/b&gt; ทั้งโปรแกรมและเอกสาร ทุอย่างอยู่บน cloud หมดนะครับ แค่ Internet ช้าก็ไม่ต้องทำงานกันแล้ว&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;Feature&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt; น้อย&lt;/span&gt;&lt;/b&gt; เมื่อเทียบกับ Desktop Application เพราะเครื่องมือในการพัฒนาบน Web เมื่อเทียบกับ Desktop แล้วยังถือว่าแย่มาก (ด้วยข้อจำกัดของ Browser) และจะยังไม่ดีขึ้นจนกว่าจะถึงยุคของ HTML5 (ต้องมี Framework ที่ทำให้เราใช้ HTML5 ได้เต็มที่)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;Security&lt;/span&gt;&lt;/b&gt; เรื่องความปลอดภัยเป็นทั้งจุดออนและจุดเข็งในเวลาเดียวกัน เราต้องยอมรับความจริงว่า &lt;u&gt;ข้อมูลของเราฝากไว้กับคนอื่น&lt;/u&gt; ต้องแน่ใจว่าคนนั้นไว้ใจได้ถึงจะเลือกใช้ cloud ของเค้า&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;ที่อยู่ของ Server&lt;/span&gt;&lt;/b&gt; เนื่องจากเป็น cloud เราเลยบอกที่อยู่แน่ๆ ของข้อมูลไม่ได้ ยิ่งเป็นบริการที่มี server อยู่ในหลายประเทศ การจะบอกว่าข้อมูลอยู่ในประเทศไหนก็ทำได้ยากขึ้น ทำให้เกิดข้อจำกัดขึ้นทันที เพราะรัฐบาลอย่างประเทศไทย หรือแคนาดา ห้ามไม่ให้เก็บข้อมูลของรัฐไว้ในต่างประเทศ เพราะถ้าข้อมูลอยู่ใน server ของสหรัฐ ด้วยกฏหมายของเค้า จะทำให้ US Government สามารถเข้าไปดูข้อมูลได้ทันที&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;ย้ายผู้ให้บริการได้ยาก&lt;/span&gt;&lt;/b&gt; ปัจจุบัน ยังไม่มีมาตรฐานในาการทำ cloud หากเราต้องการย้ายไปใช้ cloud ของที่อื่น บางทีอาจจะต้องเขียนโปรแกรมขึ้นมาใหม่เลยทีเดียว&lt;/li&gt;
&lt;/ol&gt;&lt;div&gt;Cloud computing ไม่ได้ทำแค่เรื่อง computing อย่างเดียว ไว้ตอนหน้าเรามาคุยว่าเค้าแบ่งมันเป็นกี่ประเภท&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;http://www.amazon.com/Cloud-Application-Architectures-Applications-Infrastructure/dp/0596156367?ie=UTF8&amp;amp;tag=ishather-20&amp;amp;link_code=bil&amp;amp;camp=213689&amp;amp;creative=392969&quot; imageanchor=&quot;1&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Cloud Application Architectures: Building Applications and Infrastructure in the Cloud (Theory in Practice (O&#39;Reilly))&quot; src=&quot;http://ws.amazon.com/widgets/q?MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;Format=_SL160_&amp;amp;ASIN=0596156367&amp;amp;tag=ishather-20&quot; /&gt;&lt;/a&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://www.assoc-amazon.com/e/ir?t=ishather-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=0596156367&quot; style=&quot;border: none !important; margin: 0px !important; padding: 0px !important;&quot; width=&quot;1&quot; /&gt;&amp;nbsp;&lt;a href=&quot;http://www.amazon.com/Cloud-Computing-Practical-Approach-Velte/dp/0071626948?ie=UTF8&amp;amp;tag=ishather-20&amp;amp;link_code=bil&amp;amp;camp=213689&amp;amp;creative=392969&quot; imageanchor=&quot;1&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Cloud Computing, A Practical Approach&quot; src=&quot;http://ws.amazon.com/widgets/q?MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;Format=_SL160_&amp;amp;ASIN=0071626948&amp;amp;tag=ishather-20&quot; /&gt;&lt;/a&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://www.assoc-amazon.com/e/ir?t=ishather-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=0071626948&quot; style=&quot;border: none !important; margin: 0px !important; padding: 0px !important;&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description><link>http://www.apirak.com/2010/04/cloud-computing_27.html</link><author>noreply@blogger.com (Apirak)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-2739769051357995938</guid><pubDate>Tue, 27 Apr 2010 05:07:00 +0000</pubDate><atom:updated>2010-04-26T22:07:17.100-07:00</atom:updated><title>ทำไมต้อง Cloud computing</title><description>&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #38761d;&quot;&gt;&quot;Cloud Computer&quot;&lt;/span&gt;&lt;/b&gt; เป็นคำคุ้นหูสำหรับนักพัฒนาในโลก Online ซึ่งใช้เรียกบริการที่เน้นแก้ปัญหาเรื่องปริมาณเป็นหลัก ทั้งปริมาณของผู้ใช้ ปริมาณของข้อมูล หรือปริมาณของการประมวลผล โดยผู้ใช้บริการสามารถเลือกได้ว่าวินาทีนี้ต้องการใช้งานเท่าใด และสิ่งที่พิสูจน์ความเป็น Cloud คือเมื่อผู้ใช้ต้องการใช้งานมากขึ้น หรือน้อยลงต้องสามารถทำได้ทันทีโดยไม่ต้องรอการพัฒนาเพิ่มเติม และผู้ใช้ไม่ต้องคำนึงถึงปัญหาทางเทคนิค และปัญหาเรื่องการบำรุงรักษา&lt;br /&gt;
&lt;br /&gt;
ทำไมต้องใช้ Cloud&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://2.bp.blogspot.com/_F2rZXyRWz5I/S9ZwP4d96bI/AAAAAAABa0w/oout9wYu7Kc/s1600/Screen+shot+2010-04-27+at+12.02.29+PM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;222&quot; src=&quot;http://2.bp.blogspot.com/_F2rZXyRWz5I/S9ZwP4d96bI/AAAAAAABa0w/oout9wYu7Kc/s400/Screen+shot+2010-04-27+at+12.02.29+PM.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #38761d;&quot;&gt;สำหรับลูกค้า&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;ราคาถูก&lt;/span&gt;&lt;/b&gt; บริการที่อยู่บน cloud ควรถูกมากๆ ยกตัวอย่างเช่น gmail เป็นบริการฟรี ในขณะที่เก็บข้อมูลได้มากกว่า 7G หรือ Google App Premier Edition ราคาเพียง 50$ ต่อคน ต่อปี ซึ่งถือว่าถูกมากเมื่อเทียบกับ การซื้อ และดูแล Microsoft Exchange ในระดับ Enterprise&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;ใช้ง่าย&lt;/span&gt;&lt;/b&gt; เพราะจ่ายอย่างเดียวครับ ไม่ต้องติดตั้งระบบ ไม่ต้องจ้างผู้เชียวชาญมาดูแล&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;&lt;b&gt;ใช้ได้หลาย platform&lt;/b&gt;&lt;/span&gt; มีแค่ Net book มือถือ หรือเข้าไปใช้ Net cafe ก็สามารถใช้บริการได้แล้วโดยไม่จำกัดว่าใช้ OS อะไร ที่สำคัญบริษัทไม่ต้องเสียเงินซื้อเครื่องใหม่ หรือเครื่องแพงๆ มาใช้ด้วย&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;ไม่จำกัดสถานที่&lt;/span&gt;&lt;/b&gt;&amp;nbsp;เนื่องจาก cloud ไม่ได้เก็บข้อมูลไว้ที่ใดที่หนึ่ง แต่ข้อมูลจะลอยอยู่ตรงกลาง ดังนั้นผู้ใช้สามารถเข้าถึงข้อมูลเดี๋ยวกันได้จากหลายที่&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;จ่ายเท่าที่ใช้ &lt;/span&gt;&lt;/b&gt;เพราะไม่ต้องลงทุนอุปกรณ์ไปก่อน จึงไม่มีค่าใช้จ่ายเริ่มต้น เลือกใช้เมื่อไหรก็ได้เหมือนการเช่า และอาจจะดีกว่าเพราะบางครั้งไม่ได้เช่าตามเวลา แต่เช่าตามการใช้งานจริง&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;ทำงานร่วมกันง่าย&lt;/span&gt;&lt;/b&gt; เพราะ Internet เปิดอยู่ตลอดเวลา และเอกสารไม่ได้อยู่ในเครื่องของคนใดคนหนึ่งทุกคนเข้าถึงได้พร้อมๆ กัน&lt;/li&gt;
&lt;/ol&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #38761d;&quot;&gt;&lt;b&gt;สำหรับผู้ประกอบการ&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;ราคาถูก&lt;/span&gt;&lt;/b&gt; ในทางธุรกิจ การไม่ต้องจ่ายเงินลงทุนไปก่อนเป็นเรื่องที่ดีมากๆ เพราะทำให้สามารถตั้งใจ ใส่ใจ กับธุรกิจของตนเองได้ทันที (เวลาเป็นต้นทุนที่สูงสุด)&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;&lt;b&gt;เพิ่มโอกาศทางธุรกิจ&lt;/b&gt;&lt;/span&gt; ตัว cloud เองไม่ใช่ธุรกิจใหม่ แต่ cloud เปิดโอกาสให้เราสามารถสร้างบริการที่สู้กับบริษัทใหญ่ๆ ได้ โดยไม่ต้องลงทุน หรือลงแรงศึกษา สร้างระบบพื้นฐาน&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;ปริมาณ&lt;/span&gt;&lt;/b&gt; เป็นปัญหาของธุรกิจเสมอ ทั้งตอนเริ่มต้นที่ขนาดเล็กเกิดไปลงทุนไม่คุ้ม หรือตอนที่ขนาดใหญ่ขึ้นจนขยายไม่ออก ตัว Cloud แก้ปัญหานี้ไปแล้ว&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;อัตโนมัติ และปลอดภัย&lt;/span&gt;&lt;/b&gt; ค่าระบบอัตโนมัติ และค่าความปลอดภัยเป็นของแพงครับ แต่สองสิ่งนี้จะได้มาพร้อมกับ Cloud เพราะ Cloud เป็นของขายดังนั้นมันจึงต้องมี API ให้เราสร้างระบบอัตโนมัติได้&lt;/li&gt;
&lt;/ol&gt;&lt;div&gt;Cloud ไม่ได้มีแต่ข้อดี มันมีข้อเสียที่ร้ายกาจอยู่ด้วย แต่ตอนนี้ยาวแล้วไว้เขียนต่อตอนหน้าละกัน&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.amazon.com/Cloud-Computing-Dummies-Judith-Hurwitz/dp/0470484705?ie=UTF8&amp;amp;tag=ishather-20&amp;amp;link_code=bil&amp;amp;camp=213689&amp;amp;creative=392969&quot; imageanchor=&quot;1&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Cloud Computing For Dummies&quot; src=&quot;http://ws.amazon.com/widgets/q?MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;Format=_SL160_&amp;amp;ASIN=0470484705&amp;amp;tag=ishather-20&quot; /&gt;&lt;/a&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://www.assoc-amazon.com/e/ir?t=ishather-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=0470484705&quot; style=&quot;border: none !important; margin: 0px !important; padding: 0px !important;&quot; width=&quot;1&quot; /&gt;&amp;nbsp;&lt;a href=&quot;http://www.amazon.com/Design-Patterns-Prentice-Service-Oriented-Computing/dp/0136135161?ie=UTF8&amp;amp;tag=ishather-20&amp;amp;link_code=bil&amp;amp;camp=213689&amp;amp;creative=392969&quot; imageanchor=&quot;1&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;SOA Design Patterns (The Prentice Hall Service-Oriented Computing Series from Thomas Erl)&quot; src=&quot;http://ws.amazon.com/widgets/q?MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;Format=_SL160_&amp;amp;ASIN=0136135161&amp;amp;tag=ishather-20&quot; /&gt;&lt;/a&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://www.assoc-amazon.com/e/ir?t=ishather-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=0136135161&quot; style=&quot;border: none !important; margin: 0px !important; padding: 0px !important;&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;&lt;/div&gt;</description><link>http://www.apirak.com/2010/04/cloud-computing.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_F2rZXyRWz5I/S9ZwP4d96bI/AAAAAAABa0w/oout9wYu7Kc/s72-c/Screen+shot+2010-04-27+at+12.02.29+PM.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-4646415202056424251</guid><pubDate>Thu, 25 Mar 2010 10:42:00 +0000</pubDate><atom:updated>2010-03-25T15:16:50.652-07:00</atom:updated><title>Apple Land vs Google Empire</title><description>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;ผมพยายามหาทางใช้ของดีของ Apple และใช้บริการฟรีๆ ของ Google มานาน จนตอนนี้เริ่มไม่ไหวแล้วครับ คงต้องเลือกทางใดทางหนึ่งซะที&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://2.bp.blogspot.com/_F2rZXyRWz5I/S6lzm7ICi5I/AAAAAAABaXo/Pib61yh-fjQ/s1600-h/app_vs_goo_small.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;http://2.bp.blogspot.com/_F2rZXyRWz5I/S6lzm7ICi5I/AAAAAAABaXo/Pib61yh-fjQ/s400/app_vs_goo_small.png&quot; width=&quot;353&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Picasa เทียบ iPhoto ไม่ได้เลยครับ ทั้งในด้าน UX Map และ Sync โดยเฉพาะภาษาไทยของ Picasa บนเครื่อง Mac เรียกว่าอ่านไม่ได้เลยทีเดียว ส่วนบริการ Online storage ของ dot mac ก็สวยกว่า picasaweb มากๆ จะมีดีกว่าก็คือตัว gmail ที่ทำให้สามารถทิ้ง mail.app ได้เลย&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;สำหรับ Mobile device เจ้า iPhone มี Usability ที่เข้มข้นกว่า Android ทั้ง Application ของ Apple เอง และของ Developer ทั่วไป ผมเทียบกับ HTC Magic (Sense) ที่ใช้อยู่ ดังนั้นแม้ว่าจะต้องจ่ายแพงกว่าเท่าตัว ถ้ามีเงินผมคิดว่าคุ้มครับ&lt;/div&gt;&lt;br /&gt;
แต่เมื่อไม่ค่อยมีตัง ดังนั้นผมจึงเลือก Google ครับ&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;</description><link>http://www.apirak.com/2010/03/apple-land-vs-google-empire.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_F2rZXyRWz5I/S6lzm7ICi5I/AAAAAAABaXo/Pib61yh-fjQ/s72-c/app_vs_goo_small.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-3234673531255964710</guid><pubDate>Wed, 24 Mar 2010 01:19:00 +0000</pubDate><atom:updated>2010-03-23T18:19:42.957-07:00</atom:updated><title>ความเป็นมืออาชีพ ของคนกวาดพื้น</title><description>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;ความเป็นมืออาชีพไม่ได้ถูกจำกัดไว้ที่ความยากของงาน แต่ถูกจำกัดด้วยตัวเราเองมากกว่า ถ้าเราเต็มที่กับงาน รับผิดชอบกับงาน เราย่อมเป็นมืออาชีพหรือที่เรียกว่า Professional ได้&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;เมื่อก่อนเวลาคุยกับน้องๆ ผมมักยกตัวอย่างคนถูพื้นที่หรือคนตัดต้นไม้ที่ญี่ปุ่น เพราะที่ผมไปเจอมา (ในศูนย์วิจัย) เค้าจะมีความเป็นมืออาชีพสูงมาก มีความตั้งใจและมีเครื่องมือชนิดที่ต่อให้ผมพยายามไปถูพื้นแทนเค้าก็คงทำไม่ได้ดีเท่าเค้า&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;วันนี้ไม่ต้องไปยกตัวอย่างไกลๆ ผมนั่งรถมอเตอร์ไซต์เข้าซอย ไปเจอ innovation ของคุณป้ากวาดถนน&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://2.bp.blogspot.com/_F2rZXyRWz5I/S6ljBpmtTRI/AAAAAAABaVw/zbmpsQ4Ruxo/s1600-h/Screen%20shot%202010-03-24%20at%207.55.01%20AM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://2.bp.blogspot.com/_F2rZXyRWz5I/S6ljBpmtTRI/AAAAAAABaVw/zbmpsQ4Ruxo/s1600/Screen%20shot%202010-03-24%20at%207.55.01%20AM.png&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://2.bp.blogspot.com/_F2rZXyRWz5I/S6ljB16RwCI/AAAAAAABaV0/VeK0PQGPoe0/s1600-h/Screen%20shot%202010-03-24%20at%207.55.06%20AM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;http://2.bp.blogspot.com/_F2rZXyRWz5I/S6ljB16RwCI/AAAAAAABaV0/VeK0PQGPoe0/s320/Screen%20shot%202010-03-24%20at%207.55.06%20AM.png&quot; width=&quot;185&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;ด้านซ้ายเป็นที่ตักผงทั่วไป ด้านขวาเป็นที่ตักผงที่ดัดแปลงแล้ว&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;ป้าเอาท่อยางมาดัดโค้งแล้วมัดกับที่ตักผง ผมเดาว่าใช้สำหรับตอนที่ต้องเดินไปที่ต่างๆ จะได้เอาพาดบ่าได้ การเป็นสายยางทำให้พาดบ่าแล้วนุ่มกว่าเชือกแถมไม่แกว่งไปแกว่งมา ไม่รบกวนการกวาด ผมเห็นตอนเค้าใช้งานมันดูเท่มากๆ สิ่งนี้น่าจะเกิดจากการทำงานด้านนี้มานาน และพบว่าการขนที่ตัดผงไปที่ต่างๆ มันเกะกะจะเอาพาดบ่าก็ไม่ได้ ถ้าใช้เชือกอาจจะบาดหรือตัวด้ามอาจจะกระแทกหลังได้ จึงเป็นที่มาของสิ่งประดิษฐ์นี้&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;ผมคิดว่านี่เป็นส่วนหนึ่งของความเป็นมืออาชีพ ที่มือสมัครเล่นจะคิดไม่ถึง ถ้าเรากวาดถนนหน้าบ้านอาทิตย์ละครั้งคงคิดไม่ถึงหรือไม่ต้องคิด แต่ถ้าต้องกวาดวันละหลายๆ กิโล มันก็ต้องคิดอะไรมากกว่าเดิมถึงจะเรียกกว่ามืออาชีพ&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;ขอคารวะคุณป้า ท่านเป็น Professional ด้านการกวาดพื้นถนนจริงๆ&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;ที่มา ซอย ถนนสุขุมวิทย์ 26 (7:30)&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;ปล. รูปวาดด้วยโปรแกรม omnigraffle ครับ&lt;/div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Lucida Grande&#39;; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 11px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Lucida Grande&#39;; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 11px;&quot;&gt;&lt;a href=&quot;http://www.amazon.com/Omni-Group-14-Omnigraffle-Professional/dp/B001DSGXH2?ie=UTF8&amp;amp;tag=ishather-20&amp;amp;link_code=bil&amp;amp;camp=213689&amp;amp;creative=392969&quot; imageanchor=&quot;1&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Omnigraffle 5 Professional&quot; src=&quot;http://ws.amazon.com/widgets/q?MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;Format=_SL160_&amp;amp;ASIN=B001DSGXH2&amp;amp;tag=ishather-20&quot; /&gt;&lt;/a&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://www.assoc-amazon.com/e/ir?t=ishather-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=B001DSGXH2&quot; style=&quot;border: none !important; margin: 0px !important; padding: 0px !important;&quot; width=&quot;1&quot; /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Lucida Grande&#39;; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 11px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;</description><link>http://www.apirak.com/2010/03/blog-post.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_F2rZXyRWz5I/S6ljBpmtTRI/AAAAAAABaVw/zbmpsQ4Ruxo/s72-c/Screen%20shot%202010-03-24%20at%207.55.01%20AM.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-5317725261023299350</guid><pubDate>Sun, 21 Mar 2010 09:48:00 +0000</pubDate><atom:updated>2010-03-21T02:51:36.136-07:00</atom:updated><title>Dynamic text with style</title><description>วันก่อนพยายาม Hack งานออกแบบของเว็บ getdash.com ไปพบว่าเค้าใส่ effect แปลกๆ เข้าไปในตัวอักษร แถม font ยังไม่ใช่ font มาตรฐาน พอดูด้วย firebug ก็พบว่าเค้าใช้ cufon สำหรับสร้างตัวอักษร&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;img src=&quot;http://files.apirak.com/cufon/cufon_2.png&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;ทดลองใช้ font little star จากเว็บ f0nt.com&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;บรรทัดแรกทดลองใส่เงาสีขาวบนตัวอักษร บรรทัดที่สองทดลองเรื่องสี และบรรทัดที่สามทดสอบภาษาไทย ส่วนเรื่องสระลอยทดสอบแล้วแต่ไม่ได้ capture มาให้ดู (&lt;a href=&quot;http://files.apirak.com/cufon/&quot;&gt;ทดสอบสระลอย&lt;/a&gt;)&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;img src=&quot;http://files.apirak.com/cufon/cufon_1.png&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;ทดลองกับ font&amp;nbsp;supermaket จากเว็บ f0nt.com&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;การใช้งาน cufon เริ่มจากแปลง font ของเราเป็นไฟล์ java script ก่อน (*.font.js) ก่อน โดยเข้าไปที่เว็บ&amp;nbsp;&lt;a href=&quot;http://cufon.shoqolate.com/&quot;&gt;cufon.shoqolate.com&lt;/a&gt; เลือก upload ไฟล์ font ของเรา แล้วเลือก option ตามที่เราต้องการ&lt;br /&gt;
&lt;br /&gt;
ขั้นที่สอง สั่งให้ script cufon แปลงข้อความของเราให้เป็น font ตามที่สร้างเอาไว้&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;lt;head&amp;gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; &amp;nbsp;&amp;lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot;&amp;gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; &amp;nbsp;&amp;lt;script src=&quot;cufon-yui.js&quot; type=&quot;text/javascript&quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; &amp;nbsp;&amp;lt;script src=&quot;Little_Star_0506_400.font.js&quot; type=&quot;text/javascript&quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; &amp;nbsp;&amp;lt;script type=&quot;text/javascript&quot;&amp;gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; &amp;nbsp; &amp;nbsp;Cufon.replace(&#39;h1&#39;);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; &amp;nbsp; &amp;nbsp;Cufon.replace(&#39;h2&#39;,{hover:true, textShadow:&#39;0 1px 1px #FFF&#39;});&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; &amp;nbsp;&amp;lt;/script&amp;gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; &amp;nbsp;&amp;lt;style type=&quot;text/css&quot;&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;a {color:#990907;&amp;nbsp;}&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;a:hover {&amp;nbsp;color:red;&amp;nbsp;}&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; &amp;nbsp;&amp;lt;/style&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;lt;body style=&quot;background-color:#EEEEEE;&quot;&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;h2&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;This text will be shown in&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;a href=&quot;#&quot;&amp;gt;Little star&amp;lt;/a&amp;gt;.&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;h1 style=&quot;color:#999999&quot;&amp;gt;This text will be shown in Little Star.&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;h1&amp;gt;Test thai ทดสอบภาษาไทย ที่ เพี้ยน cufon&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;lt;/body&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
cufon ทำออกมาได้ดีมากๆ แม้แต่การแปลงสีด้วย hover ก็สามารถทำได้ด้วย ถ้าสนใจรายละเอียดสามารถเข้าไปดูคู่มือได้ที่ &lt;a href=&quot;http://wiki.github.com/sorccu/cufon/about&quot;&gt;cufon บน github&lt;/a&gt;</description><link>http://www.apirak.com/2010/03/dynamic-text-with-style.html</link><author>noreply@blogger.com (Apirak)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-6188751259887000762</guid><pubDate>Thu, 11 Mar 2010 15:08:00 +0000</pubDate><atom:updated>2010-03-11T07:08:40.666-08:00</atom:updated><title>Principle 5 ข้อ สำหรับนักออกแบบ</title><description>มีคนเขียน Principle ของ User eXperience อยู่หลายบทความแต่ผมคิดว่า Principle ที่มีเกิน 5 ข้อ เมื่อใช้งานจริงคงไม่ไหว วันนี้ผมเจอแบบ 5 ข้อแล้ว&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;1. เข้าใจที่มาที่ไปของปัญหาก่อนจะเริ่มแก้&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
ผมเชื่อว่านักพัฒนาพยายามออกแบบให้ง่ายอยู่แล้ว การที่มันมีปัญหาต้องมีที่มาที่ไป นอกจากเราจะรู้ปัญหาแล้ว เราควรมองให้ออกว่าปัญหามีที่มาอย่างไร อย่าเสียเวลากับการแก้ปัญหาผิดที่&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;2. อย่าทำร้ายใคร&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
หน้าที่ของเราคือปกป้องผู้ใช้ ควรสร้างประสบการณ์ที่ดีให้เค้าดีกว่า&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;3. ทำทุกอย่างให้เรียบง่าย และเป็นธรรมชาติ&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
เป้าหมายของการออกแบบคือต้องใช้งานง่าย เรียนรู้ง่าย ประยุกต์ใช้ง่าย อย่าพยายามเปลี่ยนธรรมชาติของผู้ใช้ แต่เน้นให้ชีวิตตามปกติของเค้าง่ายขึ้น ซึ่งทำให้ผู้ใช้รู้สึกมีความสุขมากขึ้นแน่นอน&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #999999;&quot;&gt;**ถึงจะรู้ว่าเปลี่ยนแล้วดีกว่า แต่อย่าลืมกฏข้อ 2&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;4. จำไว้ว่าผู้ใช้ไม่เหมือนเรา&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
สิ่งที่เราเข้าใจได้ง่าย อาจไม่ง่ายสำหรับคนอื่น กระบวนความคิดถูกหล่อหลอมมานานจาก พันธุกรรม การศึกษา วัฒนธรรม ศาสนา สภาพแวดล้อม และประสบการณ์ ซึ่งไม่เหมือนเราแน่นอน ดังนั้นห้ามคิดว่าตนเองเข้าใจผู้ใช้&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000;&quot;&gt;&lt;b&gt;5. เอาใจเขามาใส่ใจเรา&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
เมื่อพบสิ่งที่ไม่สมเหตุสมผลสำหรับเรา อย่าพึ่งสรุปว่าคนอื่นไม่ฉลาด ให้เริ่มต้นด้วยการตั้งคำถาม และตั้งคำถามจนกว่าเราจะเข้าใจ เมื่อแน่ใจว่าพบที่มาที่ไปของปัญหา แสดงว่าเราบรรลุ principle ข้อแรกแล้ว ทำให้การแก้ปัญหาของเราจะไม่ทำร้ายใคร (ข้อสอง) และทำได้อย่างเป็นธรรมชาติช่วยให้ผู้ใช้มีชีวิตที่ดีขึ้น (ข้อสาม) เพราะเราเข้าใจว่าผู้ใช้ไม่เหมือนเรา (ข้อสี่)&lt;br /&gt;
&lt;br /&gt;
Inspire by &lt;a href=&quot;http://uxmag.com/design/guiding-principles-for-ux-designers&quot;&gt;uxmag.com&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.amazon.com/Project-Guide-Design-experience-designers/dp/0321607376?ie=UTF8&amp;amp;tag=ishather-20&amp;amp;link_code=bil&amp;amp;camp=213689&amp;amp;creative=392969&quot; imageanchor=&quot;1&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;A Project Guide to UX Design: For user experience designers in the field or in the making&quot; src=&quot;http://ws.amazon.com/widgets/q?MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;Format=_SL160_&amp;amp;ASIN=0321607376&amp;amp;tag=ishather-20&quot; /&gt;&lt;/a&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://www.assoc-amazon.com/e/ir?t=ishather-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=0321607376&quot; style=&quot;border: none !important; margin: 0px !important; padding: 0px !important;&quot; width=&quot;1&quot; /&gt;&amp;nbsp;&amp;nbsp;&lt;a href=&quot;http://www.amazon.com/Designing-Web-Interfaces-Principles-Interactions/dp/0596516258?ie=UTF8&amp;amp;tag=ishather-20&amp;amp;link_code=bil&amp;amp;camp=213689&amp;amp;creative=392969&quot; imageanchor=&quot;1&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Designing Web Interfaces: Principles and Patterns for Rich Interactions&quot; src=&quot;http://ws.amazon.com/widgets/q?MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;Format=_SL160_&amp;amp;ASIN=0596516258&amp;amp;tag=ishather-20&quot; /&gt;&lt;/a&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://www.assoc-amazon.com/e/ir?t=ishather-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=0596516258&quot; style=&quot;border: none !important; margin: 0px !important; padding: 0px !important;&quot; width=&quot;1&quot; /&gt;&amp;nbsp;&amp;nbsp;&lt;a href=&quot;http://www.amazon.com/Information-Design-Workbook-approaches-inspiration/dp/1592536271?ie=UTF8&amp;amp;tag=ishather-20&amp;amp;link_code=bil&amp;amp;camp=213689&amp;amp;creative=392969&quot; imageanchor=&quot;1&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Information Design Workbook: Graphic approaches, solutions, and inspiration + 30 case studies&quot; src=&quot;http://ws.amazon.com/widgets/q?MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;Format=_SL160_&amp;amp;ASIN=1592536271&amp;amp;tag=ishather-20&quot; /&gt;&lt;/a&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://www.assoc-amazon.com/e/ir?t=ishather-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=1592536271&quot; style=&quot;border: none !important; margin: 0px !important; padding: 0px !important;&quot; width=&quot;1&quot; /&gt;</description><link>http://www.apirak.com/2010/03/principle-5.html</link><author>noreply@blogger.com (Apirak)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7114220.post-437131450452582087</guid><pubDate>Sat, 20 Feb 2010 12:37:00 +0000</pubDate><atom:updated>2010-02-20T04:42:04.425-08:00</atom:updated><title>Update Omnigraffle Stencil for web designer</title><description>ปัญหาในการคุยเรื่อง User interface กับลูกค้า หรือแม้แต่กับทีมงาน คือเราบอกเค้าไม่ได้ว่าส่วนไหนเป็นส่วนของโครงสร้าง ส่วนไหนเป็นส่วนที่ได้รับการแต่งแล้ว ยิ่งเราวาดสวยยิ่งทำให้เข้าใจผิดได้มาก และสร้างความสับสนในการรับฟังคำแนะนำเสมอ&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://3.bp.blogspot.com/_F2rZXyRWz5I/S3_Shb24GLI/AAAAAAABZuI/YG5yvAMPqJU/s1600-h/Screen+shot+2010-02-20+at+7.15.02+PM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://3.bp.blogspot.com/_F2rZXyRWz5I/S3_Shb24GLI/AAAAAAABZuI/YG5yvAMPqJU/s320/Screen+shot+2010-02-20+at+7.15.02+PM.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;ทางออกคือ การวาดต้นแบบให้เป็นแค่ภาพร่าง แม้ว่าเราจะใช้คอมพิวเตอร์ในการออกแบบ ก็สามารถวาดให้เหมือนภาพร่างได้ สำหรับกรณีของผม ผมสร้าง Stencil ที่เป็นภาพร่างขึ้นมาใช้กับโปรแกรม Omnigraffle&lt;br /&gt;
&lt;br /&gt;
วันนี้ต้องออกแบบ web ใหม่ จึงเอา Stencil เก่ามาปัดฝุ่น และจัดกลุ่มให้ใช้งานง่ายขึ้น&amp;nbsp;ใครต้องทำงานออกแบบ web เหมือนกัน สามารถ Download ได้จาก&amp;nbsp;&lt;a href=&quot;http://graffletopia.com/stencils/459&quot;&gt;http://graffletopia.com/stencils/459&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
ตัวอย่างการใช้งานลองดูใน video นะครับ&lt;br /&gt;
&lt;br /&gt;
&lt;object height=&quot;340&quot; width=&quot;560&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/_nx7w6zBQnc&amp;hl=en_US&amp;fs=1&amp;&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/_nx7w6zBQnc&amp;hl=en_US&amp;fs=1&amp;&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;560&quot; height=&quot;340&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;
&lt;br /&gt;
สำหรับคนที่ออกแบบ Application ให้ลองดู Stencil นี้ครับ&amp;nbsp;&lt;a href=&quot;http://graffletopia.com/stencils/446&quot;&gt;http://graffletopia.com/stencils/446&lt;/a&gt;</description><link>http://www.apirak.com/2010/02/update-omnigraffle-stencil-for-web.html</link><author>noreply@blogger.com (Apirak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_F2rZXyRWz5I/S3_Shb24GLI/AAAAAAABZuI/YG5yvAMPqJU/s72-c/Screen+shot+2010-02-20+at+7.15.02+PM.png" height="72" width="72"/><thr:total>0</thr:total></item></channel></rss>