nfcandroid

blog ร้างๆ เจ้าของนานๆเข้ามาที

Home Archive for 2014
      วันนี้จะมาแนะนำการทดสอบ mobile web กัน ขอพูดย้อนหลังไปนิดนึง ถ้าเป็นเมื่อสมัยก่อนตอนผมเริ่มทำเว็บใหม่ๆ ตอนนั้น mobile ก็ยังไม่บูมขนาดนี้หรอกนะ  (แถวๆที่ผมอยู่นะ อยุ่ต่างจังหวัด แล้วก็ไม่ค่อยสนใจโลกภายนอกด้วย จริงๆมันก็ไม่ได้นานมากขนาดนั้นหรอกนะ ประมาณแค่ 3-4 ปีแต่พูดซะเหมือนแก่เลย) แต่ทุกวันนี้มันไม่ใช่ การเติบโตของอุปกรณ์พกพา และความถี่ในการใช้งานเว็บผ่านอุปกรณ์พกพามากกว่าบน pc, notebook ไปแล้ว  เพราะงั้นเราทำเว็บเราจึงต้องออกแบบเว็บไซต์ของเราสำหรับอุปกรณ์พวกนี้ด้วย ทีนี้เราจะออกแบบยังไงดีล่ะ ถ้าแนะนำง่ายๆเลย คือใช้พวก library หรือ framework ที่มีอยู่แล้ว ที่ผมใช้ก็ bootstrap คู่กับ jQuery ถ้ายังไม่เคยก็ลองใช้ดูแล้วจะพบว่ามันช่วยได้มากเลยทีเดียว ทีนี้มาเข้าเรื่องกันดีกว่า พอเราเขียนขึ้นมาแล้วจะทดสอบยังไงดี?
     อุปกรณ์มีตั้งเยอะแยะหลายรุ่น หลายขนาดจะให้ไปซื้อมาทดสอบทั้งหมดก็คงจะจนกันพอดี แต่ chrome ช่วยได้ โดย chrome จะมีความสามารถจำลองในเว็บในอุปกรณ์ต่างๆได้ แถมเลือก browser  ได้ จำลองพวกเซ็นเซอร์บางอย่างได้ด้วย โดย feature นี้จะมีใน chrome canary (ในวันทีผมเขียนบทความนี้นะ) chrome stable ยังไม่มี อัพเดท หลังจากปล่อยบทความออกไปกินข้าว chrome มันอัพเดท version stable 33.0.1750.117 m ก็มีแล้วนะครับ

    วันนี้มีลูกค้าสอบถามมาว่าจะให้เขียนโปรแกรมให้ แต่ขอคิดเป็นรายชั่วโมง วันละ x ชั่วโมง ให้ rate/ต่อชั่วโมงที่น่าสนใจทีเดียว แต่มันมีข้อติดขัดอยู่อย่างนึง คือ การเขียนโปรแกรม ไม่ใช่ การนั่งพิมพ์ดีด และ ไม่สามารถคิดเป็นรายชั่วโมงได้ 
     ทำไมถึงบอกแบบนั้น
      ข้อแรก เขียนโปรแกรม ไม่เท่ากับ พิมพ์ดีด ลูกค้าน่าจะไม่เข้าใจในความต่างระหว่างการเขียนโปรแกรม กับ การพิมพ์ดีด ส่วนสำคัญที่ทำให้ต่างกันคือเขียนโปรแกรมต้องคิด วางแผนก่อนเขียน ไม่ใช่เปิดคอมมานั่งพิมพ์อย่างบ้าคลั่ง อันนั้นมันกำลังทำฟาร์มแมลงแล้วล่ะ
      ข้อสอง ไม่สามารถคิดเป็นรายชั่วโมงได้ ถ้าจะให้คิดเป็นรายชั่วโมงก็ลองตอบคำถามข้างล่างนี้ก่อนว่าตอบได้ไหม
  •  ถ้าโปรเจ็คเริ่มจาก 0 แปลว่าผมต้องเริ่มต้นศึกษางานของคุณ วิเคราะห์ระบบว่าจะออกมายังไง ออกแบบหน้าจอมาให้คุณดูว่าคุณ OK ไหม แค่ตรงนี้ก็ประมาณอาทิตย์นึงแล้ว แล้วถามว่าจะคิดในส่วนนี้ยังไง เพราะอย่างแรกขั้นตอนนี้ ผมไม่ได้ code แน่นอน จะนับเวลายังไง ถ้าผมคิดงานระหว่างทำกิจวัตรประจำวัน(ขี่รถ อาบน้ำ เข้าห้องน้ำ กินข้าว) ถือว่าผมทำงานคุณไหม?
  • การวัดว่างานที่ได้จาก x ชม. วัดจากไหน? ดูที่หน้าจอก็พอเหรอ? ผมอาจทำหน้าจอหลอกๆมาหลอกคุณก็ได้ว่ามันทำงานได้ คุณจะรู้เหรอ ? 
  • ถ้าบางส่วนมันยากทำเกิน x ชม. แล้วมันเป็นส่วนที่คุณไม่เห็นมันอาจจะไม่มี UI คุณจะนับว่าผมทำงานไหม? จะให้คุณมานั่งอ่าน code คุณก็คงไม่เข้าใจอยู่ดีแหละ เพราะถ้าคุณเข้าใจก็คงเขียนเองแล้วแหละ จริงไหม?
  • แล้วถ้าเกิดผมทำงานมา x ชม.แล้วมารู้ตอนสุดท้าย ว่างานทีทำมา x ชม.ไม่เวิร์ค อาจต้องรื้อใหม่ คุณจะจ่ายเงินไหม?
  • แล้วที่สำคัญเลยคือก่อนเขียนโปรแกรมมันต้องคิดก่อน ถ้าผมคิดสัก 2 ชม. แล้วมาทำในชม.ที่ 3-4 คุณจะคิดว่างาน 4 ชม.นี้คุ้มค่าไหม? คุณจะจ่ายกี่ ชม.?
  • ถ้า 3 ชม.ผมเขียน code อย่างบ้าคลั่ง 2000 กว่าบรรทัดแต่ bug กระจายทำงานไม่ได้ กับเขียน 3 ชม. เขียนโปรแกรมไปแค่ 100 - 200 บรรทัดแต่วางแผนและคิดมาอย่างดี แบบไหนมันดีกว่ากันล่ะ ? ถ้าคุณวัดจากจำนวนและเวลาคุณอาจจะรู้สึกว่าแบบแรกดีกว่าในตอนแรก แต่ถ้าคุณลองใช้แล้วเจอbug มากๆเข้า คุณอาจจะชอบแบบหลังมากกว่าก็ได้
  • ไม่ได้บอกว่าการเขียนโปรแกรมช้าๆดีกว่าการรีบเร่งเขียนนะ แต่การเขียนโปรแกรมควรจะเริ่มต้นจากการคิด การวางแผนก่อนเสมอ การไม่คิดก่อนจะเป็นการทำให้เกิดปัญหาในภายหลังได้  โชคดีก็อาจจะพอแก้ได้ บางทีแก้แล้วก็กลายเป็นหมาวิ่งไล่งับหางตัวเองก็ซวยไป แล้วจากความรู้สึกส่วนตัว การวางแผนก่อนช่วยให้การทำงานไวขึ้นด้วย ในช่วงที่วางแผนอาจจะเสียเวลาอยู่บ้าง แต่พอเริ่มทำแล้วจะทำได้ไวกว่าการทำงานแบบไม่วางแผนแน่นอน
     สุดท้ายเสนอลูกค้าไปว่า ถ้าไม่จ้างทั้งโปรเจ็คก็จ้างเป็น module หรือเป็นหน้าไปก็ได้ แต่กรณีเป็นโมดูลหรือเป็นหน้า กรณีที่มีการแก้ไขเปลี่ยนแปลงโดยไม่เกิดจากผม อันนี้ก็อาจจะต้องขอคิดเงินเพิ่มนะ (แต่จริงๆต่อให้จ้างทั้งโปรเจ็ค แต่เปลียน requirement แบบเยอะๆก็คิดเพิ่มอยู่ดีนะแหละ ถ้าเล็กๆน้อยก็พอยืดหยุ่นได้)

ปล. เคยเห็นแนวคิดแบบนี้(เขียนโปรแกรมคิดเป็นชั่วโมง) มานานแล้วไม่คิดว่าจะมีคนมาถาม อีกอันนึงคือเขียนโปรแกรมจ่ายเงินตามตัวอักษรเป็นจำนวนเงิน ถ้าเจอใครมาจ้างจะพิมพ์ lorem ipsum สัก 5-6 พันบรรทัดดีไหมนะ?
ปล. อยากรับงานนะ ช่วงนี้ไม่มีตังค์ แต่คิดเป็น rate รายชั่วโมงไม่ได้จริงๆ
ปล. อ่านเองแล้วรุ้สึกเหมือนตอนจบมันลงไม่สวยเลย แต่คิดท่อนจบสวยๆไม่ออกจริงๆ
สมัครสมาชิก: บทความ ( Atom )

Categories

android (12) tutorial (5) ListActivity (4) view (3) relativeLayout (2) BaseAdapter (1) List Image (1) SimpleAdapter (1) activity (1) intent (1) linearLayout (1) mediaplayer (1) onClickListener (1)

LATEST POSTS

  • รีวิว นาฬิกา wise รุ่น I-Force
    ใกล้ปีใหม่แล้ว ช่วงนี้เป็นช่วงที่ไม่ค่อยมีเงินเลย เออ แต่คิดไปคิดมา ถามว่าช่วงไหนมีเงินคงจะตอบง่ายกว่า 555  อยากได้นาฬิกาใหม่มาสักพักแล้ว เ...
  • มาใส่ font awesome ใน mpdf กัน
    พอดีมีงานที่ต้องใช้ mpdf  แล้วก็มันมีบางส่วนที่ต้องแสดงไอคอนเล็กๆบางจุด จะทำเป็นรูปภาพก็ลำบากในการปรับขนาดอีก ก็นึกถึง font awesome  ก็เล...
  • ลองเล่นแว่น VR Shinecon
    จั่วหัวว่าลองเล่น แต่ความจริงคือซื้อจริง จ่ายจริง กินมาม่าจริงๆ 5555 เมื่อเร็วๆนี้ได้เจอเพจที่ขายแว่น VR ก็สนใจเลยลองสั่งซื้อมา โดยรุ่นที่ซื...
  • รีวิว HP Pavilion 13-b208TU
    เมื่อเร็วๆนี้ได้ตัดสินใจซื้อโน๊ตบุ้คใหม่ โดยก่อนจะซื้อก็หาข้อมูลตัดสินใจอยู่นาน จนในที่สุดก็ได้เป็นเจ้า HP Pavilion 13-b208TU  โดยสเปคคร่าว...
  • RelativeLayout และ LinearLayout เบื้องต้น 1
    วันนี้จะพูดเรื่องของ RelativeLayout และ LinearLayout เบื้องต้นกันครั้บ โดยทั้งสองตัวข้างต้นเป็นประเภท viewGroup ก็คือสามารถมี view อยู่ภายใน...

คลังบทความของบล็อก

  • ►  2015 (5)
    • ►  ธันวาคม (3)
    • ►  สิงหาคม (1)
    • ►  พฤษภาคม (1)
  • ▼  2014 (2)
    • ▼  กุมภาพันธ์ (1)
      • มาทดสอบ mobile web ด้วย emulator บน chrome กันดีกว่า
    • ►  มกราคม (1)
      • [กรณีศึกษา] จ้างเขียนโปรแกรมคิดเป็นรายชั่วโมง
  • ►  2013 (12)
    • ►  พฤศจิกายน (1)
    • ►  มิถุนายน (1)
    • ►  มีนาคม (4)
    • ►  กุมภาพันธ์ (6)
  • ►  2012 (2)
    • ►  กันยายน (2)
Copyright 2015 nfcandroid.
Base From Charm Template OddThemes

‹ › ×