Thứ Năm, 24 tháng 4, 2014

Thiết Kế Web Những Điều Bạn Cần Biết Khi Tự Học

Trong quá trình học để trở thành một lập trình viên hiện nay ở các trường đại học thì có một giai đoạn khá quan trọng là lập trình thiết kế web. Tuy nhiên, cũng có khá nhiều người sau khi tốt nghiệp vẫn hầu như chưa hề biết quá trình thiets kế một website như thế nào và cũng có khá nhiều người đã biết về lập trình nhưng chưa hề biết đến việc lập trình một website.

 
Bạn cũng là một người trong số đó và đang mù mờ về các kiến thức website? Sau khi đọc bài viết về quá trình tự học thiết kế website này, hi vọng sẽ giúp ích được cho các bạn đang muốn tìm hiểu về thiết kế website

Quá trình tự học thiết kế website

Nếu bạn tìm được một website cho down mã nguồn diễn đàn bằng PHP với MySQL và có hướng dẫn cài đặt, hướng dẫn thay đổi các chức năng... bạn hãy down về và làm theo hướng dẫn. Chỉ cần để ý, dần dần quen với cấu trúc và cách viết code và hiểu được một website hoạt động như thế nào.

Nếu bạn không phải là một người có thói quen cầm một cuốn sách dày hay đọc một đống tài liệu học từng bước. Bạn cũng không phải một người hay thích lên lớp nghe thầy cô giảng nhiều về lý thuyết mà chỉ thích tự tìm hiểu. Đối với PHP bạn  chỉ cần đọc đúng bài hướng dẫn tự học đầu tiên về cách khai báo các biến (variables), khai báo các hàm (functions) và các đặc điểm chính của nó rồi tự đọc mã nguồn có sẵn để biết cách viết.

Về sau bạn bắt đầu tự viết được các thay đổi cho mã nguồn diễn đàn đó, từ đó bạn có thể viết được hẳn một chức năng lớn cho forum và còn có thể thay đổi hầu hết cấu trúc của nó. Đây chính là con đường tự học thiết kế web.

Cùng với việc tự mày mò những source code có sẵn bạn hãy tham gia các diễn đàn xem người ta thảo luận và cũng thường hay hướng dẫn người khác. Bạn hay tìm tòi để có thêm kiến thức hướng dẫn người khác cũng là một cách rất dễ để tiến bộ.  Nhiều khi có những vấn đề người khác hỏi tôi không biết, thế là tôi lại lên mạng tìm hiểu rồi hướng dẫn lại. Hoặc lắm khi trên các diễn đàn thảo luận trực tuyến cũng có nhiều người đưa các vấn đề hóc búa mà mình chưa từng gặp để giải quyết. Dần dần bạn sẽ có nhiều kinh nghiệm cho chính mình.

Các yếu tố cần thiết để tự học thiết kế website
Tóm lại, để tự học thiết kế web thì yếu tố cần là bạn biết được được các thuật toán được dùng trong lập trình, đã có tư duy lập trình, cơ bản về cơ sở dữ liệu và đã biết sử dụng website.

Bạn có thể tìm hiểu về html trước, sau đó là PHP (nếu bạn đã biết về C) hoặc JSP (nếu bạn đã biết về lập trình Java) hay ASP.NET (nếu bạn đã biết về VB.NET hoặc C#). Có thời gian rỗi rãi thì bạn tìm hiểu thêm về css để có thể làm cho website của bạn thêm bắt mắt và javascript để có các hiệu ứng phụ dễ sử dụng cho người dùng.

Nếu bạn có vốn tiếng Anh (không cần phải quá giỏi) cũng là một lợi thế cho bạn. Bạn cũng nên tìm và đọc các tài liệu nước ngoài bằng tiếng Anh. Bởi vì các tài liệu về kỹ thuật viết bằng tiếng Anh sẽ chuẩn hơn viết bằng tiếng Việt hoặc được dịch sang tiếng Việt.

Thứ Ba, 1 tháng 4, 2014

Tương lai của Web

Ngày 12/3/1989, nhà vật lý Tim Berners-Lee giới thiệu giải pháp kỹ thuật của ông cho việc quản lý thông tin. Đó là ngày ra đời của Web. Sau 25 năm, Web đã rất khác so với thuở ban đầu. Web sẽ thay đổi ra sao trong tương lai?

Trong kiến nghị của Tim Berners-Lee gửi cho lãnh đạo của Tổ chức Nghiên cứu Hạt Nhân Châu Âu (Conseil Européen pour la Recherche Nucléaire – CERN, Thụy Sĩ) ngày 12/3/1989, ông trình bày việc lưu trữ những tài liệu khoa học dưới dạng siêu văn bản (hypertext), tức là loại văn bản có chứa những siêu liên kết (hyperlink), cho phép tham khảo tức thời những văn bản liên quan. Không chỉ đề xuất ý tưởng, Berners-Lee xây dựng trình chủ Web (Web server) để cung cấp siêu văn bản và trình duyệt Web (Web browser)để xem siêu văn bản. Berners-Lee thiết kế ngôn ngữ HTML để định dạng siêu văn bản và giao thức HTTP để trình chủ Web và trình duyệt Web "nói chuyện" với nhau.
Ngay từ ngày ấy, Berners-Lee đã hình dung việc triển khai giải pháp của ông trên nền Internet sẽ tạo ra mạng World Wide Web bao phủ toàn cầu. Năm 1994, Berners-Lee sáng lập tổ chức World Wide Web Consortium (W3C) để xây dựng những chuẩn mở cho Web. Theo chuẩn mở của W3C, bất cứ ai cũng có thể xây dựng trình chủ Web và trình duyệt Web. Nhiều năm sau, Berners-Lee luôn nhấn mạnh tính mở là nguyên nhân quan trọng nhất tạo ra thành công thần kỳ của Web.




Tim Berners-Lee - cha đẻ của Web.


Quả thực, trong thập niên 1990, nhân loại làm quen với Internet thông qua trình duyệt Web, gần như xem Internet đồng nghĩa với Web. Thế nhưng, theo bài báo "The Web Is Dead" (Web qua đời) trên tạp chí Wired (8/2010), Web chỉ là một giải pháp ứng dụng Internet và đang phai nhạt trên thực tế. Hai tác giả của bài báo - Chris Anderson và Michael Wolff - cho rằng những yếu tố cốt lõi của công nghệ Web, như giao thức HTTP và trang mạng HTML đang mất dần sức sống do xu hướng sử dụng Internet thông qua phần mềm ứng dụng (application), gọi tắt là app, trên các thiết bị di động:
"Bạn thức dậy và kiểm thư bằng chiếc iPad để bên giường - đó là một app. Trong bữa sáng, bạn xem lướt Facebook, Twitter và báo The New York Times - thêm ba app nữa. Trên đường đến văn phòng, bạn nghe tin tức qua điện thoại thông minh - một app khác. Ở nơi làm việc, bạn rảo qua các kênh tin RSS, trao đổi với người khác bằng Skype hoặc IM (Instant Messenger). Lại những app khác. Cuối ngày, khi về nhà, bạn vừa chuẩn bị bữa tối vừa nghe nhạc từ Pandora. Bạn chơi một chút với XBox Live, rồi xem phim từ Netflix. Hầu như cả ngày bạn ở trên Internet nhưng không ở trên Web. Và nhiều người khác cũng giống như bạn.
Đó không phải là điều bình thường. Vài năm nay, một trong những xu hướng quan trọng nhất của thế giới số là sự dịch chuyển từ nền tảng Web hoàn toàn mở qua các nền tảng hầu như khép kín, tuy cũng dùng Internet làm phương tiện truyền tải nhưng không dùng trình duyệt Web làm phương tiện hiển thị. Xu hướng này xuất hiện từ khi có iPhone, tạo nên những cõi riêng trên Internet không cần đến HTML và guồng máy tìm kiếm Google không thể với tới. Đó là thế giới mà người tiêu dùng ưa chuộng vì những nội dung mà họ thụ hưởng tự đến với họ. Các nhà cung cấp nội dung số càng ưa chuộng thế giới đó vì nó giúp họ kiếm tiền dễ hơn. Cả người tiêu dùng và nhà cung cấp đều thấy rằng Web không phải là mục tiêu cao nhất của công nghệ số".
Phía sau những phần mềm ứng dụng với công nghệ đóng kín là lợi ích to lớn của nhà sản xuất thiết bị và nhà cung cấp nội dung số. Những nhà cung cấp nội dung số từng tìm cách thu lợi từ Web nhưng vô hiệu: nội dung trên Web bị sao chép quá dễ dàng! Theo Anderson và Wolff, xu hướng công nghệ đóng kín đang mạnh lên trên Internet và phạm vi ứng dụng của công nghệ mở như Web đang bị thu hẹp. Web sẽ không biến mất nhưng là công nghệ "chết" khi không còn là nền tảng chủ yếu trên Internet.
Cũng trên tạp chí Wired (1/2014), trong bài "The PC’s Death Might Also Mean the Web’s Demise" (PC chết, chắc Web cũng... băng hà), tác giả Marcus Wohlsen đồng ý với nhận định của Anderson và Wolff, cho rằng Web đang lụi tàn theo sự suy giảm của thị trường PC. Khi việc truy cập Internet hầu như đều được thực hiện trên thiết bị di động, trình duyệt Web không còn quan trọng như trước: "Hiện nay, phần lớn người dùng Internet, trong đó có hầu hết những nhóc tì ở trường tiểu học, trải nghiệm cuộc sống số chủ yếu thông qua các phần mềm ứng dụng trên thiết bị di động. Trình duyệt cùng lắm chỉ là một trong nhiều cách kết nối. Điều này cho thấy rõ lập trình thiết kế Web đang mất dần vai trò trung tâm".
Gần như ngược lại, nhà bình luận Dan Rowinski (tạp chí ReadWrite, 12/2013) nhận định: năm 2014 sẽ chứng kiến bước phát triển mới của thiết kế Web vì những thiết bị di động đều có khả năng hiển thị Web hoàn chỉnh, cái đang lụi tàn là... Mobile Web! Mọi trang mạng sẽ không còn cần phiên bản dành riêng cho thiết bị di động. Rowinski dẫn chứng: các phiên bản trình duyệt mới nhất trên thiết bị di động (như trình duyệt Safari trên iOS 7, trình duyệt Internet Explorer trên Windows 8.1 RT và Windows Phone 8, trình duyệt Firefox trên Firefox OS 1.2) giờ đây hầu như ngang ngửa với trình duyệt trên PC. Tại hội thảo Google I/O vào tháng 5/2013, Google từng hào hứng giới thiệu phiên bản trình duyệt Chrome mới nhất cho thiết bị di động (thiết bị Android, iPhone và iPad) hiển thị trang mạng như trên PC.




Trang mạng hiển thị và hoạt động như nhau trên các thiết bị khác nhau.


Nhận định việc dùng Web đang tăng lên hay giảm xuống thực ra vẫn chưa có tính định lượng. Nhiều ý kiến cho rằng điều đáng quan tâm hơn là tính mở của Web đang suy giảm. Trong tháng 4/2013, Berners-Lee quyết định ủng hộ việcbảo vệ bản quyền cho nội dung trên Web, cụ thể là đưa chức năng quản lý quyền sử dụng nội dung số Digital Restrictions Management (DRM) vào bộ chuẩn của Web, trước hết áp dụng đối với phim trên Web (Web video). Khi chuẩn DRM được xác lập, trình duyệt sẽ luôn kiểm tra phim trong trang mạng để xác định phim ấy có vi phạm bản quyền hay không, từ đó trình duyệt sẽ hiển thị phim hoặc từ chối hiển thị phim, sẽ cho phép dùng chức năng Save Video As (tải phim xuống máy) hoặc không. Nhờ vậy, theo Berners-Lee, chuẩn Web video do W3C xây dựng mới có thể thâm nhập cuộc sống, thay thế vai trò của Flash.
Theo tổ chức Electronic Frontier Foundation (EFF, 10/2013), quyết định của Berners-Lee là một bước lùi của tính mở, không mấy hiệu quả trong việc bảo vệ bản quyền, nhưng lại rất "hiệu quả" trong việc cản trở sự phát triển của Web! Quả thực, vài tuần sau quyết định của Berners-Lee, giới phát triển ứng dụng thiết kế Web đòi hỏi trình duyệt không được cho người dùng xem mã nguồn ứng dụng trong trang mạng (chức năng View Source) để bảo vệ bản quyền. Giới nhiếp ảnh cũng tỏ ý muốn trình duyệt phải kiểm tra bản quyền hình ảnh trong trang mạng, không cho người dùng tùy tiện lưu hình ảnh trên máy (chức năngSave Image As). Giới xuất bản cũng có yêu cầu tương tự về nội dung của trang mạng, đề nghị không cho phép người dùng tùy ý sao chép văn bản (chức năng Copy/Paste). Những nhà sản xuất phông chữ từng chống lại việc "nhúng" tập tin phông chữ vào trang mạng nay cũng lên tiếng.




Lời phản đối DRM trên Web: Web không phục vụ cho Hollywood (www.defectivebydesign.org/no-drm-in-html5).


Chưa rõ trong tương lai các trình duyệt chủ chốt có ủng hộ chuẩn "DRM-HTML" hoặc không. Nếu có, theo EFF, sẽ hình thành một loại Web khác: Web... đóng kín. Khi ấy, trang mạng HTML có lẽ giống như trang sách điện tử PDF hiện nay.

Facebook đổi giao diện vì nhiều người vẫn dùng máy tính cũ

Facebook từng được ca ngợi khi giới thiệu News Feed đẹp mắt năm 2013 nhưng mới đây lại gây bất ngờ khi trang bị cho mạng xã hội lớn nhất thế giới này "chiếc áo" đơn giản và cổ điển như được may từ năm 2007.
Facebook đã phải hứng chịu nhiều chỉ trích khi triển khai giao diện mới cho hơn 1 tỷ người sử dụng trong vài tuần qua. Tuy nhiên, nhà thiết kế sản phẩm Julie Zhuo của Facebook đã giải thích trên blog rằng cho dù đã có nhiều người dùng thiết bị hiện đại thì đa số thành viên Facebook vẫn sở hữu máy tính cũ có màn hình nhỏ. Do đó, "bất cứ điều gì là tốt nhất cho người dùng thì Facebook sẽ thực hiện". 
FB-8427-1396233802.jpg
Không ít người tiếc nuối giao diện cũ đẹp mắt của Facebook.
Zhuo giải thích: "Hóa ra, trong khi tôi (và có thể cả bạn nữa) đang dùng màn hình 27 inch siêu nét thì vẫn còn nhiều người trên khắp thế giới chưa có cơ hội đó. Màn hình nhỏ, độ phân giải thấp vẫn đang phổ biến hơn nhiều so với màn hình chất lượng cao của Apple hay Dell. Và thiết kế web cũ của Facebook, tuy đẹp, lại không hoạt động tốt trên netbook 10 inch. Chưa kể, nhiều người vẫn tiếp tục chỉ truy cập Facebook qua PC thay vì điện thoại hay tablet. Bấm vào thanh cuộn bên phải trình duyệt cũng là điều bình thường bởi không phải ai cũng có bàn di chuột (trackpad hay scroll wheel). Họ không có phần cứng như chúng ta, nhưng chất lượng trải nghiệm của họ cũng quan trọng như của chúng ta vậy".
FB-2-7193-1396233803.jpg
Giao diện mới của Facebook mang phong cách đơn giản và cổ điển.
Nhà thiết kế này cho hay một số thử nghiệm cho thấy thiết kế web cũ giúp tăng doanh thu cho Facebook, nhưng cũng cho thấy người dùng có xu hướng ít chia sẻ, ít bình luận qua Facebook hơn.
Dù Facebook đang mở rộng, họ vẫn phải quan tâm đến những người dùng cũ đồng thời ngăn chặn sự bành trướng của các đối thủ bằng cách liên tục thâu tóm các công ty công nghệ mới. Vì vậy, Facebook đã chi hàng chục tỷ USD để mua lại Instagram, WhatsApp và Oculus.

Thứ Tư, 26 tháng 3, 2014

Các Kiến Thức Cần Nắm Vững Khi Học PHP

Học PHP như thế nào khi bạn chưa biết gì về lập trình ?


PHP là một ngôn ngữ dễ học, dễ hiểu và dễ tiếp cận, nên cho dù nếu bạn chưa có kiến thức gì về PHP. Thì cũng đừng lo lắng, các phương pháp sau sẽ giúp bạn nắm vững những điểm trọng tâm trong quá trình theo học lớp căn bản và nâng cao.
Bắt đầu từ sự đơn giản nhất.
Có nhiều người cứ nghĩ học PHP thì HTML, javascript là quá dễ, cho nên đọc sách hoặc học qua loa thì cũng nắm bài như ai. Nhưng không, biết là một chuyện. Còn vận dụng sự hiểu biết ấy vào bài tập thì còn rất lúng túng và thiếu sự nhất quán.
Bạn lúng túng tức là phần nào bạn vẫn chưa nắm hết. Vậy ngay từ bài nhập môn, hãy tiếp cận một cách nhịp nhàng. Với sự hưỡng dẫn của giảng viên, bạn sẽ nhanh chóng bắt kịp với sự đa dạng của một ngôn ngữ lập trình như thế nào. Và hẳn khi bước sang PHP bạn sẽ không còn cảm giác sợ, hay choáng ngộp trước một rừng thứ phải học của PHP.
Đừng bỏ qua bất kỳ chi tiết nào.
Thực tế, người học lập trình thường đi vào phần trọng tâm mà bỏ qua những chi tiết nhỏ trong lập trình. Theo quan niệm thì có thể bạn thấy ít khi dùng, ít khi đụng thì cần gì phải nhớ, cần gì phải tìm hiểu ??. Hoặc là chúng dễ quá, dễ tới mức đôi khi bạn không cần phải chú tâm vào nó thì cũng làm rất tốt các bài tập.
Quả thực, ở thời gian đầu. Khi tiếp cận những bài căn bản có thể bạn sẽ ít sử dụng. Nhưng ở một tầm cao hơn bạn sẽ thấy sự đa dạng và mức độ phức tạp của các bài học sau được nâng lên rõ nét. Nếu bạn chưa hề nắm vững kiến thức thì thường sẽ không nắm hết bài. Hay nếu có thì chỉ là qua loa hoặc "đại khái" nó là như thế....Còn vận dụng sâu hơn thì....chịu.
Tìm ra liên kết các bài học lại với nhau.
Yếu điểm chí mạng trong lập trình đó là sự rập khuôn theo khuôn mẫu, nghĩa là cái gì thì cũng được học, cũng được biết. Nhưng để vận dụng ráp nối các chi tiết thì có vẻ như khó khăn quá.
Lỗi này không hoàn toàn trách học viên, mà chỉ trách sự kết hợp bài giảng và phân bố bài học của giảng viên không phù hợp, khiến cho kiến thức cũ, mỡi đảo lộn một cách thiếu khoa học. Từ đó làm cho học viên cảm thấy phần nào khó khăn hơn trong việc dùng kiến thức cũ để đi tiếp kiến thức mới.
Tập trung và tự đặt những câu hỏi trong khi giảng viên thảo luận
Hãy tự hỏi và trả lời những câu hỏi what ?, Why ?, When ? về một vấn đề gì mới khi bạn được học. Chỉ khi chúng ta hiểu được 3 câu hỏi này thì chúng ta mới thực sự nắm rõ bài học của ngày hôm đó. Khi đưa ra câu hỏi nếu tự bản thân không thể trả lời. Hãy phát biểu hỏi giảng viên để có được câu trả lời sớm. Cần chú ý không phớt lờ những gì không hiểu. Vì rất dễ dẫn tới việc hổng kiến thức sau này.
Nhìn nhận và phân tích câu hỏi trước khi bắt tay làm.
Trong quá trình học, nếu các bạn được giảng viên cho bài tập làm, thì đừng vội làm liền. Hãy lấy giấy bút và phân tích thật kỹ các yếu tố. Dựa vào những giả thuyết của đề bài chúng ta sẽ gắn kết với kiến thức đang học. Từ đó vẽ ra các bước cơ bản khi thực hiện câu hỏi đó.
Áp dụng cách này, có thể bạn sẽ làm chậm hơn người khác, có thể bạn sẽ gặp nhiều khó khăn khi phân tích. Nhưng đừng lo lắng, vì chính những khó khăn ấy sẽ cho bạn kinh nghiệm phân tích vấn đề trong lập trình một cách hiệu quả.
Đi học đầy đủ và lắng nghe khi được giảng.
Việc đi học vào các ngày nghỉ hoặc các giờ sau khi đi làm là rất khó khăn. Vì sau một ngày làm việc, ai cũng muốn có 1 chút thời gian nghỉ ngơi, để giải trí. Đó cũng là lý do những người đã đi làm thường học không được siêng như những người chưa có việc làm. Nhưng nếu bạn muốn thành tài thì trước hết phải trải nghiệm gian khổ, ít nhất là hy sinh 1 ít thời gian để học thật tốt môn mà bạn muốn xem là "nghề" sau này.
Đi học được, nhưng nhiều khi lại bị cuốn một hai câu chuyện với bạn bè trong lớp, nên có những lúc bạn bỏ qua các chi tiết mà giảng viên muốn truyền tải cho các bạn. Nếu đã hy sinh thời gian đi học thì bạn đừng nên tiếc đôi ba câu chuyện với bạn bè xung quanh. Hãy thật tập trung lắng nghe nhất có thể để bạn hiểu rõ bài học một cách sâu và hiệu quả.

Thiết Kế WebVới 6 điều chú ý nhỏ này, sẽ giúp bạn có được sự tiếp cận dễ nhất đối với môn học PHP mà không hề cảm thấy lo lắng hay thiếu tự tin về khả năng của mình. Ngoài ra nó còn giúp các bạn nắm được chắc các vấn đề cần thiết đủ để học chuyển tiếp lên khóa nâng cao một cách dễ dàng.