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 แต่ก็ไ...

Inversion of Control และ Dependency Injection

Inversion of Control (IoC) คืออะไร IoC เป็นทฤษฏีที่ว่าด้วย การลดความผูกมัด (dependency) กันในระหว่าง module เพื่อให้ application ของเราแก้ไข (maintain) ต่อเติม (extensible) หรือทดสอบ (test) ได้ง่ายขึ้น ซึ่งเอาจริงๆ IoC เป็นอะไรที่ทำให้เราสับสนและงุนงงมากๆ ว่ามันคืออะไร หลายๆ คนจึงยกให้ว่า IoC คือ Dependency Injection (DI) ซึ่งจริงๆ มันก็ไม่ถูกซะทีเดียว  Dependency คืออะไร Dependency คือการผูกมัดที่เกิดขึ้นในระบบ เมื่อ module นึงมีการเรียกใช้อีก module นึงด้วยการอ้างอิง (reference) ตรงๆ แล้วอะไรที่เรียกว่าการ อ้างอิง (Reference) แบบตรงๆ   อย่างภาพ diagram ด้านบน class LogEngine มีการเรียกใช้ ConsoleLog โดยตรง ซึ่งมองผ่าน diagram อาจจะไม่เห็นภาพลองดู code กัน public class ConsoleLog { public void openLog(){ //do something to open log } public void log(String message){ //do something to log } public void closeLog(){ //do something to close log } } public class LogEngine { private ConsoleLog log; public LogEng...

ลองเล่น 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 ก็ถูก...