13 thg 4, 2009

9 kỹ năng cho lập trình viên tương lai

Unknown

1. Get one of top 3 (PHP, JAVA, .NET)

Trừ khi thế giới sụp đổ, developers vẫn cần ít nhất 1 trong 3 programming language này mà theo ý kiến cá nhân thì hãy chọn 1 trong 2 cái đầu tiên. Điều quan trọng là không chỉ phải nắm cú pháp hay sử dụng ngôn ngữ đó đơn thuần, developer cần phải nắm được cách tương tác với các service cùng hay khác ngôn ngữ nữa.

2. Rich Internet Applications

RIA đang phát triển mạnh với Adobe Flash, Flex/AIR và SilverLight, JavaFx. Tốc độ đường truyền ngày càng cao trong khi ứng dụng càng mang tính visualized càn dễ dùng và đáng tin cậy hơn. Đó là lý do nên nắm bắt một công cụ RIA kết hợp với HTML 5.0 dù version này có thể sẽ là Vista của internet - sẽ hoàn chỉnh vào 2020.

3. Web development

Không còn chối cãi gì nữa khi lịch sử lập trình 5 năm trước người ta cân nhắc về ứng dụng stand-alone, nhiều khi còn gọi là Windows Application và web application. Ngày nay, web application chiếm ưu thế tuyệt đối. Developer không thể không biết về web application development. Tuy nhiên, không biết các trường đại học ở VN giờ này đã đầu tư và có đủ khả năng truyền đạt công nghệ này cho SV hay chưa.

4. Web services

Các ứng dụng mỗi ngày lại ... xích lại gần nhau hơn theo tinh thần của Trịnh Công Sơn. Tận dụng những dịch vụ từ ebay, yahoo, google, Windows Live,... sẽ là một thế mạnh lớn.

5 Soft skills

Đây là điểm tử huyệt của đa số developers VN. Giao tiếp quá ngắn, luôn nghĩ người khác hiểu vấn đề cũng cách với mình hoặc luôn cho rằng mình đúng. E ngại tranh luận hoặc quá gay gắt. Thiếu kỹ năng tiếng Anh hoặc cho rằng mình đọc và viết tiếng Anh tốt trong khi trên thực tế, ít người nước ngoài nào đọc hiểu được thứ tiếng Anh "bác học" + "châu á" của họ.

Hoàn toàn thiếu kiến thức kinh doanh và đưa 2 chữ "khách hàng" ra khỏi từ điển công việc. Khách hàng thậm chí trở thành kẻ thù số một, ngu muội và chỉ biết cậy có tiền để đòi hỏi mỗi khi project manager bắt đầu điệp khúc "đó là cái khách hàng muốn".

6. Agile process

Xin hãy từ bỏ khái niệm phát triển ứng dụng waterfall ở trường đại học. Các ứng dụng ngày nay ở quy mô nhỏ và vừa chỉ cần y/c trên cửa số chat hay email để trở thành 1 function trong hệ thống. Mô hình hoá hệ thống, phát triển nhanh, hoàn thiện và sửa lỗi là cơ sở để project hoàn thành. Sẽ không ai biết phải làm việc với bạn thế nào nếu cứ ngồi chờ yêu cầu được viết thành tài liệu và đóng thành tập.

7. Domain knowledge

Đây chưa phải là một điểm mấu chốt cho VN developers nhưng sẽ là cần thíêt khi dần tiến lên 1 vị trí quản lý như project manager. Kiến thức về một lĩnh vực nào đó trong thực tế liên quan đến hệ thống đang xây dựng sẽ là vô cùng cần thiết. Nó cũng tương tự với việc đừng ngồi chờ requirment document/specification mà hãy nói, OK tôi biết quy trình của việc này là gì.

8. Development "hygiene" - vệ sinh !

Teamwork sẽ là điều tất yếu khiến người vệ sinh và có tổ chức được mọi người yêu quý hơn. Test process + bug tracker, coding convention + source control, diagram + documentation. Mọi thứ là cần thiết, không có hoặc không lý tưởng như trong trường đại học mà sẽ là cái mà cty bạn làm quen dùng.

9. Mobile development

i-phone có nhiều khả năng thay thế chữ "điện thoại" giống như xerox thay cho máy photocopy. Nhiều khả năng mobile device 3 năm nữa sẽ mạnh hơn 1 chiếc laptop hiện nay. Kỹ thuật lập trình sẽ không phải là vấn đề đáng quan ngại nhưng một tư duy lập trình cho người dùng đang ... "bay", lái xe 1 tay, nhìn bằng 1 mắt, vừa làm việc vừa nghe nhạc,... sẽ là cái lập trình viên cần phải làm quen.

Hưng Nguyễn - Link

9 kỹ năng cho lập trình viên tương lai

Unknown

1. Get one of top 3 (PHP, JAVA, .NET)

Trừ khi thế giới sụp đổ, developers vẫn cần ít nhất 1 trong 3 programming language này mà theo ý kiến cá nhân thì hãy chọn 1 trong 2 cái đầu tiên. Điều quan trọng là không chỉ phải nắm cú pháp hay sử dụng ngôn ngữ đó đơn thuần, developer cần phải nắm được cách tương tác với các service cùng hay khác ngôn ngữ nữa.

2. Rich Internet Applications

RIA đang phát triển mạnh với Adobe Flash, Flex/AIR và SilverLight, JavaFx. Tốc độ đường truyền ngày càng cao trong khi ứng dụng càng mang tính visualized càn dễ dùng và đáng tin cậy hơn. Đó là lý do nên nắm bắt một công cụ RIA kết hợp với HTML 5.0 dù version này có thể sẽ là Vista của internet - sẽ hoàn chỉnh vào 2020.

3. Web development

Không còn chối cãi gì nữa khi lịch sử lập trình 5 năm trước người ta cân nhắc về ứng dụng stand-alone, nhiều khi còn gọi là Windows Application và web application. Ngày nay, web application chiếm ưu thế tuyệt đối. Developer không thể không biết về web application development. Tuy nhiên, không biết các trường đại học ở VN giờ này đã đầu tư và có đủ khả năng truyền đạt công nghệ này cho SV hay chưa.

4. Web services

Các ứng dụng mỗi ngày lại ... xích lại gần nhau hơn theo tinh thần của Trịnh Công Sơn. Tận dụng những dịch vụ từ ebay, yahoo, google, Windows Live,... sẽ là một thế mạnh lớn.

5 Soft skills

Đây là điểm tử huyệt của đa số developers VN. Giao tiếp quá ngắn, luôn nghĩ người khác hiểu vấn đề cũng cách với mình hoặc luôn cho rằng mình đúng. E ngại tranh luận hoặc quá gay gắt. Thiếu kỹ năng tiếng Anh hoặc cho rằng mình đọc và viết tiếng Anh tốt trong khi trên thực tế, ít người nước ngoài nào đọc hiểu được thứ tiếng Anh "bác học" + "châu á" của họ.

Hoàn toàn thiếu kiến thức kinh doanh và đưa 2 chữ "khách hàng" ra khỏi từ điển công việc. Khách hàng thậm chí trở thành kẻ thù số một, ngu muội và chỉ biết cậy có tiền để đòi hỏi mỗi khi project manager bắt đầu điệp khúc "đó là cái khách hàng muốn".

6. Agile process

Xin hãy từ bỏ khái niệm phát triển ứng dụng waterfall ở trường đại học. Các ứng dụng ngày nay ở quy mô nhỏ và vừa chỉ cần y/c trên cửa số chat hay email để trở thành 1 function trong hệ thống. Mô hình hoá hệ thống, phát triển nhanh, hoàn thiện và sửa lỗi là cơ sở để project hoàn thành. Sẽ không ai biết phải làm việc với bạn thế nào nếu cứ ngồi chờ yêu cầu được viết thành tài liệu và đóng thành tập.

7. Domain knowledge

Đây chưa phải là một điểm mấu chốt cho VN developers nhưng sẽ là cần thíêt khi dần tiến lên 1 vị trí quản lý như project manager. Kiến thức về một lĩnh vực nào đó trong thực tế liên quan đến hệ thống đang xây dựng sẽ là vô cùng cần thiết. Nó cũng tương tự với việc đừng ngồi chờ requirment document/specification mà hãy nói, OK tôi biết quy trình của việc này là gì.

8. Development "hygiene" - vệ sinh !

Teamwork sẽ là điều tất yếu khiến người vệ sinh và có tổ chức được mọi người yêu quý hơn. Test process + bug tracker, coding convention + source control, diagram + documentation. Mọi thứ là cần thiết, không có hoặc không lý tưởng như trong trường đại học mà sẽ là cái mà cty bạn làm quen dùng.

9. Mobile development

i-phone có nhiều khả năng thay thế chữ "điện thoại" giống như xerox thay cho máy photocopy. Nhiều khả năng mobile device 3 năm nữa sẽ mạnh hơn 1 chiếc laptop hiện nay. Kỹ thuật lập trình sẽ không phải là vấn đề đáng quan ngại nhưng một tư duy lập trình cho người dùng đang ... "bay", lái xe 1 tay, nhìn bằng 1 mắt, vừa làm việc vừa nghe nhạc,... sẽ là cái lập trình viên cần phải làm quen.

Hưng Nguyễn - Link