27 tháng 8, 2011

XPath Evulator - Plugin giúp test nhanh XPath Query cho Netbeans



Download: http://www.box.net/shared/jssgmg4jo567o8zz8b6n


Cài đặt
- Vào C:\Documents and Settings\YOUR-ACCOUNT\.netbeans\VERSION
- Tạo thư mục update, vào update tạo thư mục download
- Chạy Netbeans sẽ tự động Update

Sử dụng
- Mở file .xml
- Vào menh Windows > XPath

21 tháng 8, 2011

Cấu trúc máy điện thoại di động, Sơ đồ khối máy điện thoại di động

Máy di động cấu tạo bởi 2 phần chính Xạ tần và Logic:

1. Xạ tần

Bao gồm mạch thu và phát, để thu phát tín hiệu từ máy di động đến trạm BTS

1.1. Mạch thu: 
  • Hiện nay với công nghệ GSM tại Việt nam đang sử dụng băng tần 900Mhz có tần số thu là 935Mhz > 960Mhz
  • Nhìn vào sơ đồ khối ta thấy tín hiệu cao tần được thu vào ăng ten , sau đó đưa tới “Chuyển mạch ăng ten” hay “Anten swich”, nếu dùng mạng 900Mhz, chuyển mạch ăng ten sẽ nối anten với đường GSM RX > sau đó được lọc cao tần “ RX Fiter” để loại bỏ nhiễu và những tần số không cần thiết lấy ra dải tần số từ (935>960Mhz) > Tín hiệu cao tần được khuyếch đại tăng biên độ > Qua bộ ghép hỗ cảm để tạo tín hiệu cân bằng > đưa vào “RF – IC” ( IC xử lý cao tần), tại đây nó được trộn với dao động nội tạo ra từ bộ dao độngVCO tạo thành tín hiệu trung tần > qua bộ khuyếch đại tung tần > đến bộ tách sóng điều pha để lấy ra tín hiệu “ RXI, RXQ”.  
  • Tín hiệu “RXI, RXQ” được đưa sang “AUDIO – IC” là IC thực hiện chức năng giải mã , mã hoá A/D, D/A, IC này sẽ giải mã tín hiệu RXI, RXQ thành tín hiệu tương tự, sau đó khuyếch đại đưa đến tai nghe. Các tín hiệu khác được đưa xuống CPU theo 2 đường IDAT, QDAT để lấy ra tín hiệu báo rung chuông, tin nhắn  

5 tháng 8, 2011

Công cụ gắp màu trong thiết kế


Gắp màu (Color Picker) là lấy giá trị màu của bất kỳ vị trí điểm ảnh nào trên màn hình mà bạn thấy. Giá trị màu ấy được dùng cho nhiều mục đích khác nhau. Trong thiết kế web bạn lấy giá trị màu cho vào css. Trong thiết kế đồ họa bạn lấy giá trị màu làm tham số màu cho các đối tượng bạn đang thiết kế.

Có rất nhiều công cụ giúp bạn làm việc này. Đa phần chúng là add-on trong trình duyệt, những chức năng phụ trợ cho những chương trình lớn… Có một phần mềm nhỏ gọn chỉ chuyên làm công việc gắp màu mà mình rất hay dùng và luôn “mang theo bên mình” mình muốn giới thiệu với các bạn. Đó là Color Selector

Giao diện chính:


Bạn bấm chuột vào ô Picker và kéo trỏ chuột đến vị trí muốn lấy mã màu trên màn hình. Mã màu sẽ được hiển thị ở các khung nhỏ phía dưới. Nếu bạn lấy mã màu cho vào CSS thì copy ở khung HTML. Ngoài ra từ 1 mã màu bạn có thể chuyển sang nhiều lại mã khác nhau. Bạn chỉ việc dán mã vào khung Format Converter và bấm Convert.

Bạn có thể tăng kích cỡ phóng đại và con trỏ Picker bằng Menu Picker và luôn cho cửa sổ Color Picker nằm trên cùng với tính năng Always on top trong Menu Options.

Color Picker được viết bằng VB6 và phiên bản mới nhất là 3.0.1 (2004). Đã một thời gian dài tác giả của phần mềm đã không tiếp tục nâng cấp sản phẩm. Thiết nghĩ là do nó đã rất hoàn thiện cho công việc gắp màu.

Download:


[Video] Hướng dẫn tạo chỉ mục trong Word


Clip tut đầu tay của ichuot :P

28 tháng 7, 2011

[Source, Aptech, SEM1, eProject, ASP] Chia sẽ video clip

Tình hình là tớ đã đi gần trọn 2 năm rồi Aptech rồi. Từ hồi SEM1 đến nay có nhiều kỹ niệm. Dạo này lục lại đống kho tàn dữ liệu thấy còn cái Project SEM 1 viết bằng ASP này coi cũng được được. Giữ lại làm gì... sắp hóa rêu rồi.

Front-End

Back-End

Cái này cũng có nhiều kỹ niệm. Hồi đấy định là VBScript. Tính toán đâu đó hết rồi nhưng giáo viên phán 1 câu. Học JavaScript thì phải làm JavaScript! x-( hậm hực, vật vã code lại.

Qua project này tuy sau này không áp dụng được gì nhưng sau bao đêm hì hục search, so sánh, lục tung thư viện code thì cũng có vài công nghệ được áp dụng ví như: JQuery, CAPTCHA, Paging -n/+n, [U]mã hóa MD5[/U], giao diện lấy ý tưởng từ v1vn.com nhưng được đổi tông màu xanh.

P.S: Mã hóa MD5 đã bỏ... có lẽ không đủ time. Nhưng mình có giải pháp cho nó!

Khi cài đặt các bạn nhớ Enable Parent Path: Trong IIS7, Tạo Application cho nó. chuyển qua chế độ Feature View > ASP > Enable Parent Path = True và Apply. Sau đây mở file ./includes/dbconfig.asp để chỉnh lại thông tin kết nối CSDL. Thông tin đang nhập tài khoàn admin/adminadmin

Download


Support

  • Y!M: ichuot
  • eMail: ichuot@gmail.com

[Source, eProject, Aptech, SEM3] Airline Reservation System

Project đạt 77/100 điểm của Aptech SEM3. Chia sẽ với các bạn!

Front-end



Back-end



Download:

Requirement 
  • .NET 3.5 or later
  • Visual Studion 2008 or later
  • MS SQL Server 2008 or later
Account test:
  • Administration: admin, admin
  • Member: user, user
Install Giude:
  • Y!M: ichuot
  • eMail: ichuot@gmail.com




[Sách] Quy trình kỹ thuật cây cao su

Quy trình kỹ thuật cây cao su
Tài liệu do tổng công ty cao su Việt Nam biên soạn, 2004. Nó sẽ là tài liệu có ích cho bà con nông dân :P

Tải về:


13 tháng 7, 2011

Lỗi tạo Endpoint trên MSSQL Server

Có thể trong quá trình cài MSSQL Server bạn chọn Account cho Service của nó là Network account. Bạn chỉnh lại Local serive trong SQL Server Configuration Manager.


Theo như MS bảo thì Tạo endpoint để chạy cục bộ thì cứ vô tư và dễ dàng với Account Local Service. Nếu xài trong thực tế trên mạng thì dùng Network service, lúc này phải Reg domain, phân giải linh tinh nên chúng ta khó tạo Endpoint để test.


25 tháng 6, 2011

Phim lịch sử: Người ngoài hành tinh thởi cổ đại

HISTORY CHANNEL: ANCIENT ALIENS SERIES (2010)
Người Ngoài Hành Tinh Thời Cổ Đại


Loạt phim cổ điển "Battlestar Galactica" mở màn với lời dẫn: Có những thứ khiến người ta tin rằng sự sống bắt nguồn từ những chủng người ở xa xôi trong vũ trụ...
Điều gì xảy ra nếu sự sống trên Trái Đất là bắt nguồn từ ngoài không gian? Hàng triệu người công nhận giả thuyết về các hình thái sự sống thông minh đã từng thăm viếng Trái Đất từ hàng ngàn năm trước và được người nguyên thủy sùng bái như những đấng thần thánh. Có phải Stonehenge và Đảo Phục Sinh là di sản của những cuộc viếng thăm bởi sinh vật ngoài trái đất? Từ những siêu kiến trúc khổng lồ không thể giải thích cho đến kiến thức về hệ mặt trời, toán học, và thậm chí là kỹ năng tạo ra điện hay cỗ máy tính, Series phim tài liệu đặc biệt này phát lộ những chứng cứ về một siêu chủng tộc tác động lên tiến trình lịch sử của loài người và phát động một cuộc tìm kiếm trải rộng ra toàn thế giới để đi tìm lời giải đáp...

Bạn giải thích thế nào về việc người cổ đại vận chuyển những khối đá to bằng cả toa tàu, rồi cất đặt chúng vào vị trí như ta thấy ngày nay? Hay làm thế nào để tạo những mối nối khít hoàn hảo cho các khối đá?

Những hình vẽ trên sa mạc Nazca khi nhìn từ mặt đất thì chẳng có ý nghĩa gì, mà chỉ có thể quan sát trọn vẹn từ trên cao. Chúng được làm ra cho những người có khả năng bay lên không trung. Không còn cách lý giải nào khác. [Erik von Däniken]

Có phải trong những cuốn cổ sử bằng tiếng Phạn của Ấn Độ có các mô tả về những cỗ xe bay thần kỳ được gọi là Vimana và những dấu hiệu của một vụ nổ hạt nhân xảy ra cách đây hàng ngàn năm?

Bạn có cho rằng người cổ đại làm nên những thứ này bằng thủ công mà không có sự trợ giúp về công nghệ hay máy móc? Có phải đã có sự can thiệp từ những đấng bảo hộ đến từ bầu trời? Ngay cả với công nghệ tối tân ngày nay thì việc tái dựng một trong số những công trình cổ xưa này cũng là điều bất khả thi.

Nếu người ngoài trái đất đã từng viếng thăm Địa Cầu trong quá khứ, liệu họ có quay lại không? Với các nhà lý luận giả thuyết người ngoài hành tinh thời cổ đại thì câu trả lời là có. Họ tin rằng, bằng cách chia sẻ quan điểm với thế giới, họ sẽ giúp cho các thế hệ tương lai chuẩn bị tinh thần trước các cuộc gặp gỡ trong tương lai.


Download:

[Serial 1]
Mở Đầu: Những Cỗ Xe, Thần Thánh và Thế Giới khác
- Phần 1
- Phần 2
- Phần 3

Tập 1: Bằng Chứng
- Phần 1
- Phần 2
- Phần 3

Tập 2: Những Vị Khách
- Phần 1
- Phần 2
- Phần 3

Tập 3: Nhiệm Vụ
- Phần 1
- Phần 2
- Phần 3

Tập 5: Sự Trở Lại
- Phần 1
- Phần 2
- Phần 3

[Serial 2]
Tập 5 : Người ngoài hành tinh và Đức Quốc Xã
- Phần 1
- Phần 2

Ghi chú:
Sau khi tải về các phần các bạn để chúng cùng 1 thư mục và sau đấy thực hiện việc nối chúng lại mới có thể xem được. Để nối các bạn sử dụng chương trình này. Tải, giải nén và chạy chương trình. Các bạn chuyển qua thẻ Joining. Mục First split part bạn chọn tập tin phần 1 của phim mà bạn tải được ở trên. Sau đấy bấm nút Join để quá trình nối được thực hiện. Kết quả cuối cùng bạn sẽ có 1 file video trong cùng thư mục với các phần ở trên có thể mở được bằng các chương trình xem phim.

Have fun!
Hỗ trợ: Y!M: iChuot

22 tháng 6, 2011

Những người Ngu nhất :D



Clip trên thì ngu nhất thuộc về mấy tay cảnh sát ở clip cuối.





Với clip này thì ngu nhất vẫn là thàng cuối cùng. 4 clip trước chỉ là do tai nạn mà thôi.



Nghệ thuật trên đống đổ nát




Cầm búa lên mà đập những bức tường này chắc cũng sót lòng ấy nhỉ? Đây l những bức tường ở Khu cư xá An Khánh, Q.2,TP.HCM chuẩn bị giải tỏa cho khu đô thị mới Thủ Thiêm. Có một "ông Tây" nào đó vát sơn, cọ đến tô phết nhằm làm cho khung cảnh đỡ buồn tẻ!

11 tháng 6, 2011

Web Standards: ước mơ chuẩn hóa thế giới Web

iChuot: Có một bài viết của tác giả là SonnyMotives mà tôi đã đọc được cũng rất lâu rồi khoản năm 2008-2009 gì đấy. Trang blog hiện tại không còn nữa. Có lẽ chủ nhân của nó bận việc cơm áo gạo tiền nên không còn nhiều thời gian để chia sẽ những kinh nghiệm, trăn trở... cho thế hệ webmaster sau này. Và cũng thật đáng buồn khi những webmaster ở VN không mấy quan tâm đến chủ đề này lắm. Tôi xin được trích nguyên văn của bài viết này:

Trong những năm gần đây, trong giới phát triển Web, cụm từ “Web standards” được nhắc đến như một xu hướng thiết kế Web cho hiện tại và tương lai. Vậy Web standards thực chất là gì? Tại sao chúng ta phải quan tâm tới nó? Và liệu đó có phải là câu trả lời cuối cùng cho những vấn đề trong quá trình phát triển Web không? Với loạt bài viết về Web Standards, tôi hy vọng có thể phần nào giúp bạn tìm ra câu trả lời thích đáng.



1. Vấn đề của World Wide Web

Khi Tim Berners-Lee tạo ra World Wide Web, có lẽ ông cũng không tưởng tượng ra đến một ngày phát minh của ông lại có thể thay đổi cách nhân loại giao tiếp, kinh doanh, chia sẻ thông tin đến như vậy. Một thế giới (ảo) mới được tạo thành. Trong thế giới đó, mỗi một website, một trang web tùy theo mức độ lớn nhỏ có thể được xem như một thành phố, một khu vực hay một ngôi nhà trong thế giới thực. Các ngôi nhà mà chúng ta đang sống có thể rất khác nhau về phong cách, thiết kế, nhưng cơ bản đều được xây dựng dựa trên những nguyên tắc chung về kiến trúc. Ngay cả những bản vẽ cũng được thiết kế theo một chuẩn nhất định nhằm bảo đảm ý tưởng của kiến trúc sư được hiểu và thực thi chính xác bởi nhân viên thi công.

Thế giới Web cũng tương tự. Đã trong một thời gian khá dài, sự thiếu vắng một chuẩn thiết kế được chấp nhận rộng rãi trong cộng đồng phát triển Web đã dẫn đến nhiều vấn đề đau đầu cho các nhà thiết kế cũng như thiệt hại cho người dùng. Một số vấn đề “nổi cộm” bao gồm:

  • Sự thiếu tương thích giữa các trình duyệt: Internet Explorer là một ví dụ tai tiếng về sự thiếu tôn trọng những chuẩn chung. Hậu quả là các trang web được thiết kế cho “đa số người dùng” sử dụng IE đã hiển thị sai lệch trong các trình duyệt khác. Một điểm đáng chú ý khác là thị phần của IE đã bị thu hẹp đáng kể trong năm nay (2006), còn khoảng hơn 80%.
  • Lãng phí thời gian và tiền bạc cho việc thiết kế Web: để giải quyết vấn đề không tương thích, một số website lớn đã phải thiết kế nhiều phiên bản khác nhau cho nhiều trình duyệt. Thay vì tập trung sáng tạo cho trang web, việc kiểm tra, sửa lỗi không tương thích chiếm một phần lớn thời gian của designer. Tệ hơn, trong một số trường hợp để bảo đảm cho website của mình hiển thị đúng cho mọi trường hợp, designer đã phải sử dụng các thủ thuật (gọi là “hack”) trong thiết kế của mình, khiến việc duy trì website trong tương lai rất khó khăn. Nếu trình duyệt nâng cấp lên phiên bản mới, các “hack” đó rất có thể sẽ không còn hoạt động.
  • Không tương thích với các thiết bị truy cập Web khác ngoài trình duyệt: Hiện tại người dùng không chỉ sử dụng trình duyệt để lướt web, họ còn dùng điện thoại di động, PDA, TV. Trong tương lai sẽ còn rất nhiều thiết bị khác được trang bị khả năng truy cập Web (Tủ lạnh, Đồng hồ, v.v…) Nếu mỗi thiết bị đó đều hiển thị website một cách khác nhau, thì sẽ gây phiền toái cho người dùng, cho chủ nhân của website và cho designer.
  • Khó truy cập, khó sử dụng đối với người dùng: mỗi người đều có cách thức khác nhau để truy cập Web. Nếu website của bạn thiết kế không theo chuẩn, người dùng sẽ rất khó tùy biến chúng theo nhu cầu của mình. Ví dụ, những người cao tuổi hoặc cận thị rất cần sự hỗ trợ của trình duyệt hoặc trang web để có thể đọc được những văn bản với khổ chữ lớn hơn. Mặc dù đa số các trình duyệt đều hỗ trợ tính năng này, nhưng cách thức hỗ trợ không nhất quán (IE không hỗ trợ tính năng tăng cỡ chữ nếu website đặt font theo kiểu pixel). Vì vậy, website không thiết kế theo chuẩn sẽ loại bỏ tính năng này (và nhiều tính năng hữu ích khác) của IE và trình duyệt nói chung. Đó là chưa kể đến trường hợp những người khiếm thị sử dụng máy đọc để lướt Web (tôi không biết ở Việt Nam có ai sử dụng chưa).

2. Mục tiêu của Web Standards

Trước tình hình đó, năm 1998, W3C (World Wide Web Consortium), đã thành lập Dự án chuẩn hóa Web (The Web Standards Project – hay WaSP) nhằm thiết lập một số chuẩn chung nhất cho các công nghệ, ngôn ngữ sử dụng trong việc thiết kế Web. “Web Standards”, tên gọi chung của các chuẩn, được kỳ vọng sẽ giúp giảm thiểu tối đa chi phí và sự phức tạp trong phát triển Web đồng thời cũng mang lại lợi ích cho người dùng qua việc cải thiện khả năng truy cập (accessibility) của Website.

Ngoài lề

Nếu các bạn chú ý, sẽ thấy The Web Standard Project vẫn còn được gọi WaSP, chứ không phải WSP hay TWSP. Có thể giải thích như sau:

  • Thứ nhất, WaSP là một chữ viết gọn (acronym) chứ không phải là chữ viết tắt (abbreviation) như WSP, vốn sử dụng các chữ cái đầu của một cụm từ riêng. Acronym được dùng như một từ với mục đích là khiến nó dễ đọc hơn (ví dụ: radar là acronym cho “radio dection and ranging”). WaSP được dùng cũng không ngoài mục đích dễ đọc dễ nhớ đó.
  • Ngoài ra, đây còn là một cách chơi chữ viết tắt khá thú vị vì “wasp” tiếng Anh có nghĩa là con ong bắp cày, cũng chính là biểu tượng của The Web Standard Project.

3. Thành phần làm nên Web Standards

Vẫn có một số hiểu lầm rằng WaSP đã tạo ra các ngôn ngữ, công nghệ được khuyên dùng trong Web Standards. Trên thực tế, WaSP chỉ khuyến khích việc sử dụng các ngôn ngữ này (vốn được phát triển bởi W3C và các tổ chức khác) và làm thế nào sử dụng chúng một cách tối ưu nhất. Những chuẩn nền tảng nhất mà một Web developer cần phải biết bao gồm:
  • HTML - HyperText Markup Language: Đây là ngôn ngữ lâu đời và (do đó) được sử dụng phổ biến nhất trên Web. Mục đích chính của HTML là thiết lập cấu trúc cho các tài liệu Web. Điểm yếu của ngôn ngữ lâu đời này thiếu đi tính nhất quán trong cú pháp (ví dụ: có thẻ mở mà không cần thẻ đóng), và trộn lẫn cả những yếu tố định dạng văn bản (màu sắc, kiểu chữ). Vì vậy, nó có xu hướng được thay thế dần bằng XHTML và CSS.
  • XML - Extensible Markup Language: Cũng là một ngôn ngữ đánh dấu như HTML, nhưng thay vì chỉ có một số lượng thẻ nhất định, XML cho phép bạn tạo ra và định nghĩa thẻ của mình, hoặc dùng lại các thẻ của người khác. Đặc tính đó giúp XML uyển chuyển hơn HTML trong việc lưu trữ và tìm kiếm thông tin với khối lượng lớn. Tuy nhiên, vì sự hỗ trợ XML của các trình duyệt vẫn còn khá kém, nên hiện tại XML chủ yếu được dùng trong database và search engine. Để hiển thị thông tin cho người đọc, xHTML và CSS là lựa chọn tốt nhất ở thời điểm này.
  • XHTML - Extensible HyperText Markup Language: XHTML là một sự kết hợp giữa sự chặt chẽ trong cấu trúc của XML và sự phổ biến của HTML. Tất cả các trình duyệt hiện tại đều hỗ trợ XHTML khá tốt, kể cả các trình duyệt của di động và PDA. Việc chuyển đổi thông tin từ XHTML sang các dạng khác (XML) cũng dễ dàng hơn so với HTML do cấu trúc logic của nó.
  • CSS - Cascading Style Sheets: Một xu hướng quan trọng trong phát triển web hiện nay là sự tách biệt giữa cấu trúc, định dạng và hành vi. XHTML xây dựng nên cấu trúc, CSS giúp thay đổi “bề mặt” của website theo đúng ý tưởng thẩm mỹ của designer. Đây chính là “mảnh đất dụng võ” của designer. Trong trường hợp lý tưởng (designer hiểu và đánh giá cao lợi ích của Web Standards)tất cả những yếu tố liên quan đến design như màu sắc, font chữ, hình ảnh background đều được định dạng bằng CSS. Sử dụng CSS cũng giúp tiết kiệm thời gian và công sức của designer rất nhiều khi có thể kiểm soát được thiết kế của toàn bộ site. Ví dụ: nếu cần thay đổi một chi tiết nào đó, hoặc thậm chí thiết kế lại toàn bộ giao diện của site, designer chỉ đơn giản thay đổi các thuộc tính CSS mà không cần đụng chạm vào cấu trúc (X)HTML. Nếu file CSS được tách riêng thì designer chỉ cần sửa chữa trong file đó mà không phải sửa từng file (X)HTML một.
  • DOM - Document Object Model: Có thể coi DOM như một công cụ giúp developer điều khiển đến tất cả đối tượng trên trang web, từ các thành phần cấu trúc đến định dạng và cả nội dung được tạo ra bởi (X)HTML và CSS. Nói một các chính xác, DOfM mô hình hóa tất cả các đối tượng (Object) của văn bản (Document) dưới dạng một mô hình cây phân nhánh (tưởng tượng như một sơ đồ tổ chức nhân sự của các cơ quan). Tóm lại, DOM cung cấp một cách thức đơn giản giúp developer “chộp” bất cứ thành phần nào trên trang web. Sau khi đã “chộp” được, designer có thể sử dụng và thao tác chúng bằng các ngôn ngữ khác, chẳng hạn như JavaScript, PHP hoặc XML.
  • ECMA Standards: Có lẽ đây là một trong số những chuẩn mà bạn chưa từng nghe. Nhưng về bản chất, đó là một trong số những ngôn ngữ quen thuộc nhất của web developer: JavaScript. Sở dĩ có tên là ECMA vì European Computer Manufacturers Association đã kết hợp ngôn ngữ kịch bản JavaScript của Netscape và JScript của Microsoft lại thành một chuẩn thống nhất, gọi là ECMAScript. Tuy vậy, các developer trên thế giới vẫn gọi đó là JavaScript, vì cái tên đó đã trở nên quá quen thuộc với họ.Do vậy, kể từ nay trên SonnyMotives, chúng ta sẽ vẫn gọi JavaScript là… JavaScript. JavaScript được tạo ra nhằm làm cho trang Web “sống động” hơn. Vì JavaScript chạy trên máy khách, nó có thể tương tác tức thì với các hành vi của người dùng (click chuột, kéo và thả). Để làm được điều này, designer sử dụng JavaScript để điều khiển các đối tượng trên trang Web đã được xác định bởi DOM. Những đối tượng đó có thể bị dời đi, xóa, sửa và tạo mới tùy thích. Những ứng dụng phổ biến nhất của JavaScript là các hiệu ứng như chữ chạy lăng quăng trên trang web, thay đổi hình khi trỏ chuột vào (rollover), và nổi nhất gần đây là AJAX.

Trên đây chỉ là khái niệm sơ đẳng nhất về các thành phần quan trọng của Web Standards. Có thể nói mỗi thành phần lại là cả một thế giới riêng với vô số kỹ thuật, ứng dụng khác nhau. Nhưng tôi tin rằng, để trở thành một web designer thực sự, 4 thành phần quan trọng thiết yếu mà chúng ta cần phải biết, theo thứ tự ưu tiên là:
  • XHTML: tạo cấu trúc văn bản.
  • CSS: định dạng văn bản.
  • DOM: mô hình của các đối tượng, tạo bởi XHTML và CSS. Sở dĩ tôi đặt DOM trước JavaScript là vì bạn có thể sử dụng DOM với các ngôn ngữ lập trình khác, PHP hay ASP đều được. Mặc khác, nếu bạn học JavaScript trước, rất có “nguy cơ” là bạn sẽ viết JavaScript một cách tùy tiện, gây khó khăn trong việc kiểm tra, sửa lỗi và phát triển sau này. Nếu các bạn chú ý, bất kỳ một cuốn sách về JavaScript “tử tế” nào đều dành một phần đáng kể để giới thiệu về DOM trước. Nhắc đến sách, cuốn sách hay nhất theo tôi về DOM và JavaScript là Dom Scripting của Jeremy Keith, người đã làm sống lại việc sử dụng DOM cũng như đưa ra ý tưởng tách biệt hành vi và cấu trúc trên trang Web.
  • JavaScript: định nghĩa hành vi của các đối tượng trên trang web, giúp chúng tương tác với người dùng.

4. Lợi ích

Sau đây là một số lợi ích đáng kể của Web Standards, bạn cần thuộc lòng chúng phòng khi cãi nhau với các designer theo trường phái “truyền thống” và khi thuyết phục boss hoặc khách hàng về tính ưu việt của website do bạn thiết kế, dĩ nhiên trong trường hợp bạn thật sự thiết kế theo Web Standards:
  1. Hỗ trợ tốt cho search engine: chính cấu trúc chặt chẽ, không chen lẫn các thẻ định dạng đã giúp các search engine dễ dàng đọc, “hiểu” và đánh giá được nội dung trong những trang web theo chuẩn. Vì vậy, website theo chuẩn dễ được search engine xếp hạng cao hơn. Search engine trong chính website đó cũng được lợi tương tự, dẫn đến kết quả tìm kiếm chính xác hơn.
  2. Dung lượng các trang Web được thu nhỏ đáng kể, khiến thời gian tải xuống ngắn hơn (tránh cho người dùng dial-up ngồi … ngáp khi truy cập website của bạn) và tiết kiệm băng thông (tiền!)
  3. Tương thích với các trình duyệt tương lai: khi design của bạn sử dụng Web Standards, bạn có thể yên tâm rằng Website của bạn sẽ chạy tối với các bản nâng cấp trình duyệt, hoặc thậm chí một trình duyệt mới toanh nào đó trong tương lai.
  4. Tính tương thích ngược: Một điều mà chúng ta phải chấp nhận là các trình duyệt cũ không thể hiểu được những kỹ thuật của ngày nay. Tuy vậy, Web standards giúp các trình duyệt “cổ” đó hiển thị được đầy đủ những thông tin của website theo một cấu trúc cơ bản nhất mà người dùng có thể hiểu được. Hơn thế nữa, việc thiết kế theo chuẩn bảo đảm website của bạn sẽ tiếp tục hoạt động tốt trong tương lai bất chấp các công nghệ mới ra đời. Vì các chuẩn Web này sẽ luôn được cân nhắc kỹ lưỡng khi nâng cấp sao cho bản nâng cấp hay công nghệ mới phải tương thích với các thế hệ cũ hơn.
  5. Dễ dàng chuyển văn bản Web sang các dạng khác, chẳng hạn như database hay Word.
  6. Quá trình phát triển Web được rút ngắn và đơn giản hóa. Code trở nên logic hơn, dễ đọc và dễ hiểu.
  7. Dễ duy trì và sửa chữa: Một website có thể được thiết kế bởi nhiều designer khác nhau trong từng giai đoạn. Web standards thiết lập những luật chung mà bất cứ Web designer cũng có thể hiểu và áp dụng. Nên khi website được giao cho một designer mới, anh ta cũng có thể nhanh chóng tiếp tục những gì còn gì đang dang dở của người tiền nhiệm.
  8. Dễ truy cập (Accessibility): mang trang web của bạn tới mọi người, từ những người khuyết tật, phải sử dụng các thiết bị đọc Web đặc biệt tới người dùng sử dụng các thiết bị cầm tay.

5. Bất lợi

  1. Bất lợi lớn nhất của việc thiết kế theo Web Standards là bạn phải làm quen với một cách thiết kế hoàn toàn mới so với cách thiết kế dựa vào table (table-based) trước đây.
  2. Bên cạnh đó, một số trình duyệt xưa có thể không hiển thị đúng tuyệt đối layout mà bạn thiết kế.
  3. Cho đến thời điểm này, sự hỗ trợ thiếu đồng bộ giữa các trình duyệt về Web Standards cũng khiến việc test browser compatibility còn tương đối khó khăn. Nhưng trong vài năm tới, với việc ra đời của IE7 và lượng người sử dụng các trình duyệt cũ ngày càng giảm, mọi chuyện sẽ dễ dàng hơn.

6. Kết luận

Là một web developer/designer, chúng ta thường xuyên phải đối diện với vấn đề về sự không nhất quán trong việc hiển thị website ở các trình duyệt khác nhau. Web standards giúp giải quyết vấn đề đó đồng thời mang lại nhiều lợi ích khác cho cả nhà phát triển và người dùng. Kết quả là thời gian phát triển website được rút ngắn, duy trì dễ dàng. Việc tìm và sửa lỗi đơn giản hơn vì các dòng lệnh được viết theo chuẩn.

Do vậy, vấn đề của chúng ta, ở vị trí là một Web professional, không phải là việc quyết định có nên theo Web Standards hay không. Chưa kể đến nhiều ưu điểm kể trên, Web Standards đã là xu hướng tương lai của Web, bạn không có lựa chọn nào khác. Vấn đề của bạn là tận dụng những ưu điểm của Web Standards để tạo ra những website không những đẹp “trên cả tuyệt vời” mà còn dễ sử dụng, thân thiện với người dùng.

Cuối cùng, nếu bạn đã sử dụng hoặc đang tập sử dụng Web Standards, hãy tận dụng mọi cơ hội để nói về Web Standards cùng ưu điểm của nó với bạn bè, đồng nghiệp và mọi người. Vì suy cho cùng, bất cứ chuẩn nào cũng chỉ trở thành chuẩn thật sự khi mọi người đều sử dụng nó.

7. Tài liệu

Sau đây là một số tài liệu mà tôi cho là hữu ích đối với Web designer/developer ở bất kỳ trình độ nào. Thật ra điều này theo tôi là không cần thiết lắm, vì nếu bạn thật sự muốn tìm tòi, mọi thứ bạn cần đều đã ở trên Internet, google là ra ngay. Nhưng để giúp bạn dễ dàng hơn, sau đây là 3 nguồn tài liệu mà tôi cho là tốt nhất. Tại sao chỉ có 3? Đầu tiên, cái gì có sẵn sẽ không quí. Thứ hai, tôi không muốn “reinvent the wheel”, các tài liệu và “tập hợp các tài liệu” đã đầy dẫy trên mạng rồi. Yêu cầu: Anh văn và đam mê.

  • A List Apart: tạp chí uy tín nhất về Web Standards. Nhiều ý tưởng, kỹ thuật trong thiết kế Web sử dụng ngày nay xuất phát từ các bài viết “chất lượng cao” ở đây.
  • Web developer’s Handbook: Quyển sổ ghi chú đầy đủ nhất về các Website hữu ích cho một Web professional.
  • Veerle’s interesting links: Cũng tương tự như Web developer’s Handbook, nhưng tập hợp các link của Veerle tập trung vào khía cạnh design (cụ thể là CSS design) hơn. Veerle là một designer tài năng, và cũng là CEO của một công ty phát triển Web nhỏ nhưng thành công. Blog này cũng là nơi cô chia sẻ kinh nghiệm của mình với cộng đồng phát triển Web.

4 tháng 6, 2011

Các công cụ hỗ trợ mô hình hóa trong ngành phần mềm

Khi các bạn học ở bất kỳ trường DH ngành CNTT nào cũng có 1 môn Phân Tích thiết kế hệ thống thông tin. Môn này giúp chúng biết những khái niệm và bước để xây dựng một bản phân tích thiết kế 1 phần mềm. Trong ấy chắc hẵng sẽ có rất nhiều mô hình được nói đến. Ví như: Flowchart diagram (sơ đồ dòng dữ liệu), Entity Relationship Diagram (mô hình thực thể quan hệ), Use case Diagram... và còn vài thứ nữa tùy theo chương trình của mỗi trường. Để vẽ những mô hình ấy để vẽ những mô hình ấy chúng ta có các công cụ riêng để thực hiện. Đôi khi tôi vẫn còn thấy rất nhiều người vẫn còn dùng Drawing tools trong Word để vẽ. Điều ấy cũng không sai nhưng thật sự là không nên vì sự hỗ trợ của nó kém, đôi khi chúng ta gặp những mô hình phức tạp như ERD thì Drawing tool sẽ rất phí thời gian và sẽ không có những công cụ phụ trợ đặc thù để chúng ta check validation (kiểm tra sự hợp lệ), reverse engineering (chuyển đổi sang ứng dụng thực tế)...

Ứng dụng để vẽ mô hình thì có rất nhiều. Trong quá trình tìm kiếm và sử dụng tôi đã tổng hợp một số công cụ mà theo tôi là khá hay.

1. Software Ideas Modeler


Với ý tưởng của tác giả khá rõ ở ngay cái tên chương trình. Đó là biến mọi ý tưởng về phần mềm thành mô hình. Đây là chương trình miễn phí, sinh sau đẻ muộn so với các đàn anh (2009) nên không có được nhiều tính năng cao cấp nhưng lại là 1 ứng dụng tổng hợp để tạo các mô hình thông dụng cho những người không đòi hỏi quá khắc khe. Giao diện dễ dùng, đòi hỏi phần cứng thấp, nhỏ gọn, miễn phí, có thể vẽ nhiều mô hình khác nhau... đó những ưu điểm tuyệt vời nhất nó có.

2. PowerDesigner


Đây là sản phẩm của Sybase. Sybase có truyền thống phát triển phầm mềm rất lâu đời. Sybase nổi tiếng với với lĩnh vực Database trước kia. Sybase từng liên kết với Microsoft để tạo ra SQL Server, nhưng do giữa 2 công ty có nhiều mẫu thuẩn nên đã tách ra. Cho đến giờ Sybase vẫn còn phát triển RDBMS cho riêng mình, đó là SQL Anywhere nhưng không được nổi tiếng lắm so với sản phẩm của đàn anh là MSSQL Server. Nhưng nói đến PowerDesigner thì đấy là một sản phẩm rất tuyệt vời nhất Sybase hiện thời. PowerDesigner là sản phẩm tốt dành cho đối tượng người dùng chuyên nghiệp, các doanh nghiệp phần mềm chuyên dụng.

PowerDesigner là sản phẩm thương mại và không có phiên bản miễn phí, chỉ có phiên bản dùng thử. Để thành thạo trong sử dụng nó đòi hỏi bạn tìm hiểu và học một cách nghiêm túc. Sau quá trình tìm hiểu bạn sẽ nhận ra một điều nó là sản phẩm tuyệt vời vì nó có rất nhiều tính năng mà đa số những sản phẩm khác không có được.

Trọng tâm PowerDesigner hướng đến là Data Modeling. Bao gồm 3 models chính của Data Modeling là: Conceptual Data Model, Logical Data Model và Physical Data Model. Đây là mô hình 3 bước để tạo lập mô hình CSDL. Ngoài ra vẫn hỗ trợ đầy đủ các mô hình khác như Business Process Model (BPM) - Trong BPM có các mô hình ta thường biết đến như Data Flow Diagram, Analysis... Ngoài ra còn có
 Object Oriented Model: Class Diagram, Object Diagram, Sequence Diagram, Use Case Diagram...

Nói chung là đầy đủ và dư xài cho các bạn.

(Còn tiếp...)

1 tháng 6, 2011

10 java games for mobile

3D World Championship Pool 2010

2012 Apocalypse

Fishing Off The Hook

Assassin's Creed II


WWE Smackdown Vs. Raw 2010


ETCH A SKETCH

CABAL

EMPIRE FIGHTER 3D

TRASH RACER

GT RACING MOTOR ACADEMY

Download:
- http://www.box.net/shared/49q94k87t8

21 tháng 5, 2011

Reactive lại

Lâu lắm rồi ấy nhỉ? Lâu lắm không active lại cái blog này. Hôm nay search google thì mới phát hiện nó lên top.

Chỉnh lại cái giao diện. Viết 1 bài cho đỡ buồn vậy :D