Skip to main content

Mark Zuckerberg ยอมรับการสร้างแอพ Facebook ด้วย HTML5 เป็นเรื่องที่ผิดพลาด


ในช่วงเดือนสิงหาคมที่ผ่านมา Facebook ได้ทำการปฏิวัติ Facebook for iOS โดยการปล่อยอัพเดทใหม่ที่ละทิ้ง HTML5 ออกไปทั้งหมด ที่เป็นเช่นนี้เพราะปัญหาเกี่ยวกับการประสิทธิภาพของ Facebook for iOS ในเวอร์ชั่น HTML5 นั้นแย่มาก ทำให้ทาง Facebook จำเป็นต้องหาทางแก้โดยการการทำ Native App สำหรับ Facebook for iOS

ต่อมา Mark Zuckerberg ได้ออกมายอมรับว่าการที่เราโฟกัสไปที่ HTML5 เป็นเรื่องที่ผิดพลาด โดยเหตุผลที่ทาง Facebook พยายามที่จะใช้ HTML5 นั่นเป็นเพราะ HTML5 นั้นคืออนาคตของทิศทาง Web Application โดยในตอนนั้นทาง Facebook ไม่ได้ตระหนักถึงความสำคัญของตลาดมือถือสมาร์ทโฟน ที่ทุกวันนี้มันเติบโตขึ้นมากกว่าเมื่อสองปีที่แล้วมาก ทำให้ Facebook ต้องย้อนกลับมาคิดทบทวน จึงเป็นที่มาของ Native App สำหรับ iOS และ Android โดย Native App สำหรับ Android ทาง Mark Zuckerberg บอกว่าเราจะได้เห็นกันในเร็วๆ นี้

Does that mean an evolution away from Flash? After all, Flash dominates the market for the types of HTML5 games that Facebook is talking about. “Well it’s hard,” Taylor said about Flash specifically. When I laughed and noted he was giving the diplomatic answer, he assured me that it is something they think about a lot. “We want to be ahead of the curve and fill in the gaps when possible,” is how he ended up putting it. And this stance on HTML5 is vital for Facebook because Taylor really does see mobile as the future — but as it stands right now, that’s a bit of a problem. “The popularity of mobile devices will change,” he said implying that the dominant devices today might not be so dominant in the future. And if that’s the case, why should Facebook dump resources into them? Wouldn’t it be easier if they just focused on HTML5 — something which will work on an increasing number of devices going forward? Of course.

จริงๆ แล้วนี่อาจจะเป็นกรณีศึกษาที่ดีสำหรับ HTML5 เป็นปัญหาที่เราต้องคิดกันต่อว่า HTML5 จริงๆ แล้วมันพร้อมแล้วหรือยัง (สำหรับ Mobile Application) เพราะจนถึงทุกวันนี้การร่างมาตรฐาน HTML5 ก็ยังไม่เสร็จสมบรูณ์เสียที หลังจากที่เริ่มร่างมาตรฐานกันมาตั้งแต่ปี 2009

ที่มา Android Central

ปล. ไปดูวิดีโอสัมภาษณ์ Mark Zuckerberg ได้จากที่มา

Comments

Popular posts from this blog

ลองเล่นและเรียนรู้พื้นฐานขั้นต้นของ Spring Framework

** สำหรับใครที่ไม่เคยเรียนรู้ในด้านของ Java EE หรือ J2EE อาจจะมึนงงกับศัพท์หน่อยครับ ทำไมต้อง Spring Spring เป็น framework ที่นิยมมากในการนำไปสร้างระบบในระดับ enterprise ในเริ่มแรกที่ Spring เกิดมา มีจุดมุ่งหมายเพื่อที่จะมาแทนที่มาตรฐานของ Java อย่าง J2EE (Java 2 Enterprise Edition) ที่มันทั้งหน่วงทั้งอืดและยุ่งยาก โดยเฉพาะในส่วนของ EJB (Enterprise Java Bean) ที่ถือว่าเป็นฝันร้ายของนักพัฒนา ทำให้กูรูสาย Java ในช่วงนั้นถึงกับแนะนำว่า ถ้าจำเป็นที่ต้องพัฒนาระบบด้วย J2EE จงอย่าใช้ EJB ถึงขั้นถึงกับมีหนังสือแนะแนวทางการพัฒนาระบบ J2EE โดยไม่ใช้ EJB อย่างไรก็ตามทาง Sun ผู้เป็นเจ้าของ Java ในสมัยนั้น ถึงกับต้องมาล้างระบบ J2EE ใหม่ในปี 2006 จัดการใน EJB ให้ใช้ง่ายขึ้น มีประสิทธิภาพมากขึ้น และมีการเปลี่ยนชื่อจาก J2EE เป็น Java EE (Java Enterprise Edition) เพื่อลบภาพอันเลวร้ายของเดิมให้หมด และได้มีการนำฟีเจอร์เด็ดๆ ของ open source framework หลายๆ ตัว อย่างเช่นแกนหลักของ Spring อย่าง IoC (Inversion of Control) หรือ OR Mapping (Object Relational Mapping) ที่เป็นที่นิยมอย่าง Hibernate แต่ก็ไ

ลองเล่น Lambda Expression ฟีเจอร์เด่นใน Java 8

ประวัติความเป็นมาของ Lambda expression Lambda expression ไม่ใช่สิ่งแปลกใหม่ในวงการ ภาษาโปรแกรม ( Programming Language ) เพราะ lambda มันเป็นแกนหลักของ การเขียนโปรแกรมเชิงฟังก์ชัน ( Functional Programming ) ซึ่งมีอายุมานานมากแล้ว แต่ Java เพิ่งนำเอาคุณสมบัตินี้เอามาใส่ลงในเวอร์ชัน 8 หากจะกล่าวถึงที่มาของ lambda คงต้องไปดูที่ถึงที่มาของ lambda calculus ซึ่งถูกสร้างขึ้นมาตั้งแต่ปี 1930 โดยนักคณิตศาสตร์ชาวอเมริกัน  Alonzo Church  เพื่อใช้ในการแก้โจทย์ปัญหาทางคณิตศาสตร์ที่มีความซับซ้อน ในบางครั้งสมการทางคณิตศาสตร์ที่ยาวไปอาจจะทำให้เกิดความซับซ้อนโดยใช่เหตุ lambda calculus จะทำการยุบบางส่วนของสมการนั้นออกมาเป็นฟังก์ชันย่อยๆ เพื่อทำให้สมการนั้นเข้าใจง่ายขึ้น ต่อมาหลักการของ lambda calculus ได้ถูกนำไปใช้ใน Turing Machine ซึ่งเป็นแบบจำลองในอุดมคติของ Alan Turing  ที่ต่อมากลายเป็นต้นแบบที่ถูกนำไปใช้ในการผลิต  Von Neumann Machine  ซึ่ง Von Neumann Machine ตัวนี้ได้กลายเป็นต้นแบบของคอมพิวเตอร์เครื่องแรกของโลกในเวลาต่อมา ท้ายที่สุดแนวคิดของ lambda calculus ก็ถูกนำมาแปลงเป็นภาษาโปรแกรมท

ลองเล่น SonarQube คลื่นโซนาร์ช่วยตรวจสอบคุณภาพของ code

SonarQube  คือเครื่องมือช่วยตรวจสอบคุณภาพของ source code ช่วยหาข้อบกพร่องใน source code ไม่ว่าจะเป็น Bug ที่น่าจะเกิดขึ้น ช่องโหว่ทางด้านความปลอดภัยหรือกลิ่นไม่ดีใน source code ของเรา (Code Smell) และ ช่วยตรวจสอบเราเขียน code ทดสอบครอบคลุมหรือดีแล้วยังยัง (code coverage) Code Smell ไม่ได้ใช้วัดว่า source code นี้สามารถทำงานได้ถูกต้อง มี bug หรือช่องโหว่หรือไม่ แต่ Code Smell ใช้วัดถึงคุณภาพของการออกแบบ เพื่อตรวจสอบว่า source code ที่เป็นอยู่ในปัจจุบันจะสามารถต่อเติม แก้ไขหรือทดสอบได้ง่ายหรือไม่ โดยหลักเกณฑ์ที่นำมาใช้วัดในส่วนของ Code Smell คือ ความซ้ำซ้อนของ code มี code แบบเดียวกันไปซ้ำกันในไฟล์ไหนบ้าง ตรวจสอบเงื่อนไขใน if ให้ ว่าเงื่อนไขตรงนี้มันมีโอกาสเป็นไปได้ไหม เพราะบางทีเงื่อนไขที่เราเขียนขึ้นมาเพื่อดักไว้ในบางครั้งมันแทบจะไม่มีโอกาสที่เวลามันทำงานแล้วเข้าเงื่อนไขในส่วนนั้น เป็นต้น สามารถไปอ่านรายละเอียดเพิ่มเติมได้ที่นี่ http://www.somkiat.cc/code-smell-internal-class/ นอกจาก SonarQube จะสามารถบอกถึงคุณภาพของ source code เราได้แล้ว ยังสามารถใช้ในการแจกแจงงานให