เรื่องราวของ Developer

โปรแกรมเมอร์ที่ดี-80-20

พัฒนาตัวเองในสายอาชีพ โปรแกรมเมอร์ ด้วย กฎ 80/20

การจะก้าวหน้าในอาชีพ โปรแกรมเมอร์ และ เป็นโปรแกรมเมอร์ที่ดีนั้นต้องอาศัยเวลาและ การสะสมประสบการณ์ บทความนี้จะมาพูดคุยเรื่องของหลักการหรือแนวคิดที่จะช่วยให้ผู้อ่านสามารถนำไปประยุกต์ใช้ในชีวิตประจำวันของอาชีพ โปรแกรมเมอร์ โดยหลักการ นี้ถูกเรียกว่ากฏ 80/20 ลองมาดูกันว่ากฎนี้จะมาช่วยให้เราเป็นโปรแกรมเมอร์ที่ดีขึ้นได้อย่างไร   อะไรคือกฎ 80/20? “The Pareto principle” หรือ กฎ 80/20 กล่าวว่า เหตุการณ์ส่วนมาก ประมาณ 80% ของผลลัพธ์นั้นเกิดจาก เพียง 20% ของต้นเหตุ ซึ่งตัวเลข 80/20 เป็นตัวเลขโดยประมาณ โดยจะสื่อว่าผลลัพธ์ส่วนใหญ่จะเกิดจากต้นเหตุส่วนน้อย แล้วในการทำงานของ อาชีพ โปรแกรมเมอร์ เราสามารถประยุกต์ใช้กฎนี้ได้เมื่อใดบ้าง ใช้ กฎ 80/20 เพื่อพัฒนาตัวเองในสาย อาชีพ โปรแกรมเมอร์ อย่างไร? เมื่อเรียนรู้สิ่งใหม่ๆ ในโลกของการเขียนโปรแกรมนั้น เราจำเป็นต้องเรียนรู้เพียง 20% ก่อนจะเริ่มทำบางอย่าง เช่น ตอนผมเริ่มเรียน Flutter ก็เลือกที่จะเรียนรู้ 20% ที่เป็นพื้นฐานของ Framework …

พัฒนาตัวเองในสายอาชีพ โปรแกรมเมอร์ ด้วย กฎ 80/20 Read More »

พัฒนาการเขียนโปรแกรม

25 เคล็ดไม่ลับที่จะช่วย อาชีพ โปรแกรมเมอร์ พัฒนาการเขียนโปรแกรมทุกภาษา

ไม่ว่าเราจะเขียนโปรแกรมด้วยภาษาอะไร ไม่ว่าจะเป็น การเขียนโปรแกรม python การเขียนโปรแกรม java  การเขียนโปรแกรม c++ และการเขียนโปรแกรมทุกๆภาษา โปรแกรมเมอร์ทุกคนย่อมต้องการที่จะพัฒนาทักษะการเขียนโปรแกรมของตน นี่เป็นรายการที่จะช่วยพัฒนาการเขียนโปรแกรมของเรา โดยรายการที่จะกล่าวถึงนี้สามารถอ่านจบภายในเวลาไม่นานเท่าไหร่แต่การจะปฏิบัติได้จริงๆนั้นต้องใช้เวลานานพอสมควรทีเดียว มาพัฒนาการเขียนโปรแกรมของเรากันเถอะ! 1. พยายามเขียนโค้ดให้อยู่ในรูปที่เป็น function เล็กๆและมีหน้าที่ชัดเจน 2. ถ้าถึงเวลาเลิกงานแล้วแต่เรายังไม่สามารถแก้ปัญหาได้ ปิดคอมลืมปัญหานั้นไป แล้วค่อยมาแก้ไขในวันต่อมา 3. หลักการ YAGNI (You aren’t gonna need it): อย่าเขียนโค้ดมากกว่างานที่ได้รับมอบหมาย แต่ทำในสื่งที่สำคัญต่อการแก้ปัญหาที่เราเจออยู่หรือ feature ที่กำลังสร้างอยู่ 4. เราไม่จำเป็นต้องรู้จักทุก Framework สิ่งสำคัญคือการมีพื้นฐานที่ดี รู้จักภาษาที่จะใช้เขียน Framework ให้ถ่องแท้ และ สิ่งพื้นฐาน เช่น SOLID principle 5. KISS: “Keep it simple, stupid” หรือ “Keep it stupid simple” หลักการนี้กล่าวว่าระบบจะทำงานได้ดีที่สุดเมื่อมันเข้าใจง่ายและไม่ซับซ้อน ซึ่งฟังดูเหมือนง่ายแต่บางมันก็ยากที่จะทำให้โค้ดของเรานั้นไม่ซับซ้อน 6. ถ้าเราจมอยู่กับ …

25 เคล็ดไม่ลับที่จะช่วย อาชีพ โปรแกรมเมอร์ พัฒนาการเขียนโปรแกรมทุกภาษา Read More »

solid-principles-coding

SOLID Principles คืออะไรทำไม อาชีพ โปรแกรมเมอร์ ทุกคนต้องรู้จัก

SOLID Principles คือ 5 หลักการที่จะออกแบบ Object-Oriented Class โดยเป็นไปในแบบ Best Practice ที่ อาชีพ โปรแกรมเมอร์ ควรจะปฏิบัติตามในการวางโครงสร้างและออกแบบ Class ในการเขียนโปรแกรม หลักการ  5 อย่างนี้จะช่วยให้เราสามารถเขียนโค้ดได้เป็นแบบมืออาชีพมากขึ้น และเข้าใจว่าทำไมเราถึงควรใช้ Software Design Pattern ต่างๆใน Project ของเรา ไม่ว่าจะเป็น MVC, MVVM, MVP หรือ Design Pattern อื่นๆ ดังนั้นใครที่ต้องทำงานกับโค้ดทุกวันก็ควรรู้จักหลักการดังกล่าวไว้ SOLID นั้นย่อมาจาก The Single Responsibility Principle The Open-Closed Principle The Liskov Substitution Principle The Interface Segregation Principle The Dependency Inversion …

SOLID Principles คืออะไรทำไม อาชีพ โปรแกรมเมอร์ ทุกคนต้องรู้จัก Read More »

GitHub-product-2020

4 Product ใหม่น่าลอง จาก Github ในปี 2020

เมื่อช่วงกลางปีที่ผ่านมาทาง Github ได้มีการประกาศว่าจะมี feature เพิ่มเติมขึ้นมาบน Platform web จนถึงตอนนี้บาง feature ก็ได้มีการปล่อยเป็น public release ออกมาให้ใช้กันแล้ว เราลองมาดูกันว่า Product เหล่านี้จะช่วยอะไรเราในการเขียนโค้ดได้บ้าง Codespaces by Github เป็น Code Editor ที่อยู่บน Web Browser ที่มาพร้อม Environment ปกติแล้วการ Set up Development Environment ก่อนจะเริ่มทำโปรเจคนั้นไม่ใช่เรื่องง่าย และค่อนข้างกินเวลา ดังนั้น Github ก็เสนอทางแก้ให้ปัญหานี้โดยการนำ Environment  พร้อมทั้ง IDE ที่สร้างขึ้นโดยอ้างอิงจาก VS Code มารันบน Web Broswser โดยยังคงไว้ซึ่ง feature สำคัญของ VS Code และเรายังสามารถลง Extension ต่างๆขอ VS …

4 Product ใหม่น่าลอง จาก Github ในปี 2020 Read More »

หางาน-โปรแกรมเมอร์-หางาน-developer-จบใหม่

3 คำแนะนำสำหรับ อาชีพ โปรแกรมเมอร์ จบใหม่ ในการหางาน

การเริ่มต้นหางานของ อาชีพ โปรแกรมเมอร์ จบใหม่ นั้นสำหรับผู้เพิ่งเริ่มต้นนั้นอาจเป็นเรื่องยากซักหน่อยเพราะมองไปแต่ที่ไหนก็มีแต่คนประกาศรับ Senior Developer หรือ Senior โปรแกรมเมอร์ และต้องการคนที่มีประสบการณ์มากๆ ทั้งนั้น ดังนั้น อาชีพ โปรแกรมเมอร์ จบใหม่ และ developer จบใหม่ ที่เริ่มเดินทางสายนี้จะทำอย่างไรดีหละให้เรามีโอกาสถูกเรียกสัมภาษณ์มากขึ้นดีล่ะ  ในบทความนี้เราเลยจะมากล่าวถึง คำแนะนำที่ผู้เริ่มต้นทุกคนสามารถทำได้เพื่อเพิ่มโอกาสการ หางาน อาชีพ โปรแกรมเมอร์ และ หางานในสายงาน Developer โดย คำแนะนำที่ว่านี้จะโฟกัสไปที่เรื่อง Resume, Project ตัวอย่าง และ Sample Code เนื่องจากผมทำงานเป็น Mobile developer ซึ่งงานจะเป็น Front end ซะส่วนใหญ่ เลยจะของยกตัวอย่างทางด้าน Front end development ประกอบด้วย แต่คิดว่าสามารถนำไปประยุกต์ไม่ว่าจะเป็น Developer สายไหนก็ตาม  โดยต้องขอกล่าวไว้ก่อนว่านี่เป็นความเห็นส่วนตัวของผู้เขียน ไม่ได้มีส่วนเกี่ยวข้องกับองค์กร หรือ บริษัทที่ผู้เขียนกำลังทำงานอยู่แต่อย่างใด …

3 คำแนะนำสำหรับ อาชีพ โปรแกรมเมอร์ จบใหม่ ในการหางาน Read More »

 เพิ่มประสิทธิภาพการทำงาน-โปรแกรมเมอร์

4 วิธีเพิ่ม Productivity สำหรับ โปรแกรมเมอร์

ในอาชีพ Developer หรือ อาชีพ โปรแกรมเมอร์ Productivity ในการทำงานนั้นถือเป็นเรื่องที่สำคัญ ในบางครั้งเราต้องเจอกับสถานการณ์ที่ต้องทำงานในเวลาอันจำกัด การที่เราสามารถเพิ่ม Productivity ในการทำงาน ให้เร็วรวดและเรียบร้อยนั้นถือเป็น Skill ที่สำคัญในสายอาชีพ โปรแกรมเมอร์ เลยก็ว่าได้ ดังนั้นวันนี้จะขอมาพูดถึงเทคนิคในการ เพิ่ม Productivity ในการทำงานของโปรแกรมเมอร์ เพื่อให้เราสามารถสร้างผลงานได้อย่างรวดเร็วและเรียบร้อยได้ ถ้าอยากเพิ่ม Productivity อย่า Multitask เวลาเขียนโค้ด   ทุกวันนี้คงจะเป็นเรื่องปกติของหลายๆคนที่นั่งดู TV ไปแล้วไสลด์ Facebook ดูไปพร้อมๆกันซึ่งนั่นก็เป็นเรื่องปกติสมองของเราสามารถรับข้อมูลจากสองช่องทางได้อย่างไม่มีปัญหา แต่เมื่อผมดู TV หรือ Youtube ขณะที่เขียนโค้ดไปด้วย Productivity นี่ตกฮวบเลยทีเดียว เพราะว่าระหว่างเขียนโค้ดนั้นเราต้องคิดหลายอย่างก่อนจะพิมพ์อะไรลงไป ถ้าโดนขัดด้วยการรับข้อมูลจากช่องทางอื่น ก็จะทำให้กระบวนการทำงานของเรานั้นช้าลง บางครั้งถ้าต้องการโฟกัสกับงานมากๆผมก็ปิดช่องทางการสื่อสารเช่น Line หรือ Slack ไปเลยแล้วค่อยเปิดดูอีกทีในเวลาต่อมา อยากเพิ่ม Productivity ต้องรู้จักกับ Code Editor ของเราให้ทะลุปรุโปร่ง   ถ้าถามว่าโปรแกรมอะไรที่ …

4 วิธีเพิ่ม Productivity สำหรับ โปรแกรมเมอร์ Read More »

อุปนิสัย-อาชีพ-โปรแกรมเมอร์

5 อุปนิสัยของ อาชีพ โปรแกรมเมอร์ที่ดี

การทำงานในสาย อาชีพ โปรแกรมเมอร์นั้น ต้องมีการเรียนรู้และพัฒนาตัวเองอยู่เสมอ แต่นอกจากการเรียนกรู้และพัฒนาตัวเองแล้วเราสามารถทำอะไรเพื่อทำให้เราก้าวหน้าได้อีกกันนะ? บทความนี้จะกล่าวถึง 5 อุปนิสัยที่อาชีพโปรแกรมเมอร์ควรมีโดยผู้อ่านสามารถลองไปประยุกต์ใช้ดูเพื่อทำให้เรามีการพัฒนาและเติบโตในสายงาน อาชีพ โปรแกรมเมอร์ หรือ Developer ได้อย่างยั่งยืนมากขึ้น 1. อาชีพ โปรแกรมเมอร์ที่ดีควรให้ความสำคัญกับธุรกิจด้วย บางครั้ง อาชีพ โปรแกรมเมอร์ อย่างเราอาจให้ความสำคัญกับ Tech Stack, Structure ของโค้ด, tool หรือ technology มากเกินไป จนหลงลืมไปว่าโค้ดที่เรากำลังเขียนอยู่นั้นมีจุดประสงค์อย่างไรในทางธุรกิจ ดังนั้นถึงแม้ว่าหน้าที่ของ โปรแกรมเมอร์ คือการเขียนโค้ดแต่ไม่ควรสนใจเพียงแต่ เรื่องเชิงเทคนิคเพียงอย่างเดียว บางทีคุณอาจจะลองถามตัวเองดูว่า สิ่งที่เรากำลังสร้างขึ้นนั้นก่อให้เกิดผลประโยชน์ทางธุรกิจรึเปล่า หรือ เราใช้เวลามากเกินไปในสิ่งที่ไม่จำเป็นนัก เช่น เราจะเขียนโค้ดเพื่อแก้ปัญหาอย่างหนึ่ง แต่เรามองว่ามีวิธีที่ใช้เวลานานแต่จะได้โค้ดที่มีประสิทธิภาพ กับวิธีที่ใช้เวลาเขียนไม่นานแต่ทำงานได้โค้ดที่มีประสิทธิภาพปานกลาง เราต้องมาลองคิดและตัดสินใจโดยมีข้อจำกัดทางธุรกิจมาร่วมด้วยว่าควรทำแบบไหน 2. เมื่อคุณคิดว่างานเสร็จแล้ว… ???????? จ้า สำหรับ อาชีพ โปรแกรมเมอร์ หรือ Developer ที่เริ่มทำงานใหม่ๆอาจคิดว่างานเสร็จแล้วหลังจากที่เราเขียนโค้ดให้มันทำงานได้ตามที่เราต้องการ แต่จริงๆงานที่แท้จริงเพิ่งเริ่มหลังจากที่โค้ดทำงานได้ต่างหาก งานที่แท้จริงเพิ่งเริ่มหลังจากที่โค้ดทำงานได้   …

5 อุปนิสัยของ อาชีพ โปรแกรมเมอร์ที่ดี Read More »

junior-developer-senior-developer

คุณสมบัติ อาชีพ โปรแกรมเมอร์ Junior programmer และ Senior programmer?

ความแตกต่างของคุณสมบัติ อาชีพ โปรแกรมเมอร์ระหว่างการเป็น Junior Programmer หรือ Senior Programmer วัดกันที่จำนวนปีของการทำงานอย่างเดียวเท่านั้นหรือ? หลายๆคนอาจสงสัยว่าเขาใช้อะไรเป็นมาตรฐาน ในการวัด คุณสมบัติ อาชีพ โปรแกรมเมอร์ ที่เห็นได้ชัดเจนก็อายุการทำงานนี่แหละ มีอะไรที่มากไปกว่าอายุหรือจำนวนปีของการทำงานอีกหรอ? วันนี้เรามาไขปริศนาหาปัจจัยและ คุณสมบัติ อาชีพ โปรแกรมเมอร์ ในการกำหนดการเป็น Junior Programmer หรือ Senior Programmer กันเถอะ ในความเป็นจริง ถึงจะเป็นไปได้ยากแต่บางครั้งอาจพบว่า Junior Programmer อาจจะมีอายุงานที่ผ่านๆมามากกว่า Senior Programmer ก็เป็นได้ ดังนั้นเราจะมาดูปัจจัยที่มากกว่าอายุงาน ซึ่งได้แก่… 1. คุณสมบัติ อาชีพ โปรแกรมเมอร์ ด้านความรู้ ความแตกต่างด้านความรู้ของ Junior Programmer และ Senior Programmer แน่นอนแหละว่า Senior จะมีความรู้มากกว่า Junior และการมีความรู้ในเรื่อง Design pattern, …

คุณสมบัติ อาชีพ โปรแกรมเมอร์ Junior programmer และ Senior programmer? Read More »