Thứ Ba, 13 tháng 9, 2005

Trả lời email

Mình nhận được email rất hay gửi đến hỏi về cách tiếp cận một sản phẩm nguồn mở như thế nào. Mặc dù không có nhiều thời gian trả lời chi tiết, tỉ mỉ hơn nhưng mình cũng có một đôi dòng theo kinh nghiệm của bản thân. Mạn phép tác giả xin đăng lại nội dung trên blog này .

5 nhận xét:

  1. Nội dung email
    Hi anh Thuận,

    Em rất cám ơn anh đã trả lời em nhiệt tình như vậy! Em cũng không dám làm phiền anh nhiều đâu, nhưng hôm nay em muốn hỏi anh một câu chung chung thế này không biết có được không;
    Em muốn hỏi anh làm thế nào để bắt đầu với một công nghệ hoặc một cái gì đó mà nói chung là very new (Ví dụ đối với em uPortal, Liferay,.. là hoàn toàn mới). Đối với một cái như vậy thì ta nên start thế nào hả anh? Tại em thấy mình chưa có kinh nghiệm trong cái vấn đề này, lắm lúc thật tình em không biết mình phải bắt đầu từ đâu nữa :( !
    Thường thì cách của em là thế này: Search và đọc documents, down thử một cái về rồi làm sao cho nó chạy được bằng mọi cách! rồi từ đó tìm hiểu sâu thêm dần dần!
    Nhưng sau khi search thì có lúc chẳng tìm được gì, có lúc lại quá nhiều, chẳng biết nên đọc cái gì! và có khi mất cả tuần liền vẫn chưa biết nò là cái gì hichic, rồi down nó về và ngiền ngẫm mãi cũng không thể chạy được nó! Em chẳng hiểu nên làm thế nào cho tốt hơn!
    Ví dụ cái Liferay mấy hôm trước, em đọc 2 ngày lận mà mãi đến lúc có ngườ hỏi em dùng bản pro hay ent em mới biết có sự phân loại đó hichic! Mà giờ em vẫn chưa biết chúng có sự thuận lợi hay hạn chế khác nhau gì :( !

    Anh có thể giúp em theo mấy ý này được không ạ? :
    Cách search:
    Cách chọn từ khoá hợp lý? Chọn lọc và sắp xếp? Chọn forum thích hợp để tham khảo, ...

    Kế hoạch nghiên cứu:
    Một công nghệ hoặc một framework thường được phân tầng như thế nào? Thường gồm các tầng nào? (Không biết dùng từ "tầng" có đúng không nhưng ý em là ví dụ như các : over struct, giao tiếp người dùng, database, security,...) .Và nên tìm hiểu chi tiết sâu xa tầng nào? Làm cách nào để tiếp cận và làm quen nhanh nhất?...

    Thực thi:
    Sau khi nắm sơ sơ được cấu trúc và cơ chế của nó, nên practice thế nào để dễ dàng hiểu sâu hơn và có khả năng phát triển được nó? các module quan trọng?...

    Cải thiện:
    Sau khi gần như thông thạo cách làm việc và các ngóc ngách của nó, nên bắt đầu phát triển như thế nào cho thuận lợi?
    Em xin lỗi là các câu hỏi của em hơi tổng quát quá, nhưng đó thật sự là những khó khăn đối với em! Quan trọng là câu 1 và câu 2!

    Anh giúp em với nha! Cái đầu em nó cũng chậm chạp tối tăm lắm hichic, anh giải đáp cụ thể cho em với nha!

    Em cám ơn anh! Best Regard!

    Trả lờiXóa
  2. Your blog is nice Keep up the great work. I'm sure you'd be interested in cheap secured loans Get cheap secured loans

    Trả lờiXóa
  3. Xin được trả lời như sau

    chào em , anh xin lỗi vì quá bận nên không thể trả lời em kỹ và sớm hơn được, nhưng cũng xin vắn tắt một đôi điều hy vọng sẽ giúp ích được em.
    Về search thì em cứ gõ trực tiếp những cụm từ liên quan đến sản phẩm em cần tìm , một thủ thuật tìm code tốt hơn là gõ từ và một số đoạn code chắc chắn sẽ xuất hiện trong mã nguồn ví dụ múôn tìm về table em gõ thêm cụm từ "import javax.swing".
    "Một công nghệ hoặc một framework thường được phân tầng như thế nào? Thường gồm các tầng nào? (Không biết dùng từ "tầng" có đúng không nhưng ý em là ví dụ như các : over struct, giao tiếp người dùng, database, security,...) .Và nên tìm hiểu chi tiết sâu xa tầng nào? Làm cách nào để tiếp cận và làm quen nhanh nhất?..."
    có nhiều các để xây dựng một ứng dụng mà có thể hiểu tạm tạm là phân tầng, không có một quy tắc chuẩn nào có thể áp dụng máy móc trong xây dựng phần mềm , nhưng có thể hiểu nôm na một ứng dụng sẽ gồm 3 phần chính: giao diện, xử lí, giao tiếp database. Em nên tìm hiểu sâu xa từng phần này , sẽ có những frameword chuẩn cho việc xây dựng GUI và giao tiếp database, nhưng về xử lí nghiệp vụ ứng dụng lại tùy thuộc vào từng dự án khác nhau. Coi trọng phần nào cũng tùy thuộc vào từng dự án và khách hàng. Còn về làm quen nhanh nhất và tiếp cận tốt nhất không gì bằng kinh nghiệp. Nghiên cứu nhiều , tìm hiểu nhiều ( tất nhiên là trực tiếp các dự án như các phần mềm nguồn mở chẳng hạn) sẽ giúp em tiếp cận nhanh hơn. Không nên học lí thuyết suông và máy móc, đọc quá nhiều sách không phải lá ý kiến hay nhưng đọc và tìm hiểu nhiều code thì sẽ không bao giờ thừa. Cạnh đó em cũng phải thực hành nhiều, tự nghĩ, tự làm, luôn suy nghĩ rằng tại sao người ta lại làm như thế , cách làm ra sao,... nếu mình làm mình sẽ làm gì. Hãy bắt đầu từ từ , thường thì bước đầu rất khó khăn, nếu không kiên trì sẽ dẫn đến chán nản. Do đó hãy cố gắng để phát triển mình.

    Sau khi nắm sơ sơ được cấu trúc và cơ chế của nó, nên practice thế nào để dễ dàng hiểu sâu hơn và có khả năng phát triển được nó? các module quan trọng?...

    Sau khi nắm vững cấu trúc của nó, hãy bắt đầu viết những thứ đơn giản trước, ví như sửa đổi một số style theo ý mình, việt hóa,... sau đó em sẽ hiểu dần toàn bộ ứng dụng. Và bước tiếp theo chắc chắn em sẽ biết mình làm gì.

    Sau khi gần như thông thạo cách làm việc và các ngóc ngách của nó, nên bắt đầu phát triển như thế nào cho thuận lợi?
    Sau khi đã gần như thông thạo được tất cả các thành phần , thiết kế của chương trình. Lúc đó em sẽ tìm ra được hướng đi cho mình. Qua kinh nghiệm của mình , đã có rất nhiều sản phẩm , sau khi hiểu được nó , mình sẽ vứt nó đi. tuy nhiên không phải cái nào cũng vứt đi. Còn một số sản phẩm , không cần thiết phải hiểu về nó , chỉ cần biết cách sử dụng nó ra sao, phục phụ cho chính công việc của mình. Như thế chắc sẽ tốt hơn.

    Ai đọc được , xin bỏ xung thêm cho doibuon ý kiến.

    Trả lờiXóa
  4. Your blog is creative Keep up the great work. Don't miss visiting this site about how to buy & sell everything, like music on interest free credit; pay whenever you want.

    Trả lờiXóa
  5. Chào anh Thuận,

    Ghé qua trang blog của anh, thấy blog tiếng việt thiết kế rất dễ xem. Tôi cũng đang muốn làm blog cá nhân nhưng không tìm được template nào hỗ trợ tiếng việt, không biết anh có thể chia xẻ cái template anh đang dùng.
    Cảm ơn anh nhiều
    manhtien@yahoo.com

    Trả lờiXóa

nhudinhthuan@gmail.com