ทีแรกว่าจะแปล แต่ไม่แปลดีกว่า เสียเวลาเกินไป สรุปคือ เค้าอธิบายตั้งแต่ DPI, PPI, ขนาดของจอภาพต่างที่มีผลต่อการออกแบบ, @2x, การตั้งค่าทั่วไปท่ควรรู้ ไปจนถึงเครื่องมือที่เค้าแนะนำ
เก็บไว้อ่านและศึกษา เวลาอ่านหนังสือหรือว่าคุยกับคนที่ทำงานสายนี้จะได้เข้าใจศัพท์ของเค้ามากขึ้น
บัญญัติกฏ
เกิดอยากจะลองท้าทายตัวเองซะหน่อย เพื่อให้เขียนโค้ดให้ดี อ่านง่าย เป็นระเบียบ เลยไปหากฏมาตั้งให้ตัวเองทำตาม
- Class ห้ามยาวเกิน 100 บรรทัด
- Method ห้ามยาวเกิน 5 บรรทัด
- ห้ามส่ง Parameter เกิน 4 ตัว ถ้าเป็น Object ก็อย่าให้เยอะนัก
- ใน Controller ต้องสร้าง Object เพียงตัวเดียวสำหรับรับ Request ไปทำให้เสร็จ
หากทำตามกฏ 3 ข้อของ Curly จะนำไปสู่ SRP: The Single Responsibility Principle
หลายคนพยายามสร้างบางอย่างที่เป็นนวัตกรรม แต่กลับต้องล้มเหลว จึงเกิดคำถามว่าทำไม?
เราอาจจะเคยเห็นของ 2 สิ่ง โดยที่อันนึงเป็นนวัตกรรมที่ใหม่มากๆ เจ๋งมากๆ แต่กลับล้มเหลว แต่อีกอันที่ไม่ได้มีนวัตกรรมที่ล้ำหน้ามากนักกลับอยู่รอดได้
เรามักคิดว่าสร้างนวัตกรรมนั้นต้องเป็นสิ่งใหม่ สิ่งที่แปลกกว่าในปัจจุบัน สิ่งที่ต้องไม่เคยมีใครทำมาก่อน ความคิดนี้อาจจะเคยเป็นจริงในยุคหนึ่ง แต่ในยุคนี้ ยุคที่ทุกอย่างซับซ้อนขึ้น บางครั้งการจะสร้างนวัตกรรมต้องคิดให้ง่าย ทำให้ง่าย เพราะคู่แข่งที่สำคัญที่สุดไม่ใช่คู่แข่งทางธุรกิจที่เปลี่ยนแปลงอย่างรวดเร็ว แต่กลับเป็น ลูกค้าซึ่งเปลี่ยนแปลงช้ากว่าที่เราคิด การพยายามสร้างอะไรที่ใหม่จนเกินไป อาจไม่สามารถทำให้ลูกค้าเข้าใจได้ หรือไม่อาจเปลี่ยนพฤติกรรมของลูกค้ามาใช้ผลิตภัณฑ์ของเราได้
ดังนั้นการประดิษฐ์อะไรซักอย่างในยุคที่ต้นทุนของการสร้างนวัตกรรมมีราคาถูกมากจนเกือบจะเป็นศูนย์ แนวทางการสร้างนวัตกรรมเปลี่ยนแปลงไปด้วยแนวทางต่อไปนี้
Deploy or Die คุณต้องสร้างสิ่งประดิษฐ์ของคุณออกมาสู่โลกจริงๆ มันถึงจะมีคุณค่า ไม่ต้องรอใครมาอนุมัติ หรือสนับสนุน
Pull over Push คุณควรสามารถดึงสิ่งที่คุณต้องการ คนที่คุณต้องการ เข้ามาได้ด้วยพลังของเครือข่าย โดยไม่ต้องสะสมเงินและพลังอำนาจไว้มากมาย
Learning over Education การศึกษาคือสิ่งที่คนอื่นทำกับคุณ แต่การเรียนรู้คือสิ่งที่คุณทำกับตนเอง การศึกษาพยายามคิดแทนคุณว่าในชีวิตของคุณจำเป็นต้องรู้อะไรบ้าง ให้คุณต้องคอยท่องจำสิ่งต่างๆ อยู่เกือบ 20 ปี ก่อนจะปล่อยให้คุณออกไปเล่นกับโลกภายนอก แต่โลกอยู่ตรงหน้าของคุณแล้ว คุณไม่ต้องรอให้ใครมาคิดแทนว่าคุณควรรู้อะไร จงออกไปเล่น หากไม่รู้อะไรค่อยกลับมาเรียนรู้ ทุกวันนี้เราสามารถหาความรู้ทุกอย่างได้จากอินเทอเน็ตอยู่แล้ว
Compass over Map การพยายามสร้างแผนที่อย่างละเอียดก่อนออกเดินทางนั้นแพงมาก และไม่ค่อยจะแม่นยำ เราเพียงต้องมีเป้าหมาย แล้วออกไปลุยกับมัน
แม้โลกจะซับซ้อนสุดๆ แต่สิ่งที่เราต้องทำนั้นเรียบง่ายมาก คุณต้องหยุดคิดที่จะวางแผนทุกอย่างล่วงหน้าและสะสมทรัพยากรทุกอย่างให้พร้อมก่อนลงมือ คุณเพียงแต่ต้องเตรียมพร้อมอยู่เสมอ มุ่งความสนใจไปที่การติดต่อทำความรู้จักผู้คน เรียนรู้อยู่ตลอดเวลา ตื่นตัวกับสิ่งต่างๆ ตลอดเวลา และอยู่กับปัจจุบันสุดๆ
อย่าเป็น “นักอนาคตนิยม” แต่จงเป็น “นักปัจจุบันนิยม”
เบลอไปหมด
ตอนนี้ปัญหาใหญ่สุดสำหรับผมคือ การโฟกัส ผมคงต้องยอมรับตรงๆ เลยว่าตอนนี้ผมไม่รู้ว่างานอะไรสำคัญที่สุด ทั้งๆที่ตัดใจเลิกโปรเจค keepkept.com ไปแล้ว เหลือแค่งาน Muscle app งานเดียว ก็ยังไม่รู้ว่าต้องโฟกัสเรื่องอะไรก่อน เวลาทำงานหรืออ่านหนังสือมักไม่มีสมาธิกับสิ่งที่ทำอยู่มากนัก เพราะใจมันมักคิดว่าเรื่องอื่นก็สำคัญเหมือนกัน อยากทำงานอื่นด้วย อยากอ่านเรื่องอื่นด้วย สุดท้ายก็ไม่ดีซักอย่าง
ชอบตัดสินคนอื่น
วันนี้อ่านบล็อกคุณเนย http://nuuneoi.com/blog/blog.php?read_id=717 ได้ข้อคิดมา 2 อย่าง
- โปรแกรมเมอร์ที่เก่งระดับเฉลี่ย จะโหยหาความสมบูรณ์แบบ แต่คนที่เก่งจริงเค้าไม่สนใจตรงนี้แล้ว
- ทำแค่พอใช้ได้ แล้ว delivery เลย จากนั้นปรับปรุงเรื่อยๆ ไม่ต้องรอให้ perfect ก่อน
พี่รูฟเขียนได้น่าสนใจดี www.roofimon.com/2014/07/31/ปรับปรุง/ เลยกลับมาดูงานที่ทำอยู่ ปกติผมเป็นคนชอบเขียนเฟรมเวิร์คใช้เองเพราะมันสนุก ได้เรียนรู้สิ่งใหม่ๆ และภูมิใจด้วย แต่มันก็มีข้อเสียที่มันไม่สมบูรณ์แบบอย่างที่มีคนอื่นเค้าใช้กัน มีอะไรต้องแก้อีกเยอะ หากต้องแก้เล็กๆน้อยๆก็ไม่เป็นไร แต่หากต้องแก้สถาปัตยกรรมของมันจะกลายเป็นเรื่องยากทันที ผมเลยชอบเขียนใหม่ขึ้นมาอีกตัว ทำให้ผมมีเฟรมเวิร์กที่เขียนเองหลายตัวมาก และสถาปัตยกรรมกับการใช้งานไม่เหมือนกันเลย บางตัวใช้ง่ายแต่ไม่ยืดหยุ่น บางตัวยืดหยุ่นใช้ทำอะไรก็ยากจนบางทีใช้ไม่เป็นทั้งๆ ที่เขียนขึ้นมาเอง สงสัยผมต้องค่อยๆแก้แต่ละตัว ค่อยๆ รวมสิ่งดีๆของแต่ละตัวเข้าด้วยกันซะแล้ว
ท้าทาย และน่าสนุก